Title100/100
Search Speko Docs
The title clearly communicates the tool’s action and subject. Keep it concise.
Description93/100
Search bundled Speko docs. Returns slug, title, score, snippet. Use this to look up SDK usage, API request/body shapes, and migration steps without leaving the MCP session. For example, after a Speko API validation error, search the failing field name to find the correct shape. Each hit's `slug` can be opened as the `spekoai://docs/{slug}` resource; `spekoai://docs/index` lists every bundled doc.
The description explains the capability, when to use it, and what to expect.
Inputs88/100
Remove validation rules already expressed in this field’s schema; describe its meaning and usage instead.
query
Free-text query. Matched case-insensitively against the titles and bodies of every bundled Speko doc (hosted llms.txt exports, SDK/adapter READMEs, migration guides, quickstart).
Clear enough to supply this argument.
limit
How many docs this call returns, best match first. Fewer come back when fewer docs match.
Remove validation rules already expressed in this field’s schema; describe its meaning and usage instead.
Annotations100/100
All four behavior hints are declared.
{
"title": "Search Speko Docs",
"readOnlyHint": true,
"openWorldHint": false,
"idempotentHint": true,
"destructiveHint": false
}Output schema93/100
The output schema explains the structured result.
View output schema
{
"type": "object",
"required": [
"result"
],
"properties": {
"result": {
"type": "array",
"items": {
"type": "object",
"required": [
"slug",
"title",
"package_name",
"kind",
"score",
"snippet"
],
"properties": {
"kind": {
"type": "string",
"description": "Document type: guide (migration guides), llms (hosted docs export), quickstart, or readme (package README)."
},
"slug": {
"type": "string",
"description": "Doc id. Read the full document as the spekoai://docs/{slug} resource."
},
"score": {
"type": "number",
"description": "Keyword-match relevance; higher is better. Compare scores only within one response."
},
"title": {
"type": "string",
"description": "Document title."
},
"snippet": {
"type": "string",
"description": "Text around the first exact match of the query, or the start of the doc when only individual words matched. Use it to judge the hit before reading it."
},
"package_name": {
"type": "string",
"description": "Package or docs bundle the doc belongs to, e.g. @spekoai/sdk, spekoai (Python) or docs.speko.dev."
}
},
"additionalProperties": false
},
"description": "Matching bundled docs, ordered by descending relevance."
}
},
"description": "Bundled Speko documentation search results.",
"additionalProperties": false
}