Token导航 LogoToken导航TokenDH.com
Middy MCP Adapter logo
AI代理未说明官方级别未说明来源级核验

Middy MCP Adapter

MCP Server

一个用于在AWS Lambda函数中集成Model Context Protocol服务器的Middy中间件,支持API Gateway和ALB的代理集成。

工具数

0

提示词数

0

GitHub Stars

3

资源数

0
中间件TypeScriptAPI集成

安装说明

本站只整理中文说明和来源信息,不托管安装包,也不代用户安装。

作者 / 组织

tiagoguatierri

提供方

tiagoguatierri

最后核验

2026/5/17 20:22

快速接入

先看主来源和安装命令,再打开仓库或文档;下面只保留这个条目的关键接入事实。

详细介绍

middy mcp适配器

](https://www.npmjs.com/package/middy-mcp-adapter) ![License: MIT](https://opensource.org/licenses/MIT)

用于模型上下文协议(MCP)服务器与AWS Lambda功能集成的Middy中间件。

描述

middy-mcp适配器是一种中间件,可实现AWS Lambda函数和模型上下文协议服务器之间的无缝集成。它提供了一种使用Middy中间件框架在Lambda函数中处理MCP请求和响应的方便方法。它支持使用代理集成从API网关(REST API/v1和HTTP API/v2)发送到AWS Lambda的请求,以及从ALB发送的请求。

安装

npm install middy-mcp-adapter

需求

  • Node.js>=18.0.0
  • Middy>=4.0.0

用法

此中间件可以抛出HTTP异常,因此可以方便地与 @middy/http-error-handler.

基础示例

下面是一个最小Lambda函数处理程序文件的示例。在API网关的POST路由上部署此Lambda作为代理集成,您就可以开始了。

import middy from '@middy/core'
import httpErrorHandler from '@middy/http-error-handler'
import mcpMiddleware from 'middy-mcp-adapter'

import { McpServer } from '@modelcontextprotocol/sdk/server/mcp.js'

// Create an MCP server
const server = new McpServer({
  name: 'Lambda hosted MCP Server',
  version: '1.0.0'
})

export const handler = middy()
  .use(mcpMiddleware({ server }))
  .use(httpErrorHandler())

使用工具

import middy from '@middy/core'
import httpErrorHandler from '@middy/http-error-handler'
import mcpMiddleware from 'middy-mcp-adapter'

import { McpServer } from '@modelcontextprotocol/sdk/server/mcp.js'
import {
  ListToolsRequestSchema,
  CallToolRequestSchema
} from '@modelcontextprotocol/sdk/types.js'
import { z } from 'zod'

const server = new McpServer({
  name: 'Lambda hosted MCP Server',
  version: '1.0.0'
})

server.registerTool(
  'add',
  {
    title: 'Addition Tool',
    description: 'Add two numbers',
    inputSchema: { a: z.number(), b: z.number() },
    outputSchema: { result: z.number() }
  },
  async ({ a, b }) => {
    const output = { result: a + b }
    return {
      content: [{ type: 'text', text: JSON.stringify(output) }],
      structuredContent: output
    }
  }
)

server.registerTool(
  'multiply',
  {
    title: 'Multiplication Tool',
    description: 'Multiply two numbers',
    inputSchema: { a: z.number(), b: z.number() },
    outputSchema: { result: z.number() }
  },
  async ({ a, b }) => {
    const output = { result: a * b }
    return {
      content: [{ type: 'text', text: JSON.stringify(output) }],
      structuredContent: output
    }
  }
)

export const handler = middy()
  .use(mcpMiddleware({ server }))
  .use(httpErrorHandler())

API

mcpMiddleware(options)

创建一个Middy中间件,使MCP服务器适应AWS Lambda。

选项

  • server (必填): McpServer -您的MCP服务器实例

退货

Middy中间件对象 beforeafter 钩子。

运作原理

中间件执行以下操作:

  1. 钩子之前:初始化MCP StreamableHTTPServerTransport连接
  2. 请求改编:将API网关事件转换为HTTP IncomingMessage格式
  3. 响应处理:将HTTP ServerResponse转换回API网关格式
  4. 钩子之后:处理MCP服务器响应并将其格式化为Lambda格式

错误处理

中间件抛出HTTP错误,这些错误可以被捕获 @middy/http-error-handler:

  • 500:传输初始化失败或缺少MCP传输
  • 来自的标准HTTP错误代码 http-errors

TypeScript

此包包含TypeScript定义。

import mcpMiddleware, {
  type MCPMiddlewareOptions,
  type MCPContext
} from 'middy-mcp-adapter'

许可证

此项目根据MIT许可证获得许可-请参阅 许可证 文件以获取详细信息。

贡献

欢迎投稿!请随时打开问题或提交拉取请求。

链接

相关项目

作者

蒂亚戈·瓜蒂埃里-

目录标签

目录标签

中间件TypeScriptAPI集成本地部署AWSLambdaMCP协议服务器适配器

接入字段

传输方式(transport,传输协议)

未说明

鉴权方式(authType,认证方式)

none

工具数量(toolCount,工具数)

0

资源数量(resourceCount,资源数)

0

提示词数量(promptCount,提示词数)

0

权限和风险

未说明none部署方式未说明

接入前请确认传输方式、认证方式和部署位置,并根据实际工具能力限制访问范围。

安装前确认

不要直接授予不必要的文件、网络或账号权限;先核对安装命令和配置内容。

仍需确认:installCommand

来源信息

继续浏览同类 MCP