MCP.so
Sign In

gmem

@yksanjo

About gmem

Persistent typed memory MCP server for Solana programs and EVM contracts. Agents remember Programs, PDAs, Contracts, Decisions, Findings across sessions.

Config

Add this server to your MCP-compatible client using the configuration below.

{
  "mcpServers": {
    "gmem": {
      "command": "npx",
      "args": [
        "-y",
        "@yksanjo/gmem"
      ]
    }
  }
}

Tools

7

Retrieve memory entries relevant to a natural-language query for the active Solana project. Ranked by BM25 over entity fields with a recency boost.

Persist a typed memory entry (Program / Account / Instruction / Decision / Finding / Integration). Append-only: re-writing the same logical entity creates a new version, never overwrites.

Show how memory state changed between two points in time. Accepts ISO 8601 timestamps OR git commit refs (HEAD, HEAD~3, branch names, full or short SHAs) — refs are resolved via `git show -s --format=%cI` in the active project root. v0.5 milestone.

List all Decision entries for the active project, newest first.

Auto-ingest an Anchor workspace: parses `Anchor.toml`, captures the IDL SHA-256 for each program from `target/idl/<name>.json`, and records the current git HEAD as the source commit. Writes one Program entity per (program, cluster) pair. v0.3 milestone.

Read the active Solana CLI context (`~/.config/solana/cli/config.yml`) and return the configured cluster, RPC URL, and the public address of the active keypair. Used to auto-attribute Decision writes to a developer wallet. v0.4 milestone. Does not return the secret key.

Auto-ingest a Hardhat (EVM) workspace: walks up to the nearest hardhat.config.{ts,js,cjs,mjs}, reads every deployment artifact under deployments/<network>/<Contract>.json (hardhat-deploy convention), classifies the network into a canonical chain id, computes a stable ABI sha256, records git HEAD as sourceCommit. Writes one Contract entity per (chain, address). v1.1 milestone. Companion to gmem.ingest_anchor for Solana.

Overview

What is gmem?

gmem is an MCP server that gives AI coding agents (Claude Code, Cursor, Cline, Continue.dev) persistent, typed project memory for blockchain development. It stores entities like Solana programs, EVM contracts, PDAs, accounts, architectural decisions, audit findings, and integrations in an append-only SQLite database, so context is never lost between sessions.

How to use gmem?

Install gmem globally via npm (npm install -g @yksanjo/gmem) or add it to your MCP client configuration by specifying npx -y @yksanjo/gmem as the command. It exposes 7 read/write/query/ingest MCP tools. To auto-ingest an existing project, use the gmem.ingest_anchor (for Anchor workspaces) or gmem.ingest_hardhat (for Hardhat workspaces, v1.1+) tool.

Key features of gmem

  • Auto-ingest Anchor and Hardhat workspaces
  • SQLite with FTS5 BM25 ranking for semantic recall
  • Append-only versioning – history is never overwritten
  • One SQLite database per project – no cross-project leakage
  • 7 MCP tools for read/write/query/ingest workflows
  • MIT-licensed, single binary via npm

Use cases of gmem

  • Preserve project context for AI agents working on Solana or EVM smart contracts across sessions
  • Track architectural decisions, audit findings, and rationale alongside code
  • Automatically ingest workspace metadata (IDLs, ABIs, Anchor versions) into memory
  • Maintain a shared, typed project memory for teams using AI coding tools

FAQ from gmem

How do I install gmem?

Use npm install -g @yksanjo/gmem for a global install, or add the npx -y @yksanjo/gmem command to your MCP client configuration.

What entities does gmem support?

gmem defines first-class entity types: Program, Contract, PDA, Account, Decision, Finding, and Integration. Each has typed fields relevant to on-chain development.

How does gmem store memory?

Memory is stored in a local SQLite database with FTS5 full-text search and BM25 ranking. Each project gets its own database, and all writes are append-only to preserve history.

Is gmem open source?

Yes, gmem is MIT-licensed. The source is available on GitHub at https://github.com/yksanjo/gmem.

Can gmem auto-ingest existing Solana and EVM projects?

Yes. gmem provides gmem.ingest_anchor for Anchor workspaces (Solana) and gmem.ingest_hardhat for Hardhat workspaces (EVM, v1.1+).

Frequently asked questions

How do I install gmem?

Use `npm install -g @yksanjo/gmem` for a global install, or add the `npx -y @yksanjo/gmem` command to your MCP client configuration.

What entities does gmem support?

gmem defines first-class entity types: Program, Contract, PDA, Account, Decision, Finding, and Integration. Each has typed fields relevant to on-chain development.

How does gmem store memory?

Memory is stored in a local SQLite database with FTS5 full-text search and BM25 ranking. Each project gets its own database, and all writes are append-only to preserve history.

Is gmem open source?

Yes, gmem is MIT-licensed. The source is available on GitHub at https://github.com/yksanjo/gmem.

Can gmem auto-ingest existing Solana and EVM projects?

Yes. gmem provides `gmem.ingest_anchor` for Anchor workspaces (Solana) and `gmem.ingest_hardhat` for Hardhat workspaces (EVM, v1.1+).

Comments

More Other MCP servers