Model Context Protocol

MIND MCP Server

Give any AI agent persistent memory backed by a personal knowledge graph. Works with Claude, Cursor, Windsurf, VS Code, and any MCP-compatible tool.

npm install -g @astramindapp/mcp-server

What is the MIND MCP Server?

The MIND MCP Server is an open-source Model Context Protocol server that connects any MCP-compatible AI agent to your personal MIND knowledge graph.

Once installed, your AI agent can query your knowledge graph, store memories, manage tasks and goals, track contacts, and check graph health — with full persistence across sessions, devices, and tools. What you teach Claude Code is available in Cursor. What you decide in one session is remembered in the next.

Your AI Agent  ←→  MCP Protocol  ←→  MIND MCP Server  ←→  MIND Knowledge Graph
   (Claude,              (stdio)          (Node.js)             (LightRAG + MongoDB)
    Cursor,
    Windsurf...)

Quick Start

1

Get a MIND API Key

Sign up at m-i-n-d.ai (free tier available — no credit card required), then navigate to Settings → Developer → Create API Key. Your key will start with mind_.

2

Install the MCP Server

Requires Node.js 18 or higher.

npm install -g @astramindapp/mcp-server

Verify installation:

mind-mcp --version
3

Configure Your AI Tool

Add MIND to your tool's MCP configuration. See the platform-specific configs below.


Platform Configuration

Claude Desktop

Edit ~/Library/Application Support/Claude/claude_desktop_config.json (macOS) or %APPDATA%\Claude\claude_desktop_config.json (Windows):

{
  "mcpServers": {
    "mind": {
      "command": "mind-mcp",
      "env": {
        "MIND_API_KEY": "mind_your_key_here"
      }
    }
  }
}

Claude Code (CLI)

claude mcp add mind -- env MIND_API_KEY=mind_your_key_here mind-mcp

Cursor

Create or edit .cursor/mcp.json in your project root, or ~/.cursor/mcp.json globally:

{
  "mcpServers": {
    "mind": {
      "command": "mind-mcp",
      "env": {
        "MIND_API_KEY": "mind_your_key_here"
      }
    }
  }
}

Windsurf

Edit ~/.codeium/windsurf/mcp_config.json:

{
  "mcpServers": {
    "mind": {
      "command": "mind-mcp",
      "env": {
        "MIND_API_KEY": "mind_your_key_here"
      }
    }
  }
}

VS Code (GitHub Copilot)

Add to your .vscode/mcp.json:

{
  "servers": {
    "mind": {
      "type": "stdio",
      "command": "mind-mcp",
      "env": {
        "MIND_API_KEY": "mind_your_key_here"
      }
    }
  }
}

OpenClaw

{
  mcp: {
    servers: {
      mind: {
        command: "mind-mcp",
        env: { MIND_API_KEY: "mind_your_key_here" }
      }
    }
  }
}

Any MCP-Compatible Tool (Generic)

{
  "command": "mind-mcp",
  "env": {
    "MIND_API_KEY": "mind_your_key_here",
    "MIND_BASE_URL": "https://m-i-n-d.ai"  // optional, defaults to production
  }
}

MCP Tools Reference

Once connected, your AI agent has access to these 6 tools:

mind_query
Search your MIND knowledge graph. Returns an AI-synthesized answer grounded in your stored documents, entries, and thoughts. Use this before making decisions — MIND is your memory.
query requiredWhat to search for in your knowledge graph
modeSearch mode: hybrid (default — combines semantic + graph traversal), mix (balanced), graph (entity relationships), vector (semantic similarity)
// Example usage
mind_query({
  query: "What is my go-to-market strategy for Q3?",
  mode: "hybrid"
})
mind_remember
Store something in your MIND knowledge graph. Use for facts, decisions, learnings, research, notes — anything worth remembering. Auto-categorized and indexed for future retrieval.
content requiredThe actual content to store
typedocument (long-form structured content), entry (medium — observations, findings), thought (quick ideas). Defaults to entry.
titleTitle for documents and entries. Auto-generated for thoughts.
tagsArray of tags for categorization, e.g. ["strategy", "competitor", "learning"]
sourceSource identifier, e.g. "claude-code", "cursor". Defaults to "mcp-agent".
mind_remember({
  content: "Decided to prioritize SEO over paid ads in Q3. Reason: CAC too high at $180.",
  type: "entry",
  title: "Q3 Marketing Decision",
  tags: ["marketing", "decision", "q3"],
  source: "claude-code"
})
mind_context
Load your persistent context from MIND — identity, preferences, rules, and recent activity. Call this at the start of every session to know who you are, who the user is, and what matters right now.
sectionsWhich context sections to load: soul (identity/mission), user (user profile/preferences), rules (operating constraints), priorities (current goals), recent (latest activity). Defaults to all sections.
// Load full context at session start
mind_context({ sections: ["soul", "user", "rules", "priorities", "recent"] })

// Load just priorities and recent activity
mind_context({ sections: ["priorities", "recent"] })
mind_life
Manage goals, projects, and tasks in MIND Life. Use for tracking work, creating action items, updating progress, and completing tasks.
action requiredlist, create, update, complete, or delete
titleTitle for new items (required for create)
descriptionDescription for new items
statusFilter for list, or new status for update: action, someday, waiting, completed
prioritylow, medium, high, or urgent
due_dateDue date in YYYY-MM-DD format
item_idRequired for update, complete, and delete actions
// Create a task
mind_life({ action: "create", title: "Ship MCP docs page", priority: "high", due_date: "2026-03-22" })

// List active items
mind_life({ action: "list", status: "action" })
mind_crm
Manage contacts and relationships in MIND CRM. Use for tracking people, companies, leads, and interaction history.
action requiredlist, create, or update
nameContact name (required for create)
emailContact email address
companyCompany or organization
typelead, prospect, partner, customer, or personal
stagePipeline stage: new, qualified, proposal, closed, or lost
notesNotes about this contact
contact_idRequired for update actions
mind_crm({ action: "create", name: "Jane Smith", email: "jane@acme.com", company: "Acme Corp", type: "lead" })
mind_graph
Get MIND knowledge graph statistics — how many entities, relationships, documents, and entries exist. Use to check graph health and growth.

No parameters required. Returns entity count, relationship count, storage status, credits remaining, and tier.

mind_graph() // → { entities: 1240, relationships: 3800, credits: 450/600, tier: "starter" }

Recommended Agent Session Pattern

For best results, instruct your agent to follow this pattern at the start and end of every session.
// SESSION START — always do this first
1. mind_context()          → Load identity, rules, priorities
2. mind_query(task_query)  → Get relevant memories for the current task

// DURING SESSION — as needed
3. mind_query(...)         → Before making decisions
4. mind_life(...)          → Create/update tasks

// SESSION END — always do this last
5. mind_remember(outcomes) → Store what was decided, learned, or completed

Environment Variables

VariableRequiredDefaultDescription
MIND_API_KEYYesYour MIND Developer API key. Get one at m-i-n-d.ai → Settings → Developer. Starts with mind_.
MIND_BASE_URLNohttps://m-i-n-d.aiMIND API base URL. Override for self-hosted deployments.

Why MIND vs Flat File Memory (MEMORY.md)

CapabilityMEMORY.md / flat filesMIND MCP
Size limit~20K chars, then truncatedUnlimited knowledge graph
RetrievalLoads everything every turnOnly retrieves relevant memories
StructureUnstructured textEntities + relationships + embeddings
SearchKeyword on small fileHybrid semantic + graph traversal
Cross-toolLocked to one toolShared across all MCP-compatible agents
DocumentsManualUpload PDFs, Word, URLs, text
TasksManual text editingStructured task management via mind_life
ContactsNot supportedFull CRM via mind_crm

Programmatic / SDK Usage

You can also import the server directly in your own Node.js application:

import { createMindMcpServer, MindClient } from "@astramindapp/mcp-server";

const client = new MindClient({
  baseUrl: "https://m-i-n-d.ai",
  apiKey: process.env.MIND_API_KEY,
});

const server = createMindMcpServer(client);
// Connect to any MCP transport (stdio, SSE, etc.)

Links & Resources

Get Started

Documentation