mirror of
https://gitea.com/gitea/gitea-mcp.git
synced 2025-08-23 22:33:05 +00:00
125 lines
3.4 KiB
Markdown
125 lines
3.4 KiB
Markdown
# Gitea MCP Server
|
|
|
|
**Gitea MCP Server** is an integration plugin designed to connect Gitea with Model Context Protocol (MCP) systems. This allows for seamless command execution and repository management through an MCP-compatible chat interface.
|
|
|
|
## 🚧Installation
|
|
|
|
### 📥Download the official binary release
|
|
|
|
You can download the official release from [here](https://gitea.com/gitea/gitea-mcp/releases).
|
|
|
|
### 🔧Build from Source
|
|
|
|
You can download the source code by cloning the repository using Git:
|
|
|
|
```bash
|
|
git clone https://gitea.com/gitea/gitea-mcp.git
|
|
```
|
|
|
|
Before building, make sure you have the following installed:
|
|
|
|
- make
|
|
- Golang (Go 1.24 or later recommended)
|
|
|
|
Then run:
|
|
|
|
```bash
|
|
make build
|
|
```
|
|
|
|
### 📁Add to PATH
|
|
|
|
After building, copy the binary gitea-mcp to a directory included in your system's PATH. For example:
|
|
|
|
```bash
|
|
cp gitea-mcp /usr/local/bin/
|
|
```
|
|
|
|
## 🚀Usage
|
|
|
|
This example is for Cursor, you can also use plugins in VSCode.
|
|
To configure the MCP server for Gitea, add the following to your MCP configuration file:
|
|
|
|
- **stdio mode**
|
|
|
|
```json
|
|
{
|
|
"mcpServers": {
|
|
"gitea": {
|
|
"command": "gitea-mcp",
|
|
"args": [
|
|
"-t", "stdio",
|
|
"--host", "https://gitea.com"
|
|
// "--token", "<your personal access token>"
|
|
],
|
|
"env": {
|
|
// "GITEA_HOST": "https://gitea.com",
|
|
"GITEA_ACCESS_TOKEN": "<your personal access token>"
|
|
}
|
|
}
|
|
}
|
|
}
|
|
```
|
|
|
|
- **sse mode**
|
|
|
|
```json
|
|
{
|
|
"mcpServers": {
|
|
"gitea": {
|
|
"url": "http://localhost:8080/sse"
|
|
}
|
|
}
|
|
}
|
|
```
|
|
|
|
> [!NOTE]
|
|
> You can provide your Gitea host and access token either as command-line arguments or environment variables.
|
|
> Command-line arguments have the highest priority
|
|
|
|
Once everything is set up, try typing the following in your MCP-compatible chatbox:
|
|
|
|
```text
|
|
list all my repositories
|
|
```
|
|
|
|
## ✅Available Tools
|
|
|
|
The Gitea MCP Server supports the following tools:
|
|
|
|
| Tool | Scope | Description |
|
|
|:------:|:-------:|:------------:|
|
|
|get_my_user_info|User|Get the information of the authenticated user|
|
|
|create_repo|Repository|Create a new repository|
|
|
|fork_repo|Repository|Fork a repository|
|
|
|list_my_repos|Repository|List all repositories owned by the authenticated user|
|
|
|create_branch|Branch|Create a new branch|
|
|
|delete_branch|Branch|Delete a branch|
|
|
|list_branches|Branch|List all branches in a repository|
|
|
|list_repo_commits|Commit|List all commits in a repository|
|
|
|get_file|File|Get the content of a file|
|
|
|create_file|File|Create a new file|
|
|
|update_file|File|Update an existing file|
|
|
|delete_file|File|Delete a file|
|
|
|get_issue_by_index|Issue|Get an issue by its index|
|
|
|list_repo_issues|Issue|List all issues in a repository|
|
|
|create_issue|Issue|Create a new issue|
|
|
|create_issue_comment|Issue|Create a comment on an issue|
|
|
|get_pull_request_by_index|Pull Request|Get a pull request by its index|
|
|
|list_repo_pull_requests|Pull Request|List all pull requests in a repository|
|
|
|create_pull_request|Pull Request|Create a new pull request|
|
|
|search_users|User|Search for users|
|
|
|search_org_teams|Organization|Search for teams in an organization|
|
|
|search_repos|Repository|Search for repositories|
|
|
|get_gitea_mcp_server_version|Server|Get the version of the Gitea MCP Server|
|
|
|
|
## 🐛Debugging
|
|
|
|
To enable debug mode, add the `-d` flag when running the Gitea MCP Server with sse mode:
|
|
|
|
```sh
|
|
./gitea-mcp -t sse --token <your personal access token> -d
|
|
```
|
|
|
|
Enjoy exploring and managing your Gitea repositories via chat!
|