A multi-agent orchestration framework with MCP runtime support, featuring planner and executor agents with workflow management capabilities
This MCP server implements 5 tools with READ_ONLY operations. All tools have descriptions and input schemas visible in the source file (examples/mcp_server/src/common/mcp_tools.rs). However, analysis reveals significant quality gaps: (1) Descriptions are extremely terse, 'Give customer details' (22 chars) and 'Scrapes a given URL using Jina AI's web scraping service' (58 chars) fall below production baseline of 194 chars avg and leave critical context missing. (2) Parameter descriptions are minimal, 'Give customer details from a given customer_id' lacks guidance on format, idempotent behavior, or error cases. (3) Output schemas are not documented in the provided source, we cannot verify what fields are returned, breaking the composition pattern (tools cannot chain without knowing downstream field names). (4) No error handling guidance visible, tools do not indicate whether they retry, what failures mean, or how to recover. (5) Naming is verb-based but generic ('scrape_url' and 'pdf_extract' both do web scraping, ambiguous distinction). (6) Two tools (scrape_url and pdf_extract) have identical descriptions, suggesting copy-paste and incomplete differentiation. Average tool score: 42/100. Transport is HTTP (Streamable HTTP per rmcp 1.3 dependency), which is current. However, definition quality is the primary weakness.
Get the current weather in a given location
Give customer details
Scrapes a given URL using Jina AI's web scraping service
Scrapes a given URL using Jina AI's web scraping service
Search for an entity on the internet
Tool descriptions are far below production baseline (194 chars avg). 'Give customer details' (22 chars), 'Scrapes a given URL using Jina AI's web scraping service' (58 chars) lack context on when to use, prerequisites, return data, or error recovery. This violates the critical check that descriptions must answer WHAT, WHEN, and WHAT IT RETURNS.
Output schemas are not documented in source code. Callers cannot determine what fields get_current_weather, get_customer_details, search, and scrape_url return. This breaks tool composition, downstream tools cannot chain because they do not know what IDs or data to extract. Critical for pattern tool-chain.
Parameter descriptions are generic and lack actionable guidance. 'Give customer details from a given customer_id' does not specify: format of customer_id (string, numeric, email?), whether call is idempotent, what happens if customer not found, or example usage. Baseline requires ~72 chars of descriptive context per param.
Inferred effective spec: <=2025-11-25.
| Scored | Grade | Overall | Spec posture | Rubric |
|---|---|---|---|---|
| 2026-09-22 | D | 53 | <=2025-11-25 | v2 |
| 2026-03-09 | F | 38 | - | v1 |
Duplicate/identical descriptions for scrape_url and pdf_extract suggest incomplete differentiation. Both claim 'Scrapes a given URL using Jina AI's web scraping service', the distinction (URL vs PDF URL) is not explained. This violates the critical check: 'When multiple tools operate on the same resource, their names must make the distinction obvious.'
No error handling guidance visible. Tools do not indicate what errors are retryable, what user-fixable errors are, or what actionable recovery steps apply. The pattern recovery-guide requires error responses to tell the LLM 'what to do next'. None of the tools show error classification or recovery prompts.
search tool description ('Search for an entity on the internet') is vague. Does it search the web, a knowledge base, or internal systems? What format does search_query expect (free-text, structured query, boolean operators)? What are rate limits or result caps? Vague descriptions force LLMs to guess.
No pagination parameters visible on tools that might return lists (search, get_customer_details). If these return multiple items, lack of limit/offset/page parameters risks context window exhaustion. Baseline pattern paginated-result requires pagination for list-returning tools.