GitHub MCP Server
Interact with the GitHub API to create and manage repositories, including setting descriptions, topics, and website URLs.
GitHub MCP Server
A Model Context Protocol (MCP) server that provides tools for interacting with GitHub's API. Currently supports creating repositories with descriptions, topics, and website URLs.
Features
- Create GitHub repositories with auto-generated names from descriptions
- Add topics/tags to repositories
- Set repository homepages
- Auto-initialize repositories with README files
Installation
- Clone the repository
- Install dependencies:
npm install
- Build the server:
npm run build
Configuration
The server requires a GitHub personal access token with repository creation permissions. Add the following to your MCP settings file:
{
"mcpServers": {
"github": {
"command": "node",
"args": ["path/to/github-server/build/index.js"],
"env": {
"GITHUB_TOKEN": "your-github-token"
}
}
}
}
Available Tools
create_repo
Create or update GitHub repositories using natural language commands.
Command Format
The tool accepts natural language commands for different operations:
Creating repositories:
Create a repository for [description] with tags [tag1 tag2 tag3] website [url]
or
Make a new repository called [description] tagged with [tag1, tag2, tag3]
Updating repository description:
Update [owner/repo] description to [new description]
or
Change [repo-name] description as [new description]
Updating repository tags:
Update [owner/repo] tags to [tag1 tag2 tag3]
or
Set [repo-name] topics as [tag1, tag2, tag3]
Updating repository website:
Update [owner/repo] website to [url]
or
Set [repo-name] homepage as [url]
Example Usage
Creating a new repository:
const result = await use_mcp_tool({
server_name: "github",
tool_name: "create_repo",
arguments: {
command: "Create a repository for my machine learning image classifier with tags python tensorflow computer-vision website https://example.com/docs"
}
});
This will:
- Create a repository named "my-machine-learning-image-classifier"
- Set the description as "my machine learning image classifier"
- Add "python", "tensorflow", and "computer-vision" as repository topics
- Set the website to "https://example.com/docs"
- Initialize with a README file
Updating repository description:
const result = await use_mcp_tool({
server_name: "github",
tool_name: "create_repo",
arguments: {
command: "Update username/existing-repo description to Updated ML project for image classification"
}
});
Updating repository tags:
const result = await use_mcp_tool({
server_name: "github",
tool_name: "create_repo",
arguments: {
command: "Update username/existing-repo tags to machine-learning python updated"
}
});
Updating repository website:
const result = await use_mcp_tool({
server_name: "github",
tool_name: "create_repo",
arguments: {
command: "Update username/existing-repo website to https://example.com/new-docs"
}
});
The tool understands various natural language patterns and keywords:
- Create/make/new for creating repositories
- Update/change/set/modify for updating repositories
- "description to/as" for updating descriptions
- "tags/topics to/as" for updating tags
- "website/homepage/url to/as" for updating websites
Development
To modify or extend the server:
- Make changes to
src/index.ts - Rebuild the server:
npm run build
License
MIT
Related Servers
GitLab
Manage GitLab projects, repositories, issues, files, and milestones using the GitLab API.
GitHub Kanban MCP Server
Manage GitHub issues as a Kanban board using the gh CLI.
MCP Git Repo Browser
A Git repository browser that allows you to navigate and inspect local Git repositories using the Model Context Protocol.
GitLab
A GitLab integration server providing access to GitLab's RESTful API tools, built on the fastmcp framework.
GitLab
Manage GitLab projects, files, and repositories using the GitLab API.
Git TS MCP
Execute Git commands safely through AI assistants like Claude.
GitHub MCP Lightweight
A lightweight server for analyzing GitHub issues and pull requests using a Personal Access Token.
GitLab Kanban
A server for managing GitLab Kanban board operations.
GitKraken
A CLI for interacting with GitKraken APIs. Includes an MCP server via `gk mcp` that not only wraps GitKraken APIs, but also Jira, GitHub, GitLab, and more.
GitHub Mapper
Provides tools for mapping and analyzing GitHub repositories using a Personal Access Token for authentication.