Provides AST (Abstract Syntax Tree) analysis for Python code, enabling detailed code structure examination and manipulation
MCP Code Editor
Un servidor MCP (Model Context Protocol) avanzado que proporciona herramientas de edición de código inteligentes con análisis AST, gestión de proyectos e integración de consola interactiva.
🚀 Características Principales
🔧 Gestión de Proyectos
- Análisis automático de estructura de proyecto con indexación AST
- Filtrado inteligente de archivos respetando
.gitignore
- Caché de configuración para operaciones rápidas
- Detección automática de tipo de proyecto (Python, JavaScript, etc.)
🔍 Análisis de Código AST
- Búsqueda de definiciones y ubicaciones de uso
- Análisis de dependencias entre funciones y clases
- Detección de cambios estructurales que pueden romper el código
- Métricas de código automáticas (conteo de funciones, clases, imports)
✏️ Edición Inteligente de Archivos
- Modificaciones precisas con sistema diff avanzado
- Protección contra cambios críticos con análisis de impacto
- Creación y eliminación de archivos con respaldo automático
- Lectura con números de línea y metadatos AST
📚 Integración de Librerías
- Indexación de librerías externas (pandas, numpy, requests, etc.)
- Búsqueda en librerías indexadas para autocompletado
- Análisis de compatibilidad entre librerías
🖥️ Consola Interactiva
- Procesos de consola inteligentes (Python, Node.js, CMD)
- Detección automática de prompts vs procesos en segundo plano
- Gestión de múltiples procesos simultáneos
- Captura de salida con filtrado por tipo
📦 Instalación
⚙️ Configuración MCP Client
Agrega la siguiente configuración a tu cliente MCP:
Claude Desktop
Edita el archivo de configuración:
- Windows:
%APPDATA%/Claude/claude_desktop_config.json
- macOS:
~/Library/Application Support/Claude/claude_desktop_config.json
- Linux:
~/.config/claude/claude_desktop_config.json
Otros Clientes MCP
🛠️ Herramientas Disponibles
Gestión de Proyectos
setup_code_editor
Analiza la estructura del proyecto y construye el índice AST.
project_files
Obtiene archivos del proyecto con filtros opcionales.
Análisis de Código
get_code_definition
Busca definiciones y ubicaciones de uso de cualquier identificador.
read_file_with_lines
Lee archivos con números de línea y metadatos AST para Python.
Edición de Archivos
apply_diff_tool
Aplica modificaciones precisas con análisis de dependencias automático.
create_file_tool
Crea nuevos archivos con contenido.
delete_file_tool
Elimina archivos con opción de respaldo.
Integración de Librerías
index_library_tool
Indexa librerías externas para análisis.
search_library_tool
Busca definiciones en librerías indexadas.
list_indexed_libraries_tool
Lista todas las librerías indexadas.
Consola Interactiva
start_console_process_tool
Inicia procesos de consola interactivos.
send_to_console_tool
Envía entrada a procesos de consola con detección inteligente.
check_console_tool
Obtiene instantánea de salida de consola.
list_console_processes_tool
Lista procesos de consola activos.
terminate_console_process_tool
Termina procesos de consola.
🔐 Características de Seguridad
Protección Inteligente
- Análisis de impacto antes de modificaciones críticas
- Bloqueo automático de cambios que pueden romper múltiples archivos
- Advertencias de dependencias y archivos afectados
- Sugerencias de revisión basadas en el análisis AST
Detección de Entrada Inteligente
- Prevención automática de envío de comandos a procesos en segundo plano
- Detección de prompts vs procesos ejecutándose
- Modo force para señales de control (Ctrl+C)
💡 Casos de Uso
Desarrollo Automatizado
Refactoring Inteligente
Exploración de Código
🐛 Mejores Prácticas
Comandos de Consola Recomendados
- Python:
python -u -i
(modo unbuffered + interactivo) - Node.js:
node
(REPL por defecto) - Windows CMD:
cmd
- PowerShell:
powershell
- Bash:
bash
Workflow de Edición Segura
- Siempre usar
apply_diff_tool
sinforce=True
primero - Revisar warnings y análisis de dependencias
- Solo usar
force=True
cuando estés seguro - Usar
get_code_definition
para entender el impacto
Gestión de Procesos
- Usar
check_console_tool
conwait_seconds
apropiado - Verificar estado con
list_console_processes_tool
- Limpiar procesos terminados con
cleanup_terminated_processes_tool
📚 Documentación Adicional
🤝 Contribuciones
Las contribuciones son bienvenidas. Por favor:
- Fork el repositorio
- Crea una rama para tu feature
- Añade tests si es necesario
- Envía un Pull Request
📄 Licencia
MIT License - ver archivo LICENSE para detalles.
🔗 Enlaces
- PyPI: https://pypi.org/project/mcp-code-editor/
- GitHub: https://github.com/alejoair/mcp-code-editor
- Documentación: https://alejoair.github.io/mcp-code-editor/
- Issues: https://github.com/alejoair/mcp-code-editor/issues
This server cannot be installed
A FastMCP server providing powerful code editing tools including precise file modifications with diff-based operations, file creation and reading with line numbers, and more tools for code editing workflows.
Related MCP Servers
- AsecurityAlicenseAqualityTypeScript-based MCP server designed to enhance code editing experiences by providing features such as hover information, code completion, and diagnostics.Last updated -313MIT License
- -securityAlicense-qualityFastMCP is a comprehensive MCP server allowing secure and standardized data and functionality exposure to LLM applications, offering resources, tools, and prompt management for efficient LLM interactions.Last updated -3PythonMIT License
- -securityAlicense-qualityA TypeScript-based MCP server that provides tools for making precise line-based edits to text files within allowed directories.Last updated -18TypeScriptMIT License
- AsecurityAlicenseAqualityAn MCP server that provides tools for reading, writing, and editing files on the local filesystem.Last updated -11,387PythonApache 2.0