Neo4j Graph Data Scientist Agent (MCP Server & Skills)
$git clone https://github.com/neo4j-contrib/gds-agentInstalls into the current project.
Install gds-agent by running `git clone https://github.com/neo4j-contrib/gds-agent`, then use it for the current task and follow its documentation at https://github.com/neo4j-contrib/gds-agent.
| 1 | # GDS Agent |
| 2 | |
| 3 | The GDS Agent let LLMs reason and do data science work on your graph data in Neo4j, by using two artifacts: |
| 4 | |
| 5 | - **Tools** — an MCP server exposing Neo4j Graph Data Science (GDS) algorithms: centrality, community detection, path finding, similarity, node embeddings, and ML pipelines. |
| 6 | - **Skills** — an agent skill (`neo4j-graph-data-scientist`) teaching the agent how and when to use those tools and best practices for doing data science on graphs. |
| 7 | |
| 8 | It works with any MCP-capable harness — Claude Code, Claude Desktop, claude.ai, OpenAI Codex, Cursor, VS Code/Copilot, Gemini CLI — and programmatically from agent frameworks. It uses the GDS plugin on self-managed Neo4j and GDS Aura Graph Analytics sessions on AuraDB, over STDIO or HTTP transport. |
| 9 | |
| 10 | Once set up, you can **ask any graph question about your Neo4j graph** and get answers. You can collaborate with the agent as a graph data scientist to solve complex tasks. |
| 11 | |
| 12 |  |
| 13 | |
| 14 | # Install |
| 15 | |
| 16 | |
| 17 | | Harness | Tools (MCP) | Skill | Guide | |
| 18 | | --------------------- | ------------------------------------------------------------------------------------------------------- | --------------------------------------------------- | ------------------------------------ | |
| 19 | | **Claude Code** | `/plugin marketplace add neo4j-contrib/gds-agent` → `/plugin install gds-agent@neo4j-gds` | bundled with the plugin | [setup](doc/setup/claude-code.md) | |
| 20 | | **Claude Desktop** | download the `.mcpb` from [releases](https://github.com/neo4j-contrib/gds-agent/releases), double-click | upload the skill zip in Settings → Skills | [setup](doc/setup/claude-desktop.md) | |
| 21 | | **OpenAI Codex** | `codex mcp add neo4j-gds -- uvx gds-agent` | `npx skills add neo4j-contrib/gds-agent -a codex` | [setup](doc/setup/codex.md) | |
| 22 | | **Cursor** | one-click badge | `npx skills add neo4j-contrib/gds-agent -a cursor` | [setup](doc/setup/cursor.md) | |
| 23 | | **VS Code / Copilot** | one-click badge or `.vscode/mcp.json` | `npx skills add neo4j-contrib/gds-agent -a copilot` | [setup](doc/setup/vscode.md) | |
| 24 | | **Gemini CLI** | `gemini extensions install https://github.com/neo4j-contrib/gds-agent` | bundled with the extension | [setup](doc/setup/gemini-cli.md) | |
| 25 | | **Your own agent** | any MCP client (stdio/HTTP) | inject SKILL.md as instructions | [setup](doc/setup/programmatic.md) | |
| 26 | |
| 27 | |
| 28 | Most local setups need [uv](https://docs.astral.sh/uv/getting-started/installation/) installed (the server runs via `uvx gds-agent` from PyPI). Generic MCP clients run `uvx gds-agent` over stdio with the environment variables below. |
| 29 | |
| 30 | ## Configuration reference |
| 31 | |
| 32 | Set as environment variables (or the credential form of your harness's installer): |
| 33 | |
| 34 | |
| 35 | | Variable | Required | Purpose | |
| 36 | | ------------------------------------------------------ | ------------ | --------------------------------------------------- | |
| 37 | | `NEO4J_URI` | yes | `neo4j://` or `neo4j+s://` connection URI | |
| 38 | | `NEO4J_USERNAME` / `NEO4J_PASSWORD` | yes | database credentials | |
| 39 | | `NEO4J_DATABASE` | no | database name (defaults to `neo4j`) | |
| 40 | | `AURA_API_CLIENT_ID` / `AURA_API_CLIENT_SECRET` | session mode | Aura API credentials for Aura Graph Analytics | |
| 41 | | `AURA_API_PROJECT_ID` | no | only if the API client can access multiple projects | |
| 42 | | `SESSION_MEMORY_GB` / `SESSION_TTL_HOURS` | no | session defaults (8 GB / 24 h) | |
| 43 | | `GDS_AGENT_MAX_RESULT_ROWS` / `_CHARS` / `_CELL_CHARS` | no | tool output limits (500 / 100000 / 200) | |
| 44 | |
| 45 | |
| 46 | By default the server uses STDIO transport for local MCP clients. For HTTP-native clients, run the server with streamable HTTP: |
| 47 | |
| 48 | ```bash |
| 49 | gds-agent --transport http --host 127.0.0.1 --port 8000 --path /mcp |
| 50 | ``` |
| 51 | |
| 52 | The equivalent environment variables are `GDS_AGENT_TRANSPORT`, `GDS_AGENT_HOST`, `GDS_AGENT_PORT`, and `GDS_AGENT_PATH`. The Neo4j MCP-style `NEO4J_TRANSPORT` and `NEO4J_MCP_SERVER_*` names are also supported. |
| 53 | |
| 54 | ## GDS Aura Graph Analytics (sessions) |
| 55 | |
| 56 | The server detect |