Each library can mix-and-match three kinds of sources. The tool groups are enabled per library based on the kind of its sources.
When multiple libraries are configured, every tool (except list_libraries) takes a required library parameter.
For Markdown files (*.md). Supports regex search, TOC extraction, and chapter-by-chapter reads so the agent doesn't have to load huge files.
| Tool | Description |
|---|---|
get_doc_index |
Top-level index of all markdown files |
get_sub_index |
Index of a subfolder |
read_doc_file |
Read a full markdown file |
get_file_toc |
Headings (TOC) of a file |
get_chapters |
Extract specific chapters by heading |
search_docs |
Regex search across docs, with optional glob path filter |
Parses C# XML documentation comments (*.xml) and TypeDoc JSON (*.json) into a unified namespace / type / member model.
| Tool | Description |
|---|---|
get_api_index |
All namespaces and types with summaries |
get_api_type |
Full docs for a type including all members |
get_api_member |
Detailed docs for one member (parameters, returns, exceptions, examples) |
search_api |
Regex search across type names, member names, signatures, and summaries |
The api pipeline does not read source code — it consumes a generated documentation file:
- TypeScript / JavaScript — use TypeDoc's built-in JSON serializer:
typedoc --json api.json src/index.ts. Point the source at the resulting.jsonfile. The markdown output fromtypedoc-plugin-markdownis not supported — it must be the JSON serializer output (a TypeDoc project document). - C# — enable XML documentation output in the project (
<GenerateDocumentationFile>true</GenerateDocumentationFile>) and point the source at the generated*.xmlfile (or the build output folder containing it).
Indexes JSON Schema (draft 6+), OpenAPI 3.x, and Swagger 2.0 files. For OpenAPI specs, path operations are exposed as definitions named like GET /pets.
TypeDoc JSON files should use
kind: "api", notkind: "schema"— the API pipeline has a richer model for types and members.
| Tool | Description |
|---|---|
list_schemas |
All indexed schema files with format and definition counts |
list_definitions |
Definition names in a schema (including OpenAPI path operations) |
get_definition |
Full JSON for a definition or path operation |
search_definitions |
Glob/pipe keyword search within a schema |
search_all_schemas |
Same, across all schemas in the library |
Search expressions support:
|as OR separator ("user|order")*and?as glob wildcards ("GET*")- Plain substring match (case-insensitive)
| Tool | Description |
|---|---|
list_libraries |
Only exposed when ≥ 2 libraries are configured. Returns each library's name, description, and which tool groups (docs / api / schema) it exposes. |
When multiple libraries are configured, every tool gains a required library parameter. The agent calls list_libraries first to discover what's available, then passes the library name on subsequent tool calls.
When only one library is configured, the parameter is omitted — tools behave exactly as a single-library server would.