Skip to main content
Glama

Tempo MCP Server

MCP (Model Context Protocol) server for Tempo time tracking with full support for roles and accounts.

Features

  • Auto-generate timesheets from git commits - scans all your repos and creates worklogs automatically

  • Create worklogs with role and account attributes

  • Automatically fetch account from Jira issue

  • Auto-fallback to active account when issue's account is closed/archived

  • Quick sprint meeting logging - just specify project and minutes

  • Update and delete worklogs

  • List worklogs for date ranges

  • Get available work attributes and roles

Installation

npm install
npm run build

Configuration

Getting your API tokens

Tempo API Token:

  1. Go to Tempo > Settings in your Jira instance

  2. Click on API Integration in the left sidebar

  3. Click New Token

  4. Give it a name (e.g., "Claude Code MCP")

  5. Select permissions: Manage Worklogs (or Full Access)

  6. Copy the generated token

Jira API Token:

  1. Go to Atlassian API Tokens

  2. Click Create API token

  3. Give it a label (e.g., "Claude Code MCP")

  4. Copy the generated token

Environment Variables

Variable

Required

Description

TEMPO_API_TOKEN

Yes

Tempo API token (get from Tempo > Settings > API Integration)

JIRA_API_TOKEN

Yes

Jira API token (get from id.atlassian.com/manage-profile/security/api-tokens)

JIRA_EMAIL

Yes

Jira account email

JIRA_BASE_URL

Yes

Jira base URL (e.g., https://company.atlassian.net)

JIRA_ACCOUNT_FIELD_ID

No

Custom field ID for Tempo account (default: 10026)

DEFAULT_ROLE

No

Default role for worklogs (default: Dev)

DEFAULT_PROJECTS_DIR

No

Default directory for git repos (e.g., C:/Users/you/Projects)

DEFAULT_MONDAY_MEETING_ISSUE

No

Jira issue for Monday team meeting (default: BS-14)

Note: gitAuthor defaults to JIRA_EMAIL since they're the same for all developers.

Usage with Claude Code

Quick Setup (one command)

Linux/macOS:

claude mcp add tempo-mcp -s user \
  -e TEMPO_API_TOKEN=your-tempo-token \
  -e JIRA_API_TOKEN=your-jira-token \
  -e JIRA_EMAIL=your-email@company.com \
  -e JIRA_BASE_URL=https://company.atlassian.net \
  -e DEFAULT_PROJECTS_DIR=/home/you/projects \
  -- npx -y github:Henry-Workshop/tempo-mcp

Windows (PowerShell):

claude mcp add tempo-mcp -s user `
  -e TEMPO_API_TOKEN=your-tempo-token `
  -e JIRA_API_TOKEN=your-jira-token `
  -e JIRA_EMAIL=your-email@company.com `
  -e JIRA_BASE_URL=https://company.atlassian.net `
  -e DEFAULT_PROJECTS_DIR=C:/Users/you/Projects `
  -- npx.cmd -y github:Henry-Workshop/tempo-mcp

Example configuration in claude.json

{
  "mcpServers": {
    "tempo-mcp": {
      "command": "npx",
      "args": ["-y", "github:Henry-Workshop/tempo-mcp"],
      "env": {
        "TEMPO_API_TOKEN": "your-tempo-token",
        "JIRA_API_TOKEN": "your-jira-token",
        "JIRA_EMAIL": "your-email@company.com",
        "JIRA_BASE_URL": "https://company.atlassian.net",
        "DEFAULT_PROJECTS_DIR": "C:/Users/you/Projects"
      }
    }
  }
}

Available Tools

tempo_generate_timesheet

The main feature! Automatically generate your weekly timesheet from git commits.

{
  "weekStart": "2025-12-01",
  "gitAuthor": "your-email@company.com",
  "projectsDir": "C:/Users/you/Projects",
  "dryRun": true,
  "mondayMeetingIssue": "BS-14"
}

Parameter

Required

Description

weekStart

Yes

Monday date of the week (YYYY-MM-DD)

gitAuthor

Yes

Your git author email or name

projectsDir

Yes

Directory containing all your git repositories

dryRun

No

If true, shows plan without creating worklogs (default: false)

mondayMeetingIssue

No

Jira issue for Monday team meeting (default: BS-14)

What it does:

  1. Scans all git repos in projectsDir

  2. Extracts your commits for Monday-Thursday

  3. Parses Jira issue keys from commit messages (e.g., PROJ-123)

  4. Distributes 8h/day based on commit count per issue

  5. Adds 15min daily sprint meeting (on the main project of the day)

  6. Adds 15min Monday team sync on BS-14

  7. Generates client-friendly descriptions from commit messages

  8. Creates worklogs in Tempo

Example usage in Claude Code:

  • "fait ma feuille de temps de cette semaine"

  • "generate my timesheet for last week"

  • "do my timesheet for the week of december 1st in dry run mode"

Important: Your commit messages should include Jira issue keys (e.g., PROJ-123 fix: description). Commits without issue keys will be flagged as warnings.


tempo_log_sprint_meeting

Quick way to log time for sprint meetings (daily, planning, retro). Automatically finds the "Sprint Meetings" issue for the project.

{
  "projectKey": "PROJ",
  "timeSpentMinutes": 15,
  "description": "Daily",
  "date": "2025-11-27"
}

Example usage in Claude Code:

  • "add 15 mins for sprint meetings for BERGA"

  • "log daily 15 mins to CRC project"

tempo_create_worklog

Create a new worklog with role and account support.

{
  "issueKey": "PROJ-123",
  "timeSpentHours": 1.5,
  "date": "2025-11-27",
  "description": "Working on feature",
  "role": "Dev",
  "accountKey": "ACCOUNT-KEY"
}

If accountKey is not provided, it will be automatically fetched from the Jira issue. If the account is closed/archived, it will automatically find an active account from recent project issues.

tempo_get_worklogs

Retrieve worklogs for a date range.

{
  "startDate": "2025-11-01",
  "endDate": "2025-11-30"
}

tempo_update_worklog

Update an existing worklog.

{
  "worklogId": "12345",
  "timeSpentHours": 2,
  "description": "Updated description"
}

tempo_delete_worklog

Delete a worklog.

{
  "worklogId": "12345"
}

tempo_get_work_attributes

Get available work attributes (roles, accounts configuration).

tempo_get_roles

Get available Tempo roles.

License

MIT

-
security - not tested
F
license - not found
-
quality - not tested

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/Henry-Workshop/tempo-mcp'

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