Server data from the Official MCP Registry
Detects semantic merge conflicts between Git branches using AST-level analysis
Detects semantic merge conflicts between Git branches using AST-level analysis
SemaMerge is a well-structured MCP server for detecting semantic merge conflicts in Git repositories. The codebase demonstrates solid engineering practices with proper input validation, sensible error handling, and appropriate permission scoping. No critical security vulnerabilities or malicious patterns were detected. Minor code quality observations exist but do not materially impact security posture. Supply chain analysis found 2 known vulnerabilities in dependencies (1 critical, 1 high severity). Package verification found 1 issue.
5 files analyzed · 7 issues found
Security scores are indicators to help you make informed decisions, not guarantees. Always review permissions before connecting any MCP server.
This plugin requests these system permissions. Most are normal for its category.
Add this to your MCP configuration file:
{
"mcpServers": {
"io-github-vineethwilson15-semamerge": {
"args": [
"-y",
"semamerge"
],
"command": "npx"
}
}
}From the project's GitHub README.
An MCP (Model Context Protocol) server that detects semantic merge conflicts between Git branches using AST-level analysis.
When two branches change code in ways that Git merges cleanly but are functionally incompatible, SemaMerge catches it before the merge breaks your app.
| Conflict Type | Example |
|---|---|
| Type signature change | Branch A changes getUser() return type, Branch B calls getUser().address |
| Removed/renamed export | Branch A removes export function validate(), Branch B adds import { validate } |
| Parameter change | Branch A adds required param to function, Branch B calls with old signature |
| Interface/contract break | Branch A adds required field to interface, Branch B implements without it |
| Enum/constant change | Branch A removes Status.PENDING, Branch B uses Status.PENDING |
| Import path change | Branch A moves file, Branch B imports from old path |
npx semamerge
Or install globally:
npm install -g semamerge
Or clone and build from source:
git clone https://github.com/vineethwilson15/semamerge.git
cd semamerge
npm install
npm run build
check_merge_safetyQuick pre-merge check. Returns a risk score (safe/warning/danger).
{
"repoPath": "/path/to/repo",
"sourceBranch": "feature-x",
"targetBranch": "main"
}
analyze_branchesDeep analysis with per-file breakdown of all semantic conflicts.
{
"repoPath": "/path/to/repo",
"branchA": "feature-x",
"branchB": "feature-y",
"baseBranch": "main"
}
list_semantic_changesLists all semantic changes on a branch (functions, exports, types, etc.).
{
"repoPath": "/path/to/repo",
"branch": "feature-x",
"baseBranch": "main"
}
analyze_file_pairDeep-dive into a specific file's semantic diff between two branches.
{
"repoPath": "/path/to/repo",
"filePath": "src/utils.ts",
"branchA": "feature-x",
"branchB": "main"
}
Add to your VS Code settings.json:
{
"mcp": {
"servers": {
"semamerge": {
"command": "node",
"args": ["/path/to/semamerge/dist/index.js"]
}
}
}
}
Add to claude_desktop_config.json:
{
"mcpServers": {
"semamerge": {
"command": "node",
"args": ["/path/to/semamerge/dist/index.js"]
}
}
}
.ts, .tsx, .js, .jsx, .mjs, .cjs)git shownpm run build # Compile TypeScript
npm run dev # Watch mode
npm test # Run tests
MIT
Be the first to review this server!
by Modelcontextprotocol · Developer Tools
Read, search, and manipulate Git repositories programmatically
by Toleno · Developer Tools
Toleno Network MCP Server — Manage your Toleno mining account with Claude AI using natural language.
by mcp-marketplace · Developer Tools
Create, build, and publish Python MCP servers to PyPI — conversationally.