Cross Repo Ops MCP
Cross Repo Ops MCP
Eine repository-neutrale MCP-Fähigkeitsebene (Model Context Protocol) für kontrollierte lokale Repository-Operationen.
Was es tut
Cross Repo Ops MCP bietet einen sicherheitsgehärteten stdio-JSON-RPC-Server, der begrenzte, richtliniengesteuerte Operationen auf lokalen Git-Repositories bereitstellt:
Lesen: Baumauflistung, ripgrep-Suche, begrenzte Dateilesevorgänge, git status/diff
Schreiben: kontextgeprüfte Patches mit create/modify-Unterstützung (nur writable Repositories)
Aufgaben: Ausführung genehmigter benannter Aufgaben (nur Zulassungsliste, keine beliebigen Shell-Befehle)
Git: Branches auflisten/erstellen/wechseln, Commit (nur explizit angegebene Dateien), Push (nur origin, nur pushable Repositories)
Related MCP server: void-bridge
Architektur
Cross Repo Ops MCP ist eine repository-neutrale Fähigkeitsebene für kontrollierte lokale Repository-Operationen. Es ist dafür konzipiert, neben einem XcodeIDEapp-Projekt zu liegen, und übernimmt Ideen aus IDE-Dashboard-Scaffolding-Mustern, bleibt jedoch generisch und hängt von keiner spezifischen IDE oder Projektstruktur ab.
Cross Repo Ops MCP = controlled local repository actions (read, patch, git, tasks)Der Server ist richtliniengetrieben: Repositories, Fähigkeiten, ausgeschlossene Pfade und genehmigte Aufgaben werden alle in einer JSON-Konfiguration deklariert. Im Kern ist keine projektspezifische Logik fest verdrahtet.
Module
Module | Verantwortung |
| Zentrale Repository-Fähigkeitsrichtlinie (Zulassungsliste, writable/pushable-Flags, ausgeschlossene Pfade, Aufgaben-Zulassungsliste, Grenzen, Timeouts) |
| Einzige maßgebliche Pfadvalidierungsgrenze (Traversal-, Symlink-, Absolutpfad- und Containment-Prüfungen) |
| Baumauflistung, ripgrep-Suche, begrenztes Dateilesen, git status/diff |
| Kontextgeprüfte Patch-Anwendung mit create/modify-Unterstützung |
| Branch-, Commit- und Push-Operationen mit Sicherheitsvorkehrungen |
| Auflösung und Ausführung benannter Aufgaben über die Zulassungsliste |
| stdio-JSON-RPC-MCP-Server |
| Fehlertypen |
Sicherheitsmodell
Repository-Zulassungsliste: Nur Repositories, die explizit in der Richtlinie aufgeführt sind, sind zugänglich.
Fähigkeits-Flags:
writableundpushablegelten pro Repository und sind standardmäßigfalse.Pfad-Containment: Alle Pfade werden aufgelöst und gegen die Repository-Wurzel geprüft. Traversal (
..), absolute Pfade und Symlinks werden abgelehnt.Ausschluss sensibler Dateien:
.env,*.pem, API-Schlüssel, Tokens, Anmeldedaten und Binärdateien sind vom Lesen und Schreiben ausgeschlossen.Patch-Sicherheit:
old_textmuss exakt übereinstimmen; bei mehreren Übereinstimmungen istcontexterforderlich, um eindeutig zu unterscheiden.create=trueverweigert das Überschreiben vorhandener Dateien.Aufgaben-Zulassungsliste: Aufgaben werden anhand des Namens aus einer serverseitigen Zulassungsliste aufgelöst, nicht aus Benutzereingaben. Keine beliebigen Shell-Befehle.
Git-Sicherheit: Bulk-Staging (
git add -A) wird abgelehnt. Commits sind auf explizit aufgeführte Dateien beschränkt. Sensible Dateien können nicht committet werden. Branchnamen werden gegen Injektion validiert. Push ist auforiginbeschränkt, nur für pushable Repositories.Ausgabelimits: Alle Operationen haben konfigurierbare Ausgabegrenzen (gelesene Zeichen, Suchergebnisse, Baum-Einträge, Diff-Zeichen, Aufgabenausgabe).
Installation
# No external dependencies required — Python 3.10+ standard library only.
cd cross-repo-ops
pip install -e . # optional, for package installVerwendung
MCP-Server ausführen
python3 -m cross_repo_opsDer Server lauscht über stdin/stdout auf JSON-RPC-2.0-Nachrichten.
Benutzerdefinierte Richtlinie
CROSS_REPO_OPS_CONFIG=/path/to/policy.json python3 -m cross_repo_opsFormat der Richtliniendatei
{
"repos": {
"myrepo": {
"root": "/path/to/repo",
"writable": true,
"pushable": false
}
},
"tasks": {
"myrepo": {
"build": {
"command": ["xcodebuild", "-scheme", "MyApp", "build"],
"cwd": "{root}",
"timeout": 180
},
"test": {
"command": ["xcodebuild", "test", "-scheme", "MyApp"],
"cwd": "{root}",
"timeout": 300
}
}
}
}MCP-Tools
Tool | Beschreibung |
| Dateien/Verzeichnisse mit Sicherheitsausschlüssen auflisten |
| ripgrep-Suche mit begrenzter Ausgabe |
| Einen begrenzten Ausschnitt einer nicht sensiblen Textdatei lesen |
| git status anzeigen |
| Unstaged-/Staged-/Commit-Diffs anzeigen |
| Einen kontextgeprüften Patch anwenden (nur writable Repositories) |
| Eine genehmigte benannte Aufgabe ausführen (nur Zulassungsliste) |
| Branches auflisten/erstellen/wechseln (writable Repositories für create/switch) |
| Explizite Dateien stagen und committen (nur writable Repositories) |
| Push zu origin (nur pushable Repositories) |
Tests
python3 -m unittest tests.test_security tests.test_adversarial -v32 Tests, die Folgendes abdecken:
Erlaubte und blockierte Lesevorgänge
Ablehnung von Pfad-Traversal, absoluten Pfaden und Symlink-Escapes
Blockierung des Lesens/Schreibens/Committens sensibler Dateien
Durchsetzung von writable gegenüber read-only Repositories
Patch mit korrektem/veraltetem Kontext
Patch, der auf ausgeschlossene Dateien abzielt
Zulassungsliste für benannte Aufgaben (Erfolg, unbekannter Name, Shell-Injektionsversuch)
Task-Timeout und Ausgabekürzung
git status/diff
Schutzmaßnahmen gegen Branchnamen-Injektion
Commit-Schutzmaßnahmen (leere Nachricht, sensible Dateien, Bulk-Staging, bereits gestagte Dateien)
Push-Ablehnung für nicht pushable Repositories
Behandlung fehlender Argumente durch den Server
Lizenz
MIT
Maintenance
Resources
Unclaimed servers have limited discoverability.
Looking for Admin?
If you are the server author, to access and configure the admin panel.
Related MCP Servers
- AlicenseNot gradedqualityCmaintenanceEnables AI assistants to safely interact with local code repositories through MCP tools for search, context building, and workspace management, while keeping all operations local and human-controlled for patch approval.MIT
- FlicenseNot gradedqualityCmaintenanceExposes a secure, path-confined bridge to a local workspace and git remotes, enabling MCP clients to search, read, write, reset files, and perform git operations.
- AlicenseAqualityCmaintenanceEnables policy-first defensive security operations for MCP, providing repository and web-security analysis with controlled authorization, scoped execution, and auditability.9MIT
- AlicenseAqualityBmaintenanceEnables ChatGPT and Codex to safely work with explicitly authorized local project folders through MCP, providing constrained file reading, searching, patch editing, Git inspection, and whitelisted tasks without exposing arbitrary shell, deletion, or deployment capabilities.17MIT
Related MCP Connectors
Remote MCP for Android CLI agent build gate, structured receipts, audit logs, and reviewer-ready evi
A MCP server built for developers enabling Git based project management with project and personal…
Git-native policy layer for AI agents: check_action verdicts against rules approved via PR.
Latest Blog Posts
- Who's Calling? MCP Hosts Are an Identity Blind Spot (And the Spec Knows It)By Om-Shree-0709 on .mcpAgent IdentityOAuth 2.1
- Your AI Chatbot Just Exposed Your CEO's Salary to an InternBy Om-Shree-0709 on .Agent IdentityMCP SecurityOAuth Delegation
- Why MCP Servers Need Execution Sandboxing (And Why Your Current Stack Isn't Enough)By Om-Shree-0709 on .Agentic AiPrompt InjectionWebAssembly
MCP directory API
We provide all the information about MCP servers via our MCP API.
curl -X GET 'https://glama.ai/api/mcp/v1/servers/DHCross/cross-repo-ops'
If you have feedback or need assistance with the MCP directory API, please join our Discord server