MCP Servers
MCP Overview
EGC runs two local MCP servers over stdio. Both ship prebuilt inside the npm package and are registered by egc init and the installers in the ten tools that take MCP config; every other tool reaches the same memory through the protocol files.
egc-memory
Persistent project memory
get_stateupdate_statestore_decisionquery_historysearch_historyworking_memory_setworking_memory_getworking_memory_listlesson_savelesson_recalllesson_reinforcedetect_patternscompress_observationsget_project_statesession_announcesession_peerssession_sendsession_eventssession_waitclaim_pathrelease_pathteam_initteam_syncteam_statusegc-guardian
Validation and safety layer
validate_commandvalidate_writevalidate_contentreduce_contextorchestrate_taskauto_learnTransport
Both servers communicate over stdio. Each AI tool spawns them as child processes when a session starts. No daemon, no ports, no network exposure.
// mcp.json as written by egc init (Cursor shown; Claude Code is registered through its own CLI)
{
"mcpServers": {
"egc-memory": {
"command": "node",
"args": ["<npm global prefix>/node_modules/@egchq/egc/mcp/servers/egc-memory/build/index.js"]
},
"egc-guardian": {
"command": "node",
"args": ["<npm global prefix>/node_modules/@egchq/egc/mcp/servers/egc-guardian/build/index.js"]
}
}
}Local-first
🔒
No cloud
All state stays on your machine. Nothing is sent to external servers.
📁
Yours to read
State is Markdown, encrypted at rest and owned by the server: egc export prints it decrypted, and deleting a state file resets that project.
⚡
Fast startup
Stdio transport means near-zero latency. Both servers start in under 100ms.