legion-mcp

by TheRaLabs
Verified

hybrid server

The server is able to function both locally and remotely, depending on the configuration or use case.

Integrations

  • Supports integration with FastAPI for running the MCP server, providing both standalone and integrated deployment options

  • Provides database access capabilities for MySQL, supporting query execution and schema exploration

  • Enables querying and interacting with PostgreSQL databases through SQL execution tools and schema resources

Servidor MCP de base de datos (por Legion AI)

Un servidor que ayuda a las personas a acceder y consultar datos en bases de datos utilizando Legion Query Runner con integración del SDK de Python del Protocolo de contexto de modelo (MCP).

Características

  • Acceso a la base de datos a través de Legion Query Runner
  • Compatibilidad del Protocolo de Contexto de Modelo (MCP) con asistentes de IA
  • Exponer las operaciones de la base de datos como recursos, herramientas y avisos de MCP
  • Múltiples opciones de implementación (servidor MCP independiente, integración FastAPI)
  • Ejecución de consultas y manejo de resultados
  • Configuración flexible a través de variables de entorno, argumentos de línea de comandos o configuración MCP JSON

Bases de datos compatibles

Base de datosCódigo DB_TYPE
PostgreSQLpág.
Desplazamiento al rojocorrimiento al rojo
Base de datos de cucarachascucaracha
MySQLMySQL
RDS MySQLrds_mysql
Microsoft SQL Servermssql
Gran consultaBigQuery
Base de datos Oracleoráculo
SQLitesqlite

Usamos la biblioteca Legion Query Runner como conectores. Puedes encontrar más información en su documentación de API .

¿Qué es MCP?

El Protocolo de Contexto de Modelo (MCP) es una especificación para mantener el contexto en aplicaciones de IA. Este servidor utiliza el SDK de Python de MCP para:

  • Exponer las operaciones de bases de datos como herramientas para los asistentes de IA
  • Proporcionar esquemas de bases de datos y metadatos como recursos
  • Generar indicaciones útiles para las operaciones de la base de datos
  • Habilitar interacciones con estado con bases de datos

Instalación y configuración

Parámetros requeridos

Se requieren dos parámetros para todos los métodos de instalación:

  • DB_TYPE : El código del tipo de base de datos (ver tabla anterior)
  • DB_CONFIG : una cadena de configuración JSON para la conexión a la base de datos

El formato DB_CONFIG varía según el tipo de base de datos. Consulte la documentación de la API para obtener información detallada sobre la configuración de cada base de datos.

Métodos de instalación

Opción 1: Uso de UV (recomendado)

Al usar uv , no se requiere una instalación específica. Usaremos uvx para ejecutar directamente database-mcp .

Ejemplo de configuración UV:

REPLACE DB_TYPE and DB_CONFIG with your connection info. { "mcpServers": { "database-mcp": { "command": "uvx", "args": [ "database-mcp" ], "env": { "DB_TYPE": "pg", "DB_CONFIG": "{\"host\":\"localhost\",\"port\":5432,\"user\":\"user\",\"password\":\"pw\",\"dbname\":\"dbname\"}" }, "disabled": true, "autoApprove": [] } } }

Opción 2: Uso de PIP

Instalar mediante pip:

pip install database-mcp

Ejemplo de configuración PIP:

{ "mcpServers": { "database": { "command": "python", "args": [ "-m", "database_mcp", "--repository", "path/to/git/repo" ], "env": { "DB_TYPE": "pg", "DB_CONFIG": "{\"host\":\"localhost\",\"port\":5432,\"user\":\"user\",\"password\":\"pw\",\"dbname\":\"dbname\"}" } } } }

Ejecución del servidor

Modo de desarrollo

mcp dev mcp_server.py

Modo de producción

python mcp_server.py

Métodos de configuración

Variables de entorno

export DB_TYPE="pg" # or mysql, postgresql, etc. export DB_CONFIG='{"host":"localhost","port":5432,"user":"username","password":"password","dbname":"database_name"}' mcp dev mcp_server.py

Argumentos de la línea de comandos

python mcp_server.py --db-type pg --db-config '{"host":"localhost","port":5432,"user":"username","password":"password","dbname":"database_name"}'

O con UV:

uv mcp_server.py --db-type pg --db-config '{"host":"localhost","port":5432,"user":"username","password":"password","dbname":"database_name"}'

Capacidades MCP expuestas

Recursos

RecursoDescripción
schema://allObtenga el esquema completo de la base de datos

Herramientas

HerramientaDescripción
execute_queryEjecutar una consulta SQL y devolver los resultados como una tabla de rebajas
execute_query_jsonEjecutar una consulta SQL y devolver los resultados como JSON
get_table_columnsObtener los nombres de las columnas de una tabla específica
get_table_typesObtener tipos de columnas para una tabla específica
get_query_historyObtener el historial de consultas recientes

Indicaciones

InmediatoDescripción
sql_queryCrear una consulta SQL contra la base de datos
explain_queryExplicar qué hace una consulta SQL
optimize_queryOptimizar una consulta SQL para un mejor rendimiento

Desarrollo

Pruebas

uv pip install -e ".[dev]" pytest

Publicación

rm -rf dist/ build/ *.egg-info/ && python -m build python -m build python -m twine upload dist/*

Licencia

Este repositorio está licenciado bajo GPL

-
security - not tested
F
license - not found
-
quality - not tested

Un servidor que facilita el acceso y la consulta de datos en bases de datos mediante Query Runner, con integración del SDK de Python del Protocolo de Contexto de Modelo (MCP). Compatible con bases de datos como PostgreSQL, Redshift, MySQL, Microsoft SQL Server, API de Google, Amazon Web Services (vía boto3), CockroachDB y SQLite.

  1. Features
    1. Supported Databases
      1. What is MCP?
        1. Installation & Configuration
          1. Required Parameters
          2. Installation Methods
        2. Running the Server
          1. Development Mode
          2. Production Mode
          3. Configuration Methods
        3. Exposed MCP Capabilities
          1. Resources
          2. Tools
          3. Prompts
        4. Development
          1. Testing
          2. Publishing
        5. License
          ID: eznxyvc6od