GitHub MCP Server
<div align="center">
# š GitHub Meta MCP Server
**Manage GitHub repositories with natural language via the Model Context Protocol.**
An MCP server that lets Claude (or any MCP-compatible client) create and configure GitHub repositories from plain-English commands.
[](https://modelcontextprotocol.io)
[](https://nodejs.org)
[](#license)
</div>
---
## What it does
Talk to Claude. Claude talks to this server. This server talks to GitHub.
> *"Create a private repo called 'lunchbox' with topics ai, agents, mcp and the homepage thelunchbox.app"*
ā Repo created. Topics set. Homepage set. README initialized.
## Tools exposed
### `create_repo`
Create or update a GitHub repository via natural language. Handles:
- **Repo name** (auto-generated from description if not specified)
- **Visibility** (public / private)
- **Description**
- **Topics / tags** (multiple, comma-separated)
- **Homepage URL**
- **Auto-init with README**
## Install
```bash
git clone https://github.com/joewilsonai/github-meta-mcp-server
cd github-meta-mcp-server
npm install
npm run build
```
## Configure in Claude Desktop
Edit your `claude_desktop_config.json`:
```json
{
"mcpServers": {
"github-meta": {
"command": "node",
"args": ["/absolute/path/to/github-meta-mcp-server/build/index.js"],
"env": {
"GITHUB_TOKEN": "ghp_your_personal_access_token"
}
}
}
}
```
Restart Claude Desktop. The `create_repo` tool will appear.
## Required token scopes
Your GitHub personal access token needs:
- `repo` ā to create and configure repos
- `delete_repo` ā only if you want to support deletion in future versions
Generate one at [github.com/settings/tokens](https://github.com/settings/tokens).
## Stack
- **TypeScript** + **Node.js 18+**
- **@modelcontextprotocol/sdk**
- **@octokit/rest** for the GitHub API
## Related MCP servers
- š§ **[second-opinion-mcp-server](https://github.com/joewilsonai/second-opinion-mcp-server)** (ā 16) ā Get a second opinion from Gemini / Perplexity / Stack Overflow
- š **[mcp-perplexity-server](https://github.com/joewilsonai/mcp-perplexity-server)** (ā 14) ā Perplexity-backed code analysis
## License
MIT
TDQS
Scored across 1 tool
With only one tool, there is no possibility of ambiguity or overlap with other tools. The tool's purpose is clearly defined as creating or updating GitHub repositories, making it distinct by default.
The single tool name 'create_repo' follows a clear verb_noun pattern, and since there are no other tools to compare it to, consistency is inherently perfect. There are no deviations or mixed conventions to evaluate.
A single tool for a GitHub server is too few for the typical scope, which usually involves multiple operations like listing repos, managing issues, or handling pull requests. This feels thin and incomplete for the domain.
The tool surface is severely incomplete for a GitHub server, as it only covers creating or updating repositories. Obvious gaps include retrieving repos, managing issues, pull requests, and other core GitHub functionalities, which will likely cause agent failures.