Skip to main content
Glama
ProofHub MCP Server

ProofHub MCP Server

README.md
# ๐Ÿ”Œ ProofHub MCP Server

[![npm version](https://img.shields.io/badge/version-1.0.0-blue.svg)](https://github.com/MustafaPatharia/proofhub-mcp)
[![License: MIT](https://img.shields.io/badge/License-MIT-green.svg)](LICENSE)
[![MCP](https://img.shields.io/badge/MCP-Protocol-purple.svg)](https://modelcontextprotocol.io)

A **Model Context Protocol (MCP)** server that bridges ProofHub's project management capabilities with AI assistants like Claude, GitHub Copilot, and Cursor. Paste a ProofHub task URL in your AI chat, and the agent automatically fetches task details, comments, and bug tracker links to help you complete development tasks faster.

## ๐ŸŽฏ What This Solves

As a developer working with ProofHub for task management, you normally have to:
1. Open ProofHub in a browser
2. Navigate to the task
3. Read the description and all comments
4. Copy relevant bug tracker links (Jira, Linear, GitHub Issues, etc.)
5. Context-switch back to your code editor

**With this MCP server**, simply paste the ProofHub URL into your AI assistant, and it automatically:
- โœ… Fetches the complete task description
- โœ… Retrieves all comments and history
- โœ… Extracts bug tracker links from anywhere in the task
- โœ… Provides structured context for the AI to help you code

## โšก Features

- **๐Ÿ”’ Secure**: API key stored in environment variables, never in code
- **โฑ๏ธ Rate Limit Handling**: Automatically respects ProofHub's 25 req/10s limit with retry logic
- **๐Ÿงน HTML Cleanup**: Strips HTML tags from descriptions/comments for clean AI consumption
- **๐Ÿ”— Smart Link Extraction**: Regex patterns detect bug tracker URLs across all text fields
- **๐ŸŽฏ One-Shot Tool**: `get_task_with_bug_links` fetches everything in a single call
- **๐Ÿ›ก๏ธ Error Handling**: Graceful error messages with API status codes

## ๐Ÿš€ Quick Start

### 1. Installation

```bash
npm install
```

### 2. Configuration

Create a `.env` file (use `.env.example` as template):

```env
PROOFHUB_API_KEY=your_api_key_here
PROOFHUB_API_BASE=https://company.proofhub.com/api/v3
```

> **Getting your API key:** Log in to ProofHub โ†’ Account Settings โ†’ Apps & Integrations โ†’ API โ†’ Generate new API key

### 3. Connect to Your AI Assistant

#### ๐Ÿค– Claude Desktop

Add to your `claude_desktop_config.json`:

```json
{
  "mcpServers": {
    "proofhub": {
      "command": "node",
      "args": ["/absolute/path/to/proofhub-mcp/index.js"],
      "env": {
        "PROOFHUB_API_KEY": "your_key_here"
      }
    }
  }
}
```

**Config location:**
- macOS: `~/Library/Application Support/Claude/claude_desktop_config.json`
- Windows: `%APPDATA%\Claude\claude_desktop_config.json`

#### ๐Ÿ’ป VS Code Copilot

Add to `.vscode/mcp.json` in your workspace or user settings:

```json
{
  "servers": {
    "proofhub": {
      "type": "stdio",
      "command": "node",
      "args": ["/absolute/path/to/proofhub-mcp/index.js"],
      "env": {
        "PROOFHUB_API_KEY": "your_key_here"
      }
    }
  }
}
```

## ๐Ÿ“‹ Available Tools

| Tool | Description | Use Case |
|------|-------------|----------|
| **`proofhub_parse_url`** | Extracts project/list/task IDs from a ProofHub URL | Parse URL before calling other tools |
| **`proofhub_get_task`** | Fetches complete task details (title, description, stage, custom fields, assignees) | Get full task context |
| **`proofhub_get_comments`** | Retrieves all task comments with timestamps | Review team discussions |
| **`proofhub_get_task_with_bug_links`** | **โญ One-shot**: Fetches task + comments + auto-extracts bug tracker URLs | **Most useful** - get everything in one call |
| **`proofhub_create_comment`** | Posts a new comment on a task | Update task from your AI chat |
| **`proofhub_get_task_history`** | Fetches activity/stage change history | Track task evolution |

## ๐Ÿ’ก Usage Examples

### Example 1: Fetch Task Context

Simply paste a ProofHub URL in your AI chat:

```
Get context for this task:
https://kpi.proofhub.com/bappswift/#app/todos/project-7189443252/list-270280503800/task-514774338823
```

The AI will call `proofhub_get_task_with_bug_links` and return:
- Task title and description
- All comments (cleaned from HTML)
- List of bug tracker links found
- Stage, assignees, and custom fields

### Example 2: Development Workflow

```
I need to work on this ProofHub task:
https://kpi.proofhub.com/.../task-514774338823

Fetch the task, find any Jira links, and help me understand what needs to be built.
```

The AI will:
1. Fetch the complete task context
2. Extract Jira/GitHub/Linear links
3. Use your bug tracker MCP to fetch issue details
4. Provide a comprehensive development plan

### Example 3: Update Task

```
Add a comment to task 514774338823 in project 7189443252, list 270280503800:
"Completed the API endpoint implementation. Ready for review."
```
## ๐Ÿค Contributing
Contributions welcome! Fork the repo, make your changes, and submit a pull request.

## References

- [ProofHub API v3](https://github.com/ProofHub/api_v3)

TDQS

A3.5/5.0

Scored across 6 tools

Disambiguation5/5

Each tool has a clearly distinct purpose: creating comments, fetching comments, getting task details, getting task history, a composite bug-link extractor, and a URL parser. No overlap.

Naming Consistency5/5

All tools use the 'proofhub_' prefix followed by consistent snake_case verb_noun patterns (e.g., create_comment, get_task, parse_url). Naming is uniform and predictable.

Tool Count5/5

With 6 tools, the server is well-scoped for interacting with ProofHub tasks. Each tool serves a clear purpose without bloat or deficiency.

Completeness3/5

The tool set covers creation, reading, and composite extraction, but lacks update, delete, and list operations for tasks and comments. This creates notable gaps for full lifecycle management.