LabscoMCP early access ↗
NeftedollarMCP SERVER

Apache AGE MCP

21 tools over an Apache AGE graph database: Cypher, vertex and edge upserts, N-hop traversal, semantic search and Graph RAG.

by Neftedollar ↗NoSQL, Graph & Key-Value StoresCommunity

LABSCO SUMMARY

Semantic seeds, then walk the graph from them.

graph_context is the tool that justifies putting a graph behind an assistant at all: vector search finds the entry points, and the N-hop expansion brings back what they connect to, which plain similarity search cannot do. Everything upserts by ident, so re-running an ingest updates rather than duplicates.

What it is

An MCP server for Apache AGE graph databases, written in F# on .NET 10. It lets an assistant read and write graph data, run Cypher directly, and — with an embedding endpoint configured — search by meaning and expand from the results.

What you get

  • Graph management — get_or_create_graph, list_graphs, drop_graphs
  • Vertices and edges — upsert_vertex and upsert_edge merge on ident rather than overwriting, upsert_graph batches both transactionally, drop_vertex removes a vertex and its edges, drop_edge removes one by ident
  • Query — cypher_query for reads, cypher_write for writes returning an affected count, search_vertices, search_edges, get_neighbors for 1–5 hop directional traversal, get_schema for labels and counts
  • Export and import — export_graph to JSON, import_graph back, creating the graph if needed
  • Visualization and search — generate_visualization renders an interactive vis.js graph, semantic_search does vector similarity over pgvector, graph_context combines semantic seeds with N-hop expansion for Graph RAG
  • OpenBrain bridge — sync_to_openbrain, import_from_openbrain

Requirements

Install with dotnet tool install --global AgeMcp and run age-mcp over stdio. AGE_CONNECTION_STRING is required — an Npgsql connection string pointing at PostgreSQL with Apache AGE. TENANT_ID defaults to default and prefixes every graph name as t_{TENANT_ID}__{graph_name}, which is how multi-tenancy works. semantic_search and graph_context additionally need EMBEDDING_API_URL pointing at an OpenAI-compatible embedding endpoint, with EMBEDDING_MODEL defaulting to text-embedding-3-small and EMBEDDING_DIMENSIONS to 384 — the dimensions must match the model's output. A Docker setup running PostgreSQL 17 with Apache AGE 1.6.0 and pgvector is included.

Setup effort

One command plus credentials — dotnet tool install --global AgeMcp, then supply credentials