A Model Context Protocol (MCP) server that exposes GitHub's API for managing repositories, issues, pull requests, branches, releases, tags, branch protection, and repository rulesets.
mewcp-github is an MCP project maintained in the asthetech/mewcp-github repository. The maintainer describes its purpose as “A Model Context Protocol (MCP) server that exposes GitHub's API for managing repositories, issues, pull requests, branches, releases, tags, branch protection, and repository rulesets”. Read the project documentation for the complete scope.
Project documentation · Repository · Discovery listing. This profile records the public documentation checked on 2026-10-08.
Check the linked publisher documentation and your connected client's tool list. Names and availability can vary with the server version and account permissions.
| Tool | What it does |
|---|---|
| owner | string, required) — Repository owner |
| repo | string, required) — Repository name |
| private | boolean, optional, default: false) — Make repository private (default: False for public). |
| default_branch | string, optional) — Default branch name |
| auto_init | boolean, optional, default: false) — Auto-initialize with README (default: False). |
| gitignore_template | string, optional) — Gitignore template name. Example: 'Python', 'Node'. |
| org | string, required) — Organization name |
| path | string, optional, default: "/") — File or directory path |
| content | string, required) — File content to write. |
| message | string, required) — Commit message. |
| branch | string, required) — Branch name |
| sha | string, required) — Commit SHA |
| files_json | string, required) — JSON array of file objects with path and content keys. Example: '[{"path": "file1.txt", "content": "hello"}]' |
| author_name | string, optional) — Author name (optional). |
| author_email | string, optional) — Author email (optional). |
| query | string, required) — Search query using GitHub search syntax. |
| sort | string, optional, default: "created") — Sort by: created, updated, popularity, or long-running |
| order | string, optional, default: "desc") — Sort order: asc or desc. |
| page | integer, optional, default: 1) — Page number |
| perPage | integer, optional, default: 30) — Number of tags per page (1-100). |
| per_page | integer, optional, default: 30) — Results per page |
| state | string, optional) — 'open' or 'closed' (optional) |
| labels | string[], optional) — New list of labels (optional). |
| issue_number | integer, required) — Issue number |
| title | string, optional) — New title (optional) |
| body | string, required) — Reply text |
| assignees | string[], optional) — New list of assignees (optional). |
| milestone | integer, optional) — Milestone ID (optional). |
| state_reason | string, optional) — Reason when closing: completed, not_planned (optional). |
| contributor_usernames | string, required) — GitHub username(s) to filter by. Comma-separated for multiple. |
| repo_type | string, optional, default: "all") — Filter by type: all, public, or private. |
| method | string, required) — create, submit_pending, delete_pending, resolve_thread, or unresolve_thread |
| sub_issue_id | integer, required) — ID of the sub-issue |
| replace_parent | boolean, optional, default: false) — Replace current parent when adding |
| after_id | integer, optional) — Sub-issue ID to position after |
| before_id | integer, optional) — Sub-issue ID to position before |
| base_ref | string, optional) — Git reference to start from (optional). |
| custom_instructions | string, optional) — Additional context for Copilot (optional). |
| pull_number | integer, required) — Pull request number |
| direction | string, optional, default: "desc") — Sort direction: asc or desc |
| base | string, optional) — New base branch (optional) |
| head | string, required) — Branch containing changes |
| draft | boolean, optional) — Mark as draft/ready (optional) |
| maintainer_can_modify | boolean, optional) — Allow maintainer edits (optional) |
| reviewers | string[], optional) — Request reviews from users (optional) |
| merge_method | string, optional, default: "merge") — 'merge', 'squash', or 'rebase' |
| commit_title | string, optional) — Custom commit title (optional) |
| commit_message | string, optional) — Commit message details (optional) |
| expected_head_sha | string, optional) — Expected HEAD SHA (optional) |
| commit_id | string, optional) — Commit SHA (required for create) |
| event | string, optional) — APPROVE, REQUEST_CHANGES, or COMMENT |
| thread_id | string, optional) — Thread ID for thread operations |
| comment_id | integer, required) — ID of the comment to reply to |
| author | string, optional) — Filter by author login |
| since | string, optional) — ISO 8601 date: YYYY-MM-DD |
| until | string, optional) — ISO 8601 date: YYYY-MM-DD |
| include_diff | boolean, optional, default: true) — Include file changes in diff |
| ref | string, optional) — Branch, tag, or commit SHA |
| tag | string, required) — Tag name (e.g., 'v1.0.0') |
| enforce_admins | boolean, required) — Enforce for admins |
| required_status_checks | object, optional) — Required status checks config |
| required_pull_request_reviews | object, optional) — Required PR reviews config |
| restrictions | object, optional) — User/team restrictions |
| required_linear_history | boolean, optional, default: false) — Require linear history |
| allow_force_pushes | boolean, optional) — Allow force pushes |
| allow_deletions | boolean, optional, default: false) — Allow deletions |
| block_creations | boolean, optional, default: false) — Block creations |
| required_conversation_resolution | boolean, optional, default: false) — Require conversation resolution |
| lock_branch | boolean, optional, default: false) — Lock branch |
| allow_fork_syncing | boolean, optional, default: false) — Allow fork syncing |
| dismiss_stale_reviews | boolean, optional) — Dismiss stale reviews |
| require_code_owner_reviews | boolean, optional) — Require code owner reviews |
| required_approving_review_count | integer, optional) — Required approving reviews |
| require_last_push_approval | boolean, optional) — Require last push approval |
| dismissal_restrictions | object, optional) — Dismissal restrictions |
| includes_parents | boolean, optional, default: true) — Include parent rulesets |
| ruleset_id | integer, required) — Ruleset ID |
| enforcement | string, optional) — active, evaluate, or disabled |
| target | string, optional) — Updated target: branch, tag, or push |
| conditions | object, optional) — Updated conditions |
| rules | object[], optional) — Updated rules |
| bypass_actors | object[], optional) — Updated bypass actors |
Read, search and edit files inside allowed directories with the Model Context Protocol reference Filesystem server.
Retrieve version-aware library documentation and code examples with Context7 MCP, using resolve-library-id and query-docs.
Use Microsoft’s Playwright MCP server to navigate pages, inspect accessibility snapshots, fill forms and capture browser screenshots.
Connect GitHub MCP to repositories, issues and pull requests with GitHub’s hosted service or a locally run server.
Use the Supabase MCP server to inspect database schemas, query project data and retrieve docs through a project-scoped connection.
Search Linear issues and projects, inspect work context and manage updates through Linear’s hosted MCP server with OAuth.