使用说明

项目简介

MCP2Lambda 项目旨在构建一个 MCP 服务器,使得大型语言模型 (LLM) 能够通过 Model Context Protocol (MCP) 标准协议,安全便捷地调用 AWS Lambda 函数。借助 MCP2Lambda,LLM 可以访问 AWS 云服务、私有网络资源以及互联网数据,从而显著增强其功能和应用场景。该项目无需修改 Lambda 函数代码即可实现集成,并支持多种配置策略以适应不同的使用需求。

主要功能点

  • Lambda 函数即工具: 将 AWS Lambda 函数注册为 LLM 可调用的工具,扩展模型的功能边界。
  • 动态工具发现: 支持自动发现和注册 AWS 账户中符合特定前缀或列表的 Lambda 函数,简化工具配置。
  • 通用工具模式: 提供 'list_lambda_functions' 和 'invoke_lambda_function' 通用工具,即使不预先注册特定 Lambda 函数也能使用。
  • 安全访问后端: 允许 LLM 安全地调用 Lambda 函数访问 VPC 内私有资源,无需公网暴露,提升安全性。
  • 灵活部署: 可以与 Claude Desktop 和 Amazon Bedrock 等 MCP 客户端配合使用。
  • 可配置策略: 支持预发现模式和通用模式,可通过环境变量或命令行参数灵活配置。

安装步骤

  1. 克隆仓库

    git clone https://github.com/danilop/mcp2lambda.git
    cd mcp2lambda
  2. 配置 AWS 凭证 确保已配置 AWS 凭证,例如通过 AWS CLI ('aws configure')。MCP2Lambda 服务器需要 AWS 凭证才能调用 Lambda 函数。

  3. 安装 Python 依赖 虽然文档中没有明确提及,但根据 'main.py' 文件,可能需要安装 'boto3' 和 'mcp' 库。建议使用 'uv' 或 'pip' 安装:

    # 使用 uv (如果已安装 uv)
    uv run
    # 或者使用 pip
    pip install boto3 mcp-protocol
  4. 部署示例 Lambda 函数 (可选) 如果需要体验示例 Lambda 函数,请按照仓库 'README.md' 中 "Deploying Sample Lambda Functions" 部分的说明进行操作。

服务器配置

对于 MCP 客户端(例如 Claude Desktop),需要配置 MCP 服务器的连接信息。以下是 MCP2Lambda 服务器的配置示例 (JSON 格式):

{
  "mcpServers": {
    "mcp2lambda": {
      "command": "uv", // 启动服务器的命令,这里使用 uv (或 python,取决于你的环境)
      "args": [
        "--directory", // 参数,指定工作目录
        "<MCP2Lambda 仓库的完整路径>", // 参数值,请替换为 MCP2Lambda 仓库在您本地文件系统中的完整路径
        "run",        // 参数,运行 Python 脚本
        "main.py"     // 参数,指定要运行的主服务器脚本
      ]
    }
  }
}

请注意: '<MCP2Lambda 仓库的完整路径>' 需要替换为您实际克隆的 'mcp2lambda' 仓库在您电脑上的绝对路径。

基本使用方法

  1. 启动 MCP2Lambda 服务器 在终端中,进入 'mcp2lambda' 仓库目录,并运行以下命令启动服务器:

    uv run main.py

    或者,如果您的环境中 'python' 命令可用,也可以使用:

    python main.py
  2. 配置 MCP 客户端 根据您使用的 MCP 客户端(如 Claude Desktop 或 Amazon Bedrock Client)的文档,配置连接到 MCP2Lambda 服务器。您需要提供上述 服务器配置 JSON 信息给 MCP 客户端。

  3. 在 LLM 中使用工具 在与 LLM 对话时,您可以使用自然语言指示模型使用 AWS Lambda 工具。为了更好地引导模型使用工具,您可以在系统提示或用户指令中加入类似以下内容:

    Use the AWS Lambda tools to improve your answers. (使用 AWS Lambda 工具来改进你的回答。)

    或者更具体地指示模型使用特定工具,例如询问与示例 Lambda 函数相关的问题,如 "Get customer ID for email [email protected]" 或 "Calculate the number of prime numbers between 1 and 1000"。

通过以上步骤,您就可以成功搭建并使用 MCP2Lambda 服务器,让 LLM 具备调用 AWS Lambda 函数的能力,从而实现更强大的功能。

信息

分类

生产力应用