Skip to main content
Glama
adelaidasofia

RescueTime MCP Server

RescueTime MCP Server

A lightweight MCP server that gives Claude access to your RescueTime productivity data. Built with FastMCP.

Tools

Tool

Description

get_daily_summary

Productivity pulse, hours logged, productive vs. distracting time breakdown

get_top_activities

Top apps/websites ranked by time spent

get_categories

Time breakdown by category (Development, Communication, Social, etc.)

get_productivity_trend

Productivity pulse trend over the past N days

All tools accept a day parameter: "today", "yesterday", or "YYYY-MM-DD".

Related MCP server: RescueTime MCP Server

Install

Open Claude Code, paste:

/plugin marketplace add adelaidasofia/rescuetime-mcp
/plugin install rescuetime-mcp@rescuetime-mcp

Then get a RescueTime API key at rescuetime.com/anapi/manage and set RESCUETIME_API_KEY in your environment.

1. Get your API key

Go to rescuetime.com/anapi/manage and create or copy an API key.

2. Install FastMCP

pipx install fastmcp

Or with uv:

uv tool install fastmcp

3. Add to Claude Code

claude mcp add rescuetime \
  -e RESCUETIME_API_KEY=your_api_key_here \
  -- fastmcp run /path/to/server.py

Or add manually to your .mcp.json:

{
  "mcpServers": {
    "rescuetime": {
      "command": "fastmcp",
      "args": ["run", "/path/to/server.py"],
      "env": {
        "RESCUETIME_API_KEY": "your_api_key_here"
      }
    }
  }
}

4. Restart Claude Code

The RescueTime tools should appear in your session.

Example Usage

Once connected, you can ask Claude things like:

  • "How productive was I today?"

  • "What apps did I spend the most time on yesterday?"

  • "Show me my productivity trend for the last 7 days"

  • "What categories did I spend time on this week?"

Requirements

  • Python 3.11+

  • FastMCP 3.x

  • A RescueTime account (free or premium)

  • RescueTime API key

How It Works

The server calls the RescueTime Analytic Data API using your API key and returns structured productivity data that Claude can reason about. No data is stored or sent anywhere except back to your Claude session.

Same author, same architecture pattern (FastMCP, draft+confirm on writes where applicable, vault auto-export, MIT):

Telemetry

This plugin sends a single anonymous install signal to myceliumai.co the first time it loads in a Claude Code session on a given machine.

What is sent:

  • Plugin name (e.g. slack-mcp)

  • Plugin version (e.g. 0.1.0)

What is NOT sent:

  • No user identifiers, names, emails, tokens, or API keys

  • No file paths, message content, or anything from your work

  • No IP address is stored after dedup processing

Why: Helps the maintainer know which plugins people actually install, so attention goes to the ones that get used.

Opt out: Set the environment variable MYCELIUM_NO_PING=1 before launching Claude Code. The hook will skip the network call entirely. Already-pinged installs leave a sentinel at ~/.mycelium/onboarded-<plugin> — delete it if you want to reset state.

License

MIT


Built by Mycelium AI. Full install or team version at diazroa.com.

Available Tools

5 tools
get_activity_dataA

Get top activities/applications by time spent.

Args: date_str: Date to query - 'today', 'yesterday', or 'YYYY-MM-DD' limit: Maximum number of activities to show (default: 10)

Shows which specific applications and websites you spent time on, ranked by duration. Includes productivity classification for each.

ParametersJSON Schema
NameRequiredDescriptionDefault
date_strNotoday
limitNo

Output Schema

ParametersJSON Schema
NameRequiredDescription
resultYes

TDQS

A4.1/5.0
Behavior3/5

Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?

No annotations are present, and while the description indicates what the tool does, it does not explicitly state that the operation is read-only or disclose any potential side effects, rates, or auth requirements.

Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.

Conciseness5/5

Is the description appropriately sized, front-loaded, and free of redundancy?

The description is concise and well-structured, front-loading the core purpose and providing necessary details without unnecessary verbosity.

Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.

Completeness4/5

Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?

With an existing output schema and clear description of the output content (ranked activities with classification), the description is nearly complete. Missing is an explicit statement about the read-only nature.

Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.

Parameters5/5

Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?

Schema description coverage is 0%, but the description clearly explains both parameters: date_str with valid formats and limit with its meaning and default, adding value beyond the schema.

Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.

Purpose5/5

Does the description clearly state what the tool does and how it differs from similar tools?

The description clearly states it retrieves top activities/applications by time spent, with details on ranking and productivity classification, distinguishing it from siblings like get_category_breakdown.

Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.

Usage Guidelines3/5

Does the description explain when to use this tool, when not to, or what alternatives exist?

The description implies the tool should be used to see top activities, but it does not explicitly state when to use this tool versus alternatives or provide when-not-to-use guidance.

Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.

get_category_breakdownA

Get time spent by category.

Args: date_str: Date to query - 'today', 'yesterday', or 'YYYY-MM-DD'

Shows high-level categories like Software Development, Communication, Reference & Learning, etc. with time and productivity classification.

ParametersJSON Schema
NameRequiredDescriptionDefault
date_strNotoday

Output Schema

ParametersJSON Schema
NameRequiredDescription
resultYes

TDQS

A3.7/5.0
Behavior2/5

Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?

No annotations provided, so description must fully disclose behavior. It mentions return content but lacks details on side effects, auth, or error handling.

Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.

Conciseness5/5

Is the description appropriately sized, front-loaded, and free of redundancy?

The description is short, front-loaded with the core action, and includes all necessary information without extra words.

Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.

Completeness3/5

Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?

With an output schema present and no annotations, the description adequately explains what is returned but omits potential edge cases or additional behavior.

Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.

Parameters4/5

Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?

The description fully explains the date_str parameter with accepted formats and default, compensating for zero schema coverage.

Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.

Purpose5/5

Does the description clearly state what the tool does and how it differs from similar tools?

The tool's description clearly states it retrieves time spent by category, listing example categories and distinguishing it from siblings like get_activity_data or get_hourly_productivity.

Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.

Usage Guidelines3/5

Does the description explain when to use this tool, when not to, or what alternatives exist?

The description implies usage for a specific date but does not provide explicit when-to-use or alternative guidance compared to sibling tools.

Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.

get_hourly_productivityA

Get productivity breakdown by hour.

Args: date_str: Date to query - 'today', 'yesterday', or 'YYYY-MM-DD'

Shows when during the day you were most/least productive. Useful for identifying peak productivity hours and scheduling deep work.

ParametersJSON Schema
NameRequiredDescriptionDefault
date_strNotoday

Output Schema

ParametersJSON Schema
NameRequiredDescription
resultYes

TDQS

A4.1/5.0
Behavior2/5

Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?

No annotations are provided, so the description carries the full burden. It does not disclose whether the operation is read-only (though implied by 'get'), whether any data is cached or real-time, or if special permissions are needed. The lack of explicit behavioral traits is a gap.

Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.

Conciseness5/5

Is the description appropriately sized, front-loaded, and free of redundancy?

The description is compact: three sentences plus a parameter definition. The main purpose is stated first, followed by parameter clarification and a use-case sentence. Every sentence adds value without redundancy.

Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.

Completeness4/5

Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?

For a tool with output schema, the description need not explain return values. The single parameter is well-documented. However, it omits any comparison to sibling tools or prerequisites. Given simplicity, it is largely complete but could explicitly contrast with get_activity_data or get_productivity_trend.

Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.

Parameters5/5

Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?

The schema has 0% coverage with no description for date_str, but the description adds: 'Date to query - 'today', 'yesterday', or 'YYYY-MM-DD''. This provides valid formats and enumerations beyond the schema's type and default, fully compensating for the lack of schema descriptions.

Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.

Purpose5/5

Does the description clearly state what the tool does and how it differs from similar tools?

The description clearly states 'Get productivity breakdown by hour' and 'Shows when during the day you were most/least productive'. The verb 'Get' and resource 'productivity breakdown by hour' are specific. It distinguishes from sibling tools like get_activity_data or get_productivity_trend by focusing on hourly granularity.

Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.

Usage Guidelines4/5

Does the description explain when to use this tool, when not to, or what alternatives exist?

The description includes 'Useful for identifying peak productivity hours and scheduling deep work', which provides a clear use case. It does not explicitly state when not to use this tool or mention alternatives, but the given context is sufficient for guidance.

Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.

get_productivity_trendB

Get productivity pulse trend for the last N days.

Args: days: Number of days to look back (default: 7, max 14)

Shows the daily productivity pulse with visual bars and calculates averages. Useful for identifying patterns and trends over time.

ParametersJSON Schema
NameRequiredDescriptionDefault
daysNo

Output Schema

ParametersJSON Schema
NameRequiredDescription
resultYes

TDQS

B3.4/5.0
Behavior2/5

Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?

No annotations are provided, so the description must fully disclose behavioral traits. It mentions that the output includes 'visual bars and calculates averages,' but does not describe data sources, update frequency, permissions, or side effects. This is minimal context for a tool that likely produces a visual response.

Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.

Conciseness4/5

Is the description appropriately sized, front-loaded, and free of redundancy?

The description is concise with four sentences. The first sentence states the purpose, followed by a structured argument explanation, then two sentences on output and usage. There is no fluff.

Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.

Completeness4/5

Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?

Given the tool has an output schema, the description does not need to detail return values, but it does mention visual bars and averages. The single parameter is well-documented. It lacks information on data freshness or timezone handling, but overall it is sufficiently complete for a simple trend tool.

Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.

Parameters4/5

Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?

The input schema has 0% description coverage, so the description compensates by explaining the 'days' parameter: 'Number of days to look back (default: 7, max 14).' This adds constraints and meaning beyond the raw schema.

Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.

Purpose4/5

Does the description clearly state what the tool does and how it differs from similar tools?

The description clearly states that the tool retrieves a productivity trend for a specified number of days, using a specific verb ('Get') and resource ('productivity pulse trend'). It provides context about daily pulse and averages, but does not explicitly differentiate from sibling tools.

Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.

Usage Guidelines3/5

Does the description explain when to use this tool, when not to, or what alternatives exist?

The description suggests it is 'useful for identifying patterns and trends over time,' which implies a usage scenario. However, it does not provide explicit guidance on when not to use it or mention alternative tools among the siblings.

Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.

get_today_summaryA

Get today's complete RescueTime productivity summary.

This is the recommended daily check-in tool. Returns:

  • Productivity pulse (0-100 score)

  • Total time logged

  • Time breakdown by productivity level

  • Productive vs distracting percentages

ParametersJSON Schema
NameRequiredDescriptionDefault

No parameters

Output Schema

ParametersJSON Schema
NameRequiredDescription
resultYes

TDQS

A4.3/5.0
Behavior3/5

Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?

With no annotations, the description carries full burden. It discloses the output but omits behavioral traits like read-only nature, frequency limits, or authentication needs.

Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.

Conciseness5/5

Is the description appropriately sized, front-loaded, and free of redundancy?

Two short paragraphs, front-loaded with purpose, then bullet-style list of returns. Every sentence is informative and efficient.

Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.

Completeness5/5

Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?

Given an output schema exists (context signal), the description suffices by listing key outputs. No other details needed for a parameterless daily summary tool.

Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.

Parameters4/5

Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?

The input schema has no parameters (0), so baseline is 4. The description adds no parameter info, which is acceptable as none exist.

Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.

Purpose5/5

Does the description clearly state what the tool does and how it differs from similar tools?

The description clearly states it gets today's complete RescueTime productivity summary, lists specific return items, and positions itself as the 'recommended daily check-in tool', distinguishing it from siblings.

Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.

Usage Guidelines4/5

Does the description explain when to use this tool, when not to, or what alternatives exist?

It explicitly recommends this tool for daily check-in but does not provide explicit when-not-to-use guidance or alternatives, though sibling tools imply different scopes.

Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.

Tool Schema Changelog

Recent tool additions, removals, and schema changes observed during successful MCP inspections. Dates show when Glama detected each change.

  1. 5 tool updatesv0.1.0
    • First observedget_activity_data
    • First observedget_category_breakdown
    • First observedget_hourly_productivity
    • First observedget_productivity_trend
    • First observedget_today_summary

TDQS

A4/5.0
Disambiguation5/5

Each tool has a clearly distinct focus: activity details, category aggregation, hourly productivity, trend over days, and a comprehensive daily summary. No overlap between tools.

Naming Consistency5/5

All tools follow a consistent 'get_<descriptive_noun>' pattern with snake_case, making it predictable for an agent to infer function from name.

Tool Count5/5

Five tools is well-scoped for a personal productivity monitoring server, covering key aspects without unnecessary complexity or missing essentials.

Completeness4/5

The tool set covers daily summary, detailed activities, categories, hourly breakdown, and trends. Minor gaps like historical data export or multi-day comparison are acceptable.

Maintenance

ActivityActive
ResponsivenessNo issues

Resources

Unclaimed servers have limited discoverability.

Looking for Admin?

If you are the server author, to access and configure the admin panel.

Related MCP Connectors

Related MCP Servers

Latest Blog Posts

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/adelaidasofia/rescuetime-mcp'

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