python-docs-mcp-server
Server Configuration
Describes the environment variables required to run the server.
| Name | Required | Description | Default |
|---|---|---|---|
No arguments | |||
Instructions
Guidance the server publishes about itself, which clients place ahead of the tool catalog so the model reads it before choosing anything.
This server publishes no instructions, or was last inspected before Glama recorded them.
Capabilities
Features and capabilities supported by this server
Protocol revision2025-11-25
| Capability | Details |
|---|---|
| tools | {
"listChanged": false
} |
| prompts | {
"listChanged": false
} |
| resources | {
"subscribe": false,
"listChanged": false
} |
| experimental | {} |
Tools
Functions exposed to the LLM to take actions
| Name | Description |
|---|---|
| search_docsA | Search Python documentation. Use kind='symbol' for API lookups (asyncio.TaskGroup), kind='example' for code samples, kind='auto' otherwise. When version is omitted, searches across all versions. Pass the version from each hit's version field to get_docs for consistent results. |
| get_docsA | Retrieve a documentation page or specific section. Provide anchor for section-only retrieval (much cheaper). Pagination via start_index. |
| lookup_package_docsA | Look up package-declared docs/homepage/source URLs via official PyPI metadata. This is not generic web search: it only queries PyPI's JSON API and returns official PyPI metadata plus package-declared project URLs. |
| list_versionsA | List Python documentation versions available in this index. |
| detect_python_versionA | Detect the Python version in the user's environment. Returns the detected version, how it was found, and whether it matches an indexed documentation set. |
| compare_versionsA | Diff a Python stdlib symbol between two indexed versions. Returns change=added|removed|changed|unchanged with optional new_in, changed_in, deprecated_in, signature_delta (advisory), see_also_added/removed, section_diff, and note fields. Both versions must be indexed; otherwise an actionable error names the available versions. |
| whatsnew_for_versionA | Browse indexed official What's New sections in document order. Use kind to narrow the release topics. Sections are bounded; for full text use get_docs(slug='whatsnew/X.Y', version='X.Y', anchor=section.anchor). Pagination start_index counts nonempty sections after kind filtering. |
Prompts
Interactive templates invoked by user choice
| Name | Description |
|---|---|
No prompts | |
Resources
Contextual data attached and managed by the client
| Name | Description |
|---|---|
No resources | |
TDQS
Scored across 7 tools
Each tool targets a distinct capability: retrieval (get_docs), search (search_docs), version listing/detection, cross-version diffing, What's New browsing, and PyPI metadata lookup. The only mild overlap is between whatsnew_for_version and get_docs with a whatsnew slug, but the description explicitly clarifies the boundary and defers full text to get_docs.
Most tools follow a clean verb_noun snake_case pattern (compare_versions, detect_python_version, get_docs, list_versions, lookup_package_docs, search_docs). whatsnew_for_version deviates slightly in style but remains readable and self-explanatory.
Seven tools is well-scoped for a documentation server, with each tool earning its place across the search/retrieve/compare/lookup workflow. No redundancy or bloat.
The surface covers the full docs lifecycle: discover versions, detect environment, search, retrieve sections, diff across versions, browse release notes, and resolve package docs URLs. Minor gaps like module/symbol enumeration exist, but agents can work around them via search_docs.