Skip to content

v1.7.0 — stdio MCP server

Choose a tag to compare

@javimosch javimosch released this 10 Aug 09:47
· 5 commits to master since this release

v1.7.0 — stdio MCP server for automatic agent discovery

The Problem

Every agent integration was a text instruction in CLAUDE.md saying "run memgraph recall before starting a task." This was fragile — models may skip, misread, or forget the instruction. Each agent framework needed its own bridge file.

The Fix

memgraph mcp starts a stdio JSON-RPC 2.0 server implementing the MCP 2025-11-25 protocol. No external dependencies — pure Go stdlib.

5 Tools Exposed

Tool What it does
memgraph_projects List all project scopes (discovery — no prior knowledge needed)
memgraph_recall Search memories (returns compact section index by default)
memgraph_read Read full memory or specific section by slug
memgraph_save Store new memory with [slug] sections
memgraph_recommend Skill recommendations for a task

Register with Claude Code

claude mcp add memgraph -s user -- ~/.local/bin/memgraph mcp

Verified: claude mcp list shows memgraph ✔ Connected. All 5 tools discoverable via tools/list. Full end-to-end workflow tested through the protocol.

Protocol

  • Transport: stdio (newline-delimited JSON-RPC 2.0)
  • Handshake: initializenotifications/initializedtools/listtools/call
  • Protocol version: 2025-11-25
  • Capabilities: tools (listChanged: false)
  • Errors: JSON-RPC level (-32700, -32601, -32602) for protocol errors; isError: true for tool execution errors

Impact

  • Eliminates CLAUDE.md rules: agents discover memgraph via MCP tool list
  • Eliminates cold-start friction: framework advertises tools, model calls them
  • Eliminates bridge files: no per-agent integration files needed
  • Token-efficient by default: memgraph_recall returns section index, not full memories

Files

  • mcp_server.go (164 LOC) — JSON-RPC loop, protocol handshake, dispatch
  • mcp_tools.go (509 LOC) — tool definitions + handler wrappers
  • mcp_test.go (247 LOC) — 7 integration tests

Stats

  • 49 tests pass with -race
  • Pure Go stdlib, zero external dependencies

Closes #5