misakanet_search
[RETRIEVAL / READ] Search MisakaNet's public failure-lesson index by error text, keyword, or topic. This is the primary read path — run it first when you hit an error, before deciding to submit anything. Choosing among the retrieval tools: an actual error or keyword in hand → this one; something risky about to run and no error yet → misakanet_preflight (the third, misakanet_memory_context, is stdio-only and covers the before-you-start case). For a known lesson ID or path, prefer misakanet_get_lesson — it skips ranking and returns the full content. detail controls progressive disclosure: compact (default, ~80 tok/lesson) for broad scans, summary (~200 tok) adds domain/tags/fix, full returns complete lesson data.
FAQ: results may also include answered questions (type="faq", issue_url + answer) — if a maintainer already answered the same question, the answer surfaces here.
Returns: object {results: [compact: {id, title, problem, freshness, evidence_level, score} | summary: + {domain, tags, fix} | full: the record], source, detail, query}; score is the ranker's relevance for that result and is omitted on the unranked fallback path. On no match: {no_match: true, suggestion, intake}. When the answer is degraded — no index loaded, or the live store refused the read and the corpus came from the snapshot — the response also carries degraded: true, degraded_reasons and a one-sentence notice; read it before concluding that no lesson exists.
Example: misakanet_search(query='pip install timeout', domain='python', top=3)
Tool call template
Replace each placeholder with a value matching the input schema. Only required parameters are included; add optional parameters as needed.
{
"id": 1,
"jsonrpc": "2.0",
"method": "tools/call",
"params": {
"arguments": {
"query": "<query>"
},
"name": "misakanet_search"
}
}Input Schema
| Name | Required | Description | Default |
|---|---|---|---|
| top | No | Maximum ranked results to return. Defaults to 5; keep small for MCP context and latency. | |
| kind | No | Filter by kind: 'lessons' (lesson files only), 'evidence' (results with evidence_refs or verification), 'related' (cross-referenced/tag-overlap), 'all' (default). Auto-detected from query intent when omitted. | |
| query | Yes | Required redacted error message, keyword, or topic (e.g. 'pip install timeout' or 'DCO sign-off failed'). | |
| detail | No | Progressive disclosure: compact (default, ~80 tok) includes id/title/problem/freshness/score; summary (~200 tok) adds domain/tags/fix; full returns complete lesson data with path. | |
| domain | No | Optional domain filter such as devops, python, network, feishu, rag, fanuc, or mcp. | |
| bm25_weight | No | Override BM25 keyword weight (0-1). Higher favors exact keyword match. Default: 0.65. All weights must sum to 1.0. | |
| baseline_weight | No | Override baseline score weight (0-1). Higher favors proven/popular lessons. Default: 0.15. | |
| metadata_weight | No | Override metadata bonus weight (0-1). Higher favors matching domain/tags. Default: 0.20. |
Output Schema
| Name | Required | Description | Default |
|---|---|---|---|
| query | No | ||
| detail | No | ||
| intake | No | ||
| source | No | ||
| results | No | ||
| no_match | No | ||
| suggestion | No | ||
| filtered_by_kind | No | ||
| matched_before_filter | No |