Enables automated management of GitHub pull requests, allowing for the creation of PRs with auto-generated descriptions, updating PR titles and content, listing repository PRs, and finding PRs associated with specific branches.
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., "@Sean-MCPcreate a new pull request for this branch with an automated description"
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.
π Sean-MCP
PR Automation & GitHub Integration Tool with personality!
A Model Context Protocol (MCP) server and CLI tool for automating GitHub pull request management. Built with TypeScript, Node.js, and pure vibes.
β¨ Features
π PR Creation - Create pull requests with auto-generated descriptions
βοΈ PR Updates - Update PR descriptions (auto-updates on push!)
π PR Listing - List and browse PRs for any repo
π§ MCP Server - Let Claude manage your PRs for you
π Webhook Server - Auto-update PRs when you push
π¨ Sleek CLI - Beautiful terminal UI with multiple personalities
π Quick Start
1. Install Dependencies
cd seantokuzo-mcp
npm install2. Configure
# Copy the example env file
cp .env.example .env
# Edit with your GitHub token
# Get one at: https://github.com/settings/tokensOr run the interactive setup:
npm run cli setup3. Build
npm run build4. Use!
CLI Mode:
# Interactive mode
npm run cli
# Specific commands
npm run cli pr create
npm run cli pr update
npm run cli pr list
npm run cli config statusMCP Mode (for Claude): See the MCP Setup section below.
π Project Structure
seantokuzo-mcp/
βββ src/
β βββ index.ts # Main entry point
β βββ server.ts # Express webhook server
β βββ cli/
β β βββ index.ts # CLI entry point
β β βββ commands/ # CLI commands (pr, config)
β β βββ ui/ # Display utilities, messages
β βββ mcp/
β β βββ server.ts # MCP server implementation
β βββ services/
β β βββ github.ts # GitHub API service
β βββ types/
β β βββ index.ts # TypeScript types
β βββ utils/
β βββ config.ts # Configuration management
β βββ logger.ts # Logging utility
βββ package.json
βββ tsconfig.json
βββ .env.example
βββ README.mdπ§ MCP Setup (For Claude)
The MCP server lets Claude use your PR tools directly. Here's how to set it up:
VS Code with Continue or GitHub Copilot
Add to your MCP settings (.vscode/mcp.json or VS Code settings):
{
"mcpServers": {
"sean-mcp": {
"command": "node",
"args": ["/path/to/seantokuzo-mcp/dist/mcp/server.js"],
"env": {
"GITHUB_TOKEN": "your-github-token",
"GITHUB_USERNAME": "your-username"
}
}
}
}Claude Desktop
Add to ~/Library/Application Support/Claude/claude_desktop_config.json:
{
"mcpServers": {
"sean-mcp": {
"command": "node",
"args": ["/path/to/seantokuzo-mcp/dist/mcp/server.js"],
"env": {
"GITHUB_TOKEN": "your-github-token",
"GITHUB_USERNAME": "your-username"
}
}
}
}Available MCP Tools
Once configured, Claude can use these tools:
Tool | Description |
| Create a new PR with auto-generated description |
| Update a PR's title and/or description |
| Get details about a specific PR |
| List PRs for a repository |
| Find the PR for a specific branch |
π Webhook Server
The webhook server listens for GitHub push events and auto-updates PR descriptions.
Start the Server
npm run start:webhookConfigure GitHub Webhook
Go to your repo β Settings β Webhooks β Add webhook
Payload URL:
https://your-server.com/webhook/githubContent type:
application/jsonSecret: Use the
WEBHOOK_SECRETfrom your.envEvents: Select "Pushes" and "Pull requests"
Local Development
For local testing, use a tool like ngrok:
ngrok http 3847Then use the ngrok URL as your webhook URL.
π CLI Personalities
The CLI has three personality modes:
π₯ Chaotic (default) - Fun, energetic, memes
πΌ Professional - Clean, minimal output
π§ Zen - Calm, philosophical vibes
Set in your .env:
CLI_PERSONALITY=chaotic # or: professional, zenπ Environment Variables
Variable | Required | Description |
| Yes | GitHub Personal Access Token |
| Yes | Your GitHub username |
| No | Webhook server port (default: 3847) |
| No | GitHub webhook secret |
| No | CLI personality (chaotic/professional/zen) |
| No | Default target branch (default: main) |
| No | Create draft PRs by default (true/false) |
π οΈ Development
# Run CLI in dev mode (with hot reload)
npm run dev:cli
# Run MCP server in dev mode
npm run dev
# Type check
npm run typecheck
# Build
npm run buildπΊοΈ Roadmap
Future features planned:
Jira Integration - Create/move tickets, manage subtasks
Confluence Integration - Generate documentation
PR Reviewers - Auto-assign reviewers
PR Labels - Auto-apply labels based on changes
AI-Enhanced Descriptions - Use AI for better PR descriptions
Built with π₯ and TypeScript