Skip to content

Connectors · MSP & PSA

Productive.io MCP server for AI agents.

actionlake is an MCP gateway: one remote MCP server that connects Claude and other MCP clients to Productive.io and the rest of your systems. It gives your agent 657 Productive.io actions (244 reads, 334 writes and 79 that wait for a confirmation) and holds the Productive.io credential itself, so the agent never does. It paces Productive.io's limits and records every call.

100,000 free calls a month. No card, no email, no password: press Start a free sandbox on the next screen and keep the key it shows you.

claude mcp add --transport http actionlake https://connect.actionlake.com/mcp
the first call
do {  action: "productive.tasks.list",  intent: "check which Productive.io account is connected"}# Get tasks · read · 1 upstream call
  • 657actionsin one signed file
  • 244readlook, never change
  • 334writecreate and update
  • 79wait for a yesdestructive, confirmed first

Set up

Connect Productive.io in three steps.

  1. 01

    Add actionlake to Claude.

    Run the command once in Claude Code; its consent page can create a free sandbox: 100,000 calls a month, no card. In the Claude app, add a custom connector with the URL below and paste your key on the consent page. Creating a new sandbox from the Claude app is not yet tested by us.

    https://connect.actionlake.com/mcp
  2. 02

    Connect Productive.io.

    Header credentials. No consent screen: your agent can connect it for you, but the key then passes through your chat. To keep it out of the model's context, paste it in the console instead. actionlake stores what you paste write-only, sealed under your tenant's key.

    • organization_idProductive organization ID (Settings > API integrations, shown beside your tokens)
    • api_tokenProductive API token (Settings > API integrations > Generate new token; choose read-only or full access)
    account { op: "connections.requirements", service: "productive" }
    # free: exactly what to paste, and what is found for you
  3. 03

    Make the first call. Check before a write.

    Ask in plain words; Claude picks the action. Before anything changes, check validates the call and prices it, for free.

    do    { action: "productive.tasks.list" }# get tasks · read · 1 upstream callcheck { action: "productive.tasks.create", input: { … } }# free: inputs, permissions, cost and confirmations, nothing sent

Productive.io at a glance

Sign-in
Header credentials. No consent screen: your agent can connect it for you, but the key then passes through your chat. To keep it out of the model's context, paste it in the console instead.
You provide
organization_idapi_token
Limits we pace to
100 calls per 10 seconds, per connection
API covered
Productive API v2 (JSON:API, OpenAPI 3.1 api-master.yaml)api.productive.io
Built from
Productive.io's documentation, read 22 October 2026developer.productive.iodeveloper.productive.io
Service file
Version 1.0.0, signed (Ed25519)
Cached reads
244 of 244 reads, for up to 5 minutes; a write clears what it affects
Shared entities
8, so ask can line Productive.io up with your other systems
Data
Processed and stored in Sydney, Australia. No US region yet

Capabilities

What an AI agent can do in Productive.io.

657 actions in 138 areas. Every one carries its effect, so a key can allow the reads and hold the rest.

  • 244readlook, never change
  • 334writecreate and update
  • 79destructivewait for a confirmation
  1. Pages

    16

    2 read · 13 write · 1 destructive

    Creates a doc from a template · Copies a page · Create a page with markdown body · Get pages

  2. Expenses

    15

    2 read · 11 write · 2 destructive

    Get expenses · Create an expense · Gets an expense · Update an expense

  3. People

    13

    2 read · 11 write · 0 destructive

    Get people · Create a person · Activate a person · Archive a person

  4. Time entries

    13

    2 read · 9 write · 2 destructive

    Get time entries · Create time entries · Update a time entry · Gets a time entry

  5. Projects

    12

    2 read · 9 write · 1 destructive

    Get projects · Create a project · Gets a project · Update a project

  6. Invoices

    11

    3 read · 7 write · 1 destructive

    Get invoices · Create an invoice · Gets an invoice · Update an invoice

  7. Purchase orders

    11

    2 read · 7 write · 2 destructive

    Get purchase orders · Create a purchase order · Gets a purchase order · Update a purchase order

  8. Boards

    9

    2 read · 7 write · 0 destructive

    Get boards · Create a board · Gets a board · Update a board

130 more areas · 557 actions
  • Comments 9
  • Deals 9
  • Discussions 9
  • Folders 9
  • Task lists 9
  • Line items 8
  • Proposals 8
  • Rate cards 8
  • Resource requests 8
  • Tasks 8
  • Deal statuses 7
  • Events 7
  • Integrations 7
  • Organization memberships 7
  • Time tracking policies 7
  • Workflows 7
  • Agents 6
  • Approval policies 6
  • Bank accounts 6
  • Companies 6
  • Contracts 6
  • Dashboards 6
  • Document styles 6
  • Document types 6
  • Filters 6
  • Job roles 6
  • Notifications 6
  • Pulses 6
  • Service types 6
  • Surveys 6
  • Tax rates 6
  • Agent configs 5
  • Approval policy assignments 5
  • Artifacts 5
  • Attachments 5
  • Automatic invoicing rules 5
  • Bookings 5
  • Contact entries 5
  • Custom field options 5
  • Custom field sections 5
  • Custom fields 5
  • Deal cost rates 5
  • Emails 5
  • Entitlements 5
  • Holiday calendars 5
  • Holidays 5
  • Integration exporter configurations 5
  • Integration task management configurations 5
  • Invoice attributions 5
  • Invoice templates 5
  • Lost reasons 5
  • Memberships 5
  • Organization subscriptions 5
  • Organizations 5
  • Payment reminder sequences 5
  • Payments 5
  • Pipelines 5
  • Placeholder usages 5
  • Placeholders 5
  • Prices 5
  • Project preferences 5
  • Report categories 5
  • Revenue distributions 5
  • Roles 5
  • Salaries 5
  • Sections 5
  • Service assignments 5
  • Service type assignments 5
  • Services 5
  • Skills 5
  • Subsidiaries 5
  • Survey field options 5
  • Survey fields 5
  • Task dependencies 5
  • Teams 5
  • Templates 5
  • Todos 5
  • Widgets 5
  • Workflow statuses 5
  • Approval statuses 4
  • Approval workflows 4
  • Bills 4
  • Custom domains 4
  • Einvoice identities 4
  • Overheads 4
  • Page versions 4
  • Survey responses 4
  • Team memberships 4
  • Timers 4
  • Timesheets 4
  • Users 4
  • Webhooks 4
  • Deleted items 3
  • Invitations 3
  • Activities 2
  • Agent roles 2
  • Public artifacts 2
  • Public proposals 2
  • Tags 2
  • Time entry versions 2
  • Automation reports 1
  • Booking reports 1
  • Budget reports 1
  • Company reports 1
  • Deal funnel reports 1
  • Deal reports 1
  • Entitlement reports 1
  • Exchange rates 1
  • Expense reports 1
  • Financial item reports 1
  • Invoice reports 1
  • Line item reports 1
  • Page reports 1
  • Payment reports 1
  • Payroll item reports 1
  • Person reports 1
  • Price reports 1
  • Project milestone reports 1
  • Project reports 1
  • Proposal reports 1
  • Public pages 1
  • Resource request reports 1
  • Salary reports 1
  • Service reports 1
  • Survey reports 1
  • Task reports 1
  • Time entry reports 1
  • Time reports 1
  • Timesheet reports 1
  • Webhook logs 1

Top actions

The Productive.io API, shaped for agents.

The ids your agent types, what each does, and the one name it shares with other systems. 71 of Productive.io's 71 action names are shared with at least one other connector, so an agent learns them once.

ActionWhat it doesEffectSame name in
productive.tasks.listGet tasksGet tasks.readwork.task.list122 connectors
productive.projects.listGet projectsGet projects.readwork.project.list109 connectors
productive.time_entries.listGet time entriesGet time entries.readwork.time_entry.list59 connectors
productive.invoices.listGet invoicesGet invoices.readfinance.invoice.list101 connectors
productive.tasks.createCreate a taskCreate a task.writework.task.create127 connectors
productive.projects.createCreate a projectCreate a project.writework.project.create102 connectors
productive.companies.listGet companiesGet companies.readcrm.company.list162 connectors
productive.time_entries.createCreate time entriesCreate time entries.writework.time_entry.create56 connectors
productive.tasks.deleteDeletes a taskDeletes a task.destructivework.task.delete107 connectors
productive.invoices.createCreate an invoiceCreate an invoice.writefinance.invoice.create74 connectors
productive.companies.createCreate a companyCreate a company.writecrm.company.create142 connectors
productive.deals.createCreate a dealCreate a deal.writecrm.deal.create43 connectors

Try it

Prompts to paste into Claude.

Each one names the Productive.io actions it will call, so you know what it reads and what it changes before you send it.

  1. Readread

    Which Productive.io invoices are more than 30 days overdue? Group them by customer with the total owed.

    callsproductive.invoices.list

  2. Writewrite

    Create a task in Productive.io. Show me exactly what you will send before you save it.

    callsproductive.tasks.create

  3. Across systemsread

    Which Productive.io companies have invoices in NetSuite, and how many each?

    callsproductive.companies.listnetsuite.views.invoices

Across your systems

Productive.io, joined to the rest of your business.

One ask fetches from Productive.io and another system, joins the rows on the same customer on our side, and hands your agent the answer, not every row.

  • Which Productive.io companies have invoices in NetSuite, and how many each?

    productive.companies.list + netsuite.views.invoices, on crm.company · NetSuite

  • Which Productive.io companies have tickets in HubSpot CRM, and how many each?

    productive.companies.list + hubspot_crm.tickets.list, on crm.company · HubSpot CRM

Also mapped by other connectorsidentity.user 517crm.company 227crm.contact 192work.project 116work.task 105finance.invoice 91crm.deal 43work.time_entry 40
ask
ask {  intent: "which Productive.io companies have invoices in NetSuite, and how many each",  steps: [    { action: "productive.companies.list", as: "co", input: {}, limit: 100, max_pages: 5 },    { action: "netsuite.views.invoices", as: "inv", input: {}, limit: 100, max_pages: 5 },    { join: {        left: "co",        right: "inv",        on: "crm.company",        group_by: "co.name",        select: ["co.name", "count(inv.id) as invoices"]    } }  ]}
Example. Run it through check first: it validates the steps and prices them, and it is free.

Governance for Productive.io

Destructive actions wait for a yes.

79 Productive.io actions are destructive. The first 10:

  • Deletes a taskproductive.tasks.delete
  • Deletes a projectproductive.projects.delete
  • Deletes a time entryproductive.time_entries.delete
  • Deletes an invoiceproductive.invoices.delete
  • Deletes a dealproductive.deals.delete
  • Deletes a teamproductive.teams.delete
  • Deletes a paymentproductive.payments.delete
  • Deletes a timesheetproductive.timesheets.delete
  • Deletes an expenseproductive.expenses.delete
  • Deletes a purchase orderproductive.purchase_orders.delete

A destructive action runs only with confirm: true. Under the human policy the agent cannot confirm for itself: the run stops until a named person approves, in the console or from a signed link in an email. The cap on a key is refused before the call is sent, never after.

doproductive.tasks.deleteconfirm_policy: human

Deletes a task?

intent: the user asked me to deletes a task

run suspended · waiting for a named person · key productive-agent cannot confirm itself
In the console, or from an emailed signed link.
a key for this connector
account {  op: "keys.create", name: "productive-agent",  allowed_actions: ["productive.*"], cap_calls: 2000,  confirm_policy: "human_for_writes",  approval_rules: [    { match: "productive.tasks.delete", approver: "[email protected]" },    { match: "productive.projects.delete", approver: "[email protected]" },    { match: "productive.time_entries.delete", approver: "[email protected]" }  ]}
Illustrative. Scoped to Productive.io only, capped at 2,000 upstream calls, every write confirmed, and the destructive ones approved by a named person.

Cost

What Productive.io costs on actionlake.

Every Productive.io action is one upstream call, the only thing actionlake bills. Searching, check, cost, account and any call Productive.io refused with 401, 403, 429 or a 5xx are free. Paid plans start at US$49 a month for 250,000 calls, with overage from US$0.30 down to US$0.18 per 1,000.

  • 1upstream call per actionall 657 Productive.io actions
  • 657actions pageeach page of a long list is one call
  • 244reads can be cacheda cache hit costs nothing
  • 100,000calls a month, freepaid plans from US$49 a month for 250,000

See pricing

Action index

Every Productive.io action.

657 actions by area: the id your agent calls, what it does, and its effect.

Pages16
  • productive.pages.apply_template_as_docCreates a doc from a templatewrite
  • productive.pages.copyCopies a pagewrite
  • productive.pages.create_with_markdownCreate a page with markdown bodywrite
  • productive.pages.listGet pagesread
  • productive.pages.append_htmlAppend HTML to a page bodywrite
  • productive.pages.append_markdownAppend markdown to a page bodywrite
  • and 10 more in this area
Expenses15
  • productive.expenses.createCreate an expensewrite
  • productive.expenses.getGets an expenseread
  • productive.expenses.listGet expensesread
  • productive.expenses.updateUpdate an expensewrite
  • productive.expenses.approveApproves an expensewrite
  • productive.expenses.bulk_approveBulk approves expenseswrite
  • and 9 more in this area
People13
  • productive.people.activateActivate a personwrite
  • productive.people.archiveArchive a personwrite
  • productive.people.createCreate a personwrite
  • productive.people.listGet peopleread
  • productive.people.deactivateDeactivate a personwrite
  • productive.people.getGet a personread
  • and 7 more in this area
Time entries13
  • productive.time_entries.createCreate time entrieswrite
  • productive.time_entries.getGets a time entryread
  • productive.time_entries.listGet time entriesread
  • productive.time_entries.updateUpdate a time entrywrite
  • productive.time_entries.approveApproves a time entrywrite
  • productive.time_entries.approve_bulkApproves time entrieswrite
  • and 7 more in this area
Projects12
  • productive.projects.createCreate a projectwrite
  • productive.projects.getGets a projectread
  • productive.projects.listGet projectsread
  • productive.projects.updateUpdate a projectwrite
  • productive.projects.apply_navigation_tabsApplies navigation tabs from a template to the projectwrite
  • productive.projects.archiveArchives a projectwrite
  • and 6 more in this area
Invoices11
  • productive.invoices.createCreate an invoicewrite
  • productive.invoices.getGets an invoiceread
  • productive.invoices.listGet invoicesread
  • productive.invoices.updateUpdate an invoicewrite
  • productive.invoices.deleteDeletes an invoicedestructive
  • productive.invoices.exportExports an invoicewrite
  • and 5 more in this area
Purchase orders11
  • productive.purchase_orders.createCreate a purchase orderwrite
  • productive.purchase_orders.getGets a purchase orderread
  • productive.purchase_orders.listGet purchase ordersread
  • productive.purchase_orders.updateUpdate a purchase orderwrite
  • productive.purchase_orders.copyCopies a purchase orderwrite
  • productive.purchase_orders.deleteDeletes a purchase orderdestructive
  • and 5 more in this area
Boards9
  • productive.boards.createCreate a boardwrite
  • productive.boards.getGets a boardread
  • productive.boards.listGet boardsread
  • productive.boards.updateUpdate a boardwrite
  • productive.boards.archiveArchives a boardwrite
  • productive.boards.copyCopy a boardwrite
  • and 3 more in this area
Comments9
  • productive.comments.add_reactionAdds reaction to a commentwrite
  • productive.comments.createCreate a commentwrite
  • productive.comments.getGets a commentread
  • productive.comments.listGet commentsread
  • productive.comments.deleteDeletes a commentdestructive
  • productive.comments.pinPins a commentwrite
  • and 3 more in this area
Deals9
  • productive.deals.createCreate a dealwrite
  • productive.deals.getGets a dealread
  • productive.deals.listGet dealsread
  • productive.deals.updateUpdate a dealwrite
  • productive.deals.closeCloses a dealwrite
  • productive.deals.copyCopies a dealwrite
  • and 3 more in this area
Discussions9
  • productive.discussions.createCreate an discussionwrite
  • productive.discussions.getGets a discussionread
  • productive.discussions.listGet discussionsread
  • productive.discussions.reopenReopens a discussionwrite
  • productive.discussions.deleteDeletes a discussiondestructive
  • productive.discussions.resolveResolves a discussionwrite
  • and 3 more in this area
Folders9
  • productive.folders.createCreate a folderwrite
  • productive.folders.getGets a folderread
  • productive.folders.listGet foldersread
  • productive.folders.updateUpdate a folderwrite
  • productive.folders.archiveArchives a folderwrite
  • productive.folders.copyCopy a folderwrite
  • and 3 more in this area
Task lists9
  • productive.task_lists.archiveArchives a task listwrite
  • productive.task_lists.copyCopies a task listwrite
  • productive.task_lists.createCreate a task listwrite
  • productive.task_lists.listGet task listsread
  • productive.task_lists.getGets a task listread
  • productive.task_lists.moveMoves a task listwrite
  • and 3 more in this area
Line items8
  • productive.line_items.createCreate line itemswrite
  • productive.line_items.generateCreate line itemswrite
  • productive.line_items.getGets a line itemread
  • productive.line_items.listGet line itemsread
  • productive.line_items.deleteDeletes a line itemdestructive
  • productive.line_items.delete_bulkDelete line itemsdestructive
  • and 2 more in this area
Proposals8
  • productive.proposals.createCreate a proposalwrite
  • productive.proposals.getGets a proposalread
  • productive.proposals.listGet proposalsread
  • productive.proposals.signed_pdfGet a download URL for the signed proposal PDFread
  • productive.proposals.deleteDeletes a proposaldestructive
  • productive.proposals.syncSync a proposalwrite
  • and 2 more in this area
Rate cards8
  • productive.rate_cards.archiveArchives a rate cardwrite
  • productive.rate_cards.copyCopy a rate cardwrite
  • productive.rate_cards.createCreate a pricewrite
  • productive.rate_cards.listGet rate cardsread
  • productive.rate_cards.deleteDeletes a pricedestructive
  • productive.rate_cards.getGets a rate cardread
  • and 2 more in this area
Resource requests8
  • productive.resource_requests.createCreate a resource requestwrite
  • productive.resource_requests.getGets a resource requestread
  • productive.resource_requests.listGet resource requestsread
  • productive.resource_requests.resolveResolve a resource request by creating bookingswrite
  • productive.resource_requests.cancelCancel a resource requestdestructive
  • productive.resource_requests.deleteDeletes a resource requestdestructive
  • and 2 more in this area
Tasks8
  • productive.tasks.createCreate a taskwrite
  • productive.tasks.getGets a taskread
  • productive.tasks.listGet tasksread
  • productive.tasks.updateUpdate a taskwrite
  • productive.tasks.copyCopies a taskwrite
  • productive.tasks.deleteDeletes a taskdestructive
  • and 2 more in this area
Deal statuses7
  • productive.deal_statuses.archiveArchives a deal statuswrite
  • productive.deal_statuses.createCreate a deal statuswrite
  • productive.deal_statuses.getGets a deal statusread
  • productive.deal_statuses.listGet deal statusesread
  • productive.deal_statuses.deleteDestroy a deal statusdestructive
  • productive.deal_statuses.mergeMerges a deal statuswrite
  • and 1 more in this area
Events7
  • productive.events.archiveArchives an eventwrite
  • productive.events.createCreate an eventwrite
  • productive.events.getGet an eventread
  • productive.events.listGet eventsread
  • productive.events.deleteDeletes an eventdestructive
  • productive.events.restoreRestores an eventwrite
  • and 1 more in this area
Integrations7
  • productive.integrations.checkChecks if integration is validread
  • productive.integrations.connectproductive.integrations.connectwrite
  • productive.integrations.createCreate an integrationwrite
  • productive.integrations.listGet integrationread
  • productive.integrations.deleteDeletes an integrationdestructive
  • productive.integrations.getGets an integrationread
  • and 1 more in this area
Organization memberships7
  • productive.organization_memberships.clear_notificationsClear notifications for organization membershipwrite
  • productive.organization_memberships.dismiss_notificationsDismiss notifications for organization membershipwrite
  • productive.organization_memberships.getGet an organization membershipread
  • productive.organization_memberships.listGet organization membershipsread
  • productive.organization_memberships.deleteDestroy organization membershipdestructive
  • productive.organization_memberships.read_notificationsMark all notifications as read for organization membershipwrite
  • and 1 more in this area
Time tracking policies7
  • productive.time_tracking_policies.archiveArchives a time tracking policywrite
  • productive.time_tracking_policies.createCreate a time tracking policywrite
  • productive.time_tracking_policies.getGets a time tracking policyread
  • productive.time_tracking_policies.listGet time tracking policiesread
  • productive.time_tracking_policies.deleteDeletes a time tracking policydestructive
  • productive.time_tracking_policies.restoreRestores an archived time tracking policywrite
  • and 1 more in this area
Workflows7
  • productive.workflows.archiveArchives a workflowwrite
  • productive.workflows.createCreate an workflowwrite
  • productive.workflows.getGets a workflowread
  • productive.workflows.listGet workflowsread
  • productive.workflows.deleteDeletes a workflowdestructive
  • productive.workflows.restoreRestores a workflowwrite
  • and 1 more in this area
Agents6
  • productive.agents.activateActivate an agentwrite
  • productive.agents.createCreate an agentwrite
  • productive.agents.deactivateDeactivate an agentwrite
  • productive.agents.listGet agentsread
  • productive.agents.getGet an agentread
  • productive.agents.updateUpdate an agentwrite
Approval policies6
  • productive.approval_policies.archiveArchives the approval policywrite
  • productive.approval_policies.createCreates the approval policywrite
  • productive.approval_policies.getGets the approval policyread
  • productive.approval_policies.listGet approval policiesread
  • productive.approval_policies.restoreRestores the approval policywrite
  • productive.approval_policies.updateUpdates the approval policywrite
Bank accounts6
  • productive.bank_accounts.createCreate a bank accountwrite
  • productive.bank_accounts.getGets a bank accountread
  • productive.bank_accounts.listGet bank accountsread
  • productive.bank_accounts.updateUpdate a bank accountwrite
  • productive.bank_accounts.archiveArchives a bank accountwrite
  • productive.bank_accounts.restoreRestores an archived bank accountwrite
Companies6
  • productive.companies.createCreate a companywrite
  • productive.companies.getGets a companyread
  • productive.companies.listGet companiesread
  • productive.companies.updateUpdate a companywrite
  • productive.companies.archiveArchives a companywrite
  • productive.companies.restoreRestores a companywrite
Contracts6
  • productive.contracts.createCreate a contractwrite
  • productive.contracts.generateGenerates new budgetwrite
  • productive.contracts.getGets a contractread
  • productive.contracts.listGet contractsread
  • productive.contracts.deleteDeletes a contractdestructive
  • productive.contracts.updateUpdate a contractwrite
Dashboards6
  • productive.dashboards.copyCopy a dashboardwrite
  • productive.dashboards.createCreate a dashboardwrite
  • productive.dashboards.getGet a dashboardread
  • productive.dashboards.listGet all dashboardsread
  • productive.dashboards.deleteDelete a dashboarddestructive
  • productive.dashboards.updateUpdate a dashboardwrite

Document styles 6Document types 6Filters 6Job roles 6Notifications 6Pulses 6Service types 6Surveys 6Tax rates 6Agent configs 5Approval policy assignments 5Artifacts 5Attachments 5Automatic invoicing rules 5Bookings 5Contact entries 5Custom field options 5Custom field sections 5Custom fields 5Deal cost rates 5Emails 5Entitlements 5Holiday calendars 5Holidays 5Integration exporter configurations 5Integration task management configurations 5Invoice attributions 5Invoice templates 5Lost reasons 5Memberships 5Organization subscriptions 5Organizations 5Payment reminder sequences 5Payments 5Pipelines 5Placeholder usages 5Placeholders 5Prices 5Project preferences 5Report categories 5Revenue distributions 5Roles 5Salaries 5Sections 5Service assignments 5Service type assignments 5Services 5Skills 5Subsidiaries 5Survey field options 5Survey fields 5Task dependencies 5Teams 5Templates 5Todos 5Widgets 5Workflow statuses 5Approval statuses 4Approval workflows 4Bills 4Custom domains 4Einvoice identities 4Overheads 4Page versions 4Survey responses 4Team memberships 4Timers 4Timesheets 4Users 4Webhooks 4Deleted items 3Invitations 3Activities 2Agent roles 2Public artifacts 2Public proposals 2Tags 2Time entry versions 2Automation reports 1Booking reports 1Budget reports 1Company reports 1Deal funnel reports 1Deal reports 1Entitlement reports 1Exchange rates 1Expense reports 1Financial item reports 1Invoice reports 1Line item reports 1Page reports 1Payment reports 1Payroll item reports 1Person reports 1Price reports 1Project milestone reports 1Project reports 1Proposal reports 1Public pages 1Resource request reports 1Salary reports 1Service reports 1Survey reports 1Task reports 1Time entry reports 1Time reports 1Timesheet reports 1Webhook logs 1

This index shows a sample of each area. All 657 actions, with their inputs and prices, are in the catalogue, which a free sandbox key can search.

Questions

The Productive.io MCP server, answered.

Is there a Productive.io MCP server for Claude?

Yes. actionlake is an MCP gateway: a remote MCP server that gives Claude, or another MCP client, 657 Productive.io actions across pages, expenses, people and time entries, through the same eight tools it uses for every other connector. actionlake is independent; it is not made or endorsed by Productive.io.

What do I need to connect Productive.io?

Productive organization ID (Settings > API integrations, shown beside your tokens) and Productive API token (Settings > API integrations > Generate new token; choose read-only or full access). The free call account { op: "connections.requirements", service: "productive" } lists exactly what to paste.

Can an AI agent delete or change things in Productive.io?

Only if its key allows it, and only with an explicit confirmation. 79 Productive.io actions are destructive, including deletes a task, deletes a project and deletes a time entry. Each runs only with confirm: true. Under the human confirm policy, or an approval rule on the key, the run waits until a named person approves it.

Will an AI agent use up my Productive.io API limit?

actionlake paces every call to the limits in the Productive.io service file: 100 calls per 10 seconds per connection. Repeated reads are answered from cache (244 Productive.io actions can be), which never reaches Productive.io.

What does a Productive.io action cost?

One upstream call, the only unit actionlake bills. A list that pages bills one call per page (657 Productive.io actions page). Cache hits, searches, dry runs and calls Productive.io refused with 401, 403, 429 or a 5xx are free. The Free plan includes 100,000 calls a month with no card. Paid plans start at US$49 a month for 250,000 calls, with overage from US$0.30 down to US$0.18 per 1,000.

Which Productive.io API does it cover?

The Productive API v2 (JSON:API, OpenAPI 3.1 api-master.yaml) at api.productive.io. It is built from Productive.io's documentation as read on 22 October 2026. 657 actions in 138 areas, each one in the signed service file (version 1.0.0).

Can I combine Productive.io with my other systems?

Yes. ask joins Productive.io to NetSuite or HubSpot CRM on the same customer and returns the answer rather than every row. Productive.io maps crm.company, which 227 other connectors also map.

Does actionlake keep my Productive.io data, and where?

actionlake processes and stores data in Sydney, Australia; there is no US region yet. Reads may be cached for up to 5 minutes, and a write clears the reads it affects. Each run's request and response is kept, sealed, for your plan's trace window: 1 day on Free, 3 days on Starter, 7 days on Pro, 14 days on Team, 30 days on Business and 30 days on Enterprise. Your Productive.io credential is sealed under your tenant's key, never logged and never returned. Your traffic is not used to train models.

Which AI clients can use it?

Claude Code, tested by us end to end, and the Claude app as a custom connector, tested by us with an existing key. Other MCP clients that support remote servers over Streamable HTTP (MCP revisions 2025-06-18 and 2025-11-25) and OAuth dynamic client registration, or a bearer header, should connect the same way; we have not tested them. Or plain REST, under the same action names.

Give your agent Productive.io today.

Start free - 100,000 calls/month, no card. No signup. Hard caps on every key. Cached answers are free.