概要
AI に Gitea を読み取らせましょう。リポジトリの検索、コメント・ファイル・差分・レビュー付きの Issue とプルリクエストのトリアージ、リリースと組織の確認、ブランチ・コミット・ファイルの読み取りができます。gitea.com でも自分の Gitea サーバーでも、アクセストークンで利用できます。読み取り専用です。
ガイド付きセットアップ
Gitea を Claude、ChatGPT、Copilot に 2 分で接続
AnythingMCP Cloud の無料トライアルを始め、ガイド付きセットアップで Gitea を接続して、MCP URL を AI アシスタントに追加します。コードもサーバーの運用も不要です。
クレジットカード不要 · 7日間の試用 · セルフホストの選択肢あり
こう聞いてみよう
Gitea のサンプルプロンプト
プロンプトをクリックでコピー。Claude / ChatGPT / Cursor / Gemini / Copilot / OpenClaw に貼り付けて、このコネクターで実行できます。
Claude は AI のため誤ることがあります。回答をご確認ください。
💡 インストール不要。cloud.anythingmcp.com をそのままご利用ください。 サインインして Connectors → Gitea をクリックし、認証情報を貼り付けて MCP API キーを発行すれば完了です。Docker も
git cloneもローカルサーバーも不要です。
Gitea
AI に Gitea を読み取らせましょう。リポジトリの検索、コメント・ファイル・差分・レビュー付きの Issue とプルリクエストのトリアージ、リリースと組織の確認、ブランチ・コミット・ファイルの読み取りができます。gitea.com でも自分の Gitea サーバーでも、アクセストークンで利用できます。読み取り専用です。
セットアップ
セットアップには約 2 分かかります。gitea.com または自分の Gitea サーバーのアカウントと、Repository、Issue、Organization、User の Read 権限を持つアクセストークンが必要です。
- Gitea でアバターをクリックし、Settings、Applications の順に開きます。Manage Access Tokens で名前(例: "AnythingMCP")を入力し、Repository、Issue、Organization、User を Read に設定します(スコープは
read:repository、read:issue、read:organization、read:userです)。トークンスコープのない Gitea バージョンでは、トークンはそのユーザーの全権限を持ちます。 - Generate Token をクリックし、表示されたトークンをすぐにコピーします。Gitea はトークンを一度しか表示しません。
GITEA_TOKENにはトークンだけを貼り付け、先頭にtokenやBearerを付けないでください。コネクタがtokenを自動で付加します。 GITEA_URLには Gitea を開くときのアドレスを設定します。例:https://gitea.comやhttps://git.example.com。/api/v1や末尾のスラッシュは付けません。Gitea がサブパスで動作している場合は、そのまま残します(https://example.com/gitea)。- コネクタをインストールして
gitea_get_current_userを実行します。トークンの所有ユーザーが表示され、アドレスとトークンが正しく動作することを確認できます。
読み取り専用: 30 個のツールはすべて読み取りのみを行います。コネクタは Gitea 内で何かを作成・変更・削除することはできず、AI はトークンのユーザーが見られる内容だけを見ることができます。
読み取れる内容: リポジトリ(インスタンス全体の検索、または自分・組織・他のユーザーの一覧)、コメント・ラベル・マイルストーン付きの Issue、変更ファイル・差分・コミット・レビュー付きのプルリクエスト、ノートと添付ファイル付きのリリース、メンバーとチーム付きの組織、ブランチ、コミット、ファイルツリー、ファイルの内容。gitea_search_issues は、あなたに割り当てられた、あなたが作成した、またはあなたのレビュー待ちの Issue とプルリクエストを、すべてのリポジトリから検索します。
リポジトリと番号: すべてのリポジトリは owner(ユーザーまたは組織)と repo を指定します。これは https://host/owner/repo の 2 つの部分に当たります。Issue とプルリクエストはリポジトリごとに 1 つの番号体系を共有します。Gitea はプルリクエストを Issue としても扱うため、gitea_get_issue と gitea_list_issue_comments はプルリクエスト番号でも動作し、タイトル、ラベル、会話を取得できます。コード側の情報は gitea_get_pull_request、gitea_get_pull_request_files、gitea_get_pull_request_diff で取得します。
自分のサーバー: 内部ホスト(プライベート IP や内部名)上の Gitea には、同じネットワーク上のセルフホスト版 AnythingMCP が必要で、ホスト名を SSRF_ALLOWED_HOSTS に設定しないと、送信ガードが呼び出しをブロックします。Forgejo と、それを稼働させている Codeberg は同じ API v1 ルートを提供しているため、https://codeberg.org のようなアドレスでも動作するはずです。このコネクタは Gitea API 向けに作られています。
制限: Gitea サーバーは 1 ページあたり既定で 30 件、最大 50 件(MAX_RESPONSE_ITEMS 設定)を返すため、AI は上限を増やすのではなく次のページを要求します。200 KB を超えるプルリクエストの差分とファイル内容は切り詰められます。残りはプルリクエストの html_url を開いて確認してください。
よくあるエラー: 401 は、トークンが間違っている、期限切れ、削除された、または GITEA_URL が別のサーバーを指していることを意味します。403 は、呼び出しに必要なスコープがトークンにないことを意味します(Gitea がメッセージ内でスコープ名を示します)。例えば Issue には read:issue、組織には read:organization が必要です。404 は、リポジトリ、Issue、ファイルが存在しないか、ユーザーから見えないことを意味します。Gitea は非公開リソースを隠すために 404 を返します。422 は、不足しているまたは無効なフィールドを示します。
このコネクタは、Issue、コメント、プルリクエスト、リリース、ブランチ、ファイルの作成や編集、マージや承認を行わず、Actions の実行とワークフロー、パッケージ、Wiki、通知、Webhook、デプロイキー、管理機能も対象外です。
前提条件: GITEA_URL、GITEA_TOKEN
コネクタをローカルにインストール
curl -fsSL https://raw.githubusercontent.com/HelpCode-ai/anythingmcp/main/docker-compose.quickstart.yml -o docker-compose.yml
printf 'JWT_SECRET=%s\nENCRYPTION_KEY=%s\n' "$(openssl rand -hex 32)" "$(openssl rand -hex 32)" > .env
docker compose up -d
http://localhost:3000/connectors/store を開き、Gitea を選んで、前提条件に記載した環境変数を貼り付けます。
利用可能なツール
| ツール | 機能 |
|---|---|
gitea_get_current_user | トークンの所有者である Gitea ユーザーを取得します: id、login、full_name、email、is_admin、html_url |
gitea_search_repositories | トークンから見えるインスタンス全体のリポジトリを、キーワード、トピック、種類、アーカイブ状態で検索します: full_name、description… |
gitea_list_my_repositories | トークンのユーザーが所有するリポジトリを一覧表示します。full_name、description、default_branch、private、archived、stars_count… |
gitea_list_organization_repositories | トークンのユーザーが見られる組織のリポジトリを一覧表示します: full_name、description、default_branch、private、archived… |
gitea_list_user_repositories | トークンのユーザーが見られる、指定ユーザー所有のリポジトリを一覧表示します: full_name、description、default_branch、private、archived… |
gitea_get_repository | 1 つのリポジトリを取得します: description、default_branch、private、archived、fork、empty、size、stars_count、forks_count、open_issues_count… |
gitea_list_issues | リポジトリの Issue をフィルター付きで一覧表示します: number、title、state、labels、assignees、milestone、comments count、created_at、updated_at など… |
gitea_search_issues | トークンのユーザーが見られるすべてのリポジトリを横断して Issue とプルリクエストを検索します。割り当て済み、作成者、メンション済みなどで絞り込めます… |
gitea_get_issue | 番号を指定して 1 つの Issue を取得します: title、body(Markdown)、state、labels、assignees、milestone、due_date、comments count、created_at、closed_at… |
gitea_list_issue_comments | Issue のコメントを古い順に一覧表示します: id、body(Markdown)、user、created_at、updated_at、html_url |
gitea_list_labels | リポジトリのラベルを一覧表示します: id、name、color、description |
gitea_list_milestones | リポジトリのマイルストーンを一覧表示します: id、title、state、description、due_on、open_issues、closed_issues |
gitea_list_pull_requests | リポジトリのプルリクエストを一覧表示します: number、title、state、merged、mergeable、head と base のブランチ、user、labels、created_at、updated_at… |
gitea_get_pull_request | 番号を指定して 1 つのプルリクエストを取得します: title、body(Markdown)、state、merged、mergeable、head と base(branch、sha、repository)、additions… |
gitea_get_pull_request_files | プルリクエストが変更するファイルを一覧表示します: filename、previous_filename、status(added、modified、deleted、renamed)、additions、deletions など… |
gitea_get_pull_request_diff | プルリクエストの unified diff をプレーンテキストで読み取り、実際の変更をレビューできます |
gitea_list_pull_request_commits | プルリクエストのコミットを一覧表示します: sha、message、author、date、html_url |
gitea_list_pull_request_reviews | プルリクエストのレビューを一覧表示します: id、reviewer、state(APPROVED、REQUEST_CHANGES、COMMENT、PENDING)、body、comments_count、submitted_at |
gitea_list_releases | リポジトリのリリースを新しい順に一覧表示します: tag_name、name、body(Markdown のリリースノート)、draft、prerelease、published_at、添付… |
gitea_get_latest_release | ドラフトでもプレリリースでもない最新のリリースを取得します: tag_name、name、body(リリースノート)、published_at、assets など… |
gitea_get_release_by_tag | タグ名を指定して 1 つのリリースを取得します: name、body(リリースノート)、draft、prerelease、published_at、assets、html_url |
gitea_list_my_organizations | トークンのユーザーが所属する組織を一覧表示します: name、full_name、description、visibility、website |
gitea_get_organization | 1 つの組織を取得します: name、full_name、description、website、location、visibility、avatar_url |
gitea_list_organization_members | トークンのユーザーが見られる組織のメンバーを一覧表示します: login、full_name、html_url |
gitea_list_organization_teams | 組織のチームを一覧表示します: id、name、description、permission、チームが全リポジトリを対象とするかどうか |
gitea_list_branches | リポジトリのブランチを一覧表示します: name、最新コミット(id、message、timestamp)、protected、プッシュ可能なユーザー |
gitea_list_commits | リポジトリのコミットを新しい順に一覧表示します: sha、message、author、date、html_url |
gitea_get_commit | ブランチ、タグ、または sha を指定して 1 つのコミットを取得します: message、author、committer、date、parents、html_url、files 指定時は変更ファイルと統計 |
gitea_get_tree | ブランチ、タグ、またはコミット時点のリポジトリのファイルとフォルダーを一覧表示します: path、type(blob はファイル、tree はフォルダー)、mode、size |
gitea_get_file_content | ブランチ、タグ、またはコミット時点のリポジトリのファイルをテキストとして読み取ります(ref を省略すると既定のブランチ) |
次のステップ
このガイドは役に立ちましたか?