Wakatime

liveDeveloperProductivity

WakaTime — retrieve coding activity stats, daily summaries, durations, goals, project commits, and public leaderboards for developers.

12tools
0msauth
free tier50 calls/day

Tools

current_user

Profile of the WakaTime account that owns your OAuth token. Requires your own WakaTime personal OAuth token as _apiKey.

No parameters required.

▶Try it
user

Public WakaTime profile for a user_id/username; keyless for public profiles, pass your OAuth token as _apiKey for your own or private ones.

No parameters required.

▶Try it
summaries

Fetch WakaTime daily coding summaries for a user over a date range (start/end required, YYYY-MM-DD); returns per-day breakdowns by project, language, editor, OS, and category in seconds. Requires your

No parameters required.

▶Try it
stats

Fetch aggregated WakaTime coding stats for a user over a range ("last_7_days", "last_30_days", "last_6_months", "last_year", "all_time"); returns totals and rankings by language, project, editor, and

No parameters required.

▶Try it
durations

Fetch WakaTime coding durations (start/end timestamps with project and file) for a single day (date required, YYYY-MM-DD); optionally slice_by entity/language/branch for granular session data. Require

No parameters required.

▶Try it
heartbeats

Raw heartbeats for a date. Requires your own WakaTime personal OAuth token as _apiKey.

No parameters required.

▶Try it
goals

User's goals. Requires your own WakaTime personal OAuth token as _apiKey.

No parameters required.

▶Try it
projects

User's projects. Requires your own WakaTime personal OAuth token as _apiKey.

No parameters required.

▶Try it
leaders

Fetch WakaTime's public coding leaderboard; optionally filter by language or country_code and paginate; returns ranked users with display names and weekly coding totals.

No parameters required.

▶Try it
commits

List the commits WakaTime has recorded for one project belonging to a WakaTime user, given user_id (or "current") and the project name, with optional author, branch, and page. Returns each commit hash

No parameters required.

▶Try it
editors

Fetch WakaTime's public editor usage statistics showing relative popularity of code editors and IDEs across all WakaTime users.

No parameters required.

▶Try it
meta

Fetch WakaTime API metadata including current server time and available timezones; useful for validating timezone strings before passing them to summaries or durations.

No parameters required.

▶Try it

Test with curl

The gateway speaks JSON-RPC 2.0 over HTTP POST. You can test any pack directly from the terminal.

List available tools
bash
curl -X POST https://gateway.pipeworx.io/wakatime/mcp \
  -H "Content-Type: application/json" \
  -d '{"jsonrpc":"2.0","id":1,"method":"tools/list"}'
Call a tool
bash
curl -X POST https://gateway.pipeworx.io/wakatime/mcp \
  -H "Content-Type: application/json" \
  -d '{"jsonrpc":"2.0","id":2,"method":"tools/call","params":{"name":"current_user","arguments":{}}}'

Use with the SDK

Install @pipeworx/sdk to call tools from any TypeScript/Node project.

TypeScript
import { Pipeworx } from '@pipeworx/sdk';
const px = new Pipeworx();
const result = await px.call("current_user", {});
ask_pipeworx
// Or ask in plain English:
const answer = await px.ask("wakatime — retrieve coding activity stats, daily summaries, durations, goals, project commits, and public leaderboards for developers");