Project: Virtuoso MCP Server
Current state (2026-03)
The server is now transport-standardized on FastMCP for MCP clients while preserving a compatibility router for existing scripts.
- FastMCP SSE mount:
/mcp
- SSE stream endpoint:
/mcp/sse
- Legacy tool router:
POST /rpc
- Health/discovery:
/, /health
Main goals
- Keep core Virtuoso tooling generic and reusable.
- Keep guardrails strict (SELECT-only raw query, bounded limits).
- Keep domain logic in plugins (garden layer), not in transport glue.
- Maintain compatibility during migration (
/rpc) while new clients use FastMCP transport.
Plugin policy
Domain plugins may extend TOOLS, but should avoid redundant aliases for core capabilities. Garden tool surface has been trimmed to domain-unique helpers.
Next recommended steps
- Move remaining internal callers from
/rpc to native MCP client flows where practical.
- Add protocol-level integration tests for FastMCP transport in addition to
/rpc functional tests.
- Keep plugin schemas/documentation in sync with exposed tool names.