Servidor MCP para ArangoDB
Un servidor de Protocolo de Contexto de Modelo para ArangoDB
Este es un servidor MCP basado en TypeScript que proporciona capacidades de interacción con bases de datos a través de ArangoDB. Implementa operaciones básicas de base de datos y permite una integración fluida con ArangoDB mediante herramientas MCP. Puedes usarlo con la aplicación Claude y también con extensiones para VSCode compatibles con MCP como Cline.
Características
Herramientas
arango_query- Ejecutar consultas AQLToma una cadena de consulta AQL como parámetro obligatorio
Acepta opcionalmente variables de enlace para consultas parametrizadas
Devuelve los resultados de la consulta como JSON
arango_insert- Insertar documentos en coleccionesToma el nombre de la colección y el objeto del documento como parámetros obligatorios
Genera automáticamente la clave del documento si no se proporciona
Devuelve los metadatos del documento creado
arango_update- Actualizar documentos existentesToma el nombre de la colección, la clave del documento y el objeto de actualización como parámetros obligatorios
Devuelve los metadatos del documento actualizados
arango_remove- Eliminar documentos de coleccionesToma el nombre de la colección y la clave del documento como parámetros obligatorios
Devuelve los metadatos del documento eliminado
arango_backup- Realiza una copia de seguridad de todas las colecciones en archivos JSONToma la ruta del directorio de salida como parámetro requerido
Crea archivos JSON para cada colección con datos actuales
Útil para fines de copia de seguridad y migración de datos.
arango_list_collections- Lista todas las colecciones en la base de datosDevuelve una matriz de información de colección, incluidos nombres, identificaciones y tipos.
arango_create_collection- Crea una nueva colección en la base de datosToma el nombre de la colección como parámetro obligatorio
Opcionalmente, especifique el tipo de colección (documento o colección de borde)
Configurar el comportamiento de waitForSync para operaciones de escritura
Devuelve información de la colección, incluido el nombre, el tipo y el estado.
Related MCP server: MongoDB MCP Server
Instalación
Instalación mediante NPM
Para instalar arango-server globalmente a través de NPM, ejecute el siguiente comando:
npm install -g arango-serverCorriendo a través de NPX
Para ejecutar arango-server directamente sin instalación, utilice el siguiente comando:
npx arango-serverConfiguración para el agente de VSCode
Para utilizar arango-server con el agente VSCode Copilot, debe tener instalado al menos VSCode 1.99.0 y seguir estos pasos:
Crear o editar el archivo de configuración de MCP :
Configuración específica del espacio de trabajo : cree o edite el archivo
.vscode/mcp.jsonen su espacio de trabajo.Configuración específica del usuario : opcionalmente, especifique el servidor en la configuración de usuario de VS Code (mcp) para habilitar el servidor MCP en todos los espacios de trabajo.
Consejo: puede consultar
Agregue la siguiente configuración :
{ "servers": { "arango-mcp": { "type": "stdio", "command": "npx", "args": ["arango-server"], "env": { "ARANGO_URL": "http://localhost:8529", "ARANGO_DB": "v20", "ARANGO_USERNAME": "app", "ARANGO_PASSWORD": "75Sab@MYa3Dj8Fc" } } } }Inicie el servidor MCP :
Abra la paleta de comandos en VSCode (
Ctrl+Shift+PoCmd+Shift+Pen Mac).Ejecute el comando
MCP: Start Servery seleccionearango-mcpde la lista.
Verificar el servidor :
Abra la vista Chat en VSCode y cambie al modo Agente.
Utilice el botón
Toolspara verificar que las herramientasarango-serverestén disponibles.
Instalación mediante herrería
Para instalar ArangoDB para Claude Desktop automáticamente a través de Smithery :
npx -y @smithery/cli install @ravenwits/mcp-server-arangodb --client claudePara usar con Claude Desktop
Vaya a: Settings > Developer > Edit Config o
MacOS:
~/Library/Application Support/Claude/claude_desktop_config.jsonVentanas:
%APPDATA%/Claude/claude_desktop_config.json
Para usar con la extensión Cline VSCode
Vaya a: Cline Extension > MCP Servers > Edit Configuration o
MacOS:
~/Library/Application Support/Code/User/globalStorage/cline.cline/config.jsonWindows:
%APPDATA%/Code/User/globalStorage/cline.cline/config.json
Agregue la siguiente configuración a la sección mcpServers :
{
"mcpServers": {
"arango": {
"command": "node",
"args": ["/path/to/arango-server/build/index.js"],
"env": {
"ARANGO_URL": "your_database_url",
"ARANGO_DB": "your_database_name",
"ARANGO_USERNAME": "your_username",
"ARANGO_PASSWORD": "your_password"
}
}
}
}Variables de entorno
El servidor requiere las siguientes variables de entorno:
ARANGO_URL- URL del servidor ArangoDB (nota: 8529 es el puerto predeterminado para ArangoDB para el desarrollo local)ARANGO_DB- Nombre de la base de datosARANGO_USERNAME- Usuario de la base de datosARANGO_PASSWORD- Contraseña de la base de datos
Uso
Puedes proporcionar prácticamente cualquier indicación significativa y Claude intentará ejecutar la función apropiada.
Algunos ejemplos de indicaciones:
"Enumerar todas las colecciones en la base de datos"
"Consultar a todos los usuarios"
Insertar un nuevo documento con el nombre 'John Doe' y enviarlo por correo electrónico a ' john@example.com ' a la colección 'usuarios'.
Actualice el documento con la clave '123456' o el nombre 'Jane Doe' para cambiar la edad a 48.
"Crear una nueva colección llamada 'productos'"
Uso con la aplicación Claude

Uso con la extensión Cline VSCode

Consultar a todos los usuarios:
{
"query": "FOR user IN users RETURN user"
}Insertar un nuevo documento:
{
"collection": "users",
"document": {
"name": "John Doe",
"email": "john@example.com"
}
}Actualizar un documento:
{
"collection": "users",
"key": "123456",
"update": {
"name": "Jane Doe"
}
}Eliminar un documento:
{
"collection": "users",
"key": "123456"
}Listar todas las colecciones:
{
} // No parameters requiredColecciones de bases de datos de respaldo:
{
"outputDir": "./backup" // Specify an absolute output directory path for the backup files (optional)
"collection": "users" // Specify a collection name to backup (optional) If no collection name is provided, all collections will be backed up
"docLimit": 1000 // Specify the maximum number of documents to backup per collection (optional), if not provided, all documents will be backed up (not having a limit might cause timeout for large collections)
}Crear una nueva colección:
{
"name": "products",
"type": "document", // "document" or "edge" (optional, defaults to "document")
"waitForSync": false // Optional, defaults to false
}Nota: El servidor es independiente de la estructura de la base de datos y puede trabajar con cualquier nombre o estructura de colección siempre que sigan los modelos de colección de documentos y bordes de ArangoDB.
Descargo de responsabilidad
Solo para uso de desarrollo
Esta herramienta está diseñada únicamente para entornos de desarrollo locales. Si bien técnicamente podría conectarse a una base de datos de producción, esto generaría riesgos de seguridad significativos y se desaconseja explícitamente. La utilizamos exclusivamente con nuestras bases de datos de desarrollo para mantener la separación de tareas y proteger los datos de producción.
Desarrollo
Clonar el repositorio
Instalar dependencias:
npm run buildPara desarrollo con reconstrucción automática:
npm run watch
Depuración
Dado que los servidores MCP se comunican a través de stdio, la depuración puede ser un desafío. La depuración recomendada se puede realizar utilizando MCP Inspector para el desarrollo:
npm run inspectorEl Inspector proporcionará una URL para acceder a las herramientas de depuración en su navegador.
Licencia
Este proyecto está licenciado bajo la licencia MIT: consulte el archivo de LICENCIA para obtener más detalles.