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:
@@ -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` |
|
||||
|
||||
---
|
||||
|
||||
|
||||
25
STATUS.md
25
STATUS.md
@@ -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.
|
||||
|
||||
Reference in New Issue
Block a user