11# mcp-server-python-docs
22
3+ <!-- mcp-name: io.github.ayhammouda/python-docs-mcp-server -->
4+
35[ ![ CI] ( https://github.com/ayhammouda/python-docs-mcp-server/actions/workflows/ci.yml/badge.svg )] ( https://github.com/ayhammouda/python-docs-mcp-server/actions/workflows/ci.yml )
46[ ![ License: MIT] ( https://img.shields.io/badge/license-MIT-blue.svg )] ( LICENSE )
57[ ![ Python 3.12+] ( https://img.shields.io/badge/python-3.12%2B-blue )] ( https://www.python.org/ )
@@ -71,17 +73,21 @@ section.
7173
7274Local source smoke test until the PyPI package is published:
7375
76+ <!-- PRE-PYPI: replace this temporary GitHub source command after the first PyPI publish -->
7477``` bash
7578uvx --from git+https://github.com/ayhammouda/python-docs-mcp-server.git mcp-server-python-docs --version
7679```
80+ <!-- /PRE-PYPI -->
7781
7882## Install
7983
8084Until the first PyPI release is published, run from GitHub:
8185
86+ <!-- PRE-PYPI: replace this temporary GitHub source command after the first PyPI publish -->
8287``` bash
8388uvx --from git+https://github.com/ayhammouda/python-docs-mcp-server.git mcp-server-python-docs --version
8489```
90+ <!-- /PRE-PYPI -->
8591
8692After PyPI publishing is complete, the package will also run directly with
8793` uvx ` :
@@ -103,9 +109,11 @@ shell or use `python -m uv ...` as a fallback for local contributor commands.
103109
104110Build the local documentation index:
105111
112+ <!-- PRE-PYPI: replace this temporary GitHub source command after the first PyPI publish -->
106113``` bash
107114uvx --from git+https://github.com/ayhammouda/python-docs-mcp-server.git mcp-server-python-docs build-index --versions 3.10,3.11,3.12,3.13,3.14
108115```
116+ <!-- /PRE-PYPI -->
109117
110118After PyPI publishing, ` uvx mcp-server-python-docs build-index ... ` is enough.
111119
@@ -131,6 +139,7 @@ Add this to your Claude Desktop configuration file:
131139
132140** Windows:** ` %APPDATA%\\Claude\\claude_desktop_config.json `
133141
142+ <!-- PRE-PYPI: replace this temporary GitHub source command after the first PyPI publish -->
134143``` json
135144{
136145 "mcpServers" : {
@@ -145,6 +154,7 @@ Add this to your Claude Desktop configuration file:
145154 }
146155}
147156```
157+ <!-- /PRE-PYPI -->
148158
149159Restart Claude Desktop after editing the config file.
150160
@@ -153,6 +163,7 @@ Restart Claude Desktop after editing the config file.
153163Add this to your Cursor MCP settings (` .cursor/mcp.json ` in your project or
154164global settings):
155165
166+ <!-- PRE-PYPI: replace this temporary GitHub source command after the first PyPI publish -->
156167``` json
157168{
158169 "mcpServers" : {
@@ -167,16 +178,19 @@ global settings):
167178 }
168179}
169180```
181+ <!-- /PRE-PYPI -->
170182
171183### Codex
172184
173185Add this to ` .codex/config.toml ` :
174186
187+ <!-- PRE-PYPI: replace this temporary GitHub source command after the first PyPI publish -->
175188``` toml
176189[mcp_servers .python-docs ]
177190command = " uvx"
178191args = [" --from" , " git+https://github.com/ayhammouda/python-docs-mcp-server.git" , " mcp-server-python-docs" ]
179192```
193+ <!-- /PRE-PYPI -->
180194
181195## How quality is verified
182196
@@ -258,7 +272,15 @@ search, or silently fall back to unofficial community mirrors.
258272
259273## Diagnostics
260274
261- Check the local environment:
275+ Before PyPI publishing, run ` doctor ` from the GitHub source package:
276+
277+ <!-- PRE-PYPI: replace this temporary GitHub source command after the first PyPI publish -->
278+ ``` bash
279+ uvx --from git+https://github.com/ayhammouda/python-docs-mcp-server.git mcp-server-python-docs doctor
280+ ```
281+ <!-- /PRE-PYPI -->
282+
283+ After PyPI publishing:
262284
263285``` bash
264286uvx mcp-server-python-docs doctor
@@ -268,7 +290,17 @@ This checks the runtime Python version, SQLite FTS5, cache/index paths, disk
268290space, and whether the current interpreter has the ` venv ` /` ensurepip ` support
269291needed by ` build-index ` .
270292
271- Validate an existing index:
293+ Validate an existing index.
294+
295+ Before PyPI publishing:
296+
297+ <!-- PRE-PYPI: replace this temporary GitHub source command after the first PyPI publish -->
298+ ``` bash
299+ uvx --from git+https://github.com/ayhammouda/python-docs-mcp-server.git mcp-server-python-docs validate-corpus
300+ ```
301+ <!-- /PRE-PYPI -->
302+
303+ After PyPI publishing:
272304
273305``` bash
274306uvx mcp-server-python-docs validate-corpus
@@ -282,6 +314,9 @@ If you see an error about SQLite FTS5 not being available:
282314
283315** Linux x86-64**
284316
317+ After PyPI publishing, Linux x86-64 users can install the optional bundled
318+ SQLite package:
319+
285320``` bash
286321pip install ' mcp-server-python-docs[pysqlite3]'
287322```
@@ -309,7 +344,7 @@ JSON documentation content.
309344
310345### ` uvx ` cache stale
311346
312- If ` uvx mcp-server-python-docs ` runs an old version:
347+ After PyPI publishing, if ` uvx mcp-server-python-docs ` runs an old version:
313348
314349``` bash
315350uvx --reinstall mcp-server-python-docs
@@ -362,6 +397,9 @@ every release.
362397
363398Python documentation versions 3.10 through 3.14 are currently supported.
364399
400+ The server requires Python 3.12+ to run. Its generated documentation corpus can
401+ still index Python documentation versions 3.10 through 3.14.
402+
365403## License
366404
367405MIT
0 commit comments