Caution
Use at your own risk. I haven't reviewed the code yet. This is just an experiment of mine.
A (vibe-coded) Model Context Protocol (MCP) server that provides tools to interact with git-bug, a distributed bug tracker embedded in Git.
The server provides the following MCP tools:
-
create_issue- Create a new bug- Parameters:
title(required),message(required) - Creates a new bug with title and description
- Parameters:
-
list_issues- List bugs with optional filtering- Parameters:
status,author,label,format,query(all optional) - Supports filtering by status (open/closed), author, labels, and custom queries
- Parameters:
-
show_issue- Display detailed information about a specific bug- Parameters:
bug_id(required),format,field(optional) - Shows complete bug details or specific fields
- Parameters:
-
delete_issue- Remove a bug from the repository- Parameters:
bug_id(required) - Permanently removes the bug (note: this is local-only for bridge-imported bugs)
- Parameters:
add_comment- Add a comment to an existing bug- Parameters:
bug_id(required),message(required) - Adds a new comment to the specified bug
- Parameters:
update_issue_status- Change bug status- Parameters:
bug_id(required),status(required: "open" or "closed") - Opens or closes the specified bug
- Parameters:
update_issue_title- Edit bug title- Parameters:
bug_id(required),title(required) - Updates the title of the specified bug
- Parameters:
- Ensure you have
git-buginstalled and available in your PATH - Build the MCP server:
go build -o gitbug-mcp
Run the server with stdio transport:
./gitbug-mcpAdd to your Claude Desktop configuration (claude_desktop_config.json):
{
"mcpServers": {
"gitbug-mcp": {
"command": "/path/to/gitbug-mcp",
"args": []
}
}
}{
"tool": "create_issue",
"arguments": {
"title": "Bug in authentication flow",
"message": "Users cannot login with valid credentials on the production environment."
}
}{
"tool": "list_issues",
"arguments": {
"status": "open",
"format": "default"
}
}{
"tool": "show_issue",
"arguments": {
"bug_id": "abc123def456",
"format": "default"
}
}{
"tool": "add_comment",
"arguments": {
"bug_id": "abc123def456",
"message": "I can reproduce this issue on my machine."
}
}{
"tool": "update_issue_status",
"arguments": {
"bug_id": "abc123def456",
"status": "closed"
}
}- Go 1.25.1 or later
git-buginstalled and in PATH- A git repository with git-bug initialized
- The server executes
git-bugcommands withGIT_BUG_NON_INTERACTIVE=1to prevent interactive prompts - All commands are executed with context cancellation support
- The server sanitizes inputs but relies on git-bug's own security model
All tools return structured error responses:
- Success: Returns the tool result with relevant data
- Error: Returns an error message with details about what went wrong
To modify or extend the server:
- Add new tool functions following the existing pattern
- Register them in
registerTools() - Update parameter structs with proper JSON schema tags
- Test with your MCP client
MIT License - see LICENSE file for details.