MCP Server for OpenMetadata

remote-capable server

The server can be hosted and run remotely because it primarily relies on remote services or has no dependency on the local environment.

mcp-server-openmetadatos

Implementación de un servidor del Protocolo de Contexto de Modelo (MCP) para OpenMetadata, que permite una integración fluida con clientes MCP. Este proyecto proporciona una forma estandarizada de interactuar con OpenMetadata mediante el Protocolo de Contexto de Modelo.

Acerca de

Este proyecto implementa un servidor de Protocolo de Contexto de Modelo que envuelve la API REST de OpenMetadata, permitiendo a los clientes MCP interactuar con OpenMetadata de una manera estandarizada.

Estado de implementación de la función

CaracterísticaRuta de la APIEstado
Activos de datos
Lista de bases de datos/api/v1/databases
Obtener base de datos/api/v1/databases/{id}
Obtener base de datos por nombre/api/v1/databases/name/{fqn}
Exportar base de datos/api/v1/databases/name/{name}/export
Importar base de datos/api/v1/databases/name/{name}/import
Tablas de listas/api/v1/tables
Obtener tabla/api/v1/tables/{id}
Obtener tabla por nombre/api/v1/tables/name/{fqn}
Crear tabla/api/v1/tables
Actualizar tabla/api/v1/tables/{id}
Eliminar tabla/api/v1/tables/{id}
Tabla de exportación/api/v1/tables/name/{name}/export
Importar tabla/api/v1/tables/name/{name}/import
Métricas de lista/api/v1/metrics
Obtener métrica/api/v1/metrics/{id}
Paneles de control de listas/api/v1/dashboards
Obtener el panel de control/api/v1/dashboards/{id}
Obtener el panel por nombre/api/v1/dashboards/name/{fqn}
Informes de lista/api/v1/reports
Obtener informe/api/v1/reports/{id}
Lista de tuberías/api/v1/pipelines
Obtener Pipeline/api/v1/pipelines/{id}
Obtener Pipeline por nombre/api/v1/pipelines/name/{fqn}
Lista de temas/api/v1/topics
Obtener tema/api/v1/topics/{id}
Servicios
Servicios de base de datos de listas/api/v1/services/databaseServices
Obtener servicio de base de datos/api/v1/services/databaseServices/{id}
Obtener el servicio de base de datos por nombre/api/v1/services/databaseServices/name/{fqn}
Servicio de exportación de bases de datos/api/v1/services/databaseServices/name/{name}/export
Servicio de importación de bases de datos/api/v1/services/databaseServices/name/{name}/import
Servicios del panel de control de listas/api/v1/services/dashboardServices
Obtener el servicio de panel de control/api/v1/services/dashboardServices/{id}
Obtener el servicio del panel por nombre/api/v1/services/dashboardServices/name/{fqn}
Equipos y usuarios
Lista de equipos/api/v1/teams
Conseguir equipo/api/v1/teams/{id}
Obtener equipo por nombre/api/v1/teams/name/{fqn}
Equipo de exportación/api/v1/teams/name/{name}/export
Equipo de importación/api/v1/teams/name/{name}/import
Lista de usuarios/api/v1/users
Obtener usuario/api/v1/users/{id}
Obtener usuario por nombre/api/v1/users/name/{name}
Inicio de sesión de usuario/api/v1/users/login
Cerrar sesión de usuario/api/v1/users/logout
Registro de usuario/api/v1/users/signup
Cambiar la contraseña/api/v1/users/changePassword
Buscar
Consulta de búsqueda/api/v1/search/query
Buscar Sugerir/api/v1/search/suggest
Búsqueda agregada/api/v1/search/aggregate
Consulta de campo/api/v1/search/fieldQuery
Obtener documento/api/v1/search/get/{index}/doc/{id}
Etiquetas y clasificaciones
Etiquetas de lista/api/v1/tags
Obtener etiqueta/api/v1/tags/{id}
Obtener etiqueta por nombre/api/v1/tags/name/{fqn}
Linaje
Obtener linaje/api/v1/lineage/getLineage
Exportar linaje/api/v1/lineage/export
Obtener el linaje de la entidad por nombre/api/v1/lineage/{entity}/name/{fqn}
Obtener el linaje de la entidad por ID/api/v1/lineage/{entity}/{id}
Obtenga Lineage Edge/api/v1/lineage/getLineageEdge/{fromId}/{toId}
Agregar/Actualizar linaje/api/v1/lineage
Agregar/Actualizar linaje por FQN/api/v1/lineage/{fromEntity}/name/{fromFQN}/{toEntity}/name/{toFQN}
Agregar/actualizar linaje por ID/api/v1/lineage/{fromEntity}/{fromId}/{toEntity}/{toId}
Glosarios
Lista de glosarios/api/v1/glossaries
Obtener glosario/api/v1/glossaries/{id}
Obtener glosario por nombre/api/v1/glossaries/name/{fqn}
Glosario de exportación/api/v1/glossaries/name/{name}/export
Glosario de importación/api/v1/glossaries/name/{name}/import
Lista de términos del glosario/api/v1/glossaryTerms
Obtener término del glosario/api/v1/glossaryTerms/{id}
Obtener término del glosario por nombre/api/v1/glossaryTerms/name/{fqn}
Agregar activos al término/api/v1/glossaryTerms/{id}/assets/add
Eliminar activos del plazo/api/v1/glossaryTerms/{id}/assets/remove
Validar etiquetas de términos/api/v1/glossaryTerms/{id}/tags/validate
Uso
Obtener el uso de la entidad por nombre/api/v1/usage/{entity}/name/{fqn}
Obtener el uso de la entidad por ID/api/v1/usage/{entity}/{id}

Configuración

Variables de entorno

Establezca uno de los siguientes métodos de autenticación:

Autenticación de token (recomendada)

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

Autenticación básica

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

Uso con Claude Desktop

Agregue a su claude_desktop_config.json utilizando uno de los siguientes métodos de autenticación:

Autenticación de token (recomendada)

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

Autenticación básica

{ "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" } } } }

Configuración alternativa usando uv :

Autenticación de token (recomendada)

{ "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" } } } }

Autenticación básica

{ "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" } } } }

Reemplace /path/to/mcp-server-openmetadata con la ruta real donde ha clonado el repositorio.

Ejecución manual

También puedes ejecutar el servidor manualmente:

python src/server.py

Opciones:

  • --port : Puerto para escuchar SSE (predeterminado: 8000)
  • --transport : Tipo de transporte (stdio/sse, predeterminado: stdio)

Contribuyendo

¡Agradecemos sus contribuciones! No dude en enviar una solicitud de incorporación de cambios.

Licencia

Licencia MIT

You must be authenticated.

A
security – no known vulnerabilities
A
license - permissive license
A
quality - confirmed to work

Permite la integración con OpenMetadata al envolver su API REST para una interacción estandarizada a través del Protocolo de Contexto de Modelo.

  1. About
    1. Feature Implementation Status
      1. Setup
        1. Environment Variables
        2. Usage with Claude Desktop
        3. Manual Execution
      2. Contributing
        1. License
          ID: lvgl5cmxa6