Servidor Mcp 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 a través de herramientas MCP. ¡Puedes usarlo con la aplicación Claude y también con la extensión para VSCode que funciona con MCP como Cline!
Resumen
¿Qué es MCP Server ArangoDB?
MCP Server ArangoDB es un servidor basado en TypeScript diseñado para facilitar las interacciones con bases de datos utilizando ArangoDB. Sirve como un middleware que implementa operaciones esenciales de base de datos, permitiendo una integración fluida con diversas herramientas MCP. Este servidor es particularmente útil para desarrolladores que buscan mejorar sus aplicaciones con funcionalidades robustas de base de datos.
Características de MCP Server ArangoDB
- Soporte para TypeScript: Construido con TypeScript, asegurando seguridad de tipos y una mejor experiencia de desarrollo.
- Operaciones de Base de Datos: Implementa operaciones básicas como crear, leer, actualizar y eliminar (CRUD) para una gestión eficiente de datos.
- Integración con ArangoDB: Permite una fácil integración con ArangoDB, una base de datos multimodal que soporta modelos de datos de documentos, gráficos y clave/valor.
- Compatibilidad con Herramientas MCP: Funciona sin problemas con herramientas MCP, mejorando las capacidades de aplicaciones como Claude y extensiones para Visual Studio Code (VSCode).
- Código Abierto: El proyecto está disponible públicamente, fomentando contribuciones y colaboración de la comunidad.
Cómo Usar MCP Server ArangoDB
-
Instalación: Clona el repositorio desde GitHub e instala las dependencias necesarias usando npm o yarn.
git clone https://github.com/ravenwits/mcp-server-arangodb.git cd mcp-server-arangodb npm install
-
Configuración: Configura los detalles de conexión de tu ArangoDB en el archivo de configuración. Asegúrate de que tu base de datos esté en funcionamiento y accesible.
-
Ejecutar el Servidor: Inicia el servidor usando el comando:
npm start
-
Uso de la API: Utiliza los puntos finales de la API proporcionados para realizar operaciones de base de datos. Consulta la documentación para especificaciones detalladas de la API y ejemplos.
-
Integración: Integra el servidor MCP con tu aplicación, aprovechando sus capacidades para gestionar datos de manera efectiva.
Preguntas Frecuentes
¿Qué es ArangoDB?
ArangoDB es una base de datos multimodal que soporta varios modelos de datos, incluyendo documentos, gráficos y clave/valor. Está diseñada para flexibilidad y escalabilidad, lo que la hace adecuada para una amplia gama de aplicaciones.
¿Puedo contribuir al proyecto MCP Server ArangoDB?
¡Sí! MCP Server ArangoDB es un proyecto de código abierto, y las contribuciones son bienvenidas. Puedes bifurcar el repositorio, hacer cambios y enviar una solicitud de extracción para revisión.
¿Hay documentación disponible para MCP Server ArangoDB?
Sí, hay documentación completa disponible en el repositorio. Incluye instrucciones de configuración, referencias de API y ejemplos para ayudarte a comenzar.
¿Cómo puedo reportar problemas o solicitar características?
Puedes reportar problemas o solicitar características abriendo un problema en el repositorio de GitHub. Asegúrate de proporcionar información detallada para ayudar a los mantenedores a entender tu solicitud.
¿Bajo qué licencia está MCP Server ArangoDB?
MCP Server ArangoDB está bajo la licencia MIT, permitiendo su uso, modificación y distribución de forma gratuita.
Detalle
MCP Server for ArangoDB
A Model Context Protocol server for ArangoDB
This is a TypeScript-based MCP server that provides database interaction capabilities through ArangoDB. It implements core database operations and allows seamless integration with ArangoDB through MCP tools. You can use it wih Claude app and also extension for VSCode that works with mcp like Cline!
Features
Tools
-
arango_query
- Execute AQL queries- Takes an AQL query string as required parameter
- Optionally accepts bind variables for parameterized queries
- Returns query results as JSON
-
arango_insert
- Insert documents into collections- Takes collection name and document object as required parameters
- Automatically generates document key if not provided
- Returns the created document metadata
-
arango_update
- Update existing documents- Takes collection name, document key, and update object as required parameters
- Returns the updated document metadata
-
arango_remove
- Remove documents from collections- Takes collection name and document key as required parameters
- Returns the removed document metadata
-
arango_backup
- Backup all collections to JSON files- Takes output directory path as required parameter
- Creates JSON files for each collection with current data
- Useful for data backup and migration purposes
-
arango_list_collections
- List all collections in the database- Returns array of collection information including names, IDs, and types
-
arango_create_collection
- Create a new collection in the database- Takes collection name as required parameter
- Optionally specify collection type (document or edge collection)
- Configure waitForSync behavior for write operations
- Returns collection information including name, type, and status
Installation
Installing via NPM
To install arango-server
globally via NPM, run the following command:
npm install -g arango-server
Running via NPX
To run arango-server
directly without installation, use the following command:
npx arango-server
Configuring for VSCode Agent
To use arango-server
with the VSCode Copilot agent, you must have at least VSCode 1.99.0 installed and follow these steps:
-
Create or edit the MCP configuration file:
-
Workspace-specific configuration: Create or edit the
.vscode/mcp.json
file in your workspace. -
User-specific configuration: Optionally, specify the server in the setting(mcp) VS Code user settings to enable the MCP server across all workspaces.
Tip: You can refer here to the MCP configuration documentation of VSCode for more details on how to set up the configuration file.
-
-
Add the following configuration:
{ "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" } } } }
-
Start the MCP server:
- Open the Command Palette in VSCode (
Ctrl+Shift+P
orCmd+Shift+P
on Mac). - Run the command
MCP: Start Server
and selectarango-mcp
from the list.
- Open the Command Palette in VSCode (
-
Verify the server:
- Open the Chat view in VSCode and switch to Agent mode.
- Use the
Tools
button to verify that thearango-server
tools are available.
Installing via Smithery
To install ArangoDB for Claude Desktop automatically via Smithery:
npx -y @smithery/cli install @ravenwits/mcp-server-arangodb --client claude
To use with Claude Desktop
Go to: Settings > Developer > Edit Config
or
- MacOS:
~/Library/Application Support/Claude/claude_desktop_config.json
- Windows:
%APPDATA%/Claude/claude_desktop_config.json
To use with Cline VSCode Extension
Go to: Cline Extension > MCP Servers > Edit Configuration
or
- MacOS:
~/Library/Application Support/Code/User/globalStorage/cline.cline/config.json
- Windows:
%APPDATA%/Code/User/globalStorage/cline.cline/config.json
Add the following configuration to the mcpServers
section:
{
"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"
}
}
}
}
Environment Variables
The server requires the following environment variables:
ARANGO_URL
- ArangoDB server URL (note: 8529 is the default port for ArangoDB for local development)ARANGO_DB
- Database nameARANGO_USERNAME
- Database userARANGO_PASSWORD
- Database password
Usage
You can pretty much provide any meaningful prompt and Claude will try to execute the appropriate function.
Some example propmts:
- "List all collections in the database"
- "Query all users"
- "Insert a new document with name 'John Doe' and email "john@example.com' to the 'users' collection"
- "Update the document with key '123456' or name 'Jane Doe' to change the age to 48"
- "Create a new collection named 'products'"
Usage with Claude App
Uasge with Cline VSCode extension
Query all users:
{
"query": "FOR user IN users RETURN user"
}
Insert a new document:
{
"collection": "users",
"document": {
"name": "John Doe",
"email": "john@example.com"
}
}
Update a document:
{
"collection": "users",
"key": "123456",
"update": {
"name": "Jane Doe"
}
}
Remove a document:
{
"collection": "users",
"key": "123456"
}
List all collections:
{
} // No parameters required
Backup database collections:
{
"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)
}
Create a new collection:
{
"name": "products",
"type": "document", // "document" or "edge" (optional, defaults to "document")
"waitForSync": false // Optional, defaults to false
}
Note: The server is database-structure agnostic and can work with any collection names or structures as long as they follow ArangoDB's document and edge collection models.
Disclaimer
For Development Use Only
This tool is designed for local development environments only. While technically it could connect to a production database, this would create significant security risks and is explicitly discouraged. We use it exclusively with our development databases to maintain separation of concerns and protect production data.
Development
-
Clone the repository
-
Install dependencies:
npm run build
-
For development with auto-rebuild:
npm run watch
Debugging
Since MCP servers communicate over stdio, debugging can be challenging. recommended debugging can be done by using MCP Inspector for development:
npm run inspector
The Inspector will provide a URL to access debugging tools in your browser.
License
This project is licensed under the MIT License - see the LICENSE file for details.
Configuración del Servidor
{
"mcpServers": {
"mcp-server-arangodb": {
"command": "docker",
"args": [
"run",
"-i",
"--rm",
"ghcr.io/metorial/mcp-container--ravenwits--mcp-server-arangodb--mcp-server-arangodb",
"npm run start"
],
"env": {
"ARANGO_URL": "arango-url",
"ARANGO_DB": "arango-db",
"ARANGO_USERNAME": "arango-username",
"ARANGO_PASSWORD": "arango-password"
}
}
}
}
Información del Proyecto
Servidor Mcp para Ar... Alternativas
Para algunas alternativas a Servidor Mcp para Ar... que puedas necesitar, te ofrecemos sitios divididos por categoría.
Una implementación de servidor del Protocolo de Contexto de Modelo (MCP) que proporciona capacidades de base de datos para Chroma.
Motor de consultas de IA - Plataforma para construir IA que puede responder preguntas sobre datos federados a gran escala. - El único servidor MCP que necesitarás.