ArangoDB MCP Server
ArangoDB MCP servers enable AI models to interact with ArangoDB databases, providing capabilities for document operations, graph queries, AQL queries, and multi-model data management.
Overview
The MCP ArangoDB Server bridges AI and databases by letting language models (LLMs) work directly with ArangoDB, a flexible multi-model database. It's part of the Model Context Protocol (MCP) system, providing a safe and standard way to connect AI with powerful database capabilities for documents, graphs, and complex data relationships.
Created by:
Developed by ravenwits
Key Features
Document & Graph Operations
Work seamlessly with documents, edges, and vertices for complex data relationships
Powerful AQL Queries
Execute complex ArangoDB Query Language (AQL) queries with optional parameterized bind variables
Database & Collection Management
Create, list, and manage collections with automatic document key generation
Backup & Data Export
Export all collections as JSON files for backup and migration purposes
Available Tools
Quick Reference
| Tool | Purpose | Category |
|---|---|---|
arango_query | Execute AQL queries with bind variables | Read |
arango_insert | Add documents to collections | Write |
arango_update | Modify existing documents | Write |
arango_remove | Delete documents from collections | Write |
arango_list_collections | List all collections in database | Discovery |
arango_create_collection | Create new document or edge collections | Administration |
arango_backup | Export collections as JSON files | Backup |
Detailed Usage
arango_query▶
Execute AQL (ArangoDB Query Language) queries with optional parameterized bind variables for secure and efficient database operations.
use_mcp_tool({
server_name: "arangodb",
tool_name: "arango_query",
arguments: {
aql: "FOR doc IN users FILTER doc.age > @minAge RETURN doc",
bindVars: {
minAge: 18
}
}
});
arango_insert▶
Insert documents into collections with automatic document key generation if not provided.
use_mcp_tool({
server_name: "arangodb",
tool_name: "arango_insert",
arguments: {
collection: "users",
document: {
name: "John Doe",
email: "[email protected]",
age: 30
}
}
});
Automatic Key Generation:
Document keys are automatically generated if not provided in the document
arango_update▶
Update existing documents in a collection by specifying the collection name and document key.
use_mcp_tool({
server_name: "arangodb",
tool_name: "arango_update",
arguments: {
collection: "users",
key: "doc_key_123",
document: {
age: 31,
email: "[email protected]"
}
}
});
arango_remove▶
Delete documents from collections by collection name and document key.
use_mcp_tool({
server_name: "arangodb",
tool_name: "arango_remove",
arguments: {
collection: "users",
key: "doc_key_123"
}
});
arango_list_collections▶
List all collections in the connected database with metadata including names, IDs, and types.
use_mcp_tool({
server_name: "arangodb",
tool_name: "arango_list_collections",
arguments: {}
});
arango_create_collection▶
Create new document or edge collections in the database with configurable options.
use_mcp_tool({
server_name: "arangodb",
tool_name: "arango_create_collection",
arguments: {
collection: "products",
type: "document"
}
});
Collection Types:
Create either document collections (standard) or edge collections (for graph relationships)
arango_backup▶
Export all collections as JSON files for backup and data migration purposes.
use_mcp_tool({
server_name: "arangodb",
tool_name: "arango_backup",
arguments: {
outputDir: "/path/to/backup/directory"
}
});
Data Preservation:
Creates JSON files for each collection with all current data for safe backups and migrations
Installation
{
"mcpServers": {
"arangodb": {
"command": "npx",
"args": ["arango-server"],
"env": {
"ARANGO_URL": "http://localhost:8529",
"ARANGO_DB": "your_database",
"ARANGO_USERNAME": "root",
"ARANGO_PASSWORD": "your_password"
}
}
}
}
Default Port:
ArangoDB runs on port 8529 by default. Adjust ARANGO_URL if using a different port or remote server.
Common Use Cases
1. Document Management
Store and retrieve documents with AQL queries:
// Insert a new document
use_mcp_tool({
server_name: "arangodb",
tool_name: "arango_insert",
arguments: {
collection: "articles",
document: {
title: "Getting Started with ArangoDB",
content: "ArangoDB is a multi-model database...",
author: "John Doe",
published: true
}
}
});
2. Graph Relationships
Query complex relationships using graph traversal:
// Find all connected users
use_mcp_tool({
server_name: "arangodb",
tool_name: "arango_query",
arguments: {
aql: `
FOR vertex, edge, path IN 1..2 OUTBOUND @start GRAPH 'social_graph'
RETURN {vertex: vertex, path: path}
`,
bindVars: {
start: "users/user_123"
}
}
});
3. Data Analysis & Aggregation
Run aggregation queries on large datasets:
// Get user statistics
use_mcp_tool({
server_name: "arangodb",
tool_name: "arango_query",
arguments: {
aql: `
FOR doc IN users
COLLECT region = doc.region WITH COUNT INTO count
RETURN {region: region, users: count}
`
}
});
4. Bulk Data Operations
Perform bulk updates across collections:
// Update multiple documents matching criteria
use_mcp_tool({
server_name: "arangodb",
tool_name: "arango_query",
arguments: {
aql: `
FOR doc IN users
FILTER doc.status == @oldStatus
UPDATE doc WITH { status: @newStatus }
IN users
RETURN NEW
`,
bindVars: {
oldStatus: "inactive",
newStatus: "archived"
}
}
});
Environment Variables
Configure the ArangoDB MCP server with these environment variables:
- ARANGO_URL - ArangoDB server URL (e.g.,
http://localhost:8529) - ARANGO_DB - Target database name (e.g.,
my_database) - ARANGO_USERNAME - Database username (e.g.,
root) - ARANGO_PASSWORD - Database password
Development Only:
This tool is designed for local development environments. Connecting to production databases is discouraged due to security risks.
Sources
Related Articles
Ollama Deep Researcher: AI Model for Web Search & LLM Synthesis
Ollama Deep Researcher MCP servers enable AI models to perform advanced topic research using web search and LLM synthesis, powered by a local MCP server.
Ethereum RPC MCP Server
A TypeScript MCP server that exposes the full Ethereum JSON-RPC surface, enabling AI assistants to query on-chain data, inspect contracts, and retrieve transaction details across EVM networks. Includes optional analytics and Zircuit-specific SLS methods.
Search and Retrieval MCP Servers
The Search & Retrieval category provides integration with search engines and information retrieval systems, enabling efficient content discovery and data retrieval across different sources.