Tempo MCP Server
An MCP server for managing Tempo worklogs in Jira. It connects to Jira and Tempo services using API tokens and environment variables.
Tempo MCP Server
A Model Context Protocol (MCP) server for managing Tempo worklogs in Jira. This server provides tools for tracking time and managing worklogs through Tempo's API, making it accessible through Claude, Cursor and other MCP-compatible clients.
Features
- Retrieve Worklogs: Get all worklogs for a specific date range
- Create Worklog: Log time against Jira issues
- Bulk Create: Create multiple worklogs in a single operation
- Edit Worklog: Modify time spent, dates, and descriptions
- Delete Worklog: Remove existing worklogs
System Requirements
- Node.js 18+ (LTS recommended)
- Jira Cloud instance
- Tempo API token
- Jira API token
Usage Options
There are two main ways to use this MCP server:
- NPX (Recommended for most users): Run directly without installation
- Local Clone: Clone the repository for development or customization
Option 1: NPX Usage
The easiest way to use this server is via npx without installation:
Connecting to Claude Desktop (NPX Method)
-
Open your MCP client configuration file:
- Claude Desktop (macOS):
~/Library/Application Support/Claude/claude_desktop_config.json - Claude Desktop (Windows):
%APPDATA%\Claude\claude_desktop_config.json
- Claude Desktop (macOS):
-
Add the following configuration:
{
"mcpServers": {
"Jira_Tempo": {
"command": "npx",
"args": ["-y", "@ivelin-web/tempo-mcp-server"],
"env": {
"TEMPO_API_TOKEN": "your_tempo_api_token_here",
"JIRA_API_TOKEN": "your_jira_api_token_here",
"JIRA_EMAIL": "[email protected]",
"JIRA_BASE_URL": "https://your-org.atlassian.net"
}
}
}
}
- Restart your Claude Desktop client
One-Click Install for Cursor
Option 2: Local Repository Clone
Installation
# Clone the repository
git clone https://github.com/ivelin-web/tempo-mcp-server.git
cd tempo-mcp-server
# Install dependencies
npm install
# Build TypeScript files
npm run build
Running Locally
There are two ways to run the server locally:
1. Using the MCP Inspector (for development and debugging)
npm run inspect
2. Using Node directly
You can run the server directly with Node by pointing to the built JavaScript file:
Connecting to Claude Desktop (Local Method)
- Open your MCP client configuration file
- Add the following configuration:
{
"mcpServers": {
"Jira_Tempo": {
"command": "node",
"args": ["/ABSOLUTE/PATH/TO/tempo-mcp-server/build/index.js"],
"env": {
"TEMPO_API_TOKEN": "your_tempo_api_token_here",
"JIRA_API_TOKEN": "your_jira_api_token_here",
"JIRA_EMAIL": "[email protected]",
"JIRA_BASE_URL": "https://your-org.atlassian.net"
}
}
}
}
- Restart your Claude Desktop client
Getting API Tokens
-
Tempo API Token:
- Go to Tempo > Settings > API Integration
- Create a new API token with appropriate permissions
-
Jira API Token:
- Go to Atlassian API tokens
- Create a new API token for your account
Environment Variables
The server requires the following environment variables:
TEMPO_API_TOKEN # Your Tempo API token
JIRA_API_TOKEN # Your Jira API token
JIRA_EMAIL # Your Jira account email (required for basic auth)
JIRA_BASE_URL # Your Jira instance URL (e.g., https://your-org.atlassian.net)
JIRA_AUTH_TYPE # Optional: 'basic' (default) or 'bearer' for OAuth 2.0 tokens
JIRA_TEMPO_ACCOUNT_CUSTOM_FIELD_ID # Optional: Custom field ID for Tempo accounts
You can set these in your environment or provide them in the MCP client configuration.
Authentication Types
The server supports two authentication methods for the Jira API:
Basic Authentication (default)
Uses email and API token. This is the traditional method:
{
"env": {
"JIRA_API_TOKEN": "your_api_token",
"JIRA_EMAIL": "[email protected]",
"JIRA_AUTH_TYPE": "basic"
}
}
Bearer Token Authentication (OAuth 2.0)
For users who want to use OAuth 2.0 scoped tokens for enhanced security:
{
"env": {
"JIRA_API_TOKEN": "your_oauth_access_token",
"JIRA_AUTH_TYPE": "bearer"
}
}
Note: When using bearer auth, JIRA_EMAIL is not required as the user is identified from the token.
Tempo Account Configuration
If your Tempo instance requires worklogs to be linked to accounts, set the custom field ID that contains the account information:
JIRA_TEMPO_ACCOUNT_CUSTOM_FIELD_ID=10234
To find your custom field ID:
- Go to Jira Settings → Issues → Custom Fields
- Find your Tempo account field and note the ID from the URL or field configuration
Available Tools
retrieveWorklogs
Fetches worklogs for the configured user between start and end dates.
Parameters:
- startDate: String (YYYY-MM-DD)
- endDate: String (YYYY-MM-DD)
createWorklog
Creates a new worklog for a specific Jira issue.
Parameters:
- issueKey: String (e.g., "PROJECT-123")
- timeSpentHours: Number (positive)
- date: String (YYYY-MM-DD)
- description: String (optional)
- startTime: String (HH:MM format, optional)
bulkCreateWorklogs
Creates multiple worklogs in a single operation.
Parameters:
- worklogEntries: Array of {
issueKey: String
timeSpentHours: Number
date: String (YYYY-MM-DD)
description: String (optional)
startTime: String (HH:MM format, optional)
}
editWorklog
Modifies an existing worklog.
Parameters:
- worklogId: String
- timeSpentHours: Number (positive)
- description: String (optional)
- date: String (YYYY-MM-DD, optional)
- startTime: String (HH:MM format, optional)
deleteWorklog
Removes an existing worklog.
Parameters:
- worklogId: String
Project Structure
tempo-mcp-server/
├── src/ # Source code
│ ├── config.ts # Configuration management
│ ├── index.ts # MCP server implementation
│ ├── jira.ts # Jira API integration
│ ├── tools.ts # Tool implementations
│ ├── types.ts # TypeScript types and schemas
│ └── utils.ts # Utility functions
├── build/ # Compiled JavaScript (generated)
├── tsconfig.json # TypeScript configuration
└── package.json # Project metadata and scripts
Troubleshooting
If you encounter issues:
- Check that all environment variables are properly set
- Verify your Jira and Tempo API tokens have the correct permissions
- Check the console output for error messages
- Try running with the inspector:
npm run inspect
License
Credits
This server implements the Model Context Protocol specification created by Anthropic.
İlgili Sunucular
MCP Orchestro
Trello for Claude Code: AI-powered task management with 60 MCP tools, visual Kanban board, and intelligent orchestration for product teams and developers
GoHighLevel MCP Server
Integrates with the GoHighLevel API, allowing interaction with its CRM, marketing automation, and business management tools.
MCP Email Verify
Validate email addresses using the AbstractAPI Email Validation API.
Computer Control MCP
Control your computer's mouse, keyboard, and perform OCR using PyAutoGUI and RapidOCR. Works on Windows, with potential support for other platforms.
Browser MCP
Automate your local browser
Rootly
MCP server for the incident management platform Rootly.
DalexorMI
Dalexor MI is an advanced project memory system designed to provide AI coding assistants with **Contextual Persistence**. Unlike standard RAG (Retrieval-Augmented Generation) systems that perform surface-level keyword searches, Dalexor MI maps the **logical evolution** of a codebase, tracking how symbols, dependencies, and architectural decisions shift over time.
Humanizer PRO
Humanizer PRO is an MCP server that transforms AI-generated text into natural, human-sounding content. It provides 4 tools: - humanize_text: Rewrite AI text to bypass detectors like GPTZero, Turnitin, Originality.ai, Copyleaks, and ZeroGPT. Three modes: Stealth (highest bypass rate), Academic (Turnitin-optimized), SEO (marketing content). - scan_ai_detection: Analyze text for AI patterns. Returns AI probability score, human-likeness percentage, and verdict. - check_word_balance: Check remaining word credits and subscription plan details. - get_subscription_plans: Browse plans - Free (500 words), Starter ($9.99/mo, 30K words), Creator ($14.99/mo, 100K words), Pro Annual ($119.88/yr, 100K words/mo). Authentication: OAuth 2.0. Works with ChatGPT, Claude, Cursor, and all MCP-compatible clients.
Umami MCP Server
Integrate Umami Analytics with any MCP client like Claude Desktop, VS Code, and more.
Jira MCP Server
A server for integrating Jira with Claude, enabling project and issue management. Requires configuration via environment variables.
