Skip to main content
Glama

GitHub Notifications MCP Server

GitHub Notifications MCP Server

An MCP (Model Context Protocol) server that provides tools for managing GitHub notifications. This server allows AI assistants like Claude to help you manage your GitHub notifications through natural language commands.

Features

  • List and filter your GitHub notifications
  • Mark notifications as read
  • View notification thread details
  • Subscribe or unsubscribe from notification threads
  • Mark threads as done
  • Manage repository-specific notifications
  • Control repository notification settings (all activity, default, or mute)

Prerequisites

  • Node.js 18 or higher
  • GitHub Personal Access Token (classic) with notifications or repo scope

Installation

  1. Clone this repository
    git clone https://github.com/yourusername/github-notifications-mcp-server.git cd github-notifications-mcp-server
  2. Install dependencies
    npm install
  3. Build the project
    npm run build
  4. Create a .env file with your GitHub token
    GITHUB_TOKEN=your_github_personal_access_token_here

Usage

Running the server directly

npm start

Using with Claude Desktop

Add the server to your claude_desktop_config.json file:

{ "mcpServers": { "github-notifications": { "command": "node", "args": ["/absolute/path/to/github-notifications-mcp-server/build/index.js"], "env": { "GITHUB_TOKEN": "your_github_personal_access_token_here" } } } }

Available Tools

Tool NameDescription
list-notificationsList all GitHub notifications for the authenticated user
mark-notifications-readMark all notifications as read
get-threadGet information about a notification thread
mark-thread-readMark a specific thread as read
mark-thread-doneMark a thread as done
get-thread-subscriptionGet subscription status for a thread
set-thread-subscriptionSubscribe to a thread
delete-thread-subscriptionUnsubscribe from a thread
list-repo-notificationsList notifications for a specific repository
mark-repo-notifications-readMark notifications for a repository as read
manage-repo-subscriptionManage repository subscriptions: all_activity, default (participating and @mentions), or ignore (mute)

Example Prompts

Here are some example prompts you can use with Claude Desktop once the server is connected:

  • "Can you check my GitHub notifications?"
  • "Show me my unread notifications from the last 24 hours."
  • "Mark all my notifications as read."
  • "Can you tell me about notification thread 12345?"
  • "Unsubscribe me from thread 12345."
  • "What notifications do I have for the octocat/Hello-World repository?"
  • "Mark all notifications from the octocat/Hello-World repository as read."
  • "Watch all activity on the octocat/Hello-World repository."
  • "Set the octocat/Hello-World repository to default settings (participating and @mentions)."
  • "Check my notification settings for the octocat/Hello-World repository."
  • "Mute all notifications from the octocat/Hello-World repository."

Development

URL Handling

This server automatically converts GitHub API URLs to their corresponding web UI URLs. For example:

  • API URL: https://api.github.com/repos/nodejs/node/pulls/57557
  • Converted to: https://github.com/nodejs/node/pull/57557

The conversion handles:

  • Domain conversion from api.github.com/repos to github.com
  • Path correction for pull requests (changing pulls to pull)
  • Preservation of additional path segments

Project Structure

github-notifications-mcp-server/ ├── src/ # Source code │ ├── tools/ # Tool implementations │ ├── types/ # Type definitions │ ├── utils/ # Utility functions │ ├── index.ts # Entry point │ └── server.ts # Server configuration ├── build/ # Compiled JavaScript ├── .env # Environment variables ├── package.json # Dependencies ├── tsconfig.json # TypeScript configuration └── README.md # Documentation

Building

npm run build

Testing

Run the automated tests:

npm test

Test URL conversion manually:

npm run test:url

License

MIT

-
security - not tested
A
license - permissive license
-
quality - not tested

hybrid server

The server is able to function both locally and remotely, depending on the configuration or use case.

An MCP server that enables AI assistants like Claude to help users manage their GitHub notifications through natural language commands.

  1. Features
    1. Prerequisites
      1. Installation
        1. Usage
          1. Running the server directly
          2. Using with Claude Desktop
        2. Available Tools
          1. Example Prompts
            1. Development
              1. URL Handling
              2. Project Structure
              3. Building
              4. Testing
            2. License

              Related MCP Servers

              • -
                security
                F
                license
                -
                quality
                An MCP server that enables Claude and other compatible LLMs to interact with the GitHub API, supporting features like creating issues, retrieving repository information, listing issues, and searching repositories.
                Last updated 4 months ago
                TypeScript
              • A
                security
                F
                license
                A
                quality
                An MCP server that allows Claude and other MCP-compatible LLMs to interact with the GitHub API, supporting features like creating issues, getting repository information, listing issues, and searching repositories.
                Last updated 4 months ago
                4
                TypeScript
              • -
                security
                A
                license
                -
                quality
                An MCP server that wraps around the GitHub CLI tool, allowing AI assistants to interact with GitHub repositories through commands for pull requests, issues, and repository operations.
                Last updated 3 months ago
                5
                TypeScript
                MIT License
                • Linux
                • Apple
              • -
                security
                A
                license
                -
                quality
                An MCP server that integrates AI assistants like Claude with GitLab's merge requests, allowing them to review code changes, add comments, and approve/unapprove merge requests directly through the GitLab API.
                Last updated 2 months ago
                19
                Python
                MIT License
                • Linux
                • Apple

              View all related MCP servers

              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/mcollina/mcp-github-notifications'

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