Bots St

bots.st/purple8-ai-native-application-backend

Purple8 — AI-Native Application Backend

Manage knowledge graph nodes and RAG retrieval

1857 ms

answered our call

State
Answered
Protocol
MCP 2025-06-18
Tools listed
28
Answered
4 of the last 4 calls

How to reach it

  • MCP, HTTPhttps://purple8-graph-sandbox.fly.dev/mcp?profile=starterNeeds header X-API-Key
  • MCP, SSEhttps://purple8-graph-sandbox.fly.dev/mcp/sse?profile=starterNeeds header X-API-Key

What it can do

ToolWhat it says it does
data.commitCommit a reviewed extraction or your own extractor's output without invoking DocIntel. Uses the complete POST /ingest/commit contract: entities, relationships, Markdown, spans, tables/pages, context, file_ref or inline file_bytes_b64 and ingestion options. Existing entities are linked, not edited…
data.ingest_fileSend a document file (PDF, DOCX, PPTX, XLSX, HTML, IFC, CSV, …) to Purple8 DocIntel for parsing, entity extraction, and graph ingestion. The document is fetched by DocIntel from a public URL, not a local path. The complete extraction is committed only when finished successfully. auto_commit=false…
data.ingest_textExtract entities and relationships from raw text and write them into the graph. Calls preview first, then commits the complete extraction on success. auto_commit=false returns a review-only preview. Pending jobs return job_id for resumption. Original bytes are not stored automatically; supply…
graph.add_edgeCreate a directed edge (relationship) between two existing nodes. This is the primary agentic handoff mechanism — agents write their output as edges (e.g. DERIVED_FROM, RISK_ASSESSMENT, EXTRACTED_FROM) so downstream agents can discover work by querying graph state rather than passing messages…
graph.add_nodeInsert a new node into the graph (accepts `type`, `label`, or `node_type`). Requires editor role.
graph.assert_statementIdempotently assert one native RDF quad with exact lexical terms, explicit blank-node scope and optional graph name. Uses existing node/edge create and read permissions, record policies and API-key label restrictions. No bulk import or caller-supplied metadata.
graph.countsReturn the total number of nodes in the graph, optionally filtered by label. A cheap situational-awareness call an agent can make before deciding how to query or ingest.
graph.get_nodeRetrieve a node and all its stored properties by ID.
graph.hybrid_searchCombine vector similarity with graph traversal for highest-recall retrieval. Best when graph structure matters.
graph.labelsList every node type (label) in the graph with how many nodes carry it, largest first. Cheap — O(types), not O(nodes). Call this first to learn what the graph contains (e.g. Person, Account, Invoice) before querying or filtering by label.
graph.queryExecute a Cypher query against the Purple8 knowledge graph and return matching records. Use for nodes, edges, paths, or aggregated data.
graph.semantic_queryRead-only indexed RDF/LPG pattern query with policy-filtered evidence. Use tagged rdf, lpg and lpg_edge patterns. Returns unified bindings and evidence or, with output_format=nquads, a JSON envelope containing selected asserted N-Quads and selection metadata. Raw work stats are withheld…
graph.traverseWalk the graph from a starting node following edges up to a given depth.
graph.update_nodeUpdate properties or labels on an existing node. Properties are merged with existing values (patch semantics — only the keys you supply are changed). Labels replace the full label set when provided. Use this to advance agent relay state, e.g. setting {"status": "enriched", "handoff_to": null}…
graph.vector_searchFind the k nearest nodes to a natural-language query using the HNSW vector index.
journey.advanceAdvance a journey instance to the next stage. Actor and notes are written to the audit trail as an ADVANCED_TO edge. Requires editor role.
journey.defineDefine a new journey type (workflow template) with ordered stages, owner systems, and per-stage SLA policies. Once defined, instances can be started with journey.start. Call this first when building any new workflow — the agent can define the entire process in one call. Use overwrite=true to…
journey.listList journey instances with optional filters. Use this to discover what is in flight, find instances for a specific entity, or check all instances of a given type. Also returns all defined journey types when called with no arguments. Essential for any agent monitoring or orchestrating…
journey.list_hitlList pending Human-In-The-Loop (HITL) tasks — decisions that require a human (or agent acting as human proxy) to approve, reject, or escalate before the journey can continue. Returns task ID, title, assigned role, description, and the stage the journey is waiting on. An agent can use this to…
journey.resolve_hitlResolve a Human-In-The-Loop (HITL) task — approve, reject, or escalate it. On approval the journey automatically advances to the next stage if advance_to_stage is set. The decision is written to the immutable graph audit trail with the actor and timestamp. An AI agent acting as a human proxy…
journey.startCreate a new Journey Engine instance for an entity and move it to the first stage. All transitions are recorded as immutable graph edges. Requires editor role.
journey.statusReturn the full state and audit trail for a journey instance — every stage transition, AI recommendation, and HITL decision.
rag.hybrid_queryHybrid Graph-Vector RAG — fuses vector similarity AND graph structural signals at every stage: dual-seed fusion (Weighted RRF over vector rank + degree centrality), vector-guided BFS, and semantic path scoring. Highest accuracy: MRR 0.85, multi-hop 0.91. ~5x slower (p50 ~240 ms). Recommended as…
rag.profile_collectionAnalyse the graph topology and return recommended RAG retrieval settings. Profiles node count, edge density, degree distribution, edge-type distribution, and embedding coverage, then derives concrete values for fusion_alpha, max_hops, seed_k, vector_weight, k, and mode. Call this before tuning…
rag.queryFlat Vector RAG — retrieves the most relevant graph nodes by pure vector similarity (HNSW + RRF fusion + keyword fallback), then calls the configured LLM to generate a grounded answer. Fastest of the three RAG modes (p50 ~45 ms, MRR 0.64); best for single-hop factual questions. Use…
schema.define_edge_typeDefine a new edge (relationship) type. Constrain which node types may be the source/target, declare edge properties, and set cardinality (one_to_one | one_to_many | many_to_one | many_to_many). Fails 409 if the type already exists.
schema.define_node_typeDefine a new node type — the primitive that lets an agent build the data model itself. The type_name becomes the canonical label for nodes of this type. Set app_id to make the type a per-app IAM boundary (only matching API keys may touch its nodes). Declare properties with per-field type /…
schema.validateValidate the tenant's live graph data against the defined schema. Reports missing required properties, type/enum violations, edge source/target-type violations, and orphan labels (labels present in the graph but undefined in the schema). Returns valid=true with empty violation lists when the…

In its maker's words

Complete backend for AI-built apps: data, auth, workflows, SLAs, HITL & RAG in 176 MCP tools.

Website
www.purple8.ai/products/hyper-graph
Publisher
www.purple8.ai (2 listings in the registry)
Listed from
the official MCP Registry as ai.purple8.www/purple8-hyper-graph
Version
0.72.1, updated 6 Nov 2026
Kinds of work
AI models and agent tools, Data and databases, Security and trust

The domain it lives on

purple8.ai
registered 12 Dec 2025 (11 months ago), at NameCheap, Inc., its home page is a working site

From our own crawl of domain names: registry records and the home page as our crawler last saw it.

Every call we made

WhenWhat happenedTime
Answered1857 ms
Answered1129 ms
Answered931 ms
Answered931 ms

Next door

Is this your bot? Claim its address to add a verified badge and keep the listing current.