# @sumirati/mcp-github

Model Context Protocol (MCP) server for GitHub REST API using 5-Tool Hybrid Architecture

- **Type:** MCP server
- **Trust:** 60/100 (B), scored on the package rubric
- **Verification:** community-indexed — nobody has claimed this listing
- **Version:** 2.0.0
- **Author:** sumirati@buggycode.net
- **License:** MIT
- **npm:** @sumirati/mcp-github
- **Source:** https://github.com/sumirati/mcp-github
- **Compatible clients:** claude-code, cursor, copilot, gemini (basis: transport)

## Trust

60/100 (B), scored on the package rubric
- Publisher verified: no
- Install scripts: nothing suspicious found
- Prompt-injection scan: not run
- Obfuscation scan: not run
- Evidence age: 0 days

## Security scan

- **Status:** clean
- **Scanned:** 2026-10-17T21:25:27.988Z
- **Version scanned:** 2.2.0
- **CVEs:** none found by OSV at scan time

## Tools

40 declared. Statically extracted from the shipped source — a floor on the surface, not a census.
- `list_workflows` — List GitHub Actions CI/CD workflow files configured in a repository (.github/workflows). Use to discover workflow names and IDs before triggering or inspecting 
- `list_workflow_run_artifacts` — List artifacts produced by a specific GitHub Actions workflow run, including file size, download archive URLs, and expiration timestamps. Use to discover genera
- `get_workflow_run_artifact` — Retrieve metadata and download archive URL for a specific GitHub Actions build artifact by its numeric artifact ID. Use when downloading build deliverables or i
- `list_workflow_runs` — List workflow execution runs with status, conclusion ('success', 'failure'), triggering event, and commit SHA. Use to check CI/CD pipeline health or find run ID
- `get_workflow_run` — Get detailed status, timing, and conclusion for a specific workflow execution run. Use when monitoring CI pipeline completion.
- `list_workflow_run_jobs` — List all individual jobs and step breakdown within a workflow run. Use to identify which specific job or step failed during a build.
- `get_job_logs` — Fetch plain text execution logs for an Actions job with smart failure extraction and ANSI stripping. Behavioral safety: scans for errors/panics to extract failu
- `trigger_workflow` — Dispatch a workflow run on a branch or tag via workflow_dispatch event with custom inputs. Requires write permissions and GITHUB_READ_ONLY=false. The target wor
- `cancel_workflow_run` — Cancel a queued or currently executing GitHub Actions workflow run. Requires write permissions and GITHUB_READ_ONLY=false.
- `rerun_workflow` — Re-execute all jobs in a completed or failed GitHub Actions workflow run. Requires write permissions and GITHUB_READ_ONLY=false.
- `list_collaborators` — List collaborators who have access to a repository along with their assigned roles and permissions. Use to audit team access or check user memberships.
- `get_collaborator_permission` — Check a specific user's exact permission level ('admin', 'maintain', 'write', 'triage', 'read', or 'none') on a repository. Use to verify authorization before a
- `add_collaborator` — Add or invite a GitHub user to collaborate on a repository with a specified permission level. If the user is not an organization member, this sends a collaborat
- `remove_collaborator` — Remove a collaborator from a repository, revoking their direct access. Requires admin permissions and GITHUB_READ_ONLY=false.
- `list_commits` — List repository commit history chronologically with upstream filtering (sha, path, author, since, until) and capped pagination (max 100). For viewing actual lin
- `get_commit` — Get detailed commit metadata, file modification statistics, and unified diffs for a specific commit SHA or ref. Use when reviewing code changes in a commit or d
- `create_commit` — Create an atomic Git commit with multiple created, updated, or deleted files using the GitHub Git Trees API. Use when refactoring, applying multi-file code chan
- `push_files` — Alias for 'create_commit': atomically commit additions, modifications, or deletions to multiple files in a single Git commit via the GitHub Git Database API. Re
- `get_repository_topics` — Get all topic tags associated with a GitHub repository. Use to inspect project categories and discoverability keywords.
- `set_repository_topics` — Replace all topic tags on a repository with a new array of topic strings. Requires write permissions and GITHUB_READ_ONLY=false.
- `list_repository_webhooks` — List configured event webhooks on a repository with target URLs, active status, and subscribed event triggers.
- `get_repository_webhook` — Get detailed configuration of a specific repository webhook by ID, including delivery URL and subscribed events.
- `get_commit_status` — Get the combined status check state (pending, success, failure) and individual check runs for a commit SHA or branch ref.
- `create_commit_status` — Set or update a commit status check (pending, success, failure, error) on a specific commit SHA. Requires write permissions and GITHUB_READ_ONLY=false.
- `list_dependabot_alerts` — List Dependabot vulnerability alerts for a repository, including affected package, severity (critical, high, medium, low), and patch advisory.
- `list_gists` — List code snippets and gists owned by the authenticated user with file summaries. Use to locate code snippet IDs before reading or editing.
- `get_gist` — Get full source code contents, files, and description of a specific GitHub gist by ID. Use to inspect standalone code snippets or configuration templates.
- `create_gist` — Create a new public or secret GitHub gist with one or more files. Requires write permissions and GITHUB_READ_ONLY=false.
- `update_gist` — Update an existing gist's description or modify/rename/delete individual files within the gist. Requires write permissions and GITHUB_READ_ONLY=false.
- `delete_gist` — Permanently delete a gist by its identifier. Requires write permissions and GITHUB_READ_ONLY=false.
- `github_find_actions`
- `github_execute_action`
- `get_file_contents` — Read current file contents, extract symbol outlines, slice line ranges, or list directory entries from a repository at a specified git ref without cloning. Auto
- `get_repository` — Get comprehensive repository metadata, visibility, description, default branch, HTML URL, star count, fork count, and open issues count for an owner/repo. Eager
- `list_issues` — Search and filter repository issue tickets with upstream indexed parameters (state, labels, assignee, creator, mentioned, milestone, since) and capped paginatio
- `get_issue` — Get full details of a specific issue ticket, including markdown body, assignees, milestone, state reason, and comment count. Use when investigating a bug report
- `create_issue`
- `update_issue`
- `list_issue_comments`
- `create_issue_comment`

## Install

**Verdict: review** — Installable, but 1 thing to check first: No publisher has proved control of this listing; it is indexed, not vouched for.
**Cautions** (coverage gaps and advisories — never blocking)
- No publisher has proved control of this listing; it is indexed, not vouched for.
**Config** (claude-code):
```json
"{\n  \"mcpServers\": {\n    \"mcp-github\": {\n      \"command\": \"npx\",\n      \"args\": [\n        \"-y\",\n        \"@sumirati/mcp-github\"\n      ],\n      \"env\": {\n        \"GITHUB_PERSONAL_ACCESS_TOKEN\": \"<YOUR_GITHUB_PERSONAL_ACCESS_TOKEN>\"\n      }\n    }\n  }\n}"
```
**Credentials it will ask for** (names only — Forge never holds a value):
- `GITHUB_PERSONAL_ACCESS_TOKEN` — GitHub Personal Access Token (required)
Placeholders only. Forge never holds, brokers, or transmits a credential value — replace each <YOUR_NAME> in your own config file. Do not send a value back to Forge; no Forge endpoint accepts one.
- This entry needs 1 credential (1 required). The generated config carries placeholders, so it will fail in the editor rather than at runtime if they are left unset.

## Blast radius

Extensive blast radius — deletes data; holds an api key.
- Floor 53, ceiling 53 (tier: extensive)
- This is impact, not likelihood. A high radius is not a defect: a filesystem server is supposed to write files. It is never part of the trust score.

## Machine-readable views of this entry

- Signed JSON: https://forgeregistry.com/api/v1/packages/%40sumirati%2Fmcp-github
- Install plan: https://forgeregistry.com/api/v1/packages/%40sumirati%2Fmcp-github/install-plan
- Alternatives: https://forgeregistry.com/api/v1/alternatives/%40sumirati%2Fmcp-github
- HTML page: https://forgeregistry.com/registry/%40sumirati%2Fmcp-github
- MCP: POST https://forgeregistry.com/api/mcp → `forge_get_package` / `forge_install_plan`

## About this document

Generated by Forge (https://forgeregistry.com) — a compact rendering of the same record served, signed, at the JSON URL above. Trust and scan facts are the registry's own measurements; anything Forge did not measure is named as unmeasured rather than omitted.
