AR

awslabs/run-model-context-protocol-servers-with-aws-lambda

Developer tools

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

381 stars 48 forks Качество 78 Тренд 39Apache-2.0

Запуск существующих серверов на основе stdio Model Context Protocol (MCP) в функциях AWS Lambda

Обзор

Этот проект позволяет запускать серверы на основе Model Context Protocol stdio в функциях AWS Lambda. В настоящее время большинство реализаций MCP-серверов и клиентов полностью локальны на одной машине. Настольные приложения, такие как IDE или Claude Desktop, инициируют MCP-серверы локально как дочерние процессы и взаимодействуют с каждым из них через долго работающий поток stdio. Эта библиотека помогает обернуть существующие stdio MCP серверы в функции Lambda. Вы можете вызвать эти функциональные MCP-серверы из вашего приложения с помощью протокола MCP через кратковременные HTTPS-соединения. Ваше приложение может быть настольным приложением, распределённой системой, работающей в облаке или любой другой архитектурой. Используя эту библиотеку, функция Lambda будет управлять жизненным циклом вашего stdio MCP сервера. Каждое вызов функции Lambda будет: 1. Запустить stdio MCP сервер как дочерний процесс 1. Инициализировать MCP-сервер 1. Пересылать входящий запрос на локальный сервер 1.

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

Этот проект позволяет запускать серверы на основе Model Context Protocol stdio в функциях AWS Lambda.

В настоящее время большинство реализаций MCP-серверов и клиентов полностью локальны на одной машине. Настольные приложения, такие как IDE или Claude Desktop, инициируют MCP-серверы локально как дочерние процессы и взаимодействует с каждым из этих серверов через долго работающий поток stdio.

Эта библиотека помогает обернуть существующие stdio MCP серверы в функции Lambda. Вы можете вызвать эти функциональные MCP-серверы из своего приложения с помощью протокола MCP через кратковременные HTTPS-соединения. Ваше приложение тогда может быть настольным приложением, распределённой системой, работающей в облаке, Или любой другой архитектуры.

Используя эту библиотеку, функция Lambda управляет жизненным циклом вашего stdio MCP сервера. Каждое вызвание функции Лямбда:

  1. Запустить stdio MCP-сервер как дочерний процесс
  2. Инициализация MCP-сервера
  3. Пересылать входящий запрос на локальный сервер
  4. Вернуть ответ сервера вызывающему функции
  5. Отключить дочерний процесс сервера MCP

Эта библиотека поддерживает подключение к MCP-серверам на базе Lambda четырьмя способами:

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

README

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

Run Model Context Protocol (MCP) servers with AWS Lambda

This project enables you to run Model Context Protocol stdio-based servers in AWS Lambda functions.

Currently, most implementations of MCP servers and clients are entirely local on a single machine. A desktop application such as an IDE or Claude Desktop initiates MCP servers locally as child processes and communicates with each of those servers over a long-running stdio stream.

flowchart LR
    subgraph "Your Laptop"
        Host["Desktop Applicationwith MCP Clients"]
        S1["MCP Server A(child process)"]
        S2["MCP Server B(child process)"]
        Host |"MCP Protocol(over stdio stream)"| S1
        Host |"MCP Protocol(over stdio stream)"| S2
    end

This library helps you to wrap existing stdio MCP servers into Lambda functions. You can invoke these function-based MCP servers from your application using the MCP protocol over short-lived HTTPS connections. Your application can then be a desktop-based app, a distributed system running in the cloud, or any other architecture.

flowchart LR
    subgraph "Distributed System"
        App["Your Applicationwith MCP Clients"]
        S3["MCP Server A(Lambda function)"]
        S4["MCP Server B(Lambda function)"]
        App |"MCP Protocol(over HTTPS connection)"| S3
        App |"MCP Protocol(over HTTPS connection)"| S4
    end

Using this library, the Lambda function will manage the lifecycle of your stdio MCP server. Each Lambda function invocation will:

  1. Start the stdio MCP server as a child process
  2. Initialize the MCP server
  3. Forward the incoming request to the local server
  4. Return the server’s response to the function caller
  5. Shut down the MCP server child process

This library supports connecting to Lambda-based MCP servers in four ways:

  1. The MCP Streamable HTTP transport, using Amazon API Gateway. Typically authenticated using OAuth.
  2. The MCP Streamable HTTP transport, using Amazon Bedrock AgentCore Gateway. Authenticated using OAuth.
  3. A custom Streamable HTTP transport with support for SigV4, using a Lambda function URL. Authenticated with AWS IAM.
  4. A custom Lambda invocation transport, using the Lambda Invoke API directly. Authenticated with AWS IAM.

Determine your server parameters

Открыть полный README на GitHub

Установка

npx --offline my-mcp-server-typescript-module --my-server-command-line-parameter some_value
Новичок в MCP? Начните с руководства на mcpskill.org →