Skip to main content
Glama

mcp-pioduro

Implementación del servidor Pyodide para el Protocolo de Contexto de Modelo (MCP). Este servidor permite que los Modelos de Lenguaje Grandes (LLM) ejecuten código Python a través de la interfaz MCP.

Características

  • Capacidad de ejecución de código Python para LLM mediante Pyodide

  • Implementación de servidor compatible con MCP

  • Compatibilidad con los modos de transporte stdio y SSE

  • Implementación robusta escrita en TypeScript

  • Disponible como herramienta de línea de comandos

Related MCP server: didlogic_mcp

Instalación

npm install mcp-pyodide

Uso

Como servidor

import { runServer } from "mcp-pyodide"; // Start the server runServer().catch((error: unknown) => { console.error("Error starting server:", error); process.exit(1); });

Como herramienta de línea de comandos

Iniciar en modo stdio (predeterminado):

mcp-pyodide

Iniciar en modo SSE:

mcp-pyodide --sse

Modo SSE

Cuando se ejecuta en modo SSE, el servidor proporciona los siguientes puntos finales:

  • Conexión SSE: http://localhost:3020/sse

  • Manejador de mensajes: http://localhost:3020/messages

Ejemplo de conexión de cliente:

const eventSource = new EventSource("http://localhost:3020/sse"); eventSource.onmessage = (event) => { console.log("Received:", JSON.parse(event.data)); };

Estructura del proyecto

mcp-pyodide/ ├── src/ │ ├── formatters/ # Data formatting handlers │ ├── handlers/ # Request handlers │ ├── lib/ # Library code │ ├── tools/ # Utility tools │ ├── utils/ # Utility functions │ └── index.ts # Main entry point ├── build/ # Build artifacts ├── pyodide-packages/ # Pyodide-related packages └── package.json

Dependencias

  • @modelcontextprotocol/sdk : SDK de MCP (^1.4.0)

  • pyodide : entorno de ejecución de Python (^0.27.1)

  • arktype : Biblioteca de validación de tipos (^2.0.1)

  • express : marco web para soporte SSE

  • cors : middleware CORS para compatibilidad con SSE

Desarrollo

Requisitos

  • Node.js 18 o superior

  • npm 9 o superior

Configuración

# Clone the repository git clone <repository-url> # Install dependencies npm install # Build npm run build

Guiones

  • npm run build : compila TypeScript y establece permisos de ejecución

  • npm start : Ejecutar el servidor en modo stdio

  • npm run start:sse : Ejecutar el servidor en modo SSE

Variables de entorno

  • PYODIDE_CACHE_DIR : Directorio para la caché de Pyodide (predeterminado: "./cache")

  • PYODIDE_DATA_DIR : Directorio para datos montados (predeterminado: "./data")

  • PORT : Puerto para el servidor SSE (predeterminado: 3020)

Licencia

Instituto Tecnológico de Massachusetts (MIT)

Contribuyendo

  1. Bifurcar el repositorio

  2. Crear una rama de características ( git checkout -b feature/amazing-feature )

  3. Confirme sus cambios ( git commit -am 'Add some amazing feature' )

  4. Empujar a la rama ( git push origin feature/amazing-feature )

  5. Crear una solicitud de extracción

Notas importantes

  • Este proyecto está en desarrollo y la API puede cambiar.

  • Pruebe exhaustivamente antes de usar en producción.

  • Tenga cuidado al ejecutar código no confiable por razones de seguridad.

  • Al utilizar el modo SSE, asegúrese de que la configuración CORS sea adecuada si es necesario

Apoyo

Utilice el Rastreador de problemas para problemas y preguntas.

Latest Blog Posts

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/yonaka15/mcp-pyodide'

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