Overview
The Outreach integration lets users connect their Outreach workspace so Alysio can list and query accounts, prospects, stages, opportunities, tasks, users, calls, and emails on their behalf. Users can ask Alysio to find accounts or prospects, list stages and opportunities, view tasks and users, and get call and email activity—all in natural language. The integration uses the user’s connected Outreach credential and is read-only (list endpoints only); it does not create, update, or delete records in Outreach. Pagination uses page[size] and the cursor in links.next (page[after]) from the API response.
Supported capabilities / objects
- Accounts — List accounts with filtering (e.g. region, locality, industry, website), sorting, and pagination.
- Prospects — List prospects with filtering (account, stage, createdAt, updatedAt), sorting, and pagination. Use outreach_list_accounts for account ID and outreach_list_stages for stage ID.
- Stages — List stages with filtering (name, isClosed, dates), sorting, and pagination.
- Opportunities — List opportunities with filtering (account, stage, prospect, dates), sorting, and pagination.
- Tasks — List tasks with filtering (account, call, opportunity, prospect, dates), sorting, and pagination.
- Users — List users with filtering (name, email, dates), sorting, and pagination.
- Calls — List calls with filtering (user, prospect, opportunity, task, dates), sorting, and pagination. Use outreach_list_users for user ID.
- Emails (mailings) — List emails with filtering (sender/user, prospect, opportunity, call, task, dates), sorting, and pagination.
Authentication
Method: OAuth 2.0 (Outreach). The MCP sends requests using a Bearer token and a credential ID that identifies the user’s connected Outreach account. Requests are sent to the Outreach API (https://api.outreach.io/api/v2).
Redirect URI: Configured when the Outreach integration is set up in Alysio. The Outreach OAuth app must allow this redirect URI.
Token handling
- OAuth tokens for the connected Outreach account are stored securely and refreshed automatically.
- Each user/tenant has their own credential; the MCP sends the appropriate credential ID with each request so calls are isolated per connection.
- On disconnect, that credential is no longer used and Outreach tools will not be available for that user until they reconnect Outreach.
Required scopes
accounts.all
calls.read
callDispositions.read
callPurposes.read
mailings.all
opportunities.all
opportunityProspectRoles.read
opportunityStages.read
profiles.read
prospects.read
sequences.read
sequenceStates.read
sequenceSteps.read
sequenceTemplates.read
snippets.read
stages.read
tasks.read
taskDispositions.read
taskPriorities.read
taskPurposes.read
teams.read
templates.read
users.read
Connection required: Users must connect Outreach in Alysio before Outreach tools work. If the connection is missing or expired, they may need to re-authorize in Settings → Integrations.
Pagination: For pagination, use the exact page[after] value from the links.next URL in the previous response—do not modify or hardcode it. Use page[size] to control how many records per request. Use filter[createdAt][gte]/[lte] and filter[updatedAt][gte]/[lte] for date ranges.
The Outreach MCP exposes the following tools. Users can invoke these capabilities through natural language in Alysio.
| Tool | Description | Example user prompts |
|---|
outreach_list_accounts | Lists accounts with filtering (region, locality, industry, website, dates), sorting, and pagination. | ”List our Outreach accounts”, “Find accounts by region.” |
outreach_list_prospects | Lists prospects with filtering (account, stage, createdAt, updatedAt), sorting, and pagination; use list_accounts and list_stages for IDs. | ”List prospects in this stage”, “Find prospects for account 123.” |
outreach_list_stages | Lists stages with filtering (name, isClosed, dates), sorting, and pagination. | ”List Outreach stages”, “What stages do we have?” |
outreach_list_opportunities | Lists opportunities with filtering (account, stage, prospect, dates), sorting, and pagination; use list_accounts, list_stages, list_prospects for IDs. | ”List opportunities”, “Find opportunities for this prospect.” |
outreach_list_tasks | Lists tasks with filtering (account, call, opportunity, prospect, dates), sorting, and pagination; use list_accounts, list_calls, list_opportunities, list_prospects for IDs. | ”List my tasks”, “Find tasks for this prospect.” |
outreach_list_users | Lists users with filtering (name, email, dates), sorting, and pagination. | ”List Outreach users”, “Who are our users?” (Use for user_id in calls/emails.) |
outreach_get_calls | Lists calls with filtering (user, prospect, opportunity, task, dates), sorting, and pagination; use list_users for user ID. | ”List calls for this prospect”, “Get calls from last week.” |
outreach_get_emails | Lists emails (mailings) with filtering (user, prospect, opportunity, call, task, dates), sorting, and pagination. | ”List emails to this prospect”, “Get emails from this user.” |
App Behavior
- API calls are made on-demand only when the user asks something that requires Outreach data (e.g. list accounts, prospects, opportunities, tasks, calls, emails). There is no background sync; each request triggers the relevant Outreach API call using the user’s OAuth credential.
Example flow
- User asks: “What opportunities do we have for Acme Corp?”
- Alysio routes the request to the Outreach MCP.
- The MCP may call
outreach_list_accounts to find the account ID for Acme Corp, then outreach_list_opportunities with a filter on that account ID.
- The request is sent to the Outreach API using the user’s stored OAuth credential.
- The MCP returns the opportunity list; Alysio presents the results in chat. If there are more pages, the user can ask for more and the MCP uses
page[after] from links.next.
Troubleshooting
Common issues
- Missing or expired connection — User sees errors or no Outreach data. Fix: Reconnect Outreach in Settings → Integrations (re-authorize with Outreach).
- 401 Unauthorized — Token invalid or expired. Fix: Re-authorize the integration in Settings → Integrations.
- 403 Forbidden — Insufficient OAuth scopes. Fix: Ensure the Outreach OAuth app has read scopes for the endpoints you use (accounts, prospects, stages, opportunities, tasks, users, calls, mailings).
- Pagination not working — Using a wrong or hardcoded cursor. Fix: Use the exact
page[after] value from the links.next URL in the previous response; do not modify it. Increase page[size] for more records per page.
- Empty or partial results — Filters may be too strict or IDs wrong. Fix: Use outreach_list_accounts, outreach_list_stages, outreach_list_prospects, or outreach_list_users to get valid IDs for filters; relax date or other filters if needed.
Support