Skip to main content
Glama
jiteshzope

Developer Productivity MCP

by jiteshzope

Developer Productivity MCP

GitHub, Jira 및 엔지니어링 지표 기능을 MCP 도구로 제공하는 FastMCP 서버이자, 이를 다단계 워크플로로 구동하는 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이 아닌 메트릭 이름을 선택합니다.

Related MCP server: GitHub Dev Copilot

구성

.
├── 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 서버 (http://localhost:8000/mcp에서 Streamable HTTP 사용):

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는 서버를 하위 프로세스로 실행하는 클라이언트를 위해, HTTP 대신 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_tickets와 high_priority_tickets를 검토하여 다음에 무엇을 볼지 선택합니다. 이것을 두 번째 왕복으로 나누면 요청이 하나 더 들고 추가로 얻는 것은 없습니다.

설계 노트

  • analyze_pull_request는 코드를 읽는 LLM이 아닌 파일 이름, diff 패치 및 패턴 매칭으로 위험을 점수화합니다. 이 방식은 비용이 적고, 결정적이며, 재현 가능합니다. 최고 위험 패치에 대한 LLM 리뷰 단계가 계획된 확장 기능입니다.

  • Jira 스토리 포인트 사용자 지정 필드 ID와 보드 ID는 설치 환경마다 다르므로 JIRA_BOARD_ID와 JIRA_STORY_POINTS_FIELD는 상수가 아니라 구성 값입니다.

  • query_project_metrics는 sql/schema.sql에 정의된 테이블을 읽습니다. 이 테이블들은 GitHub/Jira/CD 이력을 로드하는 수집 작업을 전제로 합니다.

Maintenance

ActivityMaintained
ResponsivenessNo issues

Related MCP Connectors

Related MCP Servers

  • F
    license
    Not graded
    quality
    C
    maintenance
    Enables 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.
    -
  • F
    license
    Not graded
    quality
    C
    maintenance
    Enables 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.
    -