ChainMemory MCP
ChainMemory MCP is a cross-model memory server that lets AI agents store, retrieve, verify, and manage encrypted, cryptographically verifiable memories and project states across platforms.
Memory Operations: Write (
chainmemory_remember), recall (chainmemory_recall), semantic search (search_memoriesusing cosine similarity, blended with recency and importance), read full memory with integrity verification (get_memory), filter/list (list_memories_filtered), update tags (update_memory_tags), archive/unarchive, and permanently seal (chainmemory_seal, requires blockchain key).Verification & Auditing: Generate shareable proofs (
get_memory_proof,verify_project_state) without revealing content; run forensic audits (free dry-run) on individual memories or project states (audit_memory,audit_state).Project Brain: Create and update a structured, versioned, verifiable project state (
get_project_state,update_project_state) with decisions, risks, metrics, environment, and active role contracts.Verifiable Role Contracts: Discover, read, assume, and release audited roles (
list_role_contracts,get_role_contract,assume_role,release_role) with human-signed contracts, tracking session history.Project Management: List, create, and delete projects; use built-in templates (
list_project_templates).Cross-Platform Context: Retrieve portable context (
get_my_context) across AI platforms (Claude, ChatGPT, Gemini, etc.) with cryptographic verification.Selective Inject: Inject 1–50 specific memories into chat context (paid, optimistic response) with balance check, quoting, and history (
get_inject_balance,quote_inject,inject_memories,get_inject_history).Identity & Stats: Register AI identities, view profiles and trust scores, get network statistics (
chainmemory_register,chainmemory_profile,chainmemory_stats).
Enables portable, cryptographically verifiable memory that can be used across different AI models including Perplexity.
Click on "Install Server".
Wait a few minutes for the server to deploy. Once ready, it will show a "Started" state.
In the chat, type
@followed by the MCP server name and your instructions, e.g., "@ChainMemory MCPSave this decision: switching to Postgres for the next sprint"
That's it! The server will respond to your query, and you can continue using it as needed.
Here is a step-by-step guide with screenshots.
ChainMemory MCP Server
Cross-model, cryptographically verifiable memory for Claude, ChatGPT, and any AI agent — own your AI's memory and carry it across every model.
ChainMemory MCP exposes the ChainMemory protocol to any AI agent that speaks the Model Context Protocol. Memories are encrypted at rest (AES-256-GCM, per-user), verifiable with Merkle proofs, and portable across ChatGPT, Claude, Gemini, Perplexity, and any other LLM. No vendor lock-in, ever.
What's new in v2.5.6
Three defects that made tools report confidently wrong things. No new tools.
list_project_templatesnever listed anything. It readtemplates/template_idfrom a response that returnsdefaults/project_id, so it always answered "No templates available" — which meant nobody could learn the id thatadd_project_from_templateneeds. The whole template flow was unreachable.chainmemory_profilegot five of eight fields wrong. It readwallet,memory_count,trust_score,registration_blockandsealed; the API returnsowner,chain_memories/local_memories,reputationandactive. Every profile came back with an empty wallet, zero memories,?reputation andSealed: no, regardless of the real state. It also had no handling for an API key with no registered identity, printingAI Profile #undefined.update_project_statehid the reason when every op was rejected. Rejections were only rendered on the success path, but rejecting all ops leaves the state unchanged and takes the other branch — so the reply saidRejected: 3and nothing else. The only way to find out why was to guess again and pay the fee again.
Related MCP server: LogicMem MCP Server
What's new in v2.5.5
audit_memoryandaudit_state— the two forensic audit endpoints, now reachable from any MCP client. Both acceptdry_run: true, which returns the identical result without charging: an audit you can run as often as you like, and pay for only when you need the receipt on record.audit_statecosts 5 AIC in its paid form, so the tools default to the dry run.Both endpoints were fixed server-side first: they used to charge before validating, so a mistyped id or project name cost the fee and returned 404.
What's new in v2.5.4
Search and full reads
search_memories— semantic search over your memories (cosine similarity over cached embeddings, blended with recency and importance), returning the full text of each match. Previous versions exposed no search at allget_memory— read one memory in full, decrypted from chain, with an integrity check: the server recomputes the event hash from the plaintext and compares it against the hash anchored on-chainchainmemory_recallandlist_memories_filterednow state plainly that they return 80-character previews, and point toget_memory/search_memoriesfor the full text
Verification — free, and the point of the product
verify_project_state— public, unauthenticated proof of a Project Brain: every anchored version with itsstate_hashand on-chain coordinates, plus how to check them yourself in theProjectStateAnchorcontract. No content is exposedget_memory_proof— the shareable anchoring proof of a single memory:event_hashplus its on-chain coordinates. A third party verifies it without your API key, and the content is never revealed
Cost control
quote_inject— price an inject before paying: which ids exist, which don't, tokens, exact cost with its burn/treasury split, and whether your balance covers itCorrect inject fee — the client now takes the price and the remaining-injects count from the server instead of recomputing them. Previous versions divided by the pre-2026-06-30 price of 0.001 AIC and promised 100× more injects than the balance actually allowed
Roles and hardening
list_role_contracts— discover a project's roles (id, version, status) before reading a contract or assuming a role. Role ids are not guessable; this removes the failed-call round tripinclude_rolesonget_project_state— set tofalseto get the state without the full text of every signed role contractInput hardening — every user-supplied value that reaches a URL is now validated or escaped. Numeric path parameters must be integers, string path parameters are percent-encoded, and query limits are clamped. Invalid input fails locally with a clear message instead of going out to the network
CHAINMEMORY_API_KEYdeclared in the MCP manifest — the only mandatory variable was missing fromserver.json, so registries and installers never prompted for it
What's new in v2.5
Project Brain —
get_project_stateconsolidates your atomic memories into a structured, versioned, verifiable project state (decisions, risks, constraints, metrics, and environment: where and how you work), and delivers active role contracts with it in a single callVerifiable Role Contracts (VRC) — human-signed role contracts for AI agents:
get_role_contract(read the contract),assume_role(open an audited Role Session),release_role(close with a summary)34 tools total — memory ops, semantic search, verification proofs, projects, Project Brain, role contracts with audited sessions, selective inject
Quick start
1. Get an API key
Visit https://faucet.chainmemory.ai. You receive an API key (aic_...) and a starter balance of AIC. ChainMemory collects no personal data — your key is your identity.
2. Add to Claude Desktop
Edit your Claude Desktop config (~/Library/Application Support/Claude/claude_desktop_config.json on macOS, %APPDATA%\Claude\claude_desktop_config.json on Windows):
{
"mcpServers": {
"chainmemory": {
"command": "npx",
"args": ["-y", "chainmemory-mcp"],
"env": {
"CHAINMEMORY_API_KEY": "aic_your_key_here"
}
}
}
}Restart Claude Desktop. The 34 tools are now available.
3. Try it
"What do you remember about my projects?" →
chainmemory_recall"Save this decision: switching to Postgres for the next sprint" →
chainmemory_remember"Load the project state for my-app" →
get_project_state(Brain + active role contracts)"Which roles exist for my-app?" →
list_role_contracts"Assume the architect role for my-app" →
assume_role(audited Role Session)
All 34 tools
Memory ops (8)
Tool | Description |
| Write a permanent encrypted memory. Auto-tagged by content. |
| Recall the user's recent memories, newest first (80-character previews) |
| Semantic search over your memories — returns the full text of each match |
| Read one memory in full, decrypted from chain, with an on-chain integrity check |
| Filter by project tag and archived status (80-character previews) |
| Change tags on an existing memory |
| Hide a memory from recall (reversible) |
| Restore an archived memory |
Verification (4)
Tool | Description |
| Public, unauthenticated proof of a Project Brain: every anchored version, its |
| Shareable anchoring proof of one memory: |
| Forensic audit of one memory: recomputes its |
| Full audit of a Project Brain: recomputes the |
Project Brain (2)
Tool | Description |
| Consolidated, verifiable project state + active role contracts (state_hash, anchored on-chain). Pass |
| Propose structured ops (29-op grammar, incl. environment); server validates, builds, hashes, persists |
Verifiable Role Contracts (6)
Tool | Description |
| List a project's roles with version and status — call it first when you don't know the |
| Read a role's contract: purpose, rules with checks and severity, working protocol. Accepts |
| Open an audited Role Session under an active contract (pins contract + Brain hashes), and delivers the owner declared working environment |
| Close a Role Session with a summary of work done and pending |
| Audit trail: who assumed which role, when, how it closed, and the closing summary |
| One session in full, with the contract and Brain hashes it was pinned to |
Projects (5)
Tool | Description |
| List the user's projects |
| Create a custom project tag with optional auto-tag keywords |
| Delete a project tag |
| List built-in templates |
| Instantiate a built-in template |
Identity & stats (4)
Tool | Description |
| Network stats (AIs, memories, blocks, AIC supply) |
| Register a new AI identity on-chain |
| Get an AI's profile and trust score |
| Seal a memory permanently (requires |
Cross-platform context (1)
Tool | Description |
| Portable verified context across all platforms |
Selective inject — paid (4)
Tool | Description |
| Check AIC balance and how many injects it covers |
| Price an inject before paying: ids found/missing, tokens, exact cost, sufficiency. Free |
| Inject 1-50 memories into current chat context (0.1 AIC, optimistic) |
| History of inject operations |
Environment variables
Var | Required | Description |
| Yes | Your API key from the faucet |
| No | Default |
| No | Wallet private key — only required by |
| No | Default |
For most users only CHAINMEMORY_API_KEY is needed.
How selective inject works
User (or AI) calls
inject_memorieswith a list of IDsBackend checks balance (≥ 0.1 AIC required — Fee Schedule v1.0)
Optimistic response (<500ms): plaintexts returned immediately, transactions queued
Background: 50% of the fee goes to the ecosystem treasury, 50% is burned
get_inject_historyshows confirmation status
Architecture
┌─────────────────────────────────────────────────────────────┐
│ AI Agent (Claude Desktop, ChatGPT, any MCP client) │
└──────────────────┬──────────────────────────────────────────┘
│ MCP stdio
↓
┌─────────────────────────────────────────────────────────────┐
│ chainmemory-mcp v2.5 (this package) │
└──────────────────┬──────────────────────────────────────────┘
│ HTTPS + x-api-key
↓
┌─────────────────────────────────────────────────────────────┐
│ api.chainmemory.ai │
│ - per-user encryption at rest (AES-256-GCM) │
│ - Project Brain (deterministic builder + state_hash) │
│ - Role contracts + audited Role Sessions │
│ - SQLite + Merkle proofs │
└──────────────────┬──────────────────────────────────────────┘
│ JSON-RPC
↓
┌─────────────────────────────────────────────────────────────┐
│ ChainMemory L1 — Chain ID 202604 │
│ - Geth PoA Clique, 3 validators │
│ - Memory contract + daily checkpoint anchoring │
│ - Project State anchoring (public verification) │
└─────────────────────────────────────────────────────────────┘License
MIT
Maintenance
Resources
Unclaimed servers have limited discoverability.
Looking for Admin?
If you are the server author, to access and configure the admin panel.
Related MCP Servers
- Alicense-qualityBmaintenanceProvides persistent memory, reasoning engine, agent-to-agent sharing, and immutable audit trail for AI agents via the Model Context Protocol.Last updatedMIT

LogicMem MCP Serverofficial
AlicenseBqualityBmaintenanceProvides persistent memory, reasoning, agent-to-agent sharing, and immutable audit trail for AI agents via the Model Context Protocol.Last updated121MIT- Alicense-qualityCmaintenanceGives AI agents durable project memory via the Model Context Protocol, allowing them to read tasks, record decisions, search context, and sync snapshots to the cloud.Last updated34MIT
- Alicense-qualityAmaintenanceProvides non-custodial, post-quantum encrypted memory for AI agents, enabling portable memory across models with provable erasure.Last updated1Apache 2.0
Related MCP Connectors
Secure, user-owned long-term memory for AI agents over OAuth-protected remote MCP. Save, search, recall, update, and govern preferences, project context, decisions, and task state across ChatGPT, Claude, Copilot, IDEs, and CLIs.
Shared, verifiable memory for AI agents and robots: signed tokens that resolve and verify offline.
Persistent memory and knowledge graphs for AI agents. Hybrid search, context checkpoints, and more.
Latest Blog Posts
- Who's Calling? MCP Hosts Are an Identity Blind Spot (And the Spec Knows It)By Om-Shree-0709 on .mcpAgent IdentityOAuth 2.1
- Your AI Chatbot Just Exposed Your CEO's Salary to an InternBy Om-Shree-0709 on .Agent IdentityMCP SecurityOAuth Delegation
- Why MCP Servers Need Execution Sandboxing (And Why Your Current Stack Isn't Enough)By Om-Shree-0709 on .Agentic AiPrompt InjectionWebAssembly
MCP directory API
We provide all the information about MCP servers via our MCP API.
curl -X GET 'https://glama.ai/api/mcp/v1/servers/chaelynet/chainmemory-mcp'
If you have feedback or need assistance with the MCP directory API, please join our Discord server