Forgejo MCP Server
@goern
About Forgejo MCP Server
MIRROR ONLY!! This Model Context Protocol (MCP) server provides tools and resources for interacting with the Forgejo (specifically Codeberg.org) REST API.
Basic information
Config
No standard config provided
This server doesn't expose a parseable MCP config block in its README. See the repository for install instructions.
RepositoryTools
50Get information about the authenticated user
Check and list user notifications
Get detailed info on a single notification thread
Mark a single notification thread as read
Acknowledge all notifications
Filter notifications scoped to a single repository
Mark all notifications in a specific repo as read
Search for users
List all repositories you own
Create a new repository
Fork a repository
Search for repositories
List all branches in a repository
Create a new branch
Delete a branch
List a repository's branch protection rules. Bounded by `page` (1-based) + `limit` (page size); the response echoes `page`/`limit` so callers can fetch the next page.
Get a single rule by `rule` name
Create a rule. Requires `branch_name`; `status_check_contexts` is a comma-separated list of required checks (e.g. `"ci/build,ci/test"`).
Edit a rule by `rule` name. Only fields you pass change; omitted fields are left unchanged.
Delete a rule by `rule` name
Get the content of a file. Optional `start_line`/`end_line` request a 1-indexed inclusive line range (clamps to file extent; ignored when `with_metadata=true`).
Create a new file
Update an existing file
Delete a file
List commits in a repository
List issues in a repository
Get a specific issue
Create a new issue
Add labels to an issue (requires numeric label IDs)
Remove labels from an issue (requires numeric label IDs)
Update an existing issue (requires numeric milestone ID)
Open or close an issue
List milestones with their IDs (use with `update_issue`)
List labels with their IDs. Merges org-level labels for org-owned repos (set `include_org_labels=false` to opt out). Each entry carries a `scope` field (`"repo"` or `"org"`).
List organization-level labels with their IDs (use with `add_issue_labels`, `remove_issue_labels`).
Create a repository label (`name`, `color` as 6-digit hex, optional `description`). Returns numeric `id` for immediate use in `add_issue_labels`.
Edit a repository label (PATCH — only supplied fields change: `name`, `color`, `description`).
Delete a repository label. Refuses by default when the label is in use (reports count); set `delete_mode=force` to override.
Get a single repository label by numeric `id`.
Create an organization-level label. Same fields as `create_repo_label`.
Edit an organization-level label (PATCH semantics).
Delete an organization-level label. In-use guard counts across visible org repos (best-effort); `delete_mode=force` overrides.
Get a single organization-level label by numeric `id`.
Overview
What is Forgejo MCP Server?
Forgejo MCP Server is an integration plugin that connects Forgejo with any MCP-compatible AI assistant (Claude, Cursor, VS Code extensions). It enables natural language management of repositories, issues, pull requests, files, and more.
How to use Forgejo MCP Server?
Install via Go (go install .), download a pre-built binary, use Nix (nix-shell -p forgejo-mcp), or run the container image. Obtain a personal access token from your Forgejo instance (Settings → Applications → Access Tokens). Configure your MCP client with stdio (command line) or streamable HTTP/SSE mode, providing the Forgejo URL and token.
Key features of Forgejo MCP Server
- Manage issues, pull requests, and comments
- Browse, create, update, and delete files
- List and manage branches and branch protection rules
- Trigger and inspect Actions workflow runs
- Track time on issues and manage stopwatches
- Handle issue/comment attachments (upload, download, delete)
- Support single‑tenant and multi‑tenant HTTP modes
- Multiple transport options: stdio, streamable HTTP, SSE
Use cases of Forgejo MCP Server
- List all repositories owned by the authenticated user
- Create an issue with a title and description
- Show open pull requests in a specific repository
- Get the contents of a file from a given branch
- View the latest Actions workflow runs in a repository
FAQ from Forgejo MCP Server
How do I install the server?
You can install via Go (git clone && go install), download a binary from the releases page, use Nix (nix-shell -p forgejo-mcp), or run the OCI container image.
What runtime or dependencies are required?
The Go installation requires Go and that $GOPATH/bin is in your PATH. The binary and container have no additional runtime dependencies.
Where does my data reside?
All data stays on your Forgejo instance. The server acts as a bridge; no data is stored externally.
What transport protocols are supported?
The server supports stdio (default), streamable HTTP (recommended for remote/Claude.ai), and legacy SSE modes.
How is authentication handled?
You provide a Forgejo personal access token as the FORGEJO_ACCESS_TOKEN environment variable (or via --token). In multi‑tenant HTTP mode, each client supplies its own token via the Authorization header.
More Other MCP servers
MCP Go 🚀
mark3labsA Go implementation of the Model Context Protocol (MCP), enabling seamless integration between LLM applications and external data sources and tools.
Awesome Mcp Servers
punkpeyeA collection of MCP servers.
Nginx UI
0xJackyYet another WebUI for Nginx
Activepieces
activepiecesAI Agents & MCPs & AI Workflow Automation • (~400 MCP servers for AI agents) • AI Automation / AI Agent with MCPs • AI Workflows & AI Agents • MCPs for AI Agents
XcodeBuildMCP
cameroncookeA Model Context Protocol (MCP) server and CLI that provides tools for agent use when working on iOS and macOS projects.
Comments