This server has 4 tools with basic definitions but significant quality gaps. Tool names follow verb_noun convention (good), but descriptions are inconsistent in completeness. Input schemas are present but lack parameter descriptions in most cases. Error handling exists but lacks actionable guidance. The server manages MCP server discovery and configuration, which is a useful meta-tool, but the tool definitions fall short of production standards for agentic use.
Add MCP server to cursor mcp.json
Find MCP server relevant to the query
Read current list of MCP servers from cursor mcp.json
Remove an MCP server from the cursor configuration
Output schemas not documented. LLMs cannot plan downstream calls or validate responses without knowing field names, types, and structure.
Parameter descriptions are minimal (under 60 chars on average) and lack constraint info, format requirements, or dependency hints. E.g., 'cacheKey' does not explain how it maps to server names in the registry.
Destructive tool (remove-mcp-server-from-cursor) lacks confirmation or dry-run mechanism. Definition does not warn that removal is irreversible or suggest a check-before-delete pattern.
Inferred effective spec: <=2025-11-25.
| Scored | Grade | Overall | Spec posture | Rubric |
|---|---|---|---|---|
| 2026-09-21 | D | 55 | <=2025-11-25 | v2 |
| 2026-03-09 | F | 12 | - | v1 |
find-mcp-server returns unbounded result list with no pagination, limit, or offset parameters. Large registries could return hundreds of servers, bloating context and degrading LLM reasoning.
Error messages exist but lack actionable recovery guidance. E.g., 'Failed to add remote MCP server to cursor: <error>' tells the LLM nothing about what to do next (retry? ask user? try different params?).
add-mcp-server-to-cursor writes to ~/.cursor/mcp.json without validation that the file is well-formed JSON or has the expected mcpServers key. Malformed writes could corrupt user configuration.
Parameter 'env' in add-mcp-server-to-cursor is optional but undocumented. Which env vars are required per server? How does the tool know which ones to validate? Dependencies are implicit, forcing LLMs to guess.