Skip to main content
Glama
christojansen75

Jira/Confluence Team Lead MCP

Jira / Confluence Team Lead MCP

An MCP server that answers three questions for a team lead, and can publish the answer to Confluence:

  1. What's in this sprint, and what still needs refinement?

  2. How did each developer do over the last few sprints? (real changelog-derived cycle/lead time, not a guess from current status)

  3. What's not ready for the next refinement session, and who should be in the room?

Built and tested against a personal Atlassian Cloud site first; the target corporate instance is a .env change, not a code change.

Setup

python -m venv .venv
.venv\Scripts\python.exe -m pip install -e ".[dev]"

Copy .env.example to .env and fill in the base URL, your Atlassian email, and an API token from https://id.atlassian.com/manage-profile/security/api-tokens.

Then register the server (.mcp.json in this repo already does it for Claude Code — adjust the absolute paths if you move the project):

claude mcp add jira-confluence -- "C:\DEV\Jira Confluence MCP\.venv\Scripts\python.exe" -m jira_confluence_mcp.server

First call should always be check_connection — it verifies both products, prints the resolved defaults, and tells you which custom field it picked for story points.

Related MCP server: MCP Jira DevFlow

Tools

Tool

What it does

check_connection

Auth check + resolved config. Run this first on a new instance.

list_sprints

Sprints on a board, so you can find sprint ids. Falls back to listing boards if none is configured.

get_sprint_issues

Issues in a sprint, filterable by status name or status category. Key, summary, assignee, story points, status.

get_developer_sprint_history

2–5 sprint rollup per developer: completed, carried over, avg time in progress, cycle time, lead time.

get_refinement_readiness_report

Stories missing an estimate or DOR/DOD labels, plus a suggested attendee list.

publish_confluence_page

Create or overwrite a page from storage-format XHTML.

check_confluence_capabilities

Cloud vs Data Center, and whether the Table Filter app is available.

Every report tool returns rows (structured), markdown (for reading), and — with include_confluence_storage=trueconfluence (storage format). Pass publish=true to write it straight to a page; re-running overwrites the same page by title.

Metric definitions

These are the decisions baked into metrics.py. Worth agreeing with the team before the numbers get used in a retro.

  • Completed — the issue was in a Done-category status at sprint close (completeDate, else endDate, else now for an active sprint). Judged at sprint close, so an issue finished the week after the sprint ended counts as carried over for that sprint.

  • Carried over — everything in the sprint that was not completed.

  • Re-opened work — an issue that was Done and moved back out is not completed. Closed → re-opened → closed again reports the final close.

  • Time in progress — calendar hours in In Progress-category statuses, summed across visits, capped at completion or sprint close.

  • Cycle time — first entry into an In Progress-category status → completion.

  • Lead time — issue created → completion.

  • Grouping — by the issue's current assignee. Reassigned work is credited to whoever holds it now; the changelog has the data to split it by holder if that turns out to matter.

Status categories (new / indeterminate / done) are read from the instance rather than hard-coded status names, so a workflow that calls it "Development" instead of "In Progress" still works. Any status the instance does not report is surfaced in the report's warnings.

Confluence tables

Storage-format tables are static — not sortable or filterable. Options, in the order worth trying on a target instance:

  1. table_style="table-filter" — wraps the table in the Table Filter, Charts & Spreadsheet macro. Run check_confluence_capabilities first; reading the app inventory needs admin rights, so a null result means "ask an admin", not "not installed".

  2. Confluence Cloud's database content type — behaves like an embedded spreadsheet, but cannot be created through the REST content API this server uses. Manual setup only for now.

  3. table_style="plain" (default) — static table. Re-run the report grouped or sorted differently when another view is needed. Good enough for MVP.

Switching to another instance

Only .env changes:

  • JIRA_BASE_URL / CONFLUENCE_BASE_URL — set both explicitly if Jira and Confluence are on different hosts (usual for Data Center).

  • ATLASSIAN_DEPLOYMENT — leave auto unless the URL doesn't give it away. Data Center means /rest/api/2 and offset-paged search; the client handles the switch, including falling back from the Cloud-only /search/jql.

  • JIRA_STORY_POINTS_FIELD — auto-discovery looks for "Story Points" / "Story point estimate"; pin the custom field id if the instance renamed it.

  • REFINEMENT_DOR_LABELS / REFINEMENT_DOD_LABELS — the team's actual labels.

  • ATLASSIAN_CA_BUNDLE — corporate root CA, for an internal TLS chain. Prefer this over turning ATLASSIAN_VERIFY_SSL off.

Tests

.venv\Scripts\python.exe -m pytest -q

52 tests, no instance required — HTTP is mocked with respx, and the metric logic is tested as pure functions over changelog fixtures.

Not built yet

  • get_story_comment_summary — per-developer comment timeline within a story. Deliberately deferred; decide whether it merges into the developer history or stays standalone once the first three tools have been used for a few sprints.

  • Alerting on stories with no comment for >1 day.

  • Postgres sync + front end. The rows payloads are already shaped for a table-per-report load, so that phase doesn't need the reports rewritten.

Install Server
F
license - not found
A
quality
C
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 Servers

  • A
    license
    -
    quality
    D
    maintenance
    Enables seamless Jira issue and sprint management directly from the terminal or IDE without context switching. Supports full issue lifecycle operations including creation, updates, and search, plus sprint planning, commenting, and project analytics through natural language commands.
    0
    MIT
  • A
    license
    -
    quality
    C
    maintenance
    A Scrum-aware MCP server that provides semantic analysis of Jira issues, sprint health, and Agile workflow intelligence, returning structured summaries and recommendations instead of raw Jira payloads.
    5
    MIT
  • A
    license
    A
    quality
    C
    maintenance
    Generates sprint retrospectives grounded in actual data from Jira, GitHub, and Slack, providing evidence-backed insights and action items.
    6
    23
    MIT

View all related MCP servers

Related MCP Connectors

  • Generate answers & visualizations from your engineering data to track software development health.

  • Connect to Atlassian Jira, Confluence, and Compass to search, create, and manage your work.

  • Investigate errors, track deployments, analyze performance, and manage application monitoring

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/christojansen75/JiraMCP'

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