Managed MCP infrastructure — web search, code execution, data storage, analytics for AI agents
ForgeMCP defines 6 tools with complete input and output schemas in mcp.json. All tools have descriptions (avg 156 chars, within 10-1024 range) and parameter descriptions. However, several tools lack critical clarity: naming is generic (web_search, url_fetch, code_execute are verb_noun but lack specificity for disambiguation); parameter descriptions omit constraints (e.g., code_execute timeout lacks validation guidance, data_store 'key' lacks format rules); output schemas are present but sparse (missing required field declarations, no error response schemas); error handling is absent (no recovery guidance, no categorization of retryable vs fatal errors). The data_store and analytics_track tools expose operational complexity (enum operations) without documenting dependencies or failure modes. Security concerns: code_execute accepts arbitrary JavaScript with only a timeout guard, no sandboxing validation documented. Overall: functional definitions suitable for basic agent use, but lack the LLM-optimization and error guidance expected of production tools.
Track events and query analytics from inside your AI workflow. Use this to build AI-powered dashboards, track user behavior, monitor agent performance, or record business metrics.
Execute sandboxed JavaScript code. Use this for data transformations, calculations, string processing, JSON manipulation, or any logic that would be complex to write in plain text.
Store and retrieve JSON data keyed by name. Use this to persist state across requests — remember user preferences, conversation context, task results, or any data your agent needs to recall.
Fetch any URL and extract clean, readable text content. Use this to read articles, documentation, product pages, or any publicly accessible web page.
Get current weather conditions for any city or location. Useful for agents that need real-world context about locations.
data_store and analytics_track use enum-based 'operation' parameters without documenting mutual exclusivity of required fields. E.g., 'key' is required for get/set/delete but not list; 'event' is required for track but not query/stats. LLMs will pass invalid combinations.
code_execute lacks documented sandboxing guarantees and error handling. Description claims 'sandboxed' but provides no validation rules, timeout behavior on overflow, or recovery guidance. LLMs cannot assess safety or retry strategy.
No error response schemas defined. Tools return success/error fields but lack documented error codes, messages, or recovery hints. LLMs receive raw errors with no guidance on retry, user escalation, or alternative actions.
| Scored | Grade | Overall | Spec posture | Rubric |
|---|---|---|---|---|
| 2026-09-23 | C | 66 | 2025-06-18+ | v2 |
Real-time web search. Returns articles, headlines, and answers from the live web. Use this when you need current information, news, or research that isn't in your training data.
data_store and analytics_track output schemas use generic 'object' and 'array' types without field-level documentation. LLMs cannot predict structure of returned 'value', 'events', or 'stats' fields, forcing exploratory calls.
weather tool missing 'location' as required parameter in schema (no 'required' array declared). LLMs may omit it, causing ambiguous failures.