PoC browser chat app using AWS Bedrock and MCP tools for network operations assistance
Two tools with complete input schemas and reasonable descriptions. Both tools follow verb_noun naming (web_search, fetch_web_content) and include parameter constraints (min/max). Descriptions are adequate (100-150 chars) but lack actionable context about when to use each tool or what downstream operations they enable. No output schema documentation. Error handling is present in code (ValueError for empty query, blocked hosts) but error messages are not optimized for LLM recovery guidance. Security is strong (blocked host validation, no secrets in params). Missing: output field documentation, error recovery hints, and composition guidance.
Fetch text content from a web page URL and return title + extracted text snippet.
Search the web for recent information (for example CVEs, advisories, release notes) and return top matching links with titles.
Output schemas not documented. LLMs cannot plan downstream operations or extract required fields without knowing the response structure.
Error messages in code (ValueError) are not optimized for LLM recovery. 'web_search requires a non-empty query' is clear, but 'Blocked URL host' gives no guidance on what to try next.
Tool descriptions lack context about when to use each tool vs the other. Should clarify: web_search for discovery, fetch_web_content for detailed extraction.
fetch_web_content max_chars parameter defaults to 5000 but schema allows 500-20000. Default is not documented in description; LLMs may not know what to expect.
Inferred effective spec: <=2025-11-25.
| Scored | Grade | Overall | Spec posture | Rubric |
|---|---|---|---|---|
| 2026-09-23 | D | 57 | <=2025-11-25 | v2 |
No pagination or result limiting guidance for web_search. If DuckDuckGo returns many results, response could grow large. Should document max result count in description.