Skip to main content

MCP server providing OpenMetadata APIs

Project description

MCP OpenMetadata

PyPI version License: MIT Python Version

MCP server providing OpenMetadata APIs - A FastMCP integration for OpenMetadata services.

Features

  • OpenMetadata API integration with FastMCP
  • Easy-to-use interface for metadata management
  • Support for table metadata, sample data, and ownership information

Installation

from PyPi (Cursor)

Install it to Cursor with (uv):

uv pip install mcp-openmetadata

uv run python -m mcp-openmetadata.hosts.cursor \
  -e OPENMETADATA_URI=<YOUR OPENMETADATA URI> \
  -e OPENMETADATA_JWT_TOKEN=<YOUR OPENMETADATA JWT TOKEN>

Install it to Cursor with (pip):

pip install mcp-openmetadata

python -m mcp-openmetadata.hosts.cursor \
  -e OPENMETADATA_URI=<YOUR OPENMETADATA URI> \
  -e OPENMETADATA_JWT_TOKEN=<YOUR OPENMETADATA JWT TOKEN>

from configuration

{
    "mcpServers": {
        "OpenMetadata": {
            "command": "uv",
            "args": [
                "run",
                "--with",
                "fastmcp",
                "--with",
                "httpx",
                "--with",
                "mcp-openmetadata",
                "python",
                "-m",
                "mcp_openmetadata.server"
            ],
            "env": {
                "OPENMETADATA_URI": "http://localhost:8585",
                "OPENMETADATA_JWT_TOKEN": "awesome_jwt_token"
            }
        }
    }
}

Environment Variables

Authorization

mcp-openmetadata provides token auth and basic auth:

Token Auth

OPENMETADATA_URI=http://localhost:8585
OPENMETADATA_JWT_TOKEN=<YOUR OPENMETADATA JWT TOKEN>

Basic Auth

OPENMETADATA_URI=http://localhost:8585
OPENMETADATA_USERNAME=<YOUR OPENMETADATA USERNAME>
OPENMETADATA_PASSWORD=<YOUR OPENMETADATA PASSWORD>

Tool list

mcp-openmetadata does not provide all APIs available in OpenMetadata. Please refer to Supported APIs for the list of available APIs.

Since using the original API directly contains too much unnecessary data that is difficult to fit into the model context, we are working on returning somewhat organized results.

Search Tools

  • search_entities_with_query: Search entities using query text. Supports pagination and sorting. Useful for:
    • Listing all tables/topics (q=*)
    • Searching by field names (e.g., q=columnNames:address)
    • Searching by tags (e.g., q=tags.tagFQN:user.email)
    • Complex queries with AND/OR operators
    • Filtering by service type, constraints, owners, etc.

Table Tools

  • get_list_of_tables: Get a paginated list of tables with basic information
  • get_table_by_fqn: Get detailed table information by fully qualified name
  • get_table_columns_by_fqn: Get table columns information by fully qualified name
  • get_table_owners_by_fqn: Get table ownership information by fully qualified name
  • get_sample_data: Get sample data from a specified table

Each tool returns optimized responses with relevant fields to ensure compatibility with model context limits while providing essential metadata information.

License

This project is open source software licensed as MIT.

Project details


Download files

Download the file for your platform. If you're not sure which to choose, learn more about installing packages.

Source Distribution

mcp_openmetadata-0.1.0.tar.gz (8.1 kB view details)

Uploaded Source

Built Distribution

If you're not sure about the file name format, learn more about wheel file names.

mcp_openmetadata-0.1.0-py3-none-any.whl (10.0 kB view details)

Uploaded Python 3

File details

Details for the file mcp_openmetadata-0.1.0.tar.gz.

File metadata

  • Download URL: mcp_openmetadata-0.1.0.tar.gz
  • Upload date:
  • Size: 8.1 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/6.1.0 CPython/3.10.16

File hashes

Hashes for mcp_openmetadata-0.1.0.tar.gz
Algorithm Hash digest
SHA256 20c0304b7f36e45464ad2eb7aef547e63d872dc9f69dd35183b462565eb981ae
MD5 68c5539187cc5353bf843f0dd2473ed6
BLAKE2b-256 a45024bccbdfe707ad7d9ed5446287dc08b57574386b92a98a533906e6cc717a

See more details on using hashes here.

File details

Details for the file mcp_openmetadata-0.1.0-py3-none-any.whl.

File metadata

File hashes

Hashes for mcp_openmetadata-0.1.0-py3-none-any.whl
Algorithm Hash digest
SHA256 d26c575688172f9ad266b435f304a45db3cc911a5e1a1a92d5af316a0b894f80
MD5 d5f8564f9991919670e42782a27524c6
BLAKE2b-256 6fba17086f6a45548c3e3fbf7ecd13a83632da720cf26a561998ee48aa1cfd20

See more details on using hashes here.

Supported by

AWS Cloud computing and Security Sponsor Datadog Monitoring Depot Continuous Integration Fastly CDN Google Download Analytics Pingdom Monitoring Sentry Error logging StatusPage Status page