About Marrow
Marrow is a private, source-backed knowledge graph about your professional work. Interviews, papers, writing, talks, dossiers, PDFs, and URLs go in. AI tools that draft, summarize, or speak on your behalf can pull from it as a tool, with provenance and confidence on every record.
AI tools that act on a person's behalf need more than prompt stuffing or generic memory. They need verified, structured, typed records about who that person is, what they have done, what evidence supports each claim, and how they communicate. Marrow handles ingest, distillation, embeddings, provenance, and graph storage so writing assistants, portfolio updaters, profile generators, and personal agents can read deterministic, cited records instead of guessing from raw text.
Why Marrow
Generic memory APIs return text blobs that agents have to interpret. Bullet stores return strings without provenance. Vector databases return chunks without typing or graph context.
Marrow is different. It is a single-person knowledge graph made of typed nodes (notes, claims, positions, projects, generic entities, style records) with typed edges, retrieval facets, embeddings, and full source traceability back to the artefact each fact came from.
Prompt stuffing produces:
"Here's everything Avery ever wrote. Good luck deciding what's true, current, or relevant."
Marrow delivers an evidence-backed query response like:
[
{
"rank": 1,
"nodeType": "claim",
"title": "Led cross-functional delivery of the Northstar onboarding rollout.",
"snippet": "Avery drove the onboarding rollout into Northstar production launch pipelines …",
"confidenceScore": 0.92,
"sourceRunId": "f1a3…",
"evidenceNotes": [
{ "id": "9b2c…", "excerpt": "On the Northstar team, I drove the rollout of …", "relationship": "extracted-from" }
]
}
]
Key capabilities
- Evidence-backed query: Natural-language input returns ranked records plus the source-note excerpts each record was extracted from.
- Voice and style profile: Typed style observations, preferences, vocabulary rules, and the evidence notes that support them, ready for downstream writing agents.
- Source-run evidence packs: Markdown or JSON evidence packs for any past ingest run, with cited excerpts for demos and prompts.
- Graph neighborhood lookup: Local subgraph around any node (claims, notes, projects, entities) with typed edges.
- URL and file ingest: Drop in a URL, PDF, or Markdown source; Marrow distills it into validated graph rows with embeddings.
- Reviewed correction write-back: AI tools propose corrections; Marrow plans, then writes a
supersedesedge after--yes. - Per-account isolation: Every API key is scoped to one user's graph; admin endpoints provision, export, and delete accounts cleanly.
Tool selection cheat sheet
| I want to... | Use | Endpoint |
|---|---|---|
| Ask a question and get ranked records with source-note evidence | query |
POST /v1/query |
| Read the writing voice and style rules backed by source notes | style_profile |
POST /v1/style/profile |
| List past ingest runs | list_source_runs |
GET /v1/source-runs?limit=20 |
| Inspect a single source run (counts, predicates, warnings) | inspect_source_run |
GET /v1/source-runs/{id}/inspect |
| Generate a cited evidence pack for a source run | source_run_evidence |
GET /v1/source-runs/{id}/evidence |
| Walk the typed graph around a known node | graph_neighbors |
GET /v1/nodes/{type}/{id}/neighbors |
| Plan or queue ingest from a public URL | ingest_url |
POST /v1/ingest/url |
| Plan or queue ingest from an uploaded PDF / Markdown / text file | ingest_file |
POST /v1/ingest/file |
| Propose a reviewed correction that supersedes an existing record | feedback_correction |
POST /v1/feedback/corrections |
| Manage the API keys for the authenticated account | account_api_keys |
GET / POST / DELETE /v1/account/api-keys[/…] |
All query, style, and evidence routes accept natural-language input. Ingest endpoints are dry-run by default; live writes require an explicit flag plus datedAt.
What Marrow is not
- Not a resume builder. Resumes are outputs. Marrow keeps the underlying source context reusable across every downstream app.
- Not generic chat memory. Every record keeps source, confidence, visibility, and correction history. Nothing is silently mutated.
- Not a public lookup database. Each account is one person's private graph; reads are gated by an API key scoped to that account. Pair Marrow with public knowledge tools as needed.
Get started
- Quickstart: Redeem an invite, set your API key, and run your first ingest plus evidence-backed query.
- API Reference: Endpoint signatures, request and response schemas, scopes, and rate-limit headers.
- Marrow CLI: Local CLI for direct writes, ingest, semantic search, style profile, graph inspection, and proof runs.