Jira Weekly Reporter
Connects to a Jira instance to generate weekly reports based on issue activity.
Jira Weekly Reporter MCP Server
This project provides a FastMCP server that connects to your Jira instance (Cloud or Server/Data Center) to generate weekly reports based on issue activity. It leverages the pycontribs-jira library for Jira interaction and can optionally use the connected client's Large Language Model (LLM) for summarizing the generated report.
✨ Features
- Jira Connection: Securely connects to Jira using API tokens stored in a
.envfile. - MCP Tool: Exposes a
generate_jira_reporttool accessible via the Model Context Protocol. - Flexible Reporting:
- Defaults to reporting issues updated in the last 7 days.
- Allows specifying a custom JQL query.
- Can filter reports by a specific Jira project key.
- Limits the number of results returned (configurable).
- (Optional) LLM Summarization: Can use the client's LLM (via
ctx.sample()) to provide a concise summary of the report. - Asynchronous Handling: Properly handles synchronous Jira library calls within the asynchronous FastMCP server using
asyncio.to_thread.
📋 Prerequisites
- Python 3.10 or later.
uv(recommended) orpipfor package management.- Access to a Jira instance (Cloud, Server, or Data Center).
- A Jira API Token (Personal Access Token for Server/DC).
- FastMCP CLI installed and available in your system's PATH.
⚙️ Setup
-
Clone the Repository (if applicable):
git clone https://github.com/Jongryong/jira_reporter.git cd jira_reporter -
Install Dependencies: We recommend using
uv:uv pip install fastmcp "jira[cli]" python-dotenv httpx anyioAlternatively, use
pip:pip install fastmcp "jira[cli]" python-dotenv httpx anyio -
Create
.envFile: Create a file named.envin the same directory asjira_reporter_server.py. Add your Jira connection details:# .env JIRA_URL=https://your-domain.atlassian.net # Your Jira Cloud URL or Self-Hosted URL [email protected] # Your Jira login email JIRA_API_TOKEN=your_api_token_or_pat # Your generated API Token or PAT- Security:
- Never commit your
.envfile to version control! Add.envto your.gitignorefile. - Jira Cloud: Generate an API token from your Atlassian account settings: Manage API tokens.
- Jira Server/Data Center: Generate a Personal Access Token (PAT) from your Jira user profile settings: Using Personal Access Tokens.
- Never commit your
- Security:
▶️ Running the Server (Standalone)
You can run the server independently for testing or other purposes:
-
Directly with Python:
python jira_reporter_server.py -
Using the FastMCP CLI:
fastmcp run jira_reporter_server.pyTo run with SSE (e.g., for remote access):
fastmcp run jira_reporter_server.py --transport sse --port 8001
🖥️ Using with Claude Desktop
To make this server available as a tool within the Claude Desktop application:
-
Ensure Prerequisites: Make sure
fastmcpis installed and accessible in your system's PATH, as the configuration below uses thefastmcpcommand. -
Locate Claude Config File: Find the
claude_desktop_config.jsonfile. Its location depends on your operating system:- macOS:
~/Library/Application Support/Claude/claude_desktop_config.json - Windows:
%APPDATA%\Claude\claude_desktop_config.json(usuallyC:\Users\<YourUsername>\AppData\Roaming\Claude\claude_desktop_config.json) - Linux:
~/.config/Claude/claude_desktop_config.json(or$XDG_CONFIG_HOME/Claude/)
- macOS:
-
Edit the Config File: Open
claude_desktop_config.jsonin a text editor. -
Add Server Configuration: Find the
"mcpServers"object within the JSON (if it doesn't exist, create it as an empty object{}). Add the following entry insidemcpServers, making sure to replace"path/to/your/jira_reporter_server.py"with the absolute path to your script:{ "mcpServers": { // ... other servers might be here ... "jira_report": { "command": "fastmcp", "args": [ "run", "/path/to/your/jira_reporter_server.py" // <-- IMPORTANT: Use the full, absolute path here ] } // ... other servers might be here ... } // ... rest of your Claude config ... }"jira_report": This is the internal name Claude uses. You can change it if desired."command": "fastmcp": Tells Claude to use thefastmcpcommand-line tool."args": [...]: Tells Claude to runfastmcp run /path/to/your/jira_reporter_server.py.
-
Save and Restart: Save the
claude_desktop_config.jsonfile and restart the Claude Desktop application. -
Invoke the Tool: You should now be able to use the tool in Claude by mentioning the server name defined in the Python script (
Jira Weekly Reporter). For example:@Jira Weekly Reporter generate jira report for project MYPROJ and summarize it
🛠️ MCP Tool Details
- Tool Name:
generate_jira_report - Description: Generates a report of Jira issues based on a JQL query (defaulting to recently updated). Optionally summarizes the report using the client's LLM.
Parameters:
| Parameter | Type | Required | Default | Description |
|---|---|---|---|---|
jql_query | string | No | updated >= -7d ORDER BY updated DESC | Optional JQL query. If omitted, the default is used. |
project_key | string | No | None | Optional Jira project key (e.g., "PROJ") to limit the search scope (added as project = 'KEY' AND ...). |
max_results | integer | No | 50 | Maximum number of issues to include in the raw report data. |
summarize | boolean | No | false | If true, the server will request a summary from the client's LLM via ctx.sample(). |
📦 Server Dependencies
The FastMCP constructor includes dependencies=["jira"]. This tells tools like fastmcp install that the jira library is required for this server to function correctly when creating isolated environments.
🤝 Contributing
Contributions are welcome! Please feel free to submit issues or pull requests.
📄 License
MIT License
相關伺服器
Trello
Interact with Trello boards, lists, and cards using the Trello API.
Todo List
A server that provides a comprehensive API for managing todo items.
Tmux
Interact with your Tmux sessions, windows and pane, execute commands in tmux panes and retrieve result.
DalexorMI
Dalexor MI is an advanced project memory system designed to provide AI coding assistants with **Contextual Persistence**. Unlike standard RAG (Retrieval-Augmented Generation) systems that perform surface-level keyword searches, Dalexor MI maps the **logical evolution** of a codebase, tracking how symbols, dependencies, and architectural decisions shift over time.
Timergy MCP Server
Create scheduling polls and find the perfect meeting time. No auth required.
Problem Solving MCP Server
An intelligent problem-solving server that automatically forms multi-role teams and uses the Eisenhower matrix for efficient task management and collaboration.
Teamwork MCP
Connects to the Teamwork API to interact with projects and tasks.
MCP Sharepoint (aisuru)
A Model Context Protocol (MCP) server that exposes core Microsoft SharePoint / Microsoft Graph API functionalities as tools usable by LLM agents (e.g. Claude Desktop).
JIRA
Access and manage JIRA issues, projects, and users with optimized data payloads for AI context windows.
Unchained Engine
E-Commerce Engine with built-in MCP Server