timepiece-mcp
Server Configuration
Describes the environment variables required to run the server.
| Name | Required | Description | Default |
|---|---|---|---|
| TIMEPIECE_TOKEN | Yes | Your personal Timepiece API token. Get it from Jira → Apps → Timepiece → API Settings. | |
| TIMEPIECE_CALENDAR | No | Default calendar ID for business-hours calculations. Without this, durations use a 24h/day UTC clock. | |
| TIMEPIECE_DEFAULT_DAY_LENGTH | No | Either 'businessDays' or 'calendarDays'. | businessDays |
| TIMEPIECE_DEFAULT_VIEW_FORMAT | No | Either 'days', 'hours', 'minutes', or 'seconds'. | days |
Instructions
Guidance the server publishes about itself, which clients place ahead of the tool catalog so the model reads it before choosing anything.
This server publishes no instructions, or was last inspected before Glama recorded them.
Capabilities
Features and capabilities supported by this server
Protocol revision2025-11-25
| Capability | Details |
|---|---|
| tools | {
"listChanged": false
} |
| prompts | {
"listChanged": false
} |
| resources | {
"subscribe": false,
"listChanged": false
} |
| experimental | {} |
Tools
Functions exposed to the LLM to take actions
| Name | Description |
|---|---|
| timepiece_get_issueA | Get time-in-status data for a single Jira issue from Timepiece. Returns how long the issue has spent in each workflow status (e.g. To Do, In Progress, In Review, Done), using a configurable calendar and time unit. Args: params (GetIssueInput): Validated input containing: - issue_key (str): Jira issue key, e.g. 'PROJ-123' - columns_by (str): 'statusDuration' or 'assigneeDuration' (default: statusDuration) - calendar (Optional[str]): Timepiece calendar ID or name - day_length (str): 'businessDays' or 'calendarDays' (default: businessDays) - view_format (str): 'days', 'hours', 'minutes', 'seconds' (default: days) - statuses (Optional[str]): Comma-separated status IDs to filter - response_format (str): 'markdown' or 'json' (default: markdown) Returns: str: Time-in-status data as Markdown table (default) or JSON. Examples: - "How long has PROJ-123 been in each status?" → issue_key='PROJ-123' - "Show PROJ-456 time in status in hours" → issue_key='PROJ-456', view_format='hours' - "Get calendar days for PROJ-789" → day_length='calendarDays' |
| timepiece_get_issue_expandedA | Get expanded time-in-status data including full transition history for a single Jira issue. Returns per-status statistics (total days, visit count, average per visit) plus a chronological list of every status transition with its duration. Args: params (GetIssueExpandedInput): Validated input containing: - issue_key (str): Jira issue key, e.g. 'PROJ-123' - calendar (Optional[str]): Timepiece calendar ID or name - day_length (str): 'businessDays' or 'calendarDays' (default: businessDays) - view_format (str): 'days', 'hours', 'minutes', 'seconds' (default: days) - trim_history_start_date (Optional[str]): Earliest date to include (yyyy-MM-dd) - trim_history_end_date (Optional[str]): Latest date to include (yyyy-MM-dd) - response_format (str): 'markdown' or 'json' (default: markdown) Returns: str: Expanded time-in-status with summary stats and transition history table. |
| timepiece_list_issuesA | List time-in-status data for multiple Jira issues selected by JQL query. Uses the Timepiece list API to fetch time-in-status for all issues matching the JQL filter. Results are presented as a table with one row per issue. Args: params (ListIssuesInput): Validated input containing: - jql (str): JQL query to select issues - columns_by (str): Column grouping (default: statusDuration) - calendar (Optional[str]): Timepiece calendar ID or name - day_length (str): 'businessDays' or 'calendarDays' (default: businessDays) - view_format (str): 'days', 'hours', 'minutes', 'seconds' (default: days) - statuses (Optional[str]): Comma-separated status IDs to filter - page_size (int): Results per page (1-1000, default 100) - response_format (str): 'markdown' or 'json' (default: markdown) Returns: str: Table of issues with time-in-status per status column. |
| timepiece_aggregateA | Aggregate time-in-status statistics across multiple Jira issues. Computes average, median, sum, or standard deviation of time spent in each status across all issues matching the JQL query. Args: params (AggregateInput): Validated input containing: - aggregation_type (str): 'average', 'sum', 'median', or 'standardDeviation' - jql (str): JQL query to select issues - columns_by (str): Column grouping (default: statusDuration) - calendar (Optional[str]): Timepiece calendar ID or name - day_length (str): 'businessDays' or 'calendarDays' (default: businessDays) - view_format (str): 'days', 'hours', 'minutes', 'seconds' (default: days) - statuses (Optional[str]): Comma-separated status IDs to filter - dbs_metrics (Optional[str]): JSON for duration-between-statuses metrics - response_format (str): 'markdown' or 'json' (default: markdown) Returns: str: Aggregated time-in-status statistics as a Markdown table or JSON. |
| timepiece_list_calendarsA | List all available Timepiece calendars. Returns all configured calendars in your Timepiece instance, including their IDs, names, timezones, and working hours settings. Use calendar IDs when querying time-in-status data. Args: params (ListCalendarsInput): Optional response format ('markdown' or 'json'). Returns: str: Table of calendars with ID, name, timezone, working hours, and default flag. |
| timepiece_search_calendarA | Search for Timepiece calendars by name. Useful for finding a calendar's numeric ID when you only know its name, e.g. 'Default Calendar Settings'. Args: params (SearchCalendarInput): Validated input containing: - name (str): Calendar name to search for - search_type (str): 'exact' (default) or 'contain' - max_results (int): Maximum results to return (default 10) - response_format (str): 'markdown' or 'json' (default: markdown) Returns: str: Matching calendars with ID, name, timezone, working hours, and default flag. |
| timepiece_export_syncA | Export time-in-status data for Jira issues to a downloadable file. Generates an XLSX or CSV export of time-in-status data for issues matching the JQL query and saves it to /tmp. Returns the file path and a summary. Args: params (ExportSyncInput): Validated input containing: - jql (str): JQL query to select issues - output_type (str): 'xlsx' or 'csv' - columns_by (str): Column grouping (default: statusDuration) - calendar (Optional[str]): Timepiece calendar ID or name - day_length (str): 'businessDays' or 'calendarDays' (default: businessDays) - view_format (str): 'days', 'hours', 'minutes', 'seconds' (default: days) - statuses (Optional[str]): Comma-separated status IDs to include Returns: str: File path of the exported file and a summary of the export. |
Prompts
Interactive templates invoked by user choice
| Name | Description |
|---|---|
No prompts | |
Resources
Contextual data attached and managed by the client
| Name | Description |
|---|---|
No resources | |
Latest Blog Posts
- Who's Calling? MCP Hosts Are an Identity Blind Spot (And the Spec Knows It)By Om-Shree-0709 on .mcpAgent IdentityOAuth 2.1
- Your AI Chatbot Just Exposed Your CEO's Salary to an InternBy Om-Shree-0709 on .Agent IdentityMCP SecurityOAuth Delegation
- Why MCP Servers Need Execution Sandboxing (And Why Your Current Stack Isn't Enough)By Om-Shree-0709 on .Agentic AiPrompt InjectionWebAssembly
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/gianni1989/timepiece-mcp'
If you have feedback or need assistance with the MCP directory API, please join our Discord server