Mastra Documentation Server
[ tools: 13 ][ checks: 12 ][ latency: 5ms ]
86/100(B)
npx -y @mastra/mcp-docs-server
check breakdown
✓Tools exposed — Server exposed 13 tools.
• mastraDocs
• mastraMigration
• startMastraCourse
• getMastraCourseStatus
• startMastraCourseLesson
• nextMastraCourseStep
• clearMastraCourseHistory
• getMastraHelp
• listMastraPackages
• getMastraExports
• getMastraExportDetails
• readMastraDocs
• searchMastraDocs
✓Input schemas valid — All tools have a valid JSON-Schema input definition.
!Input schema quality — 3 schema-quality issue(s) across 13 tool(s).
mastraMigration: no "required" array (which params are mandatory?)
startMastraCourse: no "required" array (which params are mandatory?)
clearMastraCourseHistory: no "required" array (which params are mandatory?)
→ Declare `required` for every schema that has properties, so agents know which params are mandatory.
→ Give every property a `description` and a concrete `type` (avoid bare `{}` placeholders).
→ Set `additionalProperties: false` on the top-level inputSchema so models can't silently pass extra, unvalidated arguments.
!Output schemas — No tools declare an outputSchema.
→ Optional: declare outputSchema for tools with structured results so agents can validate/parse output reliably.
✓Duplicate tool names — All tool names are unique.
✓Tool naming — All tool names use spec-legal characters.
Advisory (not scored): 13 name(s) aren't lower_snake_case — consistent lower_snake_case tends to help model tool-selection reliability, though mixed case, digits, underscores, hyphens, and dots are all spec-legal.
• "mastraDocs"
• "mastraMigration"
• "startMastraCourse"
• "getMastraCourseStatus"
• "startMastraCourseLesson"
• "nextMastraCourseStep"
• "clearMastraCourseHistory"
• "getMastraHelp"
• "listMastraPackages"
• "getMastraExports"
• "getMastraExportDetails"
• "readMastraDocs"
• "searchMastraDocs"
✓Descriptions — Every tool and parameter is clearly described.
!Tool annotations — Annotation coverage 0% (0/65 hint fields set).
• mastraDocs: no annotations at all
• mastraMigration: no annotations at all
• startMastraCourse: no annotations at all
• getMastraCourseStatus: no annotations at all
• startMastraCourseLesson: no annotations at all
• nextMastraCourseStep: no annotations at all
• clearMastraCourseHistory: no annotations at all
• getMastraHelp: no annotations at all
• listMastraPackages: no annotations at all
• getMastraExports: no annotations at all
• getMastraExportDetails: no annotations at all
• readMastraDocs: no annotations at all
• searchMastraDocs: no annotations at all
→ Add annotations: title, readOnlyHint, destructiveHint, idempotentHint, openWorldHint.
→ These let clients gate risky calls and give agents/users a friendly display name — optional but valuable.
!Tool titles — 13 of 13 tool(s) have no title.
• mastraDocs: no top-level title (or annotations.title)
• mastraMigration: no top-level title (or annotations.title)
• startMastraCourse: no top-level title (or annotations.title)
• getMastraCourseStatus: no top-level title (or annotations.title)
• startMastraCourseLesson: no top-level title (or annotations.title)
• nextMastraCourseStep: no top-level title (or annotations.title)
• clearMastraCourseHistory: no top-level title (or annotations.title)
• getMastraHelp: no top-level title (or annotations.title)
• listMastraPackages: no top-level title (or annotations.title)
• getMastraExports: no top-level title (or annotations.title)
• getMastraExportDetails: no top-level title (or annotations.title)
• readMastraDocs: no top-level title (or annotations.title)
• searchMastraDocs: no top-level title (or annotations.title)
→ Declare a top-level `title` on each tool — it gives clients a friendly display name distinct from the machine-readable `name`.
→ `annotations.title` (the older location) is also accepted, but the top-level `title` field is now the spec-preferred place for it.
!Server instructions — No top-level instructions declared.
→ Declare instructions to guide agents on when/how to use this server.
→ Return a non-empty `instructions` string in your InitializeResult — most SDKs let you set this alongside serverInfo.
✓Handshake + list latency — tools/list responded in 5ms.
✓Prompts — All 2 prompt(s) are well-named and documented.
add the badge
Paste into your README:
[](https://scoremcp.dev/servers/mastra-docs-mcp)