GraphQL and Neo4j, for developers and agents.
A Neo4j graph, a GraphQL API generated from one schema file, a typed React app, and an MCP server so agents can use the same API. Small repos you can clone, run in Docker, and change.
docker compose up --builddocker compose -f compose.yaml -f compose.agents.yaml up --builddocker compose -f compose.yaml -f compose.federation.yaml up --builddocker compose -f compose.yaml -f compose.auth.yaml up --buildrun in the grandstack repo, with its sibling repos beside it · full quickstart
From zero to a running graph API.
You need Docker or Podman with compose, and Node 22 or later for the examples. Everything runs on your machine.
Clone the repos side by side
The umbrella repo holds the compose files; the others are built from its sibling folders.
mkdir grand-stack && cd grand-stack
git clone https://github.com/grand-stack/grandstack
git clone https://github.com/grand-stack/grandstack-server
git clone https://github.com/grand-stack/grandstack-webStart the stack
Neo4j, the GraphQL server (with 152 films and 464 people loaded) and the web app.
cd grandstack
cp .env.example .env
docker compose up --buildOpen the app
Search, filter, compare, and edit films and people at localhost:3000. The GraphQL endpoint and GraphiQL are at localhost:4000/graphql.
Query the API
Any GraphQL client works; curl will do.
curl -s localhost:4000/graphql -H 'content-type: application/json' \
-d '{"query":"{ moviesConnection { totalCount } }"}'Let an agent use it
Add the MCP server (read-only by default; needs the grandstack-agents repo beside the others) and connect Claude Code.
docker compose -f compose.yaml -f compose.agents.yaml up --build
claude mcp add --transport http grandstack http://localhost:4100/mcpThen go further
Add login, federate Wikipedia data into the graph, or build your own app on your own data.
Read the docs →Small repos, one per level.
Use one, or all. Each has its own docs, tests and agent guide.
grandstack
The umbrella: compose files for every setup, the overview, architecture, build-your-own-app tutorial and agent guide.
Docs →grandstack-server
The GraphQL server: Neo4j and a schema file in, a GraphQL API out. Seeding, mutations, federation switch.
Docs →grandstack-web
The React app: faceted search, compare, graph views, people pages and full create, edit and delete, with typed operations.
Docs →grandstack-auth
Opt-in auth: a gateway that validates tokens and enforces permissions, row-level rules, a Keycloak dev realm and a demo client.
Docs →grandstack-agents
How agents work with GraphQL: a small MCP server that runs GraphQL statements, a direct agent loop, auth example code and guardrails.
Docs →grandstack-federation
Federation: the server as a subgraph, a Wikipedia subgraph, and a gateway that serves one combined API.
Docs →One schema file, three kinds of client.
The web app, coding agents and agentic apps all use the same GraphQL API. Auth, agents and federation are opt-in layers.