dcr-mcp

A simple MCP (Model Control Protocol) server implementation using mcp-go.

Visit Server
Added on 3/28/2025

DCR MCP Server

A simple MCP (Model Control Protocol) server implementation using mcp-go.

Features

  • Basic MCP server implementation
  • Git Summary tool for analyzing commit messages

Getting Started

Prerequisites

  • Go 1.23 or later

Running the Server

go run cmd/server/main.go

By default, the server runs on port 8080. You can change the port by setting the DCR_MCP_PORT environment variable.

Tools

Git Summary Tool

This MCP tool generates summaries of git commit messages using OpenAI. It analyzes commit messages within a specified date range and creates a concise, user-friendly summary organized by categories.

Features
  • Clone any git repository by URL and branch
  • Filter commits by date range
  • Filter by author
  • Generate human-readable summaries using OpenAI
  • Format output as markdown with categorized bullet points
Usage

The tool accepts the following parameters:

{
  "repo_url": "https://github.com/username/repo",
  "branch": "main",
  "start_date": "2023-01-01",
  "end_date": "2023-12-31",
  "author": "author-name"
}
Parameters
  • repo_url (required): The URL of the git repository to analyze
  • branch (required): The branch to analyze
  • start_date (required): The start date for commit analysis (in any standard format)
  • end_date (optional): The end date for commit analysis (defaults to current date)
  • author (required): Filter commits by author name (case-insensitive contains match)
  • api_key (required): Your OpenAI API key (defaults to OPENAI_API_KEY environment variable)
Example Response

"# Work Summary\n\nFeature Enhancements\n- Added support for filtering commits by author name. Users can now specify an optional author parameter to focus on contributions from specific team members.\n\nBug Fixes\n- Fixed date parsing issues that were causing incorrect commit ranges. The system now correctly handles various date formats and timezone considerations.\n\nDocumentation\n- Added comprehensive README with usage examples and parameter descriptions. New users will find it easier to understand how to use the tool effectively."

Testing

Run the tests with:

go test ./...

Or using gotestum:

gotestum --format-hide-empty-pkg --format testdox --format-icons hivis