home / mcp / tempo mcp server

Tempo MCP Server

MCP server for Tempo time tracking with full support for roles, accounts, and Jira integration.

Installation
Add the following to your MCP client configuration file.

Configuration

View docs
{
  "mcpServers": {
    "henry-workshop-tempo-mcp": {
      "command": "npx",
      "args": [
        "-y",
        "github:Henry-Workshop/tempo-mcp"
      ],
      "env": {
        "JIRA_EMAIL": "[email protected]",
        "DEFAULT_ROLE": "Dev",
        "JIRA_BASE_URL": "https://company.atlassian.net",
        "JIRA_API_TOKEN": "YOUR_JIRA_API_TOKEN",
        "TEMPO_API_TOKEN": "YOUR_TEMPO_API_TOKEN",
        "DEFAULT_PROJECTS_DIR": "/path/to/projects",
        "DEFAULT_MONDAY_MEETING_ISSUE": "BS-14"
      }
    }
  }
}

You run a Tempo MCP Server to automate and simplify time tracking with Tempo in Jira. It supports roles and accounts, auto-generates timesheets from git commits, and provides convenient tools to log, update, and fetch worklogs across projects and sprints. This guide shows you how to use the server, install it, and configure it for practical, day-to-day work.

How to use

Set up your MCP client to connect to the Tempo MCP Server, then use the available tools to manage worklogs and sprint meetings. The server can automatically pull account information from Jira issues, infer active accounts when needed, and generate detailed worklogs from your git activity. You can create, update, delete, and list worklogs, as well as retrieve available work attributes and roles.

How to install

Prerequisites: you need Node.js and npm installed on your machine. If they are not installed, download and install them from the official Node.js website.

npm install
npm run build

Configuration and usage notes

Environment variables you will use to configure the Tempo MCP Server are shown below. These values should be supplied in your startup environment or in your process manager configuration.

Key environment variables include TEMPO_API_TOKEN, JIRA_API_TOKEN, JIRA_EMAIL, JIRA_BASE_URL, and optional defaults like DEFAULT_ROLE, DEFAULT_PROJECTS_DIR, DEFAULT_MONDAY_MEETING_ISSUE, and JIRA_ACCOUNT_FIELD_ID.

If you want to run the server using the Claude Code CLI, you can add it as an MCP entry with the following approach. This example runs the Tempo MCP Server via npx from a GitHub source and passes credentials and project directory as environment variables.

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

Example configuration in claude.json

Below is an example MCP configuration snippet that shows how to register the Tempo MCP Server using stdio mode. This example uses npx to fetch the server from GitHub and passes environment variables.

{
  "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": "[email protected]",
        "JIRA_BASE_URL": "https://company.atlassian.net",
        "DEFAULT_PROJECTS_DIR": "C:/Users/you/Projects"
      }
    }
  }
}

Available tools

tempo_generate_timesheet

Automatically generate weekly timesheets from git commits by scanning repositories, extracting commits, and creating Tempo worklogs with calculated daily allocations.

tempo_log_sprint_meeting

Log time for sprint meetings with a predefined daily/meeting description and date, automatically targeting the correct project.

tempo_create_worklog

Create a new worklog with optional role and account attributes, with automatic account resolution from Jira if not provided.

tempo_get_worklogs

Retrieve worklogs within a specified date range.

tempo_update_worklog

Update an existing worklog with new time, date, or description.

tempo_delete_worklog

Delete an existing worklog by its ID.

tempo_get_work_attributes

Fetch available work attributes such as roles and accounts configuration.

tempo_get_roles

Fetch available Tempo roles.