streamable-httpMITupdated 8d ago
The governed memory runtime for agents. Signed checkpoints, provable erasure, portable memory โ a drop-in wrapper for your LangGraph checkpointer.
What can you do with GRAFOMEM CGR Read?
GRAFOMEM
The governed memory runtime for agents. Signed checkpoints, provable erasure, portable memory โ a drop-in wrapper for your LangGraph checkpointer.
pip install grafomem langgraph-checkpoint-grafomem langgraph
from typing import TypedDict
from cryptography.hazmat.primitives.asymmetric import ed25519
from langgraph.graph import StateGraph, START, END
from langgraph.checkpoint.memory import MemorySaver
from grafomem_checkpoint import GrafomemSerializer, GrafomemCheckpointSaver
# โโ the entire GRAFOMEM integration: an Ed25519 signing key, then wrap ANY
# LangGraph checkpointer. Pass it to compile() as you already do. โโ
priv = ed25519.Ed25519PrivateKey.generate()
saver = GrafomemCheckpointSaver(MemorySaver(serde=GrafomemSerializer(private_key=priv)))
# โโ your ordinary LangGraph agent โโ
class State(TypedDict):
messages: list
def agent(state: State) -> State:
return {"messages": state["messages"] + ["hello from the agent"]}
b = StateGraph(State); b.add_node("agent", agent)
b.add_edge(START, "agent"); b.add_edge("agent", END)
app = b.compile(checkpointer=saver)
cfg = {"configurable": {"thread_id": "user-42"}}
app.invoke({"messages": []}, cfg)
# signed, content-addressed checkpoint
tup = saver.get_tuple(cfg)
print("signed checkpoint hash:", tup.metadata["grafomem_content_hash"])
# cryptographic erasure receipt โ proof the erasure transition occurred
saver.delete_thread("user-42")
print("erasure receipt:", saver.last_receipt("user-42"))
signed checkpoint hash: ecd0e28938738cc55b3c888f7449503fd586723a699e1d326d74cc0f154874f7
erasure receipt: LangGraphErasureReceipt(pre_state_hash='d9a16ef8โฆ', post_state_hash='0e5751c0โฆ',
scope='user-42', key_id='grafomem_checkpoint', timestamp='2026-โฆ', signature=b'โฆ')
(hashes and signature vary per run โ each run generates a fresh key)
What just happened: every state transition your agent made was captured as a signed, content-addressed checkpoint โ and when you deleted, you got a cryptographic receipt proving the erasure transition occurred. Memory your agents can move, merge, and prove they erased.
Why
Agent memory today is a JSON blob you have to trust. GRAFOMEM makes it evidence: every write signed, every fact content-addressed, every deletion receipted. When someone asks "what did your agent know, and when?" โ you answer with proofs, not logs.
Two tiers, one system
- Working memory โ fast, bounded context state for the agent loop.
- Durable facts (GMP) โ governed, bi-temporal, signed facts with provenance. The GRAFOMEM Memory Protocol is an open spec with an executable conformance suite: a backend's capability counts as supported when it passes the test, not when the vendor says so.
Integrations
- LangGraph โ the quickstart above. โ docs
- Claude / MCP โ expose governed memory as MCP tools. โ docs
- Reference server โ a REST + MCP server (
grafomem[server]extra); a hosted instance runs live at api.grafomem.com. โ self-hosting docs
The bigger picture: verify the agent, not just the answer
Governed memory is the evidence substrate for something larger: Capability-Grounded Reputation (CGR) โ reputation an agent earns per domain from judgments that later resolve against real outcomes, with peer reviews weighted by the reviewer's own demonstrated calibration. Score and evidence mass travel together; fresh identities don't arrive with influence. The scoring model is documented and independently reproducible โ cgr-bench reproduces its properties from source: cold-start and Sybil-resistance behavior asserted in CI, an early-warning signal of โ0.997 against real credit-default outcomes at 25% resolution, and reviewer calibration that beats a naive equal-weight crowd by ~14% out-of-sample on ~1,900 real human forecasters (held-out reliability recovery r โ 0.5โ0.65 across split designs). Reputation as evidence, not assertion. โ CGR overview
License
Runtime: MIT. The GMP spec is open. โ LICENSE
Docs: docs.grafomem.com ยท Hosted: cloud.grafomem.com (free tier: 10,000 governed decisions / mo) ยท Issues & discussions welcome.
Install
Add GRAFOMEM CGR Read to your client. Pick the one you use.
claude mcp add --transport http grafomem-cgr-read https://mcp.grafomem.com/mcpcodex mcp add grafomem-cgr-read --url https://mcp.grafomem.com/mcp{
"mcpServers": {
"grafomem-cgr-read": {
"url": "https://mcp.grafomem.com/mcp"
}
}
}Add to `~/.cursor/mcp.json`, or `.cursor/mcp.json` for a single project.
{
"servers": {
"grafomem-cgr-read": {
"type": "http",
"url": "https://mcp.grafomem.com/mcp"
}
}
}Add to `.vscode/mcp.json` in your workspace.
{
"mcpServers": {
"grafomem-cgr-read": {
"url": "https://mcp.grafomem.com/mcp"
}
}
}Add to `claude_desktop_config.json`, then restart Claude Desktop.
{
"mcpServers": {
"grafomem-cgr-read": {
"serverUrl": "https://mcp.grafomem.com/mcp"
}
}
}Add to `~/.codeium/windsurf/mcp_config.json`.
Score
39 / 100
Incomplete
- Documentation25/25
- Maintenance19/25
- Trust16/20
- Capability0/15
- Install experience12/15
- Documents what it does and how to connect
- Has a resolvable package or endpoint
- Exposes at least one tool, prompt or resource
- README has substantive content
- Includes a code example
- Documents its configuration
- Mentions credentials or security posture
- Last commit 0 days ago
- Has a release history
- Repository is not archived
- Licensed MIT
- Namespace verified in the official MCP registry
- Claimed by its owner
- Published under an organisation
- 0 tool(s) documented
- Provides prompt templates
- Provides resources
- 6 documented install method(s)
- Published to a package registry
- Offers a hosted endpoint โ no local install
Version history
| Versions | Published |
|---|---|
| 0.1.0Latest | Aug 25, 2026 |