Skip to main content
Glama

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

pip install mcp-code-editor

⚙️ 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

{ "mcpServers": { "mcp-code-editor": { "command": "mcp-code-editor", "args": [], "env": {} } } }

Otros Clientes MCP

{ "servers": { "mcp-code-editor": { "command": "mcp-code-editor", "args": [], "cwd": "/ruta/a/tu/proyecto" } } }

🛠️ Herramientas Disponibles

Gestión de Proyectos

setup_code_editor

Analiza la estructura del proyecto y construye el índice AST.

setup_code_editor( path="/ruta/al/proyecto", analyze_ast=True )

project_files

Obtiene archivos del proyecto con filtros opcionales.

project_files( filter_extensions=[".py", ".js"], max_depth=3, format_as_tree=True )

Análisis de Código

get_code_definition

Busca definiciones y ubicaciones de uso de cualquier identificador.

get_code_definition( identifier="function_name", definition_type="function", include_usage=True )

read_file_with_lines

Lee archivos con números de línea y metadatos AST para Python.

read_file_with_lines( path="archivo.py", start_line=10, end_line=50 )

Edición de Archivos

apply_diff_tool

Aplica modificaciones precisas con análisis de dependencias automático.

apply_diff_tool( path="archivo.py", blocks=[ { "start_line": 15, "end_line": 17, "search_content": "def old_function():", "replace_content": "def new_function():" } ], force=False )

create_file_tool

Crea nuevos archivos con contenido.

create_file_tool( path="nuevo_archivo.py", content="print('Hello World')", overwrite=False )

delete_file_tool

Elimina archivos con opción de respaldo.

delete_file_tool( path="archivo_obsoleto.py", create_backup=True )

Integración de Librerías

index_library_tool

Indexa librerías externas para análisis.

index_library_tool( library_name="pandas", include_private=False )

search_library_tool

Busca definiciones en librerías indexadas.

search_library_tool( library_name="pandas", query="DataFrame", definition_type="class" )

list_indexed_libraries_tool

Lista todas las librerías indexadas.

list_indexed_libraries_tool()

Consola Interactiva

start_console_process_tool

Inicia procesos de consola interactivos.

start_console_process_tool( command="python -u -i", working_dir="/ruta/al/proyecto", name="python_session" )

send_to_console_tool

Envía entrada a procesos de consola con detección inteligente.

send_to_console_tool( process_id="process_id", input_text="print('Hello')", wait_for_response=True, force_send=False )

check_console_tool

Obtiene instantánea de salida de consola.

check_console_tool( process_id="process_id", wait_seconds=2, lines=50, filter_type="stdout" )

list_console_processes_tool

Lista procesos de consola activos.

list_console_processes_tool( include_terminated=False, summary_only=True )

terminate_console_process_tool

Termina procesos de consola.

terminate_console_process_tool( process_id="process_id", force=False, timeout=10 )

🔐 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

1. Configurar proyecto: setup_code_editor 2. Analizar estructura: project_files 3. Buscar función: get_code_definition 4. Modificar código: apply_diff_tool 5. Probar cambios: start_console_process_tool

Refactoring Inteligente

1. Encontrar todas las ubicaciones: get_code_definition 2. Analizar dependencias: apply_diff_tool (sin force) 3. Revisar impacto: analizar warnings 4. Aplicar cambios: apply_diff_tool (con force si necesario)

Exploración de Código

1. Indexar librerías: index_library_tool 2. Buscar en librerías: search_library_tool 3. Leer código con contexto: read_file_with_lines 4. Analizar dependencias: get_code_definition

🐛 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

  1. Siempre usar apply_diff_tool sin force=True primero

  2. Revisar warnings y análisis de dependencias

  3. Solo usar force=True cuando estés seguro

  4. Usar get_code_definition para entender el impacto

Gestión de Procesos

  • Usar check_console_tool con wait_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:

  1. Fork el repositorio

  2. Crea una rama para tu feature

  3. Añade tests si es necesario

  4. Envía un Pull Request

📄 Licencia

MIT License - ver archivo LICENSE para detalles.

🔗 Enlaces

-
security - not tested
A
license - permissive license
-
quality - not tested

Related MCP Servers

  • A
    security
    A
    license
    A
    quality
    TypeScript-based MCP server designed to enhance code editing experiences by providing features such as hover information, code completion, and diagnostics.
    Last updated -
    3
    25
    MIT License
    • Apple
  • -
    security
    A
    license
    -
    quality
    FastMCP 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 -
    3
    MIT License
  • -
    security
    A
    license
    -
    quality
    A TypeScript-based MCP server that provides tools for making precise line-based edits to text files within allowed directories.
    Last updated -
    30
    MIT License
    • Apple
  • A
    security
    -
    license
    A
    quality
    An MCP server that provides tools for reading, writing, and editing files on the local filesystem.
    Last updated -
    1,558
    Apache 2.0
    • Apple

View all related MCP servers

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/alejoair/mcp-code-editor'

If you have feedback or need assistance with the MCP directory API, please join our Discord server