gitea-mcp: pull_request_review_write reply_comment returns HTTP 405 on this instance #92

Closed
opened 2026-08-10 21:30:38 +00:00 by Claude · 0 comments
Collaborator

Summary

pull_request_review_write method: "reply_comment" fails with HTTP 405 against this repo's Gitea instance (git.dev.rkdr.net), for every comment_id tried. The gitea-prs skill (plugins/gitea/skills/gitea-prs/references/reviews.md) documents this method as working, based on the live-verified tool schema — the schema exposes reply_comment/resolve_thread/unresolve_thread on pull_request_review_write, but at least reply_comment doesn't actually work against this server.

Repro

Called on PR #91, 11 times, once per existing review comment ID (1418, 1408, 1410, 1411, 1406, 1413, 1414, 1415, 1416, 1417, 1425) — all 11 failed identically:

mcp__gitea__pull_request_review_write
  method: "reply_comment"
  owner: "Defame1297"
  repo: "holocron"
  pull_number: 91
  comment_id: 1418
  body: "..."
MCP error -32603: reply to review comment 1418 on Defame1297/holocron/pr/91 err: unknown API error: 405
Request: '/api/v1/repos/Defame1297/holocron/pulls/91/comments/1418/replies' with 'POST' method and '' body

Same error shape for all 11, only comment_id varies. Note the request body logged as empty ('') despite body being passed non-empty — worth checking whether the MCP server is failing to serialize the request body before the 405 even happens, or whether that's just how the error wrapper logs it.

Investigation

  • plugins/gitea/docs/research/docs/gitea/api-reference.md (gitea-mcp v1.3.0 research, sourced from operation/*.go in https://gitea.com/gitea/gitea-mcp) has no mention of a reply/thread-reply endpoint for PR review comments — only thread IDs for notifications (get/mark_read, unrelated to PR review threads). This suggests reply_comment/resolve_thread/unresolve_thread were added to gitea-mcp after v1.3.0 (our research snapshot), or the route it calls doesn't exist on whatever Gitea server version git.dev.rkdr.net runs.
  • Never tried resolve_thread/unresolve_thread — unknown whether they share this bug (same underlying reply/thread feature area).
  • Workaround used in PR #91: fell back to issue_write method: "add_comment" (single top-level PR comment) instead of threaded inline replies. Works fine, just loses the inline-thread UX.

Suggested next steps

  1. Check installed gitea-mcp version vs. Gitea server (git.dev.rkdr.net) version — likely an API mismatch (gitea-mcp assumes an endpoint/route the server's Gitea version doesn't expose, or vice versa).
  2. If confirmed a gitea-mcp bug (wrong route), file upstream at https://gitea.com/gitea/gitea-mcp.
  3. Either way, update plugins/gitea/skills/gitea-prs/references/reviews.md's Gotchas section to document this as a known-broken method with the top-level-comment fallback, so future agents don't retry it blind.

Impact

Low — a documented fallback exists (top-level PR comment). Not blocking any workflow, just degrades inline-review-reply UX.

## Summary `pull_request_review_write method: "reply_comment"` fails with HTTP 405 against this repo's Gitea instance (`git.dev.rkdr.net`), for every `comment_id` tried. The `gitea-prs` skill (`plugins/gitea/skills/gitea-prs/references/reviews.md`) documents this method as working, based on the live-verified tool schema — the schema exposes `reply_comment`/`resolve_thread`/`unresolve_thread` on `pull_request_review_write`, but at least `reply_comment` doesn't actually work against this server. ## Repro Called on PR #91, 11 times, once per existing review comment ID (1418, 1408, 1410, 1411, 1406, 1413, 1414, 1415, 1416, 1417, 1425) — all 11 failed identically: ``` mcp__gitea__pull_request_review_write method: "reply_comment" owner: "Defame1297" repo: "holocron" pull_number: 91 comment_id: 1418 body: "..." ``` ``` MCP error -32603: reply to review comment 1418 on Defame1297/holocron/pr/91 err: unknown API error: 405 Request: '/api/v1/repos/Defame1297/holocron/pulls/91/comments/1418/replies' with 'POST' method and '' body ``` Same error shape for all 11, only `comment_id` varies. Note the request body logged as empty (`''`) despite `body` being passed non-empty — worth checking whether the MCP server is failing to serialize the request body before the 405 even happens, or whether that's just how the error wrapper logs it. ## Investigation - `plugins/gitea/docs/research/docs/gitea/api-reference.md` (gitea-mcp v1.3.0 research, sourced from `operation/*.go` in `https://gitea.com/gitea/gitea-mcp`) has no mention of a reply/thread-reply endpoint for PR review comments — only thread IDs for notifications (`get`/`mark_read`, unrelated to PR review threads). This suggests `reply_comment`/`resolve_thread`/`unresolve_thread` were added to gitea-mcp after v1.3.0 (our research snapshot), or the route it calls doesn't exist on whatever Gitea server version `git.dev.rkdr.net` runs. - Never tried `resolve_thread`/`unresolve_thread` — unknown whether they share this bug (same underlying reply/thread feature area). - Workaround used in PR #91: fell back to `issue_write method: "add_comment"` (single top-level PR comment) instead of threaded inline replies. Works fine, just loses the inline-thread UX. ## Suggested next steps 1. Check installed `gitea-mcp` version vs. Gitea server (`git.dev.rkdr.net`) version — likely an API mismatch (gitea-mcp assumes an endpoint/route the server's Gitea version doesn't expose, or vice versa). 2. If confirmed a gitea-mcp bug (wrong route), file upstream at `https://gitea.com/gitea/gitea-mcp`. 3. Either way, update `plugins/gitea/skills/gitea-prs/references/reviews.md`'s Gotchas section to document this as a known-broken method with the top-level-comment fallback, so future agents don't retry it blind. ## Impact Low — a documented fallback exists (top-level PR comment). Not blocking any workflow, just degrades inline-review-reply UX.
Claude added the Kind/Bug
Priority
Medium
3
labels 2026-08-10 21:30:38 +00:00
Defame1297 added the
Reviewed
Won't Fix
3
label 2026-09-21 20:05:42 +00:00
Sign in to join this conversation.