chore: prepare launch metadata and drafts#22
Conversation
📝 WalkthroughWalkthroughThis PR completes the v0.1.1 release cycle by synchronizing the package version across source code and tests, introducing MCP registry metadata, updating user-facing documentation with a concrete demo and comparison guidance, formalizing the release procedure, and preparing launch materials for community engagement. Changesv0.1.1 Release Preparation
Estimated code review effort🎯 2 (Simple) | ⏱️ ~12 minutes Poem
🚥 Pre-merge checks | ✅ 5✅ Passed checks (5 passed)
✏️ Tip: You can configure your own custom pre-merge checks in the settings. ✨ Finishing Touches📝 Generate docstrings
🧪 Generate unit tests (beta)
Comment |
There was a problem hiding this comment.
Actionable comments posted: 2
Caution
Some comments are outside the diff and can’t be posted inline due to platform limitations.
⚠️ Outside diff range comments (1)
docs/launch/reddit-posts.md (1)
6-68:⚠️ Potential issue | 🟡 Minor | ⚡ Quick winAdd the missing
r/ClaudeAIdraft variant.This file currently includes
r/Pythonandr/LocalLLaMA, but the launch objective calls out ar/ClaudeAIadaptation too.🤖 Prompt for AI Agents
Verify each finding against current code. Fix only still-valid issues, skip the rest with a brief reason, keep changes minimal, and validate. In `@docs/launch/reddit-posts.md` around lines 6 - 68, Add a new "## r/ClaudeAI" launch variant mirroring the existing "## r/Python" and "## r/LocalLLaMA" sections: include a short Title line (e.g., "Local MCP server for official Python docs, built for coding agents"), a brief paragraph describing the ClaudeAI-specific framing, the same repo URL, the same test-from-source uvx install snippet, and a concise bullet list of key features (version-aware stdlib lookup across 3.10–3.14, exact symbol lookup via objects.inv, section-level retrieval, local SQLite+FTS index, no API keys/read-only tools) plus a short call for feedback — match the tone/format of the other two headers ("## r/Python" and "## r/LocalLLaMA") so the file contains three parallel launch variants.
🤖 Prompt for all review comments with AI agents
Verify each finding against current code. Fix only still-valid issues, skip the
rest with a brief reason, keep changes minimal, and validate.
Inline comments:
In `@docs/launch/show-hn.md`:
- Around line 18-29: Add a concrete demo query to the Show HN draft to satisfy
the launch objective: insert a short “Demo query” paragraph into
docs/launch/show-hn.md (e.g., right after the bulleted “What it does:” list or
before “It is intentionally narrow.”) that shows a real user query and expected
behavior—for example, a query asking for a specific stdlib symbol and version
like “Show the asyncio.create_task docs for Python 3.11, with the section
summary and first paragraph,” and describe that the system will resolve the
exact symbol, fetch the section-level docs with truncation/pagination, and
indicate the returned version. Ensure the demo is explicit, mentions a Python
version (3.10–3.14), and uses plain text so readers can copy-paste it.
In `@README.md`:
- Around line 80-88: Update the README so all example invocations are consistent
with the pre-PyPI usage: replace or annotate the later plain invocations of "uvx
mcp-server-python-docs ..." (seen elsewhere in the file) to include the
pre-release qualifier "--from
git+https://github.com/ayhammouda/python-docs-mcp-server.git" (i.e., use "uvx
--from git+https://github.com/ayhammouda/python-docs-mcp-server.git
mcp-server-python-docs ...") or add a short note stating those specific examples
require the PyPI release; update the occurrences that match "uvx
mcp-server-python-docs" so they're either prefixed with "--from git+..." or
clearly marked as post-PyPI only.
---
Outside diff comments:
In `@docs/launch/reddit-posts.md`:
- Around line 6-68: Add a new "## r/ClaudeAI" launch variant mirroring the
existing "## r/Python" and "## r/LocalLLaMA" sections: include a short Title
line (e.g., "Local MCP server for official Python docs, built for coding
agents"), a brief paragraph describing the ClaudeAI-specific framing, the same
repo URL, the same test-from-source uvx install snippet, and a concise bullet
list of key features (version-aware stdlib lookup across 3.10–3.14, exact symbol
lookup via objects.inv, section-level retrieval, local SQLite+FTS index, no API
keys/read-only tools) plus a short call for feedback — match the tone/format of
the other two headers ("## r/Python" and "## r/LocalLLaMA") so the file contains
three parallel launch variants.
🪄 Autofix (Beta)
Fix all unresolved CodeRabbit comments on this PR:
- Push a commit to this branch (recommended)
- Create a new PR with the fixes
ℹ️ Review info
⚙️ Run configuration
Configuration used: defaults
Review profile: CHILL
Plan: Pro Plus
Run ID: 77bc2778-c1de-4b8d-af78-2238d2e8bece
📒 Files selected for processing (7)
.github/RELEASE.mdREADME.mddocs/launch/reddit-posts.mddocs/launch/show-hn.mdserver.jsonsrc/mcp_server_python_docs/__init__.pytests/test_packaging.py
| What it does: | ||
|
|
||
| - builds a local SQLite/FTS index from official Python docs | ||
| - resolves exact symbols from Python `objects.inv` | ||
| - retrieves section-level docs with truncation and pagination | ||
| - supports version-aware lookup across Python 3.10 through 3.14 | ||
| - runs locally, read-only, with no API keys | ||
|
|
||
| It is intentionally narrow. Use Context7 or generic retrieval for broad | ||
| third-party docs and web research. Use this when you want official stdlib docs | ||
| with less token waste. | ||
|
|
There was a problem hiding this comment.
Add one explicit demo query to the Show HN draft.
The post explains the approach well, but it still misses a concrete demo query (requested in the launch objective), which weakens the “show” part of Show HN.
Suggested addition
What it does:
@@
- runs locally, read-only, with no API keys
+
+Demo query:
+- "In Python 3.13, what does asyncio.TaskGroup change compared to older asyncio patterns?"📝 Committable suggestion
‼️ IMPORTANT
Carefully review the code before committing. Ensure that it accurately replaces the highlighted code, contains no missing lines, and has no issues with indentation. Thoroughly test & benchmark the code to ensure it meets the requirements.
| What it does: | |
| - builds a local SQLite/FTS index from official Python docs | |
| - resolves exact symbols from Python `objects.inv` | |
| - retrieves section-level docs with truncation and pagination | |
| - supports version-aware lookup across Python 3.10 through 3.14 | |
| - runs locally, read-only, with no API keys | |
| It is intentionally narrow. Use Context7 or generic retrieval for broad | |
| third-party docs and web research. Use this when you want official stdlib docs | |
| with less token waste. | |
| What it does: | |
| - builds a local SQLite/FTS index from official Python docs | |
| - resolves exact symbols from Python `objects.inv` | |
| - retrieves section-level docs with truncation and pagination | |
| - supports version-aware lookup across Python 3.10 through 3.14 | |
| - runs locally, read-only, with no API keys | |
| Demo query: | |
| - "In Python 3.13, what does asyncio.TaskGroup change compared to older asyncio patterns?" | |
| It is intentionally narrow. Use Context7 or generic retrieval for broad | |
| third-party docs and web research. Use this when you want official stdlib docs | |
| with less token waste. |
🤖 Prompt for AI Agents
Verify each finding against current code. Fix only still-valid issues, skip the
rest with a brief reason, keep changes minimal, and validate.
In `@docs/launch/show-hn.md` around lines 18 - 29, Add a concrete demo query to
the Show HN draft to satisfy the launch objective: insert a short “Demo query”
paragraph into docs/launch/show-hn.md (e.g., right after the bulleted “What it
does:” list or before “It is intentionally narrow.”) that shows a real user
query and expected behavior—for example, a query asking for a specific stdlib
symbol and version like “Show the asyncio.create_task docs for Python 3.11, with
the section summary and first paragraph,” and describe that the system will
resolve the exact symbol, fetch the section-level docs with
truncation/pagination, and indicate the returned version. Ensure the demo is
explicit, mentions a Python version (3.10–3.14), and uses plain text so readers
can copy-paste it.
| Until the first PyPI release is published, run from GitHub: | ||
|
|
||
| ```bash | ||
| uvx --from git+https://github.com/ayhammouda/python-docs-mcp-server.git mcp-server-python-docs --version | ||
| ``` | ||
|
|
||
| After PyPI publishing is complete, the package will also run directly with | ||
| `uvx`: | ||
|
|
There was a problem hiding this comment.
Make command guidance fully consistent with the pre-PyPI state.
This section correctly says to use uvx --from git+... before publishing, but later commands still use plain uvx mcp-server-python-docs ... without a post-PyPI qualifier (for example, Line 264 and Line 274), which can mislead current users into failing commands.
🤖 Prompt for AI Agents
Verify each finding against current code. Fix only still-valid issues, skip the
rest with a brief reason, keep changes minimal, and validate.
In `@README.md` around lines 80 - 88, Update the README so all example invocations
are consistent with the pre-PyPI usage: replace or annotate the later plain
invocations of "uvx mcp-server-python-docs ..." (seen elsewhere in the file) to
include the pre-release qualifier "--from
git+https://github.com/ayhammouda/python-docs-mcp-server.git" (i.e., use "uvx
--from git+https://github.com/ayhammouda/python-docs-mcp-server.git
mcp-server-python-docs ...") or add a short note stating those specific examples
require the PyPI release; update the occurrences that match "uvx
mcp-server-python-docs" so they're either prefixed with "--from git+..." or
clearly marked as post-PyPI only.
Summary
Closes #11.
Closes #12.
Closes #13.
Closes #14.
Closes #19.
Closes #20.
0.1.1and makes packaging tests assert the CLI version againstpyproject.toml.server.json.docs/launch/.0.1.1so the release docs stop lying. Minor miracle.Tests
python3 -m json.tool server.jsonserver.jsonvalidated againsthttps://static.modelcontextprotocol.io/schemas/2025-12-11/server.schema.jsonuv run ruff check src/ tests/uv run pyright src/uv run pytest --tb=short -q— 264 passeduv run mcp-server-python-docs --version—mcp-server-python-docs 0.1.1Blockers / notes
uvx mcp-server-python-docspath works before publication.server.jsonincludes PyPI package metadata and validates against the current schema, but final official Registry submission/validation should wait until Fix PyPI trusted publishing and publish the package #10 publishes the package.Summary by CodeRabbit
Documentation
Chores
0.1.1across package metadata and configuration.