snehaapratap
MCP Serversnehaapratappublic

mcp server

MCP Server 是一个基于 FastAPI 的服务,使 AI 助手能够与 GitHub 交互,通过 API 端点自动化仓库管理和问题工作流。

Repository Info

1
Stars
0
Forks
1
Watchers
0
Issues
Python
Language
-
License

About This Server

MCP Server 是一个基于 FastAPI 的服务,使 AI 助手能够与 GitHub 交互,通过 API 端点自动化仓库管理和问题工作流。

Model Context Protocol (MCP) - This server can be integrated with AI applications to provide additional context and capabilities, enabling enhanced AI interactions and functionality.

Documentation

🚀 GitHub MCP Server - FastAPI Implementation

🌟 Overview

This project implements a Model Context Protocol (MCP) server using FastAPI, enabling AI assistants like Claude to interact with GitHub. The server provides API endpoints to fetch user details, manage repositories, create issues, and automate GitHub workflows.

✨ Features

  • ✅ Fetch GitHub user details and repositories
  • Create and manage issues in repositories
  • List all issues in a repository
  • Star a repository
  • ✅ AI-powered GitHub Issue Summarization (Optional)
  • ✅ Secure API with GitHub OAuth Token
  • Asynchronous FastAPI implementation

🛠️ Setup & Installation

1️⃣ Clone the Repository

git clone https://github.com/snehaapratap/mcp-server.git
cd mcp-server

2️⃣ Create & Activate a Virtual Environment

python3 -m venv venv
source venv/bin/activate  

3️⃣ Install Dependencies

pip install -r requirements.txt

4️⃣ Set Up Environment Variables

Create a .env file in the root directory and add your GitHub Personal Access Token (PAT):

GITHUB_TOKEN=your_personal_access_token

5️⃣ Run the FastAPI Server

uvicorn server:app --reload

The server will start on http://127.0.0.1:8000.


🔥 API Endpoints

MethodEndpointDescription
GET/Health check for MCP server
GET/github/userFetch GitHub user details
GET/github/reposGet all repositories of the authenticated user
POST/github/create-issueCreate an issue in a repository
GET/github/list-issuesList all issues in a repository
PUT/github/star-repoStar a repository
POST/github/summarize-issuesAI-powered issue summarization (Optional)

⚡ Usage Examples (cURL)

🔹 Get User Details

curl -X GET "http://127.0.0.1:8000/github/user"

🔹 Fetch Repositories

curl -X GET "http://127.0.0.1:8000/github/repos"

🔹 Create an Issue

curl -X POST "http://127.0.0.1:8000/github/create-issue?owner=your-username&repo=your-repo&title=New%20Issue&body=This%20is%20a%20test%20issue"

🔹 Star a Repository

curl -X PUT "http://127.0.0.1:8000/github/star-repo?owner=your-username&repo=your-repo"

🎥 Slides

📌 View the Slides


🛡️ Error Handling

The API handles errors gracefully and returns meaningful messages:

{
  "error": "Invalid GitHub Token",
  "hint": "Ensure your token has the 'repo' scope."
}

🎯 Future Enhancements

  • 🔹 Support for pull requests management
  • 🔹 Implement WebSockets for real-time GitHub notifications
  • 🔹 Deploy on AWS/GCP with CI/CD pipeline

💡 Contributing

Want to improve this project? Feel free to open a pull request or file an issue!


👨‍💻 Author

🔹 Sneha P Pratap
🔹 GitHub: @snehaapratap
🔹 LinkedIn: Sneha Prem Pratap


Quick Start

1

Clone the repository

git clone https://github.com/snehaapratap/mcp-server
2

Install dependencies

cd mcp-server
npm install
3

Follow the documentation

Check the repository's README.md file for specific installation and usage instructions.

Repository Details

Ownersnehaapratap
Repomcp-server
LanguagePython
License-
Last fetched8/10/2025

Recommended MCP Servers

💬

Discord MCP

Enable AI assistants to seamlessly interact with Discord servers, channels, and messages.

integrationsdiscordchat
🔗

Knit MCP

Connect AI agents to 200+ SaaS applications and automate workflows.

integrationsautomationsaas
🕷️

Apify MCP Server

Deploy and interact with Apify actors for web scraping and data extraction.

apifycrawlerdata
🌐

BrowserStack MCP

BrowserStack MCP Server for automated testing across multiple browsers.

testingqabrowsers

Zapier MCP

A Zapier server that provides automation capabilities for various apps.

zapierautomation