Asistente de codificación MCP compatible con OpenAI y otros proveedores de LLM
Una potente recreación en Python de Claude Code con visualización mejorada en tiempo real, gestión de costes y funciones de servidor del Protocolo de Contexto de Modelo (MCP). Esta herramienta proporciona una interfaz de lenguaje natural para tareas de desarrollo de software compatible con múltiples proveedores de LLM.
Características principales
Compatibilidad con múltiples proveedores: funciona con OpenAI, Anthropic y otros proveedores de LLM
Integración del protocolo de contexto del modelo:
Ejecútelo como servidor MCP para usar con Claude Desktop y otros clientes
Conéctese a cualquier servidor MCP con el cliente MCP integrado
Sincronización multiagente para la resolución de problemas complejos
Visualización de herramientas en tiempo real: vea el progreso de la ejecución de la herramienta y los resultados en tiempo real
Gestión de costos: Realice un seguimiento del uso de tokens y los gastos con controles presupuestarios
Conjunto completo de herramientas: operaciones con archivos, búsqueda, ejecución de comandos y mucho más
Interfaz de usuario mejorada: interfaz de terminal enriquecida con indicadores de progreso y resaltado de sintaxis
Optimización del contexto: compactación inteligente de conversaciones y gestión de memoria
Coordinación de agentes: agentes especializados con diferentes roles pueden colaborar en tareas
Related MCP server: MCP Simple OpenAI Assistant
Instalación
Clonar este repositorio
Instalar dependencias:
Crea un archivo
.envcon tus claves API:
Uso
Modo CLI
Ejecute la CLI con el proveedor predeterminado (determinado a partir de las claves API disponibles):
Especifique un proveedor y un modelo:
Establezca un límite de presupuesto para administrar los costos:
Modo de servidor MCP
Ejecutar como un servidor de protocolo de contexto de modelo:
Comience en modo de desarrollo con el Inspector MCP:
Configurar el host y el puerto:
Especifique dependencias adicionales:
Cargar variables de entorno desde el archivo:
Modo cliente MCP
Conéctese a un servidor MCP usando a Claude como motor de razonamiento:
Especifique un modelo de Claude:
Pruebe el servidor de ejemplo incluido:
Modo MCP multiagente
Inicie un cliente multiagente con agentes sincronizados:
Utilice un archivo de configuración de agente personalizado:
Ejemplo con el servidor de eco:
Herramientas disponibles
Ver: Leer archivos con límites de línea opcionales
Editar: modificar archivos con reemplazo de texto preciso
Reemplazar: crear o sobrescribir archivos
GlobTool: Buscar archivos por coincidencia de patrones
GrepTool: busca el contenido de archivos mediante expresiones regulares
LS: Listar el contenido del directorio
Bash: Ejecutar comandos de shell
Comandos de chat
/help: Mostrar comandos disponibles
/compact: comprime el historial de conversaciones para ahorrar tokens
/versión: Mostrar información de la versión
/proveedores: Lista de proveedores de LLM disponibles
/costo: Muestra información de costo y uso
/presupuesto [cantidad]: establecer un límite de presupuesto
/quit, /exit: Salir de la aplicación
Arquitectura
Claude Code Python Edition está construido con una arquitectura modular:
Uso del protocolo de contexto de modelo
Usando Claude Code como servidor MCP
Una vez que el servidor MCP esté en funcionamiento, puedes conectarte a él desde Claude Desktop u otros clientes compatibles con MCP:
Instalar y ejecutar el servidor MCP:
python claude.py serveAbra la página de configuración en su navegador:
http://localhost:8000Siga las instrucciones para configurar Claude Desktop, que incluyen:
Copiar la configuración JSON
Descargue el archivo JSON autoconfigurado
Instrucciones de configuración paso a paso
Uso de Claude Code como cliente MCP
Para conectarse a cualquier servidor MCP usando Claude Code:
Asegúrese de tener su clave API de Anthropic en el entorno o archivo .env
Inicie el servidor MCP al que desea conectarse
Conectarse usando el cliente MCP:
python claude.py mcp-client path/to/server.pyEscriba consultas en la interfaz de chat interactiva
Uso del modo multiagente
Para tareas complejas, el modo multiagente permite que varios agentes especializados colaboren:
Cree un archivo de configuración del agente o utilice el ejemplo proporcionado
Inicie su servidor MCP
Inicie el cliente multiagente:
python claude.py mcp-multi-agent path/to/server.py --config examples/agents_config.jsonUtilice la interfaz de comando para interactuar con múltiples agentes:
Escriba un mensaje para transmitir a todos los agentes
Utilice
/talk Agent_Name messagepara comunicación directaUtilice
/agentspara ver todos los agentes disponiblesUtilice
/historypara ver el historial de conversaciones
Contribuyendo
Bifurcar el repositorio
Crear una rama de características
Implementa tus cambios con pruebas
Enviar una solicitud de extracción
Licencia
Instituto Tecnológico de Massachusetts (MIT)
Expresiones de gratitud
Este proyecto está inspirado en la herramienta Claude Code CLI de Anthropic, reimplementada en Python con características adicionales para una mejor visibilidad, gestión de costos y capacidades de servidor MCP.# OpenAI Code Assistant
Un potente asistente de codificación basado en API y línea de comandos que utiliza API de OpenAI con llamada y transmisión de funciones.
Características
CLI interactiva para asistencia en la codificación
API web para integración con otras aplicaciones
Implementación del servidor del Protocolo de Contexto de Modelo (MCP)
Soporte de replicación para alta disponibilidad
Arquitectura basada en herramientas para extensibilidad
Aprendizaje por refuerzo para la optimización de herramientas
Cliente web para interacción basada en navegador
Instalación
Clonar el repositorio
Instalar dependencias:
pip install -r requirements.txtEstablezca su clave API de OpenAI:
export OPENAI_API_KEY=your_api_key
Uso
Modo CLI
Ejecute el asistente en modo CLI interactivo:
Opciones:
--model,-m: especifica el modelo a utilizar (predeterminado: gpt-4o)--temperature,-t: establece la temperatura para la generación de la respuesta (valor predeterminado: 0)--verbose,-v: Habilita la salida detallada con información adicional--enable-rl/--disable-rl: Habilitar o deshabilitar el aprendizaje de refuerzo para la optimización de herramientas--rl-update: activa manualmente una actualización del modelo RL
Modo de servidor API
Ejecute el asistente como un servidor API:
Opciones:
--host: Dirección de host a la que vincularse (predeterminado: 127.0.0.1)--port,-p: Puerto para escuchar (predeterminado: 8000)--workers,-w: Número de procesos de trabajo (predeterminado: 1)--enable-replication: Habilitar la replicación entre instancias--primary/--secondary: si se trata de una instancia primaria o secundaria--peer: Instancias de pares con las que replicar (host:puerto), se pueden especificar varias veces
Modo de servidor MCP
Ejecute el asistente como un servidor de Protocolo de contexto de modelo (MCP):
Opciones:
--host: Dirección de host a la que vincularse (predeterminado: 127.0.0.1)--port,-p: Puerto para escuchar (predeterminado: 8000)--dev: Habilitar el modo de desarrollo con registro adicional--dependencies: Dependencias de Python adicionales para instalar--env-file: Ruta al archivo .env con variables de entorno
Modo cliente MCP
Conectarse a un servidor MCP utilizando el asistente como motor de razonamiento:
Opciones:
--model,-m: Modelo a utilizar para el razonamiento (predeterminado: gpt-4o)--host: Dirección de host del servidor MCP (predeterminado: 127.0.0.1)--port,-p: Puerto para el servidor MCP (predeterminado: 8000)
Script de implementación
Para una implementación más sencilla, utilice el script proporcionado:
Para habilitar la replicación:
Cliente web
Para usar el cliente web, abra web-client.html en su navegador. Asegúrese de que el servidor API esté en ejecución.
Puntos finales de API
Puntos finales de API estándar
POST /conversation: Crea una nueva conversaciónPOST /conversation/{conversation_id}/message: Enviar un mensaje a una conversaciónPOST /conversation/{conversation_id}/message/stream: Transmitir una respuesta de mensajeGET /conversation/{conversation_id}: Obtener detalles de la conversaciónDELETE /conversation/{conversation_id}: Eliminar una conversaciónGET /health: Punto final de comprobación de estado
Puntos finales del protocolo MCP
GET /: Comprobación del estado de salud (protocolo MCP)POST /context: Obtener el contexto para una plantilla de solicitudGET /prompts: Lista de plantillas de indicaciones disponiblesGET /prompts/{prompt_id}: Obtener una plantilla de mensaje específicaPOST /prompts: Crea una nueva plantilla de mensajePUT /prompts/{prompt_id}: Actualizar una plantilla de mensaje existenteDELETE /prompts/{prompt_id}: Eliminar una plantilla de mensaje
Replicación
El sistema de replicación permite ejecutar múltiples instancias del asistente con estado sincronizado. Esto proporciona:
Alta disponibilidad
Equilibrio de carga
Tolerancia a fallos
Para configurar la replicación:
Inicie una instancia principal con
--enable-replicationInicie instancias secundarias con
--enable-replication --secondary --peer [primary-host:port]
Herramientas
El asistente incluye varias herramientas:
Clima: obtenga el clima actual para una ubicación
Ver: Leer archivos del sistema de archivos
Editar: Editar archivos
Reemplazar: Escribir archivos
Bash: Ejecutar comandos bash
GlobTool: Coincidencia de patrones de archivos
GrepTool: Búsqueda de contenido
LS: Listar el contenido del directorio
JinaSearch: búsqueda web utilizando Jina.ai
JinaFactCheck: Verificación de datos con Jina.ai
JinaReadURL: Leer y resumir páginas web
Comandos CLI
/help: Mostrar mensaje de ayuda/compact: Compacta la conversación para reducir el uso de tokens/status: Muestra el uso del token y la información de la sesión/config: Mostrar la configuración actual/rl-status: Mostrar el estado del optimizador de la herramienta RL (si está habilitado)/rl-update: Actualiza el modelo RL manualmente (si está habilitado)/rl-stats: Mostrar estadísticas de uso de la herramienta (si está habilitada)