YM

yonaka15/mcp-pyodide

Developer tools

Эта страница переведена автоматически. Технические детали смотрите в оригинале. Открыть оригинал

19 stars 6 forks Качество 53 Тренд 22MIT

Реализация сервера Pyodide для протокола Model Context Protocol (MCP).

Обзор

Реализация сервера Pyodide для протокола Model Context Protocol (MCP). Этот сервер позволяет Large Language Models (LLM) выполнять код Python через интерфейс MCP. - Возможность выполнения кода Python для LLM с использованием Pyodide - реализация сервера, совместимого с MCP - поддержка как режимов стрио, так и транспортных режимов SSE - надежная реализация, написанная на TypeScript - Доступно в качестве инструмента командной строки При работе в режиме SSE сервер предоставляет следующие конечные точки: - SSE Connection: http://localhost:3020/sse - Message Handler: http://localhost:3020/messages - @modelcontextprotocol/sdk: MCP SDK (^1.4.0) -pyodide: Python runtime environment (^0.27.1) - arktype: Type validation library (^2.0.1) - express: Web framework for SSE support - cors: CORS middleware for SSE support - Узел.

Обзор (машинный перевод)

Реализация сервера Pyodide для протокола Model Context Protocol (MCP). Этот сервер позволяет Large Language Models (LLM) выполнять код Python через интерфейс MCP.

Особенности

Возможность выполнения кода Python для LLM с использованием Pyodide

  • реализация MCP-совместимых серверов
  • Поддержка как режимов стадийного, так и SSE транспорта Надежная реализация, написанная в TypeScript Доступен как инструмент командной строки

##Установка

Использование

###Как сервер

###Как командный инструмент

Запуск в режиме stdio (по умолчанию):

Начните в режиме SSE:

Режим SSE

При работе в режиме SSE сервер предоставляет следующие конечные точки:

  • SSE Connection: http://localhost:3020/sse
  • Ведущий: http://localhost:3020/messages

Пример клиентского соединения:

Проектная структура

Зависимости

  • @modelcontextprotocol/sdk: MCP SDK (^1.4.0) pyodide: среда выполнения Python (^0.27.1) arktype: Библиотека проверки типов (^2.0.1)
  • [[Т5]]: Веб-фреймворк для поддержки SSE cors: Промежуточное ПО CORS для поддержки SSE

##Развитие

Требования

Node.js 18 или выше

  • npm 9 или выше

Настройка

###Скрипты

  • [[Т7]]: Составьте TypeScript и установите разрешения на выполнение

Эта страница переведена автоматически. Технические детали смотрите в оригинале.

README

Показан фрагмент оригинального README. Открыть оригинал.

mcp-pyodide

A Pyodide server implementation for the Model Context Protocol (MCP). This server enables Large Language Models (LLMs) to execute Python code through the MCP interface.

Features

  • Python code execution capability for LLMs using Pyodide
  • MCP compliant server implementation
  • Support for both stdio and SSE transport modes
  • Robust implementation written in TypeScript
  • Available as a command-line tool

Installation

npm install mcp-pyodide

Usage

As a Server

import { runServer } from "mcp-pyodide";

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

As a Command-line Tool

Start in stdio mode (default):

mcp-pyodide

Start in SSE mode:

mcp-pyodide --sse

SSE Mode

When running in SSE mode, the server provides the following endpoints:

  • SSE Connection: http://localhost:3020/sse
  • Message Handler: http://localhost:3020/messages

Example client connection:

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

Project Structure

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

Dependencies

  • @modelcontextprotocol/sdk: MCP SDK (^1.4.0)
  • pyodide: Python runtime environment (^0.27.1)
  • arktype: Type validation library (^2.0.1)
  • express: Web framework for SSE support
  • cors: CORS middleware for SSE support

Development

Requirements

  • Node.js 18 or higher
  • npm 9 or higher

Setup

# Clone the repository
git clone 

# Install dependencies
npm install

# Build
npm run build

Scripts

  • npm run build: Compile TypeScript and set execution permissions
  • npm start: Run server in stdio mode
  • npm run start:sse: Run server in SSE mode

Environment Variables

  • PYODIDE_CACHE_DIR: Directory for Pyodide cache (default: “./cache”)
  • PYODIDE_DATA_DIR: Directory for mounted data (default: “./data”)
  • PORT: Port for SSE server (default: 3020)

License

MIT

Contributing

  1. Fork the repository
  2. Create a feature branch (git checkout -b feature/amazing-feature)
  3. Commit your changes (git commit -am 'Add some amazing feature')
Открыть полный README на GitHub

Установка

This server does not publish a one-line install command.

Open the repository installation guide Новичок в MCP? Начните с руководства на mcpskill.org →