A side-by-side look at the Gitea and Git MCP Server MCP servers: transport, auth, tools, quality signals, and the config to install either one in Claude, Cursor, Windsurf or VS Code.
Verdict: choose Gitea for version control work; choose Git MCP Server for version control as a local process. You can also run both side by side in one mcpServers block.
FORGEJO_TOKEN_READ_ONLY.whoami, version, list_my_repos.GIT_TOKEN.get_file_contents, get_repository_tree, push_files.Rows where the two servers differ are marked.
| Spec | ||
|---|---|---|
| Category | Version Control | Version Control |
| Quality signal | 45/100 · Fair | 52/100 · Good |
| Install command | Not confirmed yet | Confirmed |
| Transport | — | Local subprocess (stdio) |
| Auth | Not declared | Not declared |
| Pricing | Not declared | Not declared |
| Required env vars | FORGEJO_TOKEN_READ_ONLY | GIT_TOKEN |
| Verified owner | Community listing | Community listing |
| GitHub stars | 0 | 0 |
| Directory activity | 0 views 0 installs 0 upvotes | 2 views 0 installs 0 upvotes |
| Tools | 46 | 23 |
| Full listing | View Gitea | View Git MCP Server |
whoamiThe authenticated user (verifies the token)versionThis MCP server's version, the connected instance's version, and its `flavor` (`forgejo` or `gitea`)list_my_reposYour repositories (auto-paginated, slimmed)list_issuesIssues in `owner/repo` (open by default)list_pull_requestsPull requests in `owner/repo` (open by default)get_repoOne repository's details (incl. default branch, size in KiB, and the `has_*` unit toggles), slimmedlist_branchesBranches in `owner/repo` (auto-paginated, slimmed to name/commit/protected)list_commitsCommits on a ref (`owner/repo`, optional `sha` and `path`; auto-paginated). Slimmed to sha, subject, author, date and signature state — the raw objects carry base64 `signature`/`payload` blobs and per-commit `files`/`statsget_commitOne commit (`owner/repo/sha`), same fields. `signature` is `verified`, `unverified` or `unsigned`; `signer` on the first, `reason` on the secondlist_keysAn account's SSH and GPG keys (omit `username` for yourself). `verified` decides whether a signature can verify at all — but **Gitea omits the field on SSH keys**, so absent means unreported, not unverified. GPG entries carry the addresses the key covers and whether each is activatedlist_branch_protectionsA repository's protection rules: what each enforces (`require_signed_commits`, direct pushes, approvals, status checks) for a branch name or glob. Allowlists omitted; an empty list means nothing is protectedget_commit_statusesIndividual statuses against a commit/branch/tag: context, status, description, `target_url`. `get_combined_status` rolls these into one verdictget_file_contentsGet the contents of a file or directory from a repositoryget_repository_treeList files and directories in a repository. Use recursive=true to get full tree.push_filesPush multiple files to a repository in a single commit. Supports create, update, delete, and move actions.create_branchCreate a new branch in the repository. Use this before making code changes to work on a separate branch.list_branchesList branches in a repository. Optionally search for specific branches.list_commitsList commits in a repository. Filter by branch, path, date range, or author.search_codeSearch for code in a repository. Returns matching files and lines.get_issueGet details of a specific issue in a projectlist_issuesList issues in a project with optional filterscreate_issueCreate a new issue in a projectupdate_issueUpdate an existing issue in a projectget_pull_requestGet details of a pull request (merge request in GitLab)Paste either block (or both) into your client config, e.g. claude_desktop_config.json or ~/.cursor/mcp.json. We only show a config when the install command is confirmed.
No confirmed install command for Gitea yet — follow the setup steps linked from its listing page rather than a guessed package name.
{
"mcpServers": {
"git-mcp-server": {
"command": "npx",
"args": [
"-y",
"@raytien/git-mcp-server"
],
"env": {
"GIT_TOKEN": "YOUR_GIT_TOKEN_HERE"
}
}
}
}