🤖 带MCP的工作场所自动化人工智能代理
https://github.com/user-attachments/assets/40ebad09-9bd2-46ff-87b2-4c00c19a62d9
Jira、Notion、GitHub工作流集成自动化项目
单行摘要: 内部协作工具(Jira、Notion、GitHub)中的数据 标准MCP协议集成到, 克劳德桌面版不仅如此 光标IDE AI Agent系统,可在各种环境中自动执行任务。
______________________________________________________________________
🧐 项目背景(Motivation)
我们开始着手减少开发过程中的重复上下文切换。特别是企划者/PM。 克劳德用沟通,开发团队成员 光标IDE考虑到在中编写代码的环境。 可以在任何界面上共享相同上下文的标准化Agent需要。
为此,LLM和外部系统之间的标准协议 MCP(模型上下文协议) 实施了灵活、可扩展的体系结构。
🎯 主要功能(Features)
- 多客户端支持: Claude Desktop应用程序和Cursor IDE可以同时控制相同的工具。
- 中央令牌管理: 由于使用远程MCP服务器,只需在一台服务器上管理令牌即可,无需在每个客户机上放入令牌,而且易于管理。
- 简化团队登录: 使用同一个MCP服务器的团队成员可以各自设置本地MCP服务器,而无需进行重复、低效的工作来单独发放代币。
- Jira问题处理: “请选出本周我的门票名单”等命令实时跟踪热点。
- Notion文档: 根据开发进度自动生成每周工作报告和会议记录。
- GitHub集成: 立即在IDE(Cursor)中检查PR状态并请求代码评论摘要。
📋 业务自动化示例-创建每周工作报告 📁 提示文件: prompts/weekly_report.md 定制并使用USER IDENTITY 利用MCP服务器自动收集和分析过去7天的工作记录,生成每周工作报告。 收集的信息: - 吉拉: 我收到的票证、评论和状态更改历史记录 - github: 我撰写的PR,提交,代码评论评论 - 概念: 我修改/创建的页面、团队文档、个人笔记 工作原理: 1. 在每个平台上收集最近的活动 1. 通过递归跟踪找到的链接和引用来扩展上下文(例如,查看PR正文中的Jira票号→Jira详细信息) 1. 将相关信息分组到项目/任务中进行集成分析 生成的输出: - 执行摘要(Executive Summary) - 详细业务历史记录(包括背景、实施、故障诊断) - 代码评论和协作历史记录 - 特殊事项和博客 - 自动保存到Notion页面🏗️ 系统体系结构(Architecture)
部署在Cloud Run上的单个MCP服务器是处理多个客户端(Claude,Cursor)请求的集中式结构。
graph TD
%% 스타일 정의
classDef user fill:#f9f,stroke:#333,stroke-width:2px,color:#000;
classDef client fill:#e1f5fe,stroke:#0288d1,stroke-width:2px,color:#000;
classDef cloud fill:#fff3e0,stroke:#f57c00,stroke-width:2px,color:#000;
classDef external fill:#e8f5e9,stroke:#388e3c,stroke-width:2px,color:#000;
User[🙋♂️ User / Developer]:::user
subgraph Clients [🖥️ MCP Clients]
Claude[Claude Desktop App]:::client
Cursor[Cursor IDE]:::client
end
%% 연결 관계 (파이프 문법 사용)
User -->|1. Prompt| Claude
User -->|1. Code & Prompt| Cursor
subgraph Backend [☁️ Remote Infrastructure]
CloudRun[⚙️ MCP Server / Cloud Run]:::cloud
end
Claude -->|2. Custom Connector| CloudRun
Cursor -->|2. MCP Settings| CloudRun
subgraph SaaS_Tools [🌐 External APIs]
Jira(Jira Software):::external
Notion(Notion):::external
GitHub(GitHub):::external
end
CloudRun -->|3. API Query| Jira
CloudRun -->|3. API Query| Notion
CloudRun -->|3. API Query| GitHub
Jira -.->|4. Data Response| CloudRun
Notion -.->|4. Data Response| CloudRun
GitHub -.->|4. Data Response| CloudRun
CloudRun -.->|5. Context Data| Claude
CloudRun -.->|5. Context Data| Cursor技术堆栈(Tech Stack)
- 客户: 克劳德桌面应用程序,光标IDE
- 协议: 模型上下文协议(MCP)
- 后端: 谷歌云运行(Node.js/TypeScript)
- 集成: Jira、Notion、GitHub API
🛠️ 如何连接客户端(How to Connect)
该项目无需单独的本地安装,只需通过已部署的MCP服务器URL进行连接。
1.连接Claude桌面应用程序
配置文件(json),使用最新的UI功能,而不是直接修改。
- 设置 进入菜单。
- 开发者 单击(或Connections)选项卡。
- 编辑配置 但是。
Add Custom Connector(或单击Remote MCP Server)按钮。 - 在URL输入窗口中输入分发的MCP服务器端点(例如:
https://.../mcp). - 验证连接状态是否变为“绿色”(Connected)。
2.连接Cursor IDE
Cursor IDE的MCP服务器设置文件(mcp.json)。
设置文件位置:
- macOS:
~/Library/Application Support/Cursor/User/globalStorage/mcp.json - 窗户:
%APPDATA%\Cursor\User\globalStorage\mcp.json - Linux:
~/.config/Cursor/User/globalStorage/mcp.json
设置示例(mcp.json):
{
"mcpServers": {
"github": {
"url": "https://your-github-mcp-server.run.app/mcp"
},
"notion": {
"url": "https://your-notion-mcp-server.run.app/mcp"
},
"jira": {
"url": "https://your-jira-mcp-server.run.app/mcp"
}
}
}设置后重新启动Cursor IDE或Composer(Cmd + I)我Chat(Cmd + L)中 @单击确认工具的联动。
🚀 部署工作历史记录(Deployment Work)
1.GitHub MCP服务器部署
代码修改
实现服务器单令牌模式:
- 目的: 实现在服务器上预置令牌的模式,以便客户端只设置URL,无需令牌即可连接。
- 更改文件:
- pkg/http/server.go: ServerConfig 在结构体中 ServerManagedToken 添加字段 - pkg/http/middleware/token.go: ExtractUserToken 将服务器令牌使用逻辑添加到中间件 - 客户端 Authorization 如果不发送标头,则使用服务器上设置的令牌 - 自动检测令牌类型(TokenTypeFromToken 添加函数) - pkg/utils/token.go:从令牌字符串 TokenType返回的 TokenTypeFromToken 添加函数 - cmd/github-mcp-server/main.go: httpConfig呃 ServerManagedToken: viper.GetString("personal_access_token") 添加设置 - pkg/http/handler.go: ExtractUserToken 调用时传递服务器令牌
行为方式:
- 环境变量
GITHUB_PERSONAL_ACCESS_TOKEN启用后,服务器将自动使用该令牌 - 客户端
Authorization发送标头时优先使用客户端令牌(保留现有行为) - 如果客户端在没有令牌的情况下请求,则使用服务器令牌进行自动身份验证
修改Dockerfile
- 更改:
CMD ["stdio"]→CMD ["http"] - 原因: 更改默认命令以在Cloud Run中以HTTP模式运行
______________________________________________________________________
2.Notion&Jira MCP服务器部署
Notion和Jira MCP服务器是使用开源MCP服务器部署的。
开源存储库:
- MCP服务器概念: makeconcept/mcp服务器
- Jira MCP服务器: atlasian/atlassian mcp服务器
______________________________________________________________________
通用部署设置
所有MCP服务器:
- 部署到Cloud Run
- 端点:
{BASE_URL}/mcp - 健康检查:为每台服务器提供健康检查端点(备注:
/health,GitHub:/mcp等)
测试脚本:
scripts/mcp-test-all.sh:对所有服务器进行健康检查、会话测试、负载测试、并发性测试scripts/mcp-servers.conf:服务器列表和端口设置(支持动态端口分配)
