A reusable GitHub Actions workflow for testing MCP server conformance between versions
{
"mcpServers": {
"mcp-server-diff": {
"command": "<see-readme>",
"args": []
}
}
}No install config available. Check the server's README for setup instructions.
Are you the author?
Add this badge to your README to show your security score and help users find safe servers.
A reusable GitHub Actions workflow for testing MCP server conformance between versions
Is it safe?
No package registry to scan.
No authentication — any process on your machine can connect.
MIT. View license →
Is it maintained?
Last commit 0 days ago. 6 stars.
Will it work with my client?
Transport: stdio. Works with Claude Desktop, Cursor, Claude Code, and most MCP clients.
No automated test available for this server. Check the GitHub README for setup instructions.
No known vulnerabilities.
This server is missing a description. Tools and install config are also missing.If you've used it, help the community.
Add informationHave you used this server?
Share your experience — it helps other developers decide.
Sign in to write a review.
XcodeBuildMCP provides tools for Xcode project management, simulator management, and app utilities.
An open-source AI agent that brings the power of Gemini directly into your terminal.
MCPSDK.dev(ToolSDK.ai)'s Awesome MCP Servers and Packages Registry and Database with Structured JSON configurations. Supports OAuth2.1, DCR...
Prismer Cloud
MCP Security Weekly
Get CVE alerts and security updates for Mcp Server Diff and similar servers.
Start a conversation
Ask a question, share a tip, or report an issue.
Sign in to join the discussion.
# MCP Server Diff
[](https://github.com/marketplace/actions/mcp-server-diff)
[](https://www.npmjs.com/package/mcp-server-diff)
[](https://github.com/SamMorrowDrums/mcp-server-diff/releases)
[](https://opensource.org/licenses/MIT)
A GitHub Action for diffing [Model Context Protocol (MCP)](https://modelcontextprotocol.io/) server **public interfaces** between versions. Compares the current branch against a baseline to surface any changes to your server's exposed tools, resources, prompts, and capabilities.
> **Also available as a standalone CLI** — see [CLI Documentation](#cli-tool) or install with `npx mcp-server-diff`
## Overview
MCP servers expose a **public interface** to AI assistants: tools (with their input schemas), resources, prompts, and server capabilities. As your server evolves, changes to this interface are worth tracking. This action automates public interface comparison by:
1. Building your MCP server from both the current branch and a baseline (merge-base, tag, or specified ref)
2. Querying both versions for their complete public interface (tools, resources, prompts, capabilities)
3. Generating a diff report showing exactly what changed
4. Surfacing results directly in GitHub's Job Summary
This is **not** about testing internal logic or correctness—it's about visibility into what your server _advertises_ to clients.
## Quick Start
Create `.github/workflows/mcp-diff.yml` in your repository:
```yaml
name: MCP Server Diff
on:
pull_request:
branches: [main]
push:
branches: [main]
tags: ['v*']
permissions:
contents: read
jobs:
mcp-diff:
runs-on: ubuntu-latest
steps:
- uses: actions/checkout@v4
with:
fetch-depth: 0
- uses: SamMorrowDrums/mcp-server-diff@v2
with:
setup_node: true
install_command: npm ci
build_command: npm run build
start_command: node dist/stdio.js
```
## Language Examples
### Node.js / TypeScript
```yaml
- uses: SamMorrowDrums/mcp-server-diff@v2
with:
setup_node: true
node_version: '22'
install_command: npm ci
build_command: npm run build
start_command: node dist/stdio.js
```
### Python
```yaml
- uses: SamMorrowDrums/mcp-server-diff@v2
with:
setup_python: true
python_version: '3.12'
install_command: pip install -e .
start_command: python -m my_mcp_server
```
### Go
```yaml
- uses: SamMorrowDrums/mcp-server-diff@v2
with:
setup_go: true
install_command: go mod download
build_command: go build -o bin/server ./cmd/stdio
start_command: ./bin/server
```
### Rust
```yaml
- uses: SamMorrowDrums/mcp-server-diff@v2
with:
setup_rus
... [View full README on GitHub]