MCP App Store

Overview

Double manages the month-end close. It replaces spreadsheets and scattered checklists with a single system connected to your GL or ERP: tasks, team assignments, and close status all in one place. Connect it to ChatGPT and you can act on your close without switching apps. Create and reassign tasks, turn meeting notes into action items, and draft status updates for your team or clients, with changes writing back to Double in real time. You control what ChatGPT can read or update in your account. Works with QuickBooks, Xero, NetSuite, and Sage Intacct. Built for bookkeepers, accountants, and finance teams running the month-end close.

Tools

add_task_comment

ChatGPT
Add a comment to a task. Works for both closing, firm and custom tasks. Use this to leave notes, ask questions, or communicate about task progress.

add_timer

ChatGPT
Create a new time tracking entry. Supports creating timers for specific clients or as firm-level entries. You can specify a workstream by ID or name, and optionally create timers on behalf of other users. If no endTime is provided, the timer is created as an active/running timer.

create_closing_task

ChatGPT
Create a new task within a monthly close period (EndClose). Closing tasks are part of the month-end bookkeeping workflow for a client. Requires an endCloseId — get this from list_tasks results on existing closing tasks for the same client/month. Use "custom" for ad-hoc tasks in the Additional Items section, or "preCheck" for pre-close tasks. Tasks in Account Reconciliation, Transaction Review, Payee/Entity Review, Final Review, Accruals, and Allocations sections are managed by the system and cannot be created through this tool. For tasks not tied to a monthly close, use create_custom_task instead.

create_custom_task

ChatGPT
Create a custom task that is NOT part of a monthly close. Use this for ad-hoc to-dos, reminders, or any work item tied to a specific client. These tasks appear in the "Custom tasks" section. For practice-level tasks not tied to a client, use create_firm_task. For tasks that are part of month-end bookkeeping (reconciliations, transaction reviews, etc.), use create_closing_task instead.

create_firm_task

ChatGPT
Create a practice-level firm task not tied to any specific client. Use this for internal to-dos, reminders, or work items that apply to the whole practice. These tasks appear in the "Firm tasks" section. For client-specific tasks, use create_custom_task instead. For monthly close tasks, use create_closing_task.

get_client

ChatGPT
Get full details for a single client by ID. Returns accounting platform, settings, and configuration.

get_end_close

ChatGPT
Get full details for a single monthly close period by ID. Returns status, assignees, due date, and other metadata.

get_task

ChatGPT
Get full details for a single task by ID. You must specify the correct kind based on the task category: use kind="closing" for tasks with category "closing" (monthly close tasks tied to an endCloseId), use kind="custom" for tasks with category "nonclosing" or "firm" (custom tasks). The category is available in list_tasks results.

get_user

ChatGPT
Get full details for a single user by ID. Returns name, email, role, and profile information.

list_clients

ChatGPT
List clients in the current practice. Returns a paginated list with basic information including name, accounting platform, and archive status.

list_end_closes

ChatGPT
List monthly close periods. Optionally filter by client. Returns a paginated list with status and assignees.

list_sections

ChatGPT
List all valid task sections where tasks can be manually created. Returns both built-in default sections and custom sections created by the practice. Excludes system-managed sections (Account Reconciliation, Transaction Review, Payee/Entity Review, Final Review, Accruals, Allocations) where tasks cannot be created directly. Categories include: "closing" (monthly close sections), "nonclosing" (ongoing/custom task sections), "firm" (firm-level sections), and "tax" (tax-related sections).

list_tasks

ChatGPT
List and filter tasks across all categories (closing, non-closing, and firm tasks). Returns a paginated table of tasks for the current practice. Use category field in results to determine task kind: "closing" tasks belong to a monthly close (use closing task tools), "nonclosing" and "firm" tasks are custom tasks (use custom task tools). Supports filtering by client, assignee, status, and due date range.

list_timers

ChatGPT
Retrieve time tracking entries with optional filters for user, client, workstream, and date range. Returns paginated results. Access is role-based: standard users only see their own timers, managers see timers for their assigned clients, and admins see all practice timers.

list_users

ChatGPT
List users in the current practice. Returns a paginated list with name, email, and role for each user.

list_workstreams

ChatGPT
List available workstreams for time tracking. Workstreams categorize timer entries. Each workstream has a type ("client" or "firm") indicating which kind of timer it applies to. Use this to discover valid workstream IDs and names before creating or filtering timers.

ping

ChatGPT
Health check — returns pong

update_closing_task

ChatGPT
Update a closing task (category "closing" in list_tasks). Only use this for tasks that belong to a monthly close period (have an endCloseId). Only provide fields you want to change — omitted fields remain unchanged. To mark a task complete, set status to "done". To change the due date, provide dueDate along with optional dueDateBusinessDayType and dueDateBusinessDayValue for recurring business-day calculations. For custom/firm tasks, use update_custom_task instead.

update_custom_task

ChatGPT
Update a custom task (category "nonclosing" in list_tasks). Use this for client-specific tasks that are NOT part of a monthly close. Only provide fields you want to change — omitted fields remain unchanged. To mark a task complete, set status to "done". For practice-level firm tasks, use update_firm_task. For closing tasks, use update_closing_task.

update_firm_task

ChatGPT
Update a practice-level firm task (category "firm" in list_tasks). Use this for tasks that are NOT tied to any specific client. Only provide fields you want to change — omitted fields remain unchanged. To mark a task complete, set status to "done". For client-specific custom tasks, use update_custom_task. For closing tasks, use update_closing_task.

Capabilities

Writes

App Stats

20

Tools

ChatGPT

Platforms

Works with

ChatGPT

Data refreshed daily