O

OpenMetadata MCP

@yangkyeongmo/mcp-server-openmetadata
Hosted
1 Stars 494 次浏览 yangkyeongmo 更新于 2026-08-23

通过封装其REST API以通过模型上下文协议进行标准化交互,从而实现与OpenMetadata的集成。

MCP 服务配置

复制以下 JSON 到 OPClaw 或其他 MCP 客户端的配置文件中即可使用

{
  "mcpServers": {
    "mcp-server-openmetadata": {
      "args": [
        "mcp-server-openmetadata"
      ],
      "command": "uvx",
      "env": {
        "OPENMETADATA_HOST": "https://your-openmetadata-host",
        "OPENMETADATA_PASSWORD": "your-password",
        "OPENMETADATA_USERNAME": "your-username"
      }
    }
  }
}

该服务需要配置环境变量:OPENMETADATA_HOST、OPENMETADATA_JWT_TOKEN、OPENMETADATA_PASSWORD、OPENMETADATA_USERNAME

服务介绍

mcp-server-openmetadata

一个用于OpenMetadata的模型上下文协议(MCP)服务器实现,使MCP客户端能够无缝集成。该项目提供了一种通过模型上下文协议与OpenMetadata交互的标准方式。

关于

此项目实现了模型上下文协议服务器,该服务器封装了OpenMetadata的REST API,允许MCP客户端以标准化的方式与OpenMetadata进行交互。

功能实现状态

Feature API Path Status
Data Assets
List Databases /api/v1/databases ❌
Get Database /api/v1/databases/{id} ❌
Get Database by Name /api/v1/databases/name/{fqn} ❌
Export Database /api/v1/databases/name/{name}/export ❌
Import Database /api/v1/databases/name/{name}/import ❌
List Tables /api/v1/tables ✅
Get Table /api/v1/tables/{id} ✅
Get Table by Name /api/v1/tables/name/{fqn} ✅
Create Table /api/v1/tables ✅
Update Table /api/v1/tables/{id} ✅
Delete Table /api/v1/tables/{id} ✅
Export Table /api/v1/tables/name/{name}/export ❌
Import Table /api/v1/tables/name/{name}/import ❌
List Metrics /api/v1/metrics ❌
Get Metric /api/v1/metrics/{id} ❌
List Dashboards /api/v1/dashboards ❌
Get Dashboard /api/v1/dashboards/{id} ❌
Get Dashboard by Name /api/v1/dashboards/name/{fqn} ❌
List Reports /api/v1/reports ❌
Get Report /api/v1/reports/{id} ❌
List Pipelines /api/v1/pipelines ❌
Get Pipeline /api/v1/pipelines/{id} ❌
Get Pipeline by Name /api/v1/pipelines/name/{fqn} ❌
List Topics /api/v1/topics ❌
Get Topic /api/v1/topics/{id} ❌
Services
List Database Services /api/v1/services/databaseServices ❌
Get Database Service /api/v1/services/databaseServices/{id} ❌
Get Database Service by Name /api/v1/services/databaseServices/name/{fqn} ❌
Export Database Service /api/v1/services/databaseServices/name/{name}/export ❌
Import Database Service /api/v1/services/databaseServices/name/{name}/import ❌
List Dashboard Services /api/v1/services/dashboardServices ❌
Get Dashboard Service /api/v1/services/dashboardServices/{id} ❌
Get Dashboard Service by Name /api/v1/services/dashboardServices/name/{fqn} ❌
Teams & Users
List Teams /api/v1/teams ❌
Get Team /api/v1/teams/{id} ❌
Get Team by Name /api/v1/teams/name/{fqn} ❌
Export Team /api/v1/teams/name/{name}/export ❌
Import Team /api/v1/teams/name/{name}/import ❌
List Users /api/v1/users ❌
Get User /api/v1/users/{id} ❌
Get User by Name /api/v1/users/name/{name} ❌
User Login /api/v1/users/login ❌
User Logout /api/v1/users/logout ❌
User Signup /api/v1/users/signup ❌
Change Password /api/v1/users/changePassword ❌
Search
Search Query /api/v1/search/query ❌
Search Suggest /api/v1/search/suggest ❌
Search Aggregate /api/v1/search/aggregate ❌
Field Query /api/v1/search/fieldQuery ❌
Get Document /api/v1/search/get/{index}/doc/{id} ❌
Tags & Classifications
List Tags /api/v1/tags ❌
Get Tag /api/v1/tags/{id} ❌
Get Tag by Name /api/v1/tags/name/{fqn} ❌
Lineage
Get Lineage /api/v1/lineage/getLineage ❌
Export Lineage /api/v1/lineage/export ❌
Get Entity Lineage by Name /api/v1/lineage/{entity}/name/{fqn} ❌
Get Entity Lineage by ID /api/v1/lineage/{entity}/{id} ❌
Get Lineage Edge /api/v1/lineage/getLineageEdge/{fromId}/{toId} ❌
Add/Update Lineage /api/v1/lineage ❌
Add/Update Lineage by FQN /api/v1/lineage/{fromEntity}/name/{fromFQN}/{toEntity}/name/{toFQN} ❌
Add/Update Lineage by ID /api/v1/lineage/{fromEntity}/{fromId}/{toEntity}/{toId} ❌
Glossaries
List Glossaries /api/v1/glossaries ❌
Get Glossary /api/v1/glossaries/{id} ❌
Get Glossary by Name /api/v1/glossaries/name/{fqn} ❌
Export Glossary /api/v1/glossaries/name/{name}/export ❌
Import Glossary /api/v1/glossaries/name/{name}/import ❌
List Glossary Terms /api/v1/glossaryTerms ❌
Get Glossary Term /api/v1/glossaryTerms/{id} ❌
Get Glossary Term by Name /api/v1/glossaryTerms/name/{fqn} ❌
Add Assets to Term /api/v1/glossaryTerms/{id}/assets/add ❌
Remove Assets from Term /api/v1/glossaryTerms/{id}/assets/remove ❌
Validate Term Tags /api/v1/glossaryTerms/{id}/tags/validate ❌
Usage
Get Entity Usage by Name /api/v1/usage/{entity}/name/{fqn} ❌
Get Entity Usage by ID /api/v1/usage/{entity}/{id} ❌

设置

环境变量

设置以下认证方法之一:

令牌认证(推荐)

OPENMETADATA_HOST=<your-openmetadata-host>
OPENMETADATA_JWT_TOKEN=<your-jwt-token>

基本认证

OPENMETADATA_HOST=<your-openmetadata-host>
OPENMETADATA_USERNAME=<your-username>
OPENMETADATA_PASSWORD=<your-password>

与 Claude Desktop 一起使用

在 claude_desktop_config.json 中添加以下内容,选择其中一种认证方法:

令牌认证(推荐)

{
  "mcpServers": {
    "mcp-server-openmetadata": {
      "command": "uvx",
      "args": ["mcp-server-openmetadata"],
      "env": {
        "OPENMETADATA_HOST": "https://your-openmetadata-host",
        "OPENMETADATA_JWT_TOKEN": "your-jwt-token"
      }
    }
  }
}

基本认证

{
  "mcpServers": {
    "mcp-server-openmetadata": {
      "command": "uvx",
      "args": ["mcp-server-openmetadata"],
      "env": {
        "OPENMETADATA_HOST": "https://your-openmetadata-host",
        "OPENMETADATA_USERNAME": "your-username",
        "OPENMETADATA_PASSWORD": "your-password"
      }
    }
  }
}

使用 uv 的替代配置方法:

令牌认证(推荐)

{
  "mcpServers": {
    "mcp-server-openmetadata": {
      "command": "uv",
      "args": [
        "--directory",
        "/path/to/mcp-server-openmetadata",
        "run",
        "mcp-server-openmetadata"
      ],
      "env": {
        "OPENMETADATA_HOST": "https://your-openmetadata-host",
        "OPENMETADATA_JWT_TOKEN": "your-jwt-token"
      }
    }
  }
}

基本认证

{
  "mcpServers": {
    "mcp-server-openmetadata": {
      "command": "uv",
      "args": [
        "--directory",
        "/path/to/mcp-server-openmetadata",
        "run",
        "mcp-server-openmetadata"
      ],
      "env": {
        "OPENMETADATA_HOST": "https://your-openmetadata-host",
        "OPENMETADATA_USERNAME": "your-username",
        "OPENMETADATA_PASSWORD": "your-password"
      }
    }
  }
}

将 /path/to/mcp-server-openmetadata 替换为你克隆仓库的实际路径。

手动执行

你也可以手动运行服务器:

python src/server.py

选项:

  • --port: 监听 SSE 的端口(默认:8000)
  • --transport: 传输类型(stdio/sse,默认:stdio)

贡献

欢迎贡献!请随时提交 Pull Request。

许可证

MIT 许可证

相关 MCP 服务