# Neo4J — how to use (mcp.ai)

Connect your Neo4J account and use 21 tools for developer tools straight from your AI agent. Connect with your own API key. Graph database platform for connected data and real-time analytics.

## Option A — via MCP (recommended)
Remote MCP endpoint (HTTP, streamable): `https://api.mcp.ai/p_neo4j?ms=1787293500000`
Add it as a custom/remote MCP connector in your client (Claude, Cursor, VS Code…), then authenticate when prompted. Once connected, ask the agent to use the server's tools (e.g. `neo4j_aggregate_directors`).

## Option B — via direct REST API
Base URL: `https://api.mcp.ai/api/neo4j`
Auth: `Authorization: Bearer sk_live_…` — create a workspace API key at https://mcp.ai/settings/api-keys
Discover endpoints: `GET https://api.mcp.ai/api/neo4j/_endpoints`

### Endpoints
- `POST https://api.mcp.ai/api/neo4j/aggregate/directors` — Executes a directorsAggregate GraphQL query to count directors in Neo4j. Use when you need to get the total count of director records in the database. The GraphQL query returns the count of all direct
  - body: { instance_id: string }
- `POST https://api.mcp.ai/api/neo4j/create/instance/beta` — Creates a new Neo4j Aura instance with the specified configuration. Use this action when you need to provision a new Neo4j Aura database instance. The operation is asynchronous - the API returns 202 A
  - body: { name: string, type: string, memory: string, region: string, storage?: string, version: string, tenant_id: string, cloud_provider: string, vector_optimized?: boolean, source_instance_id?: string, source_snapshot_id?: string, graph_analytics_plugin?: boolean, customer_managed_key_id?: string }
- `POST https://api.mcp.ai/api/neo4j/create/snapshot` — Create an on-demand snapshot of a Neo4j Aura instance. Triggers asynchronous backup creation and returns a snapshot ID that can be used to monitor progress. Use this action when you need to manually c
  - body: { instance_id: string }
- `POST https://api.mcp.ai/api/neo4j/estimate/gds/session/size` — Estimate the size of a new GDS (Graph Data Science) session based on node/relationship counts and algorithm categories. Use this action when you need to determine the appropriate GDS session size befo
  - body: { node_count: integer, node_label_count?: integer, relationship_count: integer, node_property_count?: integer, algorithm_categories?: string[], relationship_property_count?: integer }
- `POST https://api.mcp.ai/api/neo4j/get/instance/beta` — Retrieves details for a specific Neo4j Aura instance using its unique instance ID. Returns comprehensive information including instance name, status, cloud provider, region, memory allocation, connect
  - body: { instance_id: string }
- `POST https://api.mcp.ai/api/neo4j/get/organization/user` — Retrieves details of a specific user in a Neo4j Aura organization. Returns user information including email, organization roles, MFA status, last activity, and project-level access permissions. Use th
  - body: { user_id: string, organization_id: string }
- `POST https://api.mcp.ai/api/neo4j/get/project` — Retrieve details of a specific Neo4j Aura project (tenant). Returns project information including its ID, name, and available instance configurations with regions, types, memory, storage options, and 
  - body: { tenant_id: string }
- `POST https://api.mcp.ai/api/neo4j/get/project/beta` — Retrieve details of a specific Neo4j Aura project (tenant) using the v1beta5 API. Returns project information including its ID, name, and available instance configurations with regions, types, memory,
  - body: { tenant_id: string }
- `POST https://api.mcp.ai/api/neo4j/get/snapshot` — Retrieves details of a specific snapshot for a Neo4j Aura instance. Returns the snapshot profile, current status, and creation timestamp. Use this action when you need to check the status or details o
  - body: { instance_id: string, snapshot_id: string }
- `POST https://api.mcp.ai/api/neo4j/list/agents` — List all agents belonging to a specific Neo4j Aura project. Returns agent information including ID, name, description, database ID, privacy settings, endpoint links, MCP status, and attached tools. Us
  - body: { project_id: string, organization_id: string }
- `POST https://api.mcp.ai/api/neo4j/list/gds/sessions` — List all Graph Data Science (GDS) sessions for the authenticated Neo4j Aura account. Returns a summary of each GDS session including status, memory allocation, host information, and expiry date. Use o
  - body: { tenant_id?: string, instance_id?: string, organization_id?: string }
- `POST https://api.mcp.ai/api/neo4j/list/instances/beta` — Returns a list of Neo4j Aura instances. Use when you need to retrieve all available Neo4j Aura instances in your account, optionally filtered by tenant.
  - body: { tenant_id?: string }
- `POST https://api.mcp.ai/api/neo4j/list/ip/filters` — Returns a list of IP filters configured for a Neo4j Aura organization. Use this action when you need to retrieve all IP filters to check which CIDR blocks are allowed or blocked, or to determine which
  - body: { organization_id: string }
- `POST https://api.mcp.ai/api/neo4j/list/project/users` — List all users in a specific Neo4j Aura project. Returns user information including email, user ID, and project roles for each user. Use this action when you need to retrieve all users associated with
  - body: { project_id: string, organization_id: string }
- `POST https://api.mcp.ai/api/neo4j/list/projects` — List all Aura projects (tenants) available to the authenticated user. Returns a summary of each project including its unique ID and name. Use this action when you need to retrieve all Aura projects to
- `POST https://api.mcp.ai/api/neo4j/list/snapshots` — Lists available snapshots for a Neo4j Aura instance. Returns both scheduled and ad-hoc snapshots with their status and creation timestamps. Use when you need to retrieve information about available da
  - body: { date?: string, instance_id: string }
- `POST https://api.mcp.ai/api/neo4j/pause/instance/beta` — Pauses a Neo4j Aura instance. Use when you need to temporarily stop an instance to reduce costs or perform maintenance. The instance can be resumed later using the ResumeInstance action. This action i
  - body: { instance_id: string }
- `POST https://api.mcp.ai/api/neo4j/restore/snapshot` — Restore a Neo4j Aura instance from a snapshot. Replaces all current data with the snapshot data. This action is irreversible — all data since the snapshot was taken will be permanently lost. Use this 
  - body: { instance_id: string, snapshot_id: string }
- `POST https://api.mcp.ai/api/neo4j/update/instance` — Updates a Neo4j Aura instance configuration. Allows modifying instance properties such as name, memory allocation, storage size, vector optimization, and graph analytics plugin. Use this action when y
  - body: { name?: string, memory?: string, storage?: string, instance_id: string, vector_optimized?: boolean, graph_analytics_plugin?: boolean }
- `POST https://api.mcp.ai/api/neo4j/update/instance/beta` — Edits the configuration of a Neo4j Aura instance. Allows updating the instance name, memory allocation, storage size, and plugin configurations. Use this action when you need to modify an existing Neo
  - body: { name?: string, memory?: string, storage?: string, instance_id: string, vector_optimized?: boolean, graph_analytics_plugin?: boolean }
- `POST https://api.mcp.ai/api/neo4j/update/ip/filter` — Updates an existing IP filter for a Neo4j Aura organization. Use this action when you need to modify an existing IP filter's settings, such as updating its name, description, allow list entries, or en
  - body: { name?: string, allow_list?: object[], description?: string, ip_filter_id: string, organization_id: string, filtering_disabled?: boolean }

## Example prompts
- "What can I do in Neo4J?"
- "Show me a summary of my Neo4J account"

## More
- Page: https://mcp.ai/neo4j
- Agent spec (llms.txt): https://mcp.ai/neo4j/llms.txt
- Postman collection: https://mcp.ai/neo4j/postman.json
