任务管理MCP服务器模板

一个用于在AWS CodeCommit仓库中搭建任务管理MCP服务器的模板,包含Lambda、API Gateway、DynamoDB和S3等AWS资源。

  • by hereya
  • TypeScript
  • 本地部署
  • 更新于
在 GitHub 查看 hereya/hereya-task-manager-template

使用说明

hereya/任务管理器模板

这里有一个脚手架模板 任务管理器MCP服务器 进入AWS CodeCommit存储库。种子项目是一个功能齐全的MCP(模型上下文协议)服务器,部署为API网关HTTP API v2后面的AWS Lambda,具有OAuth2身份验证,由DynamoDB支持用于存储,S3支持用于文件附件。

没有创建CI/CD管道,只有具有Git凭据的CodeCommit存储库。部署是通过以下方式手动完成的 hereya deploy.

它创造了什么

AWS资源

资源 描述
代码提交存储库 Git存储库中播种了任务管理器源代码
IAM用户 Git HTTPS访问专用用户(<name>-git-user)
IAM Git凭据 用于推送/拉取CodeCommit的HTTPS凭据
秘密经理秘密 存储Git密码(<name>/git-password)

种子项目

CodeCommit仓库是用一个完整的MCP服务器项目初始化的,包括:

  • Lambda处理程序+本地开发服务器(双模:生产Lambda/本地HTTP)
  • MCP工具:列出任务、获取任务、创建任务/事件、更新任务、删除任务、文件上传/下载URL
  • MCP应用程序UI(用Vite构建的交互式任务管理器)
  • MCP提示:列出任务、创建任务、创建事件、任务摘要
  • DynamoDB数据层(CRUD操作)
  • S3为文件附件预处理URL生成
  • JWT/RS256本地开发验证
  • Hereya部署配置(hereya.yaml + hereyaconfig/)

种子项目使用以下hereya基础设施包:

  • aws/mcp-lambda -Lambda+API网关+OAuth授权人+自定义域
  • aws/dynamodb --DynamoDB表(分区键: userId,排序键: taskId)
  • aws/s3bucket --S3文件附件存储桶

参数

通用(由Hereya自动提供)

参数 说明
projectName 项目标识符(例如。 myorg/task-app).用于命名AWS资源(斜线替换为连字符)。
workspace 当前Hereya工作区名称。注射到种子中 hereya.yaml.
deployWorkspace 用于临时/生产部署的目标工作区。注入到 CLAUDE.md 部署说明。

模板特定

参数 说明
organizationId Hereya Cloud组织ID已注入 hereyaconfig/hereyavars/aws--mcp-lambda.yaml 随着 organizationId 现场。Lambda授权者用于限制对特定组织的访问。
customDomain API网关端点的自定义域(例如。 task.example.com).注入到 hereyaconfig/hereyavars/aws--mcp-lambda.yaml 随着 customDomain 现场。这 aws/mcp-lambda 包为此域配置Route53+ACM。

如何注入参数

在CDK合成过程中,本地bundler:

  1. 复制 template/ 将目录添加到S3资产包中
  2. 附加 project 和 workspace 到 hereya.yaml
  3. 写入 hereyaconfig/hereyavars/aws--mcp-lambda.yaml 和 organizationId, customDomain,以及 oauthServerUrl
  4. 替换 {{deployWorkspace}} 占位符在 CLAUDE.md

输出

输出 描述
hereyaGitRemoteUrl codecommit HTTPS克隆URL(https://git-codecommit.<region>.amazonaws.com/v1/repos/<name>)
hereyaGitUsername 用于克隆和推送的Git HTTPS用户名
hereyaGitPassword 包含Git密码的机密管理器ARN(由Hereya自动解析)

用法

从此模板初始化项目

hereya init --template hereya/task-manager-template \
  --parameters organizationId=<org-id>,customDomain=<domain>,deployWorkspace=<workspace>

克隆并处理种子仓库

初始化后,使用输出中的Git凭据进行克隆:

git clone <hereyaGitRemoteUrl>
cd <project-name>
npm install

部署种子项目

npm run deploy                    # Deploy to default workspace
npm run deploy -- -w <workspace>  # Deploy to a specific workspace

本地开发

npm run dev      # Start local dev server with OAuth (requires hereya-cloud running)
npm run inspect  # Launch MCP Inspector against local dev server