MCP OpenMetadata
@pfldy2850
mcp-openmetadata
概要
What is MCP OpenMetadata?
MCP OpenMetadata is a FastMCP-based server that provides a subset of OpenMetadata APIs for querying and managing metadata. It offers tools for searching entities, retrieving table metadata, columns, ownership information, and sample data—designed for AI assistants to interact with an OpenMetadata instance.
How to use MCP OpenMetadata?
Install the package via uv pip install mcp-openmetadata or pip install mcp-openmetadata. Configure it in your MCP client with the command python -m mcp_openmetadata.server and environment variables for authentication (OPENMETADATA_URI plus either OPENMETADATA_JWT_TOKEN for token auth or OPENMETADATA_USERNAME/OPENMETADATA_PASSWORD for basic auth). Then invoke any of the provided tools from your LLM.
Key features of MCP OpenMetadata
- Search entities using query text with pagination and sorting
- Retrieve paginated list of tables with basic information
- Get detailed table information by fully qualified name
- Fetch table columns and ownership details
- Access sample data from specified tables
- Supports token and basic authentication methods
Use cases of MCP OpenMetadata
- An AI assistant listing all database tables in an OpenMetadata instance
- Finding tables by column name or tag to locate relevant data assets
- Retrieving column schemas and ownership for data governance checks
- Getting sample rows to understand table content before querying
- Integrating metadata discovery into automated data lineage or catalog workflows
FAQ from MCP OpenMetadata
How does it compare to using the OpenMetadata API directly?
The server returns optimized, context-friendly results instead of raw API responses that may contain excessive data. Not all OpenMetadata APIs are exposed; see the Supported APIs document for the list.
What are the runtime dependencies?
Python 3.10 or later, plus the fastmcp, httpx, and mcp-openmetadata packages.
Where does the server connect to?
It connects to an OpenMetadata instance via the configured OPENMETADATA_URI environment variable (default http://localhost:8585). No external cloud service is involved.
What authentication methods are supported?
Two options: token authentication (using OPENMETADATA_JWT_TOKEN) or basic authentication (using OPENMETADATA_USERNAME and OPENMETADATA_PASSWORD).
What transport or protocol does the server use?
It is a FastMCP server, so it uses the MCP protocol over stdio transport by default (as configured in the MCP client).