FastMCP GitHub Automation Server
Supports environment variables management through .env files for storing configuration like GitHub tokens securely.
Enables interaction with Git version control system for repository operations, branch management, and commit handling.
Provides a comprehensive API wrapper for GitHub operations, enabling automation and management of repositories, pull requests, issues, branches, commits, and file operations. Includes features for secure token management, merge strategies, status checks, label management, and repository search.
Leverages Python 3.12+ as the implementation language with support for Python virtual environments and package management.
Integrates with Shields.io for generating status badges that display information like Python version and license.
Click on "Install Server".
Wait a few minutes for the server to deploy. Once ready, it will show a "Started" state.
In the chat, type
@followed by the MCP server name and your instructions, e.g., "@FastMCP GitHub Automation Servercreate a pull request for my new feature branch"
That's it! The server will respond to your query, and you can continue using it as needed.
Here is a step-by-step guide with screenshots.
GIT-Pilot
GIT-Pilot is a powerful GitHub automation and management tool that provides a comprehensive API wrapper for GitHub operations. It simplifies GitHub interactions through a FastMCP-based server, making it easy to manage repositories, pull requests, issues, and more.
π Features
π Authentication & Security
Secure token management with encryption using Fernet
Token expiration and automatic cleanup
Rate limit handling and automatic retries
Configurable authentication timeouts
π¦ Repository Management
Create and manage repositories
Handle branches and commits
File operations (create, update, delete)
Repository search and filtering
Commit comparison and history
π Pull Request Operations
Create and manage pull requests
Merge strategies (merge, squash, rebase)
Status check validation
Conflict detection and handling
Draft PR support
π Issue Management
Create and update issues
Label management
Assignee handling
Comment management
Issue search and filtering
π Technical Features
Thread-safe operations
Resource management
Comprehensive error handling
Detailed logging
Type safety
Configuration management
FastMCP server integration
Related MCP server: GitHub MCP Server
π Getting Started
Prerequisites
Python 3.12 or higher
GitHub account
GitHub Personal Access Token
FastMCP CLI (optional)
Installation
Clone the repository:
git clone https://github.com/yourusername/GIT-Pilot.git
cd GIT-PilotInstall uv (if not already installed):
curl -LsSf https://astral.sh/uv/install.sh | shCreate and activate a virtual environment:
uv venv
source .venv/bin/activate # On Windows: .venv\Scripts\activateInstall the package using uv:
uv pip install -e .Set up environment variables: Create a
.envfile in the project root:
GITHUB_TOKEN=your_github_token_hereBasic Usage
Setting Up Claude Desktop Integration
Start the GIT-Pilot server:
uv run main.pyDownload and install Claude Desktop
Configure Claude Desktop:
Open Claude Desktop
Go to
File > Settings > Developer > Edit ConfigAdd the following configuration:
{
"mcpServers": {
"GIT-Pilot": {
"command": "uv",
"args": [
"--directory",
"path\\to\\repo",
"run",
"main.py"
]
}
}
}Restart Claude Desktop
Look for the hammer icon in the chat window - this indicates the MCP server is ready to use
API Examples
# Create a repository
await call_tool("create_repository",
name="my-repo",
description="My awesome repository",
private=True,
has_issues=True,
has_wiki=True,
has_projects=True,
auto_init=True
)
# Create a pull request
await call_tool("create_pull_request",
repo_path="owner/repo",
title="New feature",
head="feature-branch",
base="main",
body="Description of changes",
draft=False
)
# List commits with filtering
await call_tool("list_commits",
repo_path="owner/repo",
branch="main",
author="username",
since="2024-01-01",
until="2024-04-21",
max_results=30
)π§ Configuration
The service can be configured through the Config class:
@dataclass
class Config:
TOKEN_TTL_HOURS: int = 24
MAX_STORED_TOKENS: int = 1000
CLEANUP_INTERVAL_SECONDS: int = 3600
MAX_RETRIES: int = 3
RETRY_DELAY_SECONDS: int = 5
MAX_RESULTS_PER_PAGE: int = 100
ENCRYPTION_KEY: bytes = Fernet.generate_key()π‘ Security
Tokens are encrypted at rest using Fernet
Automatic token expiration and cleanup
Rate limit protection with retries
Input validation
Comprehensive error handling
Secure token cleanup
π Rate Limiting
The service includes built-in rate limit handling:
Automatic retry on rate limit
Configurable retry attempts
Delay between retries
Rate limit status logging
Exponential backoff
π§ͺ Error Handling
Comprehensive error handling for:
Authentication failures
API errors
Rate limits
Invalid inputs
Resource conflicts
Network issues
Token validation
File operations
π Logging
Detailed logging with:
Timestamp
Log level
Function name
Line number
Error details
Stack traces
Rate limit information
Token operations
π€ Contributing
We welcome contributions! Please follow these steps:
Fork the repository
Create a feature branch
Commit your changes
Push to the branch
Create a Pull Request
π License
This project is licensed under the GNU General Public License v3.0 - see the LICENSE file for details.
π Acknowledgments
PyGithub for the GitHub API wrapper
FastMCP for the server framework
Fernet for secure token encryption
Made with β€οΈ by the GIT-Pilot team
This server cannot be installed
Maintenance
Resources
Unclaimed servers have limited discoverability.
Looking for Admin?
If you are the server author, to access and configure the admin panel.
Related MCP Servers
- AlicenseBqualityDmaintenanceProvides tools for interacting with GitHub's API through the MCP protocol, allowing users to create repositories, push content, and retrieve user information.3456MIT
- Flicense-qualityDmaintenanceEnables interaction with GitHub repositories through the GitHub API using fastMCP. Supports repository information retrieval and management with secure token-based authentication.
- Alicense-qualityDmaintenanceAn MCP server that wraps the GitHub CLI to provide comprehensive access to repository management, pull requests, issues, and workflows. It enables users to perform complex GitHub operations and interact with the GitHub API through a standardized interface.131ISC
- Flicense-qualityDmaintenanceProvides access to GitHub v3 REST API functionality through STDIO mode with FastMCP, enabling users to interact with GitHub resources.
Related MCP Connectors
GitHub Private MCP Pack β access private repos, org data via OAuth.
GitLab Public MCP β wraps the GitLab REST API v4 (public endpoints, no auth)
A MCP server built for developers enabling Git based project management with project and personalβ¦
Appeared in Searches
Latest Blog Posts
- Who's Calling? MCP Hosts Are an Identity Blind Spot (And the Spec Knows It)By Om-Shree-0709 on .mcpAgent IdentityOAuth 2.1
- Your AI Chatbot Just Exposed Your CEO's Salary to an InternBy Om-Shree-0709 on .Agent IdentityMCP SecurityOAuth Delegation
- Why MCP Servers Need Execution Sandboxing (And Why Your Current Stack Isn't Enough)By Om-Shree-0709 on .Agentic AiPrompt InjectionWebAssembly
MCP directory API
We provide all the information about MCP servers via our MCP API.
curl -X GET 'https://glama.ai/api/mcp/v1/servers/SiddheshDongare/GIT-Pilot'
If you have feedback or need assistance with the MCP directory API, please join our Discord server