Cover image
Try Now
2025-01-19

Mirror ofhttps://github.com/peterparker57/github-mcp-server

3 years

Works with Finder

0

Github Watches

1

Github Forks

0

Github Stars

GitHub MCP Server

A Model Context Protocol (MCP) server providing GitHub integration capabilities. This server enables interaction with GitHub repositories through MCP tools, supporting operations like repository management, file operations, and commit handling.

Features

  • Account management and authentication
  • Repository creation and management
  • File operations (read, write, push, pull)
  • Commit operations
  • Directory synchronization
  • Repository comparison and diffing

Installation

ash npm install @modelcontextprotocol/server-github

Configuration

Add the server to your MCP settings file (cline_mcp_settings.json):

json { "mcpServers": { "github": { "command": "node", "args": ["/path/to/github-mcp-server/dist/index.js"], "env": { "GITHUB_TOKEN_1": "your-github-token", "GITHUB_OWNER_1": "your-github-username" }, "disabled": false, "alwaysAllow": [] } } }

Available Tools

Account Management

list_accounts

List available GitHub accounts configured in the server.

select_account

Select a GitHub account to use for subsequent operations.

Repository Management

create_repository

Create a new GitHub repository.

ypescript { owner?: string; // Repository owner (optional if account selected) name: string; // Repository name description: string; // Repository description private?: boolean; // Whether repository is private }

clone_repository

Clone a GitHub repository to a local directory.

ypescript { owner?: string; // Repository owner repo: string; // Repository name branch?: string; // Branch name (default: main) outputDir: string; // Local directory to clone into }

rename_repository

Rename an existing GitHub repository.

ypescript { owner?: string; // Repository owner repo: string; // Current repository name new_name: string; // New repository name }

File Operations

push_file

Push a file to a GitHub repository.

ypescript { owner?: string; // Repository owner repo: string; // Repository name path: string; // Target path in repository message: string; // Commit message sourcePath: string; // Local file to push }

pull_file

Pull a file from a GitHub repository.

ypescript { owner?: string; // Repository owner repo: string; // Repository name path: string; // File path in repository outputPath: string; // Local path to save file }

sync_directory

Two-way sync between local and remote directories.

ypescript { owner?: string; // Repository owner repo: string; // Repository name path: string; // Directory path in repository localPath: string; // Local directory path }

Commit Operations

create_commit

Create a commit with multiple file changes.

ypescript { owner?: string; // Repository owner repo: string; // Repository name branch: string; // Branch name message: string; // Commit message changes: Array<{ path: string; // File path in repository sourcePath: string; // Local file path (for add/modify) operation: 'add' | 'modify' | 'delete'; }>; }

list_commits

List commits for a repository.

ypescript { owner?: string; // Repository owner repo: string; // Repository name branch?: string; // Branch name author?: string; // Filter by author since?: string; // ISO 8601 date - commits after until?: string; // ISO 8601 date - commits before }

Development

To build the server:

ash npm install npm run build

Environment Variables

  • GITHUB_TOKEN_<N>: GitHub personal access token
  • GITHUB_OWNER_<N>: GitHub username for the token
  • DEFAULT_OWNER: Default GitHub account to use

Multiple accounts can be configured by incrementing N (1, 2, etc.).

License

MIT

相关推荐

  • NiKole Maxwell
  • I craft unique cereal names, stories, and ridiculously cute Cereal Baby images.

  • Bora Yalcin
  • Evaluator for marketplace product descriptions, checks for relevancy and keyword stuffing.

  • Joshua Armstrong
  • Confidential guide on numerology and astrology, based of GG33 Public information

  • https://suefel.com
  • Latest advice and best practices for custom GPT development.

  • Callycode Limited
  • A geek-themed horoscope generator blending Bitcoin prices, tech jargon, and astrological whimsy.

  • Emmet Halm
  • Converts Figma frames into front-end code for various mobile frameworks.

  • Jan Meindl
  • Builds new GPTs

  • Khalid kalib
  • Write professional emails

  • XLwebDev.com
  • PR Professional: Guiding You to Get Media Placements and Publicity Quickly and Effectively

  • Elijah Ng Shi Yi
  • Advanced software engineer GPT that excels through nailing the basics.

  • apappascs
  • Discover the most comprehensive and up-to-date collection of MCP servers in the market. This repository serves as a centralized hub, offering an extensive catalog of open-source and proprietary MCP servers, complete with features, documentation links, and contributors.

  • ShrimpingIt
  • Micropython I2C-based manipulation of the MCP series GPIO expander, derived from Adafruit_MCP230xx

  • OffchainLabs
  • Go implementation of Ethereum proof of stake

  • huahuayu
  • A unified API gateway for integrating multiple etherscan-like blockchain explorer APIs with Model Context Protocol (MCP) support for AI assistants.

  • deemkeen
  • control your mbot2 with a power combo: mqtt+mcp+llm

    Reviews

    3 (1)
    Avatar
    user_tEDcIzMm
    2025-04-15

    I'm thoroughly impressed with mcp_repo_e2769bdc! As a devoted mcp application user, I found this product by sanskarmk to be extremely reliable and efficient. The interface is user-friendly, and the setup was seamless, making my workflow smoother. Highly recommended for anyone in need of a robust solution. Check it out at https://mcp.so/server/mcp_repo_e2769bdc/sanskarmk.