Pod

Yes, this is on purpose. Pod is built for agents, so the default page is plain HTML.
Human? View the normal website.
Agent? You probably prefer /mcp/parkour-mcp/issues.md or /mcp/parkour-mcp/issues.json, or Pod over MCP.

Reported issues for parkour-mcp

Pod holds 6 of 6 problems reported by people outside the maintainer team. Issues filed by the project's own owners, members and collaborators are excluded entirely — a maintainer's release checklist is not a warning to a prospective user.

Back to parkour-mcp.

Most discussed

perf: MarkdownSplitter has no wall-clock deadline; pathological input hangs web_fetch_sections post-size-cap relaxation

Summary

guarded_fetch wraps only the HTTP portion of a fetch in asyncio.timeout(60s). Everything after it — HTML→markdown conversion, MarkdownSplitter.chunk_indices, tantivy index build — runs synchronously with no deadline. For realistic documents this is fine (WHATWG HTML-LS: ~4.6s pipeline per the captured pathological baseline), but degenerate input can push the splitter into character- level fallback with pathologically slow runtime.

A 6 MiB HTML body consisting of a single `

Read the thread · 2026-04-16 · closed · 1 comment

perf: consume structured metadata in html_to_markdown() once upstream visitor+metadata bug resolves

Status update (2026-04-10): holding pattern pending upstream response

After landing the initial port on branch perf/html-to-markdown-rust and running the regression benchmark suite, we discovered additional defects in html-to-markdown 3.1.0 beyond the single visitor+metadata bug the original port was working around. Upstream filings now cover four separate issues:

Read the thread · 2026-04-11 · closed · 1 comment

Tool responses doubled on the wire: SDK auto-wraps str returns into structuredContent

Summary

Every parkour tool response is transmitted twice in each CallToolResult. Tools are annotated -> str, but the MCP SDK (mcp 1.23.3) auto-wraps primitive return types into a structured-output model, so the full payload ships in both content (a TextContent block) and structuredContent ({"result": "<same markdown>"}).

Mechanism

__init__.py#main calls mcp.add_tool(func, ...) without structured_output=, so it defaults to None. The SDK treats None as "generate st

Read the thread · 2026-05-16 · closed · 0 comments

fix(markdown): max_sections=100 hides relevant sections in long-document TOC dump

Summary

UAT against Claude Desktop on RFC 9110 looked up `section="15. Security Considerations"`. The number was wrong — Security Considerations is §17 in RFC 9110. But the agent had no good way to discover that, because both the failed-section TOC fallback and `web_fetch_sections` itself cap their output at `max_sections=100` (`parkour_mcp/markdown.py:584`). RFC 9110 has ~311 sections, so the §15-17 range that the agent needed to disambiguate is below the cutoff and never visib

Read the thread · 2026-04-16 · closed · 0 comments

fix(ietf): rfc-editor.org URLs trap callers in metadata-only fast path; "use .html URL" hint loops back to interceptor

Summary

UAT against Claude Desktop on RFC 9110 (HTTP Semantics) found that the IETF fast path on www.rfc-editor.org/rfc/rfc{N}* URLs is a one-way trap: every suffix (.html, .txt, .xml, bare) resolves to the same RFC Editor metadata response, the metadata's own full_text hint points the caller back into the interceptor, and there is no in-band path to the document body or a section TOC. The Datatracker mirror under /doc/html/rfc{N} is the only practical escape hatch and is not adv

Read the thread · 2026-04-16 · closed · 0 comments

fix: section= returns header-only output on long Wikipedia list pages

Summary

_apply_semantic_truncation in parkour_mcp/markdown.py:274 returns chunks[0] from MarkdownSplitter.chunks() and discards the rest. Whenever the content starts with a heading and the body would overflow the chunk budget, MarkdownSplitter cleaves the heading into its own chunk (chunk 0 = "## Film", ~7 chars) and puts the body in subsequent chunks. The current code keeps only the heading.

User-visible symptom: passing section="Film" to any fast path on a long Wikipedia li

Read the thread · 2026-04-13 · closed · 0 comments

Most recent

The remaining reports are on the project's issue tracker.