A favicon of GitHub MCP Server

GitHub MCP Server

An MCP server that enables natural language commands for managing GitHub repositories

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

  1. Clone the repository
  2. Install dependencies:
npm install
  1. 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:

  1. Create a repository named "my-machine-learning-image-classifier"
  2. Set the description as "my machine learning image classifier"
  3. Add "python", "tensorflow", and "computer-vision" as repository topics
  4. Set the website to "https://example.com/docs"
  5. 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:

  1. Make changes to src/index.ts
  2. Rebuild the server:
npm run build

License

MIT

Share:
Details:
  • Stars


    0
  • Forks


    2
  • Last commit


    4 months ago
  • Repository age


    4 months
View Repository

Auto-fetched from GitHub .

MCP servers similar to GitHub MCP Server:

 

 
 
  • Stars


  • Forks


  • Last commit


 

 
 
  • Stars


  • Forks


  • Last commit


 

 
 
  • Stars


  • Forks


  • Last commit