MCP server for searching products on Booth.pm, a Japanese digital goods marketplace
Single tool with minimal definition quality. Tool name 'search_by_keyword' is acceptable but description is critically sparse (7 chars: 'search'). Input schema is present with proper types (string, array) and some parameter descriptions, but descriptions are generic and lack actionable guidance. No output schema documented. No error handling guidance. Tool performs web scraping with no validation, rate limiting, or recovery hints. Fails multiple critical checks from the rubric.
search
Tool description is critically sparse (7 characters: 'search'). Does not explain what the tool does, when to use it, or what it returns. LLMs cannot determine selection criteria.
No output schema documented. Callers cannot predict the structure of returned product data (fields, types, nesting). LLMs must infer structure from unguided JSON.
No error handling guidance. Tool catches errors and returns JSON-stringified error objects without actionable recovery hints. LLMs receive raw error data with no context on retry strategy or next steps.
Parameter descriptions are minimal and lack format/constraint details. 'Search keyword for Booth.pm products' does not specify length limits, character restrictions, or examples. 'Words to exclude' and 'Tags to filter' lack context on expected format or valid values.
| Scored | Grade | Overall | Spec posture | Rubric |
|---|---|---|---|---|
| 2026-09-23 | F | 44 | 2026-07-28+ | v2 |
No rate limiting, timeout handling, or pagination support. Tool fetches entire HTML response and extracts all products without limit. Large result sets will blow context windows and waste tokens. No guidance on result limits.