Built-in MCP server for live graph intelligence

JetGraph mounts a Streamable HTTP MCP server directly at /mcp on port 8080 (plus a standalone stdio/HTTP binary). AI agents discover your domain semantics, inspect behavior over time, and turn insights into live segments — without raw SQL or custom glue.

What agents can do with JetGraph

Most enterprise data sits in row-level tables built for storage, not reasoning. When an AI agent is pointed at raw SQL tables, it spends tokens guessing joins and pulls back huge row sets. JetGraph sits in front as an agent-ready graph layer:

  • Understand the domain before querying: get_schema returns every node and edge type with human-written description and business_meaning fields, property types, and time-window settings.
  • Read compact behavior instead of raw logs: get_edge_state and get_histogram return pre-aggregated counts, approximate sums, recency, 8-bin distributions, and 21-tick activity counts.
  • Explore relationships and lookalikes: get_neighbors, get_neighbor_count, get_last_neighbor, and find_similar traverse live connections without complex join syntax.
  • Run ad-hoc patterns safely: cypher_read accepts one read-only Cypher statement with automatic row caps.
  • Act on findings: create_signal and create_segment promote investigative definitions into continuous rules inside segment-evaluator.

14 tools in five groups

GroupToolsWhat the agent gets
Understand get_schema, list_signals, list_segments Live node/edge types, business_meaning, feature slots, and existing evaluator rules.
Explore get_neighbors, get_neighbor_count, get_last_neighbor, find_similar Paginated neighbors (up to 100), cardinality counts, latest outgoing target, and weighted Jaccard lookalikes (up to 25).
Behavior over time get_edge_state, get_histogram, get_feature_vector Pair tx_count / approx_sum / last_seen / up to 4 activity windows, hourly or daily histograms, and stored 32-slot node vectors.
Ask anything cypher_read Multi-hop paths, property filters, and single-block Top-K rankings inside a read-only guard.
Act create_signal, create_segment, list_segment_members Author or inspect live signals and segments in segment-evaluator and page linked members.

Worked example: spotting cooling customers and building a live segment

Suppose a marketer asks an agent connected to JetGraph: “Find customers whose weekly card spend is dropping, and create a live segment we can track.”

  1. Understand the schema: The agent calls get_schema() and maps “card spend” to Customer -[:HOLDS]-> Card -[:SPENT_AT]-> Merchant using each type's business_meaning.
  2. Check existing definitions: It calls list_signals() and list_segments() so it reuses existing names instead of overwriting them.
  3. Sample behavior over time: It runs cypher_read on a sample of customers and compares get_histogram(window_hours: 24) against get_histogram(window_days: 7) (or checks recency with get_last_neighbor) to verify thresholds.
  4. Create signal and segment: It calls create_signal with a read-only $node query (e.g. value_kind: "epoch_secs" for days since last spend, or CALL graph.histogram(...) for trailing volume), then calls create_segment to combine those signals with all, any, or weighted logic.
  5. Inspect members: Once segment-evaluator processes nodes, list_segment_members returns matching customers with confidence scores and timestamps.

Guardrails built into the server

  • Read-only Cypher enforcement: cypher_read rejects write keywords (CREATE, MERGE, DELETE, DETACH, SET, REMOVE, DROP, FOREACH, LOAD), blocks non-graph.* procedures, and rejects multi-statement queries.
  • Hard output caps: cypher_read rejects LIMIT > 100 (and parameterized LIMIT $k) and appends LIMIT 100 when missing; get_neighbors and list_segment_members cap at 100; find_similar caps k at 25; get_edge_state allows at most 4 activity windows.
  • Built-in investigate prompt: Gives agents the exact rules for reading compact edges (count(r) vs sum(r.tx_count)), directionality, and single-block Top-K queries so they avoid memory-heavy plans.

How to connect

Point Cursor, Claude, or any Streamable HTTP MCP client at http://localhost:8080/mcp (no extra process needed), or run the standalone jetgraph-mcp binary for stdio or dedicated-port HTTP. Full tool schemas, arguments, and environment variables live in the MCP Server reference. For production network and host-allowlist guidance, read Security.

Connect your first agent in minutes

Start the Quick Start Docker stack and point your MCP client at port 8080.