agoya
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., "@agoyaRemember that my preferred port is 3000."
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.
Agoya - Agent Memory
File-backed Memory MCP Server for multi-agent coordination.
Persistent memory layer that AI coding agents (Claude Code, Codex, OpenCode, agy, Clew) connect to via MCP. No database, no external service — just JSON files under .agoya/.
Install
npm install -g agoyaOr run directly:
npx agoyaRelated MCP server: junto-memory
Usage
Run as MCP server (stdio)
agoya
# or with custom root:
AGOYA_ROOT_DIR=/path/to/project agoyaRegister in Claude Code
claude mcp add agoya -- /path/to/agoya/dist/index.jsOr add to .mcp.json:
{
"mcpServers": {
"agoya": {
"command": "node",
"args": ["/path/to/agoya/dist/index.js"]
}
}
}Register in Codex
Add to Codex MCP config pointing to the same path.
HTTP transport (multi-agent hub)
AGOYA_TRANSPORT=http AGOYA_PORT=8765 agoyaThen register each agent:
claude mcp add --transport http agoya http://localhost:8765/mcpAdd bearer auth for shared networks:
AGOYA_HTTP_TOKEN=your-secret AGOYA_TRANSPORT=http AGOYA_PORT=8765 agoyaMemory Types
Type | Purpose | Lifetime |
| Permanent knowledge (preferences, decisions, conventions) | Forever |
| Lessons learned, gotchas, discoveries | Forever |
| Conversation snapshots (pre-compact) | Auto-expire (configurable TTL) |
| Session scratchpad, temporary context | Cleared between sessions |
MCP Tools
Tool | Description |
| Save a fact/insight/chunk/working memory |
| Search across all memories with BM25 keyword ranking |
| Retrieve a single memory by ID and type |
| List memories with optional type/agent/tag filters |
| Permanently delete a memory by ID |
| Clear working memory for an agent (or all) |
| Merge similar memories by tag overlap |
| List currently connected agent sessions |
| Memory statistics by type and agent |
MCP Resources
URI | Content |
| All stored memories |
| Memories filtered by type |
| Memory statistics |
| Currently connected agent sessions |
On-disk layout
<root>/.agoya/
├── config.json # Server configuration
├── index.json # Search index (id → metadata)
├── facts/ # Permanent knowledge
├── insights/ # Lessons learned
├── chunks/ # Conversation snapshots
└── working/ # Session scratchpadsAll writes are atomic (write .tmp → rename). No corruption from crashes.
Search
BM25 keyword search (built-in, zero deps)
Tokenization + stop word filtering + BM25 ranking. Fast, deterministic, works offline.
Vector semantic search (optional, requires model download)
When enabled, remember also indexes each memory with a vector embedding using
Xenova/all-MiniLM-L6-v2 (384-dim). On recall, results are fused using
RRF (Reciprocal Rank Fusion) — combining keyword relevance with semantic
similarity for the best of both worlds.
The model (~15MB) auto-downloads on first use and caches locally.
To disable vector search:
AGOYA_DISABLE_VECTORS=1 agoyaExample workflow
# Agent saves knowledge
→ remember(agent="claude", type="fact", content="Project uses port 3000", tags=["config"])
# Agent searches across sessions
→ recall(query="port configuration")
← [{ entry: { content: "Project uses port 3000", ... }, score: 2.3, method: "bm25" }]
# Check memory stats
→ get_stats()
← { totalMemories: 42, byType: { fact: 20, insight: 10, chunk: 10, working: 2 }, ... }Configuration
Env var | Default | Description |
|
| Root directory for |
|
| Set to |
|
| Transport: |
|
| HTTP bind host |
|
| HTTP port |
| — | Bearer token required on |
Build
npm run build # TypeScript → dist/
npm run dev # Run via tsx (dev mode)
npm start # Run compiled version
npm test # Run testsThis server cannot be installed
Maintenance
Latest Blog Posts
- 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/JonusNattapong/agoya'
If you have feedback or need assistance with the MCP directory API, please join our Discord server