Source MCP

The attribution data layer for your agents to drive pipeline

Connect the MCP in Claude or ChatGPT, sign up free, install the pixel, then ask pipeline questions. Eight tools on one remote server at https://api.source.app/mcp.

At a glance

Server URL
https://api.source.app/mcp
Transport
Streamable HTTP
Auth
OAuth 2.1 with PKCE (recommended), or a read-only API key as a Bearer token
OAuth scopes
data:read, plus offline_access for refresh tokens
Tools
ask, run_sql, describe_data, list_websites, configure_funnel, get_pixel_installation_guide, get_funnel_configuration_guide, feedback
Access
Read-only. Scoped to the websites you approve. Each API key covers one website
Query dialect
BigQuery standard SQL, SELECT only
Requires
A Source account. After you connect, your agent can install the pixel with get_pixel_installation_guide
Listed in
Claude Connectors Directory (Community listing, added Oct 16, 2026)
Authentication

Sign in with OAuth, or use a key

Add https://api.source.app/mcp in any client that supports OAuth for remote MCP servers. You will be sent to Source to sign in and approve access. No key to copy. For clients and scripts that take a header, create a key in Settings, API keys. It is shown once.

--header "Authorization: Bearer YOUR_KEY"Copy
For builders
Authorization endpoint
https://dash.source.app/oauth/authorize
Token endpoint
https://be.source.app/oauth/token
Registration
https://be.source.app/oauth/register
Revocation
https://be.source.app/oauth/revoke
PKCE
S256
Resource metadata
https://api.source.app/.well-known/oauth-protected-resource
Errors
401 missing_bearer_token (no header), 401 invalid_api_key (unknown or revoked key)
Install

Add Source to your client

Before you connect

Start by connecting Source in Claude or ChatGPT. You can create a free account when you sign in, then have your agent install the pixel. Client steps are below.

Step 1

Connect in Claude or ChatGPT

Add https://api.source.app/mcp in Claude, ChatGPT, Cursor or any MCP client, then sign in to Source and approve access.

Step 2

Sign up free

If you do not have a Source account yet, create one at dash.source.app/signup, or when you approve access. Free to start, no credit card.

Step 3

Install the pixel

Ask your agent to call get_pixel_installation_guide and follow the steps for your site. First data shows up after the next refresh (nightly on Free).

You can also say: install the Source pixel on my site, using get_pixel_installation_guide.

Claude, ConnectorsCopy
1. Open Customize, then Connectors.
2. Search for Source and choose Connect.
3. Sign in to Source and approve access.

On Team and Enterprise plans, an Owner adds the
connector for the organization first.

Not in the directory view? Add a custom connector
with https://api.source.app/mcp
ChatGPTCopy
Add https://api.source.app/mcp as a custom connector and sign in.
Cursor, mcp.json with an API keyCopy
{
  "mcpServers": {
    "source": {
      "url": "https://api.source.app/mcp",
      "headers": {
        "Authorization": "Bearer ${env:SOURCE_API_KEY}"
      }
    }
  }
}
Claude Code, terminalCopy
claude mcp add --scope user --transport http source https://api.source.app/mcp \
  --header "Authorization: Bearer YOUR_KEY"
Grok CLI, terminalCopy
grok mcp add --transport http source https://api.source.app/mcp \
  --header "Authorization: Bearer YOUR_KEY"

On grok.com: Add https://api.source.app/mcp as a custom connector and sign in.
Any MCP clientCopy
Server URL   https://api.source.app/mcp
Transport    Streamable HTTP
Auth         OAuth 2.1 with PKCE, or
             --header "Authorization: Bearer YOUR_KEY"

{
  "mcpServers": {
    "source": {
      "type": "http",
      "url": "https://api.source.app/mcp",
      "headers": { "Authorization": "Bearer YOUR_KEY" }
    }
  }
}
Cursor, mcp.json (~/.cursor/mcp.json or .cursor/mcp.json)Copy
{
  "mcpServers": {
    "source": {
      "url": "https://api.source.app/mcp"
    }
  }
}

After you connect, start a new session. You should see eight tools. If the pixel is not on your site yet, ask your agent to call get_pixel_installation_guide. Then ask a pipeline question.

Tools

Eight tools

Prefer ask for most questions. Use describe_data before writing SQL for run_sql. Call list_websites first if the credential covers more than one website. Call get_pixel_installation_guide to install the pixel, get_funnel_configuration_guide and configure_funnel to map your CRM stages, and feedback if an answer looks wrong.

ask

Ask a question about your attribution data. Returns the answer, the SQL behind it, the result table and follow-up questions. Pass conversation_id from a previous result to follow up.

Parameters
website_id        string, optional when the credential
                  covers one website
question          string, required
conversation_id   string, optional, from a previous ask
describe_data

Lists your tables and columns, with notes on which table answers which question. Call it before writing SQL for run_sql.

Parameters
website_id   string, optional when the credential
             covers one website
run_sql

Read-only BigQuery standard SQL. SELECT only. Unqualified table names resolve to your website's data. Returns up to 100 rows by default, 1,000 at most.

Parameters
website_id   string, optional
sql          string, required. BigQuery standard SQL,
             SELECT statements only
max_rows     integer, optional. Default 100, cap 1000
Example query
SELECT channel, SUM(visits) AS visits
FROM agg_visit_days
WHERE date >= DATE_SUB(CURRENT_DATE(), INTERVAL 29 DAY)
GROUP BY channel
ORDER BY visits DESC
LIMIT 5
Response
{
  "bytes_processed": 13934955,
  "columns": [{"name":"channel","type":"STRING"},{"name":"visits","type":"INTEGER"}],
  "row_count": 5,
  "rows": [["DIRECT",1088],["PAID_SOCIAL",227],["ORGANIC_SEARCH",207],
           ["PAID_SEARCH",174],["OTHER",27]],
  "truncated": false
}
list_websites

The websites this credential can query, with the website_id each tool takes.

Parameters
No inputs
feedback

Flag an ask answer that looks wrong. Pass the conversation_id from that ask and a short note.

Parameters
website_id        string, optional
conversation_id   string, required. From the ask
                  whose answer was wrong
note              string, required. What was wrong
get_pixel_installation_guideAvailable now

Get install steps for the Source pixel on your site. Call this after you connect, then follow the steps for your site builder.

Schema

What your agent can query

25 tables. Here are the ones agents use most.

TableWhat it holds
agg_visit_daysDaily visits per channel, bots excluded
dim_contactOne row per contact, with funnel stage and conversion date
dim_sessionEvery session with channel, campaign, UTMs and bot risk
fact_session_attributionOne row per touch, with six attribution weights
fact_campaignDaily campaign spend, clicks, platform conversions and Source conversions
fact_funnel_eventContacts entering each CRM stage
fact_revenuePayments
fact_landing_pageDaily visits and conversions per page

Your agent can list all 25 tables and their columns with describe_data.

Attribution models

Six models on every touch

First touch
first_touch_weight
Last touch
last_touch_weight
Position based
position_based_weight
Linear
linear_weight
Time decay (exponential)
time_decay_exp_weight
Time decay (linear)
time_decay_linear_weight
Example prompts

Ask about pipeline, then check the SQL

PromptWhat comes back
"Which campaigns drove pipeline in the last 30 days?"Campaigns ranked by pipeline influenced, plus the SQL
"Which paid channels produced the most pipeline per dollar last month, and where would you move budget?"A channel and campaign table based on Source attribution
"For closed-won deals last quarter, compare first-touch and last-touch credit by channel."Credit per channel under each model, and where they disagree
"Where do Meta and Google report more conversions than Source tracked?"Platform vs Source conversions per campaign
Freshness and limits

How fresh the data is

Free

Nightly refresh, 3 months of history

Usage-based

1x to 24x a day, 1 to 24 months of history

Custom

Custom refresh, unlimited retention

Security

Read-only, scoped, revocable

Agents can query. They cannot change or delete data. A connected client sees only the websites you approved. Revoke access any time in Settings, API keys, Connected apps. SOC 2 Type II and ISO 27001.

SOC 2 Type IIISO 27001

Connect Source and start asking about pipeline