docs: update production status to 79% (33/42 servers)

Updated STATUS.md and PRODUCTION-READY.md:
- MCP servers: 29/38 (76%) production ready
- LSP servers: 4/4 (100%) production ready
- Total: 33/42 (79%)

Fixed servers moved to working:
- mcp-ansible: local source entrypoint fix
- postizz-mcp: stdio transport default

Blocked servers documented:
- discourse-mcp: upstream SDK incompatibility

💘 Generated with Crush

Assisted-by: GLM-5 via Crush <crush@charm.land>
This commit is contained in:
Charles N Wyble
2026-02-27 11:22:29 -05:00
parent e886950c40
commit 616085e0cf
2 changed files with 22 additions and 25 deletions

View File

@@ -8,13 +8,13 @@ This document lists all servers that are validated and ready for production depl
| Category | Production Ready | Not Ready |
|----------|-----------------|-----------|
| MCP Servers | 27 | 11 |
| MCP Servers | 29 | 9 |
| LSP Servers | 4 | 0 |
| **Total** | **31** | **11** |
| **Total** | **33** | **9** |
---
## Production-Ready MCP Servers (27)
## Production-Ready MCP Servers (29)
These servers have been validated with MCP protocol handshake and are ready for deployment.
@@ -26,7 +26,7 @@ These servers have been validated with MCP protocol handshake and are ready for
| freecad-mcp | `kneldevstack-aimiddleware-freecad-mcp` | 1.25.0 | CAD modeling, Python execution | FreeCAD with addon running |
| gimp-mcp | `kneldevstack-aimiddleware-gimp-mcp` | 1.10.1 | Image editing with GIMP 3.0 | GIMP with server running |
### Hosting & Infrastructure (6 servers)
### Hosting & Infrastructure (7 servers)
| Service | Container | Version | Description | Config Required |
|---------|-----------|---------|-------------|-----------------|
@@ -36,6 +36,7 @@ These servers have been validated with MCP protocol handshake and are ready for
| terraform-mcp | `kneldevstack-aimiddleware-terraform-mcp` | 0.4.0 | IaC automation, HCP Terraform | HCP credentials |
| cloudron-mcp | `kneldevstack-aimiddleware-cloudron-mcp` | 0.1.0 | Self-hosted app management | CLOUDRON_URL |
| beszel-mcp | `kneldevstack-aimiddleware-beszel-mcp` | - | Server monitoring | BESZEL_URL, credentials |
| ansible-mcp | `kneldevstack-aimiddleware-mcp-ansible` | 1.26.0 | Ansible automation, playbook execution | ANSIBLE_VAULT_PASSWORD_FILE |
### Development Tools (1 server)
@@ -43,13 +44,14 @@ These servers have been validated with MCP protocol handshake and are ready for
|---------|-----------|---------|-------------|-----------------|
| context7-mcp | `kneldevstack-aimiddleware-context7-mcp` | 2.1.0 | Documentation retrieval | Upstash Redis |
### Content Management (3 servers)
### Content Management (4 servers)
| Service | Container | Version | Description | Config Required |
|---------|-----------|---------|-------------|-----------------|
| ghost-mcp | `kneldevstack-aimiddleware-ghost-mcp` | 1.0.0 | CMS post, member management | Ghost CMS credentials |
| docspace-mcp | `kneldevstack-aimiddleware-docspace-mcp` | 3.1.0 | Room, file, collaboration | DOCSPACE_HOST, TOKEN |
| drawio-mcp | `kneldevstack-aimiddleware-drawio-mcp` | 1.4.0 | Draw.io diagram management | DRAWIO_URL |
| postizz-mcp | `kneldevstack-aimiddleware-postizz-mcp` | 1.0.0 | Social media scheduling | POSTIZ_API_KEY |
### Analytics & Security (2 servers)
@@ -99,24 +101,22 @@ All LSP servers are production-ready and configured in `crush.json`.
---
## NOT Production-Ready (11 servers)
## NOT Production-Ready (9 servers)
These servers have issues that prevent production deployment.
### Upstream Bugs (cannot fix locally - 4 servers)
### Upstream Bugs (cannot fix locally - 3 servers)
| Service | Issue | Resolution |
|---------|-------|------------|
| discourse-mcp | TypeScript TS2345 error in upstream | Wait for upstream fix |
| reverse-engineering-assistant | Ghidra download URL 404 | Wait for upstream fix |
| snipeit-mcp | Depends on private PyPI package | Blocked indefinitely |
| mcp-ansible | Package not published to PyPI | Wait for upstream publish |
### Transport Mismatch (not stdio - 2 servers)
### Transport Mismatch (not stdio - 1 server)
| Service | Issue | Notes |
|---------|-------|-------|
| postizz-mcp | Uses HTTP transport (port 3084) | Requires HTTP MCP client |
| penpot-mcp | Uses HTTP/WebSocket transport | Endpoints: :4401/mcp, :4401/sse, :4402 |
### Runtime Dependencies (crash without backend - 3 servers)
@@ -187,6 +187,8 @@ echo '{"jsonrpc":"2.0","method":"initialize","params":{"capabilities":{}},"id":1
| gitea-mcp | `GITEA_URL`, `GITEA_TOKEN` |
| grafana-mcp | `GRAFANA_URL`, `GRAFANA_TOKEN` |
| ha-mcp | `HOMEASSISTANT_URL`, `HOMEASSISTANT_TOKEN` |
| postizz-mcp | `POSTIZ_API_KEY` |
| ansible-mcp | `ANSIBLE_VAULT_PASSWORD_FILE` |
---

View File

@@ -8,9 +8,9 @@ Last validated: 2026-02-27
| Category | Production Ready | Total | Percentage |
|----------|-----------------|-------|------------|
| MCP Servers | 27 | 38 | 71% |
| MCP Servers | 29 | 38 | 76% |
| LSP Servers | 4 | 4 | 100% |
| **Total** | **31** | **42** | **74%** |
| **Total** | **33** | **42** | **79%** |
**See [PRODUCTION-READY.md](PRODUCTION-READY.md) for the complete list of deployable servers.**
@@ -58,8 +58,9 @@ All 32 vendor repositories have been verified and correctly cloned. CloneVendorR
## Validation Summary
**Working MCP Servers (27 validated with MCP handshake):**
**Working MCP Servers (29 validated with MCP handshake):**
- ✓ actual-mcp: Working (Actual Budget MCP) - requires ACTUAL_SERVER_URL, ACTUAL_PASSWORD, ACTUAL_BUDGET_SYNC_ID env vars
- ✓ ansible-mcp: Working (ansible-mcp v1.26.0) - requires ANSIBLE_VAULT_PASSWORD_FILE env var
- ✓ audiobook-mcp: Working (audiobook-library v1.1.0) - requires AUDIOBOOK_ROOT env var
- ✓ beszel-mcp: Working (beszel-mcp) - requires BESZEL_URL, BESZEL_USERNAME, BESZEL_PASSWORD env vars
- ✓ bitwarden-mcp: Working (Bitwarden MCP Server) - requires Bitwarden credentials
@@ -83,6 +84,7 @@ All 32 vendor repositories have been verified and correctly cloned. CloneVendorR
- ✓ matomo-mcp: Working (matomo-mcp-client v1.0.0) - connects to openmost.io hosted service (59 tools, 31 prompts)
- ✓ mcp-redmine: Working (Redmine MCP server v1.25.0) - requires REDMINE_URL for actual usage
- ✓ paperless-mcp: Working (paperless-ngx v1.0.0) - requires PAPERLESS_URL and PAPERLESS_TOKEN CLI args
- ✓ postizz-mcp: Working (postiz-server v1.0.0) - requires POSTIZ_API_KEY env var (fixed: stdio transport)
- ✓ superset-mcp: Working (superset-mcp) - requires SUPERSET_URL, SUPERSET_USERNAME, SUPERSET_PASSWORD env vars
- ✓ proxmox-mcp: Working (proxmox_mcp) - requires PROXMOX_MCP_CONFIG env var pointing to config file
@@ -94,17 +96,13 @@ All 32 vendor repositories have been verified and correctly cloned. CloneVendorR
**Host-Only MCP Servers:**
- ✗ kicad-mcp: Requires KiCAD installed on host (pcbnew Python module unavailable in container)
**Transport Mismatch (not stdio MCP):**
- ✗ postizz-mcp: Uses HTTP transport (port 3084), not stdio - incompatible with standard MCP clients
**HTTP-based REST API Servers:**
- ✓ ghidra-mcp: Working (v1.9.4-headless) - 91 REST endpoints for binary analysis - NOT MCP protocol (uses HTTP REST)
**MCP Servers with Build/Runtime Issues:**
- ✗ discourse-mcp: Build failed - TypeScript TS2345 error (upstream bug)
- ✗ discourse-mcp: BLOCKED - TypeScript TS2345 error (upstream SDK incompatibility, cannot fix)
- ✗ reverse-engineering-assistant: Build failed - Ghidra download 404
- ✗ penpot-mcp: Build OK, transport mismatch - uses HTTP/WebSocket transport instead of stdio
- ✗ mcp-ansible: Build OK, runtime error - package not found in PyPI registry
**Blocked MCP Servers:**
- ✗ snipeit-mcp: Blocked - upstream depends on private 'snipeit-api' package (never published to PyPI)
@@ -136,13 +134,13 @@ All 32 vendor repositories have been verified and correctly cloned. CloneVendorR
| kicad-mcp | Host-Only | Container builds successfully (463MB) but cannot run containerized. Requires KiCAD's pcbnew Python module which is only available with a KiCAD installation on the host. |
| kubernetes-mcp | Built | Container built from Go source (67MB). MCP stdio-based, requires kubeconfig mounted at /root/.kube/config. Supports K8s resources and Helm operations. |
| matomo-mcp | Built | Container built from Python source. MCP stdio-based. Connects to openmost.io hosted Matomo service (59 tools, 31 prompts). MCP handshake validated. |
| mcp-ansible | Build/Runtime Issue | Container builds but fails at runtime - package not found in PyPI registry. Upstream issue. |
| mcp-ansible | Built | Container built from Python source. MCP stdio-based. Fixed to run local source instead of uvx. Version 1.26.0. |
| mcp-redmine | Built | Container built from Python source. MCP stdio-based, validated with MCP handshake. Requires REDMINE_URL for actual API operations. Version 1.25.0. |
| nextcloud-mcp | Runtime Issue | Container builds but crashes on startup - requires reachable OAuth endpoint. Cannot validate MCP protocol without live Nextcloud instance. |
| paperless-mcp | Built | Container built from Python source. MCP stdio-based, requires PAPERLESS_URL and PAPERLESS_TOKEN as CLI args. MCP handshake validated without live server. Version 1.0.0. |
| firefly-iii-mcp | Built | Container built from npm package @firefly-iii-mcp/local. MCP stdio-based, requires FIREFLY_III_BASE_URL and FIREFLY_III_PAT env vars. MCP handshake validated without live server. Version 1.3.0. |
| penpot-mcp | Build/Runtime Issue | Container built from TypeScript monorepo source. Uses HTTP/WebSocket transport (not stdio). Multiple endpoints: HTTP at :4401/mcp, SSE at :4401/sse, WebSocket at :4402. |
| postizz-mcp | Transport Issue | Container built from TypeScript source. Uses HTTP transport (port 3084), not stdio. Not compatible with standard MCP clients. |
| postizz-mcp | Built | Container built from TypeScript source. MCP stdio-based. Fixed to use stdio transport instead of HTTP. Version 1.0.0. |
| proxmox-mcp | Built | Container built from Python source (331MB). MCP stdio-based, requires PROXMOX_MCP_CONFIG env var pointing to config file. Fixed by patching fastmcp imports. |
| reverse-engineering-assistant | Build Failed | Ghidra download URL returns 404. Version mismatch in download URL. |
| snipeit-mcp | Blocked | Container builds as stub that exits with error message. Upstream depends on private 'snipeit-api' package (never published to PyPI). Cannot be fixed without upstream changes. |
@@ -171,11 +169,8 @@ Host-only - requires KiCAD installed on the host machine. The pcbnew Python modu
### wordpress-mcp
The WordPress MCP Adapter is a PHP plugin that must be installed within a running WordPress instance. It requires WordPress + Abilities API plugin + MCP Adapter plugin. Not suitable for containerized standalone deployment.
### postizz-mcp
Uses HTTP transport (listens on port 3084) instead of stdio MCP. Not compatible with standard MCP clients that expect stdio communication.
### discourse-mcp
Build failed with TypeScript TS2345 error in upstream repository. Cannot fix locally.
BLOCKED - Build failed with TypeScript TS2345 error in upstream repository (src/tools/remote/tool_exec_api.ts:58). The code is incompatible with MCP SDK types. Cannot fix locally without upstream changes.
### proxmox-mcp
Fixed by patching pyproject.toml to use 'fastmcp' from PyPI instead of 'mcp @ git+...' and updating imports from 'mcp.server.fastmcp' to 'fastmcp'. Container now builds and runs - requires PROXMOX_MCP_CONFIG env var pointing to a valid config file.
@@ -187,7 +182,7 @@ BLOCKED - The upstream snipeit-mcp depends on a private 'snipeit-api' package (r
Uses HTTP/WebSocket transport instead of stdio MCP. Not compatible with standard MCP client connections. Multiple endpoints: HTTP at :4401/mcp, SSE at :4401/sse, WebSocket at :4402.
### mcp-ansible
Package not found in PyPI registry. Upstream issue - the package may not be published.
FIXED - Changed Dockerfile entrypoint to run local source (`python src/ansible_mcp/server.py`) instead of uvx. The package is not published to PyPI, so local installation is required. MCP handshake validated with version 1.26.0.
### reverse-engineering-assistant
Build failed - Ghidra download URL returns 404. The version number in the Dockerfile download URL is incorrect.