A web-based factory for generating and managing MCP-enabled AI agents. Provides a frontend interface for configuring agents, managing MCP servers, and executing generated Python agent code.
This HTTP-based MCP server exposes 18 tools for agent generation and MCP server management. While all tools have descriptions and basic schemas, the quality is inconsistent. Many descriptions are generic or lack actionable detail for LLM selection. Parameter descriptions are sparse or missing entirely. No tool annotations (readOnlyHint, destructiveHint) despite clear risk levels. Error handling is minimal, most tools return generic 400/500 responses without recovery guidance. Schemas are present but incomplete: many parameters lack type constraints, enums, or format specifications. The server conflates multiple concerns (agent lifecycle, MCP config, tool execution) without clear composition boundaries. No pagination support despite list_agents and list_mcp_servers returning unbounded results.
Checks OpenAI API connectivity and available models
Deletes a registered MCP server
Executes a tool on a specific MCP server with provided parameters
Generates Python code for an MCP-enabled agent with specified configuration including system prompt, model, and MCP servers
Retrieves the current MCP server configuration
Retrieves details for a specific MCP server
Lists all generated agents with their metadata
Lists all tools available from a specific MCP server
Missing tool annotations despite explicit risk levels. Tools marked WRITE, DESTRUCTIVE (delete_mcp_server, save_agent, run_agent) lack readOnlyHint/destructiveHint/idempotentHint annotations. LLMs cannot distinguish safe from dangerous operations without explicit hints.
Parameter descriptions are generic or missing. Most parameters have 1-2 word descriptions ('The ID of the agent', 'Name of the MCP server') that do not explain constraints, format, or when to use the tool. Baseline for A+ tools is 72+ chars per param description.
| Scored | Grade | Overall | Spec posture | Rubric |
|---|---|---|---|---|
| 2026-09-23 | F | 40 | 2026-07-28+ | v2 |
Lists all registered MCP servers
Registers a new MCP server
Spawns and starts a generated agent process
Saves generated agent code to the filesystem with metadata tracking
Sends input to a running agent process via stdin
Stops a running agent process
Streams output from a running agent process via Server-Sent Events
Toggles MCP server status between online and offline, with connection validation
Updates MCP server details (name, url, description)
Uploads and merges MCP server configuration from a JSON file
No pagination support for list tools. list_agents, list_mcp_servers, and list_mcp_server_tools return unbounded results with no limit, offset, or cursor parameters. Large result sets will exhaust context windows and degrade LLM reasoning.
Error handling lacks recovery guidance. All tools return generic 400/500 responses without actionable next steps. E.g., 'Missing required fields' does not tell the LLM which field is missing or how to recover. Baseline: errors should state the invalid value and the constraint violated.
Parameter schemas lack type constraints and enums. 'status' in toggle_mcp_server_status accepts 'online, offline, or error' but is not declared as an enum. 'parameters' in execute_mcp_tool is a bare object with no schema. Free-form strings invite hallucinated values.