MCP2Lambda

by danilop

Integrations

  • Allows LLMs to use AWS Lambda functions as tools, enabling models to execute code in Lambda environments, access real-time data, interact with AWS services, and perform specialized calculations without code changes. The server acts as a bridge between MCP clients and Lambda functions.

MCP2람다

AnthropicModel Context Protocol(MCP)을 사용하면 코드 변경 없이 모든 AWS Lambda 함수를 LLM(대규모 언어 모델) 도구 로 실행할 수 있습니다.

지엑스피1

이 MCP 서버는 MCP 클라이언트와 AWS Lambda 함수 간의 브리지 역할을 하여 생성 AI 모델이 Lambda 함수에 도구처럼 접근하고 실행할 수 있도록 합니다. 이는 예를 들어 공용 네트워크 액세스를 제공하지 않고도 내부 애플리케이션 및 데이터베이스와 같은 비공개 리소스에 액세스하는 데 유용합니다. 이러한 접근 방식을 통해 모델은 다른 AWS 서비스, 프라이빗 네트워크 및 공용 인터넷을 사용할 수 있습니다.

보안 관점에서 이 접근 방식은 모델이 Lambda 함수를 호출할 수는 있지만 다른 AWS 서비스에 직접 접근할 수는 없도록 하여 업무 분리를 구현합니다. 클라이언트는 Lambda 함수를 호출하기 위해 AWS 자격 증명만 필요합니다. Lambda 함수는 함수 역할을 사용하여 다른 AWS 서비스와 상호 작용하고 퍼블릭 또는 프라이빗 네트워크에 접근할 수 있습니다.

MCP 서버는 두 가지 도구에 대한 액세스를 제공합니다.

  1. 첫 번째 도구는 접두사 또는 허용된 이름 목록과 일치하는 계정의 모든 Lambda 함수를 자동으로 검색 합니다. 이 도구는 함수 이름과 설명을 모델과 공유합니다.
  2. 두 번째 도구를 사용하면 필요한 매개변수를 전달하여 람다 함수를 이름으로 호출 할 수 있습니다.

코드 변경은 필요하지 않습니다. 결과를 개선하려면 다음 구성을 변경해야 합니다.

전략 선택

게이트웨이는 Lambda 함수를 처리하기 위한 두 가지 전략을 지원합니다.

  1. 사전 검색 모드 (기본값: 활성화): 시작 시 각 Lambda 함수를 개별 도구로 등록합니다. 이를 통해 각 함수가 고유한 명명된 도구로 표시되는 더욱 직관적인 인터페이스를 제공합니다.
  2. 일반 모드 : 두 가지 일반 도구( list_lambda_functionsinvoke_lambda_function )를 사용하여 람다 함수와 상호 작용합니다.

다음을 통해 이러한 동작을 제어할 수 있습니다.

  • 환경 변수: PRE_DISCOVERY=true|false
  • CLI 플래그: --no-pre-discovery (사전 검색 모드 비활성화)

예:

# Disable pre-discovery mode export PRE_DISCOVERY=false python main.py # Or using CLI flag to disable pre-discovery python main.py --no-pre-discovery
  1. MCP 클라이언트에게 람다 함수 사용에 대한 지식을 제공하려면 람다 함수 설명에 함수의 기능과 사용하는 매개변수를 명시해야 합니다. 간단한 데모와 자세한 내용은 샘플 함수를 참조하세요.
  2. AWS Lambda를 통해 제공되는 도구를 모델이 사용할 수 있도록 시스템 프롬프트 에 다음과 같은 내용을 추가할 수 있습니다.
Use the AWS Lambda tools to improve your answers.

개요

MCP2Lambda를 사용하면 LLM이 AWS Lambda 함수를 도구처럼 사용하여 상호 작용할 수 있으며, 이를 통해 텍스트 생성을 넘어 기능을 확장할 수 있습니다. 이를 통해 모델은 다음과 같은 작업을 수행할 수 있습니다.

  • VPC의 데이터 소스를 포함하여 실시간 및 개인 데이터에 액세스하세요.
  • Lambda 함수를 샌드박스 환경으로 사용하여 사용자 지정 코드 실행
  • Lambda 함수를 사용하여 외부 서비스 및 API와 상호 작용하고 인터넷에 접속(및 대역폭)합니다.
  • 특수 계산이나 데이터 처리를 수행합니다.

서버는 AI 모델이 외부 도구에 액세스하는 방식을 표준화하는 MCP 프로토콜을 사용합니다.

기본적으로 이름이 mcp2lambda- 로 시작하는 함수만 모델에서 사용할 수 있습니다.

필수 조건

  • Python 3.12 이상
  • 구성된 자격 증명이 있는 AWS 계정
  • AWS Lambda 함수(저장소에 제공된 샘플 함수)
  • Converse API를 사용하여 Amazon Bedrock을 사용하는 애플리케이션
  • Claude Desktop 과 같은 MCP 호환 클라이언트

설치

Smithery를 통해 설치

Smithery를 통해 Claude Desktop에 MCP2Lambda를 자동으로 설치하려면:

npx -y @smithery/cli install @danilop/MCP2Lambda --client claude

수동 설치

  1. 저장소를 복제합니다.
    git clone https://github.com/yourusername/mcp2lambda.git cd mcp2lambda
  2. AWS 자격 증명을 구성합니다. 예를 들어 AWS CLI를 사용하여 다음을 수행합니다.
    aws configure

샘플 람다 함수

이 리포지토리에는 다양한 사용 사례를 보여주는 세 개의 샘플 Lambda 함수가 포함되어 있습니다. 이 함수들은 기본 권한을 가지며 CloudWatch 로그에만 쓸 수 있습니다.

고객 IDFromEmail

이메일 주소를 기반으로 고객 ID를 검색합니다. 이 함수는 이메일 매개변수를 받아 연관된 고객 ID를 반환하며, 간단한 조회 도구를 만드는 방법을 보여줍니다. 이 함수는 user@example.com 이메일 주소로 회신하도록 하드코딩되어 있습니다. 예를 들어, 모델에 user@example.com 이메일의 고객 ID를 가져오도록 요청할 수 있습니다.

고객 정보 출처 ID

고객 ID를 기반으로 자세한 고객 정보를 검색합니다. 이 함수는 이름, 이메일, 상태와 같은 고객 세부 정보를 반환하며, Lambda가 컨텍스트별 데이터를 어떻게 제공하는지 보여줍니다. 이 함수는 이전 함수에서 반환된 고객 ID에 응답하도록 하드코딩되어 있습니다. 예를 들어, 모델에 " user@example.com 이메일의 고객 상태 가져오기"를 요청할 수 있습니다. 이 경우 두 함수가 모두 사용되어 결과를 얻습니다.

파이썬 코드 실행

Lambda 샌드박스 환경 내에서 임의의 Python 코드를 실행합니다. 이 강력한 함수를 통해 Claude는 Python 코드를 작성하고 실행하여 모델에 내장되지 않은 계산, 데이터 처리 또는 기타 작업을 수행할 수 있습니다. 예를 들어, 모델에 "1에서 10, 1에서 100, 등 최대 1M까지의 소수의 개수를 계산해"라고 요청할 수 있습니다.

샘플 람다 함수 배포

저장소에는 sample_functions 디렉토리에 샘플 Lambda 함수가 포함되어 있습니다.

  1. AWS SAM CLI를 설치하세요: https://docs.aws.amazon.com/serverless-application-model/latest/developerguide/install-sam-cli.html
  2. 샘플 함수를 배포합니다.
    cd sample_functions sam build sam deploy

샘플 함수는 mcp2lambda- 접두사를 사용하여 배포됩니다.

Amazon Bedrock과 함께 사용

MCP2Lambda는 Amazon Bedrock의 Converse API와도 함께 사용할 수 있으며, 이를 통해 Bedrock에서 지원하는 모든 모델에서 MCP 프로토콜을 사용할 수 있습니다.

mcp_client_bedrock 디렉토리에는 MCP2Lambda를 Amazon Bedrock 모델에 연결하는 클라이언트 구현이 포함되어 있습니다.

자세한 내용은 https://github.com/mikegc-aws/amazon-bedrock-mcp를 참조하세요.

필수 조건

  • Claude, Mistral, Llama 등의 모델을 사용하기 위한 Amazon Bedrock 액세스 및 권한
  • 적절한 자격 증명으로 구성된 Boto3

설치 및 설정

  1. mcp_client_bedrock 디렉토리로 이동합니다.
    cd mcp_client_bedrock
  2. 종속성 설치:
    uv pip install -e .
  3. 클라이언트를 실행합니다:
    python main.py

구성

클라이언트는 기본적으로 Anthropic의 Claude 3.7 Sonnet을 사용하도록 구성되어 있지만 main.py 에서 model_id 수정하여 다른 Bedrock 모델을 사용할 수 있습니다.

# Examples of supported models: model_id = "us.anthropic.claude-3-7-sonnet-20250219-v1:0" #model_id = "us.amazon.nova-pro-v1:0"

동일한 파일에서 시스템 프롬프트를 사용자 지정하여 모델의 동작 방식을 변경할 수도 있습니다.

용법

  1. 한 터미널에서 MCP2Lambda 서버를 시작합니다.
    cd mcp2lambda uv run main.py
  2. 다른 터미널에서 Bedrock 클라이언트를 실행합니다.
    cd mcp_client_bedrock python main.py
  3. 명령줄 인터페이스를 통해 모델과 상호 작용합니다. 모델은 이전에 배포된 Lambda 함수에 접근할 수 있습니다.

Claude Desktop과 함께 사용

Claude Desktop 구성 파일에 다음을 추가하세요.

{ "mcpServers": { "mcp2lambda": { "command": "uv", "args": [ "--directory", "<full path to the mcp2lambda directory>", "run", "main.py" ] } } }

AWS Lambda를 통해 모델이 도구를 사용할 수 있도록 설정 프로필에서 개인 기본 설정에 다음과 같은 문장을 추가할 수 있습니다.

Use the AWS Lambda tools to improve your answers.

MCP 서버 시작

MCP 서버를 로컬로 시작합니다.

cd mcp2lambda uv run main.py

You must be authenticated.

A
security – no known vulnerabilities
A
license - permissive license
A
quality - confirmed to work

remote-capable server

The server can be hosted and run remotely because it primarily relies on remote services or has no dependency on the local environment.

MCP 프로토콜을 통해 AI 모델이 AWS Lambda 함수와 상호 작용할 수 있도록 하여 안전한 환경에서 비공개 리소스, 실시간 데이터 및 사용자 정의 계산에 액세스할 수 있도록 합니다.

  1. 전략 선택
    1. 개요
      1. 필수 조건
        1. 설치
          1. Smithery를 통해 설치
          2. 수동 설치
        2. 샘플 람다 함수
          1. 고객 IDFromEmail
          2. 고객 정보 출처 ID
          3. 파이썬 코드 실행
        3. 샘플 람다 함수 배포
          1. Amazon Bedrock과 함께 사용
            1. 필수 조건
            2. 설치 및 설정
            3. 구성
            4. 용법
          2. Claude Desktop과 함께 사용
            1. MCP 서버 시작

              Related MCP Servers

              • Amazon Web Services
                aws-mcp

                A
                security
                F
                license
                A
                quality
                A Model Context Protocol (MCP) server that enables AI assistants like Claude to interact with your AWS environment. This allows for natural language querying and management of your AWS resources during conversations. Think of better Amazon Q alternative.
                Last updated -
                3
                222
                TypeScript
                • Apple
              • -
                security
                A
                license
                -
                quality
                A lightweight service that enables AI assistants to execute AWS CLI commands through the Model Context Protocol (MCP), allowing AI tools to retrieve AWS documentation and interact with AWS services.
                Last updated -
                57
                Python
                MIT License
                • Apple
              • -
                security
                A
                license
                -
                quality
                A Node.js package that provides Model Context Protocol server infrastructure for AWS Lambda functions with SSE support, enabling developers to implement MCP tools and prompts as serverless functions.
                Last updated -
                112
                9
                TypeScript
                MIT License
              • -
                security
                -
                license
                -
                quality
                This MCP server enables users to interact with AWS Amplify Gen2 application data through natural language, allowing AI assistants like Claude to perform operations on Amplify data models using conversational language instead of complex code.
                Last updated -
                1
                JavaScript

              View all related MCP servers

              ID: 4hokv207sz