MCP Memgraph logo

MCP Memgraph

by memgraph

Query Memgraph with Cypher and inspect graph schema through MCP tools.

Install MCP Memgraph

Pick your client, then add it in one click or paste the config.

STDIOPython
~/Library/Application Support/Claude/claude_desktop_config.json
claude_desktop_config.json
{
  "mcpServers": {
    "memgraph-mcp-memgraph": {
      "command": "uvx",
      "args": [
        "mcp-memgraph"
      ]
    }
  }
}

Settings → Developer → Edit Config, merge this into mcpServers, then fully quit and reopen Claude Desktop.

Automated check passed— started and listed 7 tools correctly (Today).

Overview

memgraph/mcp-memgraph connects MCP clients to a Memgraph database over stdio or streamable HTTP. It exposes Cypher execution with type-preserving graph results, schema discovery tools, and database-session controls. The default server blocks write queries unless read-only mode is disabled. Use it when an agent needs to explore, query, or optionally modify a Memgraph graph.

Use cases

  • Query graph data with Cypher from an MCP client
  • Inspect labels and relationship types before generating queries
  • Return typed nodes and relationships for graph visualization
  • Switch between authorized Memgraph databases
  • Allow or block write queries with server configuration

Key features

  • Type-preserving Cypher query results
  • Graph schema search and inspection
  • Read-only mode by default
  • Stdio and streamable HTTP transports
  • Optional JWT-based multi-tenant database routing
  • Docker image for deployment

Tools7

What MCP Memgraph lets your agent do. Expand a tool for its parameters.

Verified live~664 tokens of context

Security & health

What it can reach and how reliably it runs — from our own checks, not the maintainer’s claims.

ActiveLast checked 1d ago

Recent health check succeeded.

27/27 checks healthy over the last 92d

What it can do

From the 7 tools this server returned when we ran it; 7 declare their own safety hints.

Handles credentials · 1Read-only tools · 7
Network at startup2 connections
Files written at startup13

Observed 2026-11-12 in an isolated sandbox. A description of reach, not a security audit.

Supply-chain signal

No high-severity advisories surfaced by our automated scan.

Critical 0High 0Medium 0Low 0

Scanned 7d ago via OSV.dev · mcp-memgraph (PyPI)

Adoption & maintenance

Factual signals from GitHub, npm, and our automated checks — not a rating.

GitHub stars119Stargazers on the source repository.
Last commit2d agoMost recent push to the default branch.
Availability100%Our rolling endpoint + install checks that succeeded.
Install checkPassedOur sandbox started it and listed its tools.
Tools exposed7Callable tools this server registers over MCP.
Directory activity7 viewsConfig copies, upvotes, and views on AllMCPs.

How MCP Memgraph works

What memgraph/mcp-memgraph does

memgraph/mcp-memgraph connects language-model clients to Memgraph and exposes database operations through the Model Context Protocol. Its default server provides seven tools: Cypher execution, schema search, detailed node, relationship, and enum schema inspection, database listing, and database switching.

The main query tool accepts arbitrary Cypher and returns one result row at a time. Graph values retain their types: nodes include identifiers, labels, and properties; relationships include their type, endpoints, and properties; paths, primitives, lists, maps, temporal values, and points also retain their shape. This allows a query to return graph entities alongside scalar values such as counts.

How it works

The server connects to Memgraph through its Bolt URL and exposes MCP over either standard input/output or streamable HTTP. The transport defaults to stdio when run directly, while the published Docker image defaults to streamable HTTP on port 8000. HTTP clients can connect at the /mcp/ endpoint when the container is started with the default Docker settings.

Read-only operation is enabled by default for the standard server. Queries containing write operations such as CREATE, MERGE, DELETE, SET, DROP, or REMOVE are rejected unless MCP_READ_ONLY=false is set. The experimental memgraph-experimental implementation has a different tool set and requires write access for index creation, so the read-only setting does not apply to it.

Setup and configuration

The published image is available as memgraph/mcp-memgraph:latest. For an HTTP deployment, publish port 8000:

Terminal
docker run --rm -p 8000:8000 memgraph/mcp-memgraph:latest

For an MCP host that launches stdio processes, run the image interactively and set the transport:

Terminal
docker run --rm -i -e MCP_TRANSPORT=stdio memgraph/mcp-memgraph:latest

Set MEMGRAPH_URL, MEMGRAPH_USER, MEMGRAPH_PASSWORD, and MEMGRAPH_DATABASE to connect to a specific Memgraph instance. The default Bolt URL is bolt://localhost:7687 for direct execution; the Docker image uses bolt://host.docker.internal:7687 so a container can reach Memgraph on the host. MCP_HOST, MCP_PORT, MCP_TRANSPORT, and MCP_SERVER control HTTP binding, transport, and server selection. Logging can be adjusted with MCP_LOG_LEVEL or directed to a file with MCP_LOG_FILE.

Streamable HTTP can optionally use OIDC/JWT authentication. When enabled, authorized sessions can be routed to logical databases based on JWT tenant claims, with the available database catalog controlled by MCP_TENANT_CATALOG.

Tools and capabilities

  • run_cypher_query: Execute Cypher and receive type-preserving rows. Cypher can also collect distinct nodes and relationships for a compact graph result.
  • search_schema: Find labels, relationship types, enums, descriptions, and property keys or descriptions using a case-insensitive regular expression.
  • get_node_schema: Retrieve a node label's properties, indexes, constraints, and connected relationship definitions.
  • get_relationship_schema: Inspect a relationship type for a specified pair of start and end node labels.
  • get_enum_schema: Retrieve an enum's name and values.
  • list_databases: Show databases available to the current session and identify the active database.
  • use_database: Switch the active database when authentication authorizes the requested name.

Schema tools are useful before generating Cypher because they let an agent discover the graph model rather than relying on assumed labels or properties.

Limitations and notes

With authentication disabled, the session has one database and use_database cannot switch to another. With authentication enabled, database access is limited by both the caller's JWT tenant claims and the server's tenant catalog. The experimental server exposes fewer tools than the default implementation and requires write access for its index-management behavior.

Reviews

No reviews yet — be the first to share how it worked for you.

Frequently Asked Questions about MCP Memgraph

memgraph/mcp-memgraph is an MCP server that connects language-model clients to Memgraph. Its main tools execute Cypher, search and inspect graph schemas, list accessible databases, and switch the active database when authorized. Query results preserve node, relationship, path, scalar, list, map, temporal, and point types.

Run the published Docker image with `docker pull memgraph/mcp-memgraph:latest` or start it directly with `docker run`. Use port 8000 for streamable HTTP, or set `MCP_TRANSPORT=stdio` and launch the container interactively for an MCP stdio client.

Set `MEMGRAPH_URL` to the instance's Bolt URL and provide `MEMGRAPH_USER`, `MEMGRAPH_PASSWORD`, and `MEMGRAPH_DATABASE` when needed. For example, pass `-e MEMGRAPH_URL=bolt://memgraph:7687` to the Docker command.

The default server blocks write operations by default. Set `MCP_READ_ONLY=false` to allow CREATE, MERGE, DELETE, SET, DROP, and REMOVE queries; this setting is ignored by the experimental server.

Yes. Cursor can use it through a standard MCP transport. Configure Cursor to launch the server in stdio mode or connect to its streamable HTTP endpoint.

Related MCP servers

Add a badge to your READMEShow it’s listed — live SVG, Markdown or HTML.

AllMCPs Directory Badge

Full Badge Customizer

Showcase your server listing on GitHub or your project documentation. Embed this dynamic SVG badge to highlight official listing status and live engagement.

Badge Style:
Live Dynamic SVG PreviewMCP Memgraph AllMCPs Directory Badge
Markdown (GitHub README)
[![AllMCPs](https://allmcps.com/api/badge/memgraph-mcp-memgraph?style=directory)](https://allmcps.com/mcp/memgraph-mcp-memgraph)
HTML Embed
<a href="https://allmcps.com/mcp/memgraph-mcp-memgraph"><img src="https://allmcps.com/api/badge/memgraph-mcp-memgraph?style=directory" alt="MCP Memgraph on AllMCPs" /></a>