misakanet
MCP serverSearchmisakanet gives your AI a searchable memory of debugging lessons drawn from real engineering sessions. Once added, your AI can look through 235+ verified lessons to see how similar problems were diagnosed and fixed, helping it troubleshoot with knowledge of what has already been tried and learned.
Unavailable. This server has no hosted endpoint yet, so Ahel can't serve it.
Add to setup to save this item as a reference. Ahel cannot run it, and signing in will not install it.
What your AI can do with it
- Search 235+ verified debugging lessons from real engineering sessions
- Find how errors similar to the one at hand were diagnosed and fixed before
- Check for known failure patterns before attempting a fix
- Look up relevant lessons while troubleshooting an active problem
Getting started
- Save this item in Your setup as a reference.
- Read the source or reference documentation for its setup requirements. Saving it here does not connect it to your AI.
- Check this page for availability before trying to install it through Ahel.
From the project's README
As published by ikalus1988/misakanet in README.md.
MisakaNet
mcp-name: io.github.Ikalus1988/misakanet
Stop debugging the same error twice.
MisakaNet searches 393+ failure lessons so your agent skips known bugs.
Using MisakaNet? Give us a ⭐ — it helps other agents find indexed failure lessons. Agent-native interfaces — MCP server with 7 tools (
misakanet_search,misakanet_get_lesson,misakanet_submit_intake,misakanet_write_lesson,misakanet_preflight,misakanet_register,misakanet_me_events), WebMCP (browserdocument.modelContext),llms.txt/llms-full.txt, and A2A discovery via.well-known/agent-card.json.
装到你自己的助手(Claude Code / Codex)
一行命令(需要 Node,Claude Code / Codex 本身就依赖它):
npx @misaka-net/misakanet-setup
装完把助手窗口关掉再打开一次,然后随便挑一句带报错原文的片段问它(例如「switch vision model」
「context window exceeded」「tool call permission denied」——用错误原文里最独特的片段,别用整句自然语言),
它应该先去查经验库再回答。状态自检 npx @misaka-net/misakanet-setup --verify,卸载 --uninstall;想把本机环境回报给我们(外部验证悬赏要的就是这个):--report 会打印一段已脱敏的 YAML,可直接粘到公开 issue。
(支持 Claude Code / Codex / Hermes / OpenClaw / codewhale;codewhale 额外两步:token 走环境变量
export MISAKANET_TOKEN=…、规则块只对受信任的项目生效。想让命中/未命中时出声:加 --voice
(默认关,静音 MISAKANET_VOICE=0)。)
三层结构:能力 / 接入 / 触发(读一遍就懂它到底做了什么)
| 层 | 是什么 | 缺了它会怎样 |
|---|---|---|
| ① 服务 | https://misakanet.org/mcp(Streamable HTTP,7 个工具,匿名 5 次/天/IP)或本地 stdio(clone 后 python3 scripts/mcp_server.py,无限额) | 没有可查的地方 |
| ② 接入 | npx @misaka-net/misakanet-setup:把服务写进每个助手自己的配置文件(Claude Code / Codex / Hermes / OpenClaw / codewhale 各一套) | 你得自己知道 5 种配置文件分别怎么写 |
| ③ 触发 | 规则块(「遇到报错先查经验库」)+ 检查点钩子(约 20 轮提醒沉淀)+ 14 天升级提示 | 端点在,但没有任何人会去调用它 |
分工要说清楚:MCP 工具是 pull 型,端点永远不会主动调用——"要不要查"始终由助手决定。 setup 保证的是"工具确实在"和"该查的时刻更容易被抓住",不是"自动查询"。
容易混淆的两个同名包:PyPI 的
misakanet/misakanet-core是 Python 库(本地索引或--remote查服务),不负责把工具接进助手;npm 的misakanet是 skill/插件包 (SKILL.md+ DSH 插件入口),早期它只有说明书、没有工具——工具来自第 ① 层的服务。
装完你得到什么(逐条可自检)
- 7 个
misakanet_*工具出现在助手里 ——codex mcp list/codewhale mcp tools/claude mcp list/hermes mcp list;证据:列表里有misakanet且 7 个工具; - 助手被要求「遇错先查」 —— 问一句「switch vision model」「context window exceeded」这类片段,它应该先说查过经验库;
证据:事件流里出现
misakanet_search(claude/codewhale 用--output-format stream-json,codex 用--json); - 长会话会提醒沉淀 —— 约 20 轮后提醒把本次「失败 → 根因 → 修复 → 验证」变成一条课程 (Claude Code 有真钩子;Codex 没有用户级钩子,靠规则);
- 每 14 天最多一行升级提示 —— 只提示,绝不在背后安装任何东西;
- 随时可撤 ——
--verify看状态,--uninstall还原(改写前会留.misakanet.bak备份)。
不想用命令行、不知道配置文件在哪? 把下面这句话复制粘贴给助手,它会自己装好、自己验证、用大白话回报:
帮我接入 MisakaNet 失败记忆库:请读取 https://raw.githubusercontent.com/Ikalus1988/MisakaNet/main/integrations/agent-autostart/INSTALL_FOR_ME.md ,按里面的「第 2 部分:给你的要求」执行,做完用中文简单告诉我结果。
网络打不开上面那条网址时(部分网络会拦 raw.githubusercontent.com),把开头换 CDN 镜像:
帮我接入 MisakaNet 失败记忆库:请读取 https://cdn.jsdelivr.net/gh/Ikalus1988/MisakaNet@main/integrations/agent-autostart/INSTALL_FOR_ME.md ,按里面的「第 2 部分:给你的要求」执行,做完用中文简单告诉我结果。
装的是三件事:① 注册 MCP 端点(读不限次,写入类工具需 token,安装器会顺手注册匿名节点); ② 在助手的规则文件里写清"何时该查";③ 装一个钩子,让"每 20 轮沉淀一次"真的会触发 (只写规则不会触发——助手不记账)。细节与支持度矩阵见 integrations/agent-autostart/README.md, 非技术用户看 INSTALL_FOR_ME.md。
AI Agent Friendly
MisakaNet is optimized for AI agents:
- ✅ MCP Server — 7 tools for search, lessons, intake, reuse evidence
- ✅ Smithery Deployed — One-click install for AI agents
- ✅ robots.txt — AI crawlers allowed on public content
- ✅ JSON-LD Schema — Structured data for search engines
- ✅ Content Signals — Clear access policies for AI agents
Quick Start: Connect your agent
Option 1 — Remote MCP (no install, no account):
If your agent can make HTTP requests, it can use MisakaNet right now:
curl -sS https://misakanet.org/mcp \
-H "Content-Type: application/json" \
-H "MCP-Protocol-Version: 2025-06-18" \
-d '{"jsonrpc":"2.0","id":1,"method":"tools/call","params":{"name":"misakanet_submit_intake","arguments":{"problem":"YOUR PROBLEM","source":"your-agent"}}}'
No GitHub account. No email. No Bearer token. No browser. Just curl.
Option 2 — Local MCP (for Claude Code / Cursor / Codex):
git clone https://github.com/Ikalus1988/MisakaNet.git && cd MisakaNet
python3 scripts/mcp_server.py
# Add to your MCP config, then ask: "Search MisakaNet for tool call permission denied"
Option 3 — PyPI (pip install):
pip install misakanet
misakanet "database is locked"
# Or: python3 -m search_knowledge "your error here"
Option 4 — Python library (for scripts/notebooks):
pip install misakanet-core
from misakanet.search import search_lessons
results = search_lessons("pip install timeout")
for r in results:
print(r["title"], r["score"])
Option 5 — DeepSeek Harness (DSH plugin):
# Install from npm (recommended — published as misakanet@2.30.2)
# `dsh plugin` forwards to pnpm in the profile directory and requires --profile.
dsh plugin --profile web add misakanet@2.30.2
# Or install directly from git (same bundle, plus the repo's own python MCP server)
# dsh plugin --profile web add git+https://github.com/Ikalus1988/MisakaNet.git
# Make the failure-memory SKILL discoverable by agents
# (DSH scans ~/.dsh/skills and project .dsh/skills)
mkdir -p ~/.dsh/skills
cp -r skills/misakanet ~/.dsh/skills/
# Or run adapter directly
python3 scripts/mcp_deepseek_adapter.py
DSH bundle tools (
mcp__misakanet__*) are served by the public endpointhttps://misakanet.org/mcp(Streamable HTTP), which the bundle row declares — so an npm install is enough and no local python is required. A profile that prefers the repo's own stdio server can override the row (transport: stdio,command: python3,args: [scripts/mcp_server.py]).Two install gotchas (#1734):
dsh pluginneeds--profile <name>, and a profile whose lockfile predates the release will silently keep an older copy — pin the version (@2.30.1) if nomcp__misakanet__*tools appear.
Already installed? One command brings you current
npx @misaka-net/misakanet-setup@latest
Worth doing once by hand if you installed before 0.4.1: those releases shipped no upgrade
notice and their installer skipped an existing hook, so re-running it could report success and
change nothing. Running the command above once (a) replaces that hook with the current one and
(b) from then on your assistant mentions an upgrade at most once every 14 days, in one line —
it never installs anything behind your back. Everything else about your setup is left alone: the
installer is idempotent, --verify shows the current state, and --uninstall reverses it.
What is in the hook: the checkpoint reminder that asks your agent to distil a session's failure → root cause → fix → verification into an intake after ~20 turns, and the upgrade nudge.
Try it now
| Method | Command | Time |
|---|---|---|
| Remote MCP | curl -sS https://misakanet.org/mcp ... | 10s |
| Local MCP | git clone ... && python3 scripts/mcp_server.py | 30s |
| Python lib | pip install misakanet-core | 15s |
| CLI smoke | python3 scripts/misakanet_cli.py smoke | 5s |
→ Full quickstart (Remote MCP, CLI, Docker) · Troubleshooting
Register for unlimited access
Local stdio MCP is unlimited. For remote HTTP MCP, register to get a token:
curl -sS https://misakanet.org/mcp \
-H "Content-Type: application/json" \
-H "MCP-Protocol-Version: 2025-06-18" \
-d '{"jsonrpc":"2.0","id":1,"method":"tools/call","params":{"name":"misakanet_register","arguments":{"agent_type":"your-agent"}}}'
Returns node_id + token. Use token for unlimited remote searches.
Debug logging: Set MISAKA_DEBUG=1 (auth errors include debug context) or MISAKA_DEBUG=2 (request/response logging). Debug context is stripped by default; only shown when enabled.
WebMCP (Browser-based AI Agents)
MisakaNet's MCP server is exposed via WebMCP — browser-based AI agents can use MisakaNet tools directly from the page, no install, no account:
- Server-side (already enabled) — the Cloudflare Site MCP Server toolset points at
https://misakanet.org/mcp. - Visitor-side (zero config) — open misakanet.org with a WebMCP-capable browser agent and MisakaNet tools are auto-discovered via
navigator.modelContext.
⚠️ WebMCP is a Developer Preview — it currently requires a WebMCP-capable browser agent (Chrome beta / Cloudflare Browser Run lab). Anonymous browser agents share the 5 free reads/day quota; register for unlimited access.
What is this?
Git-backed failure-memory for AI coding agents. Zero dependencies. Zero server. Zero database.
Agent hits an error → search lessons → get a fix path. No prompt leaking, no raw logs stored.
What you get
| Metric | Value | Description |
|---|---|---|
| Lessons | Failure-recovery knowledge base | |
| Domains | rag, devops, fanuc, docker, feishu... | |
| Evidence Levels | E0-E4 | Verified by humans, PRs, or agents |
Evidence Levels
| Level | Meaning | Source |
|---|---|---|
| E0 | Community reported | Intake, issues |
| E1 | CI verified | Automated tests |
| E2 | PR merged | Code review |
| E3 | Maintainer verified | Human review |
| E4 | Production proven | Real-world usage |
Best Practices
Problem: ChromaDB SQLite backend fails on NTFS-mounted WSL paths.
Fix: Move DB to ext4: mv ~/.chromadb /mnt/ext4/.
Verify: python3 -c "import chromadb; c=chromadb.Client(); print(c.heartbeat())".
Problem: WSL terminal paste swallows underscores under high load.
Fix: Use tmux or pipe stdin via temp script files.
Verify: echo "test_underscore_command" shows correct output.
Problem: Robot hard-aborts instead of pausing on error.
Fix: Use POST_ERR(..., ERR_PAUSE) (value 1) instead of ERR_ABORT (value 2).
Verify: Robot pauses, system stays responsive.
More best practices for
docker,feishu,network,claude,hub→docs/domains/
Integration surfaces
| Surface | What it does | Entry point |
|---|---|---|
| MCP | Search, get lesson, submit intake | python3 scripts/mcp_server.py |
| CLI | Direct commands | python3 search_knowledge.py |
| SKILL.md | Agent guidance | Auto-loaded by Claude Code |
| Remote MCP | HTTP endpoint | https://misakanet.org/mcp |
| DSH Adapter | Harness integration | python3 scripts/mcp_deepseek_adapter.py |
| Glama Connector | MCP via Glama gateway (no self-hosting) | https://glama.ai/mcp/connectors/org.misakanet/misaka-net |
| Smithery | MCP via Smithery registry | https://smithery.ai/servers/misakanet/misakanet |
Use MisakaNet in Claude Code / Cursor / VS Code via Glama — 3 steps
Your agent hits an error (DCO failure, pip timeout, token leak…). MisakaNet gives it 393+ indexed failure-recovery lessons so it finds the fix instead of re-debugging. No self-hosting — the Glama gateway proxies to our hosted endpoint.
- Open the Glama connector page and click Connect through Glama MCP Gateway (sign in if prompted).
- Glama generates your personal gateway URL:
https://glama.ai/endpoints/<your-connection-profile>/mcp. - Add it to your client as a remote MCP server:
- Claude Code:
claude mcp add --transport http misakanet <URL> - Cursor: Settings → MCP → Add → URL type → paste
- VS Code: install an MCP extension, add a remote server → paste
- ChatGPT (desktop): Settings → Connectors → paste URL
- Claude Code:
Every call is logged in your Glama analytics.
Or via Smithery (also no self-hosting):
npx -y smithery mcp add misakanet/misakanet
Runs the same hosted endpoint through the Smithery registry.
Agent compatibility
| Agent | Integration | Status |
|---|---|---|
| Claude Code | MCP + SKILL.md | ✅ Supported |
| Codex | MCP + AGENTS.md | ✅ Supported |
| Cursor | MCP + rules | ✅ Supported |
| DeepSeek Harness | MCP adapter | ✅ Supported |
| Gemini CLI | MCP | ✅ Supported |
| Windsurf | MCP | ✅ Supported |
| OpenCode | MCP | ✅ Supported |
| Copilot | MCP | ✅ Supported |
🔥 New: No-account MCP intake. If your agent finds no good lesson, submit a failure case directly — see Quick Start Option 1 above for the curl command.
No GitHub account. No email. No Bearer token. No browser. The intake becomes a maintainer-visible GitHub issue for review.
See it in 8 seconds
Contribute in 3 minutes
- Run
python3 scripts/misakanet_cli.py smoke— verify it works - Search for a failure you've hit:
python3 search_knowledge.py "your error here" - Found nothing? Submit a 5-line failure note →
→ CONTRIBUTING.md · Good first issues
What this is NOT
| MisakaNet is NOT | What it is instead |
|---|---|
| ❌ A general-purpose memory system | ✅ Failure-recovery knowledge layer |
| ❌ An Agent runtime or framework | ✅ Searchable lesson database |
| ❌ A vector database or RAG system | ✅ BM25 keyword search (zero deps) |
| ❌ A cloud service requiring signup | ✅ git clone → search locally |
| ❌ A skill marketplace | ✅ Debugging knowledge from real sessions |
MisakaNet is purpose-built for one thing: helping agents avoid repeating known failures. It is not a general memory layer, not a runtime, and not a vector database.
Measured: lessons make models smarter
Weekly benchmark on real failure scenarios (Cloudflare Workers AI, 2026-08-30):
| Model | Without lesson context | With lesson context | Gain |
|---|---|---|---|
| llama-3.2-3b (light) | 21% hit | 43% hit | 2× — lesson context doubles a weak model |
| llama-3.3-70b (strong) | 42% hit | 73% hit | +31% |
Lesson context is a RAG win across the board: injecting the matching failure-recovery lesson lifts answer quality for every model — the smaller the model, the bigger the relative gain. Details: benchmark-2026-08-30
→ Full changelog · Release notes
How it works
1. Agent hits an error (DCO, pip, token, MCP, encoding, CI)
↓
2. Search MisakaNet for matching failure-recovery lessons
↓
3. Read the matching lesson
↓
4. Apply the documented fix
↓
5. If no lesson matches, opt in to capture a redacted failure report
↓
6. Maintainers review accepted contributions and convert them into draft lessons
Stuck on a failure? Search the lessons before opening a PR:
| Problem | Lesson |
|---|---|
| 🔴 DCO sign-off fails on Windows | → dco-auto-fix-workflow |
| 🔴 pip install timeout / SSL error | → pip-install-timeout-ssl |
| 🔴 Secret scan / token in commit | → codeql-alert-dismissal-false-positive |
| 🔴 GitHub API 401 / token expired | → github-401-credential-lookup |
Didn't find a fix? 📮 Share your failure lesson → — unsolved failure families show up on the public demand board so contributors know what to write next.
Agent-only intake (no GitHub account, no email, no browser pairing):
If an agent cannot find a good lesson, it can submit a redacted intake directly through the remote MCP endpoint. misakanet_submit_intake does not require a Bearer token; it creates a maintainer-visible GitHub issue labeled intake, mcp-intake, and pending-review.
Questions vs failures: reporting a failure → kind="missing_lesson"; asking a how-to / knowledge question → kind="question" (opens a [Question] issue that maintainers answer or fold into an FAQ, instead of scoring it as a lesson). If kind is omitted, question-shaped content (question phrasing with no error/fix/verification) is auto-routed to question.
curl -sS https://misakanet.org/mcp \
-H "Content-Type: application/json" \
-H "Accept: application/json, text/event-stream" \
-H "Origin: https://claude.ai" \
-H "MCP-Protocol-Version: 2025-06-18" \
-d '{"jsonrpc":"2.0","id":1,"method":"tools/call","params":{"name":"misakanet_submit_intake","arguments":{"kind":"missing_lesson","problem":"SHORT REDACTED PROBLEM","error":"OPTIONAL REDACTED ERROR","what_tried":"OPTIONAL","fix":"OPTIONAL","verification":"OPTIONAL","source":"remote-agent"}}}'
Do not send secrets or raw private logs. Intake is not auto-published; maintainers review it before turning it into a lesson.
What is the failure-memory protocol?
A shared experience substrate for AI agents. One agent stalls on a failure → documents the workaround → all agents skip that same failure path. Two surfaces, one knowledge core: a local stdio MCP (git clone + python3 search_knowledge.py, zero-dependency BM25) and a remote HTTP MCP (misakanet.org/mcp, Cloudflare Worker + D1, anonymous search).
In practice, MisakaNet is most valuable as a recovery layer during task execution, not as a separate reading experience. The primary direct user is usually an agent, not a human. Agents reuse known fixes so future tasks stall less on previously-solved failures. Human users often benefit indirectly: fewer stuck tasks, fewer repeated recovery steps, less manual intervention.
- Lesson — a piece of knowledge. Markdown file with problem → root cause → fix → verify.
- Node — an AI agent or developer who contributes and searches lessons.
- Search — BM25 keyword retrieval across all lessons. Zero dependencies. Python stdlib only.
flowchart LR
subgraph Edge["☁️ Cloudflare Edge"]
Worker["Cloudflare Worker<br/>(misakanet-register-proxy)"]
D1[("D1 — lessons + redaction")]
KV[("KV — rate-limit")]
Intake["GitHub Issues API<br/>intake → issue"]
end
subgraph Local["💻 Local Node (git clone)"]
User["Local Agent / Dev"]
CLI["CLI — search_knowledge.py"]
MCP["MCP stdio — scripts/mcp_server.py<br/>(misakanet == 2.30.2)"]
Engine["BM25 Engine — engine.py"]
Lessons[("lessons/ — git source of truth")]
Profile[("profile.json — node profile")]
end
Crawler["🤖 Remote Agent / Crawler<br/>(anonymous)"]
CI["⚙️ GitHub CI<br/>(50 workflows)"]
Shortened here. Read the whole README on GitHub.
Signals
- GitHub stars
- 524
- Forks
- 218
- Last commit
- Oct 2026
- Weekly downloads
- 1k
- Weekly_downloads
- 2k weekly_downloads
Advanced
- Delivery
- misakanet MCP server → your Ahel connector (mcp.ahel.ai) → your AI.
- Item type
- mcp-server
- Key
io-github-ikalus1988-misakanet- Source
- github.com/ikalus1988/misakanet
github.com/ikalus1988/misakanet