Files
Jonathan Miller fb36a209a9
Generic: Project CI / Tests (pull_request) Blocked by required conditions
Universal: CodeQL Analysis / Security Scan Summary (pull_request) Blocked by required conditions
Universal: PR Check / Build RC Package (pull_request) Blocked by required conditions
Universal: PR Check / Report Issues (pull_request) Blocked by required conditions
Generic: Repo Health / Scripts governance (pull_request) Blocked by required conditions
Generic: Repo Health / Repository health (pull_request) Blocked by required conditions
Generic: Repo Health / Report Issues (pull_request) Blocked by required conditions
MCP: Standards Compliance / Compliance Summary (pull_request) Blocked by required conditions
MCP: Copilot Agent / Run Copilot Coding Agent (pull_request) Failing after 2s
Universal: PR Check / Branch Policy (pull_request) Failing after 2s
Universal: Changelog Validation / Validate CHANGELOG.md (pull_request) Failing after 4s
Generic: Repo Health / Site Health (pull_request) Has been skipped
Generic: Repo Health / Access control (pull_request) Successful in 1s
Generic: Repo Health / Scripts governance (push) Blocked by required conditions
Generic: Repo Health / Repository health (push) Blocked by required conditions
Generic: Repo Health / Report Issues (push) Blocked by required conditions
Universal: PR Check / Validate PR (pull_request) Successful in 4s
MCP: Standards Compliance / Secret Scanning (pull_request) Successful in 3s
Universal: Auto Version Bump / Version Bump (push) Successful in 4s
MCP: Standards Compliance / License Header Validation (pull_request) Failing after 5s
Universal: Build & Release / Promote to RC (pull_request) Has been skipped
Universal: Build & Release / Build & Release Pipeline (pull_request) Has been skipped
MCP: Standards Compliance / Repository Structure Validation (pull_request) Failing after 4s
MCP: Standards Compliance / Coding Standards Check (pull_request) Failing after 4s
MCP: Standards Compliance / Workflow Configuration Check (pull_request) Failing after 4s
MCP: Standards Compliance / Documentation Quality Check (pull_request) Successful in 4s
Generic: Project CI / Lint & Validate (pull_request) Successful in 17s
MCP: Standards Compliance / README Completeness Check (pull_request) Failing after 4s
MCP: Standards Compliance / Git Repository Hygiene (pull_request) Successful in 4s
MCP: Standards Compliance / Script Integrity Validation (pull_request) Successful in 6s
MCP: Standards Compliance / Line Length Check (pull_request) Failing after 9s
MCP: Standards Compliance / File Naming Standards (pull_request) Successful in 9s
MCP: Standards Compliance / Insecure Code Pattern Detection (pull_request) Successful in 7s
MCP: Standards Compliance / Code Complexity Analysis (pull_request) Failing after 3s
MCP: Standards Compliance / Dead Code Detection (pull_request) Successful in 4s
MCP: Standards Compliance / File Size Limits (pull_request) Successful in 3s
MCP: Standards Compliance / TODO/FIXME Tracking (pull_request) Successful in 3s
MCP: Standards Compliance / Binary File Detection (pull_request) Successful in 4s
MCP: Standards Compliance / Version Consistency Check (pull_request) Successful in 46s
Universal: CodeQL Analysis / Analyze (javascript) (pull_request) Failing after 58s
MCP: Standards Compliance / Broken Link Detection (pull_request) Successful in 4s
Universal: CodeQL Analysis / Analyze (actions) (pull_request) Failing after 1m3s
MCP: Standards Compliance / Accessibility Check (pull_request) Successful in 3s
MCP: Standards Compliance / API Documentation Coverage (pull_request) Successful in 3s
MCP: Standards Compliance / Performance Metrics (pull_request) Successful in 4s
MCP: Standards Compliance / Code Duplication Detection (pull_request) Successful in 41s
Universal: Auto-Assign / Assign unassigned issues and PRs (pull_request_target) Successful in 2s
MCP: Standards Compliance / Terraform Configuration Validation (pull_request) Successful in 9s
Generic: Repo Health / Site Health (push) Has been skipped
Generic: Repo Health / Access control (push) Successful in 2s
Branch Cleanup / Delete merged branch (pull_request) Has been skipped
MCP: Standards Compliance / Unused Dependencies Check (pull_request) Successful in 47s
MCP: Standards Compliance / Dependency Vulnerability Scanning (pull_request) Successful in 50s
MCP: Standards Compliance / Enterprise Readiness Check (pull_request) Successful in 41s
MCP: Standards Compliance / Repository Health Check (pull_request) Successful in 40s
feat: add wiki create, edit, and delete tools
Adds three new MCP tools for full wiki CRUD support:
- gitea_wiki_page_create: create wiki pages with markdown content
- gitea_wiki_page_edit: edit existing pages (with optional rename)
- gitea_wiki_page_delete: delete wiki pages

Content is automatically base64-encoded to match the Gitea API contract.
2026-06-18 19:44:48 -05:00

8.2 KiB

gitea-api-mcp

License: GPL-3.0-or-later MCP Node TypeScript

MCP server for Gitea REST API v1 operations -- 61 tools for complete Gitea instance management from Claude Code and other MCP clients.

Table of Contents

Background

gitea-api-mcp is a Model Context Protocol (MCP) server that exposes 61 tools for interacting with the Gitea REST API v1. It supports multiple named connections, allowing you to manage several Gitea instances from a single server. Authentication uses Gitea's native Authorization: token header format.

Install

Prerequisites

  • Node.js >= 20.0.0
  • A Gitea instance with API access
  • A Gitea access token (Settings > Applications > Generate Token)

Build from Source

git clone https://git.mokoconsulting.tech/MokoConsulting/gitea-api-mcp.git
cd gitea-api-mcp
npm install
npm run build

Configuration

Create ~/.gitea-api-mcp.json:

{
  "defaultConnection": "moko",
  "connections": {
    "moko": {
      "baseUrl": "https://git.mokoconsulting.tech",
      "token": "your-gitea-access-token",
      "insecure": false
    }
  }
}

Config Fields

Field Type Required Description
baseUrl string Yes Base URL of your Gitea instance
token string Yes Gitea API access token
insecure boolean No Skip TLS verification (self-signed certs)

Override the config path with the GITEA_API_MCP_CONFIG environment variable.

Multi-Connection Example

{
  "defaultConnection": "moko",
  "connections": {
    "moko": {
      "baseUrl": "https://git.mokoconsulting.tech",
      "token": "token-for-moko-gitea"
    },
    "github-mirror": {
      "baseUrl": "https://gitea.example.com",
      "token": "token-for-mirror"
    }
  }
}

Usage

Claude Code Registration

Add to your Claude Code MCP config (~/.claude/claude_desktop_config.json or project-level .mcp.json):

{
  "mcpServers": {
    "gitea-moko": {
      "command": "node",
      "args": ["/path/to/gitea-api-mcp/dist/index.js"]
    }
  }
}

Multi-Connection Usage in Claude Code

When using multiple connections, pass the connection parameter to any tool:

Use gitea_repo_get with connection "github-mirror" to get owner/repo details.

If connection is omitted, the defaultConnection is used.

Tools

User / Auth (3 tools)

Tool Description
gitea_me Get the authenticated user info
gitea_user_orgs List organizations the authenticated user belongs to
gitea_user_repos List repositories owned by the authenticated user

Repositories (8 tools)

Tool Description
gitea_repo_get Get repository details
gitea_repo_create Create a new repository
gitea_repo_delete Delete a repository
gitea_repo_edit Edit repository settings
gitea_repo_fork Fork a repository
gitea_repo_search Search repositories
gitea_org_repos List repositories in an organization
gitea_list_connections List configured Gitea connections

File Contents (5 tools)

Tool Description
gitea_file_get Get file contents from a repository
gitea_dir_get Get directory contents (file listing) from a repository
gitea_file_create_or_update Create or update a file in a repository
gitea_file_delete Delete a file from a repository
gitea_tree_get Get the git tree for a repository (recursive file listing)

Branches (4 tools)

Tool Description
gitea_branches_list List branches in a repository
gitea_branch_get Get a specific branch
gitea_branch_create Create a new branch
gitea_branch_delete Delete a branch

Commits (2 tools)

Tool Description
gitea_commits_list List commits in a repository
gitea_commit_get Get a specific commit

Issues (7 tools)

Tool Description
gitea_issues_list List issues in a repository
gitea_issue_get Get a single issue by number
gitea_issue_create Create a new issue
gitea_issue_update Update an issue
gitea_issue_comments_list List comments on an issue
gitea_issue_comment_create Add a comment to an issue
gitea_issue_search Search issues across all repositories

Labels (2 tools)

Tool Description
gitea_labels_list List labels in a repository
gitea_label_create Create a label

Milestones (2 tools)

Tool Description
gitea_milestones_list List milestones in a repository
gitea_milestone_create Create a milestone

Pull Requests (6 tools)

Tool Description
gitea_pulls_list List pull requests
gitea_pull_get Get a single pull request
gitea_pull_create Create a pull request
gitea_pull_merge Merge a pull request
gitea_pull_files List files changed in a pull request
gitea_pull_review_create Create a pull request review

Releases (5 tools)

Tool Description
gitea_releases_list List releases
gitea_release_get Get a single release by ID
gitea_release_latest Get the latest release
gitea_release_create Create a new release
gitea_release_delete Delete a release

Tags (3 tools)

Tool Description
gitea_tags_list List tags
gitea_tag_create Create a tag
gitea_tag_delete Delete a tag

Actions (2 tools)

Tool Description
gitea_actions_runs_list List workflow runs for a repository
gitea_actions_run_get Get a specific workflow run

Organizations (3 tools)

Tool Description
gitea_org_get Get organization details
gitea_org_teams_list List teams in an organization
gitea_org_members_list List members of an organization

Users (2 tools)

Tool Description
gitea_user_get Get a user profile
gitea_users_search Search users

Webhooks (2 tools)

Tool Description
gitea_webhooks_list List webhooks for a repository
gitea_webhook_create Create a webhook

Wiki (5 tools)

Tool Description
gitea_wiki_pages_list List wiki pages
gitea_wiki_page_get Get a wiki page
gitea_wiki_page_create Create a new wiki page
gitea_wiki_page_edit Edit an existing wiki page
gitea_wiki_page_delete Delete a wiki page

Notifications (2 tools)

Tool Description
gitea_notifications_list List notifications for the authenticated user
gitea_notifications_read Mark all notifications as read

Generic (2 tools)

Tool Description
gitea_api_request Make a raw API request to any Gitea v1 endpoint
gitea_list_connections List configured Gitea connections

Contributing

See CONTRIBUTING.md for development guidelines.

License

GPL-3.0-or-later -- Copyright (C) 2026 Moko Consulting

Revision History

Version Date Description
0.0.1 2026-05-07 Initial release with 61 tools