Outreach MCP server

Prebuilt SnapLogic agentic-tool pipelines that let an LLM read from and act on Outreach, callable as MCP tools via Pipeline Execute. Published in the SnapLogic pattern catalog.

Overview

This tool pack lets an agent query, create, update, and delete any Outreach record type, including prospects, accounts, sequences, tasks, and calls, by naming the resource type at runtime. A dedicated Kaia call intelligence tool also lets an agent fetch and read the full transcript of a recorded call.

For setup instructions, see SnapLogic MCP Server quickstart.

Example Prompts

  • Add Jane Smith, VP Sales, [email protected] as a new prospect on account 123
  • Create an account in Outreach for Contoso Ltd
  • Add a task in Outreach to follow up with this prospect next week
  • Create a new prospect record for the contact I just mentioned
  • Delete prospect 42 from Outreach
  • Remove the duplicate account record 1075
  • Get rid of that test prospect I created earlier
  • Get the transcript for Kaia recording 12345
  • Summarise what was discussed on Kaia call 12345
  • What next steps were agreed on in recording 12345?

Tools

Tool Name Functions
OutreachCreateRecord Create a record of any Outreach resource type from an attributes and relationships map.
OutreachDeleteRecord Delete an Outreach record by resource type and id.
OutreachGetKaiaTranscript Fetch the transcript and metadata for a Kaia call recording by id.
OutreachGetRecord Fetch a single Outreach record by resource type and id.
OutreachQuery List records of any Outreach resource type with filter, sort, sparse fields, include and paging.
OutreachUpdateRecord Partially update an existing Outreach record by resource type and id.

Set up the MCP Server tools

  1. Download outreach_tools.zip.
  2. In SnapLogic Designer, open the target project space (or create one), then choose Import Project / Import Pipelines and select the downloaded outreach_tools.zip. Designer unpacks each pipeline into the project.
  3. Attach the required account to the connectivity snaps (see Connection Setup).
  4. Expose the project as an MCP server — each pipeline becomes a tool named after its label. New to this? Start with the MCP quickstart, then use the MCP Server Pipeline Builder to generate the server from the imported pipelines.

Configure account

Attach an API Suite account (OAuth 2.0 or Bearer token) to the HTTP Client snap in Designer after import.

These pipelines ship without credentials by design — attach a valid account in Designer before the tools will execute.

See the SnapLogic account documentation for this connector: API Suite Account Configuration.

Important: These pipelines ship without credentials by design — attach a valid account in Designer before the tools will execute. Credentials live in the SnapLogic account store, never in the pipeline JSON.

OutreachCreateRecord

Creates a new record of any Outreach resource type from an attributes map and optional relationships. Use it when the user wants to add a prospect, account, task, or other object to Outreach.

Parameter Type Default Description
resource_type* string

Outreach resource type to create, e.g. prospects, accounts, tasks.

attributes* object

Attribute map for the new record, e.g. {firstName, lastName, emails, title}.

relationships object

JSON:API relationships map linking the new record to existing ones, e.g. {account: {data: {type: 'account', id: '123'}}}.

* Required parameter.

Try asking:

  • Add Jane Smith, VP Sales, [email protected] as a new prospect on account 123
  • Create an account in Outreach for Contoso Ltd
  • Add a task in Outreach to follow up with this prospect next week
  • Create a new prospect record for the contact I just mentioned

OutreachDeleteRecord

Permanently deletes an Outreach record by resource type and ID. Use it to remove duplicates or test records the user explicitly identifies.

Parameter Type Default Description
resource_type* string

Outreach resource type the record belongs to, e.g. prospects, accounts.

id* string

Numeric id of the record to delete.

* Required parameter.

Try asking:

  • Delete prospect 42 from Outreach
  • Remove the duplicate account record 1075
  • Get rid of that test prospect I created earlier

OutreachGetKaiaTranscript

Fetches the transcript and metadata for a Kaia call recording by ID. Use it to summarise a call, extract action items, or answer questions about what was discussed.

Parameter Type Default Description
id* string

Numeric id of the Kaia recording whose transcript should be fetched.

* Required parameter.

Try asking:

  • Get the transcript for Kaia recording 12345
  • Summarise what was discussed on Kaia call 12345
  • What next steps were agreed on in recording 12345?
  • Pull the transcript for that call and tell me who spoke the most

OutreachGetRecord

Fetches a single Outreach record by resource type and ID, with optional sparse fieldset and related resource side-loading. Use it when the user wants full detail on a specific prospect, account, sequence, or call.

Parameter Type Default Description
resource_type* string

Outreach resource type the record belongs to, e.g. prospects, accounts, sequences.

id* string

Numeric id of the record to fetch.

fields string

Comma-separated sparse fieldset to return instead of the full attribute set.

include string

Comma-separated related resources to side-load, e.g. account.

* Required parameter.

Try asking:

  • Get me the full details for prospect 42
  • Show account 1075 and include its related records
  • Pull sequence 88 but only the name and description fields
  • Look up call record 9231 in Outreach

OutreachQuery

Lists records of any Outreach resource type with filtering, sorting, sparse fieldsets, related-resource side-loading, and paging. Use it whenever the user asks to show or list something in Outreach and does not already have a specific record ID.

Parameter Type Default Description
resource_type* string

Outreach resource collection to list, e.g. prospects, accounts, sequences, mailings, calls, tasks.

filter string

JSON:API filter expression appended to the query string, e.g. filter[emails][email protected]. Omit to list unfiltered.

sort string

Field to sort by; prefix with '-' for descending, e.g. -updatedAt.

fields string

Comma-separated sparse fieldset for the requested resource type, e.g. firstName,lastName,emails.

include string

Comma-separated related resources to side-load in the response, e.g. account.

page_limit string 50

Maximum records per page (default 50).

page_offset string 0

Zero-based offset into the result set, for paging (default 0).

* Required parameter.

Try asking:

  • Show me the 10 most recently updated prospects
  • Find the prospect whose email is [email protected]
  • List our active sequences sorted by name
  • Pull the next 50 accounts after the first page
  • Get prospects with just their first name, last name, title and emails, and include the account they belong to

OutreachUpdateRecord

Partially updates an existing Outreach record by resource type and ID, sending only the fields you supply. Use it to correct a field, retag a prospect, or reassign a record to a different related object.

Parameter Type Default Description
resource_type* string

Outreach resource type the record belongs to, e.g. prospects, accounts.

id* string

Numeric id of the record to update.

attributes* object

Map of the attributes to change; unlisted attributes are left untouched.

relationships object

JSON:API relationships map, to repoint the record at different related records.

* Required parameter.

Try asking:

  • Change prospect 42's title to SVP Sales
  • Tag this prospect as enterprise and priority
  • Reassign prospect 42 to account 900
  • Update the account name on record 1075