
Tempo Filler MCP Server
OfficialConnects AI assistants to Tempo time tracking in JIRA for viewing, creating, and managing worklogs with visual calendar and timesheet interfaces.
A Model Context Protocol server enabling AI assistants to interact with Tempo's time tracking system in JIRA for worklog retrieval, creation, and management.
What it does
- Retrieve worklogs from Tempo time tracking
- Create new time entries in JIRA projects
- Perform bulk worklog operations
- View work schedules in calendar format
- Display timesheet grids with coverage tracking
- Manage time tracking data through conversational interface
Best for
About Tempo Filler MCP Server
Tempo Filler MCP Server is an official MCP server published by TRANZACT that provides AI assistants with tools and capabilities via the Model Context Protocol. Tempo Filler MCP Server: let AI assistants access Tempo for Jira to retrieve, create, and manage Jira worklogs and strea It is categorized under productivity.
How to install
You can install Tempo Filler MCP Server in your AI client of choice. Use the install panel on this page to get one-click setup for Cursor, Claude Desktop, VS Code, and other MCP-compatible clients. This server runs locally on your machine via the stdio transport.
License
Tempo Filler MCP Server is released under the ISC license. This is a permissive open-source license, meaning you can freely use, modify, and distribute the software.
⏰ Tempo Filler MCP Server
A Model Context Protocol (MCP) server for managing Tempo worklogs in JIRA. This server enables AI assistants to interact with Tempo's time tracking system, allowing for worklog retrieval, creation, bulk operations, and management.
🖼️ Visual UI with MCP Apps
TempoFiller now supports MCP Apps - rendering rich visual interfaces directly in compatible AI chat clients like Claude Desktop. Instead of just text responses, you get interactive calendar and timesheet views!
Timesheet Grid View
Ask for your logged hours and see them in a familiar Tempo-style pivot table:

Features:
- Issues as rows, time periods as columns
- Coverage-aware coloring (green = full, yellow = under, red = gap)
- Zoom toggle: Days / Weeks / Months
- Total row with logged/required hours comparison
Schedule Calendar View
Check your work schedule with a visual calendar:

Features:
- Month grid with working days (green) and non-working days (gray)
- Shows required hours per day
- Holiday and weekend awareness
- Summary with total working days and required hours
Note: Visual UIs render in MCP Apps-compatible hosts (Claude Desktop, VS Code). CLI hosts receive the same structured data, which the AI formats conversationally.
🚀 Quick Start
Install in VS Code
Install in Claude Desktop
- Click the button above to download the desktop extension (
.dxtfile) - Open Claude Desktop and go to Settings → Extensions
- Drag the downloaded
.dxtfile into the extensions panel to install- If dragging doesn't work: Click Advanced Settings → Install Extension and select the downloaded file
- Fill in the Tempo Base URL and PAT in the environment variables section
- Don't forget to enable it!
Install Manually on your favorite AI Assistant
{
"mcpServers": {
"tempo-filler": {
"command": "npx",
"args": ["@tranzact/tempo-filler-mcp-server"],
"env": {
"TEMPO_BASE_URL": "https://your-jira-instance.com",
"TEMPO_PAT": "your-personal-access-token"
}
}
}
}
💬 Real Usage Example
Here's an actual conversation showing how natural and powerful the interaction can be:
👤 User:
fill my october hours with the same project from september
🤖 AI Assistant:
I'll help you fill your October hours with the same project from September. Let me first check your September worklogs to understand the pattern, then fill October accordingly.
🔧 mcp_tempo-filler-_get_worklogs({
"startDate": "2025-09-01",
"endDate": "2025-09-30"
})
Perfect! I can see you worked on PROJ-1234 (Tempo MCP Server) for 200 hours in September. Now let me get your October work schedule to see which days need to be filled.
🔧 mcp_tempo-filler-_get_schedule({
"startDate": "2025-10-01",
"endDate": "2025-10-31"
})
Excellent! I now have all the information needed. Let me fill all 23 working days in October with the Tempo MCP Server project using 8 hours per working day.
🔧 mcp_tempo-filler-_bulk_post_worklogs({
"billable": true,
"worklogs": [
{"issueKey": "PROJ-1234", "hours": 8, "date": "2025-10-01", "description": "Tempo MCP Server development"},
{"issueKey": "PROJ-1234", "hours": 8, "date": "2025-10-02", "description": "Tempo MCP Server development"},
// ... 21 more entries for all working days
]
})
✅ October Hours Filled Successfully
- Project: PROJ-1234 (Tempo MCP Server)
- Total Hours: 184 hours across 23 working days
- Hours per Day: 8 hours (matching your standard work schedule)
- Status: All entries created successfully with no failures
Tool Calls Made:
get_worklogs- Retrieved September pattern (PROJ-1234, 200h)get_schedule- Found 23 working days in October (184h capacity)bulk_post_worklogs- Created 23 entries in one operationYour October timesheet is now complete and matches the same project pattern you used in September!
🎯 What Happened Here:
- 3 Tool Calls:
get_worklogs→get_schedule→bulk_post_worklogs - Smart Pattern Recognition: Automatically identified PROJ-1234 from September data
- Schedule Awareness: Only filled working days, skipped weekends automatically
- Bulk Operations: Created 23 worklog entries in a single API call
- Error-Free Execution: 100% success rate with proper validation
- Natural Language: No need to remember issue keys, dates, or tool syntax
⏱️ Time Saved: This single natural language request triggered 3 MCP tool calls and replaced hours of manual timesheet entry!
🛠️ How This Was Built
This MCP server was built in just 3 hours using AI-powered development tools, demonstrating the power of modern AI-assisted coding:
Development Timeline
-
Specification Phase
- Created the complete technical specification using GitHub Copilot with Claude Sonnet 4
- Defined all API endpoints, data structures, and tool interfaces
- Refined requirements through iterative conversation
-
Implementation Phase
- Used VS Code with Claude Code to one-shot the entire implementation
- Generated complete TypeScript codebase, tool implementations, and client logic
- Implemented all core functionality in a single AI-assisted session
-
Refinement Phase
- Switched back to GitHub Copilot with Claude Sonnet 4 after hitting usage limits in Claude Code
- Fixed API payload formatting and authentication issues
- Debugged and polished the Tempo API integration
Key Success Factors
- Clear specification first: Having a detailed spec enabled effective one-shot implementation
- AI tool synergy: Different AI tools excelled at different phases of development
- Iterative refinement: Quick feedback loops with AI assistants for debugging
This project showcases how AI-powered development can dramatically accelerate the creation of robust, production-ready tools.
✨ Features
- Get Worklogs: Retrieve worklogs for users with date range and issue filtering
- Create Worklogs: Add single worklog entries with automatic issue resolution
- Bulk Operations: Create multiple worklog entries efficiently using concurrent processing
- Delete Worklogs: Remove existing worklog entries
- Get Schedule: Retrieve work schedule with working/non-working day information
- Visual UIs: Rich calendar and timesheet grid views via MCP Apps
- Resource Access: Browse worklog data and recent issues
- Prompt Templates: Generate analysis prompts for worklog data
📦 Installation
Prerequisites
- Node.js (version 18 or higher)
- A JIRA instance with Tempo Timesheets plugin installed
- Personal Access Token for your JIRA account
NPX (Recommended)
The easiest way to use the server is with npx - no installation required:
npx @tranzact/tempo-filler-mcp-server
Just configure your AI assistant to use npx @tranzact/tempo-filler-mcp-server as the command.
Development Setup (Source)
For development or customization:
-
Clone the repository:
git clone https://github.com/TRANZACT/tempo-filler-mcp-server cd TempoFiller -
Install dependencies and build:
npm install && npm run build
⚙️ Configuration
The server requires environment variables for authentication and configuration:
Required Environment Variables
TEMPO_BASE_URL: Your JIRA instance URL (e.g.,https://jira.company.com)TEMPO_PAT: Personal Access Token for authentication
Optional Environment Variables
TEMPO_DEFAULT_HOURS: Default hours per workday (default: 8)
Creating a Personal Access Token (PAT)
- Log into your JIRA instance
- Go to Profile → Personal Access Tokens
- Click Create token
- Give it a name (e.g., "Tempo MCP Server")
- Set appropriate permissions (read/write access to issues and worklogs)
- Copy the token value for use in
TEMPO_PAT
🛠️ Available Tools
1. get_worklogs - Retrieve Time Logs
Retrieve worklogs for a date range with optional filtering. In MCP Apps-compatible hosts, displays an interactive timesheet grid.
README truncated. View full README on GitHub.
Alternatives
Related Skills
Browse all skillsHelps write rap lyrics with proper rhythm, flow, cadences, and structure. Teaches musical fundamentals (bars, beats, tempo, BPM) and lyric formatting. Use when writing rap lyrics, creating verses, understanding flow, structuring bars, improving cadence, learning rhythm patterns, or formatting rap lyrics.
Creates and manages ephemeral Neon databases for testing, CI/CD pipelines, and isolated development environments. Use when building temporary databases for automated tests or rapid prototyping.
Design durable workflows with Temporal for distributed systems. Covers workflow vs activity separation, saga patterns, state management, and determinism constraints. Use when building long-running processes, distributed transactions, or microservice orchestration.
Process and generate multimedia content using Google Gemini API. Capabilities include analyze audio files (transcription with timestamps, summarization, speech understanding, music/sound analysis up to 9.5 hours), understand images (captioning, object detection, OCR, visual Q&A, segmentation), process videos (scene detection, Q&A, temporal analysis, YouTube URLs, up to 6 hours), extract from documents (PDF tables, forms, charts, diagrams, multi-page), generate images (text-to-image, editing, composition, refinement). Use when working with audio/video files, analyzing images or screenshots, processing PDF documents, extracting structured data from media, creating images from text prompts, or implementing multimodal AI features. Supports multiple models (Gemini 2.5/2.0) with context windows up to 2M tokens.
Test Temporal workflows with pytest, time-skipping, and mocking strategies. Covers unit testing, integration testing, replay testing, and local development setup. Use when implementing Temporal workflow tests or debugging test failures.
Fill PDF forms programmatically with text values and checkboxes. Use when you need to populate fillable PDF forms (government forms, applications, surveys, etc.) with data. Supports setting text fields and checkboxes with proper appearance states for visual rendering.