ArangoDB

ArangoDB

A TypeScript-based server to interact with ArangoDB using the Model Context Protocol, enabling database operations and integration with tools like Claude and VSCode extensions for streamlined data management.

ravenwits

Data & App Analysis
Visit Server

Tools

arango_query

Execute an AQL query

arango_insert

Insert a document into a collection

arango_update

Update a document in a collection

arango_remove

Remove a document from a collection

arango_backup

Backup collections to JSON files.

arango_list_collections

List all collections in the database

arango_create_collection

Create a new collection in the database

README

MCP Server for ArangoDB

smithery badge

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

Database Structure

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.

Development

Install dependencies:

npm run build

For development with auto-rebuild:

npm run watch

Installation

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, add the server config:

  • MacOS: ~/Library/Application Support/Claude/claude_desktop_config.json
  • Windows: %APPDATA%/Claude/claude_desktop_config.json

To use with Cline VSCode Extension, add the server config:

  • 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_DATABASE": "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_DATABASE - Database name
  • ARANGO_USERNAME - Database user
  • ARANGO_PASSWORD - Database password

Usage Examples

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

Demo of using ArangoDB MCP server with Claude App

Uasge with Cline VSCode extension

Demo of using ArangoDB MCP server 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": 2, // 2 for document collection, 3 for edge collection (optional, defaults to document collection)
  "waitForSync": false // Optional, defaults to false
}

Debugging

Since MCP servers communicate over stdio, debugging can be challenging. We recommend using the 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.

Recommended Servers

VeyraX MCP

VeyraX MCP

Single MCP tool to connect all your favorite tools: Gmail, Calendar and 40 more.

Official
Featured
Local
AIO-MCP Server

AIO-MCP Server

🚀 All-in-one MCP server with AI search, RAG, and multi-service integrations (GitLab/Jira/Confluence/YouTube) for AI-enhanced development workflows. Folk from

Featured
Local
Hyperbrowser MCP Server

Hyperbrowser MCP Server

Welcome to Hyperbrowser, the Internet for AI. Hyperbrowser is the next-generation platform empowering AI agents and enabling effortless, scalable browser automation. Built specifically for AI developers, it eliminates the headaches of local infrastructure and performance bottlenecks, allowing you to

Featured
Local
BigQuery

BigQuery

This is a server that lets your LLMs (like Claude) talk directly to your BigQuery data! Think of it as a friendly translator that sits between your AI assistant and your database, making sure they can chat securely and efficiently.

Featured
Perplexity Chat MCP Server

Perplexity Chat MCP Server

MCP Server for the Perplexity API.

Featured
Web Research Server

Web Research Server

A Model Context Protocol server that enables Claude to perform web research by integrating Google search, extracting webpage content, and capturing screenshots.

Featured
MySQL Server

MySQL Server

Allows AI assistants to list tables, read data, and execute SQL queries through a controlled interface, making database exploration and analysis safer and more structured.

Featured
Aindreyway Codex Keeper

Aindreyway Codex Keeper

Serves as a guardian of development knowledge, providing AI assistants with curated access to latest documentation and best practices.

Featured
Etherscan Tools

Etherscan Tools

Facilitates interaction with Ethereum blockchain data via Etherscan's API, providing real-time access to balances, transactions, token transfers, contract ABIs, gas prices, and ENS name resolutions.

Featured
Perplexity Deep Research

Perplexity Deep Research

A server that allows AI assistants to perform web searches using Perplexity's sonar-deep-research model with citation support.

Featured