Connect your account, then chat with AI to run tools.
Productive is a project management platform that helps teams track time, plan tasks, and manage projects effectively. Use it to streamline workflows, allocate resources, and monitor project progress.
Opens MCPBundles Studio with this server selected. After sign-in, chat and run tools from the same thread.
Browse all toolsDomain knowledge for Productive — workflow patterns, data models, and gotchas for your AI agent.
Agency operations platform. Most "missing field" or 403 errors trace back to a missing parent in the resource chain or to the calling person not being on the project team.
Use include= (comma-separated) on reads to sideload related entities in one round trip instead of issuing follow-up fetches.
Requires a workflow id, a project_manager id (the calling person works), and either a company id (billable) or project_type_id=2 (internal). List workflows, people, and companies first to pick valid ids.
Tasks live inside task_list → board → project. A fresh project starts with no boards, so the end-to-end scaffold is project → board → task_list → task with both project_id and task_list_id. workflow_status_id must come from the project's workflow.
Boards and task lists have no direct delete route. Remove them by deleting the parent project, which cascades the whole subtree. To make a board "go away" without losing the project, archive via update instead.
Direct delete is supported on tasks, projects, sections, comments, attachments, services, expenses, pages, bookings, contact entries, deals, and time entries.
Every mutation runs as the Productive person bound to the workspace credential. A 403 on update or delete almost always means that person is not the assignee, project manager, or admin on the parent project — fix by adding them to the project team, not by retrying. Sample-data projects ([SAMPLE] templates a fresh organization ships with) restrict updates to the original creator; for end-to-end automation create a fresh project owned by the calling person.
Deals own line items priced via services + rate cards. Won deals convert to projects; invoice attributions link an invoice line back to its originating deal/project line. Recurring invoices generate on a schedule and payment reminder sequences send the dunning emails.
Workspace-defined per resource type. To write: list custom fields filtered by resource_type, then for dropdowns also list options, then send custom_fields: {<field_id>: <value-or-option-id>} on the resource.
Booking reports and timesheet reports pre-aggregate server-side. Prefer them over rolling up time entries client-side for utilization or planned-vs-actual questions.
Delete an attachment by id (removes both the metadata record and the underlying file).
Delete a booking by id.
Delete a comment by id. Productive enforces author / admin permissions server-side.
Delete a contact entry by id.
Delete a deal by id. Productive soft-deletes deals — recoverable from deleted_items.
Delete an expense by id.
Delete a holiday calendar by id. Returns empty body on success. Removing a calendar can affect capacity calculations for any team referencing it.
Delete a Doc page by id. Children must be moved or deleted first.
Delete (archive) a project by id. Productive soft-deletes projects — the data is recoverable from the deleted_items collection by an admin.
Delete a section by id. Services in the section are unassigned from it but not deleted.
Delete a billing service by id. Services with logged time may be archived rather than removed.
Delete a task by id. Productive soft-deletes tasks — they can be recovered from deleted_items by an admin within the retention window.
Delete a time entry by id. Approved entries may require admin permissions to remove.
Read approval policies — rules controlling who must approve time entries and expenses before they are billable. Omit id to list, pass id to fetch one.
Read attachment metadata records. Omit id to list (each row carries the filename, size, content_type, and the parent entity it belongs to — task_id, c...
Read availability rows — derived per-person per-day free time, after schedules + bookings + time off. Omit id to list, pass id to fetch one.
Read vendor bills (accounts-payable side). Each bill carries vendor company_id, amount, due_on, paid status. Omit id to list, pass id to fetch one.
Read boards (kanban folders) within projects. A board groups task_lists; each project can have several boards (e.g. 'Sprint 1', 'Backlog'). Omit id to...
Read booking group labels — used to bucket related bookings (e.g. a sprint) for reporting. Omit id to list, pass id to fetch one.
Read resource bookings — planned hours of a person against a service across a date range. Omit id to list (sort='-started_on' for newest first; use se...
Read capacity rows — derived booked-vs-available hours per person per day. Used by Productive's resourcing dashboard. Omit id to list, pass id to fetc...
Read comments across the organization. Omit id to list (use server-side filters via filter[task_id], filter[deal_id], filter[invoice_id], etc. to narr...
Read companies (clients and vendors) in your Productive organization. Omit id to list (each row carries name, vat, billing_name, default_currency, and...
Read contact entries — the polymorphic contact rows attached to companies, people, invoices, purchase orders, and subsidiaries. Each row carries email...
Read custom field definitions configured in the organization. Omit id to list (each row carries the parent record_type — task, project, company, deal,...
Read sales deals (and production budgets when budget=true). Omit id to list (each deal carries deal_value, currency, probability, company_id, and deal...
Read the named stages of a sales pipeline (e.g. 'Qualified Lead', 'Proposal Sent', 'Won Deals', 'Lost Deals'). Required to discover the deal_status_id...
Read document styles — branded PDF templates for invoices and proposals. Omit id to list, pass id to fetch one.
Read per-document tax breakdown rows (subtotal × rate per invoice/PO). Omit id to list, pass id to fetch one.
Read document types — invoice numbering schemes (prefix, next number, language). Multiple types let you run separate numbering for proformas, invoices...
Read time-off entitlements (PTO allowances) per person and event type. Used to compute remaining vacation / sick balances. Omit id to list, pass id to...
Read event categories — non-billable booking buckets (e.g. Internal R&D, Holidays, Training). Bookings against an event do not roll up into project bu...
Read FX rates configured in the organization. Productive uses these to convert deal/invoice values into the org's reporting currency. Read-only — Prod...
Read expense category definitions for classifying expenses. Omit id to list, pass id to fetch one.
Read expenses (vendor invoices, receipts, reimbursable costs) tied to deals/projects. Omit id to list (each row carries date, amount, currency, vendor...
Read holiday calendars (one per region/team) used to compute billable capacity and time-off balances. Omit id to list, pass id to fetch one.
Read individual holidays (date entries) attached to holiday calendars. Omit id to list (use sort='date' for chronological order), pass id to fetch one...
Read invoice attribution rows — the breakdown of which services / time entries / expenses an invoice line item was drawn from. Used by Productive's re...
Read invoices issued to clients. Omit id to list (each row carries number, company_id, deal_id, currency, amount, paid_on, due_on, and status — draft,...
Read line items belonging to invoices, purchase orders, and bills. Use server-side filters (filter[invoice_id], filter[purchase_order_id], filter[bill...
Read the configured lost reasons (e.g. 'Price', 'Timing', 'Lost to competitor') used when marking a deal lost. Omit id to list, pass id to fetch one.
Read people-to-organization memberships — the canonical join row between a Person and the workspace. Each membership carries the person's role, hourly...
Read invited / pending organization-level memberships (seats) for your organization. These are admin-level invitations, distinct from project membersh...
Read Productive organizations the calling token can see. The token is normally scoped to a single organization (the one whose ID is sent in the X-Orga...
Read Doc pages — collaborative wiki / handbook pages stored inside Productive. Omit id to list (each page carries title, body — rich text JSON, parent...
Read payment reminder records — individual dunning emails that have been sent or scheduled against unpaid invoices. Omit id to list (each row carries ...
Read payment reminder sequence templates — ordered cadences of dunning emails (e.g. day -7, day 0, day +7, day +14) automatically applied to overdue i...
Read payments recorded against invoices. Each payment carries amount, currency, paid_on date, and the invoice_id it settles. Omit id to list, pass id ...
Read the people (staff) in your Productive organization. Omit id to list (returns first/last name, email, role, and avatar) or pass id to fetch one wi...
Read sales pipelines configured in the organization. Each pipeline groups an ordered set of stages (e.g. Discovery, Proposal, Negotiation, Won, Lost)....
Read rate-card prices configured for clients, services, and people. Used to compute service.price defaults. Omit id to list, pass id to fetch one.
Read per-person project assignments (which people have access to which projects, plus their per-project role). One row per (person, project) pair. Omi...
Read projects (workspaces) in your Productive organization. Omit id to list (returns project name, status, project_type — 1 = client/billable, 2 = int...
Read purchase orders issued to vendors / subcontractors. Omit id to list, pass id to fetch one.
Read rate card definitions — named bundles of per-service / per-role hourly prices applied to deals. Each card carries a name, currency, and the price...
Read recurring cost templates — vendor expenses that auto-generate on a schedule (e.g. SaaS subscriptions). Omit id to list (each row carries cadence,...
Read individual runs of recurring invoice templates. Each run row links a recurring_invoice_id to the invoice_id it generated and the date it was issu...
Read recurring invoice templates — invoices that auto-generate on a schedule. Omit id to list (each row carries cadence, next_run_on, and the deal/com...
Read Productive's pre-aggregated booking report rows — scheduled hours grouped by person, project, or service across a date range. Walk the collection...
Read Productive's pre-aggregated timesheet report rows — tracked vs billable hours grouped by person, project, or service across a date range.
Read resource requests — pending asks from PMs to resourcing for a person of a given skill set across a date range, before they're converted to bookin...
Read salary records for staff. Each salary captures the cost rate used for profitability reporting; one person can have multiple salaries over time. S...
Read people's working schedules — weekly working hours and time-off allowances. Omit id to list, pass id to fetch one.
Read sections — typically used inside deals to group services into headers like 'Discovery' / 'Implementation' / 'Maintenance'. Omit id to list, pass ...
Read billing services — chargeable line items within a deal/budget that time entries are tracked against. Omit id to list (each row carries name, deal...
Read service type templates — reusable definitions of unit, default price, taxability, and tracking style. Used when creating new services. Omit id to...
Read subsidiaries (legal entities) configured in the organization. Subsidiaries appear on invoices as the issuing party. Omit id to list, pass id to f...
Read the universe of tags used across the organization. Tags are surfaced as plain strings on tasks, deals, companies, and invoices via tag_list. Omit...
Read task predecessor/successor links. Each row connects a predecessor task to a successor task — used for Gantt and scheduling views. Omit id to list...
Read task lists (milestones) within projects. Task lists group tasks and live inside boards; each task in a project belongs to exactly one task list. ...
Read tasks across the organization. Omit id to list (sort='-created_at' for newest first, sort='due_date' to triage by deadline; include='project,assi...
Read tax rates available for invoices and line items. Rates have a percentage and an inclusion flag (whether the tax is included in the displayed amou...
Read tracked time entries. Omit id to list (use sort='-date' for newest first; each entry carries date, time in minutes, task_id, person_id, service_i...
Read time off requests / approvals — vacation, sick days, etc. Omit id to list (each row carries person_id, started_on, ended_on, and an approval stat...
Read per-day breakdown rows of multi-day time off requests. Omit id to list, pass id to fetch one.
Read active and recently-stopped timers across the org. A timer is the live counterpart of a time entry — when stopped it creates the time_entry recor...
Read user accounts (login identities) associated with the organization. Distinct from people — a user is the auth identity, a person is the staff reco...
Read task workflows — each workflow defines an ordered set of workflow_statuses (To Do → In Progress → Done patterns). Projects reference a workflow_i...
Read the ordered statuses (kanban columns) inside a workflow — e.g. 'To Do', 'In Progress', 'Done'. Required to discover the workflow_status_id you mu...
Register an attachment in Productive. Pass the filename, size, content_type, and exactly one parent id (task_id, comment_id, expense_id, etc.). The re...
Create or update a board (task-list folder) inside a project. Omit id to create (name + project_id required); pass id to update (rename or reorder). P...
Create or update a resource booking. Omit id to create (person_id, started_on, ended_on required, plus either service_id (billable) or event_id (non-b...
Create or update a comment in Productive. Omit id to create (body required, plus exactly one parent id — task_id, deal_id, invoice_id, project_id, etc...
Create or update a company in Productive. Omit id to create (name required; vat and billing_name are useful for invoicing-bound clients). Pass id to u...
Create or update a contact entry. Omit id to create (name + kind required; kind is one of email|phone|url|address; pass exactly one parent id — compan...
Create or update a sales deal in Productive. Omit id to create (name + company_id required — every deal belongs to a client; for retainers pass deal_t...
Create or update an expense in Productive. Omit id to create (date + amount required); pass id to update (any subset of fields). Amount is integer cen...
Create or update a Productive holiday calendar. Omit id to create (name required); pass id to update (any subset of fields). Calendars group public ho...
Create or update an invoice in Productive. Omit id to create (company_id required; deal_id ties to a project for budget burndown). Pass id to update (...
Create or update a Doc page in Productive. Omit id to create (title required; set parent_id to nest under another page, project_id to scope to a proje...
Create or update a project in Productive. Omit id to create (name required; for client work pass company_id with project_type_id default 1, for intern...
Create or update a section under a deal. Omit id to create (name + deal_id required) — sections group services into headers in the deal builder UI. Pa...
Create or update a billing service inside a deal/budget. Omit id to create (name + deal_id required); pass id to update (any subset of fields). Prices...
Create or update a task in Productive. Omit id to create (title required; project_id + task_list_id + assignee_id are the typical minimum); pass id to...
Create or update a task list (milestone) inside a project. Omit id to create (name + project_id required) — tasks reference task_list_id, so create th...
Create or update a time entry. Omit id to create (date, time in minutes, person_id, and service_id required; task_id is optional but conventional; not...
Productive is a project management platform that helps teams track time, plan tasks, and manage projects effectively. Use it to streamline workflows, allocate resources, and monitor project progress. It provides 96 tools that AI agents can use through the Model Context Protocol (MCP).
Add the MCPBundles server URL to your MCP client configuration (Claude Desktop, Cursor, VS Code, etc.). The URL format is: https://mcp.mcpbundles.com/bundle/productive. Authentication is handled automatically.
Productive provides 96 tools that can be called by AI agents, along with a SKILL.md that gives your AI agent domain knowledge about when and how to use them.
Productive uses API Key. Productive requires credentials. Connect via MCPBundles and authentication is handled automatically.
Connect Productive to any MCP client in minutes
The link prefills the Add custom connector dialog — you still review the values and click Add, then Connect to complete OAuth.
Productive and paste the MCP URL into Remote MCP server URL.Custom connectors at claude.ai require a paid Claude plan (Pro, Max, Team, or Enterprise).
More project management integrations you might like
Agentwork allows users to delegate tasks to AI agents, manage task statuses, and communicate with th...
Aha is a web-based project management tool that helps users in visualizing strategies, tracking proj...
Anamnese is a self-improving memory layer that helps users manage their notes, tasks, and memories e...
Asana is a project management and team collaboration platform that helps teams organize, track, and ...
Asana is a project management and team collaboration platform. Use it to manage tasks, projects, sec...
Basecamp is a project management tool that facilitates team collaboration through task management, f...