outreach_complete_ taskMarks the task as complete.
Ask which sequences get replies, prepare for a call with everything on one prospect, add a list of people to a sequence, clear today's tasks and log calls, all from your AI client, acting as you in Outreach.
PopMCPOutreach
Every operation in Outreach's API reference, with the everyday selling tools loaded by default and the rest, from bulk actions and imports to mailboxes, webhooks and custom objects, one search away.
267 tools in the full catalog: 101 read and 166 write. 41 load by default, and the rest are found with tool search.
outreach_complete_ taskMarks the task as complete.
outreach_create_ taskCreate a task.
outreach_get_ taskRead one task by id.
outreach_list_ tasksList tasks.
outreach_snooze_ taskSets the 'dueAt' value to be a day later than either now or the existing 'dueAt' value, whichever is later.
outreach_activate_ sequenceEnables the sequence.
outreach_deactivate_ sequenceDisables the sequence.
outreach_get_ sequenceRead one sequence by id.
outreach_list_ sequencesList sequences.
outreach_sequence_ performanceUse this to see how a sequence is doing: delivered, opens, clicks, replies, bounces and opt-outs with rates, for the sequence and each of its steps.
outreach_list_ mailboxesList mailboxes.
outreach_add_ prospects_ to_ sequenceUse this to enroll prospects in a sequence, which starts its automation and can send email: confirm with the person first.
outreach_create_ sequence_ stateCreate a sequence state.
outreach_finish_ sequence_ stateFinishes an active sequence state.
outreach_list_ sequence_ statesList sequence states.
outreach_pause_ sequence_ statePauses an active sequence state.
outreach_resume_ sequence_ stateResumes a paused sequence state.
outreach_create_ prospectCreate a prospect.
outreach_get_ prospectRead one prospect by id.
outreach_list_ prospectsList prospects.
outreach_prospect_ overviewUse this to see where one prospect stands: their record, account, owner and stage, the sequences they are in, open tasks, and latest mailings and calls, in one call.
outreach_update_ prospectChange fields on a prospect.
outreach_upsert_ prospectUse this to add a prospect without creating a duplicate: finds the prospect by exact email, updates them if found and creates them if not.
outreach_create_ accountCreate an account.
outreach_create_ opportunityCreate an opportunity.
outreach_get_ accountRead one account by id.
outreach_get_ opportunityRead one opportunity by id.
outreach_list_ accountsList accounts.
outreach_list_ opportunitiesList opportunities.
outreach_list_ stagesList stages.
outreach_list_ templatesList templates.
outreach_update_ accountChange fields on an account.
outreach_update_ opportunityChange fields on an opportunity.
outreach_create_ callCreate a call.
outreach_describe_ resourceUse this before filtering or writing when you are unsure of a field name.
outreach_list_ callsList calls.
outreach_list_ sequence_ stepsList sequence steps.
outreach_list_ usersList users.
outreach_get_ mailingRead one mailing by id.
outreach_list_ kaia_ recordingsList kaia recordings.
outreach_list_ mailingsList mailings.
outreach_bulk_ add_ account_ assignmentsAdds assignments to the accounts targeted by the query parameters (default: ALL) using the {userIds} array of strings passed in request body
outreach_bulk_ add_ account_ tagsAdds tags to the accounts targeted by the query parameters (default: ALL) using the {tags} array of strings passed in request body
outreach_bulk_ add_ prospect_ assignmentsAdds assignments to the prospects targeted by the query parameters (default: ALL) using the {userIds} array of strings passed in request body
outreach_bulk_ add_ prospect_ tagsAdds tags to the prospects targeted by the query parameters (default: ALL) using the {tags} array of strings passed in request body
outreach_bulk_ add_ prospects_ to_ sequenceAdd Prospects To Sequence
outreach_bulk_ assign_ account_ ownerassign an user with {ownerId} as owner to all the targeted accounts
outreach_bulk_ assign_ prospect_ accountSets the account to the prospects targeted by the query parameters (default: ALL) using the {accountId} which specifies the account to add to the prospects
outreach_bulk_ assign_ prospect_ opportunitySets the opportunity to the prospects targeted by the query parameters (default: ALL) using the {opportunityId} which specifies the account to add to the prospects
outreach_bulk_ assign_ prospect_ ownerassign an user with {ownerId} as owner to all the targeted prospects
outreach_bulk_ delete_ accountsDeletes the accounts targeted by the query parameters (default: ALL)
outreach_bulk_ delete_ custom_ object_ recordsAction to delete custom objects of type selected by the query parameter {objectName}
outreach_bulk_ delete_ prospectsDeletes the prospects targeted by the query parameters (default: ALL)
outreach_bulk_ finish_ prospect_ sequencesFor all prospects targeted by the query parameters (default: ALL), attempt to finish the associated prospect sequence
outreach_bulk_ pause_ prospect_ sequencesFor all prospects targeted by the query parameters (default: ALL), attempt to pause the associated prospect sequence
outreach_bulk_ remove_ account_ assignmentsRemoves assignments from the accounts targeted by the query parameters (default: ALL) using the {userIds} array of strings passed in request body
outreach_bulk_ remove_ account_ tagsRemoves tags from the accounts targeted by the query parameters (default: ALL) using the {tags} array of strings passed in request body
outreach_bulk_ remove_ all_ account_ assignmentsRemoves all assignments from the accounts targeted by the query parameters (default: ALL)
outreach_bulk_ remove_ all_ prospect_ assignmentsRemoves all assignments from the prospects targeted by the query parameters (default: ALL)
outreach_bulk_ remove_ prospect_ assignmentsRemoves assignments from the prospects targeted by the query parameters (default: ALL) using the {userIds} array of strings passed in request body
outreach_bulk_ remove_ prospect_ tagsRemoves tags from the prospects targeted by the query parameters (default: ALL) using the {tags} array of strings passed in request body
outreach_bulk_ update_ accountsModifies the accounts targeted by the query parameters (default: ALL) using the {field: value, ...} pairs passed in request body.
outreach_bulk_ update_ custom_ object_ recordsAction to modify custom objects of type selected by the query parameter {objectName}
outreach_bulk_ update_ prospectsModifies the prospects targeted by the query parameters (default: ALL) using the {field: value, ...} pairs passed in request body Alternative request body for a single field modification is also supported: ``` { "data": { "attributes": { "fieldName": "string", "fieldValue": "string", "ids": [0] } }, "type": "string" } ```
outreach_cancel_ batchAction to call to cancel the batch
outreach_confirm_ batchAction to call to confirm the batch
outreach_get_ batchRead one batch by id.
outreach_list_ batchesList batches.
outreach_advance_ taskAdvances the sequence state associated with the task to the next step in the sequence.
outreach_delete_ taskDelete a task.
outreach_deliver_ taskSchedules the mailing associated with the task for delivery, if possible.
outreach_log_ task_ meet_ in_ personMarks the meet in-person task as complete with specified task disposition and purpose.
outreach_reassign_ task_ ownerReassigns the owner of a task
outreach_reschedule_ taskReschedules a task by setting a new task due time.
outreach_update_ taskChange fields on a task.
outreach_update_ task_ noteUpdates note of a task
outreach_update_ task_ opportunity_ associationUpdates opportunity association of a task
outreach_create_ sequenceCreate a sequence.
outreach_delete_ sequenceDelete a sequence.
outreach_lock_ sequenceArchives the sequence.
outreach_unlock_ sequenceUnarchives the sequence.
outreach_update_ sequenceChange fields on a sequence.
outreach_create_ mailboxCreate a mailbox.
outreach_delete_ mailboxDelete a mailbox.
outreach_get_ mailboxRead one mailbox by id.
outreach_link_ mailbox_ ews_ master_ accountLink mailbox with EWS master account
outreach_test_ mailbox_ sendTest if sending emails works from this mailbox.
outreach_test_ mailbox_ syncTest if syncing emails works from this mailbox.
outreach_unlink_ mailbox_ ews_ master_ accountUnlink EWS master account from mailbox
outreach_update_ mailboxChange fields on a mailbox.
outreach_delete_ sequence_ stateDelete a sequence state.
outreach_get_ sequence_ stateRead one sequence state by id.
outreach_activate_ sequence_ templateEnable the sequence step associated with it.
outreach_bulk_ upsert_ custom_ object_ recordsThis is the action to upsert records of a custom object.
outreach_bulk_ upsert_ recordsThis is the action to sync multiple API v2 objects to Outreach tablesBulk upsert uses a record's `data.id` attribute to determine uniqueness.The provided dupe method will be applied during processing of records that already exist in Outreach.
outreach_create_ import_ upload_ linkGenerates a link, an URL at which the file should be uploaded, and a storage key, a reference for the upload
outreach_create_ sequence_ templateCreate a sequence template.
outreach_deactivate_ sequence_ templateDisable the sequence step associated with it.
outreach_delete_ prospectDelete a prospect.
outreach_delete_ sequence_ templateDelete a sequence template.
outreach_get_ importRead one import by id.
outreach_get_ sequence_ templateRead one sequence template by id.
outreach_import_ accountsThis is the action to import an uploaded file into account's table.
outreach_import_ prospectsThis is the action to import an uploaded file into prospect's table Prospects have `externalId` as an unique field.
outreach_list_ sequence_ templatesList sequence templates.
outreach_update_ sequence_ templateChange fields on a sequence template.
outreach_validate_ import_ upload### Validate Upload Action Validates the uploaded file
outreach_create_ account_ noteCreate an account note.
outreach_create_ call_ dispositionCreate a call disposition.
outreach_create_ call_ purposeCreate a call purpose.
outreach_create_ content_ categoryCreate a content category.
outreach_create_ custom_ object_ recordCreate a custom object record.
outreach_create_ email_ addressCreate an email address.
outreach_create_ opportunity_ prospect_ roleCreate an opportunity prospect role.
outreach_create_ opportunity_ stageCreate an opportunity stage.
outreach_create_ personaCreate a persona.
outreach_create_ phone_ numberCreate a phone number.
outreach_create_ productCreate a product.
outreach_create_ profileCreate a profile.
outreach_create_ prospect_ noteCreate a prospect note.
outreach_create_ purchaseCreate a purchase.
outreach_create_ recipientCreate a recipient.
outreach_create_ roleCreate a role.
outreach_create_ rulesetCreate a ruleset.
outreach_create_ snippetCreate a snippet.
outreach_create_ stageCreate a stage.
outreach_create_ task_ dispositionCreate a task disposition.
outreach_create_ task_ purposeCreate a task purpose.
outreach_create_ teamCreate a team.
outreach_create_ templateCreate a template.
outreach_create_ webhookCreate a webhook.
outreach_delete_ accountDelete an account.
outreach_delete_ account_ noteDelete an account note.
outreach_delete_ call_ dispositionDelete a call disposition.
outreach_delete_ call_ purposeDelete a call purpose.
outreach_delete_ content_ categoryDelete a content category.
outreach_delete_ custom_ object_ recordDelete a custom object record.
outreach_delete_ email_ addressDelete an email address.
outreach_delete_ opportunityDelete an opportunity.
outreach_delete_ opportunity_ prospect_ roleDelete an opportunity prospect role.
outreach_delete_ opportunity_ stageDelete an opportunity stage.
outreach_delete_ personaDelete a persona.
outreach_delete_ phone_ numberDelete a phone number.
outreach_delete_ productDelete a product.
outreach_delete_ profileDelete a profile.
outreach_delete_ prospect_ noteDelete a prospect note.
outreach_delete_ purchaseDelete a purchase.
outreach_delete_ recipientDelete a recipient.
outreach_delete_ roleDelete a role.
outreach_delete_ rulesetDelete a ruleset.
outreach_delete_ snippetDelete a snippet.
outreach_delete_ stageDelete a stage.
outreach_delete_ task_ dispositionDelete a task disposition.
outreach_delete_ task_ purposeDelete a task purpose.
outreach_delete_ teamDelete a team.
outreach_delete_ templateDelete a template.
outreach_delete_ webhookDelete a webhook.
outreach_get_ account_ noteRead one account note by id.
outreach_get_ call_ dispositionRead one call disposition by id.
outreach_get_ call_ purposeRead one call purpose by id.
outreach_get_ content_ categoryRead one content category by id.
outreach_get_ custom_ object_ recordRead one custom object record by the object's internal name and the record's id.
outreach_get_ email_ addressRead one email address by id.
outreach_get_ opportunity_ prospect_ roleRead one opportunity prospect role by id.
outreach_get_ opportunity_ stageRead one opportunity stage by id.
outreach_get_ personaRead one persona by id.
outreach_get_ phone_ numberRead one phone number by id.
outreach_get_ productRead one product by id.
outreach_get_ profileRead one profile by id.
outreach_get_ prospect_ noteRead one prospect note by id.
outreach_get_ purchaseRead one purchase by id.
outreach_get_ recipientRead one recipient by id.
outreach_get_ roleRead one role by id.
outreach_get_ rulesetRead one ruleset by id.
outreach_get_ snippetRead one snippet by id.
outreach_get_ stageRead one stage by id.
outreach_get_ task_ dispositionRead one task disposition by id.
outreach_get_ task_ purposeRead one task purpose by id.
outreach_get_ teamRead one team by id.
outreach_get_ templateRead one template by id.
outreach_get_ webhookRead one webhook by id.
outreach_list_ account_ notesList account notes.
outreach_list_ call_ dispositionsList call dispositions.
outreach_list_ call_ purposesList call purposes.
outreach_list_ content_ categoriesList content categories.
outreach_list_ custom_ object_ recordsList the records of one custom object, by the object's internal name.
outreach_list_ email_ addressesList email addresses.
outreach_list_ opportunity_ prospect_ rolesList opportunity prospect roles.
outreach_list_ opportunity_ stagesList opportunity stages.
outreach_list_ personasList personas.
outreach_list_ phone_ numbersList phone numbers.
outreach_list_ productsList products.
outreach_list_ profilesList profiles.
outreach_list_ prospect_ notesList prospect notes.
outreach_list_ purchasesList purchases.
outreach_list_ recipientsList recipients.
outreach_list_ rolesList roles.
outreach_list_ rulesetsList rulesets.
outreach_list_ snippetsList snippets.
outreach_list_ task_ dispositionsList task dispositions.
outreach_list_ task_ purposesList task purposes.
outreach_list_ teamsList teams.
outreach_list_ webhooksList webhooks.
outreach_update_ account_ noteChange fields on an account note.
outreach_update_ call_ dispositionChange fields on a call disposition.
outreach_update_ call_ purposeChange fields on a call purpose.
outreach_update_ content_ categoryChange fields on a content category.
outreach_update_ custom_ object_ recordChange fields on a custom object record.
outreach_update_ email_ addressChange fields on an email address.
outreach_update_ opportunity_ prospect_ roleChange fields on an opportunity prospect role.
outreach_update_ opportunity_ stageChange fields on an opportunity stage.
outreach_update_ personaChange fields on a persona.
outreach_update_ phone_ numberChange fields on a phone number.
outreach_update_ productChange fields on a product.
outreach_update_ profileChange fields on a profile.
outreach_update_ prospect_ noteChange fields on a prospect note.
outreach_update_ purchaseChange fields on a purchase.
outreach_update_ recipientChange fields on a recipient.
outreach_update_ roleChange fields on a role.
outreach_update_ rulesetChange fields on a ruleset.
outreach_update_ snippetChange fields on a snippet.
outreach_update_ stageChange fields on a stage.
outreach_update_ task_ dispositionChange fields on a task disposition.
outreach_update_ task_ purposeChange fields on a task purpose.
outreach_update_ teamChange fields on a team.
outreach_update_ templateChange fields on a template.
outreach_update_ webhookChange fields on a webhook.
outreach_create_ content_ category_ membershipCreate a content category membership.
outreach_create_ favoriteCreate a favorite.
outreach_create_ sequence_ stepCreate a sequence step.
outreach_create_ userCreate an user.
outreach_delete_ callDelete a call.
outreach_delete_ content_ category_ membershipDelete a content category membership.
outreach_delete_ favoriteDelete a favorite.
outreach_get_ api_ infoRead the API root: the current app, token and organization.
outreach_get_ callRead one call by id.
outreach_get_ content_ category_ membershipRead one content category membership by id.
outreach_get_ favoriteRead one favorite by id.
outreach_get_ schemaList every resource this organization has, custom objects included.
outreach_get_ sequence_ stepRead one sequence step by id.
outreach_get_ userRead one user by id.
outreach_list_ content_ category_ membershipsList content category memberships.
outreach_list_ custom_ field_ typesList every custom field (customN) on standard objects, with the label, type, options and limits an administrator set.
outreach_list_ favoritesList favorites.
outreach_update_ sequence_ stepChange fields on a sequence step.
outreach_update_ userChange fields on an user.
outreach_create_ compliance_ requestCreate a compliance request.
outreach_create_ content_ category_ ownershipCreate a content category ownership.
outreach_create_ kaia_ voice_ importCreate a kaia voice import.
outreach_create_ mailingCreate a mailing.
outreach_delete_ content_ category_ ownershipDelete a content category ownership.
outreach_get_ batch_ itemRead one batch item by id.
outreach_get_ compliance_ requestRead one compliance request by id.
outreach_get_ eventRead one event by id.
outreach_get_ kaia_ recordingRead one kaia recording by id.
outreach_get_ mail_ aliasRead one mail alias by id.
outreach_get_ org_ settingRead one org setting by id.
outreach_get_ task_ priorityRead one task priority by id.
outreach_list_ audit_ logsList audit logs.
outreach_list_ batch_ itemsList batch items.
outreach_list_ compliance_ requestsList compliance requests.
outreach_list_ content_ category_ ownershipsList content category ownerships.
outreach_list_ dutiesList duties.
outreach_list_ eventsList events.
outreach_list_ mail_ aliasesList mail aliases.
outreach_list_ task_ prioritiesList task priorities.
outreach_update_ org_ settingChange fields on an org setting.
Authorize once, then an endpoint your client signs into. Nothing to deploy, and nothing to install on the Outreach side.
If PopMCP shows only a Sign in with Outreach button, click it and approve. If it asks for a Client ID and secret, an Outreach org admin creates an app at developers.outreach.io/apps, adds PopMCP's redirect URI and the scopes under API access, and enters the app's Development credentials in PopMCP. Then sign in and approve.
Your app's Client ID••••••••••••3f7ayour-outreach-valueChanging or deleting records, adding people to sequences and sending email are writes and wait until an owner or admin allows write actions; new connections start read-only. Outreach's own permissions for the person who signed in still apply. A bulk action with no filter or list of ids is refused, because it would otherwise run on every record.
Drop the PopMCP URL into Claude, ChatGPT, Claude Code, Codex or any other supported client. It signs in through PopMCP with OAuth, so your Outreach credential never leaves the server.
app.popmcp.com/mcpAsk for something harmless before the agent changes anything. Writes run as soon as it calls them, so confirm it reads the right account first.
Which of my active sequences gets the best reply rate, and which step loses people?
outreach_list_sequencesok
Then just ask for the work
“Which of my active sequences gets the best reply rate, and which step loses people?”
“I have a call with ada@acme.com in ten minutes. What should I know?”
“What are my open tasks, overdue first, and who are they about?”
“Add these five prospects to the Q4 outbound sequence and tell me if any of them fail”
“Add Grace Hopper at Acme as a prospect, unless she is already in Outreach”
“Log my call with Ada as completed and snooze the follow-up task to Friday”
One hosted endpoint, registered once per client. The same tools and the same permissions, whichever window the request comes from.
Add the PopMCP URL under Customize → Connectors and the tools appear in every chat.
The same endpoint, registered in the browser. Nothing to install on the machine you are working from.
Register PopMCP as a custom connector, then let ChatGPT read and update the account.
Wire the endpoint into Codex or the Codex CLI when a task needs live business context, not a fixture.
Register the remote MCP server in OpenCode's config for terminal-first and scripted agent runs.
Add PopMCP as an MCP server in Z.ai's desktop app and work the account from the same window.
FAQ
What teams ask before putting Outreach behind an AI client.
An Outreach login. Until PopMCP's own Outreach app is switched on, you connect through an app your organization owns: an Outreach org admin creates it at developers.outreach.io/apps in a few minutes, with no approval from Outreach. Its Development credentials work for up to 10 people in your organization. For more, publish it as Internal, which has no review.
Yours. A connection is one person in one Outreach organization, and every call acts as them, so your Outreach profile still applies. A call can be refused for that reason even when the connection holds the right scope, and the AI is told which of the two it was.
Yes, once write actions are allowed: adding a prospect to an active sequence starts its automation, and a scheduled mailing goes out. Connections start read-only, and these tools tell the AI to confirm with you first. Each prospect added gets its own result, so one failure does not hide the others.
Outreach runs a bulk action on all records when nothing narrows it. PopMCP refuses such a call unless it names a filter or a list of ids, or says outright that everything is meant. Most bulk actions also wait in a confirming state until the AI confirms them.
Yes. outreach_describe_resource says what custom1 to custom150 mean in your organization, as well as which fields can be written, filtered and sorted. Custom object records can be listed, read, created, changed and deleted by the object's internal name.
Outreach's sign-ins last 14 days without use, so a connection nobody has used for that long lapses and needs signing in again. Using it keeps it alive. Removing the person's access, or changing the app's secret, ends it too.
Outreach's server offers a smaller set of tools of its own design and has to be enabled on your instance, and it includes asking Outreach's AI a question about an account. PopMCP covers every operation in Outreach's REST API, such as bulk actions, imports, mailboxes, templates, webhooks and custom objects, through the one PopMCP URL your other connectors use.
No. PopMCP hosts it and gives you a Streamable HTTP MCP URL. There is nothing to deploy, no callback URL to register, and no infrastructure to keep running or patch.
Any client that supports a remote Streamable HTTP MCP server: Claude Desktop, Claude Web, Claude Code, ChatGPT custom connectors, Codex and the Codex CLI, OpenCode and Z.ai's ZCode, as well as editors such as Cursor, Windsurf and Zed. Your client signs in to PopMCP with OAuth; the provider credential never leaves the server.
Connect Outreach in PopMCP first, then run claude mcp add --transport http popmcp https://app.popmcp.com/mcp in a terminal. Inside Claude Code, run /mcp and sign in to PopMCP in the browser window it opens, ticking Outreach on the consent screen. The Outreach tools are then available in that session, and no Outreach credential is stored on your machine.
Loading 267 tool definitions into every conversation burns context before the work starts. PopMCP loads a curated 41-tool set covering the everyday workflows and keeps the rest searchable, so your AI pulls a specialist tool only when a task needs it. Every tool stays searchable, and on Scale the owner can load the full catalog for a teammate's connection.
A tool is something your AI calls, and there are 267 here. A trigger is something PopMCP watches for you: 33 Outreach events that can start work on the PopMCP side. Triggers never enter your AI client's context, and none of them ask you to paste a callback URL into Outreach.
Launch a hosted MCP endpoint for Outreach, keep tool access under control, and start testing real workflow prompts right away.