add_note
ChatGPTAdd a note about what you're working on. Notes give Rize context to improve time tracking accuracy. This is the primary way to tell Rize what you worked on. Every call creates a timeline note. If you also provide blocks with durations, time entries are created too; matching active entries that overlap a block may be extended and updated. Context only (no entries created): - "Working on the NVIDIA project today" - "Just finished the pitch deck for Acme" - "Switching to internal tooling" Context + time entries (blocks with durations): - "2hrs on NVIDIA pitch deck" → blocks: [{project: "NVIDIA", description: "Pitch deck work", durationMin: 120}] - "30min call with Acme about onboarding" → blocks: [{client: "Acme", description: "Onboarding call", durationMin: 30}] When blocks are provided: defaults to preview mode — shows matched entries for confirmation. Call again with save=true to commit. The tool fetches the user's clients, projects, tasks, existing time entries, app activity, and existing notes for the target date. It detects overlaps between blocks and existing entries.
approve_tag_suggestion
ChatGPTApprove an AI-generated tag suggestion (client, project, or task) on a time entry. This assigns the suggested entity to the time entry. Use list_my_time_entries to see tag suggestions with confidence scores on pending entries.
approve_time_entries
ChatGPTApprove pending AI-generated time entry suggestions, making them active entries. Optionally assign client/project/task during approval in a single operation.
create_client
ChatGPTCreate a client (customer/account), or update and reactivate an existing client with the same name. Clients are top-level entities that projects and time entries can be assigned to.
create_contract
ChatGPTCreate a new contract for profitability tracking. Contracts define billing arrangements (hourly, retainer, fixed fee) with clients. Automatically creates the first contract period. Use get_current_user to get org_id. Pass client_name or org_client_id to link a client.
create_expense
ChatGPTAdd an expense to a contract period. Expenses can be pass-through, delivery, or overhead. Categories: ad_spend, vendor, freelancer, software, other. Get the contract_period_id from get_contract. Metrics recompute automatically after adding.
create_keyword
ChatGPTCreate a new keyword (auto-tagging rule). Keywords auto-tag time entries when the keyword text matches in window titles, URLs, or app names. Each keyword maps to a client, project, or task.
create_label
ChatGPTCreate a label for categorizing time entries. Requires team admin role. Auto-apply is on by default; disabled labels remain assignable explicitly.
create_project
ChatGPTCreate a project, or update an existing project with the same name, optionally under a client. Projects organize time entries and can be assigned to time entries directly.
create_revenue_entry
ChatGPTAdd a revenue entry to a contract period. Categories: setup_fee, consulting, upsell, adjustment, other. Get the contract_period_id from get_contract.
create_task
ChatGPTCreate a task, or update an existing task with the same name, optionally under a project or with a due date/reminder. Tasks are the most granular unit of work and can be assigned to team members.
create_time_entry
ChatGPTCreate a time entry with optional client, project, and task assignment. If a matching active entry overlaps the requested range, Rize extends and updates that entry instead. Supports idempotency keys to prevent duplicate entries on retry. Times must be in ISO 8601 format — convert user-local times to their timezone (provided as _user_timezone in responses) before sending.
delete_keyword
ChatGPTDelete (archive) a keyword. The keyword will no longer be used for auto-tagging. Use list_keywords to find the keyword ID first.
delete_label
ChatGPTDelete a label by ID. Requires team admin role. The label is soft-deleted and will no longer appear in label lists.
delete_time_entry
ChatGPTDelete a time entry by ID. Works on entries of any status (active, pending, failed, etc.).
dictate
ChatGPTDEPRECATED: Use add_note instead. This tool now delegates to add_note. Start or log a time entry from natural language. Tags to client, project, and task when available. Also saves a timeline note so Rize can use the context to improve future AI suggestions. When saved blocks overlap matching active entries, those entries may be extended and updated. IMPORTANT: Always provide the blocks parameter. Parse the user's text yourself before calling this tool.
generate_time_entries
ChatGPTGenerate AI time entries for a time range. Analyzes the user's actual activity — apps, websites, meetings — and uses clustering to create multiple entries based on natural activity groups. By default, skips time slots where previous entries were rejected. Rate limited: 15 per minute.
get_ai_effectiveness_stats
ChatGPTGet AI effectiveness metrics for time entry creation and tagging. Shows acceptance rates, tagging coverage, label coverage, AI vs manual breakdown, confidence scores, and trends. Use to assess how well Rize's AI is performing for a team or user.
get_contract
ChatGPTGet a single contract with all its periods and profitability details.
get_contract_profitability
ChatGPTGet profitability metrics for a specific contract in a date range. Returns revenue, costs, margin, hours, budget burn, and period dates. Use list_contracts to find contract IDs. All monetary values are in cents.
get_current_user
ChatGPTGet the authenticated user's profile including name, email, timezone, default team, team memberships (team id, name, role, status), and organization info (id, name, logo, role, finance permission). Call this first to get your org_id and team_id for other tools.
get_dashboard
ChatGPTRead a dashboard's live data with the viewer's permissions: saved Tracked Time totals and groups, Timesheets member/day stats, Personal Productivity metrics, or configured widget data. Use these numbers instead of reconstructing the dashboard with time-entry queries. Dates default to the saved range or this week. Data is returned as Markdown and JSON; respect truncation markers and use provided totals.
get_help
ChatGPTGet documentation on how to use Rize MCP tools. Pass a topic to get specific help, or omit for an overview. Topics: time_tracking, profitability, team_management, clients_projects, keywords, skills, reports_routines.
get_login_url
ChatGPTReturns the Rize login URL so the user can authenticate in their browser. No authentication required. Use this when the user needs to log in or connect their Rize account.
get_member_agent_settings
ChatGPTGet another workspace member's agent settings: their personal guidance, tagging instructions, and activity summary instructions. Admins only (org admins, plus admins of an active team the member belongs to) — returns not-found otherwise. Find identity ids via list_workspace_members. For your OWN settings use get_tagging_settings.
get_my_time_allocation
ChatGPTGet the current user's own time allocation summary. By default returns the full view — breakdowns by client, project, task, AND label — plus totals and billable hours. Pass group_by to fetch a single breakdown, including title. For team-wide allocation (admin only), use get_team_time_allocation instead.
get_my_time_tracking_signals
ChatGPTGet your recent time tracking signals — the individual AI actions and user feedback events that make up your time tracking history. Returns events like entry accepts/rejects, tag suggestions, label changes, and manual edits with full metadata (reasoning, confidence, tag_type, before/after values). Use alongside get_ai_effectiveness_stats to drill into the 'why' behind aggregate metrics.
get_org_profitability
ChatGPTGet aggregated profitability metrics across all non-archived contracts for an organization in a date range. Returns revenue, costs, margin, and hours. For per-contract detail use get_contract_profitability. All monetary values are in cents.
get_product_docs
ChatGPTGet documentation about the Rize product itself: what Rize can do, which integrations are supported, and where to find help articles. Use this to answer questions about Rize features, integrations, platforms, or setup — never guess. Pass a query to search the documentation and get the matching sections back as the docs' own prose, each with a deep link — prefer this over the static topics when the question is about a specific feature, and quote the returned steps rather than paraphrasing them. Colloquial wording works: the search widens common phrasings ("clip", "overlay", "that bar") to the product's own vocabulary. Use topic "support" whenever the docs don't cover the question, the user hit a bug, or they want to request a feature — it returns where to reach a human instead of guessing. Topics: overview, integrations, docs_index, support.
get_profitability_trend
ChatGPTGet monthly revenue, cost, and expense totals for a date range. Returns one data point per month across all non-archived contracts. Useful for spotting trends and comparing periods. All monetary values are in cents.
get_report_run
ChatGPTGet a single report run by ID, including the parent report metadata and all AI analyses with summaries and insights.
get_routine_run
ChatGPTGet a single routine run by ID, including the parent routine metadata and all briefs the run produced with their markdown bodies.
get_skill
ChatGPTGet one reusable prompt skill by ID. Use this when the user references a skill chip or a rize://skill/:id link.
get_tagging_settings
ChatGPTGet the current user's auto-tagging settings: generation mode, entry duration preferences, auto-approve threshold, which tag dimensions are automated, the custom instructions for tagging and activity summaries, and the agent guidance layered onto their runs (personal, plus their default team/workspace guidance). Read-only — use update_tagging_settings to change your own settings. Admins: manage other members via get/update_member_agent_settings, teams via update_team_agent_context, and the workspace via update_workspace_agent_context.
get_team_time_allocation
ChatGPTGet time allocation summary across all team members (team admin only). Returns total hours, billable hours, and breakdown by grouping, including workspace member title. Use creator_emails or member_titles to filter to specific people. Filter by sources to split manual (user) vs AI time. Non-admins will only see their own allocation.
get_time_entry
ChatGPTGet a single time entry by ID with all details including client, project, task, billing info, and AI confidence data.
get_ui_map
ChatGPTFind where a control actually lives in Rize: the desktop menu bar, the Desktop Widget menu, and the app's settings panes, each as a full click path like "Widget > Show on Desktop". Use this whenever the user asks where a setting is, how to turn something on or off, or how to reach a screen — the paths come from the shipping navigation, so quote them exactly and never invent a screen that is not listed. An entry marked with an access note is only there for users who have that grant, so say so rather than sending everyone to it. Pair it with get_product_docs, which explains what a setting does; this tool says where to click. Pass a query to search, or omit it for the full map.
get_workspace_time_allocation
ChatGPTGet time allocation across every team and person in the workspace in one call (workspace admins only; pass workspace_id from get_current_user org.id). Supports member and title grouping plus per-day buckets — ideal for workspace reports and timesheet compliance (compact member×day summaries). Day buckets use the caller's timezone. Returns total hours, billable hours, and breakdown by grouping. Filter by sources to split manual (user) vs AI time. With group_by 'member' and no client/project/task/label filter, every accepted workspace member is returned — members with no entries matching the requested statuses (default: active) appear with total_duration_seconds 0 and no date, historical groups may also include deactivated or removed members. For accepted-member headcounts, paginate list_workspace_members to completion, filter status to accepted and apply the same team/title/creator filters, then match distinct identity_id values to group id. Preserve historical allocation totals.
invite_team_member
ChatGPTInvite a new member to a team by email. Sends an invitation email. Requires team admin or org admin permissions. Title is stored on the workspace member, so setting it requires org admin access. Naturally idempotent — re-inviting an existing member returns the existing record.
invite_team_members
ChatGPTInvite up to 25 people to one team in a single call. New members get an invitation email; people already on the team get no new email. Acceptance links are delivered only to the invitee by email, not returned to the inviter. Each result has requested_email (the address passed in) and, on success, the member record. Same permissions as invite_team_member. One failed invite does not stop the rest; check each result's error.
invite_workspace_member
ChatGPTInvite a member to a workspace (organization) without adding them to a team. Sends an invitation email. Requires workspace admin; Rize employees may target any workspace via organization_id.
list_clients
ChatGPTList clients (customers/accounts) with their hourly rates and team associations. Use client IDs when creating or updating time entries.
list_contracts
ChatGPTList contracts for an organization. Contracts track billing arrangements with clients including hourly rates, retainers, and profitability metrics. Archived contracts are excluded by default — pass status to filter. Use contract IDs with get_contract_profitability.
list_dashboards
ChatGPTList the dashboards the current user can see in a workspace, pinned first, with cursor pagination. Pass a renderable dashboard's id to get_dashboard to read its live data, including saved Tracked Time views, Timesheets, Personal Productivity, and widget boards.
list_keywords
ChatGPTList active keywords (auto-tagging rules) for the current user. Keywords map text patterns to clients, projects, or tasks — when a keyword appears in a window title, URL, or app name, the time entry is auto-tagged to the parent entity. Must specify tag_type to scope the query.
list_labels
ChatGPTList labels available for tagging time entries. Labels with Auto-apply off remain assignable explicitly; use label IDs when updating time entries.
list_my_apps_used
ChatGPTList the authenticated user's own apps and websites used in a date range, sorted by time spent. Returns app name, URL, time spent, and category.
list_my_calendar_events
ChatGPTList calendar events (meetings, appointments) for a single day from the user's connected calendars. Returns title, start/end times, attendees, location, and video conference link per event. For raw tracked activity (app switches, website visits) use list_my_events instead.
list_my_events
ChatGPTList raw tracking events (app switches, website visits) for the authenticated user in a date range. Max 7-day range. Returns app name, URL, URL host, title, source, and timestamps. Use list_my_apps_used for aggregated summaries instead.
list_my_keyword_matches
ChatGPTList deterministic keyword-rule matches over the user's tracked time in a date range. Each match is a time window where a keyword rule fired, naming the client/project/task/label it points at. Use these as ground truth when tagging or creating time entries — a keyword match covering an entry's time range is strong evidence for that tag.
list_my_time_entries
ChatGPTList the current user's own time entries for a date range. For team-wide entries (admin only), use list_team_time_entries instead. Returns all statuses by default (tracking, segmenting, active, pending, generating, failed); rejected entries are never returned, so you can see live tracked and unprocessed time as well as reviewable suggestions. Sorted by start time with client/project/task details and formatted durations.
list_projects
ChatGPTList projects with their client associations and team info. Use project IDs when creating or updating time entries.
list_report_runs
ChatGPTList report runs for the current user's reports. Returns runs ordered by most recent first, with nested report metadata and AI analyses. Filter by report ID or status (pending, running, ready, failed).
list_routine_runs
ChatGPTList routine runs for the current user. Returns runs ordered by most recent first, with nested routine metadata and the briefs each run produced. Filter by routine ID or status (pending, running, ready, failed).
list_skills
ChatGPTList the reusable prompt skills visible to the authenticated user.
list_tasks
ChatGPTList tasks with their project and assignee associations. Use task IDs when creating or updating time entries.
list_team_members
ChatGPTList team members with their workspace-level title and department, team roles, managers, hourly rates, and cost rates. Any team member can list: org and team admins and viewers see the whole roster, managers see their direct reports plus themselves, members see only themselves. Archived members are never returned. Rates require team admin, org admin, or finance permissions. Cost rates affect profitability calculations (delivery_labor_cost_cents).
list_team_time_entries
ChatGPTList time entries across all team members (team admin only). Returns entries for the entire team by default. Use creator_emails to filter to specific people. Non-admins will only see their own entries. Sorted by start time.
list_teams
ChatGPTList the teams the authenticated user can access — org admins see every team in their orgs. The user's default team is returned first. Use this to obtain a team_id for other tools (time entries, allocations, team members). Each team includes agent_context (the standing guidance applied to its members' agent runs) when the caller can edit it — team admins and org admins; null otherwise.
list_workspace_members
ChatGPTList the workspace (organization) roster with workspace titles, departments, and per-team assignments. Visibility depends on your role: workspace admins see everyone, team admins and viewers see their teams, managers see their direct reports, plain members see an empty roster. Rates are only returned for workspace admins and finance grantees. Get workspace_id from get_current_user (org.id).
query_org_context
ChatGPTSearch an organization's uploaded context documents (contracts, invoices, PDFs, etc.) using semantic retrieval. Returns the most relevant text chunks with source file names and relevance scores. Use this when the user asks about org-specific documents or context they have uploaded.
regenerate_time_entry
ChatGPTRegenerate AI content for a pending or failed time entry. Useful when generation failed or you want a better title/description. Optionally provide custom instructions to guide the AI. Rate limited: max 3 regenerations per entry, 15 per minute.
reject_time_entries
ChatGPTReject pending AI-generated time entry suggestions. Rejected entries are kept but hidden from active views.
remove_team_member
ChatGPTRemove a member from a team. The membership is archived, not deleted — historical time entries are kept and re-inviting the person restores it. Requires team admin or org admin permissions. Use list_team_members to find team_member_id values.
search_my_meetings
ChatGPTSearch the current user's calendar events and meeting transcripts over a date range. Use this for what was scheduled, who attended, what was discussed, or finding the recording behind a meeting.
sign_up
ChatGPTCreate a new Rize account via magic link. Sends a sign-in link to the user's email. After clicking the link, the user should download the Rize desktop app to start tracking time automatically.
update_client
ChatGPTUpdate an existing client's name, hourly rate, color, status, keywords (for auto-tagging keyword matching), or prompt (AI context for tagging).
update_contract
ChatGPTUpdate a contract's billing details. Changes to rate fields are synced to the current period.
update_keyword
ChatGPTUpdate an existing keyword's text, match type, or field. Use list_keywords to find the keyword ID first.
update_label
ChatGPTUpdate a label's name, description, prompt, color, status, or Auto-apply setting. Requires team admin role. Disabled labels remain assignable explicitly.
update_member_agent_settings
ChatGPTUpdate another workspace member's agent settings: their personal guidance, tagging instructions, and/or activity summary instructions. Admins only (org admins, plus admins of an active team the member belongs to). Omitted fields are left unchanged; pass an empty string to clear one. Read current values first with get_member_agent_settings. For your OWN settings use update_tagging_settings.
update_project
ChatGPTUpdate an existing project's name, client, color, status, keywords (for auto-tagging keyword matching), or prompt (AI context for tagging).
update_tagging_settings
ChatGPTUpdate your AI tagging settings: tracking mode, minimum entry duration, auto-approve threshold, and custom instructions for how the AI should tag your time entries and generate activity summaries. Which tag dimensions are automated is user-managed and not changeable here. Use get_tagging_settings to read current values first.
update_task
ChatGPTUpdate an existing task's name, project, assignee, color, status, or keywords (for auto-tagging keyword matching).
update_team_agent_context
ChatGPTSet a team's standing agent guidance — injected into every team member's agent runs (chat, reports, routines, tagging). Team admins and org admins only. Read current values via list_teams. May embed skills as markdown links like [Name](rize://skill/ID); only team- or workspace-visible skills are accepted. Pass an empty string to clear.
update_team_member
ChatGPTUpdate a team member's team role, manager, hourly rate, cost rate, billable default, or workspace-level title. Team fields require team admin or org admin permissions. Title updates require self or org admin access. Use list_team_members to find team_member_id values.
update_time_entry
ChatGPTUpdate an existing time entry. Supports changing times, title, description, billing, label, and entity reassignment (client, project, task). Changing team_id clears entity assignments.
update_workspace_agent_context
ChatGPTSet the workspace's standing agent guidance — injected into every member's agent runs (chat, reports, routines, tagging). Workspace admins only. Read the current value via get_tagging_settings (org_agent_context). May embed skills as markdown links like [Name](rize://skill/ID); only workspace-visible skills are accepted. Pass an empty string to clear.