使用说明
mcp服务器openmetadata
OpenMetadata的模型上下文协议(MCP)服务器实现,实现了与MCP客户端的无缝集成。该项目提供了一种通过模型上下文协议与OpenMetadata交互的标准化方法。
关于
该项目实现了 模型上下文协议 包装OpenMetadata的REST API的服务器,允许MCP客户端以标准化的方式与OpenMetadata交互。
功能实现状态
| 功能 | API路径 | 状态 |
|---|---|---|
| 数据资产 | ||
| 列出数据库 | /api/v1/databases |
❌ |
| 获取数据库 | /api/v1/databases/{id} |
❌ |
| 按名称获取数据库 | /api/v1/databases/name/{fqn} |
❌ |
| 导出数据库 | /api/v1/databases/name/{name}/export |
❌ |
| 导入数据库 | /api/v1/databases/name/{name}/import |
❌ |
| 列表表格 | /api/v1/tables |
✅ |
| 获取桌子 | /api/v1/tables/{id} |
✅ |
| 按名称获取表 | /api/v1/tables/name/{fqn} |
✅ |
| 创建表格 | /api/v1/tables |
✅ |
| 更新表格 | /api/v1/tables/{id} |
✅ |
| 删除表格 | /api/v1/tables/{id} |
✅ |
| 导出表 | /api/v1/tables/name/{name}/export |
❌ |
| 导入表 | /api/v1/tables/name/{name}/import |
❌ |
| 列出指标 | /api/v1/metrics |
❌ |
| 获取度量 | /api/v1/metrics/{id} |
❌ |
| 列出仪表板 | /api/v1/dashboards |
❌ |
| 获取仪表板 | /api/v1/dashboards/{id} |
❌ |
| 按名称获取仪表板 | /api/v1/dashboards/name/{fqn} |
❌ |
| 列出报告 | /api/v1/reports |
❌ |
| 获取报告 | /api/v1/reports/{id} |
❌ |
| 列出管道 | /api/v1/pipelines |
❌ |
| 获取管道 | /api/v1/pipelines/{id} |
❌ |
| 按名称获取管道 | /api/v1/pipelines/name/{fqn} |
❌ |
| 列出主题 | /api/v1/topics |
❌ |
| 获取主题 | /api/v1/topics/{id} |
❌ |
| 服务 | ||
| 列出数据库服务 | /api/v1/services/databaseServices |
❌ |
| 获取数据库服务 | /api/v1/services/databaseServices/{id} |
❌ |
| 按名称获取数据库服务 | /api/v1/services/databaseServices/name/{fqn} |
❌ |
| 导出数据库服务 | /api/v1/services/databaseServices/name/{name}/export |
❌ |
| 导入数据库服务 | /api/v1/services/databaseServices/name/{name}/import |
❌ |
| 列出仪表板服务 | /api/v1/services/dashboardServices |
❌ |
| 获取仪表板服务 | /api/v1/services/dashboardServices/{id} |
❌ |
| 按名称获取仪表板服务 | /api/v1/services/dashboardServices/name/{fqn} |
❌ |
| 团队和用户 | ||
| 列出团队 | /api/v1/teams |
❌ |
| 组建团队 | /api/v1/teams/{id} |
❌ |
| 按名称获取团队 | /api/v1/teams/name/{fqn} |
❌ |
| 出口团队 | /api/v1/teams/name/{name}/export |
❌ |
| 导入团队 | /api/v1/teams/name/{name}/import |
❌ |
| 列出用户 | /api/v1/users |
❌ |
| 获取用户 | /api/v1/users/{id} |
❌ |
| 按名称获取用户 | /api/v1/users/name/{name} |
❌ |
| 用户登录 | /api/v1/users/login |
❌ |
| 用户注销 | /api/v1/users/logout |
❌ |
| 用户注册 | /api/v1/users/signup |
❌ |
| 更改密码 | /api/v1/users/changePassword |
❌ |
| 搜索 | ||
| 搜索查询 | /api/v1/search/query |
❌ |
| 搜索建议 | /api/v1/search/suggest |
❌ |
| 搜索聚合 | /api/v1/search/aggregate |
❌ |
| 字段查询 | /api/v1/search/fieldQuery |
❌ |
| 获取文档 | /api/v1/search/get/{index}/doc/{id} |
❌ |
| 标签和分类 | ||
| 列表标签 | /api/v1/tags |
❌ |
| 获取标签 | /api/v1/tags/{id} |
❌ |
| 按名称获取标签 | /api/v1/tags/name/{fqn} |
❌ |
| 世系 | ||
| 获取血统 | /api/v1/lineage/getLineage |
❌ |
| 出口血统 | /api/v1/lineage/export |
❌ |
| 按名称获取实体谱系 | /api/v1/lineage/{entity}/name/{fqn} |
❌ |
| 按ID获取实体谱系 | /api/v1/lineage/{entity}/{id} |
❌ |
| 获取Lineage Edge | /api/v1/lineage/getLineageEdge/{fromId}/{toId} |
❌ |
| 添加/更新谱系 | /api/v1/lineage |
❌ |
| 按FQN添加/更新谱系 | /api/v1/lineage/{fromEntity}/name/{fromFQN}/{toEntity}/name/{toFQN} |
❌ |
| 按ID添加/更新血统 | /api/v1/lineage/{fromEntity}/{fromId}/{toEntity}/{toId} |
❌ |
| 词汇表 | ||
| 列出术语表 | /api/v1/glossaries |
❌ |
| 获取术语表 | /api/v1/glossaries/{id} |
❌ |
| 按名称获取术语表 | /api/v1/glossaries/name/{fqn} |
❌ |
| 出口术语表 | /api/v1/glossaries/name/{name}/export |
❌ |
| 导入术语表 | /api/v1/glossaries/name/{name}/import |
❌ |
| 列出术语表 | /api/v1/glossaryTerms |
❌ |
| 获取术语表 | /api/v1/glossaryTerms/{id} |
❌ |
| 按名称获取术语表 | /api/v1/glossaryTerms/name/{fqn} |
❌ |
| 将资产添加到期限 | /api/v1/glossaryTerms/{id}/assets/add |
❌ |
| 从期限中删除资产 | /api/v1/glossaryTerms/{id}/assets/remove |
❌ |
| 验证术语标签 | /api/v1/glossaryTerms/{id}/tags/validate |
❌ |
| 用法 | ||
| 按名称获取实体使用情况 | /api/v1/usage/{entity}/name/{fqn} |
❌ |
| 按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)
贡献
欢迎投稿!请随时提交拉取请求。
许可证
MIT许可证