Quarterly
БесплатноНе проверенMCP server for generating quarterly achievement reports from Jira, GitHub, and GitLab
Описание
MCP server for generating quarterly achievement reports from Jira, GitHub, and GitLab
README
AI-powered performance review automation for quarterly achievement reports.
Transform quarterly review preparation from 4-6 hours into 30 minutes by automating data aggregation, cycle time analysis, achievement ranking, and narrative refinement.
Features
- Cycle Time Analysis: Identify longest-running PRs and Jira issues (strategic work)
- Smart Achievement Ranking: Score by cycle time, infrastructure keywords, and complexity
- Three Narrative Frameworks: Business impact, technical depth, or leadership framing
- Multi-Platform: Jira, GitHub, GitLab data aggregation
- Three Usage Modes: Claude Code skill, Cursor/IDE-agnostic, or MCP server
Quick Start
Choose your mode based on your IDE and usage pattern:
1. Claude Code Skill ⭐ (Recommended)
Best for: Quarterly reports in Claude Code (once per quarter)
# Install CLI tools
brew install jira-cli gh
jira init && gh auth login
# Clone to plugins directory
mkdir -p ~/.claude/plugins && cd ~/.claude/plugins
git clone https://github.com/redhat-community-ai-tools/quarterly-mcp-server.git quarterly-report-assistant
# Use it
# In Claude Code: /quarterly-report
Why: On-demand loading (token efficient), simple CLI-based setup
2. Cursor / Any IDE
Best for: Cursor, Windsurf, Zed, or any IDE with Claude
# Install CLI tools
brew install jira-cli gh
jira init && gh auth login
# Add to your workspace
cd your-project
curl -O https://raw.githubusercontent.com/redhat-community-ai-tools/quarterly-mcp-server/master/QUARTERLY_REPORT_ASSISTANT.md
curl -O https://raw.githubusercontent.com/redhat-community-ai-tools/quarterly-mcp-server/master/.cursorrules
# Use it in Cursor
# @QUARTERLY_REPORT_ASSISTANT.md generate my Q1 2026 report
Why: Works in any IDE, portable, no vendor lock-in
3. MCP Server
Best for: Frequent queries, automation, daily Jira/GitHub queries
# Setup MCP server with Python
git clone https://github.com/redhat-community-ai-tools/quarterly-mcp-server.git
cd quarterly-mcp-server
python3 -m venv venv && source venv/bin/activate
pip install -r requirements.txt
# Configure and register
# See full instructions in INSTALLATION.md
Why: Always-available tools, programmatic API, automation-friendly
Need help choosing? See INSTALLATION.md for detailed comparison.
What You Get
Instead of manually writing:
"Added AWS UPI jobs across 5 releases"
You get AI-refined narratives:
"I enabled comprehensive Windows testing for enterprise customers using user-provisioned infrastructure, delivering a single PR covering 5 active OpenShift releases (4.18-4.22) instead of separate efforts. This demonstrates efficient delivery and multi-release thinking - 1,156 lines across 25 files in just 8 days from creation to production deployment. Many enterprise customers use UPI instead of IPI, and this PR closes a major platform coverage gap."
Complete Documentation
- INSTALLATION.md - Full installation guide for all three modes
- QUARTERLY_REPORT_ASSISTANT.md - Complete workflow instructions
- .claude-code/README.md - Claude Code skill documentation
- MCP Server API - See sections below
MCP Server Documentation
Features
- Multi-platform aggregation: Combines data from Jira, GitHub, and GitLab
- Flexible date ranges: Query any time period, with built-in quarterly report generation
- Rich statistics: Ticket counts, PR counts, closure rates, breakdowns by status/type/priority
- Cycle time analysis: Identify longest-running PRs and issues with average cycle times
- AI-powered achievement identification: Rank accomplishments by cycle time, impact, or complexity
- Achievement refinement: Transform technical descriptions into polished performance review narratives
- MCP integration: Works with Claude Code, Claude Desktop, and other MCP clients
- Team-friendly: Anyone with MCP can use it for their own quarterly reviews
Quick Start
1. Installation
git clone https://github.com/redhat-community-ai-tools/quarterly-mcp-server.git
cd quarterly-mcp-server
python3 -m venv venv
source venv/bin/activate # On Windows: venv\Scripts\activate
pip install -r requirements.txt
2. Configuration
Create ~/.quarterly-mcp-config.json:
{
"JIRA_URL": "https://your-jira-instance.atlassian.net",
"JIRA_EMAIL": "[email protected]",
"JIRA_API_TOKEN": "your-jira-api-token",
"GITHUB_TOKEN": "your-github-personal-access-token",
"GITLAB_URL": "https://gitlab.com",
"GITLAB_TOKEN": "your-gitlab-token"
}
Getting API tokens:
- Jira: https://id.atlassian.com/manage-profile/security/api-tokens
- GitHub: https://github.com/settings/tokens (need
reposcope) - GitLab: https://gitlab.com/-/profile/personal_access_tokens (need
read_apiscope)
Note: GitLab is optional. If you don't use GitLab, omit GITLAB_TOKEN.
3. Register with Claude Code
claude mcp add quarterly /path/to/quarterly-mcp-server/venv/bin/python -- /path/to/quarterly-mcp-server/server.py
Verify registration:
claude mcp list
4. Test It
Start a Claude Code session and ask:
Generate my Q1 2026 quarterly report (username: myusername, jira project: MYPROJECT, github org: myorg)
MCP Tools
The server exposes these tools for use in Claude Code or other MCP clients:
get_jira_summary
Get Jira ticket summary for a date range.
Parameters:
username(required): Jira username or emailstart_date(required): Start date (YYYY-MM-DD)end_date(required): End date (YYYY-MM-DD)project(optional): Project key filter (e.g., 'WINC')
Example:
Get my Jira summary for Q1 2026 (username: [email protected], project: WINC, start: 2026-01-01, end: 2026-03-31)
get_github_summary
Get GitHub PR summary for a date range.
Parameters:
username(required): GitHub usernamestart_date(required): Start date (YYYY-MM-DD)end_date(required): End date (YYYY-MM-DD)org(optional): Organization filter (e.g., 'openshift')
Example:
Get my GitHub PRs for Q1 2026 (username: rrasouli, org: openshift, start: 2026-01-01, end: 2026-03-31)
get_gitlab_summary
Get GitLab MR summary for a date range.
Parameters:
username(required): GitLab usernamestart_date(required): Start date (YYYY-MM-DD)end_date(required): End date (YYYY-MM-DD)group(optional): Group filter (e.g., 'winc')
Example:
Get my GitLab MRs for Q1 2026 (username: rrasouli, group: winc, start: 2026-01-01, end: 2026-03-31)
generate_quarterly_report
Generate comprehensive quarterly achievement report combining all platforms.
Parameters:
username(required): Username (same across platforms)quarter(required): Quarter number (1-4)year(required): Year (e.g., 2026)jira_project(optional): Jira project filtergithub_org(optional): GitHub organization filtergitlab_group(optional): GitLab group filter
Example:
Generate my Q2 2026 quarterly report (username: rrasouli, quarter: 2, year: 2026, jira_project: WINC, github_org: openshift)
analyze_cycle_times
Analyze cycle times for Jira issues and GitHub PRs to identify longest-running work.
Parameters:
username(required): Base username (used if platform-specific usernames not provided)start_date(required): Start date (YYYY-MM-DD)end_date(required): End date (YYYY-MM-DD)jira_project(optional): Jira project filtergithub_org(optional): GitHub organization filterjira_username(optional): Jira-specific username (email)github_username(optional): GitHub-specific usernametop_n(optional): Number of top items to return (default: 10)
Returns: JSON with average cycle times and longest-running items from both platforms.
Example:
Analyze my cycle times for Q1 2026 (username: rrasouli, jira_username: [email protected], start_date: 2026-01-01, end_date: 2026-03-31, jira_project: WINC, github_org: openshift)
identify_top_achievements
Identify top achievements ranked by cycle time, impact, or complexity.
Parameters:
username(required): Base usernamestart_date(required): Start date (YYYY-MM-DD)end_date(required): End date (YYYY-MM-DD)metric(optional): Ranking metric - "cycle_time" (longest work), "impact" (most complex), or "recent" (latest). Default: "cycle_time"jira_project(optional): Jira project filtergithub_org(optional): GitHub organization filterjira_username(optional): Jira-specific usernamegithub_username(optional): GitHub-specific usernametop_n(optional): Number of top achievements to return (default: 5)
Returns: JSON with ranked achievements and context for narrative building.
Example:
Identify my top 5 achievements by impact for Q1 2026 (username: rrasouli, metric: impact, start_date: 2026-01-01, end_date: 2026-03-31)
refine_achievement
Transform technical PR/Jira description into polished achievement narrative for performance reviews.
Parameters:
raw_description(required): Technical description (e.g., "Added AWS UPI jobs across 5 releases")context(optional): Additional context (PR metadata, Jira details, team impact)style(optional): Narrative style - "business_impact", "technical_depth", or "leadership". Default: "business_impact"
Returns: Refinement guide and examples for transforming technical descriptions into polished narratives.
Example:
Refine this achievement: "Added AWS UPI jobs across 5 releases" with business_impact style
Usage Examples
Basic Quarterly Report
Generate my Q1 2026 quarterly report (username: jdoe, quarter: 1, year: 2026)
Filtered by Project/Organization
Generate my Q2 2026 report for WINC project and openshift org (username: jdoe, quarter: 2, year: 2026, jira_project: WINC, github_org: openshift)
Custom Date Range
Get my Jira summary from 2026-01-15 to 2026-02-15 (username: jdoe, start_date: 2026-01-15, end_date: 2026-02-15)
Individual Platform Queries
Get my GitHub PRs merged in March 2026 (username: jdoe, start_date: 2026-03-01, end_date: 2026-03-31, org: redhat)
AI-Powered Performance Review Workflow
Step 1: Analyze cycle times
Analyze my Q1 2026 cycle times (username: jdoe, jira_username: [email protected], start_date: 2026-01-01, end_date: 2026-03-31, jira_project: MYPROJECT, github_org: myorg)
Step 2: Identify top achievements
Identify my top 5 achievements by impact for Q1 2026 (username: jdoe, metric: impact, start_date: 2026-01-01, end_date: 2026-03-31)
Step 3: Refine each achievement
Refine this achievement: "Added infrastructure support for BYOH provisioning" with business_impact style and context: "37 files changed, +666 lines, 17 days, enables all future BYOH testing"
Step 4: Generate full report
Generate my Q1 2026 quarterly report (username: jdoe, quarter: 1, year: 2026, jira_project: MYPROJECT, github_org: myorg)
This workflow transforms hours of manual review preparation into 30 minutes of focused refinement.
Output Format
The generate_quarterly_report tool produces a markdown report with:
- Executive Summary: High-level statistics across all platforms
- Jira Activity: Total issues, closure rate, breakdowns by status/type/priority
- GitHub Activity: Total PRs merged, breakdown by repository
- GitLab Activity: Total MRs merged, breakdown by project (if configured)
- Detailed Accomplishments: Lists of closed issues and merged PRs/MRs
For Managers
Managers can use this tool to:
- Generate team reports: Query each team member's accomplishments
- Compare quarters: Track team velocity over time
- Identify bottlenecks: See closure rates and in-progress work
- Aggregate metrics: Combine individual reports for team-level summaries
Example manager query:
Generate quarterly reports for my team (Alice: [email protected], Bob: [email protected], Carol: [email protected]) for Q1 2026 in the TEAM project
Configuration Options
You can configure the server via:
- Config file (
~/.quarterly-mcp-config.json) - Environment variables (override config file):
JIRA_URLJIRA_EMAILJIRA_API_TOKENGITHUB_TOKENGITLAB_URLGITLAB_TOKEN
Environment variables take precedence over config file values.
Troubleshooting
"Jira configuration missing" error
Make sure JIRA_URL and JIRA_API_TOKEN are set in your config file or environment.
"GitHub token missing" error
Make sure GITHUB_TOKEN is set in your config file or environment.
Authentication failures
- Jira: Verify your email and API token are correct
- GitHub: Ensure your token has
reposcope - GitLab: Ensure your token has
read_apiscope
No results returned
- Check the date range (YYYY-MM-DD format)
- Verify the username matches your platform username
- For Jira: Check if the project key is correct
- For GitHub: Check if the org name is correct
Contributing
Contributions welcome! This tool is designed for the Red Hat community but useful for anyone doing quarterly reviews.
How to contribute:
- Fork the repository
- Create a feature branch
- Make your changes
- Submit a pull request
Ideas for contributions:
- Support for additional platforms (Linear, Asana, Prow CI, Jenkins)
- Export to different formats (CSV, JSON, PDF)
- Recognition mining (extract peer kudos from PR/issue comments)
- Team aggregation features
- Interactive review dialog (guided achievement narrative building)
- Data-driven goal setting (suggest goals based on historical velocity)
- Slack/email integration for automated reports
License
Apache License 2.0 - See LICENSE for details.
Related Projects
- ci-failure-tracker - Automated CI failure tracking and reporting
- ci-dashboard - CI test pass rate visualization
Support
- Issues: https://github.com/redhat-community-ai-tools/quarterly-mcp-server/issues
- Discussions: https://github.com/redhat-community-ai-tools/quarterly-mcp-server/discussions
Built with FastMCP | Part of the Red Hat Community AI Tools
from github.com/redhat-community-ai-tools/quarterly-mcp-server
Установка Quarterly
У этого сервера нет опубликованного пакета — он собирается из исходников. Открой репозиторий и следуй инструкции в README.
▸ github.com/redhat-community-ai-tools/quarterly-mcp-serverFAQ
Quarterly MCP бесплатный?
Да, Quarterly MCP бесплатный — установка в пару кликов через Unyly без оплаты.
Нужен ли API-ключ для Quarterly?
Нет, Quarterly работает без API-ключей и переменных окружения.
Quarterly — hosted или self-hosted?
Self-hosted: сервер запускается локально на твоей машине командой из раздела установки.
Как установить Quarterly в Claude Desktop, Claude Code или Cursor?
Открой Quarterly на unyly.org, выбери вкладку своего клиента (Claude Desktop, Claude Code, Cursor) и нажми Install — конфиг сгенерируется автоматически, без правки JSON.
Похожие MCP
GitHub
PRs, issues, code search, CI status
автор: GitHubFilesystem
Secure file operations with configurable access controls.
Memory
Knowledge graph-based persistent memory system.
Template MCP Server
A CLI tool to create a new Model Context Protocol server project with TypeScript support, dual transport options, and an extensible structure
автор: mcpdotdirectAmap Maps Mcp Server
MCP server for using the AMap Maps API
автор: duxiaohuiSupabase
Database, auth and storage
автор: SupabaseEverything
Reference / test server with prompts, resources, and tools.
Git
Tools to read, search, and manipulate Git repositories.
Sequential Thinking
Dynamic and reflective problem-solving through thought sequences.
Time
Time and timezone conversion capabilities.
Compare Quarterly with
Не уверен что выбрать?
Найди свой стек за 60 секунд
Автор?
Embed-бейдж для README
Похожее
Все в категории development
