MCP server for managing Tempo worklogs in Jira
Tempo MCP server is a locally run integration for AI assistants that speak the Model Context Protocol. MCP server for managing Tempo worklogs in Jira.
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.
Once Tempo is connected, these are the calls the assistant has available:
Prerequisites — The Prerequisites tool exposed by this serverTroubleshooting — The Troubleshooting tool exposed by this serverInstallation — The Installation tool exposed by this serverretrieveWorklogs — Fetches worklogs for the configured user (or other users via filters) between start and end datescreateWorklog — The createWorklog tool exposed by this serverbulkCreateWorklogs — The bulkCreateWorklogs tool exposed by this servereditWorklog — The editWorklog tool exposed by this serverdeleteWorklog — The deleteWorklog tool exposed by this servergetMissingWorklogDays — Reports working days in a date range where the user has logged less time than expected. Expected hours per day come from the user's Tempo schedulegetWorklogAnalytics — Aggregates worklogs in a date range and returns hours, worklog count, and percentage per group, sorted by hours descending. Combine groupBy: "user"The server ships on npm as wrangler, so your MCP client can launch it on demand — there is no separate build step. Add the server block to your client's configuration, restart it, and the tools register themselves.
You will need 8 environment variables: TEMPO_API_TOKEN, JIRA_API_TOKEN, JIRA_EMAIL, JIRA_BASE_URL, JIRA_AUTH_TYPE, JIRA_OAUTH_CLIENT_ID, JIRA_OAUTH_CLIENT_SECRET, ENCRYPTION_KEY. The server will not start without them, which is usually why the tools fail to appear on a first run. Keep credentials in your client's env block or a secrets manager rather than in a file you might commit.
npm locally — only used for wrangler CLI; the Worker runtime itself doesn't run Node.Plenty of planning and project tracking servers cover similar ground. The differences that matter in practice are scope of access and how much setup stands between you and a working tool call. Tempo's toolset — Prerequisites, Troubleshooting, Installation and 7 more — is a fair guide to whether it matches your workflow. It is maintained by ivelin-web; worth a glance at recent repository activity before you build anything load-bearing on it.
We check each listing at SyncDev against the project's documentation before it goes live — if something here drifts out of date, it is a bug worth reporting.
| Tool | What it does |
|---|---|
| Prerequisites | The Prerequisites tool exposed by this server. |
| Troubleshooting | The Troubleshooting tool exposed by this server. |
| Installation | The Installation tool exposed by this server. |
| retrieveWorklogs | Fetches worklogs for the configured user (or other users via filters) between start and end dates. |
| createWorklog | The createWorklog tool exposed by this server. |
| bulkCreateWorklogs | The bulkCreateWorklogs tool exposed by this server. |
| editWorklog | The editWorklog tool exposed by this server. |
| deleteWorklog | The deleteWorklog tool exposed by this server. |
| getMissingWorklogDays | Reports working days in a date range where the user has logged less time than expected. Expected hours per day come from the user's Tempo schedule, so holidays, non-working days, and part-time schedules are honoured auto |
| getWorklogAnalytics | Aggregates worklogs in a date range and returns hours, worklog count, and percentage per group, sorted by hours descending. Combine groupBy: "user" with program / team / users for a per-person report. |
{
"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": "your_email@example.com",
"JIRA_BASE_URL": "https://your-org.atlassian.net"
}
}
}
}Configuration as documented by the project. Restart the client after saving.
npm locally — only used for wrangler CLI; the Worker runtime itself doesn't run Node.| Variable | Description | Required |
|---|---|---|
| TEMPO_API_TOKEN | Credential the server authenticates with. | Yes |
| JIRA_API_TOKEN | Credential the server authenticates with. | Yes |
| JIRA_EMAIL | Configuration value read at startup. | Optional |
| JIRA_BASE_URL | Endpoint or connection string the server talks to. | Yes |
| JIRA_AUTH_TYPE | Configuration value read at startup. | Optional |
| JIRA_OAUTH_CLIENT_ID | Configuration value read at startup. | Optional |
| JIRA_OAUTH_CLIENT_SECRET | Credential the server authenticates with. | Yes |
| ENCRYPTION_KEY | Credential the server authenticates with. | Yes |
Your workspace, on speaking terms with AI — search, read and write Notion pages and databases.
Issue tracking at the speed of conversation — Linear's official hosted server with OAuth and zero install.
Search and read your Drive — Docs, Sheets and files become context your assistant can actually use.
Your assistant inside the workspace — read channels, search history, post messages and tame the noise.
Metabase ships its own MCP endpoint — search your BI content, build and run queries, and save questions and dashboards without leaving the chat.
Stop letting your assistant hallucinate n8n node parameters — this server hands it the real schemas, templates and validation.