Developer Productivity MCP
Developer Productivity MCP
Un servidor FastMCP que expone las capacidades de GitHub, Jira y métricas de ingeniería como herramientas MCP, además de un cliente del OpenAI Agents SDK que las impulsa como flujos de trabajo de múltiples pasos.
┌──────────────────┐
│ 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 PostgreSQLEl modelo nunca habla directamente con GitHub, Jira o PostgreSQL. El servidor MCP posee las credenciales, la paginación, el manejo de errores y la configuración de las respuestas, y devuelve hechos; el agente contribuye con razonamiento y explicación. La prosa no es, por tanto, una herramienta — una herramienta de explicación transferiría el juicio al servidor, donde no puede ver los resultados de las otras herramientas.
Las cuatro herramientas
Herramienta | Backend | Qué hace más allá de envolver la API |
| GitHub REST | Normaliza los resultados de búsqueda a |
| Jira Agile | % de finalización, progreso de puntos de historia, tickets bloqueados / de alta prioridad / atrasados / sin asignar / en riesgo, nivel de riesgo del sprint |
| GitHub REST | Análisis estático del diff: seguridad, base de datos, contrato de API, detección de dependencias y pruebas; análisis de código eliminado; nivel de riesgo puntuado; cambios incompatibles y recomendaciones de revisión |
| PostgreSQL | Seis métricas detrás de una lista de permitidos — el modelo elige un nombre de métrica, nunca SQL |
Related MCP server: GitHub Dev Copilot
Diseño
.
├── 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_metricsConfiguración
uv sync
cp .env.example .env # then fill in your credentials
psql "$DATABASE_URL" -f sql/schema.sqlEjecutar
Terminal 1 — el servidor MCP (Streamable HTTP en http://localhost:8000/mcp):
uv run python -m src.serverTerminal 2 — un flujo de trabajo de agente:
# 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 42MCP_TRANSPORT=stdio ejecuta el servidor a través de stdio en su lugar, para clientes que lo lanzan como subproceso.
El flujo de trabajo del agente
main.py sprint plantea una pregunta en lenguaje natural, y el agente decide qué herramientas llamar y en qué orden:
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 explanationEl paso 2 no necesita ninguna llamada a herramienta. get_jira_sprint_status ya tiene todas las incidencias a mano, por lo que la clasificación de bloqueadas / de alta prioridad / atrasadas se realiza allí, y el agente razona sobre las blocked_tickets y high_priority_tickets devueltas para elegir qué ver a continuación. Dividir eso en un segundo viaje de ida y vuelta costaría una solicitud y no añadiría nada.
Notas de diseño
analyze_pull_requestpuntúa el riesgo a partir de nombres de archivo, parches del diff y coincidencias de patrones, no a partir de un LLM que lee el código. Es barato, determinista y reproducible; una etapa de revisión con LLM sobre los parches de mayor riesgo es la extensión planificada.Los IDs de los campos personalizados de puntos de historia y los IDs de tablero de Jira difieren según la instalación, por lo que
JIRA_BOARD_IDyJIRA_STORY_POINTS_FIELDson configuración en lugar de constantes.query_project_metricslee las tablas ensql/schema.sql, que esperan un trabajo de ingesta que cargue el historial de GitHub/Jira/CD.
This server cannot be deployed
Maintenance
Related MCP Connectors
Search GitHub, npm, PyPI, StackOverflow, ArXiv from one MCP — built for coding agents.
Your org's AI agents, tasks, runs, search, and brain files as MCP tools and resources.
AI-native git hosting — repos, PRs, issues, CI gates, and AI code review over MCP (60 tools).
MCP server for your apps' tools and custom tools, plus hosted AI agents and approval-gated workflows
Related MCP Servers
- AlicenseBqualityCmaintenanceMCP server that exposes GitHub operations as tools for AI agents, enabling code search, issue management, and PR review.12MIT
- FlicenseNot gradedqualityCmaintenanceEnables AI agents to interact with GitHub via MCP, managing repositories, issues, PRs, and analyzing repository health through tools like list_repositories, read_issues, create_issue, comment_on_pr, and analyze_repo_health.-
- FlicenseNot gradedqualityCmaintenanceEnables natural-language analysis of GitHub repositories by exposing repository metadata, source code retrieval, search, and file reading as MCP tools, with answers grounded in the actual repository content.-
- AlicenseNot gradedqualityCmaintenanceProvides MCP tools for fetching GitHub PR diffs, searching codebases, running unit tests, and linting code, enabling automated code review and CI/CD workflows.MIT