Gitea uses different ID namespaces for tasks vs jobs. Now searches
the /actions/jobs endpoint and matches by html_url containing the
run_number to find the correct job_id for logs retrieval.
- Fetches logs by run_number (or defaults to most recent run)
- Returns last 50 lines by default (configurable via tail_lines)
- Handles Gitea's task/job ID mapping automatically
- Updates API reference with correct workflow endpoints
- Check content-type header before parsing as JSON
- Return raw text wrapped in dict for non-JSON responses
- Also accept both GITEA_URL and GITEA_HOST env vars
Health check no longer validates Gitea connectivity - this is checked
when tools are actually called. Fixes Docker health check failures when
container networking can't resolve external Gitea URL.
- 6 curated MCP tools (get_my_user_info, search_repos, list_my_repos, get_repo, list_repo_issues, list_repo_commits)
- API pass-through tool (gitea_api_call) for complete API coverage
- Curated API reference resource (gitea://api-reference)
- Health check endpoint
- Docker support with health checks