Skip to main content
Glama
README.md
# RescueTime MCP Server

An MCP (Model Context Protocol) server that provides Claude Desktop with access to your RescueTime productivity data, including daily summaries, activity tracking, and productivity trends.

## Features

- **Daily Summary**: Get your productivity pulse, time logged, and productive vs distracting breakdown
- **Productivity Trends**: Track your productivity score over the past week or more
- **Activity Data**: See which applications and websites you spent time on
- **Category Breakdown**: View time by category (Development, Communication, etc.)
- **Hourly Analysis**: Identify your peak productivity hours

## Prerequisites

- Python 3.11+
- [uv](https://docs.astral.sh/uv/) package manager
- A RescueTime account (free or premium)
- RescueTime API key

## Setup

### 1. Clone and Install

```bash
git clone https://github.com/JasonBates/rescuetime-mcp.git
cd rescuetime-mcp
uv sync
```

### 2. Get Your API Key

1. Go to [rescuetime.com/anapi/manage](https://www.rescuetime.com/anapi/manage)
2. Sign in with your RescueTime account
3. Create a new API key or copy an existing one

### 3. Configure Claude Desktop

Add the server to your Claude Desktop config at:
`~/Library/Application Support/Claude/claude_desktop_config.json`

```json
{
  "mcpServers": {
    "rescuetime": {
      "command": "uv",
      "args": [
        "--directory",
        "/Users/YOUR_USERNAME/Projects/rescuetime-mcp",
        "run",
        "rescuetime-mcp"
      ],
      "env": {
        "RESCUETIME_API_KEY": "your_api_key_here"
      }
    }
  }
}
```

Replace `YOUR_USERNAME` with your actual username and add your API key.

### 4. Restart Claude Desktop

Quit and reopen Claude Desktop. You should see "rescuetime" in the MCP servers list.

## Usage

Once configured, you can ask Claude things like:

- "How productive was I today?"
- "Show me my productivity trend for the past week"
- "What apps did I use most today?"
- "What categories did I spend time on yesterday?"
- "When was I most productive today?"

## Available Tools

| Tool | Description |
|------|-------------|
| `get_today_summary` | Today's productivity pulse, time logged, and breakdown |
| `get_productivity_trend` | Productivity score history (default 7 days) |
| `get_activity_data` | Top applications/websites by time spent |
| `get_category_breakdown` | Time spent by category |
| `get_hourly_productivity` | Productivity breakdown by hour |

## Tool Details

### get_today_summary
Returns a complete daily overview including:
- Productivity pulse (0-100 score)
- Total time logged
- Productive vs distracting percentages
- Breakdown by productivity level (very productive → very distracting)

### get_productivity_trend
Shows daily productivity pulse with visual bars over multiple days. Useful for identifying patterns and weekly trends.

### get_activity_data
Lists specific applications and websites ranked by time spent. Each activity shows:
- Productivity classification ([++] to [--])
- Duration
- Category

### get_category_breakdown
Groups time by high-level categories like Software Development, Communication, Reference & Learning, Social Networking, etc.

### get_hourly_productivity
Reveals when during the day you were most/least productive. Helps identify peak hours for scheduling deep work.

## Troubleshooting

### "Authentication error"
Make sure your API key is correctly set in the Claude Desktop config's `env` section.

### No data showing
RescueTime needs to be running and logging data on your devices. Check that the RescueTime app is active.

### Rate limiting
The RescueTime API has rate limits. If you encounter errors, wait a few minutes before retrying.

## Development

```bash
# Install dev dependencies
uv sync --dev

# Run tests
uv run pytest

# Test with MCP Inspector
npx @modelcontextprotocol/inspector uv run rescuetime-mcp
```

## License

MIT

TDQS

A4/5.0

Scored across 5 tools

Disambiguation5/5

Each tool has a clearly distinct purpose: get_activity_data focuses on specific applications/websites, get_category_breakdown on high-level categories, get_hourly_productivity on hourly patterns, get_productivity_trend on multi-day trends, and get_today_summary on a comprehensive daily overview. There is no overlap or ambiguity between these functions.

Naming Consistency5/5

All tool names follow a consistent verb_noun pattern starting with 'get_' followed by a descriptive noun phrase (e.g., get_activity_data, get_category_breakdown). This uniformity makes the tool set predictable and easy to understand at a glance.

Tool Count5/5

With 5 tools, this server is well-scoped for its purpose of providing RescueTime productivity insights. Each tool serves a unique and valuable function, covering key aspects like detailed activity data, category breakdowns, hourly analysis, trends, and daily summaries without being overwhelming or sparse.

Completeness4/5

The tool set covers the core productivity analysis domain comprehensively, including data retrieval, categorization, time-based patterns, and summaries. A minor gap is the lack of tools for modifying or configuring data (e.g., setting goals or adjusting classifications), but this is reasonable for a read-only analytics server focused on insights.

Maintenance

ActivityMaintained
ResponsivenessNo issues