Cross Repo Ops MCP
Cross Repo Ops MCP
Una capa de capacidades MCP (Model Context Protocol) independiente del repositorio para operaciones controladas en repositorios locales.
Qué hace
Cross Repo Ops MCP proporciona un servidor stdio JSON-RPC reforzado en seguridad que expone operaciones acotadas y controladas por políticas en repositorios git locales:
Lectura: listado de árbol, búsqueda con ripgrep, lecturas de archivos acotadas, git status/diff
Escritura: parches verificados por contexto con soporte de creación/modificación (solo repositorios con permiso de escritura)
Tareas: ejecución de tareas nombradas aprobadas (solo allowlist, sin shell arbitrario)
Git: listar/crear/cambiar ramas, commit (solo archivos explícitos), push (solo origin, solo repositorios con permiso de push)
Related MCP server: void-bridge
Arquitectura
Cross Repo Ops MCP es una capa de capacidades independiente del repositorio para operaciones controladas en repositorios locales. Está diseñado para ubicarse junto a un proyecto XcodeIDEapp, tomando ideas de patrones de andamiaje de paneles de IDE, pero sigue siendo genérico y no depende de ningún IDE o estructura de proyecto específica.
Cross Repo Ops MCP = controlled local repository actions (read, patch, git, tasks)El servidor se basa en políticas: los repositorios, las capacidades, las rutas excluidas y las tareas aprobadas se declaran en una configuración JSON. No hay lógica específica del proyecto codificada en el núcleo.
Módulos
Módulo | Responsabilidad |
| Política centralizada de capacidades del repositorio (allowlist, flags writable/pushable, rutas excluidas, allowlist de tareas, límites, timeouts) |
| Única frontera autoritativa de validación de rutas (comprobaciones de traversal, symlink, ruta absoluta y contención) |
| Listado de árbol, búsqueda con ripgrep, lectura de archivos acotada, git status/diff |
| Aplicación de parches verificados por contexto con soporte de creación/modificación |
| Operaciones de rama, commit y push con salvaguardas de seguridad |
| Resolución y ejecución de la allowlist de tareas nombradas |
| Servidor MCP stdio JSON-RPC |
| Tipos de error |
Modelo de seguridad
Allowlist de repositorios: Solo los repositorios explícitamente listados en la política son accesibles.
Flags de capacidad:
writableypushableson por repositorio, con valor predeterminadofalse.Contención de rutas: Todas las rutas se resuelven y verifican contra la raíz del repositorio. Se rechazan traversal (
..), rutas absolutas y symlinks.Exclusión de archivos sensibles:
.env,*.pem, claves de API, tokens, credenciales y archivos binarios están bloqueados para lectura y escritura.Seguridad de parches:
old_textdebe coincidir exactamente; las coincidencias múltiples requierencontextpara desambiguar.create=truese niega a sobrescribir archivos existentes.Allowlist de tareas: Las tareas se resuelven por nombre desde una allowlist del lado del servidor, no desde la entrada del usuario. No hay comandos de shell arbitrarios.
Seguridad de Git: Se rechaza el staging masivo (
git add -A). Los commits se limitan a archivos explícitamente listados. Los archivos sensibles no se pueden incluir en commits. Los nombres de rama se validan contra inyección. El push se limita aoriginsolo para repositorios con permiso de push.Límites de salida: Todas las operaciones tienen topes de salida configurables (caracteres de lectura, resultados de búsqueda, entradas de árbol, caracteres de diff, salida de tareas).
Instalación
# No external dependencies required — Python 3.10+ standard library only.
cd cross-repo-ops
pip install -e . # optional, for package installUso
Ejecutar el servidor MCP
python3 -m cross_repo_opsEl servidor escucha en stdin/stdout mensajes JSON-RPC 2.0.
Política personalizada
CROSS_REPO_OPS_CONFIG=/path/to/policy.json python3 -m cross_repo_opsFormato del archivo de política
{
"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
}
}
}
}Herramientas MCP
Herramienta | Descripción |
| Lista archivos/directorios con exclusiones de seguridad |
| Búsqueda con ripgrep y salida acotada |
| Lee un fragmento acotado de un archivo de texto no sensible |
| Inspecciona el estado de git |
| Ver diffs sin stagear, stageados y de commits |
| Aplica un parche verificado por contexto (solo repositorios con permiso de escritura) |
| Ejecuta una tarea nombrada aprobada (solo allowlist) |
| Listar/crear/cambiar ramas (repositorios con permiso de escritura para crear/cambiar) |
| Hace stage y commit de archivos explícitos (solo repositorios con permiso de escritura) |
| Push a origin (solo repositorios con permiso de push) |
Pruebas
python3 -m unittest tests.test_security tests.test_adversarial -v32 pruebas que cubren:
Lecturas permitidas y bloqueadas
Rechazo de traversal de rutas, rutas absolutas y escapes por symlink
Bloqueo de lectura/escritura/commit de archivos sensibles
Aplicación de repositorios con permiso de escritura frente a solo lectura
Parche con contexto correcto o desactualizado
Parche dirigido a archivos excluidos
Allowlist de tareas nombradas (éxito, nombre desconocido, intento de inyección de shell)
Timeout de tarea y truncamiento de salida
Git status/diff
Salvaguardas contra inyección en nombres de rama
Salvaguardas de commit (mensaje vacío, archivos sensibles, staging masivo, archivos pre-stageados)
Rechazo de push para repositorios sin permiso de push
Manejo de argumentos faltantes en el servidor
Licencia
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