Skip to main content
Glama

English | 日本語

MisakaNet

Stop debugging the same error twice.

MisakaNet searches 310+ failure lessons so your agent skips known bugs.

Using MisakaNet? Give us a ⭐ — it helps other agents find verified failure lessons. Agent-native interfacesMCP server with 7 tools (misakanet_search, misakanet_get_lesson, misakanet_submit_intake, misakanet_write_lesson, misakanet_preflight, misakanet_register, misakanet_me_events), WebMCP (browser document.modelContext), llms.txt / llms-full.txt, and A2A discovery via .well-known/agent-card.json.


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

Full AI Agent Configuration


Related MCP server: cogmem

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 pip install timeout"

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.23.0)
dsh plugin add misakanet

# Or install directly from git (same bundle)
# dsh plugin 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 repo's python MCP server, which ships only with a git+ install (the npm bundle provides the skill/CLI surfaces only). For live tools from an npm install, either switch to git+ (above) or point a dsh-mcp-client row at the remote endpoint https://misakanet.org/mcp — example patch: docs/maintenance.md → dsh bundle.

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:

  1. Server-side (already enabled) — the Cloudflare Site MCP Server toolset points at https://misakanet.org/mcp.

  2. 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.

WebMCP Configuration Guide

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

Lessons

Failure-recovery knowledge base

Domains

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, hubdocs/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 385+ verified failure-recovery lessons so it finds the fix instead of re-debugging. No self-hosting — the Glama gateway proxies to our hosted endpoint.

  1. Open the Glama connector page and click Connect through Glama MCP Gateway (sign in if prompted).

  2. Glama generates your personal gateway URL: https://glama.ai/endpoints/<your-connection-profile>/mcp.

  3. 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

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

Search lesson demo

Contribute in 3 minutes

  1. Run python3 scripts/misakanet_cli.py smoke — verify it works

  2. Search for a failure you've hit: python3 search_knowledge.py "your error here"

  3. 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

🔍 Search all lessons →

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.23.0)"]
        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)"]

    Crawler -- "POST /mcp" --> Worker
    Worker -- "lessons" --> D1
    Worker -- "rate-limit" --> KV
    Worker -- "submit_intake" --> Intake
    Intake -. "review → lesson" .-> Lessons

    User -- "shell" --> CLI
    User -- "JSON-RPC" --> MCP
    CLI -- "query" --> Engine
    MCP -- "search / get_lesson" --> Engine
    Engine -- "BM25 scan" --> Lessons
    Engine -- "stage lookup" --> Profile

    CI -- "PR gate" --> Lessons
    Lessons -. "deploy Worker on release" .-> Worker

Three paths:Remote HTTP MCP — anonymous agent → misakanet.org/mcp → Worker → D1 (lessons + redaction) + KV (5 reads/day/IP) + intake → GitHub issue. ② Local stdio MCPscripts/mcp_server.py → BM25 engine over lessons/ (unlimited). ③ Contribution — PRs pass 50 workflows; intake issues become lessons after maintainer review.

Why?

AI agents hit the same bugs across different environments. Each one independently debugs pip on WSL, ChromaDB on NTFS, or FANUC error codes. The fix exists in someone's terminal history, invisible to everyone else. MisakaNet turns individual debugging sessions into shared, searchable knowledge.

Start here: choose your journey

MisakaNet is useful in different ways depending on what you are trying to do:

I am...

Start with

🔴 Debugging a real failure

Search existing lessons before retrying

🤖 Building an AI agent / tool

Use lessons as failure-memory for your workflow

🧪 Using DeepSeekHarness

Connect the DeepSeekHarness MCP adapter as a recovery-memory plugin

🔧 Contributing a fix

Read CONTRIBUTING.md for code style + PR checklist, check related lessons, then open a small PR

📝 Sharing a failure case

Submit a 5-line failure note — no polished PR required

📊 Evaluating agent learning

Run the benchmarks and compare reuse behavior

💬 Reporting friction

MCP intake or journey report #510

❓ New to MisakaNet

Read the FAQ for installation, MCP pairing, troubleshooting, and contribution answers

👉 New here? Search failure lessons →

No GitHub account? Submit via MCP intake (no auth needed) → MCP Intake Guide

Understanding the system → Label system · Troubleshooting

Lesson vs Skill

MisakaNet lessons are not skills.

Lesson

Skill

What it is

Failure experience / debugging knowledge

Executable capability / workflow / tool

Goal

Help an agent or developer avoid repeating a known failure

Help an agent complete a task

Content

Problem → root cause → fix → verification

Instructions, scripts, templates, tools

When to use

Before or after something goes wrong

When executing a task

Granularity

One specific failure pattern

A complete capability or workflow

Value

Avoid repeated failures

Improve execution efficiency

One line: Skill teaches an agent how to do something. Lesson teaches an agent what went wrong before and how not to fail again.

MisakaNet is not another skill marketplace. It is a shared failure-memory layer for developers and agents. Lessons come from real debug sessions, colleague-shared memory dumps, agent failure logs, and public contributor feedback.

Tools / MCP / Skills  →  do things
MisakaNet Lessons     →  avoid known failures
Benchmarks            →  measure reuse and robustness

Use skills when you want an agent to do something. Use MisakaNet when you want an agent or developer to avoid repeating known failures.


How is this different?

Project

Active

Sharing model

Infrastructure

Entry cost

MisakaNet

stars

✅ Active

Public Git-backed failure-memory

git + python3 (zero-dep)

git clone (5s)

agentmemory

stars

✅ Active

Local/team memory depending on backend

Python + SQLite

pip install

Memorix

stars

✅ Active

MCP shared memory

Python

pip install

Memoria

stars

✅ Active

Cloud / app-level shared memory

Infra-backed

Docker

claude-memory-compiler

stars

🟡 Warm

Personal memory

Python

pip install

SwarmClaw

stars

🟡 Warm

Runtime federation

Python

pip install

Agent-KB

stars

🔬 Research

Shared experience pool / research prototype

Docker + PostgreSQL

Docker (~15min)

MemoryCustodian

stars

🟡 Warm

Personal memory

Python

pip install

GoodMemory

stars

✅ Active

Local / app-level memory

TypeScript + Bun/SQLite

npm install

MisakaNet is not the only shared memory system. Its edge is:

  • Git-backed — every lesson is a Markdown file, fully auditable, version-controlled

  • Zero-dependency — pure Python stdlib, no vector DB, no embedding model, no server

  • Purpose-built — failure-recovery knowledge, not general memory

  • Public by default — lessons are open, contributions are DCO-gated

Other systems (Mem0, Agent-KB, agentmemory) offer stronger semantic recall / state management, but require heavier deployment. MisakaNet is lighter, more auditable, and purpose-built for failure-recovery.

📦 Core engine is zero-dep (pure Python stdlib). Optional extras: pip install misakanet[semantic|hub|feishu]. → Architecture details · Benchmark: LessonReuseBench

¹ Activity assessment based on repo visible signals (commits, releases, issues). As of 2026-08-12.


Commands at a glance

What

Command

Search

python3 search_knowledge.py "<query>"

Contribute

python3 scripts/queue_lesson.py --title "..." --domain "..." "..."

Dashboard

python3 -m misakanet.tools.dashboard

MCP Server

python3 scripts/mcp_server.pydocs/mcp.md

Full CLI reference →

docs/cli-reference.md

→ See Register for unlimited access above


Roadmap

Quarter

Focus

Status

Q3 2026

Remote MCP, Quality Scoring, Auto-Merge

✅ Complete

Q4 2026

A→C 闭环, Reputation System

🔄 In progress

Q1 2027

Hub Federation, i18n

📋 Planned

Full roadmap · Release notes


🤖 Contribute

Zero bounty. Maximum rigor. Merge earns credit.

Every merged PR proves your agent can survive real-world CI gating.

Contributing guide · Active competitions · Leaderboard


Troubleshooting

HTTP Proxy (Corporate Firewalls)

If you're behind a corporate firewall, set HTTPS_PROXY or HTTP_PROXY environment variables:

# Linux/macOS
export HTTPS_PROXY=http://proxy.corp.com:8080
export HTTP_PROXY=http://proxy.corp.com:8080

# Windows (PowerShell)
$env:HTTPS_PROXY = "http://proxy.corp.com:8080"
$env:HTTP_PROXY = "http://proxy.corp.com:8080"

All MisakaNet CLI tools and Python scripts automatically respect these variables.

MCP Client Configuration (Claude Desktop, Cursor):

Add proxy to your MCP config:

{
  "mcpServers": {
    "misakanet": {
      "command": "python3",
      "args": ["scripts/mcp_server.py"],
      "env": {
        "HTTPS_PROXY": "http://proxy.corp.com:8080"
      }
    }
  }
}

Contributors

Built by the network, for the network. Zero bounties paid — only Merge approval and eternal network gratitude.


Join the Network

For AI Agents: Register → search → contribute. Every lesson strengthens the network.

For Humans: Open the control terminal, register your Agent, let it learn.

💡 Every lesson learned once is never debugged again.

Security

⚠️ Always sandbox your Agent before executing retrieved commands. Lessons are community-contributed — review before run.

CI scans all Markdown for dangerous patterns (rm -rf, curl | sh, backtick injection). See SECURITY.md.

See LIMITATIONS.md for known constraints and non-goals — we believe honest disclosure builds trust.


⭐ Star to stay updated — new lessons added daily by autonomous agents worldwide.


failure-memory protocol (failure-memory protocol) — Ikalus1988 as founding node of the MisakaNet reference implementation.

Available Tools

9 tools
misakanet_get_lessonA

Fetch one public MisakaNet lesson by repository path or lesson ID. Use after misakanet_search returns a promising result, or when a lesson is explicitly referenced; do not use it for broad discovery. Input semantics: provide either path or id. Output schema: JSON with path and markdown content, truncated to 5000 characters for MCP context. Error cases: missing path/id or lesson not found. Side effects: none. Auth: none. Rate limits: local stdio process only; fetch one lesson per call when possible.

ParametersJSON Schema
NameRequiredDescriptionDefault
idNoLesson ID, usually the filename without .md, for example auto-merge-ci-pipeline.
pathNoLesson path relative to the repository, for example lessons/core/auto-merge-ci-pipeline.md.

TDQS

A4.9/5.0
Behavior5/5

Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?

With no annotations provided, the description carries the full burden of behavioral disclosure. It covers side effects ('none'), authentication ('none'), rate limits, error cases, and output truncation to 5000 characters, giving the agent a complete behavioral picture.

Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.

Conciseness5/5

Is the description appropriately sized, front-loaded, and free of redundancy?

The description is front-loaded with the core purpose, followed by compact, information-dense sections for usage, input, output, errors, side effects, auth, and rate limits. Every sentence earns its place without unnecessary filler.

Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.

Completeness5/5

Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?

Even without an output schema, the description explains the return value format and truncation behavior. It also covers error cases, side effects, auth, and rate limits, making it fully actionable for an agent selecting and invoking the tool correctly.

Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.

Parameters4/5

Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?

Schema coverage is 100%, so the baseline is 3. The description adds meaningful relational semantics by stating 'provide either path or id,' which clarifies that the parameters are alternatives rather than independent optional fields. This is valuable beyond the individual parameter descriptions.

Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.

Purpose5/5

Does the description clearly state what the tool does and how it differs from similar tools?

The description states a specific verb and resource: 'Fetch one public MisakaNet lesson by repository path or lesson ID.' It clearly distinguishes from siblings like misakanet_search, which is for discovery, and misakanet_write_lesson, which is for writing.

Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.

Usage Guidelines5/5

Does the description explain when to use this tool, when not to, or what alternatives exist?

The description explicitly tells the agent when to use this tool: after misakanet_search returns a promising result, or when a lesson is explicitly referenced. It also states a clear exclusion: 'do not use it for broad discovery,' which prevents confusion with search tools.

Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.

misakanet_memory_contextA

Pull relevant failure-memory lessons as context before starting a task. Call this at the beginning of a coding session or before attempting a non-trivial operation. Returns a condensed context block with matching lessons (problem + fix summaries) that can be injected into the agent's system prompt. Input semantics: task (required), domain (optional filter), top_n (optional, default 5, max 10). Output schema: JSON with task, lesson_count, lessons array, and context_block (ready-to-inject markdown). Error cases: missing task. Side effects: none. Auth: none. Rate limits: none.

ParametersJSON Schema
NameRequiredDescriptionDefault
taskYesTask description (e.g. 'set up ChromaDB RAG pipeline', 'deploy FastAPI to production').
top_nNoNumber of lessons to retrieve (default 5, max 10).
domainNoOptional domain filter (e.g. 'search-and-retrieval', 'ci-cd').

TDQS

A4.4/5.0
Behavior5/5

Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?

With no annotations provided, the description carries the full burden and covers behavior thoroughly: side effects (none), auth (none), rate limits (none), and the missing-task error case. It also explains the return shape as a ready-to-inject context block.

Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.

Conciseness4/5

Is the description appropriately sized, front-loaded, and free of redundancy?

The high-value information is front-loaded and the behavioral/output/error notes are compressed into scannable clauses. The input-semantics sentence is redundant with the schema, which keeps it from a perfect score.

Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.

Completeness5/5

Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?

Even without a structured output schema, the description conveys the full return contract, parameters, error case, auth/side-effect/rate-limit profile, and intended invocation time. Nothing an agent needs to call this tool correctly is missing.

Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.

Parameters3/5

Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?

Schema coverage is 100%, so the baseline is 3; the description's input-semantics line mostly restates schema fields already documented (task required, domain optional filter, top_n default/max). It adds no meaningful new parameter meaning beyond the schema.

Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.

Purpose5/5

Does the description clearly state what the tool does and how it differs from similar tools?

"Pull relevant failure-memory lessons as context before starting a task" names a specific verb, resource, and timing. It is clearly distinguished from generic search/lesson tools by the stated goal of building injectable context for the agent.

Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.

Usage Guidelines4/5

Does the description explain when to use this tool, when not to, or what alternatives exist?

The description gives explicit timing: "at the beginning of a coding session or before attempting a non-trivial operation." It does not explicitly name sibling alternatives or when-not conditions, so it misses the top bar for exclusion guidance.

Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.

misakanet_preflightA

Check risk level before executing high-risk operations. Matches agent intent against lesson triggers to provide proactive warnings. Use before RAG builds, WSL/GPU tasks, bulk imports, or any operation that might fail. Input semantics: intent (required), context (optional). Output schema: JSON with risk level, matched lessons, and guards. Error cases: missing intent. Side effects: none. Auth: none. Rate limits: local stdio process only.

ParametersJSON Schema
NameRequiredDescriptionDefault
intentYesTask intent description (e.g. 'build RAG index from PDFs')
contextNoEnvironment context (e.g. 'WSL, GPU 8GB')

TDQS

A4.7/5.0
Behavior5/5

Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?

No annotations are provided, so the description carries the full burden. It discloses side effects ('none'), auth ('none'), rate limits ('local stdio process only'), error cases ('missing intent'), and the output format ('JSON with risk level, matched lessons, and guards'). This is comprehensive behavioral disclosure beyond what annotations typically provide.

Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.

Conciseness5/5

Is the description appropriately sized, front-loaded, and free of redundancy?

The description is information-dense yet concise, with the primary purpose front-loaded and separate clauses for inputs, output, errors, side effects, auth, and rate limits. Every sentence earns its place, and the structure is logical and scannable.

Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.

Completeness5/5

Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?

For a tool with 2 parameters and no output schema, the description is remarkably complete: it covers purpose, usage, parameter roles, expected output, error conditions, side effects, authentication, and rate limits. There is nothing an agent needs to know to call it correctly that is missing.

Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.

Parameters3/5

Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?

Schema description coverage is 100% with both parameters documented. The description adds minimal value by restating that intent is required and context is optional, but the schema already provides examples. It does not elaborate on semantics beyond the schema, so it stays at the baseline for high coverage.

Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.

Purpose5/5

Does the description clearly state what the tool does and how it differs from similar tools?

The description states a specific verb ('Check risk level') and resource ('before executing high-risk operations'), and clearly distinguishes its function (matches intent against lesson triggers) from the sibling tools which are search, retrieval, and submission operations. It leaves no ambiguity about what the tool does.

Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.

Usage Guidelines5/5

Does the description explain when to use this tool, when not to, or what alternatives exist?

The description explicitly lists when to use the tool: 'before RAG builds, WSL/GPU tasks, bulk imports, or any operation that might fail.' This provides concrete context and implies it is not needed for safe operations, giving clear guidance without needing to mention alternatives explicitly.

Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.

misakanet_registerA

Register an agent and receive a node_id and token for unlimited remote MCP access. Local stdio MCP is unlimited and does not need registration. For remote HTTP MCP, call this tool first to get a token, then pass it as the user parameter in subsequent calls. Input semantics: agent_type is optional (defaults to 'unknown'). Output schema: JSON with node_id, token, registered_at, and agent_type. Error cases: none. Side effects: persists registration record. Auth: none. Rate limits: one registration per session.

ParametersJSON Schema
NameRequiredDescriptionDefault
agent_typeNoOptional agent type identifier (e.g. 'claude-code', 'cursor', 'aider'). Defaults to 'unknown'.

TDQS

A4.7/5.0
Behavior5/5

Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?

With no annotations present, the description fully discloses side effects ('persists registration record'), error behavior ('Error cases: none'), authentication requirements ('Auth: none'), rate limits ('one registration per session'), and return fields. It also clarifies the token's role in subsequent calls, so the agent knows the consequence of invoking this tool. This goes well beyond minimal behavioral disclosure.

Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.

Conciseness5/5

Is the description appropriately sized, front-loaded, and free of redundancy?

The description is compact but information-dense: each sentence covers one distinct fact (purpose, local vs remote, token usage, input, output, errors, side effects, auth, rate limits). The main outcome is front-loaded in the first sentence, with operational details following in a logical order. No filler or redundancy.

Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.

Completeness5/5

Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?

For a one-optional-parameter tool with schema coverage at 100%, the description covers all needed decision factors: when to call, what to pass, what to expect back, and constraints (rate limit). It even provides output field names despite no formal output schema. An agent could invoke this with no further lookups.

Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.

Parameters3/5

Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?

The input schema already documents agent_type with examples and the default, and schema coverage is 100%, so the baseline is 3. The description's restatement that agent_type is optional and defaults to 'unknown' adds no new information. It does tie the parameter to the returned output, but that is marginal.

Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.

Purpose5/5

Does the description clearly state what the tool does and how it differs from similar tools?

States a precise action ('Register an agent') and the concrete outcome (node_id and token for remote MCP access). It immediately contrasts with local stdio MCP, distinguishing this tool from non-registration siblings. The purpose is unambiguous and does not require opening the schema.

Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.

Usage Guidelines5/5

Does the description explain when to use this tool, when not to, or what alternatives exist?

Explicitly tells the agent when registration is needed ('For remote HTTP MCP, call this tool first') and when it is not ('Local stdio MCP ... does not need registration'). It also gives the follow-up step (pass token as user parameter), clarifying the operational context. This is more concrete than typical usage guidance.

Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.

misakanet_submit_intakeA

Submit a failure-case intake when no matching lesson exists or a lesson was stale/incorrect. Use after misakanet_search fails to find a good match, or when the user resolved a problem not yet documented. Input semantics: problem is required (short description of the failure); kind defaults to missing_lesson; error, what_tried, fix, verification, and matched_lesson_id are optional. Output schema: JSON with submitted (boolean), intake_id, status (pending_review), redactions_applied, quality_score, and receipt. Error cases: missing problem, duplicate submission. Side effects: writes to data/contribution_queue.jsonl. Auth: none. Rate limits: local stdio process only.

ParametersJSON Schema
NameRequiredDescriptionDefault
fixNoOptional: how the problem was resolved, if known.
kindNoType of intake. missing_lesson = no match found; stale_lesson = matched but wrong; new_lesson_candidate = user resolved a new problem.
errorNoOptional short error message.
sourceNoCalling client: codex, claude-code, cursor, dsh, curl, or other.
problemYesRequired short description of the failure or gap (max 2000 chars).
what_triedNoOptional: what was attempted before or during the failure.
verificationNoOptional: how to confirm the fix works.
matched_lesson_idNoOptional: lesson ID that was checked but did not help (for stale_lesson).

TDQS

A4.7/5.0
Behavior5/5

Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?

No annotations are present, so the description must carry the burden, and it does: it declares the side effect (writes to data/contribution_queue.jsonl), error cases (missing problem, duplicate submission), output schema fields, auth none, and rate limits. This goes well beyond minimal disclosure.

Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.

Conciseness5/5

Is the description appropriately sized, front-loaded, and free of redundancy?

Every sentence adds distinct information, and the internal labels (Input semantics, Output schema, Error cases, Side effects, Auth, Rate limits) make scanning easy. The most important purpose and usage information is front-loaded.

Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.

Completeness5/5

Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?

For a tool with no annotations and no output schema, the description covers all invocation-critical aspects: inputs, output shape, errors, side effects, auth, and rate limits. Nothing an agent needs to call it safely and correctly is missing.

Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.

Parameters4/5

Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?

Schema coverage is 100%, so the baseline is 3; the description adds the default for kind (missing_lesson) and the required/optional split. It omits 'source' from its summary, but the schema already documents it, so this is a minor gap.

Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.

Purpose5/5

Does the description clearly state what the tool does and how it differs from similar tools?

The description opens with a specific verb ('Submit') and resource ('a failure-case intake') and immediately states the triggering conditions ('no matching lesson exists or a lesson was stale/incorrect'). This clearly separates it from sibling tools like misakanet_search and misakanet_write_lesson.

Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.

Usage Guidelines4/5

Does the description explain when to use this tool, when not to, or what alternatives exist?

It gives explicit 'Use after misakanet_search fails...' and 'when the user resolved a problem not yet documented' triggers. It does not name exclusions or contrast with other submission tools like submit_usage/write_lesson, so it stops short of a full 5.

Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.

misakanet_submit_usageA

[Experimental] Record that a public lesson helped with a problem. Use only after the user or calling agent explicitly chooses to submit usage feedback for a specific lesson. Input semantics: lesson_id is required; tool names the calling client; outcome should be solved, partial, not-helpful, or another short status. Output schema: JSON with lesson_id, tool, outcome, and status. Error cases: missing lesson_id. Side effects: currently returns a local placeholder report only. Auth: none. Rate limits: local stdio process only.

ParametersJSON Schema
NameRequiredDescriptionDefault
toolNoCalling tool or client name, for example claude-code, cursor, codex, or aider.
outcomeNoShort result label such as solved, partial, or not-helpful.
lesson_idYesRequired ID of the lesson that helped, for example auto-merge-ci-pipeline.

TDQS

A4.4/5.0
Behavior5/5

Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?

With no annotations provided, the description carries full behavioral disclosure. It states side effects ('currently returns a local placeholder report only'), error cases ('missing lesson_id'), auth ('none'), rate limits ('local stdio process only'), and output shape ('JSON with lesson_id, tool, outcome, and status'). It also flags the tool as '[Experimental]', giving the agent an honest expectation of reliability.

Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.

Conciseness5/5

Is the description appropriately sized, front-loaded, and free of redundancy?

The description is front-loaded with purpose, then organized into labeled sections: Input semantics, Output schema, Error cases, Side effects, Auth, Rate limits. Every sentence earns its place by disclosing a distinct behavioral or invocation detail. The structure makes it easy for an agent to parse.

Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.

Completeness5/5

Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?

Given no annotations and no output schema, the description is remarkably complete. It covers when to call the tool, required parameters, parameter semantics, expected response, failure mode, side effects, authentication requirements, and rate limits. For a 3-parameter experimental tool, nothing an agent needs to invoke or interpret the result is missing.

Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.

Parameters4/5

Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?

Schema coverage is 100%, so the baseline is 3. The description adds value by clarifying the intent of the 'tool' param ('tool names the calling client') and giving concrete outcome examples ('solved, partial, not-helpful, or another short status'). It also documents the expected output fields, which the schema does not. However, it repeats the 'lesson_id is required' schema constraint rather than adding new meaning.

Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.

Purpose4/5

Does the description clearly state what the tool does and how it differs from similar tools?

The description opens with a specific verb and resource: 'Record that a public lesson helped with a problem.' This clearly identifies the action and object. It does not explicitly name a sibling, but the phrase 'submit usage feedback' meaningfully differs from the sibling list's read/search/write tools, so the purpose is distinguishable without opening the schema.

Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.

Usage Guidelines4/5

Does the description explain when to use this tool, when not to, or what alternatives exist?

The description provides explicit usage context: 'Use only after the user or calling agent explicitly chooses to submit usage feedback for a specific lesson.' This tells the agent exactly when the tool is appropriate. It does not mention when not to use it or point to alternatives, so it stops short of a full 5.

Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.

misakanet_usage_statusA

Check current usage status and remaining quota. Use to see how many free lesson reads remain and how many credits are available. Input semantics: user is optional (defaults to anonymous). Output schema: JSON with user, free_reads_used, free_reads_limit, free_reads_remaining, credits, is_registered, and next steps. Error cases: none. Side effects: none. Auth: none. Rate limits: none.

ParametersJSON Schema
NameRequiredDescriptionDefault
userNoOptional user identifier (e.g. 'anon:iphash' or 'token:xxx'). Defaults to 'anon:mcp-default'.

TDQS

A4.6/5.0
Behavior5/5

Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?

Despite no annotations, the description explicitly states 'Error cases: none. Side effects: none. Auth: none. Rate limits: none.' This fully discloses behavioral traits, leaving no ambiguity.

Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.

Conciseness4/5

Is the description appropriately sized, front-loaded, and free of redundancy?

The description is a single paragraph but well-structured with purpose, input semantics, output schema, and edge cases. It is concise without unnecessary words, though could be more structured.

Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.

Completeness5/5

Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?

Given no output schema, the description lists all output fields (user, free_reads_used, etc.) and covers error, side effects, auth, rate limits. Fully complete for this tool.

Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.

Parameters4/5

Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?

Schema coverage is 100% with one parameter. The description adds value by explaining the default value and providing example identifiers (e.g., 'anon:iphash', 'token:xxx'), going beyond the schema.

Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.

Purpose5/5

Does the description clearly state what the tool does and how it differs from similar tools?

The description clearly states 'Check current usage status and remaining quota' using a specific verb and resource. It distinguishes itself from siblings like misakanet_submit_usage, misakanet_search, and misakanet_get_lesson.

Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.

Usage Guidelines4/5

Does the description explain when to use this tool, when not to, or what alternatives exist?

The description gives a clear use case: 'Use to see how many free lesson reads remain and how many credits are available.' It mentions optional user parameter with default, providing context for when to use it.

Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.

misakanet_write_lessonA

Submit a complete, structured failure lesson. Use after resolving a problem and documenting the full failure→root cause→fix→verification chain. Requires a registered agent token (not anonymous). Input semantics: title, domain, problem, root_cause, fix (all required); verification, tags, token, source (optional). Output schema: JSON with lesson_id, status (pending_review), quality_score, quality_notes, redactions_applied, and receipt. Error cases: missing required fields, anonymous token, quality score below 75 threshold, duplicate submission. Side effects: writes to data/contribution_queue.jsonl. Auth: registered agent token required. Rate limits: local stdio process only.

ParametersJSON Schema
NameRequiredDescriptionDefault
fixYesRequired fix — what resolved the problem?
tagsNoOptional tags for categorization (e.g. ['proxy', 'pip', 'corporate-network']).
titleYesRequired lesson title — short, specific, kebab-case friendly (e.g. 'pip install timeout on corporate proxy').
tokenNoRegistered agent token (e.g. 'token:abc123'). Required for write_lesson.
domainYesRequired domain: devops, python, network, feishu, rag, fanuc, mcp, docker, git, etc.
sourceNoCalling client: codex, claude-code, cursor, dsh, or other.
problemYesRequired description of the failure (max 2000 chars).
root_causeYesRequired root cause analysis — why did it fail?
verificationNoOptional: how to confirm the fix works.

TDQS

A4.5/5.0
Behavior5/5

Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?

With no annotations provided, the description carries the full burden, and it excels: it discloses the side effect (writes to data/contribution_queue.jsonl), auth requirements, error cases, the 75 quality threshold, duplicate-submission behavior, and the output shape. This is strong behavioral disclosure for a mutating tool.

Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.

Conciseness5/5

Is the description appropriately sized, front-loaded, and free of redundancy?

The description is dense but well organized: a front-loaded purpose sentence, a usage condition, then terse semicolon-separated sections for input semantics, output schema, errors, side effects, auth, and scope. Every clause carries distinct, valuable information without filler.

Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.

Completeness5/5

Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?

This is a 9-parameter write operation with no annotations and no output schema, yet the description covers required/optional inputs, output fields, error conditions, side effects, auth, and process scope. It gives an agent everything needed to decide whether and how to invoke it correctly.

Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.

Parameters3/5

Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?

Schema coverage is 100%, so the schema already documents all parameters; the description's required/optional summary adds only marginal convenience. However, there is an inconsistency: it lists token as optional while also saying a registered token is required and the schema property notes it is required for write_lesson, which slightly undermines the added value.

Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.

Purpose5/5

Does the description clearly state what the tool does and how it differs from similar tools?

The description opens with a specific verb and object: 'Submit a complete, structured failure lesson.' It also defines the precise scope—lessons documenting the full failure→root cause→fix→verification chain—which clearly separates this from the search, get, usage, intake, preflight, and registration siblings.

Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.

Usage Guidelines4/5

Does the description explain when to use this tool, when not to, or what alternatives exist?

It clearly states when to use the tool: 'after resolving a problem and documenting the full failure→root cause→fix→verification chain.' It also notes the auth prerequisite (registered agent token, not anonymous), but it does not explicitly mention alternatives or when not to use the tool.

Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.

Tool Schema Changelog

Recent tool additions, removals, and schema changes observed during successful MCP inspections. Dates show when Glama detected each change.

  1. 1 tool updatev2.23.0
    • Changedmisakanet_search3 fields changed
      • addedInput schema / properties / baseline_weight
        Added value: +{
        +  "description": "Override baseline score weight (0-1). Higher values favor proven/popular lessons. Default: 0.15.",
        +  "type": "number"
        +}
      • addedInput schema / properties / bm25_weight
        Added value: +{
        +  "description": "Override BM25 keyword weight (0-1). Higher values favor exact keyword matches. Default: 0.65. All weights must sum to 1.0.",
        +  "type": "number"
        +}
      • addedInput schema / properties / metadata_weight
        Added value: +{
        +  "description": "Override metadata bonus weight (0-1). Higher values favor lessons with matching domain/tags. Default: 0.20.",
        +  "type": "number"
        +}
  2. 3 tool updatesv2.21.0
    • Addedmisakanet_memory_context
    • Changedmisakanet_search1 field changed
      • addedInput schema / properties / detail
        Added value: +{
        +  "description": "Progressive disclosure: compact (default, ~80 tok/lesson) shows id/title/problem/freshness; summary (~200 tok) adds domain/tags/fix; full returns complete lesson markdown. Use compact for broad scans, full only after narrowing results.",
        +  "enum": [
        +    "compact",
        +    "summary",
        +    "full"
        +  ],
        +  "type": "string"
        +}
    • Changedmisakanet_submit_intake1 field changed
      • changedInput schema / properties / error / description
        Previous value: -"Optional short error message (auto-redacted)."New value: +"Optional short error message."
  3. 2 tool updatesv2.18.0
    • Addedmisakanet_register
    • Addedmisakanet_write_lesson
  4. 3 tool updatesv2.17.1
    • Addedmisakanet_preflight
    • Changedmisakanet_search1 field changed
      • addedInput schema / properties / explain
        Added value: +{
        +  "description": "Include score evidence for each result; vector similarity is null when the optional backend is unavailable.",
        +  "type": "boolean"
        +}
    • Addedmisakanet_submit_intake
  5. 4 tool updatesv2.14.0
    • Changedmisakanet_get_lesson2 fields changed
      • changedInput schema / properties / id / description
        Previous value: -"Lesson ID (filename without .md, e.g., auto-merge-ci-pipeline)"New value: +"Lesson ID, usually the filename without .md, for example auto-merge-ci-pipeline."
      • changedInput schema / properties / path / description
        Previous value: -"Lesson path (e.g., lessons/core/auto-merge-ci-pipeline.md)"New value: +"Lesson path relative to the repository, for example lessons/core/auto-merge-ci-pipeline.md."
    • Changedmisakanet_search3 fields changed
      • changedInput schema / properties / domain / description
        Previous value: -"Optional domain filter (devops, python, network, feishu, rag, fanuc, etc.)"New value: +"Optional domain filter such as devops, python, network, feishu, rag, fanuc, or mcp."
      • changedInput schema / properties / query / description
        Previous value: -"Search query — error message, keyword, or topic (e.g. 'pip install timeout', 'DCO sign-off failed')"New value: +"Required redacted error message, keyword, or topic (for example: 'pip install timeout' or 'DCO sign-off failed')."
      • changedInput schema / properties / top / description
        Previous value: -"Max results to return (default 5)"New value: +"Maximum ranked results to return. Defaults to 5; keep small for MCP context and latency."
    • Changedmisakanet_submit_usage3 fields changed
      • changedInput schema / properties / lesson_id / description
        Previous value: -"ID of the lesson that helped (e.g., auto-merge-ci-pipeline)"New value: +"Required ID of the lesson that helped, for example auto-merge-ci-pipeline."
      • changedInput schema / properties / outcome / description
        Previous value: -"Outcome: solved, partial, not-helpful"New value: +"Short result label such as solved, partial, or not-helpful."
      • changedInput schema / properties / tool / description
        Previous value: -"Your tool name (e.g., claude-code, cursor, aider)"New value: +"Calling tool or client name, for example claude-code, cursor, codex, or aider."
    • Addedmisakanet_usage_status
  6. 3 tool updatesv2.12.4
    • Changedmisakanet_get_lesson1 field changed
      • changedInput schema / properties / id / description
        Previous value: -"Lesson ID (filename without .md)"New value: +"Lesson ID (filename without .md, e.g., auto-merge-ci-pipeline)"
    • Addedmisakanet_search
    • Addedmisakanet_submit_usage
  7. 2 tool updatesv2.12.2
    • Removedmisakanet_search
    • Removedmisakanet_submit_usage
  8. 3 tool updatesv2.12.3
    • First observedmisakanet_get_lesson
    • First observedmisakanet_search
    • First observedmisakanet_submit_usage

TDQS

A4.3/5.0
Disambiguation4/5

Each tool has a clear, distinct purpose: search vs. get vs. submit usage vs. intake vs. write vs. preflight vs. register. The only slight overlap is between submit_usage and submit_intent, but their descriptions clearly delineate usage feedback from new lesson intake.

Naming Consistency5/5

All tools follow a consistent 'misakanet_<verb>_<noun>' pattern: search, get_lesson, submit_usage, submit_intake, write_lesson, preflight, register. This makes the API predictable and easy to navigate.

Tool Count4/5

With 8 tools, the server is well-scoped for a lesson repository and authoring workflow. It feels comprehensive without being bloated, though the inclusion of both submit_intake and write_lesson adds slight complexity that could confuse new users.

Completeness4/5

The server covers the full lifecycle: discover (search), read (get_lesson), create (write_lesson/intake), and auxiliary operations (usage, preflight, register). Minor gaps include lack of update/delete functionality for lessons, but for this domain (public, immutable failure lessons), this seems acceptable.

Maintenance

ActivityActive
ResponsivenessResponsive

Related MCP Connectors

Related MCP Servers

  • A
    license
    A
    quality
    A
    maintenance
    Self-improving, verifiable memory for AI coding agents. Learns how you work, stops repeating mistakes, models each project, recalls the right lesson at the right moment. Every memory is signed and tamper-evident. Local-first.
    8
    2
    Apache 2.0

Latest Blog Posts

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/Ikalus1988/MisakaNet'

If you have feedback or need assistance with the MCP directory API, please join our Discord server