返回 MCP 目录
public公开dns本地运行

sam-serverless-mcp-server

一个基于AWS Lambda和API Gateway的简易Model Context Protocol (MCP) 服务器,使用Serverless Application Model (SAM)部署,支持本地开发和测试。

article

README

🚀 🧠 无服务器MCP服务器

这是一个极为简单的模型上下文协议(MCP)服务器,它部署在AWS Lambda上,并通过Amazon API Gateway实现公开访问,采用Serverless应用程序模型(SAM)进行部署。

此示例基于Frédéric Barthelet的卓越成果,他在Github仓库中开发了一个用于在AWS Lambda函数里集成模型上下文协议(MCP)服务器的middy中间件。

🚀 快速开始

本无服务器MCP服务器使用简单,按照以下步骤即可快速上手。

  1. 安装依赖
npm install
  1. 运行本地服务
node server.js
  1. 查看日志:访问控制台查看日志。

✨ 主要特性

  • 🪄 使用@modelcontextprotocol/sdk实现了最小化的MCP服务器设置。
  • 🚀 以单个AWS Lambda函数的形式进行部署。
  • 🌐 在API Gateway的/mcp路径公开了HTTP POST端点。
  • 🔄 支持通过SAM进行本地开发。
  • 🧪 包含一个简单的示例工具(加法),可与JSON - RPC进行交互。

📦 安装指南

先决条件

在开始安装前,你需要确保以下环境和工具已准备好:

部署到AWS

运行以下命令完成部署:

sam build
sam deploy --guided

📚 详细文档

长故事

📖 在此处阅读此系列文章

项目结构

sam-serverless-mcp-server/
├── __tests__/              # Jest测试文件夹
├── src/                    # 源代码
│   └── index.js                # MCP服务器处理程序
├── .gitignore              # Git忽略文件
├── buildspec.yml           # AWS CodeBuild和CodePipeline(CI/CD)构建文件
├── jest.config.mjs         # Jest配置文件
├── package.json            # 项目依赖项
├── package-lock.json       # 项目锁定文件
├── README.md               # 此文档文件
├── samconfig.toml          # Serverless应用程序模型配置
└── template.yml            # Serverless应用程序模型模板

📄 许可证

本项目采用MIT协议,你可以随意fork、调整并部署自己的版本!

help

运行方式说明

cloud

托管运行

托管运行通常表示这个 MCP Server 由服务方环境承载,用户一般按页面提供的连接方式或授权流程接入,不需要在本地长期启动一个 MCP 进程

  1. 打开服务方连接页
  2. 完成授权或复制端点
  3. 在 MCP 客户端中连接
terminal

本地运行 / 其它方式

本地运行通常需要用户在自己的电脑或服务器上安装依赖,把 server_config 复制到 MCP 客户端,并按 env_schema 补齐环境变量、密钥或其它配置

  1. 复制 server_config
  2. 安装所需依赖
  3. 补齐环境变量后重启客户端