Re:port Flow MCP Server - PDF report generation for Claude and AI agents
Server has 15 tools with mixed quality. Most tools have descriptions and basic schemas, but critical gaps exist: (1) Many parameter descriptions are in Japanese, creating LLM comprehension barriers. (2) Several tools lack complete input schemas or have minimal descriptions. (3) Tool naming is inconsistent, some follow verb_noun pattern (generate_pdf_sync, download_file) while others are vague (fetch, search). (4) No documented output schemas for any tool. (5) Error handling guidance is absent. (6) authenticate tool exposes OAuth flow details in description but lacks security context. Average tool score: 52/100.
OAuth2 PKCE flow authentication (stdio mode only)
Copy a public gallery template into user workspace
Download a generated PDF file
Download multiple generated PDF files as ZIP
Fetch data from Re:port Flow API
Generate a single PDF asynchronously
Generate a single PDF synchronously
Parameter descriptions in Japanese block LLM comprehension. Tools like get_design_parameters, generate_pdf_sync have descriptions like '既存トークンを破棄して再認証する場合 true' and 'デザインID(UUID形式)'. LLMs trained primarily on English struggle with non-English parameter docs.
No output schemas documented for any tool. LLMs cannot plan downstream calls or extract required fields. E.g., list_templates returns unknown structure; generate_pdf_sync returns unknown format. Violates pattern:tool and pattern:response-shaper.
Inferred effective spec: 2026-07-28+.
| Scored | Grade | Overall | Spec posture | Rubric |
|---|---|---|---|---|
| 2026-09-23 | D | 55 | 2026-07-28+ | v2 |
Generate multiple PDFs asynchronously
Generate multiple PDFs synchronously and return as ZIP
Get template parameters for a specific design
Get one public template by slug (read-only)
List available Re:port Flow templates
Search templates and designs
Search public template gallery (unauthenticated read-only)
Suggest parameter values based on context
Generic tool names 'search' and 'fetch' lack specificity. 'search' could search templates, designs, or gallery items, ambiguous. 'fetch' is a generic HTTP wrapper, not a domain-specific action. LLMs cannot infer intent from names alone.
Missing error handling guidance. No tool description explains what to do on failure (e.g., 'If authentication fails, call authenticate() first'). Agents have no recovery path on errors.
Inconsistent parameter naming. 'designId' uses camelCase while 'outputDir' uses camelCase; some params are 'version' (number), others 'slug' (string). No consistent suffix for ID types (designId vs slug). Increases LLM confusion when mapping fields across tools.