Back to MCP directory
publicPublicdnsLocal runtime

jira-mcp-snowflake

一个基于CSV文件的JIRA问题数据查询服务,提供问题列表查询、详情获取和项目统计功能

article

README

🚀 Jira MCP Server

Jira MCP Server 是一个模型上下文协议(MCP)服务器,可访问从 Snowflake 导出并存储在 CSV 文件中的 JIRA 问题数据。该服务器使 AI 助手能够通过标准化接口查询、过滤和分析 JIRA 问题。

🚀 快速开始

Jira MCP Server 从 CSV 文件中读取 JIRA 数据,并提供三种主要工具来与数据进行交互:

  • list_issues - 使用各种条件查询和过滤 JIRA 问题
  • get_issue_details - 通过问题键获取特定问题的详细信息
  • get_project_summary - 获取所有项目的统计信息和摘要

✨ 主要特性

数据源

服务器从 Snowflake_CSV/ 目录下的以下 CSV 文件中读取数据:

  • JIRA_ISSUE_NON_PII.csv - 主要问题数据(非个人身份信息)
  • JIRA_LABEL_RHAI.csv - 问题标签
  • JIRA_COMPONENT_RHAI.csv - 组件信息
  • JIRA_COMMENT_NON_PII.csv - 问题评论(非个人身份信息)

可用工具

1. 列出问题 (list_issues)

可选择过滤条件来查询 JIRA 问题:

  • 项目过滤 - 按项目键过滤(例如,'SMQE'、'OSIM')
  • 问题类型过滤 - 按问题类型 ID 过滤
  • 状态过滤 - 按问题状态 ID 过滤
  • 优先级过滤 - 按优先级 ID 过滤
  • 文本搜索 - 在摘要和描述字段中搜索
  • 结果限制 - 控制返回结果的数量(默认值:50)

2. 获取问题详情 (get_issue_details)

通过问题键(例如,'SMQE - 1280')检索特定 JIRA 问题的综合信息,包括:

  • 基本问题信息(摘要、描述、状态、优先级)
  • 时间戳(创建时间、更新时间、截止日期、解决日期)
  • 时间跟踪(原始估计、当前估计、已花费时间)
  • 元数据(投票数、关注数、环境、组件)
  • 关联标签

3. 获取项目摘要 (get_project_summary)

生成所有项目的统计信息:

  • 每个项目的问题总数
  • 每个项目的状态分布
  • 每个项目的优先级分布
  • 总体统计信息

📦 安装指南

本地开发

  1. 克隆仓库:
git clone <repository-url>
cd jira-mcp-snowflake
  1. 安装依赖项:
pip install -r requirements.txt
  1. 确保 Snowflake_CSV/ 目录中存在 CSV 数据文件。

  2. 运行服务器:

python mcp_server.py

容器部署

本地构建

要使用 Podman 本地构建容器镜像,请运行:

podman build -t jira-mcp-snowflake:latest .

这将创建一个名为 jira-mcp-snowflake:latest 的本地镜像,可用于运行服务器。

使用 Podman 或 Docker 运行

使用 Podman 运行的示例配置:

{
  "mcpServers": {
    "jira-mcp-snowflake": {
      "command": "podman",
      "args": [
        "run",
        "-i",
        "--rm",
        "-e", "MCP_TRANSPORT=stdio",
        "localhost/jira-mcp-snowflake:latest"
      ]
    }
  }
}

VS Code 持续集成

添加到 VS Code Continue 的示例配置:

{
  "experimental": {
    "modelContextProtocolServers": [
      {
        "name": "jira-mcp-snowflake",
        "transport": {
          "type": "stdio",
          "command": "podman",
          "args": [
            "run",
            "-i",
            "--rm",
            "-e", "MCP_TRANSPORT=stdio",
            "localhost/jira-mcp-snowflake:latest"
          ]
        }
      }
    ]
  }
}

💻 使用示例

按项目查询问题

# 列出 SMQE 项目的所有问题
result = await list_issues(project="SMQE", limit=10)

按文本搜索问题

# 搜索摘要或描述中包含 "authentication" 的问题
result = await list_issues(search_text="authentication", limit=20)

获取特定问题详情

# 获取特定问题的详细信息
result = await get_issue_details(issue_key="SMQE-1280")

获取项目概述

# 获取所有项目的统计信息
result = await get_project_summary()

🔧 技术细节

环境变量

  • MCP_TRANSPORT - MCP 通信的传输协议(默认值:"stdio")

数据隐私

此服务器仅设计用于处理非个人身份信息(non - PII)数据。在使用之前,应清理 CSV 文件以删除任何敏感的个人信息。

依赖项

  • httpx - HTTP 客户端库
  • fastmcp - 快速 MCP 服务器框架
  • aiofiles - 异步文件操作库
help

Runtime guide

cloud

Hosted runtime

Hosted servers run from a provider-managed environment. You usually connect the MCP client to the hosted endpoint or follow the provider's authorization flow, without keeping a local process alive

  1. Open provider connection page
  2. Authorize or copy endpoint
  3. Connect from your MCP client
terminal

Local runtime / other methods

Local servers run on your own machine or infrastructure. You normally copy the server_config into your MCP client, install the required package, and provide env variables from env_schema when needed

  1. Copy server_config
  2. Install required package
  3. Fill env variables and restart client