Documentation Index
Fetch the complete documentation index at: https://docs.openfunnel.dev/llms.txt
Use this file to discover all available pages before exploring further.
Overview
When you connect OpenFunnel to Claude via MCP, a set of tools becomes available, and Claude will automatically pick the right one based on your question. The exact toolset depends on your account type:
Free users: Event Discovery sandbox
Free accounts get tools oriented around discovery within verticals. Everything here is about finding companies and people based on signals. There are no personal account/workspace management tools.
list_event_verticals
Browse all Event Discovery verticals available to free MCP users. Use this first to discover the vertical_id values you can search.
Returns: List of verticals with their vertical_id and metadata.
list_vertical_event_types
Browse the event types available inside one Event Discovery vertical. Use this after list_event_verticals when you want a specific event_type_id.
Parameters:
| Name | Type | Required | Description |
|---|
vertical_id | int | Yes | The vertical to inspect (from list_event_verticals) |
Returns: List of event types defined for that vertical, each with an event_type_id.
find_accounts_in_vertical
Search accounts inside one Event Discovery vertical. Use this for net-new company discovery available to free users.
Parameters:
| Name | Type | Required | Description |
|---|
vertical_id | int | Yes | The vertical to search within |
event_type_id | int | No | Filter to companies with a specific event type (from list_vertical_event_types) |
search | str | No | Free-text query (e.g. company name fragment) |
country | list[str] | No | Filter by country (one or more) |
industry | list[str] | No | Filter by industry (one or more) |
funding_stage | list[str] | No | Filter by funding stage (one or more) |
employee_count_range | list[str] | No | Filter by employee headcount range buckets |
page | int | No (default: 1) | Page number for pagination |
limit | int | No (default: 20) | Maximum accounts per page |
Returns: Paginated list of matching accounts with firmographic data and event context.
find_people_in_vertical
Search people inside one Event Discovery vertical. Use this to find contacts connected to event activity, without paid workspace data.
Parameters:
| Name | Type | Required | Description |
|---|
vertical_id | int | Yes | The vertical to search within |
event_type_id | int | No | Filter to people associated with a specific event type |
account_id | int | No | Restrict to people at a specific account |
search | str | No | Free-text query (e.g. name fragment) |
seniority | list[str] | No | Filter by seniority level (one or more) |
department | list[str] | No | Filter by department/function (one or more) |
country | list[str] | No | Filter by country (one or more) |
page | int | No (default: 1) | Page number for pagination |
limit | int | No (default: 20) | Maximum people per page |
Returns: Paginated list of matching people with their company context.
get_account_detail_in_vertical
Fetch one account plus related people and events inside a vertical. Use this when the user wants a focused drill-down after account search.
Parameters:
| Name | Type | Required | Description |
|---|
account_id | int | Yes | The account to fetch |
vertical_id | int | Yes | The vertical context |
people_limit | int | No (default: 5) | Max related people to include |
events_limit | int | No (default: 10) | Max related events to include |
Returns: Full account record with related people and event instances.
get_account_events
Fetch the event instances for one account inside a vertical. Use this to inspect why a company appears in the event dataset.
Parameters:
| Name | Type | Required | Description |
|---|
account_id | int | Yes | The account to fetch events for |
vertical_id | int | Yes | The vertical context |
event_type_id | int | No | Filter to a specific event type |
page | int | No (default: 1) | Page number for pagination |
limit | int | No (default: 20) | Maximum events per page |
Returns: Paginated list of event instances tied to the account.
get_person_events
Fetch the event instances associated with one person inside a vertical. Use this to drill into a specific person’s event activity after people search.
Parameters:
| Name | Type | Required | Description |
|---|
person_id | int | Yes | The person to fetch events for |
vertical_id | int | Yes | The vertical context |
page | int | No (default: 1) | Page number for pagination |
limit | int | No (default: 20) | Maximum events per page |
Returns: Paginated list of event instances tied to the person.
Paid users: Full workspace
Paid accounts get the full set of tools for working with your OpenFunnel database, audiences, and insights feed, plus lookalike discovery beyond your DB.
get_account_summary
Get a quick summary/overview of an account.
Parameters:
| Name | Type | Required | Description |
|---|
account_id | int | Yes | The account ID to get summary for |
Returns: Basic account info, signal counts, people count, and TOP 3 key contacts only.
get_account_full_details
Get COMPLETE account details including ALL people/contacts at the company.
Example queries:
- Who works at [company]?
- Show me all contacts at [company]
- Get me people at [company]
- List employees at [company]
- Who are the decision makers at [company]?
- Any request for people/contacts/employees at a company
Parameters:
| Name | Type | Required | Description |
|---|
account_id | int | Yes | The account ID to get full details for |
Returns: Complete account data with ALL people and ALL signals.
get_account_timeline
Get recent activity timeline for an account.
Parameters:
| Name | Type | Required | Description |
|---|
account_id | int | Yes | The account ID to get timeline for |
days | int | No (default: 30) | How many days back to look (default 30) |
signal_types | list | No (default: None) | Optional filter by signal types (hiring, socials, linkedin_engagement, job_change) |
Returns: Timeline with chronological list of events.
get_my_insights
Find out what has been happening with your accounts in the last n days.
Example queries:
- Show me what has been happening with my accounts in last n days?
- Show me net new accounts in last n days?
- Tell me more about the alerts that were sent to me today?
Parameters:
| Name | Type | Required | Description |
|---|
days | int | No (default: 1) | How many days back to look (default 1, max 30) |
limit | int | No (default: 5) | Maximum alerts to return per page (default 5) |
offset | int | No (default: 0) | Pagination offset (e.g. 0 for page 1, 5 for page 2) |
Returns: Alerts with total_alerts, has_more, and alerts list (each with embedded insights).
If no alerts exist, returns fallback insights_feed data instead.
get_insight_detail
Get full detail for a single insight. Drill down from the feed.
Example queries:
- Tell me more about this insight
- What signal triggered this alert?
- Show me the details for insight X
- Any drill-down from the insights feed
Parameters:
| Name | Type | Required | Description |
|---|
insight_id | int | Yes | The insight ID to get details for (from get_insights_feed) |
Returns: Insight details with underlying_signal and related_insights.
list_accounts
List accounts in your database with optional filters.
Parameters:
| Name | Type | Required | Description |
|---|
limit | int | No (default: 20) | Maximum accounts per page (default 20) |
offset | int | No (default: 0) | Number of accounts to skip for pagination |
is_imported | bool | No (default: None) | Filter by imported accounts (True) or discovered (False) |
is_in_crm | bool | No (default: None) | Filter by CRM presence |
Returns: List of accounts with pagination info.
list_audiences
List all audiences (saved lists) for the user.
Audiences can be either “accounts” type (primary entities are accounts) or
“people” type (primary entities are people/prospects). Use this to discover
what audiences exist before fetching their data with get_audience_data.
Returns: List of audiences with audience_id, audience_name, and audience_type.
get_audience_data
Get all members on an audience.
Use this to retrieve the members of an audience. Works for both “accounts”
and “people” audience types.
Parameters:
| Name | Type | Required | Description |
|---|
audience_id | int | Yes | The audience ID to fetch data for (from list_audiences) |
Returns: Audience metadata plus member IDs and totals for accounts and people.
lookup_company
Look up a specific company in the user’s OpenFunnel database by name or domain.
Example queries:
- Tell me about [company]
- What’s happening with [company]
- Show me [company] from OpenFunnel
- Find [company] in my accounts
- Any question about a specific company by name or domain
Parameters:
| Name | Type | Required | Description |
|---|
company_name | str | Yes | The company name or domain to look up (e.g., “Capital One”, “Stripe”, “acme.com”) |
Returns: Company summary including basic info, signal counts, and key contacts.
If multiple companies match, returns options to clarify which one.
search_by_traits
Search within your existing database for companies matching specific characteristics.
Use this to find companies in your DB matching things like:
- Industry or vertical (healthcare, fintech, etc.)
- Products or services they offer
- Technologies they use
- Business model or target market
Parameters:
| Name | Type | Required | Description |
|---|
query | str | Yes | Describe the type of companies you’re looking for |
limit | int | No (default: 25) | Maximum number of results (default 25, max 100) |
Returns: List of matching companies in your database, ranked by relevance.
search_lookalikes
Search the broader company universe (beyond your database) for net-new prospects, with optional filters for size, funding stage, and location.
Use this when you want to find companies you don’t already have, e.g.
finding lookalikes of your best customers, or expanding into new
geographies / segments.
Parameters:
| Name | Type | Required | Description |
|---|
query | str | Yes | Natural-language description of the companies to find |
limit | int | No (default: 10) | Maximum number of results (max 100) |
min_employees | int | No | Minimum employee count |
max_employees | int | No | Maximum employee count |
funding_stages | list[str] | No | Filter by funding stage, e.g. ["Seed", "Series A"] |
locations | list[str] | No | Filter by HQ country (lowercase ISO codes), e.g. ["us", "gb"] |
Returns: List of net-new companies (outside your DB) ranked by relevance.