Model Context Protocol (MCP) server for OpenMetadata
Server has 13 tools with explicit schemas and descriptions, but quality is inconsistent. Naming follows verb_noun convention well (list_, get_, create_, update_, delete_). Descriptions are present but brief (avg ~40 chars, below 194-char baseline). Critical gaps: (1) object-type parameters like 'table_data' and 'patch_data' lack internal schema documentation, forcing LLMs to guess structure; (2) no output schemas documented anywhere, agents cannot plan downstream calls; (3) error handling and recovery guidance absent; (4) no tool annotations (readOnlyHint, destructiveHint) despite clear risk levels; (5) parameter descriptions lack format/constraint details (e.g., 'fields' param shows examples but no validation rules). Composition is sound, tools are single-responsibility and chainable via IDs. Security: no visible credential handling or permission gates in tool definitions.
Create a new glossary term.
Create a new table
Delete a glossary term by its ID.
Delete a table
Get details of a specific glossary by fully qualified name
Get details of a specific glossary term by fully qualified name.
Get details of a specific table by ID
Object-type parameters (table_data, patch_data) lack internal schema documentation. LLMs cannot infer required fields, types, or constraints without explicit nested schemas.
No output schemas documented for any tool. Agents cannot plan downstream calls or extract required fields (e.g., returned IDs for chaining). Violates response-shaper pattern.
Destructive tools (delete_table, delete_glossary_term) lack confirmation/dry-run support and error recovery guidance. No tool annotations (destructiveHint) to warn agents.
| Scored | Grade | Overall | Spec posture | Rubric |
|---|---|---|---|---|
| 2026-09-23 | D | 55 | 2025-06-18+ | v2 |
Get details of a specific table by fully qualified name
List glossaries from OpenMetadata
List glossary terms from OpenMetadata, optionally filtered by glossary FQN.
List tables from OpenMetadata
Update an existing glossary term using JSON Patch via its ID.
Update an existing table
Parameter descriptions lack format/constraint details. 'fields' param shows examples but no validation rules; 'limit' unbounded (should be 1 - 100); 'fqn' has no pattern or length constraint.
No error handling or recovery guidance in tool definitions. Agents have no guidance on retryability, user-fixable errors, or next steps on failure.