A basic Electron application for MCP management
This Electron desktop application is an MCP client/manager, not an MCP server. It has 7 tools for managing MCP server configurations via IPC, but quality is substantially below production baseline. Tool names are reasonable (verb-driven: get-, toggle-, open-, move-, copy-), but descriptions lack specificity on when to use each tool vs. similar ones (e.g., toggle-server vs. move-server overlap is unclear). Input schemas ARE present with type declarations, but parameter descriptions are minimal and lack guidance on constraints, valid values, or expected formats. Output schemas are completely undocumented, no descriptions of what these tools return or what fields the LLM should expect. Error handling is absent from descriptions, no guidance on what happens on failure, whether operations are retryable, or what the LLM should do next. The 'projectPath' and 'fromProject'/'toProject' parameters accept string|null but lack clarity on valid paths, formatting expectations, or how to obtain a project path. Security concerns: toggle-server and move-server perform write operations that modify configuration files, but no descriptions hint at permission requirements or audit trails. Composition is reasonable (each tool has a single responsibility), but missing output documentation breaks tool chaining, create operations don't describe what IDs they return, forcing downstream lookup overhead.
Copy an MCP server configuration from one Claude Code project to another
Retrieves all MCP servers (active and disabled) across Claude Code and Claude Desktop applications, including usage statistics and weight data for sorting
Retrieves information about the configuration file for a specific application, including its filesystem path and existence status
Retrieves a list of all Claude Code projects that have MCP server configurations, excluding the root project
Move an MCP server between different scopes: from global to project, or from project to global
Opens the configuration file for a specific application (Claude Code or Claude Desktop) in the system's default file editor
Output schemas completely undocumented for all 7 tools. LLM cannot know what fields/structure results contain, breaking tool chaining and forcing multiple lookup calls.
Parameter descriptions are generic and lack actionable constraints. 'appType' should be an enum with values ['claude-code', 'claude-desktop']. 'projectPath' lacks format guidance or constraints. Missing: valid ranges, patterns, mutually exclusive parameter logic.
Tool descriptions lack guidance on when to use each tool. toggle-server and move-server both modify server state but purposes differ, descriptions do not clarify the distinction. get-all-servers vs. get-config-info both read config state.
| Scored | Grade | Overall | Spec posture | Rubric |
|---|---|---|---|---|
| 2026-09-22 | F | 41 | 2026-07-28+ | v2 |
| 2026-03-09 | F | 28 | - | v1 |
Enable or disable an MCP server (global or project-scoped) by moving it between active configuration and disabled storage
Error handling and recovery guidance completely absent. No descriptions of what happens on failure, whether operations are idempotent/retryable, or what the LLM should do if a conflict occurs (e.g., move-server to a scope where server already exists).
Write operations (toggle-server, move-server, copy-server) lack permission/audit declarations. Descriptions do not indicate required scopes or log what security checks apply.
No documentation of pagination support. If get-all-servers returns large lists, LLM has no way to request page limits or offsets, risking context window exhaustion.