gitea-mcp-server
Provides tools for interacting with Forgejo instances, enabling management of repositories, issues, pull requests, and other resources through the Forgejo API.
Provides tools for interacting with Gitea instances, enabling management of repositories, issues, pull requests, and other resources through the Gitea API.
Click on "Deploy Server".
Wait a few minutes for the server to deploy. Once ready, it will show a "Started" state.
In the chat, type
@followed by the MCP server name and your instructions, e.g., "@gitea-mcp-servershow open issues in my repository"
That's it! The server will respond to your query, and you can continue using it as needed.
Here is a step-by-step guide with screenshots.
Gitea MCP Server
Model Context Protocol server that provides ~400 auto-generated tools and resources for LLM agents to interact with Gitea and Forgejo instances. Built with FastMCP 3.x.
How it works
Your Gitea/Forgejo instance
│
▼ (Swagger/OpenAPI spec)
gitea-mcp-server
│ ┌────────────────────────────┐
│ │ Auto-generates ~400 tools │
│ │ from the API spec │
│ │ Adds lazy loading, scope │
│ │ filtering, annotations, │
│ │ workflow guides, resources │
│ └────────────────────────────┘
│
▼ (MCP protocol: stdio or HTTP)
Your LLM agent
│
├─ call_tool("gitea_issue_create_issue", ...)
├─ read_resource("gitea://repos/owner/repo")
└─ search_tools("list pull requests")Related MCP server: GitHub MCP Server
Requirements
Python 3.11+ and uv (package manager)
A Gitea or Forgejo instance (local or remote)
An API token with sufficient scopes (Settings → Applications → Generate Token)
Quick Start
git clone https://github.com/pxsloot/gitea-mcp-server.git && cd gitea-mcp-server
cp .env.example .env # then edit GITEA_URL and GITEA_TOKEN
uv sync
uv run python -m gitea_mcp_serverInstall from git (pip)
pip install git+https://github.com/pxsloot/gitea-mcp-server.git
gitea-mcpConfiguration
Env var | Default | Description |
| -- | Base URL of your Gitea/Forgejo instance |
| -- | API token (Settings → Applications → Generate Token) |
|
| Set |
| -- | Custom CA bundle path |
|
|
|
|
|
|
|
|
|
|
| Prefix for all tool names |
|
| Hide tools the token's scopes cannot use |
|
| Hide tools from |
| -- | YAML file with tool/resource exclude/include patterns |
|
| Default |
HTTP transport settings (TRANSPORT_TYPE=http):
HTTP_HOST— default127.0.0.1(setHTTP_HOST=0.0.0.0for remote access)HTTP_PORT— default 8080HTTP_PATH— default/mcpHTTP_CORS— defaults to origin fromGITEA_URL
Usage
Stdio (CLI clients)
uv run python -m gitea_mcp_serverHTTP (server mode)
TRANSPORT_TYPE=http uv run python -m gitea_mcp_server
# Health check: http://localhost:8080/health
# MCP endpoint: http://localhost:8080/mcpDocker
docker build --progress=plain -t gitea-mcp-server:latest .
docker run --rm -e GITEA_URL=... -e GITEA_TOKEN=... gitea-mcp-server:latestFor a local test Gitea instance: docker compose -f docker-compose.gitea.yml up -d
Design highlights
Most MCP servers hand-wrap a handful of endpoints. This one is generated from your instance's own API spec and shaped for how agents actually work: it stays in lockstep with Gitea, hides what your token cannot use, and spends the minimum context to be discovered.
Generated, not hand-wrapped
Tools and resources are generated from your instance's Swagger spec (converted 2.0 → 3.1) — there is no endpoint list to fall out of date — with a small hand-written discovery layer on top.
Tool and resource metadata ride one typed registration record, checkable over the raw MCP transport.
Built for agent context
Lazy loading — ~400 tools are found through BM25 search, not listed upfront.
Succinct by default —
formatanddetaillet an agent ask for exactly what it needs; large reads stay cheap.Scope-aware — tools and resources your token cannot use are hidden, not discovered as failures at call time.
Views that stay honest
Markdown views are anchored to the response schema, so a new or changed type renders correctly without a hand-written formatter.
One result pipeline writes both output channels, so every tool returns a consistent shape.
Gitea-native operations
Cached, URI-addressed MCP Resources for reads (
gitea://repos/{owner}/{repo}).Workflow guides — 16 guides for the concepts the API alone does not explain.
mcp_extensions.yaml— override tool metadata without code.stdio + HTTP transports, Docker, and OpenTelemetry observability.
The reasoning behind these choices — and the patterns to follow when extending the server — is in docs/DESIGN.md.
Development
# Tests
uv run pytest tests/unit/ -x -q
# Lint & format
uv run ruff check gitea_mcp_server/
uv run ruff format --check .
# Type-check
uv run mypy gitea_mcp_server/
# Coverage
uv run pytest --cov=gitea_mcp_serverSee docs/DESIGN.md, docs/ARCHITECTURE.md, and docs/DEVELOPMENT.md.
Contributing
Please read CONTRIBUTING.md for the full workflow. Start with AGENTS.md for project onboarding. The docs/SKILL.md has the developer handbook with conventions, workflows, and checklists for agent contributors.
Changelog
See CHANGELOG.md for release history.
Security
Report vulnerabilities to gitea-mcp-server@pxsloot.nl — see SECURITY.md.
License
MIT — see LICENSE.
This server cannot be deployed
Maintenance
Related MCP Connectors
Your org's AI agents, tasks, runs, search, and brain files as MCP tools and resources.
Git-backed platform for skills, tools, and context for AI agents
A registry of AI agent tools — MCP servers, APIs, CLIs, SDKs — kept current by automated ingestion.
AI-native git hosting — repos, PRs, issues, CI gates, and AI code review over MCP (60 tools).
Related MCP Servers
- AlicenseBqualityDmaintenanceEnables AI assistants to interact with Gitea repositories through intelligent tools for issue/PR management, workflow analysis, compliance checking, and content generation, plus 200+ CLI commands for complete CRUD operations.2267 npm6MIT
- FlicenseNot gradedqualityNot gradedmaintenanceEnables LLMs to interact with GitHub repositories, issues, pull requests, and workflows through the Model Context Protocol. It provides a comprehensive set of tools for repository management, issue tracking, code search, and CI/CD automation.-
- AlicenseAqualityAmaintenanceAn MCP server providing comprehensive Gitea API coverage with 186 tools for managing repositories, issues, pull requests, and CI/CD workflows. It enables autonomous AI agents to perform complex development and administrative tasks directly through a Gitea instance.7MIT

Tiger GitHub MCP Serverofficial
AlicenseNot gradedqualityCmaintenanceEnables LLMs to interact with GitHub via the Model Context Protocol, providing tools for repository management and other GitHub operations.31Apache 2.0