MCP-Server-OpenMetadata
1
Github Watches
5
Github Forks
4
Github Stars
mcp-server-openmetadata
A Model Context Protocol (MCP) server implementation for OpenMetadata, enabling seamless integration with MCP clients. This project provides a standardized way to interact with OpenMetadata through the Model Context Protocol.
About
This project implements a Model Context Protocol server that wraps OpenMetadata's REST API, allowing MCP clients to interact with OpenMetadata in a standardized way.
Feature Implementation Status
| 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} |
❌ |
Setup
Environment Variables
Set one of the following authentication methods:
Token Authentication (Recommended)
OPENMETADATA_HOST=<your-openmetadata-host>
OPENMETADATA_JWT_TOKEN=<your-jwt-token>
Basic Authentication
OPENMETADATA_HOST=<your-openmetadata-host>
OPENMETADATA_USERNAME=<your-username>
OPENMETADATA_PASSWORD=<your-password>
Usage with Claude Desktop
Add to your claude_desktop_config.json using one of the following authentication methods:
Token Authentication (Recommended)
{
"mcpServers": {
"mcp-server-openmetadata": {
"command": "uvx",
"args": ["mcp-server-openmetadata"],
"env": {
"OPENMETADATA_HOST": "https://your-openmetadata-host",
"OPENMETADATA_JWT_TOKEN": "your-jwt-token"
}
}
}
}
Basic Authentication
{
"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"
}
}
}
}
Alternative configuration using uv:
Token Authentication (Recommended)
{
"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"
}
}
}
}
Basic Authentication
{
"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"
}
}
}
}
Replace /path/to/mcp-server-openmetadata with the actual path where you've cloned the repository.
Manual Execution
You can also run the server manually:
python src/server.py
Options:
-
--port: Port to listen on for SSE (default: 8000) -
--transport: Transport type (stdio/sse, default: stdio)
Contributing
Contributions are welcome! Please feel free to submit a Pull Request.
License
MIT License
相关推荐
I craft unique cereal names, stories, and ridiculously cute Cereal Baby images.
I find academic articles and books for research and literature reviews.
Evaluator for marketplace product descriptions, checks for relevancy and keyword stuffing.
Confidential guide on numerology and astrology, based of GG33 Public information
Advanced software engineer GPT that excels through nailing the basics.
Emulating Dr. Jordan B. Peterson's style in providing life advice and insights.
Your go-to expert in the Rust ecosystem, specializing in precise code interpretation, up-to-date crate version checking, and in-depth source code analysis. I offer accurate, context-aware insights for all your Rust programming questions.
Découvrez la collection la plus complète et la plus à jour de serveurs MCP sur le marché. Ce référentiel sert de centre centralisé, offrant un vaste catalogue de serveurs MCP open-source et propriétaires, avec des fonctionnalités, des liens de documentation et des contributeurs.
L'application tout-en-un desktop et Docker AI avec chiffon intégré, agents AI, constructeur d'agent sans code, compatibilité MCP, etc.
Plateforme d'automatisation de workflow à code équitable avec des capacités d'IA natives. Combinez le bâtiment visuel avec du code personnalisé, de l'auto-hôte ou du cloud, 400+ intégrations.
Manipulation basée sur Micropython I2C de l'exposition GPIO de la série MCP, dérivée d'Adafruit_MCP230XX
🧑🚀 全世界最好的 LLM 资料总结 (数据处理、模型训练、模型部署、 O1 模型、 MCP 、小语言模型、视觉语言模型) | Résumé des meilleures ressources LLM du monde.
Une liste organisée des serveurs de protocole de contexte de modèle (MCP)
Reviews
user_CeeFCTUX
Jina AI MCP Tools by PsychArch has transformed my productivity! It offers seamless integration and powerful AI features that streamline tasks effortlessly. The user interface is intuitive, making it accessible for both beginners and advanced users. Highly recommend checking out this game-changing tool!