Source release of Mintlify Index, the retrieval engine and MCP server behind https://index.mintlify.com/mcp. Provides universal search capabilities across documentation and web sources.
Three tools with complete schemas and descriptions, but descriptions are generic and lack LLM-optimization guidance. All tools are read-only (good security posture). Schemas present but lack parameter-level detail on constraints, ranges, and dependencies. No error handling guidance visible. Tool names are action-oriented (search, context, contents) but 'context' and 'contents' are somewhat vague about their distinct purposes. Output schemas not documented in source.
Retrieve full contents of specific URLs or document IDs with optional text extraction and query-based filtering
Build contextual information for a query with configurable token budget and output format
Search across documentation and web sources with configurable result count, text extraction, and domain filtering
Tool names 'context' and 'contents' are ambiguous and do not clearly distinguish their purposes. 'context' could mean many things; 'contents' is vague about whether it retrieves full documents or summaries. Recommend 'build_search_context' and 'retrieve_document_contents' for clarity.
Parameter descriptions lack actionable constraints. 'numResults' has no min/max bounds stated (schema shows 1-20 but description does not). 'tokenBudget' mentions default 3000 and max 6000 in description but no min. 'maxCharacters' has no guidance on typical values or limits.
No output schema documentation visible in source. LLMs cannot plan downstream calls or extract fields without knowing what search(), context(), and contents() return. Response structure must be documented.
| Scored | Grade | Overall | Spec posture | Rubric |
|---|---|---|---|---|
| 2026-09-23 | D | 58 | 2026-07-28+ | v2 |
No error handling guidance. If a search returns zero results, if a domain filter excludes all sources, or if tokenBudget is exceeded, what does the tool return? How should the LLM recover? No recovery hints provided.
Parameter dependencies undocumented. 'context' tool has both 'includeDomains' and 'excludeDomains', what if both are specified? 'contents' accepts both 'urls' and 'ids' with a max of 20 total, is this enforced? Are they mutually exclusive or combinable?