Token导航 LogoToken导航TokenDH.com
Serverless Web MCP Server logo
运维云端未说明官方级别未说明来源级核验

Serverless Web MCP Server

MCP Server

一个基于Model Context Protocol(MCP)的服务,用于将Web应用程序部署到AWS无服务器基础设施上,支持后端、前端和全栈应用的标准化部署。

工具数

5

提示词数

0

GitHub Stars

1

资源数

0
自动化部署TypeScriptClaudeClaude

安装说明

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

作者 / 组织

bnusunny

提供方

bnusunny

最后核验

2026/5/17 20:22

快速接入

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

详细介绍

无服务器Web MCP服务器

用于将web应用程序部署到AWS无服务器基础架构的模型上下文协议(MCP)服务器实现。

概述

该项目实现了一个MCP服务器,使LLM编码代理能够将web应用程序部署到AWS无服务器服务。它遵循 模型上下文协议规范 为AI代理与AWS部署功能交互提供标准化接口。

服务器支持部署:

  • 使用API网关、带Web适配器的Lambda和DynamoDB/Ourora无服务器的后端服务
  • 使用S3和CloudFront的前端应用程序
  • 结合后端和前端组件的全栈应用程序

MCP实施

此服务器实现了具有以下功能的模型上下文协议:

资源

提供有关以下内容的上下文信息:

  • 可用的部署模板(template:list, template:{name})
  • 现有部署及其状态(deployment:list, deployment:{project-name})

工具

将部署功能作为工具公开:

  • deploy:将web应用程序部署到AWS无服务器基础架构
  • get_logs:从CloudWatch检索应用程序日志
  • get_metrics:获取已部署应用程序的性能指标
  • deployment_help:获取有关部署要求和故障排除的帮助
  • update_frontend:更新前端资产,而无需重新部署整个基础设施

建筑

服务器由以下核心组件组成:

  1. MCP协议处理程序:实现JSON-RPC接口和消息处理
  2. 统一部署服务:管理不同类型(后端、前端、全栈)的部署
  3. AWS集成层:与AWS SAM CLI和AWS服务的接口

部署类型

服务器支持对不同类型的部署采用统一的方法:

  • 后端部署:使用Lambda+API网关的后端服务
  • 前端部署:使用S3+CloudFront的前端应用程序
  • 全栈部署:后端和前端部署相结合

AWS Lambda Web适配器

对于后端和全栈部署,服务器使用 AWS Lambda Web适配器 在AWS Lambda上运行web应用程序。这允许开发人员在不更改任何代码的情况下使用熟悉的web框架。

入门指南

先决条件

  • Node.js 18或更高版本
  • AWS-SAM-CLI
  • 已配置AWS凭据

安装

# Install globally from npm
npm install -g serverless-web-mcp-server

# Or clone the repository
git clone https://github.com/bnusunny/serverless-web-mcp-server.git
cd serverless-web-mcp-server

# Install dependencies
npm install

# Build the project
npm run build

用法

用作本地MCP服务器

要与Claude一起用于桌面或其他MCP客户端,请将服务器添加到您的客户端配置中:

对于桌面版的Claude,编辑 ~/Library/Application Support/Claude/claude_desktop_config.json:

{
  "mcpServers": {
    "serverless-web": {
      "command": "serverless-web-mcp"
    }
  }
}

配置后,重新启动Claude for Desktop。您应该在Claude界面中看到可用的无服务器web工具。

命令行选项

Usage:
  serverless-web-mcp [options]

Options:
  --debug, -d                 Enable debug logging
  --templates, -t 
      Specify templates directory path
  --transport, -m       Transport method (stdio or http, default: stdio)
  --port, -p          HTTP server port (default: 3000, only used with http transport)
  --help, -h                  Show this help message
  
Environment Variables:
  MCP_TRANSPORT               Transport method (stdio or http, default: stdio)
  PORT                        HTTP server port (default: 3000)
  TEMPLATES_PATH              Path to templates directory

资源发现

要发现可用的资源和工具,请使用以下方法:

列出资源

{
  "jsonrpc": "2.0",
  "id": 1,
  "method": "resource/list",
  "params": {}
}

这将返回所有可用资源及其模式和描述的列表。

列出工具

{
  "jsonrpc": "2.0",
  "id": 2,
  "method": "tool/list",
  "params": {}
}

这将返回所有可用工具及其描述和参数模式的列表。

工具调用示例

{
  "jsonrpc": "2.0",
  "id": 1,
  "method": "tool/invoke",
  "params": {
    "name": "deploy",
    "parameters": {
      "deploymentType": "backend",
      "projectName": "my-api",
      "projectRoot": "/path/to/project",
      "region": "us-east-1",
      "backendConfiguration": {
        "builtArtifactsPath": "backend/dist",
        "runtime": "nodejs18.x",
        "startupScript": "bootstrap",
        "memorySize": 512,
        "timeout": 30,
        "environment": {
          "NODE_ENV": "production"
        }
      }
    }
  }
}

资源请求示例

{
  "jsonrpc": "2.0",
  "id": 2,
  "method": "resource/get",
  "params": {
    "uri": "deployment:my-api"
  }
}

部署参数

后端部署

{
  "deploymentType": "backend",
  "projectName": "my-api",
  "projectRoot": "/path/to/project",
  "region": "us-east-1",
  "backendConfiguration": {
    "builtArtifactsPath": "backend/dist",
    "runtime": "nodejs18.x",
    "startupScript": "bootstrap",
    "memorySize": 512,
    "timeout": 30,
    "environment": {
      "NODE_ENV": "production"
    },
    "databaseConfiguration": {
      "tableName": "Users",
      "attributeDefinitions": [
        { "name": "id", "type": "S" }
      ],
      "keySchema": [
        { "name": "id", "type": "HASH" }
      ]
    }
  }
}

前端部署

{
  "deploymentType": "frontend",
  "projectName": "my-website",
  "projectRoot": "/path/to/project",
  "region": "us-east-1",
  "frontendConfiguration": {
    "builtAssetsPath": "frontend/build",
    "indexDocument": "index.html"
  }
}

全栈部署

{
  "deploymentType": "fullstack",
  "projectName": "my-fullstack-app",
  "projectRoot": "/path/to/project",
  "region": "us-east-1",
  "backendConfiguration": {
    "builtArtifactsPath": "backend/dist",
    "runtime": "nodejs18.x",
    "environment": {
      "NODE_ENV": "production"
    }
  },
  "frontendConfiguration": {
    "builtAssetsPath": "frontend/build",
    "indexDocument": "index.html"
  }
}

发展

项目结构

/
├── src/
│   ├── mcp/              # MCP protocol implementation
│   │   ├── tools/        # Tool implementations
│   │   │   └── index.ts  # Tool registration
│   │   ├── resources/    # Resource implementations
│   │   │   └── index.ts  # Resource registration
│   │   └── server.ts     # MCP server setup
│   ├── deployment/       # Deployment service
│   ├── cli/              # Command line interface
│   └── index.ts          # Main server entry point
├── templates/            # Deployment templates
├── examples/             # Example applications
├── docs/                 # Documentation
├── config.json           # Server configuration
├── DESIGN.md             # Detailed design document
└── README.md             # This file

许可证

麻省理工学院

贡献

欢迎投稿!请随时提交拉取请求。

目录标签

目录标签

自动化部署TypeScriptClaude无服务器计算本地部署AWS部署Web应用部署MCP协议

支持客户端

Claude

接入字段

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

未说明

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

none

工具数量(toolCount,工具数)

5

资源数量(resourceCount,资源数)

0

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

0

权限和风险

未说明none部署方式未说明

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

安装前确认

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

仍需确认:installCommand

来源信息

继续浏览同类 MCP