MCP App Store
by KeenEthics

Overview

Connect your TimeLodge account to start, pause, resume, and stop your timer; check active work; review weekly timesheets; and add or correct completed time entries. Interactive timer and timesheet panels let you control your timer, browse weekly totals, and edit eligible entries directly in ChatGPT. Authorized users can manage clients and projects, find billable work, prepare draft invoices, and send invoices after confirming the recipient and contents. Access follows your existing workspace permissions and subscription. One active timer is supported per person across workspaces.

Tools

create_client

ChatGPT
Create a client in the workspace using its existing business rules. Monetary inputs use major currency units. Supply billing contacts with exactly one default recipient.

create_draft_invoice

ChatGPT
Create an editable draft invoice from explicitly selected approved time, expenses, materials, remaining project fixed fees, or manual lines. Use list_invoice_work to discover source IDs. Manual unit prices and discount are decimal strings in major currency units. Selected work is reserved against duplicate billing; the draft is not issued or emailed. Returns a review and readiness checklist. Edit existing drafts in TimeLodge.

create_project

ChatGPT
Create a project in the workspace using its existing business rules. Monetary inputs use major currency units. Supply a client, name, and unique code. The caller is assigned by default. Assignment changes can notify affected workspace members.

create_time_entry

ChatGPT
Record your own completed work as a manual time entry. Choose project_id and task_id from list_timer_tasks, supply the work date in the workspace timezone, and duration in seconds (up to 24 hours). This does not start a timer. Reuse request_key for identical retries.

get_client

ChatGPT
Read an active client, including its latest version for safe updates. Requires client management permission. Monetary amounts in results use minor currency units.

get_current_timer

ChatGPT
Read your globally active timer, including a paused timer, and its current state_version. The returned workspace_id identifies where subsequent timer actions belong. Only returns timer details from a workspace you can still access. Poll no more than once every five seconds.

get_invoice

ChatGPT
Read invoice line items, issue readiness, delivery status and the exact email preview. Present the recipient, currency, total, dates, line items and email before requesting confirmation to send. The review token becomes invalid when reviewed details change. Does not issue or email an invoice.

get_project

ChatGPT
Read an active project, including its latest version for safe updates. Requires project management permission. Monetary amounts in results use minor currency units.

get_timesheet

ChatGPT
Use this when reviewing your weekly timesheet. Returns completed time entries with state_version for update_time_entry and daily and weekly totals across all pages. Uses the workspace timezone and configured week start; reference_date defaults to today. Running and paused timers are excluded; use get_current_timer for live work. Does not submit or approve time.

list_clients

ChatGPT
Search active clients in a workspace with pagination. Requires client management permission.

list_invoice_work

ChatGPT
Discover billable time, expenses, material usage or remaining project fixed fees for a client, with invoice readiness and source IDs. For fixed_fee_project, pass returned IDs as fixed_project_ids when drafting; available_minor excludes earlier invoices and existing draft claims. Fixed-fee date filters use the project end date, start date or creation date in that order. Choose only ready rows. Returns bounded pages without private costs or source notes; follow has_more even if a page has no available work.

list_invoices

ChatGPT
List workspace invoices with optional client and status filters. Returns bounded pages and amounts in integer minor units. Use get_invoice for line items, readiness and the send preview.

list_projects

ChatGPT
Search active projects in a workspace with pagination. Requires project management permission. Project managers see assigned projects only. To find projects and tasks for tracking time, use list_timer_tasks.

list_time_entries

ChatGPT
List your own time entries for a workspace and inclusive date range. Dates use the workspace timezone. Returns durations, notes, status and state_version for edits, with pagination. Defaults to the past seven days. Use get_current_timer for the live timer.

list_timer_tasks

ChatGPT
Find active projects and available tasks that you can track time against. Search by project, client, or task name; use returned project_id and task_id with start_timer or create_time_entry. Available to ordinary workspace members and returns no private rates.

list_workspaces

ChatGPT
Find the TimeLodge workspaces you can access, including their currency, timezone and project terminology. Call this first and use the selected workspace_id for subsequent tools. Does not change your active workspace.

pause_timer

ChatGPT
Pause your own timer now. Use the timer ID and latest state_version from get_current_timer. If its version changed, fetch and review the current timer before retrying with a new request_key. Reuse request_key only for an identical retry.

resume_timer

ChatGPT
Resume your own timer now. Use the timer ID and latest state_version from get_current_timer. If its version changed, fetch and review the current timer before retrying with a new request_key. Reuse request_key only for an identical retry.

send_invoice

ChatGPT
After explicit user confirmation of the exact get_invoice preview, permanently issue the invoice if it is a draft, lock its billable sources and queue its PDF email to the saved recipient. Requires the unchanged review token and confirmed=true. Issuing is irreversible through this tool. Never infer confirmation from a request to draft or review. Reuse the same request_key and arguments on retry. Pending means queued, not delivered; use get_invoice to check delivery.

start_timer

ChatGPT
Start your timer now for an eligible project and task from list_timer_tasks. Requires a live request; never schedule or automatically replay an unconfirmed start. If any timer is running or paused across your workspaces, inspect get_current_timer and explicitly stop it first. Reuse request_key only to retry this exact request.

stop_timer

ChatGPT
Stop your own timer now. Use the timer ID and latest state_version from get_current_timer. If its version changed, fetch and review the current timer before retrying with a new request_key. Reuse request_key only for an identical retry.

update_client

ChatGPT
Update an active client using the version from its last read. Omitted fields are preserved. Monetary inputs use major currency units. Supplied contacts replace the full contact list and must keep exactly one default recipient.

update_project

ChatGPT
Update an active project using the version from its last read. Omitted fields are preserved. Monetary inputs use major currency units. Supplied assignments replace the full assignment list and can notify affected workspace members.

update_time_entry

ChatGPT
Edit your own stopped, unlocked draft time entry. Read list_time_entries first for its ID and latest state_version. Supply only fields to change; notes may be null to clear them. Project/task changes resolve current effective rates. Stop a running timer before editing. Reuse request_key only for identical retries.

Capabilities

WritesInteractive

Example Prompts

Click any prompt to copy it.

App Stats

24

Tools

3

Prompts

ChatGPT

Platforms

Works with

ChatGPT

Data refreshed daily