Model Context Protocol (MCP) server for Rapport - enables AI agents to create and modify visual canvases
Rapport MCP demonstrates moderate quality with clear naming conventions and functional schemas, but falls short of production standards in several critical areas. All 5 tools use proper verb_noun naming (get_*, update_*, query_*, export_*). Tool descriptions are present and reasonably detailed (avg ~250 chars), providing context for when to use each tool. However, parameter descriptions are sparse or missing entirely across most tools. Output schemas are not documented, critical for agents planning downstream operations. Error handling is minimal; no recovery guidance is provided. The update_svg tool includes security validation mentions but lacks explicit error handling patterns. Most significantly, the server relies on STDIO transport, which is not remotely accessible and caps the protocol readiness score at 50 regardless of other quality factors.
Export API endpoints from your canvas as an OpenAPI specification. Scans the canvas for API-related semantic elements (API endpoints, gateways, etc.) and generates a complete OpenAPI 3.0/3.1 specification with paths, methods, schemas, and security requirements. Perfect for generating API documentation from architecture diagrams.
Get canvas at specified detail level. DEFAULT: level 2 (SVG only). LEVELS: - 0: Metadata only (50 tokens) - quick status check - 1: Summary (200 tokens) - element breakdown - 2: SVG only (500-2000 tokens) - DEFAULT for editing - 3: Full guide (1500-3000 tokens) - first interaction only Use level=3 on FIRST interaction to learn format, then level=2 for subsequent edits.
Get the SVG document for your Rapport canvas. Returns the current SVG. Optionally include metadata. Automatically fetches your canvas using your authenticated user account.
Query and search for specific elements in your Rapport canvas using CSS-like selectors. Useful for finding elements by type, ID, or data attributes before modifying them. Automatically queries your canvas using your authenticated user account.
No output schemas documented for any tool. Agents cannot plan downstream operations or extract required fields (e.g., after query_elements, what fields are returned? Is it element_id, id, or identifier?). Pattern: response-shaper requires documenting return types.
Parameter descriptions are missing or minimal. update_svg's svg_document parameter has a detailed description, but include_metadata (get_svg) and selector (query_elements) lack guidance on expected format/constraints. LLMs cannot infer whether selector accepts '#myId' or 'myId', or whether multiple selectors are allowed.
Error handling and recovery guidance is absent. If update_svg fails due to malicious content, the agent receives no actionable guidance. Pattern: recovery-guide requires errors to tell the agent what to do next (e.g., 'Failed due to inline scripts, remove <script> tags and retry').
| Scored | Grade | Overall | Spec posture | Rubric |
|---|---|---|---|---|
| 2026-09-22 | B | 70 | 2026-07-28+ | v2 |
| 2026-03-09 | D | 50 | - | v1 |
Update the SVG document for your Rapport canvas. The SVG will be validated for security (no scripts, event handlers, or malicious content) and integrity before being saved. Returns detailed feedback about the update including element counts and any warnings. Automatically updates your canvas using your authenticated user account.
No tool annotations (readOnlyHint, destructiveHint, idempotentHint) present. The risk field in the evaluation metadata indicates update_svg is WRITE, but the MCP schema registration lacks destructiveHint. Pattern: tool-annotations (from 2026-07-28 spec) allows agents to reason about side effects and retry safety.
No pagination or result limits documented. export_openapi could generate very large OpenAPI specs (3000+ tokens). Pattern: paginated-result and enforce-result-limits require pagination parameters and caps to prevent context window overflow.
STDIO transport only. Not remotely accessible; cannot be used by hosted MCP clients or cloud-based LLM platforms. Hard cap on protocol readiness score (max 50). Pattern: mcp-transport requires Streamable HTTP for production use.