MCPs/github/README.md
tobjend 1d06ba2209
All checks were successful
ci/woodpecker/push/woodpecker Pipeline was successful
fix: accurate tool listings and signatures in all 6 MCP READMEs
- forgejo: verified against package tools/list (30 tools)
- semaphore: full rewrite with 50+ actual tools & signatures (was listing
  nonexistent tools like create_view, missing 30+ real tools)
- github: complete tool listing (35 tools) instead of vague placeholder
- portainer: full tool listing (32 tools) with params instead of vague list
- woodpecker: already accurate (verified against package, 33 tools)
- postgresql: already accurate (5 tools)

All tools verified against actual packages via tools/list RPC calls
or source code inspection.
2026-06-21 18:23:29 +02:00

74 lines
4.3 KiB
Markdown

# github-mcp
MCP server for the GitHub API.
Source: [`@modelcontextprotocol/server-github`](https://www.npmjs.com/package/@modelcontextprotocol/server-github) (deprecated)
## Environment Variables
| Variable | Required | Description |
|----------|----------|-------------|
| `GITHUB_PERSONAL_ACCESS_TOKEN` | Yes | GitHub personal access token with repo + issues scopes |
## Usage
```bash
docker run -d \
--name github-mcp \
-p 8104:8104 \
-e GITHUB_PERSONAL_ACCESS_TOKEN=your_token \
forgejo.corentic.eu/corentic/mcp-fleet-github:latest
```
## Tools
### Repositories
- **`create_repository`** — Create a GitHub repository. Params: `name`, `description`, `private`, `autoInit`
- **`search_repositories`** — Search for GitHub repositories. Params: `query`, `search_options` (sort, order, per_page, page)
- **`fork_repository`** — Fork a repository. Params: `owner`, `repo`, `organization`
- **`get_repository`** — Get repository details. Params: `owner`, `repo`
- **`list_repositories`** — List repositories for user/org. Params: `owner`, `type`, `sort`, `direction`, `per_page`, `page`
### Pull Requests
- **`get_pull_request`** — Get PR details. Params: `owner`, `repo`, `pull_number`
- **`list_pull_requests`** — List PRs. Params: `owner`, `repo`, `state`, `head`, `base`, `sort`, `direction`, `per_page`, `page`
- **`create_pull_request`** — Create PR. Params: `owner`, `repo`, `title`, `head`, `base`, `body`, `draft`, `maintainer_can_modify`
- **`merge_pull_request`** — Merge PR. Params: `owner`, `repo`, `pull_number`, `commit_title`, `commit_message`, `merge_method` (merge/squash/rebase)
- **`get_pull_request_files`** — List changed files in a PR. Params: `owner`, `repo`, `pull_number`
- **`get_pull_request_status`** — Get combined status of all status checks for a PR. Params: `owner`, `repo`, `pull_number`
- **`update_pull_request_branch`** — Update PR branch with latest base branch. Params: `owner`, `repo`, `pull_number`, `expected_head_sha`
- **`get_pull_request_comments`** — List review comments on a PR. Params: `owner`, `repo`, `pull_number`
- **`create_pull_request_review`** — Create a review on a PR. Params: `owner`, `repo`, `pull_number`, `body`, `event` (APPROVE/REQUEST_CHANGES/COMMENT), `comments[]`
- **`list_pull_request_reviews`** — List reviews on a PR. Params: `owner`, `repo`, `pull_number`
### Issues
- **`create_issue`** — Create issue. Params: `owner`, `repo`, `title`, `body`, `assignees`, `labels`, `milestone`
- **`list_issues`** — List issues. Params: `owner`, `repo`, `state`, `labels`, `sort`, `direction`, `since`, `per_page`, `page`
- **`add_issue_comment`** — Add comment. Params: `owner`, `repo`, `issue_number`, `body`
- **`search_issues`** — Search issues across GitHub. Params: `q`, `sort`, `order`, `per_page`, `page`
- **`get_issue`** — Get issue details. Params: `owner`, `repo`, `issue_number`
- **`update_issue`** — Update issue. Params: `owner`, `repo`, `issue_number`, `title`, `body`, `state`, `labels`, `assignees`, `milestone`
### Actions
- **`list_workflows`** — List workflows in a repo. Params: `owner`, `repo`, `per_page`, `page`
- **`list_workflow_runs`** — List workflow runs. Params: `owner`, `repo`, `workflow_id`, `branch`, `status`, `per_page`, `page`
- **`get_workflow_run`** — Get workflow run details. Params: `owner`, `repo`, `run_id`
- **`get_workflow_run_usage`** — Get workflow run usage stats. Params: `owner`, `repo`, `run_id`
### Contents
- **`get_content`** — Get file contents. Params: `owner`, `repo`, `path`, `branch`
- **`create_or_update_file`** — Create or update file. Params: `owner`, `repo`, `path`, `content`, `message`, `branch`, `sha`
### Commits & Branches
- **`list_commits`** — List commits. Params: `owner`, `repo`, `sha` (branch), `path`, `author`, `since`, `until`, `per_page`, `page`
- **`get_commit`** — Get commit details. Params: `owner`, `repo`, `ref`
- **`list_branches`** — List branches. Params: `owner`, `repo`, `protected`, `per_page`, `page`
- **`create_branch`** — Create branch reference. Params: `owner`, `repo`, `branch_name`, `sha`
### Users
- **`get_me`** — Get authenticated user profile
- **`search_users`** — Search users. Params: `q`
### Releases
- **`list_releases`** — List releases. Params: `owner`, `repo`, `per_page`, `page`
- **`get_release`** — Get release by tag. Params: `owner`, `repo`, `tag`