From 45fa192924572a81f837c848911118acdc4983c8 Mon Sep 17 00:00:00 2001 From: WDI-Ideas Date: Tue, 7 Apr 2026 23:42:42 +0530 Subject: [PATCH] docs: Gitea MCP needs 1.25+ actions/runs API or nginx proxy to tasks Made-with: Cursor --- readme.md | 23 +++++++++++++++++++++++ 1 file changed, 23 insertions(+) diff --git a/readme.md b/readme.md index ed6dbb2..1452bae 100644 --- a/readme.md +++ b/readme.md @@ -159,6 +159,29 @@ pm2 reload --- +# Gitea MCP + Actions API (Cursor) + +Official **gitea-mcp** (and the Go SDK it uses) calls **`GET /api/v1/repos/{owner}/{repo}/actions/runs`** to list workflow runs and job logs. + +- **Gitea 1.24.x** exposes **`/actions/tasks`** for the same data but **does not** register **`/actions/runs`** (returns `404 page not found`). Tools like `actions_run_read` → `list_runs` / `list_jobs` will fail until the server is updated or a proxy workaround is applied. +- **Gitea 1.25+** includes **`ListWorkflowRuns`** at **`/actions/runs`** — upgrade **`git.wdipl.com`** to **1.25 or newer** so MCP can list runs and fetch logs without hacks. + +**Reverse-proxy workaround (until upgrade):** map list-runs requests to tasks (response shape is compatible for listing): + +```nginx +# Only for the repository runs list endpoint (no trailing /{run}) +location ~ ^/api/v1/repos/([^/]+)/([^/]+)/actions/runs$ { + proxy_pass http://127.0.0.1:3000/api/v1/repos/$1/$2/actions/tasks$is_args$args; + # ... usual proxy headers to your Gitea backend +} +``` + +Adjust `proxy_pass` to your Gitea HTTP upstream. Redeploy/reload nginx, then restart Cursor. + +**Cursor:** set a user or system environment variable **`GITEA_ACCESS_TOKEN`** (PAT with repo + Actions read scope) and use **`${env:GITEA_ACCESS_TOKEN}`** in `~/.cursor/mcp.json` — do not store tokens in that file. + +--- + # ⚠️ Notes * Use **either password OR SSH key**