MCP HTTP包装器

一个用于Model Context Protocol服务器的AWS Lambda HTTP包装器,提供本地开发和部署功能。

  • by manasnilorout
  • TypeScript
  • 本地部署
  • 更新于
在 GitHub 查看 manasnilorout/mcp-server-http-wrapper

使用说明

MCP HTTP包装器

用于模型上下文协议服务器的AWS Lambda HTTP包装器。

先决条件

  • Node.js(v18或更高版本)
  • AWS CLI配置了适当的凭据
  • 无服务器框架

安装

npm install

设置MCP服务器

在测试或部署之前,您需要安装依赖项并构建每个MCP服务器:

# Navigate to each MCP server directory and install dependencies
cd mcp_servers/[server-name]
npm install
npm run build

# Repeat for each server directory under mcp_servers/

地方发展

要使用无服务器脱机在本地运行服务,请执行以下操作:

npm run dev

要使用Express运行服务以便于调试,请执行以下操作:

npm run dev:express

部署

配置AWS凭据

在部署之前,请确保您已配置AWS凭据:

aws configure

准备MCP服务器

确保在部署之前构建了所有MCP服务器(请参阅 设置MCP服务器 部分)。

部署到开发

npm run deploy

这将:

  1. 清理dist目录
  2. 构建TypeScript代码
  3. 打包必要的文件,包括MCP服务器
  4. 使用无服务器框架部署到AWS

部署到生产

npm run deploy:prod

API使用

列出可用工具

GET /{serverName}

调用工具

POST /{serverName}/{toolName}
{
  "param1": "value1",
  "param2": "value2"
}

必须根据特定的MCP服务器配置包含所需的标头。

项目结构

  • src/index.ts -主Lambda处理函数
  • src/mcp/mcp-server-config.ts -可用MCP服务器的配置
  • src/mcp/mcp-client-handler.ts -MCP客户端通信处理程序
  • mcp_servers/ -包含MCP服务器实现的目录
  • serverless.yml -无服务器框架配置

脚本

  • npm run build -编译TypeScript
  • npm run watch -关注TypeScript的变化
  • npm run clean -删除dist目录
  • npm run dev -在本地运行服务
  • npm run deploy -部署到开发
  • npm run deploy:prod -部署到生产环境