Skip to main content
Glama
jiteshzope

Developer Productivity MCP

by jiteshzope

Developer Productivity MCP

一个 FastMCP 服务器,将 GitHub、Jira 和工程指标能力 作为 MCP 工具暴露,外加一个 OpenAI Agents SDK 客户端,将它们作为多步骤 工作流驱动。

                         ┌──────────────────┐
                         │      User        │
                         └────────┬─────────┘
                                  │
                                  ▼
                         ┌──────────────────┐
                         │ OpenAI Agent     │
                         │ Agents SDK       │
                         └────────┬─────────┘
                                  │
                            MCP Protocol
                                  │
                                  ▼
                    ┌─────────────────────────┐
                    │ FastMCP Server          │
                    │                         │
                    │ search_github_code      │
                    │ get_jira_sprint_status  │
                    │ analyze_pull_request    │
                    │ query_project_metrics   │
                    └──────┬──────┬──────┬────┘
                           │      │      │
                     GitHub API  Jira   PostgreSQL

模型从不直接与 GitHub、Jira 或 PostgreSQL 通信。MCP 服务器 负责凭据、分页、错误处理和响应整形,并 返回事实;代理贡献推理和解释。因此,说明性文本 不是工具——解释工具会把判断推入 服务器,而服务器无法看到其他工具的结果。

四个工具

工具

后端

除了包装 API 之外的功能

search_github_code

GitHub REST

将搜索结果规范化为 {repository, path, name, url}

get_jira_sprint_status

Jira Agile

完成百分比、故事点进度、阻塞/高优先级/逾期/未分配/有风险工单、冲刺风险等级

analyze_pull_request

GitHub REST

对 diff 进行静态分析:安全、数据库、API 契约、依赖和测试检测;删除代码分析;评分风险等级;破坏性变更和审查建议

query_project_metrics

PostgreSQL

由允许列表保护的六个指标——模型选择指标名称,绝不编写 SQL

布局

.
├── main.py                     # agent-side CLI entry point
├── .env.example
├── agent/
│   ├── developer_agent.py      # agent definitions + instructions
│   └── workflows.py            # multi-step agentic workflows
├── src/
│   ├── config.py               # MCP server environment
│   ├── pr_analysis.py          # PR static-analysis helpers
│   └── server.py               # FastMCP server + the four tools
└── sql/
    └── schema.sql              # tables backing query_project_metrics

设置

uv sync
cp .env.example .env      # then fill in your credentials
psql "$DATABASE_URL" -f sql/schema.sql

运行

终端 1 — MCP 服务器(Streamable HTTP,位于 http://localhost:8000/mcp):

uv run python -m src.server

终端 2 — 一个代理工作流:

# GitHub code search
uv run python main.py search --repository my-org/payments-api --query retry

# pull-request risk analysis
uv run python main.py pr --repository my-org/payments-api --number 142

# the full multi-tool sprint investigation
uv run python main.py sprint --project PAY --sprint 42

MCP_TRANSPORT=stdio 改为通过 stdio 运行服务器,适用于客户端 将其作为子进程启动。

代理工作流

main.py sprint 提出一个自然语言问题,代理决定调用哪些 工具以及调用顺序:

1. get_jira_sprint_status()
             ↓
2. Agent selects the tickets worth investigating
             ↓
3. search_github_code()
             ↓
4. analyze_pull_request()
             ↓
5. query_project_metrics()
             ↓
6. Agent generates explanation

第 2 步不需要工具调用。get_jira_sprint_status 已经掌握了所有问题, 因此阻塞/高优先级/逾期的分类在那里完成,代理 根据返回的 blocked_ticketshigh_priority_tickets 进行推理, 以决定下一步查看什么。将其拆分为第二次往返会多消耗 一次请求,且毫无收益。

设计说明

  • analyze_pull_request 根据文件名、diff 补丁和模式匹配来评估风险, 而不是由 LLM 阅读代码。它廉价、确定性高且可复现; 对最高风险补丁进行 LLM 审查阶段是 计划中的扩展。

  • Jira 故事点自定义字段 ID 和看板 ID 因安装而异,因此 JIRA_BOARD_IDJIRA_STORY_POINTS_FIELD 是配置项而非 常量。

  • query_project_metrics 读取 sql/schema.sql 中的表,这些表期望有 一个摄取作业加载 GitHub/Jira/CD 历史。

-
license - not tested
-
quality - not tested
B
maintenance

Maintenance

Maintainers
Response time
Release cycle
Releases (12mo)
Commit activity

Resources

Unclaimed servers have limited discoverability.

Looking for Admin?

If you are the server author, to access and configure the admin panel.

Related MCP Connectors

View all MCP Connectors

Latest Blog Posts

MCP directory API

We provide all the information about MCP servers via our MCP API.

curl -X GET 'https://glama.ai/api/mcp/v1/servers/jiteshzope/Custom-MCP-server-Agentic-workflow-for-developer-productivity'

If you have feedback or need assistance with the MCP directory API, please join our Discord server