About DCR MCP Server
DCR MCP Server is a Go-based server for development and research tasks, including Git commit analysis, literature lookup, document conversion, PDF generation, and email drafting. Git summaries use OpenAI, while literature lookup accepts PMID or DOI identifiers.
Key features
- 01Summarize Git commits with AI
- 02Fetch papers by PMID or DOI
- 03Convert Markdown to HTML with GFM
- 04Generate PDFs from Markdown
- 05Draft casual emails
Use cases
- 01Review categorized changes in a repository branch
- 02Retrieve metadata and abstracts for research papers
- 03Convert Markdown documents to HTML or PDF
- 04Prepare a casual email draft
MCP support
Exposes development and research utilities as tools for MCP clients, including Git analysis, literature search, conversion, PDF generation, and email drafting.
Configuration
Local server config is the same for every client. Copy it into your client’s MCP config file.
We haven’t collected a package or remote endpoint for this server. Follow the instructions in the project README.
Tools
Local servers expose tools only once running on your machine, and the maintainer has not provided a tool list.
Details
From the project READMEDCR MCP Server
A Model Context Protocol (MCP) server providing development and research utilities: git analysis, literature search, markdown/PDF conversion, and email drafting.
Table of Contents
Quick Start
-
Install
go install github.com/dictybase/dcr-mcp/cmd/server@latest -
Configure - Add to your MCP configuration:
{ "mcpServers": { "dcr-mcp": { "command": "server", "env": { "OPENAI_API_KEY": "your-api-key-here" } } } } -
Use - The server provides these tools:
- Git Summary - Analyze commit messages with AI
- Literature - Fetch research papers by PMID/DOI
- Markdown - Convert to HTML with GFM support
- PDF - Generate PDFs from markdown
- Email - Draft casual emails
Installation Options
| Method | Command | Binary Name | Best For |
|---|---|---|---|
| Go Install | go install github.com/dictybase/dcr-mcp/cmd/server@latest | server | Quick setup |
| From Source | git clone && make build | dcr-mcp-server | Development |
| Manual Build | go build -o dcr-mcp-server ./cmd/server | dcr-mcp-server | Custom builds |
Requirements: Go 1.23.8+, OpenAI API key (for git summaries)
Configuration
MCP Setup
Use the correct command based on your installation method:
{
"mcpServers": {
"dcr-mcp": {
"command": "server", // for go install
// or "command": "dcr-mcp-server", // for source build
// or "command": "/full/path/to/binary", // for custom path
"env": {
"OPENAI_API_KEY": "your-api-key-here"
}
}
}
}
The server auto-starts with your MCP client and provides structured logging to stderr for debugging.
Tools Reference
🔍 Git Summary
Analyzes git commits and generates AI-powered summaries categorized by type.
Parameters:
repo_url(required) - Git repository URLbranch(required) - Branch to analyzestart_date(required) - Start date for analysisend_date(optional) - End date (defaults to now)author(required) - Filter by author nameapi_key(required) - OpenAI API key
Output: Markdown summary with categorized bullet points (features, bugs, docs, etc.)
🔬 Literature Search
Fetches scientific papers using PubMed IDs or DOIs via dictyBase API.
Parameters:
id(required) - PMID (e.g., "12345678") or DOI (e.g., "10.1038/nature12373")id_type(required) - "pmid" or "doi"provider(optional) - "pubmed" (default) or "europepmc"
Output: Formatted article metadata with title, authors, abstract, and citation data
📝 Markdown Converter
Converts Markdown to HTML with GitHub Flavored Markdown support.
Parameters:
content(required) - Markdown content to convert
Features: GFM, syntax highlighting, emoji, tables, YAML metadata
📄 PDF Generator
Converts Markdown to PDF with professional formatting.
Parameters:
content(required) - Markdown contentfilename(optional) - Output filename (defaults to "output.pdf")
Output: PDF file with IBM Plex fonts and confirmation message
✉️ Email Prompt
Generates casual email drafts with customizable tone.
Parameters:
from(required) - Sender's name or emailto(required) - Recipient's name or email
Output: Complete email draft with subject line and friendly, professional tone
Development
Build Commands
| Command | Purpose |
|---|---|
make build | Build binary to bin/dcr-mcp-server |
make test | Run all tests |
make test-verbose | Run tests with detailed output |
make fmt | Format code with gofumpt |
make clean | Remove build artifacts |
Project Structure
dcr-mcp/
├── cmd/server/ # Main entry point
├── pkg/
│ ├── tools/ # Core tool implementations
│ │ ├── gitsummary/ # Git analysis + OpenAI
│ │ ├── literaturetool/ # PubMed/DOI fetching
│ │ ├── markdowntool/ # Markdown → HTML
│ │ └── pdftool/ # Markdown → PDF
│ ├── prompts/ # Email prompt logic
│ └── markdown/ # Shared markdown utilities
└── bin/ # Built binaries
Contributing
- Fork and create feature branch
- Follow conventions in
CLAUDE.md - Add tests for new functionality
- Run:
make fmt && make test && golangci-lint run - Submit pull request
Debugging
The server logs to stderr with prefixed messages:
[git-summary],[literature],[markdown],[pdf-tool],[email-prompt]
Enable stderr output in your MCP client for debugging.
Comments
New to MCP?
From what the protocol is to installing your first server, these answers cover most first questions.
An open protocol that defines how AI applications connect to external tools and data in a uniform way. Clients talk to the model; MCP servers provide tools, resources and prompt templates. They exchange standard messages, so one server can be reused by many clients.