Enables AI agents to manage Subversion (SVN) repositories, including basic operations (info, status, log, diff, checkout, update), file management (add, commit, delete, revert), and maintenance tasks like cleanup.
Click on "Install Server".
Wait a few minutes for the server to deploy. Once ready, it will show a "Started" state.
In the chat, type
@followed by the MCP server name and your instructions, e.g., "@SVN MCP Servershow me the status of the current working directory"
That's it! The server will respond to your query, and you can continue using it as needed.
Here is a step-by-step guide with screenshots.
SVN MCP Server
Un servidor MCP (Model Context Protocol) completo para integración con Subversion (SVN), diseñado para permitir a agentes de IA gestionar repositorios SVN de manera eficiente.
🎯 Características
✅ Operaciones básicas de repositorio: info, status, log, diff, checkout, update
✅ Gestión de archivos: add, commit, delete, revert
✅ Herramientas de mantenimiento: cleanup
🔄 Gestión de ramas: (En desarrollo)
🔄 Operaciones avanzadas: merge, switch, properties (En desarrollo)
🔄 Herramientas de análisis: blame, conflict detection (En desarrollo)
🔄 Operaciones en lote: (En desarrollo)
Related MCP server: Codebase MCP
📋 Requisitos
Node.js >= 18.0.0
Subversion (SVN) instalado y disponible en PATH
TypeScript (para desarrollo)
🔍 Detectar instalación de SVN
Verificar si SVN está instalado
Salida esperada si SVN está correctamente instalado:
❌ Errores comunes si SVN NO está instalado:
🛠️ Diagnóstico avanzado
💾 Instalar SVN en Windows
Opción 1: Gestores de paquetes
Opción 2: Instaladores oficiales
TortoiseSVN (incluye cliente de línea de comandos):
https://tortoisesvn.net/downloads.html ✅ Incluye cliente GUI y CLI ✅ Integración con Windows ExplorerSlikSVN (solo línea de comandos):
https://sliksvn.com/download/ ✅ Ligero (solo CLI) ✅ Ideal para automatizaciónCollabNet Subversion:
https://www.collab.net/downloads/subversion ✅ Versión empresarial ✅ Soporte comercial disponible
Opción 3: Visual Studio o Git for Windows
🐧 Instalar SVN en Linux
🍎 Instalar SVN en macOS
🔧 Configurar SVN después de la instalación
Verificar configuración global
Verificar acceso a repositorios
🚀 Instalación
Desde NPM
Desarrollo Local
⚙️ Configuración
Variables de Entorno
Variable | Descripción | Por Defecto |
| Ruta del ejecutable SVN |
|
| Directorio de trabajo |
|
| Usuario para autenticación | - |
| Contraseña para autenticación | - |
| Timeout en milisegundos |
|
Ejemplo de configuración MCP
🛠️ Herramientas Disponibles
Operaciones Básicas
svn_health_check
Verificar el estado de salud del sistema SVN y working copy.
svn_info
Obtener información detallada del working copy o archivo específico.
svn_status
Ver el estado de archivos en el working copy.
svn_log
Ver historial de commits del repositorio.
svn_diff
Ver diferencias entre versiones de archivos.
Operaciones de Repositorio
svn_checkout
Hacer checkout de un repositorio SVN.
svn_update
Actualizar working copy desde el repositorio.
Gestión de Archivos
svn_add
Añadir archivos al control de versiones.
svn_commit
Confirmar cambios al repositorio.
svn_delete
Eliminar archivos del control de versiones.
svn_revert
Revertir cambios locales en archivos.
Herramientas de Mantenimiento
svn_cleanup
Limpiar working copy de operaciones interrumpidas.
📖 Ejemplos de Uso
Verificar estado del sistema
Obtener información del repositorio
Ver estado de archivos
Hacer checkout de un repositorio
Confirmar cambios
🧪 Testing
🏗️ Desarrollo
Scripts disponibles
Estructura del proyecto
📊 Estado del Desarrollo
Ver el archivo SVN_MCP_IMPLEMENTATION.md para el checklist completo de implementación.
Progreso actual: Etapa 1 completada (Operaciones Básicas) ✅
Próximas etapas:
Gestión de ramas (branching)
Operaciones avanzadas (merge, switch)
Herramientas de análisis
Operaciones en lote
🐛 Troubleshooting
SVN no encontrado
Solución: Instalar SVN y asegurarse de que esté en el PATH del sistema.
No es un working copy
Solución: Navegar a un directorio que sea un working copy de SVN o hacer checkout primero.
Problemas de autenticación
Solución: Configurar las variables de entorno SVN_USERNAME y SVN_PASSWORD.
Timeout en operaciones largas
Solución: Incrementar el valor de SVN_TIMEOUT.
📄 Licencia
MIT License - ver LICENSE para más detalles.
🤝 Contribuir
Fork el proyecto
Crear una rama feature (
git checkout -b feature/nueva-caracteristica)Commit los cambios (
git commit -am 'Add nueva caracteristica')Push a la rama (
git push origin feature/nueva-caracteristica)Crear un Pull Request
📞 Soporte
Issues: GitHub Issues
Documentación: Wiki del proyecto
Email: soporte@grec0.dev