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

MCP Server Datathon

MCP Server

Model Context Protocol (MCP) 服务器是一个上下文感知的中间件,用于拦截用户查询、分析意图并从多个生产力系统(如Google Calendar、GitHub、Slack和JIRA)获取上下文,组装成结构化上下文包,并将其与原始提示一起传递给Gemini AI模型以生成高度相关的响应。

工具数

16

提示词数

0

GitHub Stars

0

资源数

0
Python上下文感知云端部署

安装说明

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

作者 / 组织

harshwadhawe

提供方

harshwadhawe

最后核验

2026/5/17 20:20

运行时

Python

快速接入

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

命令预览

python3 -m venv .venv

详细介绍

项目管理MCP服务器

A. 模型上下文协议(MCP) 服务器充当AI助手的上下文感知中间件。它拦截用户查询,分析意图,从多个生产力系统(谷歌日历、GitHub、Slack和JIRA)获取上下文,组装一个结构化的上下文包,并将其与原始提示一起交付给Gemini AI模型,以获得超相关的响应。

此存储库(与Devpost演示视频一起)构成了构建自己的MCP挑战赛的提交。

______________________________________________________________________

目录

  1. 高级工作流
  2. 关键能力
  3. 建筑
  4. 集成和所需凭据
  5. 安装和设置
  6. 运行服务器和UI
  7. 可用的MCP工具
  8. 提交清单
  9. 项目结构
  10. 故障排除
  11. 许可证和联系方式

______________________________________________________________________

高级工作流

  1. 拦截 用户查询(通过MCP客户端、CLI或Streamlit仪表板)。
  2. 分析 NLP驱动的意图 QueryAnalyzer (意图检测、实体提取、领域分类、时间解析)。
  3. 获取 来自相关数据源的补充上下文。
  4. 组装 使用缓存、排名、摘要和相关性引擎的排名和摘要上下文包。
  5. 交付 将上下文包和原始提示发送给Gemini进行最终回复。

______________________________________________________________________

关键能力

智能查询理解

  • 检测日历、GitHub、Slack和JIRA域(或多域查询)。
  • 提取存储库、PR/问题计数、日历日期、积压关键字等实体。
  • 通过时间感知分析器支持相对和绝对时间参考。

多源上下文收集

  • 谷歌日历: 事件、可用性、冲突和多日历聚合。
  • github: 存储库、问题、PR、提交、部署、README摘要。
  • 松弛: 频道、提及、未读消息、最近的活动。
  • 吉拉: 董事会、分配的问题、待办事项、冲刺见解。

上下文打包

  • 上下文缓存: 基于TTL的缓存,以最大限度地减少冗余的API调用。
  • ContextRanker: 对每个查询中最相关的事件/问题进行优先级排序。
  • 上下文摘要生成器: 压缩上下文以保持在令牌预算范围内。
  • 上下文关联器: 跨服务的交叉链接信号(例如,会议、部署和Slack警报)。

通过Gemini交付

  • 聚合上下文+用户提示→ 双子座(主要 gemini-2.5-flash)制定量身定制的回应。

______________________________________________________________________

建筑

┌──────────────────────────┐
│      User Request        │
└────────────┬─────────────┘
             │
             ▼
┌──────────────────────────┐
│     Query Analyzer       │  ← intent detection, entities, time range
└────────────┬─────────────┘
             │
  ┌──────────┼───────────┐
  │          │           │
  ▼          ▼           ▼
Calendar   GitHub      Slack      JIRA
Client     Client      Client     Client
(fetch)    (fetch)     (fetch)    (fetch)
  │          │           │         │
  └──────────┴───────────┴─────────┘
             │
             ▼
┌──────────────────────────┐
│ Cache / Rank / Summarize │
└────────────┬─────────────┘
             │
             ▼
┌──────────────────────────┐
│ Gemini Client (Chat)     │ → context + prompt → AI answer
└──────────────────────────┘

______________________________________________________________________

集成和所需凭据

服务凭据/环境变量注释
谷歌日历config/credentials.json, config/token.json (已生成)具有日历作用域的OAuth桌面凭据
GitHub.envGITHUB_TOKEN具有回购范围的个人访问令牌
松弛.envSLACK_USER_TOKEN用户令牌 channels:read, channels:history, groups:*, im:*, search:read, users:read
吉拉.envJIRA_BASE_URL, JIRA_EMAIL, JIRA_API_TOKENJira Cloud网站、电子邮件和API令牌
双子座.envGEMINI_API_KEYGoogle AI Studio API密钥

可选环境变量(代码中有默认值):

  • GOOGLE_CREDENTIALS_PATH (默认值 config/credentials.json)
  • GOOGLE_TOKEN_PATH (默认值 config/token.json)
  • CALENDAR_TIMEZONE (用于时间解析默认值)

确保敏感文件(凭据和令牌)不受版本控制。 .gitignore 已经把他们排除在外了。

______________________________________________________________________

安装和设置

  1. 克隆存储库
   git clone 
   cd MCP\ server
  1. 创建并激活Python环境
   python3 -m venv .venv
   source .venv/bin/activate            # Windows: .venv\Scripts\activate
  1. 安装依赖项
   pip install -r requirements.txt
  1. 提供凭据

- 将Google OAuth桌面凭据放置在 config/credentials.json. - 创建一个 .env 文件(副本 .env.example)并填充上面列出的令牌/密钥。

  1. 验证谷歌日历(首次运行)

首次运行服务器将启动Google OAuth的浏览器窗口,并生成 config/token.json.

______________________________________________________________________

运行服务器和UI

1.MCP服务器(基于stdio的JSON-RPC)

python main.py

这注册了以下工具 chat, get_calendar_context, get_github_repositories, get_slack_mentions, get_jira_backlog等等。

2.流线型仪表板(可选UI)

streamlit run streamlit_app.py

具有预定义的查询、快速操作和Calendar/GitHub/Slack/JIRA的自定义提示框。

3.CLI测试脚本(可选)

  • interactive_client.py 用于命令行聊天测试。
  • slack_test.py, jira_test.py 用于快速凭证和API验证。

______________________________________________________________________

可用的MCP工具

工具说明
chat主要会话端点;自动获取所有服务中的相关上下文。
日历
get_calendar_context分析查询并返回格式化的日历上下文。
check_availability检查特定时间段的可用性。
get_upcoming_events列出即将发生的事件。
detect_conflicts识别约会中的冲突。
GitHub
get_github_repositories列出存储库(含元数据)。
get_github_issues获取未解决的问题。
get_github_pull_requests获取PR。
get_github_deployments检索部署+状态。
Slack
get_slack_channels列出频道。
get_slack_unread有未读消息的频道。
get_slack_mentions最近提到。
JIRA
get_jira_boards列出公告板。
get_jira_issues一般问题检索(板/JQL)。
get_my_jira_issues分配给经过身份验证的用户的问题(有回退)。
get_jira_backlog积压项目(敏捷API+JQL回退)。

每个工具都返回一个适合直接包含在上下文包中的格式化字符串。

______________________________________________________________________

提交清单

GitHub存储库 –包含完整的MCP服务器实现、连接器、UI和测试脚本。

上下文感知工作流 –拦截→ 分析→ 获取→ 组装→ 交付在四个服务中实施。

⚠️ Devpost视频演示 -仍然需要。请录制一个简短的演练,显示:

  • 查询如何在系统中流动(例如,通过Streamlit UI)。
  • 生成的上下文程序集(日志/UI代码段)。
  • 双子座的动力反应。
  • 任何独特的2.0功能(缓存、关联、摘要)。

将视频与repo链接一起上传到Devpost。

______________________________________________________________________

项目结构

MCP server/
├── main.py                     # Entry point for MCP server
├── streamlit_app.py            # Optional Streamlit UI
├── interactive_client.py       # Simple CLI client
├── slack_test.py / jira_test.py# Quick integration smoke tests
├── src/
│   ├── server.py               # MCP tools & orchestration layer
│   ├── query_analyzer.py       # NLP intent/time/entity detection
│   ├── context_cache.py        # TTL cache for API responses
│   ├── context_ranker.py       # Relevance scoring
│   ├── context_summarizer.py   # Compression + summarization utilities
│   ├── context_correlator.py   # Multi-source correlation engine
│   ├── context_formatter.py    # Human-friendly context formatting
│   ├── gemini_client.py        # Gemini chat integration
│   ├── calendar_client.py      # Google Calendar wrapper
│   ├── github_client.py        # GitHub REST wrapper
│   ├── slack_client.py         # Slack WebClient wrapper
│   ├── jira_client.py          # Jira REST (Agile + Core) wrapper
│   └── connectors/             # Connector facades per service
├── config/
│   ├── credentials.json        # Google OAuth client (excluded from git)
│   └── token.json              # Google OAuth token (excluded from git)
├── requirements.txt
├── .env.example
└── README.md (this file)

______________________________________________________________________

故障排除

问题解决
谷歌日历身份验证循环删除 config/token.json 并重新运行以重新进行身份验证。确保OAuth同意屏幕将您作为测试用户。
GitHub 401重新生成 GITHUB_TOKEN (经典PAT) repo 范围。
松弛 missing_scope在下面添加所需的范围 用户令牌范围 并重新安装应用程序。
JIRA 410错误确认您可以访问JIRA Cloud网站并使用有效的API令牌。当搜索失败时,客户端已经退回到基于板的查询。
Gemini错误验证 GEMINI_API_KEY 正确,所选型号在您的地区/帐户中可用。

日志记录配置为stderr,以避免干扰MCP stdio响应。

______________________________________________________________________

许可证和联系方式

构建自己的MCP挑战.

如有疑问,请在提交演示时打开问题或通过Devpost讨论板联系。

目录标签

目录标签

Python上下文感知云端部署AI中间件本地部署多系统集成智能查询分析Gemini集成

接入字段

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

stdio

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

oauth

运行时(runtime,运行环境)

Python

部署方式(deploymentType,部署类型)

remote-capable

工具数量(toolCount,工具数)

16

资源数量(resourceCount,资源数)

0

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

0

权限和风险

stdiooauthremote-capable

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

安装前确认

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

来源信息

继续浏览同类 MCP