gitlab-issue-analyzer

AlkaNixon/gitlab-issue-analyzer

3.2

If you are the rightful owner of gitlab-issue-analyzer and would like to certify it and/or have it hosted online, please leave a comment on the right or send an email to dayong@mcphub.com.

The GitLab Issue Analyzer is an MCP server designed to streamline the process of fetching, analyzing, and documenting GitLab issues, with integration to Notion for organized documentation.

Tools
3
Resources
0
Prompts
0

GitLab Issue Analyzer

An MCP (Model Context Protocol) server that fetches GitLab issues from a specific project and saves analysis documentation to Notion.

Features

  • Fetch GitLab Issues: Retrieve detailed issue information including discussions and comments, get an overview, summary, and explanation of what the issue is, plus suggestions on how to solve it. Saves time by avoiding long thread reading—no need to copy and paste for context. Go straight to working on solutions with AI assistant help.
  • List Open Issues: Get all open issues from the project, making the AI assistant aware and able to work on any issue.
  • Save to Notion: Create formatted Notion pages with issue analysis, summaries, and solution steps which can be reused when creating Jira tickets.

Tools Available

fetch_gitlab_issue

Fetches complete details of a specific GitLab issue.

  • Parameter: issue_number (int) - The issue IID (e.g., 40 for issue #40) or simply describe the issue by title, which the AI assistant can recognize
  • Returns: Issue details with title, description, discussions, assignees, and labels

list_open_gitlab_issues

Lists all open issues from the ACM GitLab project.

  • Returns: Array of open issues with basic information

save_issue_analysis_to_notion

Saves issue analysis to Notion with formatted sections.

  • Parameters:
    • issue_number (int)
    • issue_title (str)
    • summary (str)
    • suggestions (str)
    • solution_steps (str)
    • issue_url (str, optional)

Setup

  1. Install uv (if not already installed):

    curl -LsSf https://astral.sh/uv/install.sh | sh
    
  2. Clone and Install dependencies:

    Using uv:

    cd gitLab-issue-analyzer
    uv sync
    

    This will automatically install all dependencies from pyproject.toml.

  3. Create .env file with required credentials:

    GITLAB_TOKEN=your_gitlab_token
    GITLAB_PROJECT_PATH=eclipse-research-labs/codeco-project/acm
    NOTION_API_KEY=your_notion_integration_key
    NOTION_PAGE_ID=your_notion_parent_page_id
    
  4. Configure in Cursor/Claude: Add to your MCP settings:

    Using uv (recommended for faster startup):

    {
      "mcpServers": {
        "gitlab-issue-analyzer": {
          "command": "uv",
          "args": ["run", "--directory", "/path/to/gitLab-issue-analyzer", "main.py"]
        }
      }
    }
    

Example Usage

Once configured as an MCP server, you can use it through Claude Desktop or Cursor AI:

# Fetch a specific issue:
"fetch_gitlab_issue 40" or "Fetch and analyze GitLab issue 40"

# List all open issues:
"List all open GitLab issues"

# Save analysis to Notion:
"Save analysis and solutions discussed above to Notion"

Files

  • main.py - Main MCP server implementation
  • gitlab_integration.py - GitLab API integration functions
  • pyproject.toml - Python project dependencies (for uv)
  • .env - Environment variables (not tracked in git)

Authentication

  • GitLab: Requires a Personal Access Token with read_api scope
  • Notion: Requires an integration token and a parent page ID where new pages will be created