# growth.engineer — every file > The open-source, agent-friendly catalog of go-to-market tools and workflows. Companies, the tools they make, and workflows that put tools to work. Every tool and workflow is one markdown file any agent can run: the setup, the inputs, the steps and the rules, inline. The catalog itself is markdown in a public repository, built into a static site. Site: https://growth-engineer-dlpp.vercel.app Source: https://github.com/GetBrew/growth-engineer — add a company, tool or workflow by pull request. Definitions: - **Company** (`apollo`): A vendor, open-source project or person that makes tools. Named by a permanent handle that is its URL and the first half of every tool key. A company lists the ways in it offers — MCP server, CLI, API — once, and its tools point at them. Source file: `companies//company.md`. - **Tool** (`apollo/enrich-person`): ONE function an agent can call, tied to a specific MCP tool, CLI subcommand or API endpoint. Not the product: a product with three functions is three tools. Every way in names the exact operation an agent calls. Source file: `companies//tools/.md`. - **Workflow** (`funding-signal-outbound`): Several tools in order, with the instructions that reach a result, written by a person. Up to ten steps, each naming one tool; inputs the agent asks the user for; the checks that mean it is done. A growth hack is a workflow — there is no second kind. The author is a GitHub login. Source file: `workflows/.md`. - **Tag** (`capability:enrich-contacts`): A word from the managed vocabulary that companies, tools and workflows are filtered by. Four curated namespaces — capability, motion, channel, category — plus one derived from each tool’s access: has (its ways in). Every entry carries the tags it earns: a workflow its tools’ capabilities, a company its tools’ ways in. Source file: `tags.yml`. Reading a file: - Append `.md` to any company, tool or workflow URL to get its file. - Or request a company, tool or workflow page with `Accept: text/markdown`. - `/llms.txt` lists every file, tags included; `/llms-full.txt` is every company, tool and workflow file in one document. - Or connect an MCP client to `/mcp` (Streamable HTTP, no sign-in): `search` finds entries by words and filters, `get` returns a file — a tag’s included. - Each file has a flat YAML header (ref, name, updated, …), then setup, steps and rules; the header names its relations by key. Files: 372. Each begins with a comment naming its URL, then its content as served. --- ref: tool:6sense/enrich-company name: Enrich a company company: company:6sense workflows: [] access: [api] tags: [capability:research-accounts, category:intent, has:api] docs: https://api.6sense.com/docs/#company-firmographics-api-v3 updated: 2026-09-27 --- # Enrich a company Returns a company's firmographics, such as industry, employee and revenue range, address and SIC and NAICS codes, plus its 6sense segments, found from an email or a domain. Send a form-encoded `email` or `domain`; when both are given, the email is matched first. Add `country` to get the company's `companyId` back. Each enriched record costs one 6sense Credit, and the API needs the 6sense Platform or Sales Intelligence package. Segment names appear only when they are turned on in API Settings. ## Set up Use the first option your agent supports. ### API (official) - Base URL: https://api.6sense.com - Endpoint: `POST /v1/enrichment/company` - Auth: send the header `Authorization: Token $SIXSENSE_API_KEY` - Get a key: https://abm.6sense.com/login?redirect=%2Fsettings%2Fintegration%2Fapitokenmanagement - Docs: https://api.6sense.com/docs/ Before doing anything else, make one read-only call to confirm access. ## Rules - Ask the user before anything that sends messages, costs money, or changes data. - Never print API keys. --- ref: tool:6sense/enrich-people name: Enrich people company: company:6sense workflows: [] access: [api] tags: [capability:enrich-contacts, category:intent, has:api] docs: https://api.6sense.com/docs/#people-enrichment-http-request-v2 updated: 2026-09-27 --- # Enrich people Returns the email, phone numbers, job title, level and company of up to 25 people per call, each matched from an email, a LinkedIn URL or a 6sense people ID. Send a JSON array of up to 25 queries, each with one of `email`, `linkedInUrl` or `peopleId`; the `referenceKeys` you add come back with each match. Every matched person costs one 6sense Credit, and people on your exclusion list are left out. Needs the People Enrichment API add-on and allows up to 20 queries per second. ## Set up Use the first option your agent supports. ### API (official) - Base URL: https://api.6sense.com - Endpoint: `POST /v2/enrichment/people` - Auth: send the header `Authorization: Token $SIXSENSE_API_KEY` - Get a key: https://abm.6sense.com/login?redirect=%2Fsettings%2Fintegration%2Fapitokenmanagement - Docs: https://api.6sense.com/docs/ Before doing anything else, make one read-only call to confirm access. ## Rules - Ask the user before anything that sends messages, costs money, or changes data. - Never print API keys. --- ref: tool:6sense/search-people name: Search for people company: company:6sense workflows: [] access: [api] tags: [capability:build-audience, category:intent, has:api] docs: https://api.6sense.com/docs/#people-search-http-request-v2 updated: 2026-09-27 --- # Search for people Returns people in 6sense's B2B database who match company domain, job title, level, function, location or industry filters, without their emails or phone numbers. Send at least one of `domain`, `industryNAICS`, `email`, `linkedinUrl`, `country` or `jobTitle`, each a list of up to 10 values. Filters combine as one flat AND of ORs, such as (Product Manager OR Engineer) AND (US OR Canada), with no nesting. Page with `pageNo` and `pageSize` (up to 1,000). Each match says which contact data 6sense holds (`hasEmail`, `emailConfidence`, `hasPhone`), and `includeInSystemFlag=true` marks people already in your CRM or MAP. Search costs no credits; enrich the matches by their people ID to get emails and phone numbers. ## Set up Use the first option your agent supports. ### API (official) - Base URL: https://api.6sense.com - Endpoint: `POST /v2/search/people` - Auth: send the header `Authorization: Token $SIXSENSE_API_KEY` - Get a key: https://abm.6sense.com/login?redirect=%2Fsettings%2Fintegration%2Fapitokenmanagement - Docs: https://api.6sense.com/docs/ Before doing anything else, make one read-only call to confirm access. ## Rules - Ask the user before anything that sends messages, costs money, or changes data. - Never print API keys. --- ref: tool:airtable/create-records name: Create records company: company:airtable workflows: [] access: [mcp, api] tags: [capability:manage-tables, category:database, has:api, has:mcp] docs: https://airtable.com/developers/web/api/create-records updated: 2026-09-27 --- # Create records Creates one or more records in a table from their field values and returns each new record with its id. Write in batches of up to 10 records per request by default; the limit varies by account. The API keys fields by name or id and, with `typecast: true`, converts strings to each field's type; the MCP tool takes field ids. Address the table by its id rather than its name so a rename doesn't break the call. ## Set up Use the first option your agent supports. ### MCP (official, remote) Add this server to your agent's MCP settings, then sign in when asked. ```json { "mcpServers": { "airtable": { "url": "https://mcp.airtable.com/mcp" } } } ``` Call the MCP tool `create_records_for_table`. Server URL: https://mcp.airtable.com/mcp ### API (official) - Base URL: https://api.airtable.com - Endpoint: `POST /v0/{baseId}/{tableIdOrName}` - Auth: send the header `Authorization: Bearer $AIRTABLE_TOKEN` - Get a key: https://airtable.com/create/tokens - Docs: https://airtable.com/developers/web/api/introduction Before doing anything else, make one read-only call to confirm access. ## Rules - Ask the user before anything that sends messages, costs money, or changes data. - Never print API keys. --- ref: tool:airtable/list-records name: List records company: company:airtable workflows: [] access: [mcp, cli, api] tags: [capability:manage-tables, category:database, has:api, has:cli, has:mcp] docs: https://airtable.com/developers/web/api/list-records updated: 2026-09-27 --- # List records Returns a table's records a page at a time, filtered, sorted and cut down to the fields you ask for. The API returns up to 100 records per page with an `offset` for the next one; narrow it with `filterByFormula`, `view`, `sort` and `fields`. When a formula makes the URL too long, `POST /v0/{baseId}/{tableIdOrName}/listRecords` takes the same parameters in the body. The MCP tool and the CLI filter with structured JSON in `filters`, not formulas. Fields with empty values are left out of each record. ## Set up Use the first option your agent supports. ### MCP (official, remote) Add this server to your agent's MCP settings, then sign in when asked. ```json { "mcpServers": { "airtable": { "url": "https://mcp.airtable.com/mcp" } } } ``` Call the MCP tool `list_records_for_table`. Server URL: https://mcp.airtable.com/mcp ### CLI (official) Install the command, then confirm it runs. ```sh npm install -g @airtable/mcp-cli airtable-mcp --version ``` Run `airtable-mcp list-records-for-table`. Set `$AIRTABLE_TOKEN` in your environment first (get a key: https://airtable.com/create/tokens). ### API (official) - Base URL: https://api.airtable.com - Endpoint: `GET /v0/{baseId}/{tableIdOrName}` - Auth: send the header `Authorization: Bearer $AIRTABLE_TOKEN` - Get a key: https://airtable.com/create/tokens - Docs: https://airtable.com/developers/web/api/introduction Before doing anything else, make one read-only call to confirm access. ## Rules - Ask the user before anything that sends messages, costs money, or changes data. - Never print API keys. --- ref: tool:airtable/search-records name: Search records company: company:airtable workflows: [] access: [mcp, cli] tags: [capability:manage-tables, category:database, has:cli, has:mcp] docs: https://airtable.com/developers/agents/mcp/tools updated: 2026-09-27 --- # Search records Finds the records in a table whose searchable fields match a keyword, such as a company name. Use it for free-text or fuzzy lookups on large tables; to match exact field values, filter with `list_records_for_table` instead. Pass `ALL_SEARCHABLE_FIELDS` as the fields to search every indexed field. Date, rating, checkbox and button fields are not searchable. ## Set up Use the first option your agent supports. ### MCP (official, remote) Add this server to your agent's MCP settings, then sign in when asked. ```json { "mcpServers": { "airtable": { "url": "https://mcp.airtable.com/mcp" } } } ``` Call the MCP tool `search_records`. Server URL: https://mcp.airtable.com/mcp ### CLI (official) Install the command, then confirm it runs. ```sh npm install -g @airtable/mcp-cli airtable-mcp --version ``` Run `airtable-mcp search-records`. Set `$AIRTABLE_TOKEN` in your environment first (get a key: https://airtable.com/create/tokens). Before doing anything else, make one read-only call to confirm access. ## Rules - Ask the user before anything that sends messages, costs money, or changes data. - Never print API keys. --- ref: tool:airtable/update-records name: Update records company: company:airtable workflows: [] access: [mcp, cli, api] tags: [capability:manage-tables, category:database, has:api, has:cli, has:mcp] docs: https://airtable.com/developers/web/api/update-multiple-records updated: 2026-09-27 --- # Update records Changes only the fields you pass on existing records, leaving the rest as they were, and returns the updated records. A `PUT` to the same path clears every field you leave out, so use `PATCH`. On the API, set `performUpsert` with `fieldsToMergeOn`, such as an email field, to update the record that matches or create one when none does; the request fails when several records match. The MCP tool and the CLI update records by id and take field ids. ## Set up Use the first option your agent supports. ### MCP (official, remote) Add this server to your agent's MCP settings, then sign in when asked. ```json { "mcpServers": { "airtable": { "url": "https://mcp.airtable.com/mcp" } } } ``` Call the MCP tool `update_records_for_table`. Server URL: https://mcp.airtable.com/mcp ### CLI (official) Install the command, then confirm it runs. ```sh npm install -g @airtable/mcp-cli airtable-mcp --version ``` Run `airtable-mcp update-records-for-table`. Set `$AIRTABLE_TOKEN` in your environment first (get a key: https://airtable.com/create/tokens). ### API (official) - Base URL: https://api.airtable.com - Endpoint: `PATCH /v0/{baseId}/{tableIdOrName}` - Auth: send the header `Authorization: Bearer $AIRTABLE_TOKEN` - Get a key: https://airtable.com/create/tokens - Docs: https://airtable.com/developers/web/api/introduction Before doing anything else, make one read-only call to confirm access. ## Rules - Ask the user before anything that sends messages, costs money, or changes data. - Never print API keys. --- ref: tool:amplitude/create-cohort name: Create and sync a cohort company: company:amplitude workflows: [] access: [mcp] tags: [capability:build-audience, category:product-analytics, has:mcp] docs: https://amplitude.com/docs/amplitude-ai/amplitude-mcp updated: 2026-09-26 --- # Create and sync a cohort Creates or reads a cohort of users, checks membership, exports it as CSV, or syncs it to a destination such as Braze, Iterable or a webhook. A sync previews the export and asks for confirmation before it sends anything to the destination. ## Set up Use the first option your agent supports. ### MCP (official, remote) Add this server to your agent's MCP settings, then sign in when asked. ```json { "mcpServers": { "amplitude": { "url": "https://mcp.amplitude.com/mcp" } } } ``` Call the MCP tool `use_amplitude_cohorts`. Server URL: https://mcp.amplitude.com/mcp Before doing anything else, make one read-only call to confirm access. ## Rules - Ask the user before anything that sends messages, costs money, or changes data. - Never print API keys. --- ref: tool:amplitude/get-user-activity name: Get user activity company: company:amplitude workflows: [] access: [mcp] tags: [capability:track-product-usage, category:product-analytics, has:mcp] docs: https://amplitude.com/docs/amplitude-ai/amplitude-mcp updated: 2026-09-26 --- # Get user activity Returns user profiles, user properties and activity timelines from an Amplitude project. ## Set up Use the first option your agent supports. ### MCP (official, remote) Add this server to your agent's MCP settings, then sign in when asked. ```json { "mcpServers": { "amplitude": { "url": "https://mcp.amplitude.com/mcp" } } } ``` Call the MCP tool `get_amp_user_data`. Server URL: https://mcp.amplitude.com/mcp Before doing anything else, make one read-only call to confirm access. ## Rules - Ask the user before anything that sends messages, costs money, or changes data. - Never print API keys. --- ref: tool:amplitude/query-analytics name: Query product analytics company: company:amplitude workflows: [workflow:product-qualified-expansion] access: [mcp] tags: [capability:track-product-usage, category:product-analytics, has:mcp] docs: https://amplitude.com/docs/amplitude-ai/amplitude-mcp updated: 2026-09-27 --- # Query product analytics Runs an ad-hoc event segmentation, funnel or retention query and returns the results. Call `get_amplitude_context` with the project id first, so the query uses the project's time zone and metric definitions. The tool works in two modes: discover what can be queried, then execute the query. ## Set up Use the first option your agent supports. ### MCP (official, remote) Add this server to your agent's MCP settings, then sign in when asked. ```json { "mcpServers": { "amplitude": { "url": "https://mcp.amplitude.com/mcp" } } } ``` Call the MCP tool `query_amplitude_data`. Server URL: https://mcp.amplitude.com/mcp Before doing anything else, make one read-only call to confirm access. ## Rules - Ask the user before anything that sends messages, costs money, or changes data. - Never print API keys. --- ref: tool:amplitude/query-chart name: Query a saved chart company: company:amplitude workflows: [] access: [mcp, cli, api] tags: [capability:track-product-usage, category:product-analytics, has:api, has:cli, has:mcp] docs: https://amplitude.com/docs/apis/developer/analytics/query-chart updated: 2026-09-26 --- # Query a saved chart Returns the computed results of a saved event segmentation, sessions, funnel or retention chart for a time range. Without a time range the query uses the chart's saved range, or the last 30 days. Other chart types return `422` with `unsupported_chart_type`. On the CLI and the API the token needs the `analytics:read` scope. ## Set up Use the first option your agent supports. ### MCP (official, remote) Add this server to your agent's MCP settings, then sign in when asked. ```json { "mcpServers": { "amplitude": { "url": "https://mcp.amplitude.com/mcp" } } } ``` Call the MCP tool `get_amplitude_charts`. Server URL: https://mcp.amplitude.com/mcp ### CLI (official) Install the command, then confirm it runs. ```sh npm install -g @amplitude/developer-cli amp --version ``` Run `amp charts query`. ### API (official) - Base URL: https://developer-api.amplitude.com - Endpoint: `POST /v1/projects/{project_id}/charts/{chart_id}/query` - Auth: OAuth; sign in when the agent asks - Docs: https://amplitude.com/docs/apis/developer Before doing anything else, make one read-only call to confirm access. ## Rules - Ask the user before anything that sends messages, costs money, or changes data. - Never print API keys. --- ref: tool:anthropic/create-message name: Create a message company: company:anthropic workflows: [workflow:funding-signal-outbound, workflow:executive-job-change, workflow:champion-job-change-loop, workflow:resend-to-unopened] access: [cli, api] tags: [capability:write-copy, category:ai-model, has:api, has:cli] docs: https://platform.claude.com/docs/en/api/messages/create updated: 2026-09-27 --- # Create a message Returns Claude's next message for a prompt or conversation, such as a drafted email or a label for a record. Send `anthropic-version: 2023-06-01` and `content-type: application/json` with the key. The body needs `model`, `max_tokens` and `messages`; a `system` prompt is optional. On the CLI, `claude -p ""` prints the response without starting an interactive session. ## Set up Use the first option your agent supports. ### CLI (official) Install the command, then confirm it runs. ```sh curl -fsSL https://claude.ai/install.sh | bash claude --version ``` Run `claude -p`. ### API (official) - Base URL: https://api.anthropic.com - Endpoint: `POST /v1/messages` - Auth: send the header `x-api-key: $ANTHROPIC_API_KEY` - Get a key: https://platform.claude.com/settings/keys - Docs: https://platform.claude.com/docs/en/api/overview Before doing anything else, make one read-only call to confirm access. ## Rules - Ask the user before anything that sends messages, costs money, or changes data. - Never print API keys. --- ref: tool:apify/get-dataset-items name: "Get an Actor run's results" company: company:apify workflows: [] access: [mcp, cli, api] tags: [capability:scrape-web, category:scraper, has:api, has:cli, has:mcp] docs: https://docs.apify.com/api/v2/dataset-items-get updated: 2026-09-27 --- # Get an Actor run's results Returns the items an Actor run saved to a dataset, such as scraped records, a page at a time. Pass the dataset ID the run returned (`defaultDatasetId` on the run object) and page with `limit` and `offset`. The API and the CLI can also return the items as CSV, JSONL, XLSX and other formats. ## Set up Use the first option your agent supports. ### MCP (official, remote) Add this server to your agent's MCP settings, then sign in when asked. ```json { "mcpServers": { "apify": { "url": "https://mcp.apify.com" } } } ``` Call the MCP tool `get-dataset-items`. Server URL: https://mcp.apify.com ### CLI (official) Install the command, then confirm it runs. ```sh npm install -g apify-cli apify --version ``` Run `apify datasets get-items`. ### API (official) - Base URL: https://api.apify.com/v2 - Endpoint: `GET /datasets/{datasetId}/items` - Auth: send the header `Authorization: Bearer $APIFY_TOKEN` - Get a key: https://console.apify.com/settings/integrations - Docs: https://docs.apify.com/api/v2 Before doing anything else, make one read-only call to confirm access. ## Rules - Ask the user before anything that sends messages, costs money, or changes data. - Never print API keys. --- ref: tool:apify/run-actor name: Run an Actor company: company:apify workflows: [] access: [mcp, cli, api] tags: [capability:scrape-web, category:scraper, has:api, has:cli, has:mcp] docs: https://docs.apify.com/api/v2/actors-runs-post updated: 2026-09-27 --- # Run an Actor Starts an Apify Actor, such as a Google Maps or search-results scraper, with JSON input and returns the run's status and the ID of the dataset that holds its results. Name the Actor as `username/actor-name` (`username~actor-name` in an API path) and pass input that matches its input schema. The MCP tool waits up to 45 seconds for the run to finish and the API up to 60 with `waitForFinish`; read the results with `get-dataset-items` once the run has succeeded. On the CLI, `--output-dataset` prints the results. Over the API, `maxTotalChargeUsd` caps what a run can cost, and `POST /actors/{actorId}/run-sync-get-dataset-items` waits up to 300 seconds and returns the items in the response. ## Set up Use the first option your agent supports. ### MCP (official, remote) Add this server to your agent's MCP settings, then sign in when asked. ```json { "mcpServers": { "apify": { "url": "https://mcp.apify.com" } } } ``` Call the MCP tool `call-actor`. Server URL: https://mcp.apify.com ### CLI (official) Install the command, then confirm it runs. ```sh npm install -g apify-cli apify --version ``` Run `apify actors call`. ### API (official) - Base URL: https://api.apify.com/v2 - Endpoint: `POST /actors/{actorId}/runs` - Auth: send the header `Authorization: Bearer $APIFY_TOKEN` - Get a key: https://console.apify.com/settings/integrations - Docs: https://docs.apify.com/api/v2 Before doing anything else, make one read-only call to confirm access. ## Rules - Ask the user before anything that sends messages, costs money, or changes data. - Never print API keys. --- ref: tool:apify/search-actors name: Find a scraper in Apify Store company: company:apify workflows: [] access: [mcp, cli, api] tags: [capability:scrape-web, category:scraper, has:api, has:cli, has:mcp] docs: https://docs.apify.com/api/v2/store-get updated: 2026-09-27 --- # Find a scraper in Apify Store Returns Actors from Apify Store, Apify's marketplace of ready-made scrapers and automations, that match a search query, with each Actor's name, author and description. Search for the site or data you need, such as `google maps` or `job postings`, then check an Actor's input schema and pricing before you run it: `fetch-actor-details` on the MCP server, `apify actors info --input` on the CLI. The CLI search needs no sign-in. ## Set up Use the first option your agent supports. ### MCP (official, remote) Add this server to your agent's MCP settings, then sign in when asked. ```json { "mcpServers": { "apify": { "url": "https://mcp.apify.com" } } } ``` Call the MCP tool `search-actors`. Server URL: https://mcp.apify.com ### CLI (official) Install the command, then confirm it runs. ```sh npm install -g apify-cli apify --version ``` Run `apify actors search`. ### API (official) - Base URL: https://api.apify.com/v2 - Endpoint: `GET /store` - Auth: send the header `Authorization: Bearer $APIFY_TOKEN` - Get a key: https://console.apify.com/settings/integrations - Docs: https://docs.apify.com/api/v2 Before doing anything else, make one read-only call to confirm access. ## Rules - Ask the user before anything that sends messages, costs money, or changes data. - Never print API keys. --- ref: tool:apify/search-web name: Search the web and read the top results company: company:apify workflows: [] access: [mcp] tags: [capability:research-accounts, category:scraper, has:mcp] docs: https://docs.apify.com/integrations/mcp updated: 2026-09-27 --- # Search the web and read the top results Starts Apify's RAG Web Browser on a query, or on one URL, and returns the run's storage IDs; its dataset holds the top result pages as Markdown. Pass `query` and `maxResults`, the number of top results to read. Like other Actor tools, it returns the run's storage IDs rather than the pages: read them with `get-dataset-items` and the returned `datasetId`. The Actor is billed by Apify platform usage. ## Set up Use the first option your agent supports. ### MCP (official, remote) Add this server to your agent's MCP settings, then sign in when asked. ```json { "mcpServers": { "apify": { "url": "https://mcp.apify.com" } } } ``` Call the MCP tool `apify--rag-web-browser`. Server URL: https://mcp.apify.com Before doing anything else, make one read-only call to confirm access. ## Rules - Ask the user before anything that sends messages, costs money, or changes data. - Never print API keys. --- ref: tool:apollo/add-contacts-to-sequence name: Add contacts to a sequence company: company:apollo workflows: [] access: [mcp, cli, api] tags: [capability:send-email, category:data-provider, has:api, has:cli, has:mcp] docs: https://docs.apollo.io/reference/add-contacts-to-sequence updated: 2026-09-26 --- # Add contacts to a sequence Enrolls saved contacts in an Apollo sequence so its email steps go out from the mailbox you choose. Only contacts can be enrolled, so create the person as a contact first. Pass the sequence id as both `sequence_id` and `emailer_campaign_id`, the `contact_ids[]`, and `send_email_from_email_account_id` (list mailboxes with `apollo_email_accounts_index` or `apollo email-accounts list`). Enrolling can start real outbound email: confirm the sequence, mailbox and contacts first. ## Set up Use the first option your agent supports. ### MCP (official, remote) Add this server to your agent's MCP settings, then sign in when asked. ```json { "mcpServers": { "apollo": { "url": "https://mcp.apollo.io/mcp" } } } ``` Call the MCP tool `apollo_emailer_campaigns_add_contact_ids`. Server URL: https://mcp.apollo.io/mcp ### CLI (official) Install the command, then confirm it runs. ```sh brew install apolloio/apollo-io-cli/apollo-io-cli apollo --version ``` Run `apollo sequences add-contacts`. ### API (official) - Base URL: https://api.apollo.io/api/v1 - Endpoint: `POST /emailer_campaigns/{sequence_id}/add_contact_ids` - Auth: send the header `x-api-key: $APOLLO_API_KEY` - Get a key: https://developer.apollo.io/#/keys - Docs: https://docs.apollo.io/reference/apollo-api Before doing anything else, make one read-only call to confirm access. ## Rules - Ask the user before anything that sends messages, costs money, or changes data. - Never print API keys. --- ref: tool:apollo/bulk-enrich-people name: Enrich up to 10 people company: company:apollo workflows: [workflow:funding-signal-outbound, workflow:executive-job-change] access: [mcp, cli, api] tags: [capability:enrich-contacts, category:data-provider, has:api, has:cli, has:mcp] docs: https://docs.apollo.io/reference/bulk-people-enrichment updated: 2026-09-27 --- # Enrich up to 10 people Returns the work email, title and employer of up to 10 people in one call, each matched from a name and company domain, an email or a LinkedIn URL. Pass each person as an object in `details[]`; people Apollo can't match come back as `null`. Personal emails and phone numbers are off by default: set `reveal_personal_emails` or `reveal_phone_number` to request them. Credits are charged per person, and only when data is found. ## Set up Use the first option your agent supports. ### MCP (official, remote) Add this server to your agent's MCP settings, then sign in when asked. ```json { "mcpServers": { "apollo": { "url": "https://mcp.apollo.io/mcp" } } } ``` Call the MCP tool `apollo_people_bulk_match`. Server URL: https://mcp.apollo.io/mcp ### CLI (official) Install the command, then confirm it runs. ```sh brew install apolloio/apollo-io-cli/apollo-io-cli apollo --version ``` Run `apollo people bulk-enrich`. ### API (official) - Base URL: https://api.apollo.io/api/v1 - Endpoint: `POST /people/bulk_match` - Auth: send the header `x-api-key: $APOLLO_API_KEY` - Get a key: https://developer.apollo.io/#/keys - Docs: https://docs.apollo.io/reference/apollo-api Before doing anything else, make one read-only call to confirm access. ## Rules - Ask the user before anything that sends messages, costs money, or changes data. - Never print API keys. --- ref: tool:apollo/enrich-company name: Enrich a company company: company:apollo workflows: [] access: [mcp, cli, api] tags: [capability:research-accounts, category:data-provider, has:api, has:cli, has:mcp] docs: https://docs.apollo.io/reference/organization-enrichment updated: 2026-09-26 --- # Enrich a company Returns one company's industry, revenue, employee count, funding rounds, locations and parent or subsidiary companies, found by its domain or name. Costs 1 credit per company. To enrich up to 10 companies in one call, use bulk organization enrichment (`apollo_organizations_bulk_enrich` on the MCP server, `apollo companies bulk-enrich` on the CLI). ## Set up Use the first option your agent supports. ### MCP (official, remote) Add this server to your agent's MCP settings, then sign in when asked. ```json { "mcpServers": { "apollo": { "url": "https://mcp.apollo.io/mcp" } } } ``` Call the MCP tool `apollo_organizations_enrich`. Server URL: https://mcp.apollo.io/mcp ### CLI (official) Install the command, then confirm it runs. ```sh brew install apolloio/apollo-io-cli/apollo-io-cli apollo --version ``` Run `apollo companies enrich`. ### API (official) - Base URL: https://api.apollo.io/api/v1 - Endpoint: `GET /organizations/enrich` - Auth: send the header `x-api-key: $APOLLO_API_KEY` - Get a key: https://developer.apollo.io/#/keys - Docs: https://docs.apollo.io/reference/apollo-api Before doing anything else, make one read-only call to confirm access. ## Rules - Ask the user before anything that sends messages, costs money, or changes data. - Never print API keys. --- ref: tool:apollo/enrich-person name: Enrich a person company: company:apollo workflows: [workflow:champion-job-change-loop] access: [mcp, cli, api] tags: [capability:enrich-contacts, category:data-provider, has:api, has:cli, has:mcp] docs: https://docs.apollo.io/reference/people-enrichment updated: 2026-09-27 --- # Enrich a person Returns one person's title, employer, employment history and work email, matched from an email, a LinkedIn URL, or a name plus company. The more identifiers you pass, the likelier a match; check `match_confidence` in the response. Personal emails and phone numbers are off by default: set `reveal_personal_emails` or `reveal_phone_number` (phone numbers arrive later at a `webhook_url`). A match costs 1 credit for demographics or an email and 8 more for a mobile phone; a request that finds nothing costs nothing. ## Set up Use the first option your agent supports. ### MCP (official, remote) Add this server to your agent's MCP settings, then sign in when asked. ```json { "mcpServers": { "apollo": { "url": "https://mcp.apollo.io/mcp" } } } ``` Call the MCP tool `apollo_people_match`. Server URL: https://mcp.apollo.io/mcp ### CLI (official) Install the command, then confirm it runs. ```sh brew install apolloio/apollo-io-cli/apollo-io-cli apollo --version ``` Run `apollo people enrich`. ### API (official) - Base URL: https://api.apollo.io/api/v1 - Endpoint: `POST /people/match` - Auth: send the header `x-api-key: $APOLLO_API_KEY` - Get a key: https://developer.apollo.io/#/keys - Docs: https://docs.apollo.io/reference/apollo-api Before doing anything else, make one read-only call to confirm access. ## Rules - Ask the user before anything that sends messages, costs money, or changes data. - Never print API keys. --- ref: tool:apollo/search-people name: Search for people company: company:apollo workflows: [workflow:funding-signal-outbound, workflow:executive-job-change] access: [mcp, cli, api] tags: [capability:build-audience, category:data-provider, has:api, has:cli, has:mcp] docs: https://docs.apollo.io/reference/people-api-search updated: 2026-09-27 --- # Search for people Returns people in Apollo's database who match title, seniority, location and company filters, without their emails or phone numbers. Search costs no credits and finds net-new people, not contacts already saved in Apollo. It returns up to 100 people per page and 50,000 in total, so narrow it with filters such as `person_titles`, `person_seniorities` and `q_organization_domains_list`. Enrich the matches to get their work emails. ## Set up Use the first option your agent supports. ### MCP (official, remote) Add this server to your agent's MCP settings, then sign in when asked. ```json { "mcpServers": { "apollo": { "url": "https://mcp.apollo.io/mcp" } } } ``` Call the MCP tool `apollo_mixed_people_api_search`. Server URL: https://mcp.apollo.io/mcp ### CLI (official) Install the command, then confirm it runs. ```sh brew install apolloio/apollo-io-cli/apollo-io-cli apollo --version ``` Run `apollo people search`. ### API (official) - Base URL: https://api.apollo.io/api/v1 - Endpoint: `POST /mixed_people/api_search` - Auth: send the header `x-api-key: $APOLLO_API_KEY` - Get a key: https://developer.apollo.io/#/keys - Docs: https://docs.apollo.io/reference/apollo-api Before doing anything else, make one read-only call to confirm access. ## Rules - Ask the user before anything that sends messages, costs money, or changes data. - Never print API keys. --- ref: tool:asana/add-comment name: Comment on a task company: company:asana workflows: [] access: [mcp, api] tags: [capability:manage-tasks, category:project-management, has:api, has:mcp] docs: https://developers.asana.com/reference/createstoryfortask updated: 2026-09-27 --- # Comment on a task Adds a comment to a task as the signed-in user, in plain text or HTML, with optional @-mentions. On the API a comment is a story on the task; the endpoint only creates comment stories. ## Set up Use the first option your agent supports. ### MCP (official, remote) Add this server to your agent's MCP settings, then sign in when asked. ```json { "mcpServers": { "asana": { "url": "https://mcp.asana.com/v2/mcp" } } } ``` Call the MCP tool `add_comment`. Server URL: https://mcp.asana.com/v2/mcp ### API (official) - Base URL: https://app.asana.com/api/1.0 - Endpoint: `POST /tasks/{task_gid}/stories` - Auth: send the header `Authorization: Bearer $ASANA_ACCESS_TOKEN` - Get a key: https://app.asana.com/0/my-apps - Docs: https://developers.asana.com/reference/rest-api-reference Before doing anything else, make one read-only call to confirm access. ## Rules - Ask the user before anything that sends messages, costs money, or changes data. - Never print API keys. --- ref: tool:asana/create-task name: Create a task company: company:asana workflows: [] access: [mcp, api] tags: [capability:manage-tasks, category:project-management, has:api, has:mcp] docs: https://developers.asana.com/reference/createtask updated: 2026-09-27 --- # Create a task Creates a task in a workspace, a project or under a parent task, with its assignee, due date, description and custom fields. Every task belongs to a workspace: set `workspace`, or set `projects` or `parent` instead. The MCP tool creates up to 50 tasks per call, without a confirmation step. ## Set up Use the first option your agent supports. ### MCP (official, remote) Add this server to your agent's MCP settings, then sign in when asked. ```json { "mcpServers": { "asana": { "url": "https://mcp.asana.com/v2/mcp" } } } ``` Call the MCP tool `create_tasks`. Server URL: https://mcp.asana.com/v2/mcp ### API (official) - Base URL: https://app.asana.com/api/1.0 - Endpoint: `POST /tasks` - Auth: send the header `Authorization: Bearer $ASANA_ACCESS_TOKEN` - Get a key: https://app.asana.com/0/my-apps - Docs: https://developers.asana.com/reference/rest-api-reference Before doing anything else, make one read-only call to confirm access. ## Rules - Ask the user before anything that sends messages, costs money, or changes data. - Never print API keys. --- ref: tool:asana/update-task name: Update a task company: company:asana workflows: [] access: [mcp, api] tags: [capability:manage-tasks, category:project-management, has:api, has:mcp] docs: https://developers.asana.com/reference/updatetask updated: 2026-09-27 --- # Update a task Changes a task's name, assignee, due date, description, completion or custom fields, leaving every other field as it was. Only the fields in the request's `data` block change. The MCP tool updates up to 50 tasks per call. ## Set up Use the first option your agent supports. ### MCP (official, remote) Add this server to your agent's MCP settings, then sign in when asked. ```json { "mcpServers": { "asana": { "url": "https://mcp.asana.com/v2/mcp" } } } ``` Call the MCP tool `update_tasks`. Server URL: https://mcp.asana.com/v2/mcp ### API (official) - Base URL: https://app.asana.com/api/1.0 - Endpoint: `PUT /tasks/{task_gid}` - Auth: send the header `Authorization: Bearer $ASANA_ACCESS_TOKEN` - Get a key: https://app.asana.com/0/my-apps - Docs: https://developers.asana.com/reference/rest-api-reference Before doing anything else, make one read-only call to confirm access. ## Rules - Ask the user before anything that sends messages, costs money, or changes data. - Never print API keys. --- ref: tool:atlassian/comment-on-jira-work-item name: Comment on a Jira work item company: company:atlassian workflows: [] access: [mcp, cli, api] tags: [capability:manage-tasks, category:project-management, has:api, has:cli, has:mcp] docs: https://developer.atlassian.com/cloud/jira/platform/rest/v3/api-group-issue-comments/#api-rest-api-3-issue-issueidorkey-comment-post updated: 2026-09-27 --- # Comment on a Jira work item Adds a comment to a Jira work item and returns the new comment. On the API the comment `body` is Atlassian Document Format; the CLI takes `--key` and a plain-text or ADF `--body`, and can comment on every work item a `--jql` query matches. `addOrEditJiraIssueComment` also edits an existing comment. ## Set up Use the first option your agent supports. ### MCP (official, remote) Add this server to your agent's MCP settings, then sign in when asked. ```json { "mcpServers": { "atlassian": { "url": "https://mcp.atlassian.com/v2/mcp" } } } ``` Call the MCP tool `addOrEditJiraIssueComment`. Server URL: https://mcp.atlassian.com/v2/mcp ### CLI (official) Install the command, then confirm it runs. ```sh brew tap atlassian/homebrew-acli && brew install acli acli --version ``` Run `acli jira workitem comment create`. ### API (official) - Base URL: https://{your-domain}.atlassian.net - Endpoint: `POST /rest/api/3/issue/{issueIdOrKey}/comment` - Auth: send the header `Authorization: Basic $ATLASSIAN_API_KEY` - Get a key: https://id.atlassian.com/manage-profile/security/api-tokens - Docs: https://developer.atlassian.com/cloud/jira/platform/rest/v3/intro/ Before doing anything else, make one read-only call to confirm access. ## Rules - Ask the user before anything that sends messages, costs money, or changes data. - Never print API keys. --- ref: tool:atlassian/create-confluence-page name: Create a Confluence page company: company:atlassian workflows: [] access: [mcp, api] tags: [capability:manage-docs, category:project-management, has:api, has:mcp] docs: https://developer.atlassian.com/cloud/confluence/rest/v2/api-group-page/#api-pages-post updated: 2026-09-27 --- # Create a Confluence page Creates a page in a Confluence space, under a parent page if you pass one, and returns the new page. `spaceId` is required, and a published page needs a `title`; pages publish unless `status` is `draft`. Send the content as `body` with a `representation`, such as `storage`. `createConfluenceContent` also creates blog posts, live docs, whiteboards, databases and folders. ## Set up Use the first option your agent supports. ### MCP (official, remote) Add this server to your agent's MCP settings, then sign in when asked. ```json { "mcpServers": { "atlassian": { "url": "https://mcp.atlassian.com/v2/mcp" } } } ``` Call the MCP tool `createConfluenceContent`. Server URL: https://mcp.atlassian.com/v2/mcp ### API (official) - Base URL: https://{your-domain}.atlassian.net - Endpoint: `POST /wiki/api/v2/pages` - Auth: send the header `Authorization: Basic $ATLASSIAN_API_KEY` - Get a key: https://id.atlassian.com/manage-profile/security/api-tokens - Docs: https://developer.atlassian.com/cloud/jira/platform/rest/v3/intro/ Before doing anything else, make one read-only call to confirm access. ## Rules - Ask the user before anything that sends messages, costs money, or changes data. - Never print API keys. --- ref: tool:atlassian/create-jira-work-item name: Create a Jira work item company: company:atlassian workflows: [] access: [mcp, cli, api] tags: [capability:manage-tasks, category:project-management, has:api, has:cli, has:mcp] docs: https://developer.atlassian.com/cloud/jira/platform/rest/v3/api-group-issues/#api-rest-api-3-issue-post updated: 2026-09-27 --- # Create a Jira work item Creates a Jira work item (an issue) in a project with its type, summary, description, assignee and labels, and returns its key. The fields a work item accepts depend on its project and type: read them first with `GET /rest/api/3/issue/createmeta/{projectIdOrKey}/issuetypes`. On the API, `description` takes Atlassian Document Format; the CLI takes it as plain text or ADF, for example `acli jira workitem create --summary "New Task" --project "TEAM" --type "Task"`. ## Set up Use the first option your agent supports. ### MCP (official, remote) Add this server to your agent's MCP settings, then sign in when asked. ```json { "mcpServers": { "atlassian": { "url": "https://mcp.atlassian.com/v2/mcp" } } } ``` Call the MCP tool `createJiraIssue`. Server URL: https://mcp.atlassian.com/v2/mcp ### CLI (official) Install the command, then confirm it runs. ```sh brew tap atlassian/homebrew-acli && brew install acli acli --version ``` Run `acli jira workitem create`. ### API (official) - Base URL: https://{your-domain}.atlassian.net - Endpoint: `POST /rest/api/3/issue` - Auth: send the header `Authorization: Basic $ATLASSIAN_API_KEY` - Get a key: https://id.atlassian.com/manage-profile/security/api-tokens - Docs: https://developer.atlassian.com/cloud/jira/platform/rest/v3/intro/ Before doing anything else, make one read-only call to confirm access. ## Rules - Ask the user before anything that sends messages, costs money, or changes data. - Never print API keys. --- ref: tool:atlassian/search-confluence name: Search Confluence with CQL company: company:atlassian workflows: [] access: [mcp, api] tags: [capability:manage-docs, category:project-management, has:api, has:mcp] docs: https://developer.atlassian.com/cloud/confluence/rest/v1/api-group-search/#api-wiki-rest-api-search-get updated: 2026-09-27 --- # Search Confluence with CQL Returns the Confluence pages, blog posts and other content that match a CQL query. Pass the query as `cql`, such as `type=page`, and a `limit`. When more results exist, the response's `next` link carries a cursor for the following page. CQL here no longer supports user fields such as `user` or `user.accountid`. ## Set up Use the first option your agent supports. ### MCP (official, remote) Add this server to your agent's MCP settings, then sign in when asked. ```json { "mcpServers": { "atlassian": { "url": "https://mcp.atlassian.com/v2/mcp" } } } ``` Call the MCP tool `searchConfluence`. Server URL: https://mcp.atlassian.com/v2/mcp ### API (official) - Base URL: https://{your-domain}.atlassian.net - Endpoint: `GET /wiki/rest/api/search` - Auth: send the header `Authorization: Basic $ATLASSIAN_API_KEY` - Get a key: https://id.atlassian.com/manage-profile/security/api-tokens - Docs: https://developer.atlassian.com/cloud/jira/platform/rest/v3/intro/ Before doing anything else, make one read-only call to confirm access. ## Rules - Ask the user before anything that sends messages, costs money, or changes data. - Never print API keys. --- ref: tool:atlassian/search-jira-work-items name: Search Jira work items with JQL company: company:atlassian workflows: [] access: [mcp, cli, api] tags: [capability:manage-tasks, category:project-management, has:api, has:cli, has:mcp] docs: https://developer.atlassian.com/cloud/jira/platform/rest/v3/api-group-issue-search/#api-rest-api-3-search-jql-get updated: 2026-09-27 --- # Search Jira work items with JQL Returns the Jira work items that match a JQL query, with the fields you ask for, one page at a time. Pass the query as `jql`, such as `project = TEAM`, and page with `nextPageToken`. For a query too long for a URL, use `POST /rest/api/3/search/jql`; the older `/rest/api/3/search` is deprecated and being removed. The CLI takes `--jql` and can print `--json` or `--csv`. ## Set up Use the first option your agent supports. ### MCP (official, remote) Add this server to your agent's MCP settings, then sign in when asked. ```json { "mcpServers": { "atlassian": { "url": "https://mcp.atlassian.com/v2/mcp" } } } ``` Call the MCP tool `searchJiraIssuesUsingJql`. Server URL: https://mcp.atlassian.com/v2/mcp ### CLI (official) Install the command, then confirm it runs. ```sh brew tap atlassian/homebrew-acli && brew install acli acli --version ``` Run `acli jira workitem search`. ### API (official) - Base URL: https://{your-domain}.atlassian.net - Endpoint: `GET /rest/api/3/search/jql` - Auth: send the header `Authorization: Basic $ATLASSIAN_API_KEY` - Get a key: https://id.atlassian.com/manage-profile/security/api-tokens - Docs: https://developer.atlassian.com/cloud/jira/platform/rest/v3/intro/ Before doing anything else, make one read-only call to confirm access. ## Rules - Ask the user before anything that sends messages, costs money, or changes data. - Never print API keys. --- ref: tool:attio/create-note name: Create a note company: company:attio workflows: [workflow:champion-job-change-loop] access: [mcp, api] tags: [capability:manage-crm, category:crm, has:api, has:mcp] docs: https://docs.attio.com/rest-api/endpoint-reference/notes/create-a-note updated: 2026-09-27 --- # Create a note Adds a note with a title and plaintext or markdown content to a person, company, deal or other record. Name the record with `parent_object` (such as `people`) and `parent_record_id`. The title is plain text only. ## Set up Use the first option your agent supports. ### MCP (official, remote) Add this server to your agent's MCP settings, then sign in when asked. ```json { "mcpServers": { "attio": { "url": "https://mcp.attio.com/mcp" } } } ``` Call the MCP tool `create-note`. Server URL: https://mcp.attio.com/mcp ### API (official) - Base URL: https://api.attio.com - Endpoint: `POST /v2/notes` - Auth: send the header `Authorization: Bearer $ATTIO_API_KEY` - Get a key: https://attio.com/help/reference/apps/generating-an-api-key - Docs: https://docs.attio.com/rest-api/overview Before doing anything else, make one read-only call to confirm access. ## Rules - Ask the user before anything that sends messages, costs money, or changes data. - Never print API keys. --- ref: tool:attio/create-record name: Create a record company: company:attio workflows: [workflow:champion-job-change-loop] access: [mcp, api] tags: [capability:manage-crm, category:crm, has:api, has:mcp] docs: https://docs.attio.com/rest-api/endpoint-reference/records/create-a-record updated: 2026-09-27 --- # Create a record Creates a person, company, deal or custom-object record, and fails if a unique attribute such as a domain or email address is already taken. To update the existing record instead of failing on a conflict, upsert it. ## Set up Use the first option your agent supports. ### MCP (official, remote) Add this server to your agent's MCP settings, then sign in when asked. ```json { "mcpServers": { "attio": { "url": "https://mcp.attio.com/mcp" } } } ``` Call the MCP tool `create-record`. Server URL: https://mcp.attio.com/mcp ### API (official) - Base URL: https://api.attio.com - Endpoint: `POST /v2/objects/{object}/records` - Auth: send the header `Authorization: Bearer $ATTIO_API_KEY` - Get a key: https://attio.com/help/reference/apps/generating-an-api-key - Docs: https://docs.attio.com/rest-api/overview Before doing anything else, make one read-only call to confirm access. ## Rules - Ask the user before anything that sends messages, costs money, or changes data. - Never print API keys. --- ref: tool:attio/list-records name: List records company: company:attio workflows: [workflow:competitor-intent] access: [mcp, api] tags: [capability:manage-crm, category:crm, has:api, has:mcp] docs: https://docs.attio.com/rest-api/endpoint-reference/records/list-records updated: 2026-09-27 --- # List records Returns the records of one object, such as people, companies or deals, filtered and sorted by their attribute values. ## Set up Use the first option your agent supports. ### MCP (official, remote) Add this server to your agent's MCP settings, then sign in when asked. ```json { "mcpServers": { "attio": { "url": "https://mcp.attio.com/mcp" } } } ``` Call the MCP tool `list-records`. Server URL: https://mcp.attio.com/mcp ### API (official) - Base URL: https://api.attio.com - Endpoint: `POST /v2/objects/{object}/records/query` - Auth: send the header `Authorization: Bearer $ATTIO_API_KEY` - Get a key: https://attio.com/help/reference/apps/generating-an-api-key - Docs: https://docs.attio.com/rest-api/overview Before doing anything else, make one read-only call to confirm access. ## Rules - Ask the user before anything that sends messages, costs money, or changes data. - Never print API keys. --- ref: tool:attio/update-record name: Update a record company: company:attio workflows: [] access: [mcp, api] tags: [capability:manage-crm, category:crm, has:api, has:mcp] docs: https://docs.attio.com/rest-api/endpoint-reference/records/update-a-record-append-multiselect-values updated: 2026-09-26 --- # Update a record Updates the given attributes of one record by its record id, adding to multiselect values instead of replacing them. To overwrite or remove multiselect values instead, send `PUT` to the same path. ## Set up Use the first option your agent supports. ### MCP (official, remote) Add this server to your agent's MCP settings, then sign in when asked. ```json { "mcpServers": { "attio": { "url": "https://mcp.attio.com/mcp" } } } ``` Call the MCP tool `update-record`. Server URL: https://mcp.attio.com/mcp ### API (official) - Base URL: https://api.attio.com - Endpoint: `PATCH /v2/objects/{object}/records/{record_id}` - Auth: send the header `Authorization: Bearer $ATTIO_API_KEY` - Get a key: https://attio.com/help/reference/apps/generating-an-api-key - Docs: https://docs.attio.com/rest-api/overview Before doing anything else, make one read-only call to confirm access. ## Rules - Ask the user before anything that sends messages, costs money, or changes data. - Never print API keys. --- ref: tool:attio/upsert-record name: Upsert a record company: company:attio workflows: [workflow:product-qualified-expansion, workflow:champion-job-change-loop] access: [mcp, api] tags: [capability:manage-crm, category:crm, has:api, has:mcp] docs: https://docs.attio.com/rest-api/endpoint-reference/records/upsert-a-record updated: 2026-09-27 --- # Upsert a record Updates the record whose matching attribute, such as a company's domain or a person's email, has the given value, or creates the record if none does. Name the attribute to match on in the `matching_attribute` query parameter; it must be a unique attribute. Deals have no unique attribute by default, so add one before upserting deals. ## Set up Use the first option your agent supports. ### MCP (official, remote) Add this server to your agent's MCP settings, then sign in when asked. ```json { "mcpServers": { "attio": { "url": "https://mcp.attio.com/mcp" } } } ``` Call the MCP tool `upsert-record`. Server URL: https://mcp.attio.com/mcp ### API (official) - Base URL: https://api.attio.com - Endpoint: `PUT /v2/objects/{object}/records` - Auth: send the header `Authorization: Bearer $ATTIO_API_KEY` - Get a key: https://attio.com/help/reference/apps/generating-an-api-key - Docs: https://docs.attio.com/rest-api/overview Before doing anything else, make one read-only call to confirm access. ## Rules - Ask the user before anything that sends messages, costs money, or changes data. - Never print API keys. --- ref: tool:brew/create-audience name: Create an audience company: company:brew workflows: [] access: [mcp, cli, api] tags: [capability:build-audience, category:email, has:api, has:cli, has:mcp] docs: https://docs.brew.new/api-reference/public-v1/audiences/create-an-audience updated: 2026-09-26 --- # Create an audience Saves a live contact segment from a name and a set of field filters and returns the audience. ## Set up Use the first option your agent supports. ### MCP (official, remote) Add this server to your agent's MCP settings, then sign in when asked. ```json { "mcpServers": { "brew": { "url": "https://brew.new/api/mcp" } } } ``` Call the MCP tool `create_audience`. Server URL: https://brew.new/api/mcp ### CLI (official) Install the command, then confirm it runs. ```sh brew install getbrew/tap/brew-cli brew-cli --version ``` Run `brew-cli audiences create`. Set `$BREW_API_KEY` in your environment first (get a key: https://brew.new/settings/api). ### API (official) - Base URL: https://brew.new/api - Endpoint: `POST /v1/audiences` - Auth: send the header `Authorization: Bearer $BREW_API_KEY` - Get a key: https://brew.new/settings/api - Docs: https://docs.brew.new/api-reference/api/api-introduction Before doing anything else, make one read-only call to confirm access. ## Rules - Ask the user before anything that sends messages, costs money, or changes data. - Never print API keys. --- ref: tool:brew/create-audience-from-events name: Create an audience from email events company: company:brew workflows: [workflow:resend-to-unopened] access: [mcp, cli, api] tags: [capability:build-audience, category:email, has:api, has:cli, has:mcp] docs: https://docs.brew.new/api-reference/public-v1/audiences/create-an-audience-from-analytics-events updated: 2026-09-27 --- # Create an audience from email events Saves a frozen cohort of the contacts who opened, clicked or otherwise engaged in a time window or send, or with an exclude rule those who did not. The audience builds asynchronously: poll it with `include=build` until it is ready before sending to it. ## Set up Use the first option your agent supports. ### MCP (official, remote) Add this server to your agent's MCP settings, then sign in when asked. ```json { "mcpServers": { "brew": { "url": "https://brew.new/api/mcp" } } } ``` Call the MCP tool `create_audience_from_events`. Server URL: https://brew.new/api/mcp ### CLI (official) Install the command, then confirm it runs. ```sh brew install getbrew/tap/brew-cli brew-cli --version ``` Run `brew-cli audiences from-events`. Set `$BREW_API_KEY` in your environment first (get a key: https://brew.new/settings/api). ### API (official) - Base URL: https://brew.new/api - Endpoint: `POST /v1/audiences/from-events` - Auth: send the header `Authorization: Bearer $BREW_API_KEY` - Get a key: https://brew.new/settings/api - Docs: https://docs.brew.new/api-reference/api/api-introduction Before doing anything else, make one read-only call to confirm access. ## Rules - Ask the user before anything that sends messages, costs money, or changes data. - Never print API keys. --- ref: tool:brew/fire-trigger-event name: Fire a trigger event company: company:brew workflows: [] access: [mcp, cli, api] tags: [capability:send-email, category:email, has:api, has:cli, has:mcp] docs: https://docs.brew.new/api-reference/public-v1/automations/fire-a-trigger updated: 2026-09-26 --- # Fire a trigger event Validates an event payload, upserts the contact it describes and starts one run of every published automation listening to that trigger. For event-driven lifecycle and transactional email. Always pass an idempotency key, such as the event name, user id and event timestamp. ## Set up Use the first option your agent supports. ### MCP (official, remote) Add this server to your agent's MCP settings, then sign in when asked. ```json { "mcpServers": { "brew": { "url": "https://brew.new/api/mcp" } } } ``` Call the MCP tool `fire_trigger_event`. Server URL: https://brew.new/api/mcp ### CLI (official) Install the command, then confirm it runs. ```sh brew install getbrew/tap/brew-cli brew-cli --version ``` Run `brew-cli automations triggers fire`. Set `$BREW_API_KEY` in your environment first (get a key: https://brew.new/settings/api). ### API (official) - Base URL: https://brew.new/api - Endpoint: `POST /v1/automations/triggers/{triggerEventId}/fire` - Auth: send the header `Authorization: Bearer $BREW_API_KEY` - Get a key: https://brew.new/settings/api - Docs: https://docs.brew.new/api-reference/api/api-introduction Before doing anything else, make one read-only call to confirm access. ## Rules - Ask the user before anything that sends messages, costs money, or changes data. - Never print API keys. --- ref: tool:brew/generate-email name: Generate an email company: company:brew workflows: [workflow:competitor-intent, workflow:content-download-nurture, workflow:webinar-follow-up, workflow:free-to-paid-activation, workflow:at-risk-customer-rescue] access: [mcp, cli, api] tags: [capability:write-copy, category:email, has:api, has:cli, has:mcp] docs: https://docs.brew.new/api-reference/public-v1/emails/generate-an-email-design updated: 2026-09-27 --- # Generate an email Generates an on-brand email design from a plain-language prompt and returns its emailId, version id and HTML. Usage-metered in credits, and the brand must be ready first. Pass `emailVersionId` to a send or an automation to pin the exact version. ## Set up Use the first option your agent supports. ### MCP (official, remote) Add this server to your agent's MCP settings, then sign in when asked. ```json { "mcpServers": { "brew": { "url": "https://brew.new/api/mcp" } } } ``` Call the MCP tool `create_email`. Server URL: https://brew.new/api/mcp ### CLI (official) Install the command, then confirm it runs. ```sh brew install getbrew/tap/brew-cli brew-cli --version ``` Run `brew-cli emails generate`. Set `$BREW_API_KEY` in your environment first (get a key: https://brew.new/settings/api). ### API (official) - Base URL: https://brew.new/api - Endpoint: `POST /v1/emails` - Auth: send the header `Authorization: Bearer $BREW_API_KEY` - Get a key: https://brew.new/settings/api - Docs: https://docs.brew.new/api-reference/api/api-introduction Before doing anything else, make one read-only call to confirm access. ## Rules - Ask the user before anything that sends messages, costs money, or changes data. - Never print API keys. --- ref: tool:brew/send-email name: Send an email company: company:brew workflows: [workflow:content-download-nurture, workflow:webinar-follow-up, workflow:free-to-paid-activation, workflow:resend-to-unopened] access: [mcp, cli, api] tags: [capability:send-email, category:email, has:api, has:cli, has:mcp] docs: https://docs.brew.new/api-reference/public-v1/emails/send-an-email updated: 2026-09-27 --- # Send an email Sends an email design as a campaign to a saved audience or an inline recipient list through a verified domain, or one test copy with test set to true. Always pass an idempotency key. On OAuth and organization MCP connections a real send first returns `confirmation_required`; call again with `confirmed: true` once the user approves. Every recipient of a marketing send must have opted in: Brew does not permit cold outreach. ## Set up Use the first option your agent supports. ### MCP (official, remote) Add this server to your agent's MCP settings, then sign in when asked. ```json { "mcpServers": { "brew": { "url": "https://brew.new/api/mcp" } } } ``` Call the MCP tool `send_email`. Server URL: https://brew.new/api/mcp ### CLI (official) Install the command, then confirm it runs. ```sh brew install getbrew/tap/brew-cli brew-cli --version ``` Run `brew-cli emails send`. Set `$BREW_API_KEY` in your environment first (get a key: https://brew.new/settings/api). ### API (official) - Base URL: https://brew.new/api - Endpoint: `POST /v1/sends` - Auth: send the header `Authorization: Bearer $BREW_API_KEY` - Get a key: https://brew.new/settings/api - Docs: https://docs.brew.new/api-reference/api/api-introduction Before doing anything else, make one read-only call to confirm access. ## Rules - Ask the user before anything that sends messages, costs money, or changes data. - Never print API keys. --- ref: tool:cal-com/create-booking name: Create a booking company: company:cal-com workflows: [] access: [mcp, cli, api] tags: [capability:book-meetings, category:scheduling, has:api, has:cli, has:mcp] docs: https://cal.com/docs/api-reference/v2/bookings/create-a-booking updated: 2026-09-27 --- # Create a booking Books an attendee into a start time on an event type and returns the booking with its UID. Name the event type by `eventTypeId`, or by `eventTypeSlug` plus `username` (`teamSlug` for a team event), and pass `start` in UTC and the `attendee`'s `name`, `email` and `timeZone`. Answer the event type's required booking questions in `bookingFieldsResponses`, or the request fails with a 400. The endpoint is public, so it can book on behalf of someone outside your account. Send `cal-api-version: 2026-02-25`. The CLI takes `--event-type-id`, `--start`, `--attendee-name`, `--attendee-email` and `--attendee-timezone`. ## Set up Use the first option your agent supports. ### MCP (official, remote) Add this server to your agent's MCP settings, then sign in when asked. ```json { "mcpServers": { "cal-com": { "url": "https://mcp.cal.com/mcp" } } } ``` Call the MCP tool `create_booking`. Server URL: https://mcp.cal.com/mcp ### CLI (official) Install the command, then confirm it runs. ```sh npm install -g @calcom/cli calcom --version ``` Run `calcom bookings create`. Set `$CAL_API_KEY` in your environment first (get a key: https://app.cal.com/settings/developer/api-keys). ### API (official) - Base URL: https://api.cal.com - Endpoint: `POST /v2/bookings` - Auth: send the header `Authorization: Bearer $CAL_API_KEY` - Get a key: https://app.cal.com/settings/developer/api-keys - Docs: https://cal.com/docs/api-reference/v2/introduction Before doing anything else, make one read-only call to confirm access. ## Rules - Ask the user before anything that sends messages, costs money, or changes data. - Never print API keys. --- ref: tool:cal-com/create-private-link name: Create a private booking link company: company:cal-com workflows: [] access: [cli, api] tags: [capability:book-meetings, category:scheduling, has:api, has:cli] docs: https://cal.com/docs/api-reference/v2/event-types-private-links/create-a-private-link-for-an-event-type updated: 2026-09-27 --- # Create a private booking link Returns a private booking URL for an event type that expires after a number of bookings or at a set time. Without `expiresAt` or `maxUsageCount` the link is single-use, so create one per prospect and send the returned `bookingUrl`. Set `maxUsageCount` to allow more bookings, or `expiresAt` to make the link time-based. Send `cal-api-version: 2024-09-04`. The MCP server has no dedicated tool for this call. ## Set up Use the first option your agent supports. ### CLI (official) Install the command, then confirm it runs. ```sh npm install -g @calcom/cli calcom --version ``` Run `calcom private-links create`. Set `$CAL_API_KEY` in your environment first (get a key: https://app.cal.com/settings/developer/api-keys). ### API (official) - Base URL: https://api.cal.com - Endpoint: `POST /v2/event-types/{eventTypeId}/private-links` - Auth: send the header `Authorization: Bearer $CAL_API_KEY` - Get a key: https://app.cal.com/settings/developer/api-keys - Docs: https://cal.com/docs/api-reference/v2/introduction Before doing anything else, make one read-only call to confirm access. ## Rules - Ask the user before anything that sends messages, costs money, or changes data. - Never print API keys. --- ref: tool:cal-com/get-available-slots name: Get available slots company: company:cal-com workflows: [] access: [mcp, cli, api] tags: [capability:book-meetings, category:scheduling, has:api, has:cli, has:mcp] docs: https://cal.com/docs/api-reference/v2/slots/get-available-time-slots-for-an-event-type updated: 2026-09-27 --- # Get available slots Returns the open start times of an event type between two dates, grouped by day. Pass `start` and `end`, and name the event type by `eventTypeId` or by `eventTypeSlug` plus `username` (`teamSlug` for a team event). Set `timeZone` to get the times in the prospect's zone; the default is UTC. Offer a few slots, then book the chosen one with `create_booking`. Send `cal-api-version: 2024-09-04`. ## Set up Use the first option your agent supports. ### MCP (official, remote) Add this server to your agent's MCP settings, then sign in when asked. ```json { "mcpServers": { "cal-com": { "url": "https://mcp.cal.com/mcp" } } } ``` Call the MCP tool `get_availability`. Server URL: https://mcp.cal.com/mcp ### CLI (official) Install the command, then confirm it runs. ```sh npm install -g @calcom/cli calcom --version ``` Run `calcom slots available`. Set `$CAL_API_KEY` in your environment first (get a key: https://app.cal.com/settings/developer/api-keys). ### API (official) - Base URL: https://api.cal.com - Endpoint: `GET /v2/slots` - Auth: send the header `Authorization: Bearer $CAL_API_KEY` - Get a key: https://app.cal.com/settings/developer/api-keys - Docs: https://cal.com/docs/api-reference/v2/introduction Before doing anything else, make one read-only call to confirm access. ## Rules - Ask the user before anything that sends messages, costs money, or changes data. - Never print API keys. --- ref: tool:cal-com/list-bookings name: List bookings company: company:cal-com workflows: [] access: [mcp, cli, api] tags: [capability:book-meetings, category:scheduling, has:api, has:cli, has:mcp] docs: https://cal.com/docs/api-reference/v2/bookings/get-all-bookings updated: 2026-09-27 --- # List bookings Returns bookings filtered by status, attendee, event type and date range, one page at a time. Filter by one `status` per request (`upcoming`, `past`, `cancelled`, `recurring` or `unconfirmed`), by `attendeeEmail` to see whether a prospect has booked, and by `afterStart` and `beforeEnd`. Over the API, send `cal-api-version: 2026-05-01` and page with a cursor: pass `pagination.nextCursor` back as `cursor` until `hasMore` is false. The CLI pages with `--take` and `--skip`. ## Set up Use the first option your agent supports. ### MCP (official, remote) Add this server to your agent's MCP settings, then sign in when asked. ```json { "mcpServers": { "cal-com": { "url": "https://mcp.cal.com/mcp" } } } ``` Call the MCP tool `get_bookings`. Server URL: https://mcp.cal.com/mcp ### CLI (official) Install the command, then confirm it runs. ```sh npm install -g @calcom/cli calcom --version ``` Run `calcom bookings list`. Set `$CAL_API_KEY` in your environment first (get a key: https://app.cal.com/settings/developer/api-keys). ### API (official) - Base URL: https://api.cal.com - Endpoint: `GET /v2/bookings` - Auth: send the header `Authorization: Bearer $CAL_API_KEY` - Get a key: https://app.cal.com/settings/developer/api-keys - Docs: https://cal.com/docs/api-reference/v2/introduction Before doing anything else, make one read-only call to confirm access. ## Rules - Ask the user before anything that sends messages, costs money, or changes data. - Never print API keys. --- ref: tool:cal-com/reschedule-booking name: Reschedule a booking company: company:cal-com workflows: [] access: [mcp, cli, api] tags: [capability:book-meetings, category:scheduling, has:api, has:cli, has:mcp] docs: https://cal.com/docs/api-reference/v2/bookings/reschedule-a-booking updated: 2026-09-27 --- # Reschedule a booking Moves an accepted or pending booking to a new start time and returns the rescheduled booking. Pass the booking's UID and the new `start` in UTC, after checking the time is open with `get_availability`. A pending booking stays pending until the host confirms it. Cancelled, rejected and live instant bookings can't be rescheduled and return a 400: create a new booking instead. Send `cal-api-version: 2026-02-25`. ## Set up Use the first option your agent supports. ### MCP (official, remote) Add this server to your agent's MCP settings, then sign in when asked. ```json { "mcpServers": { "cal-com": { "url": "https://mcp.cal.com/mcp" } } } ``` Call the MCP tool `reschedule_booking`. Server URL: https://mcp.cal.com/mcp ### CLI (official) Install the command, then confirm it runs. ```sh npm install -g @calcom/cli calcom --version ``` Run `calcom bookings reschedule`. Set `$CAL_API_KEY` in your environment first (get a key: https://app.cal.com/settings/developer/api-keys). ### API (official) - Base URL: https://api.cal.com - Endpoint: `POST /v2/bookings/{bookingUid}/reschedule` - Auth: send the header `Authorization: Bearer $CAL_API_KEY` - Get a key: https://app.cal.com/settings/developer/api-keys - Docs: https://cal.com/docs/api-reference/v2/introduction Before doing anything else, make one read-only call to confirm access. ## Rules - Ask the user before anything that sends messages, costs money, or changes data. - Never print API keys. --- ref: tool:calendly/book-meeting name: Book a meeting company: company:calendly workflows: [] access: [mcp, api] tags: [capability:book-meetings, category:scheduling, has:api, has:mcp] docs: https://developer.calendly.com/api-docs/calendly-api/scheduled-events/create-event-invitee updated: 2026-09-27 --- # Book a meeting Books an invitee into an open time on an event type and returns the invitee with links to cancel or reschedule. Pass the `event_type` URI, a `start_time` in UTC taken from the event type's available times, and the `invitee`'s `email`, `timezone` and `name` (or `first_name`). Include `location` with its `kind` only when the event type sets a location, answer its required questions in `questions_and_answers` with the exact question text, and add `tracking` UTM parameters to attribute the meeting. Calendly sends the calendar invite and notifications as if the invitee had booked on the page. Needs a paid plan (Standard or above): the Free plan gets a 403. ## Set up Use the first option your agent supports. ### MCP (official, remote) Add this server to your agent's MCP settings, then sign in when asked. ```json { "mcpServers": { "calendly": { "url": "https://mcp.calendly.com" } } } ``` Call the MCP tool `meetings-create_invitee`. Server URL: https://mcp.calendly.com ### API (official) - Base URL: https://api.calendly.com - Endpoint: `POST /invitees` - Auth: send the header `Authorization: Bearer $CALENDLY_API_KEY` - Get a key: https://calendly.com/integrations/api_webhooks - Docs: https://developer.calendly.com/api-docs/overview/api/reference Before doing anything else, make one read-only call to confirm access. ## Rules - Ask the user before anything that sends messages, costs money, or changes data. - Never print API keys. --- ref: tool:calendly/create-scheduling-link name: Create a single-use scheduling link company: company:calendly workflows: [] access: [mcp, api] tags: [capability:book-meetings, category:scheduling, has:api, has:mcp] docs: https://developer.calendly.com/api-docs/calendly-api/scheduling-links/create-scheduling-link updated: 2026-09-27 --- # Create a single-use scheduling link Returns a single-use booking URL for one event type, good for one booked meeting. Pass the event type's URI as `owner`, `owner_type: EventType` and `max_event_count: 1`; list event types with `event_types-list_event_types` or `GET /event_types` to find it. Create one link per prospect and send the returned `booking_url`. To customize the meeting for one invitee without making a new event type, use `shares-create_share` or `POST /shares` instead; it works only for one-on-one event types. ## Set up Use the first option your agent supports. ### MCP (official, remote) Add this server to your agent's MCP settings, then sign in when asked. ```json { "mcpServers": { "calendly": { "url": "https://mcp.calendly.com" } } } ``` Call the MCP tool `scheduling_links-create_single_use_scheduling_link`. Server URL: https://mcp.calendly.com ### API (official) - Base URL: https://api.calendly.com - Endpoint: `POST /scheduling_links` - Auth: send the header `Authorization: Bearer $CALENDLY_API_KEY` - Get a key: https://calendly.com/integrations/api_webhooks - Docs: https://developer.calendly.com/api-docs/overview/api/reference Before doing anything else, make one read-only call to confirm access. ## Rules - Ask the user before anything that sends messages, costs money, or changes data. - Never print API keys. --- ref: tool:calendly/list-available-times name: List available times company: company:calendly workflows: [] access: [mcp, api] tags: [capability:book-meetings, category:scheduling, has:api, has:mcp] docs: https://developer.calendly.com/api-docs/calendly-api/event-types/list-event-type-available-times updated: 2026-09-27 --- # List available times Returns the open start times of one event type within a range of up to 31 days, each with its booking page URL. Pass the `event_type` URI, `start_time` and `end_time`. The range can't start in the past or span more than 31 days, and the results aren't paginated. Offer the prospect a few of the returned times, then book the chosen one with `meetings-create_invitee` or `POST /invitees`. ## Set up Use the first option your agent supports. ### MCP (official, remote) Add this server to your agent's MCP settings, then sign in when asked. ```json { "mcpServers": { "calendly": { "url": "https://mcp.calendly.com" } } } ``` Call the MCP tool `event_types-list_event_type_available_times`. Server URL: https://mcp.calendly.com ### API (official) - Base URL: https://api.calendly.com - Endpoint: `GET /event_type_available_times` - Auth: send the header `Authorization: Bearer $CALENDLY_API_KEY` - Get a key: https://calendly.com/integrations/api_webhooks - Docs: https://developer.calendly.com/api-docs/overview/api/reference Before doing anything else, make one read-only call to confirm access. ## Rules - Ask the user before anything that sends messages, costs money, or changes data. - Never print API keys. --- ref: tool:calendly/list-event-invitees name: List event invitees company: company:calendly workflows: [] access: [mcp, api] tags: [capability:book-meetings, category:scheduling, has:api, has:mcp] docs: https://developer.calendly.com/api-docs/calendly-api/scheduled-events/list-event-invitees updated: 2026-09-27 --- # List event invitees Returns the invitees of one scheduled event with their emails, booking-question answers, UTM tracking and no-show status. Pass the scheduled event's `uuid`, the last part of its URI. Filter by `status` or `email`; results come 20 per page in `created_at` order. Each invitee's `questions_and_answers` holds what the booking form collected and `tracking` holds its UTM parameters, ready to write to a CRM. ## Set up Use the first option your agent supports. ### MCP (official, remote) Add this server to your agent's MCP settings, then sign in when asked. ```json { "mcpServers": { "calendly": { "url": "https://mcp.calendly.com" } } } ``` Call the MCP tool `meetings-list_event_invitees`. Server URL: https://mcp.calendly.com ### API (official) - Base URL: https://api.calendly.com - Endpoint: `GET /scheduled_events/{uuid}/invitees` - Auth: send the header `Authorization: Bearer $CALENDLY_API_KEY` - Get a key: https://calendly.com/integrations/api_webhooks - Docs: https://developer.calendly.com/api-docs/overview/api/reference Before doing anything else, make one read-only call to confirm access. ## Rules - Ask the user before anything that sends messages, costs money, or changes data. - Never print API keys. --- ref: tool:calendly/list-scheduled-events name: List scheduled events company: company:calendly workflows: [] access: [mcp, api] tags: [capability:book-meetings, category:scheduling, has:api, has:mcp] docs: https://developer.calendly.com/api-docs/calendly-api/scheduled-events/list-scheduled-events updated: 2026-09-27 --- # List scheduled events Returns the meetings scheduled with a user, group or organization, filtered by invitee email, status and start time. Pass `user` or `organization` as a URI (`users-get_current_user` or `GET /users/me` returns yours); organization-wide results need admin or owner rights. Filter by `invitee_email` to check whether a prospect has already booked, and by `min_start_time` and `max_start_time` in UTC. Pages hold 20 events by default; follow `page_token` for more. ## Set up Use the first option your agent supports. ### MCP (official, remote) Add this server to your agent's MCP settings, then sign in when asked. ```json { "mcpServers": { "calendly": { "url": "https://mcp.calendly.com" } } } ``` Call the MCP tool `meetings-list_events`. Server URL: https://mcp.calendly.com ### API (official) - Base URL: https://api.calendly.com - Endpoint: `GET /scheduled_events` - Auth: send the header `Authorization: Bearer $CALENDLY_API_KEY` - Get a key: https://calendly.com/integrations/api_webhooks - Docs: https://developer.calendly.com/api-docs/overview/api/reference Before doing anything else, make one read-only call to confirm access. ## Rules - Ask the user before anything that sends messages, costs money, or changes data. - Never print API keys. --- ref: tool:canva/autofill-design name: Autofill a brand template company: company:canva workflows: [] access: [mcp, api] tags: [capability:design-assets, category:design, has:api, has:mcp] docs: https://www.canva.dev/docs/apps/rest-apis/reference/autofills/create-design-autofill-job/ updated: 2026-09-26 --- # Autofill a brand template Starts a job that creates a design from a brand template, or updates a design in place, filling its text, image and chart fields with your data. Needs a user on a plan with autofill, such as Canva Pro, Teams or Enterprise. Read the template's fields first with its dataset, then poll the job for the finished design. ## Set up Use the first option your agent supports. ### MCP (official, remote) Add this server to your agent's MCP settings, then sign in when asked. ```json { "mcpServers": { "canva": { "url": "https://mcp.canva.com/mcp" } } } ``` Call the MCP tool `autofill-design`. Server URL: https://mcp.canva.com/mcp ### API (official) - Base URL: https://api.canva.com/rest/v1 - Endpoint: `POST /autofills` - Auth: OAuth; sign in when the agent asks - Docs: https://www.canva.dev/docs/apps/rest-apis/ Before doing anything else, make one read-only call to confirm access. ## Rules - Ask the user before anything that sends messages, costs money, or changes data. - Never print API keys. --- ref: tool:canva/export-design name: Export a design company: company:canva workflows: [] access: [mcp, cli, api] tags: [capability:design-assets, category:design, has:api, has:cli, has:mcp] docs: https://www.canva.dev/docs/apps/rest-apis/reference/exports/create-design-export-job/ updated: 2026-09-26 --- # Export a design Starts a job that exports a design as PDF, PNG, JPG, GIF, PPTX, MP4 or HTML and returns download links that expire. Use the download links right away and don't store them: API links last 24 hours. ## Set up Use the first option your agent supports. ### MCP (official, remote) Add this server to your agent's MCP settings, then sign in when asked. ```json { "mcpServers": { "canva": { "url": "https://mcp.canva.com/mcp" } } } ``` Call the MCP tool `export-design`. Server URL: https://mcp.canva.com/mcp ### CLI (official) Install the command, then confirm it runs. ```sh npm install -g @canva/cli@latest canva --version ``` Run `canva api exports create`. ### API (official) - Base URL: https://api.canva.com/rest/v1 - Endpoint: `POST /exports` - Auth: OAuth; sign in when the agent asks - Docs: https://www.canva.dev/docs/apps/rest-apis/ Before doing anything else, make one read-only call to confirm access. ## Rules - Ask the user before anything that sends messages, costs money, or changes data. - Never print API keys. --- ref: tool:canva/generate-design name: Generate a design company: company:canva workflows: [] access: [mcp] tags: [capability:design-assets, category:design, has:mcp] docs: https://www.canva.dev/docs/apps/mcp/tools/generate-design/ updated: 2026-09-26 --- # Generate a design Generates design candidates from a natural-language brief and returns each candidate's id, preview link and thumbnails. Show the candidates to the user rather than picking one, then call `create-design-from-candidate` with the chosen `candidate_id` and the job id to turn it into an editable design with an edit link. ## Set up Use the first option your agent supports. ### MCP (official, remote) Add this server to your agent's MCP settings, then sign in when asked. ```json { "mcpServers": { "canva": { "url": "https://mcp.canva.com/mcp" } } } ``` Call the MCP tool `generate-design`. Server URL: https://mcp.canva.com/mcp Before doing anything else, make one read-only call to confirm access. ## Rules - Ask the user before anything that sends messages, costs money, or changes data. - Never print API keys. --- ref: tool:canva/resize-design name: Resize a design company: company:canva workflows: [] access: [mcp, api] tags: [capability:design-assets, category:design, has:api, has:mcp] docs: https://www.canva.dev/docs/apps/rest-apis/reference/resizes/create-design-resize-job/ updated: 2026-09-26 --- # Resize a design Starts a job that creates a resized copy of a design at a preset design type or a custom width and height. Needs a user on a plan with premium features, such as Canva Pro; Free users get a limited trial. Canva docs, emails and Canva Code designs can't be resized. ## Set up Use the first option your agent supports. ### MCP (official, remote) Add this server to your agent's MCP settings, then sign in when asked. ```json { "mcpServers": { "canva": { "url": "https://mcp.canva.com/mcp" } } } ``` Call the MCP tool `resize-design`. Server URL: https://mcp.canva.com/mcp ### API (official) - Base URL: https://api.canva.com/rest/v1 - Endpoint: `POST /resizes` - Auth: OAuth; sign in when the agent asks - Docs: https://www.canva.dev/docs/apps/rest-apis/ Before doing anything else, make one read-only call to confirm access. ## Rules - Ask the user before anything that sends messages, costs money, or changes data. - Never print API keys. --- ref: tool:chargebee/create-checkout name: Create a checkout for a new subscription company: company:chargebee workflows: [] access: [api] tags: [capability:collect-payments, category:payments, has:api] docs: https://apidocs.chargebee.com/docs/api/hosted_pages/create-checkout-for-a-new-subscription updated: 2026-09-27 --- # Create a checkout for a new subscription Creates a Chargebee-hosted checkout page for the plan and add-on prices you pass and returns it with the URL to send the customer. Pass the prices as `subscription_items[item_price_id][0]`, `[1]` and so on, with quantities; the first must be a plan. `customer[id]`, `coupon_ids` and `redirect_url` are optional. Completing checkout at the returned `url` creates the subscription. Don't rely on the redirect for critical post-checkout work: retrieve the hosted page to get the subscription and invoice. ## Set up Use the first option your agent supports. ### API (official) - Base URL: https://{site}.chargebee.com/api/v2 - Endpoint: `POST /hosted_pages/checkout_new_for_items` - Auth: send the header `Authorization: Basic $CHARGEBEE_API_KEY` - Docs: https://apidocs.chargebee.com/docs/api Before doing anything else, make one read-only call to confirm access. ## Rules - Ask the user before anything that sends messages, costs money, or changes data. - Never print API keys. --- ref: tool:chargebee/create-coupon name: Create a coupon company: company:chargebee workflows: [] access: [api] tags: [capability:collect-payments, category:payments, has:api] docs: https://apidocs.chargebee.com/docs/api/coupons/create-a-coupon-for-items updated: 2026-09-27 --- # Create a coupon Creates a percentage, fixed-amount or free-quantity coupon that applies to an invoice or to specific items, and returns the coupon. `id`, `name` and `apply_on` are required: `invoice_amount` discounts the invoice subtotal, and `each_specified_item` discounts the items set in `item_constraints`. Set `discount_type` (`percentage`, `fixed_amount` or `offer_quantity`) with its value, and `duration_type` (`one_time`, `forever` or `limited_period`) for how long it stays on a subscription; `max_redemptions` and `valid_till` cap its use. ## Set up Use the first option your agent supports. ### API (official) - Base URL: https://{site}.chargebee.com/api/v2 - Endpoint: `POST /coupons/create_for_items` - Auth: send the header `Authorization: Basic $CHARGEBEE_API_KEY` - Docs: https://apidocs.chargebee.com/docs/api Before doing anything else, make one read-only call to confirm access. ## Rules - Ask the user before anything that sends messages, costs money, or changes data. - Never print API keys. --- ref: tool:chargebee/list-customers name: List customers company: company:chargebee workflows: [] access: [api] tags: [capability:track-revenue, category:payments, has:api] docs: https://apidocs.chargebee.com/docs/api/customers/list-customers updated: 2026-09-27 --- # List customers Returns customers on your Chargebee site, filtered by email, name or company, to find the billing record for a person or account. Filter with `email[is]`, `first_name[is]`, `last_name[is]` or `company[is]`. Pass the returned customer `id` as `customer_id[is]` when listing subscriptions or invoices to see what they pay. ## Set up Use the first option your agent supports. ### API (official) - Base URL: https://{site}.chargebee.com/api/v2 - Endpoint: `GET /customers` - Auth: send the header `Authorization: Basic $CHARGEBEE_API_KEY` - Docs: https://apidocs.chargebee.com/docs/api Before doing anything else, make one read-only call to confirm access. ## Rules - Ask the user before anything that sends messages, costs money, or changes data. - Never print API keys. --- ref: tool:chargebee/list-invoices name: List invoices company: company:chargebee workflows: [] access: [api] tags: [capability:track-revenue, category:payments, has:api] docs: https://apidocs.chargebee.com/docs/api/invoices/list-invoices updated: 2026-09-27 --- # List invoices Returns invoices filtered by status, customer or subscription, with their amounts, dates and payment status. `status[in]` takes `paid`, `posted`, `payment_due`, `not_paid`, `voided` or `pending`; narrow it with `customer_id[is]` or `subscription_id[is]`. Pages hold up to 100 with `limit`. ## Set up Use the first option your agent supports. ### API (official) - Base URL: https://{site}.chargebee.com/api/v2 - Endpoint: `GET /invoices` - Auth: send the header `Authorization: Basic $CHARGEBEE_API_KEY` - Docs: https://apidocs.chargebee.com/docs/api Before doing anything else, make one read-only call to confirm access. ## Rules - Ask the user before anything that sends messages, costs money, or changes data. - Never print API keys. --- ref: tool:chargebee/list-subscriptions name: List subscriptions company: company:chargebee workflows: [] access: [api] tags: [capability:track-revenue, category:payments, has:api] docs: https://apidocs.chargebee.com/docs/api/subscriptions/list-subscriptions updated: 2026-09-27 --- # List subscriptions Returns the subscriptions that match every filter you pass, such as status, customer or plan price, with plan and billing details. Filter with `status[is]` (`future`, `in_trial`, `active`, `non_renewing`, `paused` or `cancelled`), `customer_id[is]` or `item_price_id[is]`. Pages hold 10 by default and up to 100 with `limit`; pass `next_offset` back as `offset` for the next page. ## Set up Use the first option your agent supports. ### API (official) - Base URL: https://{site}.chargebee.com/api/v2 - Endpoint: `GET /subscriptions` - Auth: send the header `Authorization: Basic $CHARGEBEE_API_KEY` - Docs: https://apidocs.chargebee.com/docs/api Before doing anything else, make one read-only call to confirm access. ## Rules - Ask the user before anything that sends messages, costs money, or changes data. - Never print API keys. --- ref: tool:clay/create-audience name: Create an audience company: company:clay workflows: [] access: [cli] tags: [capability:build-audience, category:data-provider, has:cli] docs: https://developers.clay.com/use-cases/enrich-leads-and-accounts updated: 2026-09-26 --- # Create an audience Saves a segment of the workspace's own people or companies from a filter, with membership that updates as records change. Audiences must be enabled for the workspace. The segment can trigger a Workflow or be referenced in a search to exclude records you already have. ## Set up Use the first option your agent supports. ### CLI (official) Install the command, then confirm it runs. ```sh npm install --global @clay-run/cli clay --version ``` Run `clay audiences create`. Before doing anything else, make one read-only call to confirm access. ## Rules - Ask the user before anything that sends messages, costs money, or changes data. - Never print API keys. --- ref: tool:clay/create-signal name: Create a signal company: company:clay workflows: [] access: [cli] tags: [capability:track-intent, category:data-provider, has:cli] docs: https://github.com/clay-run/agent-plugins/blob/main/clay/skills/signals/SKILL.md updated: 2026-09-26 --- # Create a signal Creates a signal that watches people or companies and records an event on a job change, promotion, new hire, job posting, funding news or topic intent. A signal watches a table view or Audiences segments. Run `clay signals create --help` for the supported types and each one's input shape; custom and web intent signals are set up in the Clay app. ## Set up Use the first option your agent supports. ### CLI (official) Install the command, then confirm it runs. ```sh npm install --global @clay-run/cli clay --version ``` Run `clay signals create`. Before doing anything else, make one read-only call to confirm access. ## Rules - Ask the user before anything that sends messages, costs money, or changes data. - Never print API keys. --- ref: tool:clay/run-routine name: Run a routine company: company:clay workflows: [workflow:high-intent-visitors, workflow:champion-job-change-loop] access: [cli, api] tags: [capability:enrich-contacts, category:data-provider, has:api, has:cli] docs: https://developers.clay.com/api-reference/routines/execute-a-routine-against-1-100-items updated: 2026-09-27 --- # Run a routine Runs a Clay-managed function such as Work Email or Company Domain, or a team's own function, on 1 to 100 records and returns a run id to poll for results. Clay-managed functions cover work email, phone, job title, company domain, employee count, tech stack, funding and job openings. List routines to find the id and input schema before running: the managed Work Email routine needs a full name, company name and company domain. Poll `GET /routines/run/{routine_run_id}/results` until the run is complete. ## Set up Use the first option your agent supports. ### CLI (official) Install the command, then confirm it runs. ```sh npm install --global @clay-run/cli clay --version ``` Run `clay routines runs start`. ### API (official) - Base URL: https://api.clay.com/public/v0 - Endpoint: `POST /routines/{routine_id}/run` - Auth: send the header `clay-api-key: $CLAY_PUBLIC_API_KEY` - Get a key: https://app.clay.com/workspaces/~/settings/account?accountTab=api-keys-beta - Docs: https://developers.clay.com/public-api/authentication Before doing anything else, make one read-only call to confirm access. ## Rules - Ask the user before anything that sends messages, costs money, or changes data. - Never print API keys. --- ref: tool:clay/search-people-and-companies name: Search people and companies company: company:clay workflows: [] access: [cli, api] tags: [capability:build-audience, category:data-provider, has:api, has:cli] docs: https://developers.clay.com/api-reference/search/create-a-search-from-a-clay-search-query updated: 2026-09-26 --- # Search people and companies Starts a search of Clay's database of people or companies from an advanced search query and returns a search id to page through the matches. Read the query reference first (`GET /search/query-mode/reference`), then page through results with `POST /search/query-mode/{search_id}/run` while `has_more` is true. Results per search and per 30 days are capped by plan. ## Set up Use the first option your agent supports. ### CLI (official) Install the command, then confirm it runs. ```sh npm install --global @clay-run/cli clay --version ``` Run `clay searches query-mode create`. ### API (official) - Base URL: https://api.clay.com/public/v0 - Endpoint: `POST /search/query-mode` - Auth: send the header `clay-api-key: $CLAY_PUBLIC_API_KEY` - Get a key: https://app.clay.com/workspaces/~/settings/account?accountTab=api-keys-beta - Docs: https://developers.clay.com/public-api/authentication Before doing anything else, make one read-only call to confirm access. ## Rules - Ask the user before anything that sends messages, costs money, or changes data. - Never print API keys. --- ref: tool:clerk/create-invitation name: Invite a user company: company:clerk workflows: [] access: [api] tags: [capability:authenticate-users, category:auth, has:api] docs: https://clerk.com/docs/reference/backend-api/tag/invitations/POST/invitations updated: 2026-09-26 --- # Invite a user Creates an invitation for an email address and sends the invitation email with a link to sign up. Fails if the email address already has an invitation or belongs to an existing user. Invitations expire after a month by default. ## Set up Use the first option your agent supports. ### API (official) - Base URL: https://api.clerk.com/v1 - Endpoint: `POST /invitations` - Auth: send the header `Authorization: Bearer $CLERK_SECRET_KEY` - Get a key: https://dashboard.clerk.com/~/api-keys - Docs: https://clerk.com/docs/reference/backend-api Before doing anything else, make one read-only call to confirm access. ## Rules - Ask the user before anything that sends messages, costs money, or changes data. - Never print API keys. --- ref: tool:clerk/invite-waitlist-entry name: Invite a waitlist entry company: company:clerk workflows: [] access: [api] tags: [capability:authenticate-users, category:auth, has:api] docs: https://clerk.com/docs/reference/backend-api/tag/waitlist-entries/POST/waitlist_entries/%7Bwaitlist_entry_id%7D/invite updated: 2026-09-26 --- # Invite a waitlist entry Sends an invitation to the email address on a waitlist entry so that person can sign up. Needs the application in Waitlist sign-up mode. Find entry ids with `GET /waitlist_entries`. ## Set up Use the first option your agent supports. ### API (official) - Base URL: https://api.clerk.com/v1 - Endpoint: `POST /waitlist_entries/{waitlist_entry_id}/invite` - Auth: send the header `Authorization: Bearer $CLERK_SECRET_KEY` - Get a key: https://dashboard.clerk.com/~/api-keys - Docs: https://clerk.com/docs/reference/backend-api Before doing anything else, make one read-only call to confirm access. ## Rules - Ask the user before anything that sends messages, costs money, or changes data. - Never print API keys. --- ref: tool:clerk/list-users name: List users company: company:clerk workflows: [] access: [cli, api] tags: [capability:authenticate-users, category:auth, has:api, has:cli] docs: https://clerk.com/docs/reference/backend-api/tag/users/GET/users updated: 2026-09-26 --- # List users Returns the application's users, newest first, filtered by email, name, organization or sign-up, sign-in and last-active dates. To walk many pages, paginate with `starting_after` rather than `offset`. ## Set up Use the first option your agent supports. ### CLI (official) Install the command, then confirm it runs. ```sh npm install -g clerk clerk --version ``` Run `clerk users list`. ### API (official) - Base URL: https://api.clerk.com/v1 - Endpoint: `GET /users` - Auth: send the header `Authorization: Bearer $CLERK_SECRET_KEY` - Get a key: https://dashboard.clerk.com/~/api-keys - Docs: https://clerk.com/docs/reference/backend-api Before doing anything else, make one read-only call to confirm access. ## Rules - Ask the user before anything that sends messages, costs money, or changes data. - Never print API keys. --- ref: tool:clickup/comment-on-task name: Comment on a task company: company:clickup workflows: [] access: [mcp, api] tags: [capability:manage-tasks, category:project-management, has:api, has:mcp] docs: https://developer.clickup.com/reference/createtaskcomment updated: 2026-09-27 --- # Comment on a task Adds a comment to a task, optionally assigned to someone, and returns the new comment's id. On the MCP server, pass `entity_type: "task"` and the task id as `entity_id`; the older `clickup_create_task_comment` is deprecated. On the API, `comment_text` and `notify_all` are required. The task's assignees and watchers are always notified; `notify_all: true` notifies the comment's author as well. ## Set up Use the first option your agent supports. ### MCP (official, remote) Add this server to your agent's MCP settings, then sign in when asked. ```json { "mcpServers": { "clickup": { "url": "https://mcp.clickup.com/mcp" } } } ``` Call the MCP tool `clickup_create_comment`. Server URL: https://mcp.clickup.com/mcp ### API (official) - Base URL: https://api.clickup.com/api - Endpoint: `POST /v2/task/{task_id}/comment` - Auth: send the header `Authorization: $CLICKUP_API_KEY` - Get a key: https://app.clickup.com/settings/apps - Docs: https://developer.clickup.com/docs/authentication Before doing anything else, make one read-only call to confirm access. ## Rules - Ask the user before anything that sends messages, costs money, or changes data. - Never print API keys. --- ref: tool:clickup/create-task name: Create a task company: company:clickup workflows: [] access: [mcp, api] tags: [capability:manage-tasks, category:project-management, has:api, has:mcp] docs: https://developer.clickup.com/reference/createtask updated: 2026-09-27 --- # Create a task Creates a task in a List with its name, description, assignees, status, priority, due date and custom fields, and returns the task. `name` is the only required field. Statuses differ per List, so read the valid ones before setting one (`clickup_get_task` with `expand_statuses: true`). The MCP tool takes assignees as emails, usernames or numeric ids but ignores `me`: resolve the current user with `clickup_resolve_assignees` first, and pass `workspace_id` when the user belongs to more than one Workspace. Custom field values save only when the field applies to the task's `custom_item_id`. ## Set up Use the first option your agent supports. ### MCP (official, remote) Add this server to your agent's MCP settings, then sign in when asked. ```json { "mcpServers": { "clickup": { "url": "https://mcp.clickup.com/mcp" } } } ``` Call the MCP tool `clickup_create_task`. Server URL: https://mcp.clickup.com/mcp ### API (official) - Base URL: https://api.clickup.com/api - Endpoint: `POST /v2/list/{list_id}/task` - Auth: send the header `Authorization: $CLICKUP_API_KEY` - Get a key: https://app.clickup.com/settings/apps - Docs: https://developer.clickup.com/docs/authentication Before doing anything else, make one read-only call to confirm access. ## Rules - Ask the user before anything that sends messages, costs money, or changes data. - Never print API keys. --- ref: tool:clickup/filter-tasks name: Filter tasks in a Workspace company: company:clickup workflows: [] access: [mcp, api] tags: [capability:manage-tasks, category:project-management, has:api, has:mcp] docs: https://developer.clickup.com/reference/getfilteredteamtasks updated: 2026-09-27 --- # Filter tasks in a Workspace Returns the tasks across a Workspace that match filters such as Lists, statuses, assignees, tags and dates, 100 per page. Closed tasks are left out unless you set `include_closed`, and statuses are matched by their exact names. On the API, `team_Id` is the Workspace id, the filters are array parameters such as `list_ids[]` and `assignees[]`, and `page` starts at 0. The MCP tool returns `has_more` and `next_page`. ## Set up Use the first option your agent supports. ### MCP (official, remote) Add this server to your agent's MCP settings, then sign in when asked. ```json { "mcpServers": { "clickup": { "url": "https://mcp.clickup.com/mcp" } } } ``` Call the MCP tool `clickup_filter_tasks`. Server URL: https://mcp.clickup.com/mcp ### API (official) - Base URL: https://api.clickup.com/api - Endpoint: `GET /v2/team/{team_Id}/task` - Auth: send the header `Authorization: $CLICKUP_API_KEY` - Get a key: https://app.clickup.com/settings/apps - Docs: https://developer.clickup.com/docs/authentication Before doing anything else, make one read-only call to confirm access. ## Rules - Ask the user before anything that sends messages, costs money, or changes data. - Never print API keys. --- ref: tool:clickup/send-chat-message name: Send a Chat message company: company:clickup workflows: [] access: [mcp, api] tags: [capability:route-alerts, category:project-management, has:api, has:mcp] docs: https://developer.clickup.com/reference/createchatmessage updated: 2026-09-27 --- # Send a Chat message Posts a message to a ClickUp Chat channel, such as an alert for a team, and returns the message. Find the channel with `clickup_get_chat_channels`, then pass its `channel_id` and the message `content`. On the API, `type` (`message` or `post`) and `content` are required, and content is Markdown by default. The reference prints this path as `/api/v3/...` under `https://api.clickup.com`, which is the same URL. ## Set up Use the first option your agent supports. ### MCP (official, remote) Add this server to your agent's MCP settings, then sign in when asked. ```json { "mcpServers": { "clickup": { "url": "https://mcp.clickup.com/mcp" } } } ``` Call the MCP tool `clickup_send_chat_message`. Server URL: https://mcp.clickup.com/mcp ### API (official) - Base URL: https://api.clickup.com/api - Endpoint: `POST /v3/workspaces/{workspace_id}/chat/channels/{channel_id}/messages` - Auth: send the header `Authorization: $CLICKUP_API_KEY` - Get a key: https://app.clickup.com/settings/apps - Docs: https://developer.clickup.com/docs/authentication Before doing anything else, make one read-only call to confirm access. ## Rules - Ask the user before anything that sends messages, costs money, or changes data. - Never print API keys. --- ref: tool:clickup/update-task name: Update a task company: company:clickup workflows: [] access: [mcp, api] tags: [capability:manage-tasks, category:project-management, has:api, has:mcp] docs: https://developer.clickup.com/reference/updatetask updated: 2026-09-27 --- # Update a task Changes the fields you send on a task, such as its name, description, status, priority, dates or assignees, and leaves the rest as they were. Statuses differ per List and must match exactly: confirm them with `clickup_get_task` and `expand_statuses: true`. On the API, change assignees with an `assignees` object holding `add` and `rem` arrays of user ids. ## Set up Use the first option your agent supports. ### MCP (official, remote) Add this server to your agent's MCP settings, then sign in when asked. ```json { "mcpServers": { "clickup": { "url": "https://mcp.clickup.com/mcp" } } } ``` Call the MCP tool `clickup_update_task`. Server URL: https://mcp.clickup.com/mcp ### API (official) - Base URL: https://api.clickup.com/api - Endpoint: `PUT /v2/task/{task_id}` - Auth: send the header `Authorization: $CLICKUP_API_KEY` - Get a key: https://app.clickup.com/settings/apps - Docs: https://developer.clickup.com/docs/authentication Before doing anything else, make one read-only call to confirm access. ## Rules - Ask the user before anything that sends messages, costs money, or changes data. - Never print API keys. --- ref: tool:close/create-contact name: Create a contact company: company:close workflows: [] access: [mcp, api] tags: [capability:manage-crm, category:crm, has:api, has:mcp] docs: https://developer.close.com/api/resources/contacts/create updated: 2026-09-27 --- # Create a contact Adds a person, with name, title, emails, phones and URLs, to a lead and returns the new contact. A contact belongs to exactly one lead: pass its `lead_id`. Without one, Close creates a new lead named after the contact. Send `emails` as objects with an `email` and an optional `type`. ## Set up Use the first option your agent supports. ### MCP (official, remote) Add this server to your agent's MCP settings, then sign in when asked. ```json { "mcpServers": { "close": { "url": "https://mcp.close.com/mcp" } } } ``` Call the MCP tool `create_contact`. Server URL: https://mcp.close.com/mcp ### API (official) - Base URL: https://api.close.com/api/v1 - Endpoint: `POST /contact/` - Auth: send the header `Authorization: Basic $CLOSE_API_KEY` - Docs: https://developer.close.com/api/overview Before doing anything else, make one read-only call to confirm access. ## Rules - Ask the user before anything that sends messages, costs money, or changes data. - Never print API keys. --- ref: tool:close/create-lead name: Create a lead company: company:close workflows: [] access: [mcp, api] tags: [capability:manage-crm, category:crm, has:api, has:mcp] docs: https://developer.close.com/api/resources/leads/create updated: 2026-09-27 --- # Create a lead Creates a lead (a company) and returns it with its ID; over the API its contacts, addresses and custom fields can be created in the same call. Set the status with `status_id` rather than the status label, so renaming a status in Close doesn't break the call; without one, the organization's default status is used. Custom fields go in `custom.` keys. Opportunities, tasks and activities are created with their own calls. ## Set up Use the first option your agent supports. ### MCP (official, remote) Add this server to your agent's MCP settings, then sign in when asked. ```json { "mcpServers": { "close": { "url": "https://mcp.close.com/mcp" } } } ``` Call the MCP tool `create_lead`. Server URL: https://mcp.close.com/mcp ### API (official) - Base URL: https://api.close.com/api/v1 - Endpoint: `POST /lead/` - Auth: send the header `Authorization: Basic $CLOSE_API_KEY` - Docs: https://developer.close.com/api/overview Before doing anything else, make one read-only call to confirm access. ## Rules - Ask the user before anything that sends messages, costs money, or changes data. - Never print API keys. --- ref: tool:close/create-note name: Create a note company: company:close workflows: [] access: [mcp, api] tags: [capability:manage-crm, category:crm, has:api, has:mcp] docs: https://developer.close.com/api/resources/activities/notes/create updated: 2026-09-27 --- # Create a note Logs a note activity on a lead, optionally tied to one of its contacts. `lead_id` is required. Send the text as plain `note` or rich-text `note_html`, and set `pinned` to pin the note on the lead. ## Set up Use the first option your agent supports. ### MCP (official, remote) Add this server to your agent's MCP settings, then sign in when asked. ```json { "mcpServers": { "close": { "url": "https://mcp.close.com/mcp" } } } ``` Call the MCP tool `create_note`. Server URL: https://mcp.close.com/mcp ### API (official) - Base URL: https://api.close.com/api/v1 - Endpoint: `POST /activity/note/` - Auth: send the header `Authorization: Basic $CLOSE_API_KEY` - Docs: https://developer.close.com/api/overview Before doing anything else, make one read-only call to confirm access. ## Rules - Ask the user before anything that sends messages, costs money, or changes data. - Never print API keys. --- ref: tool:close/search-leads name: Search leads and contacts company: company:close workflows: [] access: [mcp, api] tags: [capability:manage-crm, category:crm, has:api, has:mcp] docs: https://developer.close.com/api/resources/advanced-filtering updated: 2026-09-27 --- # Search leads and contacts Returns the leads or contacts that match a query, such as contacts with CTO in their title or leads not contacted in the past week. The MCP tool takes a plain-language query and returns each match's label, preview, ID and URL, plus a cursor for `paginate_search`. The API takes a JSON `query` of `object_type` and `field_condition` clauses and returns only IDs unless you pass `_fields`. To get a query's JSON, build the filter on the Leads page in Close and choose Copy Filters. ## Set up Use the first option your agent supports. ### MCP (official, remote) Add this server to your agent's MCP settings, then sign in when asked. ```json { "mcpServers": { "close": { "url": "https://mcp.close.com/mcp" } } } ``` Call the MCP tool `search`. Server URL: https://mcp.close.com/mcp ### API (official) - Base URL: https://api.close.com/api/v1 - Endpoint: `POST /data/search/` - Auth: send the header `Authorization: Basic $CLOSE_API_KEY` - Docs: https://developer.close.com/api/overview Before doing anything else, make one read-only call to confirm access. ## Rules - Ask the user before anything that sends messages, costs money, or changes data. - Never print API keys. --- ref: tool:close/subscribe-to-sequence name: Subscribe a contact to a sequence company: company:close workflows: [] access: [api] tags: [capability:send-email, category:crm, has:api] docs: https://developer.close.com/api/resources/sequences/create-subscription updated: 2026-09-27 --- # Subscribe a contact to a sequence Enrolls a contact in a sequence (workflow), whose timed email and call steps run until the contact replies. The docs' example request names the sequence (`sequence_id`), the contact (`contact_id` and `contact_email`), the sender (`sender_account_id`, `sender_name` and `sender_email`) and `calls_assigned_to`, a list of user IDs. Subscribing starts real outbound email: confirm the sequence, sender and contact first. The MCP server can create a draft sequence (`create_workflow`) but has no tool that subscribes contacts. ## Set up Use the first option your agent supports. ### API (official) - Base URL: https://api.close.com/api/v1 - Endpoint: `POST /sequence_subscription/` - Auth: send the header `Authorization: Basic $CLOSE_API_KEY` - Docs: https://developer.close.com/api/overview Before doing anything else, make one read-only call to confirm access. ## Rules - Ask the user before anything that sends messages, costs money, or changes data. - Never print API keys. --- ref: tool:crustdata/enrich-company name: Enrich a company company: company:crustdata workflows: [] access: [cli, api] tags: [capability:research-accounts, category:data-provider, has:api, has:cli] docs: https://docs.crustdata.com/api-reference/company-apis/get-full-company-enrichment updated: 2026-09-27 --- # Enrich a company Returns a company's firmographics, headcount, funding, web traffic, employee reviews, key people and news, found by domain, name, profile URL or Crustdata ID. Pass `fields` to pick only the data groups you need and keep the response small. ## Set up Use the first option your agent supports. ### CLI (official) Install the command, then confirm it runs. ```sh curl -fsSL https://static-assets.crustdata.com/cli/install.sh | sh crustdata --version ``` Run `crustdata company enrich`. Set `$CRUSTDATA_API_KEY` in your environment first (get a key: https://app.crustdata.com/api-keys). ### API (official) - Base URL: https://api.crustdata.com - Endpoint: `POST /company/enrich` - Auth: send the header `Authorization: Bearer $CRUSTDATA_API_KEY` - Get a key: https://app.crustdata.com/api-keys - Docs: https://docs.crustdata.com/openapi-specs/2025-11-01/introduction Before doing anything else, make one read-only call to confirm access. ## Rules - Ask the user before anything that sends messages, costs money, or changes data. - Never print API keys. --- ref: tool:crustdata/enrich-person name: Enrich a person company: company:crustdata workflows: [] access: [cli, api] tags: [capability:enrich-contacts, category:data-provider, has:api, has:cli] docs: https://docs.crustdata.com/api-reference/person-apis/enrich-person-profiles-from-cached-dataset updated: 2026-09-27 --- # Enrich a person Returns employment history, education and skills for up to 25 people at once, found by their professional profile URLs. ## Set up Use the first option your agent supports. ### CLI (official) Install the command, then confirm it runs. ```sh curl -fsSL https://static-assets.crustdata.com/cli/install.sh | sh crustdata --version ``` Run `crustdata person enrich`. Set `$CRUSTDATA_API_KEY` in your environment first (get a key: https://app.crustdata.com/api-keys). ### API (official) - Base URL: https://api.crustdata.com - Endpoint: `POST /person/enrich` - Auth: send the header `Authorization: Bearer $CRUSTDATA_API_KEY` - Get a key: https://app.crustdata.com/api-keys - Docs: https://docs.crustdata.com/openapi-specs/2025-11-01/introduction Before doing anything else, make one read-only call to confirm access. ## Rules - Ask the user before anything that sends messages, costs money, or changes data. - Never print API keys. --- ref: tool:crustdata/enrich-person-contact name: "Get a person's emails and phone numbers" company: company:crustdata workflows: [] access: [cli, api] tags: [capability:find-work-emails, category:data-provider, has:api, has:cli] docs: https://docs.crustdata.com/api-reference/person-apis/enrich-only-person-contact-data-from-cached-dataset updated: 2026-09-27 --- # Get a person's emails and phone numbers Returns business emails, personal emails and phone numbers for up to 25 people at once, found by professional profile URL or business email. Pass one identifier type per request. Pass `fields` such as `contact.business_emails` to request only the contact data you need. ## Set up Use the first option your agent supports. ### CLI (official) Install the command, then confirm it runs. ```sh curl -fsSL https://static-assets.crustdata.com/cli/install.sh | sh crustdata --version ``` Run `crustdata person contacts`. Set `$CRUSTDATA_API_KEY` in your environment first (get a key: https://app.crustdata.com/api-keys). ### API (official) - Base URL: https://api.crustdata.com - Endpoint: `POST /person/contact/enrich` - Auth: send the header `Authorization: Bearer $CRUSTDATA_API_KEY` - Get a key: https://app.crustdata.com/api-keys - Docs: https://docs.crustdata.com/openapi-specs/2025-11-01/introduction Before doing anything else, make one read-only call to confirm access. ## Rules - Ask the user before anything that sends messages, costs money, or changes data. - Never print API keys. --- ref: tool:crustdata/search-companies name: Search companies company: company:crustdata workflows: [] access: [cli, api] tags: [capability:build-audience, category:data-provider, has:api, has:cli] docs: https://docs.crustdata.com/api-reference/company-apis/search-companies-with-indexed-fields-only updated: 2026-09-27 --- # Search companies Searches Crustdata's company database with structured filters, a natural-language query or both, and returns ranked companies with a cursor for the next page. Up to 100 results per page. Pages cost credits, so follow `next_cursor` only as far as you need. ## Set up Use the first option your agent supports. ### CLI (official) Install the command, then confirm it runs. ```sh curl -fsSL https://static-assets.crustdata.com/cli/install.sh | sh crustdata --version ``` Run `crustdata company search`. Set `$CRUSTDATA_API_KEY` in your environment first (get a key: https://app.crustdata.com/api-keys). ### API (official) - Base URL: https://api.crustdata.com - Endpoint: `POST /company/search` - Auth: send the header `Authorization: Bearer $CRUSTDATA_API_KEY` - Get a key: https://app.crustdata.com/api-keys - Docs: https://docs.crustdata.com/openapi-specs/2025-11-01/introduction Before doing anything else, make one read-only call to confirm access. ## Rules - Ask the user before anything that sends messages, costs money, or changes data. - Never print API keys. --- ref: tool:crustdata/search-people name: Search people company: company:crustdata workflows: [] access: [cli, api] tags: [capability:build-audience, category:data-provider, has:api, has:cli] docs: https://docs.crustdata.com/api-reference/person-apis/search-people-using-filters-and-sorting updated: 2026-09-27 --- # Search people Searches Crustdata's person database by title, company, seniority, location, industry, education and more, and returns matching profiles with a cursor for the next page. ## Set up Use the first option your agent supports. ### CLI (official) Install the command, then confirm it runs. ```sh curl -fsSL https://static-assets.crustdata.com/cli/install.sh | sh crustdata --version ``` Run `crustdata person search`. Set `$CRUSTDATA_API_KEY` in your environment first (get a key: https://app.crustdata.com/api-keys). ### API (official) - Base URL: https://api.crustdata.com - Endpoint: `POST /person/search` - Auth: send the header `Authorization: Bearer $CRUSTDATA_API_KEY` - Get a key: https://app.crustdata.com/api-keys - Docs: https://docs.crustdata.com/openapi-specs/2025-11-01/introduction Before doing anything else, make one read-only call to confirm access. ## Rules - Ask the user before anything that sends messages, costs money, or changes data. - Never print API keys. --- ref: tool:customer-io/create-one-time-send name: Create a one-time send company: company:customer-io workflows: [] access: [mcp, api] tags: [capability:send-email, category:email, has:api, has:mcp] docs: https://docs.customer.io/integrations/api/app/tag/newsletters/createNewsletter/ updated: 2026-09-27 --- # Create a one-time send Creates a one-time send (a newsletter) for a filter over segments and attributes or a CSV of recipients, as a draft, scheduled, or sent right away. Set the audience with `recipients` or `recipient_file_url`, never both. Set `send_now` to `true` to send at once, or `scheduled_at` to a future Unix timestamp; with neither it stays a draft. The name and audience can't change after creation. If the workspace has a subscription center, `subscription_topic_id` is required. On the MCP server, find the endpoint with `cio_schema` and call it with `cio_write_api`. ## Set up Use the first option your agent supports. ### MCP (official, remote) Add this server to your agent's MCP settings, then sign in when asked. ```json { "mcpServers": { "customer-io": { "url": "https://mcp.customer.io/mcp" } } } ``` Call the MCP tool `cio_write_api`. Server URL: https://mcp.customer.io/mcp ### API (official) - Base URL: https://api.customer.io - Endpoint: `POST /v1/newsletters` - Auth: send the header `Authorization: Bearer $CUSTOMERIO_API_KEY` - Get a key: https://fly.customer.io/settings/api_credentials?keyType=app - Docs: https://docs.customer.io/integrations/api/app/ Before doing anything else, make one read-only call to confirm access. ## Rules - Ask the user before anything that sends messages, costs money, or changes data. - Never print API keys. --- ref: tool:customer-io/search-people name: Search for people company: company:customer-io workflows: [] access: [api] tags: [capability:build-audience, category:email, has:api] docs: https://docs.customer.io/integrations/api/app/tag/customers/getPeopleFilter/ updated: 2026-09-27 --- # Search for people Returns up to 1,000 people in a workspace who match a filter on segment membership and attribute values. Combine conditions with `and`, `or` and `not`; an attribute condition matches a value (`eq`) or the attribute's presence (`exists`). Read the `identifiers` array in the response. For larger sets, export the people instead (`POST /v1/exports/customers`). ## Set up Use the first option your agent supports. ### API (official) - Base URL: https://api.customer.io - Endpoint: `POST /v1/customers` - Auth: send the header `Authorization: Bearer $CUSTOMERIO_API_KEY` - Get a key: https://fly.customer.io/settings/api_credentials?keyType=app - Docs: https://docs.customer.io/integrations/api/app/ Before doing anything else, make one read-only call to confirm access. ## Rules - Ask the user before anything that sends messages, costs money, or changes data. - Never print API keys. --- ref: tool:customer-io/send-transactional-email name: Send a transactional email company: company:customer-io workflows: [] access: [cli, api] tags: [capability:send-email, category:email, has:api, has:cli] docs: https://docs.customer.io/integrations/api/app/tag/send-messages/sendEmail/ updated: 2026-09-27 --- # Send a transactional email Sends one transactional email to a person, from a template filled with your message data or from a subject, body and sender you pass, creating the person if needed. Pass `to`, the person's `identifiers` (one of `id`, `email` or `cio_id`) and a `transactional_message_id`, the template's ID or trigger name, so metrics roll up per message; `message_data` fills the template's Liquid. The CLI sends with a service-account token and needs `--environment-id`, the workspace ID; production code should send with an App API key. ## Set up Use the first option your agent supports. ### CLI (official) Install the command, then confirm it runs. ```sh npm install -g @customerio/cli cio --version ``` Run `cio send email`. Set `$CIO_TOKEN` in your environment first (get a key: https://fly.customer.io/settings/api_credentials?keyType=service_accounts). ### API (official) - Base URL: https://api.customer.io - Endpoint: `POST /v1/send/email` - Auth: send the header `Authorization: Bearer $CUSTOMERIO_API_KEY` - Get a key: https://fly.customer.io/settings/api_credentials?keyType=app - Docs: https://docs.customer.io/integrations/api/app/ Before doing anything else, make one read-only call to confirm access. ## Rules - Ask the user before anything that sends messages, costs money, or changes data. - Never print API keys. --- ref: tool:customer-io/trigger-broadcast name: Trigger a broadcast company: company:customer-io workflows: [] access: [api] tags: [capability:send-email, category:email, has:api] docs: https://docs.customer.io/integrations/api/app/tag/send-messages/triggerBroadcast/ updated: 2026-09-27 --- # Trigger a broadcast Sends an API-triggered broadcast now or at a scheduled time, to its saved audience or to the people, emails or filter you pass, with data for its Liquid placeholders. Set the broadcast up in Customer.io first. It reaches only people already in the workspace: unknown recipients fail the request unless you set `email_ignore_missing` or `id_ignore_missing` to `true`. Reference `data` in the message as `{{trigger.}}`. This endpoint allows one request every 10 seconds. ## Set up Use the first option your agent supports. ### API (official) - Base URL: https://api.customer.io - Endpoint: `POST /v1/campaigns/{broadcast_id}/triggers` - Auth: send the header `Authorization: Bearer $CUSTOMERIO_API_KEY` - Get a key: https://fly.customer.io/settings/api_credentials?keyType=app - Docs: https://docs.customer.io/integrations/api/app/ Before doing anything else, make one read-only call to confirm access. ## Rules - Ask the user before anything that sends messages, costs money, or changes data. - Never print API keys. --- ref: tool:dropbox/create-file-request name: Create a file request company: company:dropbox workflows: [] access: [api] tags: [capability:store-files, category:storage, has:api] docs: https://docs.dropboxapi.com/dropbox-api/api-reference/user-endpoints/file-requests/create updated: 2026-09-26 --- # Create a file request Creates a file request for a destination folder and returns the URL others use to upload files into it. Give it a `title` and a `destination` folder. Deadlines can only be set by Professional and Business accounts. Requires the `file_requests.write` scope. ## Set up Use the first option your agent supports. ### API (official) - Base URL: https://api.dropboxapi.com - Endpoint: `POST /2/file_requests/create` - Auth: OAuth; sign in when the agent asks - Docs: https://docs.dropboxapi.com/dropbox-api/api-reference/overview Before doing anything else, make one read-only call to confirm access. ## Rules - Ask the user before anything that sends messages, costs money, or changes data. - Never print API keys. --- ref: tool:dropbox/create-shared-link name: Create a shared link company: company:dropbox workflows: [] access: [api] tags: [capability:store-files, category:storage, has:api] docs: https://docs.dropboxapi.com/dropbox-api/api-reference/user-endpoints/sharing/create-shared-link-with-settings updated: 2026-09-26 --- # Create a shared link Creates a shared link to a file or folder, with optional settings for audience, access, downloads, password and expiry. With no settings the link is public by default, though team and shared-folder settings can change the resolved visibility. Requires the `sharing.write` scope. ## Set up Use the first option your agent supports. ### API (official) - Base URL: https://api.dropboxapi.com - Endpoint: `POST /2/sharing/create_shared_link_with_settings` - Auth: OAuth; sign in when the agent asks - Docs: https://docs.dropboxapi.com/dropbox-api/api-reference/overview Before doing anything else, make one read-only call to confirm access. ## Rules - Ask the user before anything that sends messages, costs money, or changes data. - Never print API keys. --- ref: tool:dropbox/save-url name: Save a file from a URL company: company:dropbox workflows: [] access: [api] tags: [capability:store-files, category:storage, has:api] docs: https://docs.dropboxapi.com/dropbox-api/api-reference/user-endpoints/files/save-url updated: 2026-09-26 --- # Save a file from a URL Downloads the file at a URL into a path in the user's Dropbox, as a job that must finish within 15 minutes. The call returns an `async_job_id`; check it with `POST /2/files/save_url/check_job_status`. Requires the `files.content.write` scope. ## Set up Use the first option your agent supports. ### API (official) - Base URL: https://api.dropboxapi.com - Endpoint: `POST /2/files/save_url` - Auth: OAuth; sign in when the agent asks - Docs: https://docs.dropboxapi.com/dropbox-api/api-reference/overview Before doing anything else, make one read-only call to confirm access. ## Rules - Ask the user before anything that sends messages, costs money, or changes data. - Never print API keys. --- ref: tool:dropbox/search-files name: Search files company: company:dropbox workflows: [] access: [api] tags: [capability:store-files, category:storage, has:api] docs: https://docs.dropboxapi.com/dropbox-api/api-reference/user-endpoints/files/search-v-2 updated: 2026-09-26 --- # Search files Returns files and folders that match a query, optionally limited to a folder, file extensions, file categories or file names only. Results page through `search/continue_v2`, up to 10,000 matches in total, and recent changes can take a short while to be indexed. ## Set up Use the first option your agent supports. ### API (official) - Base URL: https://api.dropboxapi.com - Endpoint: `POST /2/files/search_v2` - Auth: OAuth; sign in when the agent asks - Docs: https://docs.dropboxapi.com/dropbox-api/api-reference/overview Before doing anything else, make one read-only call to confirm access. ## Rules - Ask the user before anything that sends messages, costs money, or changes data. - Never print API keys. --- ref: tool:exa/answer-question name: Answer a question from the web company: company:exa workflows: [] access: [api] tags: [capability:research-accounts, category:web-search, has:api] docs: https://exa.ai/docs/reference/answer updated: 2026-09-27 --- # Answer a question from the web Searches the web for a question and returns a direct answer or a summary with citations, or JSON that matches an output schema. Specific questions get a direct answer and open-ended ones a detailed summary with citations. Pass `outputSchema` for a structured answer, and use Exa Agent for research that needs many searches. ## Set up Use the first option your agent supports. ### API (official) - Base URL: https://api.exa.ai - Endpoint: `POST /answer` - Auth: send the header `Authorization: Bearer $EXA_API_KEY` - Get a key: https://dashboard.exa.ai/api-keys - Docs: https://exa.ai/docs/get-started/quickstart Before doing anything else, make one read-only call to confirm access. ## Rules - Ask the user before anything that sends messages, costs money, or changes data. - Never print API keys. --- ref: tool:exa/create-monitor name: Monitor the web for new results company: company:exa workflows: [] access: [api] tags: [capability:track-intent, category:web-search, has:api] docs: https://exa.ai/docs/reference/monitors/create-a-monitor updated: 2026-09-27 --- # Monitor the web for new results Creates a monitor that reruns an Exa search on a schedule and sends only new, deduplicated results to your webhook. Use it to follow signals such as funding rounds, competitor announcements or news. Write the query around the ongoing signal rather than a date range: each run only fetches content from after the previous run. Store the `webhookSecret` from the response, which is returned only once and verifies webhook signatures. ## Set up Use the first option your agent supports. ### API (official) - Base URL: https://api.exa.ai - Endpoint: `POST /monitors` - Auth: send the header `Authorization: Bearer $EXA_API_KEY` - Get a key: https://dashboard.exa.ai/api-keys - Docs: https://exa.ai/docs/get-started/quickstart Before doing anything else, make one read-only call to confirm access. ## Rules - Ask the user before anything that sends messages, costs money, or changes data. - Never print API keys. --- ref: tool:exa/get-page-contents name: Read web pages company: company:exa workflows: [] access: [mcp, api] tags: [capability:scrape-web, category:web-search, has:api, has:mcp] docs: https://exa.ai/docs/reference/get-contents updated: 2026-09-27 --- # Read web pages Returns clean text, the most relevant highlights or a summary for one or more known URLs, from Exa's cache or a fresh crawl. Set `maxAgeHours` to 0 to fetch fresh content instead of cached content. To read a site's other pages too, set `subpages` and name the ones you want with `subpageTarget`. ## Set up Use the first option your agent supports. ### MCP (official, remote) Add this server to your agent's MCP settings, then sign in when asked. ```json { "mcpServers": { "exa": { "url": "https://mcp.exa.ai/mcp?login" } } } ``` Call the MCP tool `web_fetch_exa`. Server URL: https://mcp.exa.ai/mcp?login ### API (official) - Base URL: https://api.exa.ai - Endpoint: `POST /contents` - Auth: send the header `Authorization: Bearer $EXA_API_KEY` - Get a key: https://dashboard.exa.ai/api-keys - Docs: https://exa.ai/docs/get-started/quickstart Before doing anything else, make one read-only call to confirm access. ## Rules - Ask the user before anything that sends messages, costs money, or changes data. - Never print API keys. --- ref: tool:exa/run-agent name: Run a list-building and research agent company: company:exa workflows: [] access: [mcp, api] tags: [capability:build-audience, category:web-search, has:api, has:mcp] docs: https://exa.ai/docs/reference/agent-api/create-a-run updated: 2026-09-27 --- # Run a list-building and research agent Starts an Exa Agent run that searches and reads the web to build lists, enrich records you pass in or research a question, and returns cited findings with optional schema-validated JSON. Describe the data you want in `query`. Pass `outputSchema` for JSON in `output.structured`, `input.data` for rows to enrich, and `effort` to trade cost for completeness; `budget` caps what an `auto` or `ultra` run can spend. Runs are asynchronous: the API returns the run to poll with `GET /agent/runs/{id}`, and the MCP tool reports `status: "running"` with an `id` to pass back as `runId`. `agent_run` needs OAuth or an API key. ## Set up Use the first option your agent supports. ### MCP (official, remote) Add this server to your agent's MCP settings, then sign in when asked. ```json { "mcpServers": { "exa": { "url": "https://mcp.exa.ai/mcp?login" } } } ``` Call the MCP tool `agent_run`. Server URL: https://mcp.exa.ai/mcp?login ### API (official) - Base URL: https://api.exa.ai - Endpoint: `POST /agent/runs` - Auth: send the header `Authorization: Bearer $EXA_API_KEY` - Get a key: https://dashboard.exa.ai/api-keys - Docs: https://exa.ai/docs/get-started/quickstart Before doing anything else, make one read-only call to confirm access. ## Rules - Ask the user before anything that sends messages, costs money, or changes data. - Never print API keys. --- ref: tool:exa/search-web name: Search the web company: company:exa workflows: [] access: [mcp, api] tags: [capability:research-accounts, category:web-search, has:api, has:mcp] docs: https://exa.ai/docs/reference/search updated: 2026-09-27 --- # Search the web Returns web pages that match a natural-language query, up to 100 per call, with their text, highlights or summaries, and can focus on company pages, people profiles or news. Set `category` to `company` or `people` to find company pages and professional profiles, and `type` to trade speed for depth, from `instant` to `deep-reasoning`. Ask for page content in the same call with `contents`. The MCP tool keeps a smaller set of options; for domain, date and category filters, list `web_search_advanced_exa` in the server URL's `tools` parameter, along with every other tool you want, since the list replaces the defaults. ## Set up Use the first option your agent supports. ### MCP (official, remote) Add this server to your agent's MCP settings, then sign in when asked. ```json { "mcpServers": { "exa": { "url": "https://mcp.exa.ai/mcp?login" } } } ``` Call the MCP tool `web_search_exa`. Server URL: https://mcp.exa.ai/mcp?login ### API (official) - Base URL: https://api.exa.ai - Endpoint: `POST /search` - Auth: send the header `Authorization: Bearer $EXA_API_KEY` - Get a key: https://dashboard.exa.ai/api-keys - Docs: https://exa.ai/docs/get-started/quickstart Before doing anything else, make one read-only call to confirm access. ## Rules - Ask the user before anything that sends messages, costs money, or changes data. - Never print API keys. --- ref: tool:figma/edit-design name: Create or edit a design company: company:figma workflows: [] access: [mcp] tags: [capability:design-assets, category:design, has:mcp] docs: https://developers.figma.com/docs/figma-mcp-server/tools-and-prompts/#use_figma updated: 2026-09-26 --- # Create or edit a design Creates, edits, deletes or inspects frames, components, text, images, variables and styles in a Figma Design, FigJam or Slides file. `use_figma` is available on the remote MCP server only, not the desktop server. ## Set up Use the first option your agent supports. ### MCP (official, remote) Add this server to your agent's MCP settings, then sign in when asked. ```json { "mcpServers": { "figma": { "url": "https://mcp.figma.com/mcp" } } } ``` Call the MCP tool `use_figma`. Server URL: https://mcp.figma.com/mcp Before doing anything else, make one read-only call to confirm access. ## Rules - Ask the user before anything that sends messages, costs money, or changes data. - Never print API keys. --- ref: tool:figma/export-images name: Export images company: company:figma workflows: [] access: [mcp, api] tags: [capability:design-assets, category:design, has:api, has:mcp] docs: https://developers.figma.com/docs/rest-api/file-endpoints/#get-images-endpoint updated: 2026-09-26 --- # Export images Renders frames or layers from a file as PNG, JPG, SVG or PDF and returns temporary URLs to download them. Pass the IDs of the nodes to render. REST image URLs expire after 30 days. The MCP tool takes up to 20 nodes per call, uses each node's export settings when it has them, and also returns the original images placed in the node as fills. ## Set up Use the first option your agent supports. ### MCP (official, remote) Add this server to your agent's MCP settings, then sign in when asked. ```json { "mcpServers": { "figma": { "url": "https://mcp.figma.com/mcp" } } } ``` Call the MCP tool `download_assets`. Server URL: https://mcp.figma.com/mcp ### API (official) - Base URL: https://api.figma.com - Endpoint: `GET /v1/images/:key` - Auth: send the header `X-Figma-Token: $FIGMA_ACCESS_TOKEN` - Docs: https://developers.figma.com/docs/rest-api/ Before doing anything else, make one read-only call to confirm access. ## Rules - Ask the user before anything that sends messages, costs money, or changes data. - Never print API keys. --- ref: tool:figma/upload-images name: Upload images company: company:figma workflows: [] access: [mcp] tags: [capability:design-assets, category:design, has:mcp] docs: https://developers.figma.com/docs/figma-mcp-server/tools-and-prompts/#upload_assets updated: 2026-09-26 --- # Upload images Places PNG, JPG, GIF or WebP images of up to 10 MB into a Figma file, as a fill on a given layer or in new frames. ## Set up Use the first option your agent supports. ### MCP (official, remote) Add this server to your agent's MCP settings, then sign in when asked. ```json { "mcpServers": { "figma": { "url": "https://mcp.figma.com/mcp" } } } ``` Call the MCP tool `upload_assets`. Server URL: https://mcp.figma.com/mcp Before doing anything else, make one read-only call to confirm access. ## Rules - Ask the user before anything that sends messages, costs money, or changes data. - Never print API keys. --- ref: tool:firecrawl/crawl-site name: Crawl a website company: company:firecrawl workflows: [] access: [mcp, cli, api] tags: [capability:scrape-web, category:scraper, has:api, has:cli, has:mcp] docs: https://docs.firecrawl.dev/api-reference/endpoint/crawl-post updated: 2026-09-26 --- # Crawl a website Follows links from a starting URL and returns the content of every page it reaches, within the limits you set. The API starts a job and returns its `id`; read the pages with `GET /crawl/{id}`. The MCP tool polls the job and returns once the crawl has finished. Set a `limit` and include or exclude paths to keep a crawl bounded. ## Set up Use the first option your agent supports. ### MCP (official, remote) Add this server to your agent's MCP settings, then sign in when asked. ```json { "mcpServers": { "firecrawl": { "url": "https://mcp.firecrawl.dev/v2/mcp-oauth" } } } ``` Call the MCP tool `firecrawl_crawl`. Server URL: https://mcp.firecrawl.dev/v2/mcp-oauth ### CLI (official) Install the command, then confirm it runs. ```sh npm install -g firecrawl-cli firecrawl --version ``` Run `firecrawl crawl`. Set `$FIRECRAWL_API_KEY` in your environment first (get a key: https://www.firecrawl.dev/app/api-keys). ### API (official) - Base URL: https://api.firecrawl.dev/v2 - Endpoint: `POST /crawl` - Auth: send the header `Authorization: Bearer $FIRECRAWL_API_KEY` - Get a key: https://www.firecrawl.dev/app/api-keys - Docs: https://docs.firecrawl.dev/api-reference/introduction Before doing anything else, make one read-only call to confirm access. ## Rules - Ask the user before anything that sends messages, costs money, or changes data. - Never print API keys. --- ref: tool:firecrawl/map-site name: Map a website company: company:firecrawl workflows: [] access: [mcp, cli, api] tags: [capability:scrape-web, category:scraper, has:api, has:cli, has:mcp] docs: https://docs.firecrawl.dev/api-reference/endpoint/map updated: 2026-09-26 --- # Map a website Returns the URLs found on a site, with titles and descriptions, without fetching each page's content. ## Set up Use the first option your agent supports. ### MCP (official, remote) Add this server to your agent's MCP settings, then sign in when asked. ```json { "mcpServers": { "firecrawl": { "url": "https://mcp.firecrawl.dev/v2/mcp-oauth" } } } ``` Call the MCP tool `firecrawl_map`. Server URL: https://mcp.firecrawl.dev/v2/mcp-oauth ### CLI (official) Install the command, then confirm it runs. ```sh npm install -g firecrawl-cli firecrawl --version ``` Run `firecrawl map`. Set `$FIRECRAWL_API_KEY` in your environment first (get a key: https://www.firecrawl.dev/app/api-keys). ### API (official) - Base URL: https://api.firecrawl.dev/v2 - Endpoint: `POST /map` - Auth: send the header `Authorization: Bearer $FIRECRAWL_API_KEY` - Get a key: https://www.firecrawl.dev/app/api-keys - Docs: https://docs.firecrawl.dev/api-reference/introduction Before doing anything else, make one read-only call to confirm access. ## Rules - Ask the user before anything that sends messages, costs money, or changes data. - Never print API keys. --- ref: tool:firecrawl/run-agent name: Run a research agent company: company:firecrawl workflows: [] access: [mcp, cli, api] tags: [capability:research-accounts, category:scraper, has:api, has:cli, has:mcp] docs: https://docs.firecrawl.dev/api-reference/endpoint/agent updated: 2026-09-26 --- # Run a research agent Starts an agent that searches, navigates and reads the web to return the data a prompt describes, as JSON. Use it when the source pages are not known, such as a company plus the fields you need about it; pass a JSON schema for structured output and optional seed URLs. The agent runs as a job: the API returns an `id` to poll with `GET /agent/{jobId}`, and the MCP server pairs `firecrawl_agent` with `firecrawl_agent_status`. Firecrawl labels Agent a research preview. ## Set up Use the first option your agent supports. ### MCP (official, remote) Add this server to your agent's MCP settings, then sign in when asked. ```json { "mcpServers": { "firecrawl": { "url": "https://mcp.firecrawl.dev/v2/mcp-oauth" } } } ``` Call the MCP tool `firecrawl_agent`. Server URL: https://mcp.firecrawl.dev/v2/mcp-oauth ### CLI (official) Install the command, then confirm it runs. ```sh npm install -g firecrawl-cli firecrawl --version ``` Run `firecrawl agent`. Set `$FIRECRAWL_API_KEY` in your environment first (get a key: https://www.firecrawl.dev/app/api-keys). ### API (official) - Base URL: https://api.firecrawl.dev/v2 - Endpoint: `POST /agent` - Auth: send the header `Authorization: Bearer $FIRECRAWL_API_KEY` - Get a key: https://www.firecrawl.dev/app/api-keys - Docs: https://docs.firecrawl.dev/api-reference/introduction Before doing anything else, make one read-only call to confirm access. ## Rules - Ask the user before anything that sends messages, costs money, or changes data. - Never print API keys. --- ref: tool:firecrawl/scrape-url name: Scrape a URL company: company:firecrawl workflows: [workflow:competitor-intent] access: [mcp, cli, api] tags: [capability:scrape-web, category:scraper, has:api, has:cli, has:mcp] docs: https://docs.firecrawl.dev/api-reference/endpoint/scrape updated: 2026-09-27 --- # Scrape a URL Returns one page as clean markdown, HTML, links or a screenshot, or as JSON fields extracted with a prompt or schema. For structured fields from a known page, request the JSON format with a prompt or schema; Firecrawl points here in place of its deprecated Extract MCP tool. ## Set up Use the first option your agent supports. ### MCP (official, remote) Add this server to your agent's MCP settings, then sign in when asked. ```json { "mcpServers": { "firecrawl": { "url": "https://mcp.firecrawl.dev/v2/mcp-oauth" } } } ``` Call the MCP tool `firecrawl_scrape`. Server URL: https://mcp.firecrawl.dev/v2/mcp-oauth ### CLI (official) Install the command, then confirm it runs. ```sh npm install -g firecrawl-cli firecrawl --version ``` Run `firecrawl scrape`. Set `$FIRECRAWL_API_KEY` in your environment first (get a key: https://www.firecrawl.dev/app/api-keys). ### API (official) - Base URL: https://api.firecrawl.dev/v2 - Endpoint: `POST /scrape` - Auth: send the header `Authorization: Bearer $FIRECRAWL_API_KEY` - Get a key: https://www.firecrawl.dev/app/api-keys - Docs: https://docs.firecrawl.dev/api-reference/introduction Before doing anything else, make one read-only call to confirm access. ## Rules - Ask the user before anything that sends messages, costs money, or changes data. - Never print API keys. --- ref: tool:firecrawl/search-web name: Search the web company: company:firecrawl workflows: [] access: [mcp, cli, api] tags: [capability:research-accounts, category:scraper, has:api, has:cli, has:mcp] docs: https://docs.firecrawl.dev/api-reference/endpoint/search updated: 2026-09-26 --- # Search the web Returns web search results with title, description and URL, and can scrape each result's content in the same call. ## Set up Use the first option your agent supports. ### MCP (official, remote) Add this server to your agent's MCP settings, then sign in when asked. ```json { "mcpServers": { "firecrawl": { "url": "https://mcp.firecrawl.dev/v2/mcp-oauth" } } } ``` Call the MCP tool `firecrawl_search`. Server URL: https://mcp.firecrawl.dev/v2/mcp-oauth ### CLI (official) Install the command, then confirm it runs. ```sh npm install -g firecrawl-cli firecrawl --version ``` Run `firecrawl search`. Set `$FIRECRAWL_API_KEY` in your environment first (get a key: https://www.firecrawl.dev/app/api-keys). ### API (official) - Base URL: https://api.firecrawl.dev/v2 - Endpoint: `POST /search` - Auth: send the header `Authorization: Bearer $FIRECRAWL_API_KEY` - Get a key: https://www.firecrawl.dev/app/api-keys - Docs: https://docs.firecrawl.dev/api-reference/introduction Before doing anything else, make one read-only call to confirm access. ## Rules - Ask the user before anything that sends messages, costs money, or changes data. - Never print API keys. --- ref: tool:front/assign-conversation name: Assign a conversation company: company:front workflows: [] access: [mcp, api] tags: [capability:route-alerts, category:support, has:api, has:mcp] docs: https://dev.frontapp.com/reference/update-conversation-assignee updated: 2026-09-27 --- # Assign a conversation Assigns a conversation to a teammate, or unassigns it. Pass the teammate's ID (`tea_...`) as `assignee_id` on the API or `assigneeId` on MCP, or null to unassign. On the MCP server, find teammate IDs with `list_teammates`. Over MCP, connect with the client ID and secret of a Front developer app that has MCP Server access: Front has no Dynamic Client Registration. ## Set up Use the first option your agent supports. ### MCP (official, remote) Add this server to your agent's MCP settings, then sign in when asked. ```json { "mcpServers": { "front": { "url": "https://mcp.frontapp.com/mcp" } } } ``` Call the MCP tool `assign_conversation`. Server URL: https://mcp.frontapp.com/mcp ### API (official) - Base URL: https://api2.frontapp.com - Endpoint: `PUT /conversations/{conversation_id}/assignee` - Auth: send the header `Authorization: Bearer $FRONT_API_KEY` - Get a key: https://dev.frontapp.com/docs/create-and-revoke-api-tokens - Docs: https://dev.frontapp.com/reference/introduction Before doing anything else, make one read-only call to confirm access. ## Rules - Ask the user before anything that sends messages, costs money, or changes data. - Never print API keys. --- ref: tool:front/create-draft name: Draft a new message company: company:front workflows: [] access: [mcp, api] tags: [capability:send-email, category:support, has:api, has:mcp] docs: https://dev.frontapp.com/reference/create-draft updated: 2026-09-27 --- # Draft a new message Creates an unsent draft that starts a new conversation from a channel, for a teammate to review and send. Pass `body` and the recipients in `to`, `cc` or `bcc`. On the MCP server, give `create_draft` a `channelId` and no `conversationId` (with a `conversationId` it drafts a reply instead); list channel IDs with `list_channels`. Set `mode` to `shared` on the API, or `shared` to true on MCP, so teammates can see the draft. Over MCP, connect with the client ID and secret of a Front developer app that has MCP Server access: Front has no Dynamic Client Registration. ## Set up Use the first option your agent supports. ### MCP (official, remote) Add this server to your agent's MCP settings, then sign in when asked. ```json { "mcpServers": { "front": { "url": "https://mcp.frontapp.com/mcp" } } } ``` Call the MCP tool `create_draft`. Server URL: https://mcp.frontapp.com/mcp ### API (official) - Base URL: https://api2.frontapp.com - Endpoint: `POST /channels/{channel_id}/drafts` - Auth: send the header `Authorization: Bearer $FRONT_API_KEY` - Get a key: https://dev.frontapp.com/docs/create-and-revoke-api-tokens - Docs: https://dev.frontapp.com/reference/introduction Before doing anything else, make one read-only call to confirm access. ## Rules - Ask the user before anything that sends messages, costs money, or changes data. - Never print API keys. --- ref: tool:front/search-conversations name: Search conversations company: company:front workflows: [] access: [mcp, api] tags: [capability:research-accounts, category:support, has:api, has:mcp] docs: https://dev.frontapp.com/reference/search-conversations updated: 2026-09-27 --- # Search conversations Returns the conversations that match search text and filters such as sender, contact, tag, inbox, assignee, status or date. On the API, URL-encode the query: search text plus filters such as `from:` with an email address, `contact:`, `tag:` or `is:open`. Filters combine with AND, up to 15 at once, and results come most recent activity first. The endpoint is limited to 40% of the company's rate limit. On the MCP server, set `scope` to `all_inboxes` to include unassigned conversations: the default searches only the caller's own. Over MCP, connect with the client ID and secret of a Front developer app that has MCP Server access: Front has no Dynamic Client Registration. ## Set up Use the first option your agent supports. ### MCP (official, remote) Add this server to your agent's MCP settings, then sign in when asked. ```json { "mcpServers": { "front": { "url": "https://mcp.frontapp.com/mcp" } } } ``` Call the MCP tool `search_conversations`. Server URL: https://mcp.frontapp.com/mcp ### API (official) - Base URL: https://api2.frontapp.com - Endpoint: `GET /conversations/search/{query}` - Auth: send the header `Authorization: Bearer $FRONT_API_KEY` - Get a key: https://dev.frontapp.com/docs/create-and-revoke-api-tokens - Docs: https://dev.frontapp.com/reference/introduction Before doing anything else, make one read-only call to confirm access. ## Rules - Ask the user before anything that sends messages, costs money, or changes data. - Never print API keys. --- ref: tool:front/send-message name: Send a message company: company:front workflows: [] access: [mcp, api] tags: [capability:send-email, category:support, has:api, has:mcp] docs: https://dev.frontapp.com/reference/create-message updated: 2026-09-27 --- # Send a message Sends a message from a channel to its recipients right away; on the API this starts a new conversation. The API sends in one call: pass `to` (recipient handles) and `body`, plus a `subject` for email. It answers `202` with a `message_uid` you can use to check that the message was created. On the MCP server, `send_message` sends a draft made with `create_draft`, which must have at least one recipient. The API token needs the Send permission, and the MCP connection the `send` scope. Over MCP, connect with the client ID and secret of a Front developer app that has MCP Server access: Front has no Dynamic Client Registration. ## Set up Use the first option your agent supports. ### MCP (official, remote) Add this server to your agent's MCP settings, then sign in when asked. ```json { "mcpServers": { "front": { "url": "https://mcp.frontapp.com/mcp" } } } ``` Call the MCP tool `send_message`. Server URL: https://mcp.frontapp.com/mcp ### API (official) - Base URL: https://api2.frontapp.com - Endpoint: `POST /channels/{channel_id}/messages` - Auth: send the header `Authorization: Bearer $FRONT_API_KEY` - Get a key: https://dev.frontapp.com/docs/create-and-revoke-api-tokens - Docs: https://dev.frontapp.com/reference/introduction Before doing anything else, make one read-only call to confirm access. ## Rules - Ask the user before anything that sends messages, costs money, or changes data. - Never print API keys. --- ref: tool:front/tag-conversation name: Tag a conversation company: company:front workflows: [] access: [mcp, api] tags: [capability:classify-signals, category:support, has:api, has:mcp] docs: https://dev.frontapp.com/reference/add-conversation-tag updated: 2026-09-27 --- # Tag a conversation Adds one or more existing tags to a conversation. Pass tag IDs (`tag_...`), not names: `tag_ids` on the API, `addTags` on MCP, where `removeTags` also takes tags off. Find tag IDs with `list_tags` on the MCP server or `GET /tags` on the API. Over MCP, connect with the client ID and secret of a Front developer app that has MCP Server access: Front has no Dynamic Client Registration. ## Set up Use the first option your agent supports. ### MCP (official, remote) Add this server to your agent's MCP settings, then sign in when asked. ```json { "mcpServers": { "front": { "url": "https://mcp.frontapp.com/mcp" } } } ``` Call the MCP tool `tag_conversation`. Server URL: https://mcp.frontapp.com/mcp ### API (official) - Base URL: https://api2.frontapp.com - Endpoint: `POST /conversations/{conversation_id}/tags` - Auth: send the header `Authorization: Bearer $FRONT_API_KEY` - Get a key: https://dev.frontapp.com/docs/create-and-revoke-api-tokens - Docs: https://dev.frontapp.com/reference/introduction Before doing anything else, make one read-only call to confirm access. ## Rules - Ask the user before anything that sends messages, costs money, or changes data. - Never print API keys. --- ref: tool:g2/browse-buyer-intent name: Browse buyer intent company: company:g2 workflows: [] access: [mcp, api] tags: [capability:track-intent, category:intent, has:api, has:mcp] docs: https://data.g2.com/api/v2/docs/index.html updated: 2026-09-27 --- # Browse buyer intent Returns the companies researching your products on G2 and what they looked at, such as profiles, pricing or comparisons, across one or more of your products. Scope the query with `subject_product_ids`, or leave it out to use your assigned products. Group rows with `dimensions` such as `company_name`, `company_domain`, `signal_type` or `day`, count with `measures` such as `total_activity` and `visitor_count`, and filter with `dimension_filters`, for example `dimension_filters[company_name_cont]=Acme`. A page holds up to 250 rows. Needs the `buyer_intent.read` scope and a G2 Buyer Intent license. ## Set up Use the first option your agent supports. ### MCP (official, remote) Add this server to your agent's MCP settings, then sign in when asked. ```json { "mcpServers": { "g2": { "url": "https://mcp.g2.com/mcp" } } } ``` Call the MCP tool `browse_buyer_intent`. Server URL: https://mcp.g2.com/mcp ### API (official) - Base URL: https://data.g2.com - Endpoint: `GET /api/v2/buyer_intent` - Auth: send the header `Authorization: Bearer $G2_API_KEY` - Get a key: https://my.g2.com/developers - Docs: https://data.g2.com/api/v2/docs/index.html Before doing anything else, make one read-only call to confirm access. ## Rules - Ask the user before anything that sends messages, costs money, or changes data. - Never print API keys. --- ref: tool:g2/browse-competitive-intelligence name: Browse competitive intelligence company: company:g2 workflows: [] access: [mcp] tags: [capability:track-intent, category:intent, has:mcp] docs: https://documentation.g2.com/docs/g2-mcp-server updated: 2026-09-27 --- # Browse competitive intelligence Returns which competitors the companies researching your product are evaluating on G2, with their comparison activity. Only on the MCP server. Over the API, competitor activity is part of browsing buyer intent for a product: rows whose `left_product_id` differs from your product are activity on a competitor. ## Set up Use the first option your agent supports. ### MCP (official, remote) Add this server to your agent's MCP settings, then sign in when asked. ```json { "mcpServers": { "g2": { "url": "https://mcp.g2.com/mcp" } } } ``` Call the MCP tool `browse_competitive_intelligence`. Server URL: https://mcp.g2.com/mcp Before doing anything else, make one read-only call to confirm access. ## Rules - Ask the user before anything that sends messages, costs money, or changes data. - Never print API keys. --- ref: tool:g2/browse-product-buyer-intent name: Browse buyer intent for a product company: company:g2 workflows: [workflow:competitor-intent] access: [mcp, api] tags: [capability:track-intent, category:intent, has:api, has:mcp] docs: https://data.g2.com/api/v2/docs/index.html updated: 2026-09-27 --- # Browse buyer intent for a product Returns the companies researching one of your products or its competitors on G2, ranked by intent score, with their activity and signal types. Pass your product's identifier as `subject_product_id`. Rows are sorted by `-company_intent_score` unless you set `sort`. Leave `day` out of `dimensions` for one row per company, or add it for a daily series. Results include activity on competitors in your categories: when `left_product_id` differs from `subject_product_id`, the company was looking at the competitor named in `left_product_name`. Needs the `buyer_intent.read` scope. ## Set up Use the first option your agent supports. ### MCP (official, remote) Add this server to your agent's MCP settings, then sign in when asked. ```json { "mcpServers": { "g2": { "url": "https://mcp.g2.com/mcp" } } } ``` Call the MCP tool `browse_product_buyer_intent`. Server URL: https://mcp.g2.com/mcp ### API (official) - Base URL: https://data.g2.com - Endpoint: `GET /api/v2/products/{subject_product_id}/buyer_intent` - Auth: send the header `Authorization: Bearer $G2_API_KEY` - Get a key: https://my.g2.com/developers - Docs: https://data.g2.com/api/v2/docs/index.html Before doing anything else, make one read-only call to confirm access. ## Rules - Ask the user before anything that sends messages, costs money, or changes data. - Never print API keys. --- ref: tool:g2/list-product-reviews name: List product reviews company: company:g2 workflows: [] access: [mcp, api] tags: [capability:read-reviews, category:intent, has:api, has:mcp] docs: https://data.g2.com/api/v2/docs/index.html updated: 2026-09-27 --- # List product reviews Returns the G2 reviews of a product, filterable by reviewer company size, industry, region, role, star rating and date. Pass the product's ID or slug. Filter with `filter[company_segment][]` (`179` Small-Business, `180` Mid-Market, `181` Enterprise), `filter[nps_score][]` for star ratings from 1 to 5, `filter[industry][]`, `filter[region][]`, `filter[role][]` and `filter[updated_at_gt]`. A page holds up to 250 reviews. Needs the `products.reviews.read` scope. Reviews with firmographics and feature ratings come from `list_market_intelligence_product_reviews` (`GET /api/v2/products/{product_id}/market_intelligence/reviews`), which needs an Enterprise package. ## Set up Use the first option your agent supports. ### MCP (official, remote) Add this server to your agent's MCP settings, then sign in when asked. ```json { "mcpServers": { "g2": { "url": "https://mcp.g2.com/mcp" } } } ``` Call the MCP tool `list_standard_product_reviews`. Server URL: https://mcp.g2.com/mcp ### API (official) - Base URL: https://data.g2.com - Endpoint: `GET /api/v2/products/{product_id}/reviews` - Auth: send the header `Authorization: Bearer $G2_API_KEY` - Get a key: https://my.g2.com/developers - Docs: https://data.g2.com/api/v2/docs/index.html Before doing anything else, make one read-only call to confirm access. ## Rules - Ask the user before anything that sends messages, costs money, or changes data. - Never print API keys. --- ref: tool:g2/unlock-companies name: Unlock companies showing intent company: company:g2 workflows: [] access: [api] tags: [capability:track-intent, category:intent, has:api] docs: https://data.g2.com/api/v2/docs/index.html updated: 2026-09-27 --- # Unlock companies showing intent Spends G2 Activate credits to reveal up to 25 masked companies that are showing intent for your product, and returns them. List the masked companies first with `GET /api/v2/products/{product_id}/g2_activate/locked_companies`, then pass their `sig` values in `sigs` (1 to 25). The call always returns 200: a sig that couldn't be unlocked is listed in `meta.skipped[]`, and replaying a sig that is already unlocked costs nothing. Read an unlocked company with its resolved contacts from `GET /api/v2/products/{product_id}/g2_activate/unlocked_companies/{id}`. Needs the `g2_activate.write` scope. Every new unlock spends credits: confirm with the user first. ## Set up Use the first option your agent supports. ### API (official) - Base URL: https://data.g2.com - Endpoint: `POST /api/v2/products/{product_id}/g2_activate/unlocked_companies` - Auth: send the header `Authorization: Bearer $G2_API_KEY` - Get a key: https://my.g2.com/developers - Docs: https://data.g2.com/api/v2/docs/index.html Before doing anything else, make one read-only call to confirm access. ## Rules - Ask the user before anything that sends messages, costs money, or changes data. - Never print API keys. --- ref: tool:github/create-issue name: Create an issue company: company:github workflows: [] access: [mcp, cli, api] tags: [capability:manage-code, category:code, has:api, has:cli, has:mcp] docs: https://docs.github.com/en/rest/issues/issues#create-an-issue updated: 2026-09-26 --- # Create an issue Opens a new issue in a repository with a title, body, labels and assignees. On the MCP server, `issue_write` both creates and updates issues: pass `method: create` with `owner`, `repo` and `title`. ## Set up Use the first option your agent supports. ### MCP (official, remote) Add this server to your agent's MCP settings, then sign in when asked. ```json { "mcpServers": { "github": { "url": "https://api.githubcopilot.com/mcp/" } } } ``` Call the MCP tool `issue_write`. Server URL: https://api.githubcopilot.com/mcp/ ### CLI (official) Install the command, then confirm it runs. ```sh brew install gh gh --version ``` Run `gh issue create`. ### API (official) - Base URL: https://api.github.com - Endpoint: `POST /repos/{owner}/{repo}/issues` - Auth: send the header `Authorization: Bearer $GITHUB_TOKEN` - Get a key: https://github.com/settings/personal-access-tokens/new - Docs: https://docs.github.com/en/rest Before doing anything else, make one read-only call to confirm access. ## Rules - Ask the user before anything that sends messages, costs money, or changes data. - Never print API keys. --- ref: tool:github/list-stargazers name: List stargazers company: company:github workflows: [] access: [api] tags: [capability:build-audience, category:code, has:api] docs: https://docs.github.com/en/rest/activity/starring#list-stargazers updated: 2026-09-26 --- # List stargazers Returns the users who starred a repository, optionally with when each star was created. Send `Accept: application/vnd.github.star+json` to include the `starred_at` timestamp for each star. ## Set up Use the first option your agent supports. ### API (official) - Base URL: https://api.github.com - Endpoint: `GET /repos/{owner}/{repo}/stargazers` - Auth: send the header `Authorization: Bearer $GITHUB_TOKEN` - Get a key: https://github.com/settings/personal-access-tokens/new - Docs: https://docs.github.com/en/rest Before doing anything else, make one read-only call to confirm access. ## Rules - Ask the user before anything that sends messages, costs money, or changes data. - Never print API keys. --- ref: tool:github/search-code name: Search code company: company:github workflows: [] access: [mcp, cli, api] tags: [capability:research-accounts, category:code, has:api, has:cli, has:mcp] docs: https://docs.github.com/en/rest/search/search#search-code updated: 2026-09-26 --- # Search code Returns files, and the repositories they live in, whose code matches a query such as an import of a package. Qualifiers such as `org:`, `language:`, `filename:` and `extension:` narrow the match. The REST endpoint requires authentication and allows 10 requests per minute. ## Set up Use the first option your agent supports. ### MCP (official, remote) Add this server to your agent's MCP settings, then sign in when asked. ```json { "mcpServers": { "github": { "url": "https://api.githubcopilot.com/mcp/" } } } ``` Call the MCP tool `search_code`. Server URL: https://api.githubcopilot.com/mcp/ ### CLI (official) Install the command, then confirm it runs. ```sh brew install gh gh --version ``` Run `gh search code`. ### API (official) - Base URL: https://api.github.com - Endpoint: `GET /search/code` - Auth: send the header `Authorization: Bearer $GITHUB_TOKEN` - Get a key: https://github.com/settings/personal-access-tokens/new - Docs: https://docs.github.com/en/rest Before doing anything else, make one read-only call to confirm access. ## Rules - Ask the user before anything that sends messages, costs money, or changes data. - Never print API keys. --- ref: tool:github/search-repositories name: Search repositories company: company:github workflows: [] access: [mcp, cli, api] tags: [capability:research-accounts, category:code, has:api, has:cli, has:mcp] docs: https://docs.github.com/en/rest/search/search#search-repositories updated: 2026-09-26 --- # Search repositories Returns repositories that match a query on name, topic, language, stars or owner. ## Set up Use the first option your agent supports. ### MCP (official, remote) Add this server to your agent's MCP settings, then sign in when asked. ```json { "mcpServers": { "github": { "url": "https://api.githubcopilot.com/mcp/" } } } ``` Call the MCP tool `search_repositories`. Server URL: https://api.githubcopilot.com/mcp/ ### CLI (official) Install the command, then confirm it runs. ```sh brew install gh gh --version ``` Run `gh search repos`. ### API (official) - Base URL: https://api.github.com - Endpoint: `GET /search/repositories` - Auth: send the header `Authorization: Bearer $GITHUB_TOKEN` - Get a key: https://github.com/settings/personal-access-tokens/new - Docs: https://docs.github.com/en/rest Before doing anything else, make one read-only call to confirm access. ## Rules - Ask the user before anything that sends messages, costs money, or changes data. - Never print API keys. --- ref: tool:github/search-users name: Search users company: company:github workflows: [] access: [mcp, api] tags: [capability:build-audience, category:code, has:api, has:mcp] docs: https://docs.github.com/en/rest/search/search#search-users updated: 2026-09-26 --- # Search users Returns GitHub users who match a query such as a name, a location or a follower count. The GitHub CLI has no user search; use the MCP server or the API. ## Set up Use the first option your agent supports. ### MCP (official, remote) Add this server to your agent's MCP settings, then sign in when asked. ```json { "mcpServers": { "github": { "url": "https://api.githubcopilot.com/mcp/" } } } ``` Call the MCP tool `search_users`. Server URL: https://api.githubcopilot.com/mcp/ ### API (official) - Base URL: https://api.github.com - Endpoint: `GET /search/users` - Auth: send the header `Authorization: Bearer $GITHUB_TOKEN` - Get a key: https://github.com/settings/personal-access-tokens/new - Docs: https://docs.github.com/en/rest Before doing anything else, make one read-only call to confirm access. ## Rules - Ask the user before anything that sends messages, costs money, or changes data. - Never print API keys. --- ref: tool:gong/ask-about-account name: Ask about an account company: company:gong workflows: [] access: [mcp, api] tags: [capability:research-accounts, category:revenue-intelligence, has:api, has:mcp] docs: https://gong.app.gong.io/settings/api/documentation#get-/v2/entities/ask-entity updated: 2026-09-27 --- # Ask about an account Answers one plain-language question about a CRM account, such as its risks, objections or competitor mentions, from the calls and emails linked to it. Over the API, set `crmEntityType` to `ACCOUNT` and pass the account's CRM ID as `crmEntityId`, the `workspaceId`, a `timePeriod` such as `LAST_90DAYS`, and the `question`. An answer draws on at most 60 calls and 500 emails and consumes Gong credits by the amount analyzed. Ask one focused question; for a summary across several topics, generate a brief instead. ## Set up Use the first option your agent supports. ### MCP (official, remote) Add this server to your agent's MCP settings, then sign in when asked. ```json { "mcpServers": { "gong": { "url": "https://mcp.gong.io/mcp" } } } ``` Call the MCP tool `ask_account`. Server URL: https://mcp.gong.io/mcp ### API (official) - Base URL: https://{company}.api.gong.io - Endpoint: `GET /v2/entities/ask-entity` - Auth: send the header `Authorization: Basic $GONG_API_KEY` - Get a key: https://app.gong.io/company/api - Docs: https://help.gong.io/apidocs/introduction-2 Before doing anything else, make one read-only call to confirm access. ## Rules - Ask the user before anything that sends messages, costs money, or changes data. - Never print API keys. --- ref: tool:gong/ask-about-deal name: Ask about a deal company: company:gong workflows: [] access: [mcp, api] tags: [capability:research-accounts, category:revenue-intelligence, has:api, has:mcp] docs: https://gong.app.gong.io/settings/api/documentation#get-/v2/entities/ask-entity updated: 2026-09-27 --- # Ask about a deal Answers one plain-language question about a CRM deal, such as what is blocking it or which next steps were agreed, from the calls and emails linked to it. Over the API, set `crmEntityType` to `DEAL` and pass the deal's CRM ID as `crmEntityId`, the `workspaceId`, a `timePeriod` such as `LAST_30DAYS`, and the `question`. An answer draws on at most 60 calls and 500 emails and consumes Gong credits by the amount analyzed. Ask one focused question; for a summary across several topics, generate a brief instead. ## Set up Use the first option your agent supports. ### MCP (official, remote) Add this server to your agent's MCP settings, then sign in when asked. ```json { "mcpServers": { "gong": { "url": "https://mcp.gong.io/mcp" } } } ``` Call the MCP tool `ask_deal`. Server URL: https://mcp.gong.io/mcp ### API (official) - Base URL: https://{company}.api.gong.io - Endpoint: `GET /v2/entities/ask-entity` - Auth: send the header `Authorization: Basic $GONG_API_KEY` - Get a key: https://app.gong.io/company/api - Docs: https://help.gong.io/apidocs/introduction-2 Before doing anything else, make one read-only call to confirm access. ## Rules - Ask the user before anything that sends messages, costs money, or changes data. - Never print API keys. --- ref: tool:gong/assign-prospects-to-flow name: Add prospects to an Engage flow company: company:gong workflows: [] access: [api] tags: [capability:send-email, category:revenue-intelligence, has:api] docs: https://help.gong.io/apidocs/assign-prospects-contacts-or-leads-to-an-engage-flow-v2flowsprospectsassign-1 updated: 2026-09-27 --- # Add prospects to an Engage flow Assigns up to 100 CRM contacts or leads to a Gong Engage flow, starting its email and call to-dos for them. Pass the prospects' CRM IDs in `crmProspectsIds`, the `flowId` (list flows with `GET /v2/flows`), and `flowInstanceOwnerEmail`, the Gong user who owns the flow's to-dos. `overrides` can replace a step's subject, body or placeholder values for this assignment. Needs Gong Engage, and OAuth apps need the `api:flows:write` scope. Assigning starts real outreach: confirm the flow and the prospects first. ## Set up Use the first option your agent supports. ### API (official) - Base URL: https://{company}.api.gong.io - Endpoint: `POST /v2/flows/prospects/assign` - Auth: send the header `Authorization: Basic $GONG_API_KEY` - Get a key: https://app.gong.io/company/api - Docs: https://help.gong.io/apidocs/introduction-2 Before doing anything else, make one read-only call to confirm access. ## Rules - Ask the user before anything that sends messages, costs money, or changes data. - Never print API keys. --- ref: tool:gong/generate-brief name: Generate a brief company: company:gong workflows: [] access: [mcp, api] tags: [capability:research-accounts, category:revenue-intelligence, has:api, has:mcp] docs: https://gong.app.gong.io/settings/api/documentation#get-/v2/entities/get-brief updated: 2026-09-27 --- # Generate a brief Returns a structured brief on a CRM account, deal or contact, with its key themes, stakeholders, risks and next steps drawn from its calls and emails. A brief takes no question. On the MCP server, accounts and deals can be found by name, but a contact needs its CRM contact ID. Over the API, pass the `briefName` of a brief set up in Agent Studio under AI Briefer, with `crmEntityType`, `crmEntityId`, `workspaceId` and `timePeriod`. Each brief consumes Gong credits, and briefs with more open-ended sections consume more. ## Set up Use the first option your agent supports. ### MCP (official, remote) Add this server to your agent's MCP settings, then sign in when asked. ```json { "mcpServers": { "gong": { "url": "https://mcp.gong.io/mcp" } } } ``` Call the MCP tool `generate_brief`. Server URL: https://mcp.gong.io/mcp ### API (official) - Base URL: https://{company}.api.gong.io - Endpoint: `GET /v2/entities/get-brief` - Auth: send the header `Authorization: Basic $GONG_API_KEY` - Get a key: https://app.gong.io/company/api - Docs: https://help.gong.io/apidocs/introduction-2 Before doing anything else, make one read-only call to confirm access. ## Rules - Ask the user before anything that sends messages, costs money, or changes data. - Never print API keys. --- ref: tool:gong/get-call-transcripts name: Get call transcripts company: company:gong workflows: [] access: [api] tags: [capability:review-recordings, category:revenue-intelligence, has:api] docs: https://help.gong.io/apidocs/retrieve-transcripts-of-calls-by-date-or-callids-v2callstranscript-2 updated: 2026-09-27 --- # Get call transcripts Returns the transcripts of the calls recorded in a date range, or of chosen calls, as monologues with each speaker's ID, topic and timed sentences. Send a `filter` with `fromDateTime` and `toDateTime` in ISO-8601, and `callIds` to keep only those calls; when more records remain, repeat the request with the returned `cursor`. OAuth apps need the `api:calls:read:transcript` scope. The MCP server does not return transcripts. ## Set up Use the first option your agent supports. ### API (official) - Base URL: https://{company}.api.gong.io - Endpoint: `POST /v2/calls/transcript` - Auth: send the header `Authorization: Basic $GONG_API_KEY` - Get a key: https://app.gong.io/company/api - Docs: https://help.gong.io/apidocs/introduction-2 Before doing anything else, make one read-only call to confirm access. ## Rules - Ask the user before anything that sends messages, costs money, or changes data. - Never print API keys. --- ref: tool:hubspot/add-to-segment name: Add records to a segment company: company:hubspot workflows: [] access: [mcp, api] tags: [capability:build-audience, category:crm, has:api, has:mcp] docs: https://developers.hubspot.com/docs/api-reference/latest/crm/lists/memberships/add-to-list updated: 2026-09-26 --- # Add records to a segment Adds contacts or other records, by ID, to a static segment (list). HubSpot now calls lists segments. Add records to `MANUAL` or `SNAPSHOT` segments; `DYNAMIC` segments are kept in line with their filters. The MCP tool can also create a static segment, and it asks the user to confirm each write. ## Set up Use the first option your agent supports. ### MCP (official, remote) Add this server to your agent's MCP settings, then sign in when asked. ```json { "mcpServers": { "hubspot": { "url": "https://mcp.hubspot.com" } } } ``` Call the MCP tool `manage_segment`. Server URL: https://mcp.hubspot.com ### API (official) - Base URL: https://api.hubapi.com - Endpoint: `PUT /crm/lists/2026-09/{listId}/memberships/add` - Auth: send the header `Authorization: Bearer $HUBSPOT_API_KEY` - Docs: https://developers.hubspot.com/docs/api-reference/latest/overview Before doing anything else, make one read-only call to confirm access. ## Rules - Ask the user before anything that sends messages, costs money, or changes data. - Never print API keys. --- ref: tool:hubspot/create-note name: Create a note company: company:hubspot workflows: [workflow:executive-job-change] access: [api] tags: [capability:manage-crm, category:crm, has:api] docs: https://developers.hubspot.com/docs/api-reference/latest/crm/activities/notes/create-note updated: 2026-09-27 --- # Create a note Logs a note on the timeline of the contacts, companies or deals it is associated with. Set `hs_timestamp` (required) and `hs_note_body`, and add an `associations` object to attach the note to existing records. The hosted MCP server writes notes through `manage_crm_objects`, the same tool that writes contacts. ## Set up Use the first option your agent supports. ### API (official) - Base URL: https://api.hubapi.com - Endpoint: `POST /crm/objects/2026-09/notes` - Auth: send the header `Authorization: Bearer $HUBSPOT_API_KEY` - Docs: https://developers.hubspot.com/docs/api-reference/latest/overview Before doing anything else, make one read-only call to confirm access. ## Rules - Ask the user before anything that sends messages, costs money, or changes data. - Never print API keys. --- ref: tool:hubspot/search-crm-records name: Search CRM records company: company:hubspot workflows: [workflow:content-download-nurture] access: [mcp, api] tags: [capability:manage-crm, category:crm, has:api, has:mcp] docs: https://developers.hubspot.com/docs/api-reference/latest/crm/search-the-crm updated: 2026-09-27 --- # Search CRM records Returns contacts, companies, deals or other CRM records that match property filters or a text query. Set `objectType` to `contacts`, `companies`, `deals` or another object. Filters within a group combine with AND and groups combine with OR; the MCP tool takes up to five groups of six filters and returns up to 200 records per page. ## Set up Use the first option your agent supports. ### MCP (official, remote) Add this server to your agent's MCP settings, then sign in when asked. ```json { "mcpServers": { "hubspot": { "url": "https://mcp.hubspot.com" } } } ``` Call the MCP tool `search_crm_objects`. Server URL: https://mcp.hubspot.com ### API (official) - Base URL: https://api.hubapi.com - Endpoint: `POST /crm/objects/2026-09/{objectType}/search` - Auth: send the header `Authorization: Bearer $HUBSPOT_API_KEY` - Docs: https://developers.hubspot.com/docs/api-reference/latest/overview Before doing anything else, make one read-only call to confirm access. ## Rules - Ask the user before anything that sends messages, costs money, or changes data. - Never print API keys. --- ref: tool:hubspot/upsert-contacts name: Create or update contacts company: company:hubspot workflows: [workflow:executive-job-change, workflow:webinar-follow-up] access: [mcp, api] tags: [capability:manage-crm, category:crm, has:api, has:mcp] docs: https://developers.hubspot.com/docs/api-reference/latest/crm/objects/contacts/batch/upsert-contacts updated: 2026-09-27 --- # Create or update contacts Creates contacts or updates the ones that already exist with new property values. The API takes a batch and matches each contact on `idProperty`: `email` or a custom unique property. On the MCP server, `manage_crm_objects` shows the proposed changes and waits for the user to confirm before it writes. ## Set up Use the first option your agent supports. ### MCP (official, remote) Add this server to your agent's MCP settings, then sign in when asked. ```json { "mcpServers": { "hubspot": { "url": "https://mcp.hubspot.com" } } } ``` Call the MCP tool `manage_crm_objects`. Server URL: https://mcp.hubspot.com ### API (official) - Base URL: https://api.hubapi.com - Endpoint: `POST /crm/objects/2026-09/contacts/batch/upsert` - Auth: send the header `Authorization: Bearer $HUBSPOT_API_KEY` - Docs: https://developers.hubspot.com/docs/api-reference/latest/overview Before doing anything else, make one read-only call to confirm access. ## Rules - Ask the user before anything that sends messages, costs money, or changes data. - Never print API keys. --- ref: tool:hunter/enrich-person-and-company name: Enrich a person and their company company: company:hunter workflows: [] access: [mcp, api] tags: [capability:enrich-contacts, category:data-provider, has:api, has:mcp] docs: https://hunter.io/api-documentation/v2#combined-enrichment updated: 2026-09-27 --- # Enrich a person and their company Returns the profile of the person behind an email address, with their name, location and employment, together with their company's profile, in one call. Pass an `email` or a `linkedin_handle`; set `clearbit_format` to get a Clearbit-compatible response. A `404` means Hunter has nothing on the person, and a `451` means they asked Hunter to stop processing their data: don't use it. To enrich only the person or only a company, use `Person-Enrichment` (`GET /people/find`) or `Company-Enrichment` (`GET /companies/find`). ## Set up Use the first option your agent supports. ### MCP (official, remote) Add this server to your agent's MCP settings, then sign in when asked. ```json { "mcpServers": { "hunter": { "url": "https://mcp.hunter.io/mcp" } } } ``` Call the MCP tool `Combined-Enrichment`. Server URL: https://mcp.hunter.io/mcp ### API (official) - Base URL: https://api.hunter.io/v2 - Endpoint: `GET /combined/find` - Auth: send the header `X-API-Key: $HUNTER_API_KEY` - Get a key: https://hunter.io/api-keys - Docs: https://hunter.io/api-documentation/v2 Before doing anything else, make one read-only call to confirm access. ## Rules - Ask the user before anything that sends messages, costs money, or changes data. - Never print API keys. --- ref: tool:hunter/find-email name: "Find a person's email" company: company:hunter workflows: [] access: [mcp, api] tags: [capability:find-work-emails, category:data-provider, has:api, has:mcp] docs: https://hunter.io/api-documentation/v2#email-finder updated: 2026-09-27 --- # Find a person's email Returns the most likely work email for a person from their name and company domain or LinkedIn handle, with a confidence score, its verification status and the public sources. Pass `domain` (or `company`) with `first_name` and `last_name` or `full_name`, or a `linkedin_handle` alone. Every email found is verified, and a search that finds nothing costs no credit. A found email is also saved to your Hunter leads unless that is turned off for the account. A `451` means the person asked Hunter to stop processing their data: don't use it. ## Set up Use the first option your agent supports. ### MCP (official, remote) Add this server to your agent's MCP settings, then sign in when asked. ```json { "mcpServers": { "hunter": { "url": "https://mcp.hunter.io/mcp" } } } ``` Call the MCP tool `Email-Finder`. Server URL: https://mcp.hunter.io/mcp ### API (official) - Base URL: https://api.hunter.io/v2 - Endpoint: `GET /email-finder` - Auth: send the header `X-API-Key: $HUNTER_API_KEY` - Get a key: https://hunter.io/api-keys - Docs: https://hunter.io/api-documentation/v2 Before doing anything else, make one read-only call to confirm access. ## Rules - Ask the user before anything that sends messages, costs money, or changes data. - Never print API keys. --- ref: tool:hunter/search-companies name: Search companies company: company:hunter workflows: [] access: [mcp, api] tags: [capability:build-audience, category:data-provider, has:api, has:mcp] docs: https://hunter.io/api-documentation/v2#discover updated: 2026-09-27 --- # Search companies Returns up to 100 companies that match a plain-language description or filters such as headquarters location, industry, headcount and company type, at no credit cost. Hunter calls this Discover. Send a natural-language `query`, such as "Companies in Europe in the Tech Industry", or filters such as `headquarters_location`, `industry`, `headcount` and `keywords`; some filters, such as `technology`, `year_founded` and `similar_to`, need a Premium plan, as does paging with `offset`. Then list each company's contacts with a domain search. ## Set up Use the first option your agent supports. ### MCP (official, remote) Add this server to your agent's MCP settings, then sign in when asked. ```json { "mcpServers": { "hunter": { "url": "https://mcp.hunter.io/mcp" } } } ``` Call the MCP tool `Find-Companies`. Server URL: https://mcp.hunter.io/mcp ### API (official) - Base URL: https://api.hunter.io/v2 - Endpoint: `POST /discover` - Auth: send the header `X-API-Key: $HUNTER_API_KEY` - Get a key: https://hunter.io/api-keys - Docs: https://hunter.io/api-documentation/v2 Before doing anything else, make one read-only call to confirm access. ## Rules - Ask the user before anything that sends messages, costs money, or changes data. - Never print API keys. --- ref: tool:hunter/search-domain name: Search a domain for emails company: company:hunter workflows: [] access: [mcp, api] tags: [capability:find-work-emails, category:data-provider, has:api, has:mcp] docs: https://hunter.io/api-documentation/v2#domain-search updated: 2026-09-27 --- # Search a domain for emails Returns the email addresses Hunter has found for a company domain, with each person's name, position, seniority, department and a confidence score. Pass a `domain` (or a `company` name). Narrow the results with `department`, `seniority`, `type` (`personal` or `generic`) or `decision_maker`, and page through them with `limit` (10 by default) and `offset`. The response also includes the domain's email `pattern` and whether it accepts all addresses (`accept_all`). ## Set up Use the first option your agent supports. ### MCP (official, remote) Add this server to your agent's MCP settings, then sign in when asked. ```json { "mcpServers": { "hunter": { "url": "https://mcp.hunter.io/mcp" } } } ``` Call the MCP tool `Domain-Search`. Server URL: https://mcp.hunter.io/mcp ### API (official) - Base URL: https://api.hunter.io/v2 - Endpoint: `GET /domain-search` - Auth: send the header `X-API-Key: $HUNTER_API_KEY` - Get a key: https://hunter.io/api-keys - Docs: https://hunter.io/api-documentation/v2 Before doing anything else, make one read-only call to confirm access. ## Rules - Ask the user before anything that sends messages, costs money, or changes data. - Never print API keys. --- ref: tool:hunter/verify-email name: Verify an email address company: company:hunter workflows: [] access: [mcp, api] tags: [capability:verify-emails, category:data-provider, has:api, has:mcp] docs: https://hunter.io/api-documentation/v2#email-verifier updated: 2026-09-27 --- # Verify an email address Checks whether an email address is deliverable and returns its status (valid, invalid, accept_all, webmail, disposable or unknown), a score and the checks behind it. Pass the `email`. A verification that runs past 20 seconds returns `202`: call again with the same email until the result arrives, which still counts as one request. Read `status`; the older `result` field is deprecated. A verification costs half a credit, and a verified email is also saved to your Hunter leads unless that is turned off for the account. ## Set up Use the first option your agent supports. ### MCP (official, remote) Add this server to your agent's MCP settings, then sign in when asked. ```json { "mcpServers": { "hunter": { "url": "https://mcp.hunter.io/mcp" } } } ``` Call the MCP tool `Email-Verifier`. Server URL: https://mcp.hunter.io/mcp ### API (official) - Base URL: https://api.hunter.io/v2 - Endpoint: `GET /email-verifier` - Auth: send the header `X-API-Key: $HUNTER_API_KEY` - Get a key: https://hunter.io/api-keys - Docs: https://hunter.io/api-documentation/v2 Before doing anything else, make one read-only call to confirm access. ## Rules - Ask the user before anything that sends messages, costs money, or changes data. - Never print API keys. --- ref: tool:instantly/add-leads-to-campaign name: Add leads to a campaign company: company:instantly workflows: [] access: [api] tags: [capability:send-email, category:sales-engagement, has:api] docs: https://developer.instantly.ai/api-reference/lead/add-leads-in-bulk-to-a-campaign-or-list updated: 2026-09-27 --- # Add leads to a campaign Adds up to 1,000 leads to one Instantly campaign or lead list, checking their emails against blocklists and existing leads. Pass `campaign_id` or `list_id`, not both, and a `leads` array; in a campaign every lead needs an `email`, and each lead can carry fields such as `first_name`, `company_name` and `personalization`. `skip_if_in_workspace`, `skip_if_in_campaign` and `skip_if_in_list` skip people you already have, and `verify_leads_on_import` verifies their emails in the background. The key needs the `leads:create` scope (or `leads:all`, `all:create`, `all:all`). Leads added to an active campaign can start receiving its emails, so confirm the campaign first. ## Set up Use the first option your agent supports. ### API (official) - Base URL: https://api.instantly.ai - Endpoint: `POST /api/v2/leads/add` - Auth: send the header `Authorization: Bearer $INSTANTLY_API_KEY` - Get a key: https://app.instantly.ai/app/settings/integrations - Docs: https://developer.instantly.ai/getting-started/authorization Before doing anything else, make one read-only call to confirm access. ## Rules - Ask the user before anything that sends messages, costs money, or changes data. - Never print API keys. --- ref: tool:instantly/import-supersearch-leads name: Import leads from SuperSearch company: company:instantly workflows: [] access: [api] tags: [capability:build-audience, category:sales-engagement, has:api] docs: https://developer.instantly.ai/api-reference/supersearchenrichment/enrich-leads-from-supersearch updated: 2026-09-27 --- # Import leads from SuperSearch Adds the people matching a SuperSearch query to an Instantly lead list, creating the list if needed, and enriches them with work emails or LinkedIn profiles as you ask. Pass `search_filters` (the same shape as the preview), a `limit`, and either `resource_id` for an existing list or `list_name` for a new one. Turn on `work_email_enrichment` for work emails and `fully_enriched_profile` for LinkedIn profile data, and set `skip_rows_without_email` to drop people without an email. Preview or count the matches first so the import brings in the people you expect. ## Set up Use the first option your agent supports. ### API (official) - Base URL: https://api.instantly.ai - Endpoint: `POST /api/v2/supersearch-enrichment/enrich-leads-from-supersearch` - Auth: send the header `Authorization: Bearer $INSTANTLY_API_KEY` - Get a key: https://app.instantly.ai/app/settings/integrations - Docs: https://developer.instantly.ai/getting-started/authorization Before doing anything else, make one read-only call to confirm access. ## Rules - Ask the user before anything that sends messages, costs money, or changes data. - Never print API keys. --- ref: tool:instantly/reply-to-email name: Reply to an email company: company:instantly workflows: [] access: [api] tags: [capability:send-email, category:sales-engagement, has:api] docs: https://developer.instantly.ai/api-reference/email/reply-to-an-email updated: 2026-09-27 --- # Reply to an email Sends a reply to an email in an Instantly inbox from one of the workspace's connected sending accounts. Pass `reply_to_uuid` (the `id` of the email, from the email endpoints), the sending account as `eaccount`, a `subject`, and a `body` with `html`, `text` or both. It only replies to an existing email; it can't start a new thread. This sends a real email, so confirm the text first. ## Set up Use the first option your agent supports. ### API (official) - Base URL: https://api.instantly.ai - Endpoint: `POST /api/v2/emails/reply` - Auth: send the header `Authorization: Bearer $INSTANTLY_API_KEY` - Get a key: https://app.instantly.ai/app/settings/integrations - Docs: https://developer.instantly.ai/getting-started/authorization Before doing anything else, make one read-only call to confirm access. ## Rules - Ask the user before anything that sends messages, costs money, or changes data. - Never print API keys. --- ref: tool:instantly/search-people name: Search people company: company:instantly workflows: [] access: [api] tags: [capability:build-audience, category:sales-engagement, has:api] docs: https://developer.instantly.ai/api-reference/supersearchenrichment/preview-leads-from-supersearch updated: 2026-09-27 --- # Search people Returns people from Instantly's SuperSearch lead database who match filters such as job title, department, level, location, industry or employee count, without their email addresses. Put the filters in `search_filters`, for example `title` with `include` and `exclude` lists. `POST /api/v2/supersearch-enrichment/count-leads-from-supersearch` takes the same filters and counts the matches. The preview enriches nothing; to add the people to a list with their work emails, import them from SuperSearch. The key needs the `supersearch_enrichments:read` scope (or `supersearch_enrichments:all`, `all:read`, `all:all`). ## Set up Use the first option your agent supports. ### API (official) - Base URL: https://api.instantly.ai - Endpoint: `POST /api/v2/supersearch-enrichment/preview-leads-from-supersearch` - Auth: send the header `Authorization: Bearer $INSTANTLY_API_KEY` - Get a key: https://app.instantly.ai/app/settings/integrations - Docs: https://developer.instantly.ai/getting-started/authorization Before doing anything else, make one read-only call to confirm access. ## Rules - Ask the user before anything that sends messages, costs money, or changes data. - Never print API keys. --- ref: tool:instantly/verify-email name: Verify an email address company: company:instantly workflows: [] access: [api] tags: [capability:verify-emails, category:sales-engagement, has:api] docs: https://developer.instantly.ai/api-reference/emailverification/create-email-verification updated: 2026-09-27 --- # Verify an email address Checks whether one email address is deliverable and returns verified, invalid or pending, whether its domain is catch-all, and the credits used. Send the `email`. A check that takes longer than 10 seconds returns `pending`: poll `GET /api/v2/email-verification/{email}` or pass a `webhook_url` to receive the result. Read `verification_status`, not `status`, which only reports whether the request worked. The workspace needs an active paid plan, and the key needs the `email_verifications:create` scope. ## Set up Use the first option your agent supports. ### API (official) - Base URL: https://api.instantly.ai - Endpoint: `POST /api/v2/email-verification` - Auth: send the header `Authorization: Bearer $INSTANTLY_API_KEY` - Get a key: https://app.instantly.ai/app/settings/integrations - Docs: https://developer.instantly.ai/getting-started/authorization Before doing anything else, make one read-only call to confirm access. ## Rules - Ask the user before anything that sends messages, costs money, or changes data. - Never print API keys. --- ref: tool:intercom/create-contact name: Create a contact company: company:intercom workflows: [] access: [api] tags: [capability:manage-crm, category:support, has:api] docs: https://developers.intercom.com/docs/references/rest-api/api.intercom.io/contacts/createcontact updated: 2026-09-27 --- # Create a contact Creates a user or lead from an email, an external ID or a role, with optional name, phone, owner and custom attributes, and returns the contact. Set `role` to `user` or `lead` and pass at least an `email`, an `external_id` or a `role`. To change a contact that already exists, use `PUT /contacts/{contact_id}` instead. ## Set up Use the first option your agent supports. ### API (official) - Base URL: https://api.intercom.io - Endpoint: `POST /contacts` - Auth: send the header `Authorization: Bearer $INTERCOM_API_KEY` - Get a key: https://app.intercom.io/a/apps/_/developer-hub/app-packages - Docs: https://developers.intercom.com/docs/references/rest-api/api.intercom.io Before doing anything else, make one read-only call to confirm access. ## Rules - Ask the user before anything that sends messages, costs money, or changes data. - Never print API keys. --- ref: tool:intercom/search-contacts name: Search contacts company: company:intercom workflows: [] access: [mcp, api] tags: [capability:manage-crm, category:support, has:api, has:mcp] docs: https://developers.intercom.com/docs/references/rest-api/api.intercom.io/contacts/searchcontacts updated: 2026-09-27 --- # Search contacts Returns the users and leads whose attributes, such as email, email domain, name, phone or a custom attribute, match your filters. The API takes a `query` of field, operator and value filters joined with `AND` or `OR` (up to 15 filters per group and 2 levels of nesting) and returns 50 contacts per page by default; page with `starting_after`. A contact created in the last few minutes may not show up yet, and merged contacts never do. ## Set up Use the first option your agent supports. ### MCP (official, remote) Add this server to your agent's MCP settings, then sign in when asked. ```json { "mcpServers": { "intercom": { "url": "https://mcp.intercom.com/mcp" } } } ``` Call the MCP tool `search_contacts`. Server URL: https://mcp.intercom.com/mcp ### API (official) - Base URL: https://api.intercom.io - Endpoint: `POST /contacts/search` - Auth: send the header `Authorization: Bearer $INTERCOM_API_KEY` - Get a key: https://app.intercom.io/a/apps/_/developer-hub/app-packages - Docs: https://developers.intercom.com/docs/references/rest-api/api.intercom.io Before doing anything else, make one read-only call to confirm access. ## Rules - Ask the user before anything that sends messages, costs money, or changes data. - Never print API keys. --- ref: tool:intercom/search-conversations name: Search conversations company: company:intercom workflows: [] access: [mcp, api] tags: [capability:research-accounts, category:support, has:api, has:mcp] docs: https://developers.intercom.com/docs/references/rest-api/api.intercom.io/conversations/searchconversations updated: 2026-09-27 --- # Search conversations Returns the conversations that match filters such as state, source type, author email, assignee or a word in the message body. Useful for reading a customer's support history before a call. The API returns 20 conversations per page by default and at most 150; page with `starting_after`. A `source.body` filter matches single words, not phrases. Read a full thread with `get_conversation` on the MCP server or `GET /conversations/{conversation_id}` on the API. ## Set up Use the first option your agent supports. ### MCP (official, remote) Add this server to your agent's MCP settings, then sign in when asked. ```json { "mcpServers": { "intercom": { "url": "https://mcp.intercom.com/mcp" } } } ``` Call the MCP tool `search_conversations`. Server URL: https://mcp.intercom.com/mcp ### API (official) - Base URL: https://api.intercom.io - Endpoint: `POST /conversations/search` - Auth: send the header `Authorization: Bearer $INTERCOM_API_KEY` - Get a key: https://app.intercom.io/a/apps/_/developer-hub/app-packages - Docs: https://developers.intercom.com/docs/references/rest-api/api.intercom.io Before doing anything else, make one read-only call to confirm access. ## Rules - Ask the user before anything that sends messages, costs money, or changes data. - Never print API keys. --- ref: tool:intercom/send-message name: Send a message company: company:intercom workflows: [] access: [api] tags: [capability:send-email, category:support, has:api] docs: https://developers.intercom.com/docs/references/rest-api/api.intercom.io/messages/createmessage updated: 2026-09-27 --- # Send a message Sends an email, in-app or WhatsApp message from a teammate to a user or lead and returns the created message. For an email, pass `message_type: email`, `subject`, `body`, `template` (`plain` or `personal`), `from` (`type: admin` and the teammate's `id`) and `to` (the contact's `type` and `id`). No conversation exists until the contact replies. A contact created moments earlier can return 404 until it is ready to be messaged. ## Set up Use the first option your agent supports. ### API (official) - Base URL: https://api.intercom.io - Endpoint: `POST /messages` - Auth: send the header `Authorization: Bearer $INTERCOM_API_KEY` - Get a key: https://app.intercom.io/a/apps/_/developer-hub/app-packages - Docs: https://developers.intercom.com/docs/references/rest-api/api.intercom.io Before doing anything else, make one read-only call to confirm access. ## Rules - Ask the user before anything that sends messages, costs money, or changes data. - Never print API keys. --- ref: tool:intercom/track-event name: Track an event company: company:intercom workflows: [] access: [api] tags: [capability:track-product-usage, category:support, has:api] docs: https://developers.intercom.com/docs/references/rest-api/api.intercom.io/data-events/createdataevent updated: 2026-09-27 --- # Track an event Records a named event with optional metadata against a user or lead, where teammates can filter on it and build segments from it. Send `event_name`, `created_at` (a Unix timestamp in seconds) and the contact's `user_id`, `email` or Intercom `id`; leads need `id`. Only the first 10 metadata keys are kept. A success is `202 Accepted` with an empty body, and an unknown user returns 404. Intercom ignores repeats of the same contact, event name and `created_at`, so send the real event time. ## Set up Use the first option your agent supports. ### API (official) - Base URL: https://api.intercom.io - Endpoint: `POST /events` - Auth: send the header `Authorization: Bearer $INTERCOM_API_KEY` - Get a key: https://app.intercom.io/a/apps/_/developer-hub/app-packages - Docs: https://developers.intercom.com/docs/references/rest-api/api.intercom.io Before doing anything else, make one read-only call to confirm access. ## Rules - Ask the user before anything that sends messages, costs money, or changes data. - Never print API keys. --- ref: tool:klaviyo/create-campaign name: Create a campaign company: company:klaviyo workflows: [] access: [mcp, cli, api] tags: [capability:send-email, category:email, has:api, has:cli, has:mcp] docs: https://developers.klaviyo.com/en/reference/create_campaign updated: 2026-09-27 --- # Create a campaign Creates a campaign for the lists and segments you include, with its messages and send strategy, and returns it. `name`, `audiences.included` and the `campaign-messages` are required; the send strategy defaults to immediate. Give an email message its content by assigning a template to it (`assign_template_to_campaign_message`). ## Set up Use the first option your agent supports. ### MCP (official, remote) Add this server to your agent's MCP settings, then sign in when asked. ```json { "mcpServers": { "klaviyo": { "url": "https://mcp.klaviyo.com/mcp" } } } ``` Call the MCP tool `create_campaign`. Server URL: https://mcp.klaviyo.com/mcp ### CLI (official) Install the command, then confirm it runs. ```sh go install github.com/klaviyo/klaviyo-cli/cmd/klaviyo@latest klaviyo --version ``` Run `klaviyo campaigns create`. Set `$KLAVIYO_API_KEY` in your environment first (get a key: https://www.klaviyo.com/create-private-api-key). ### API (official) - Base URL: https://a.klaviyo.com - Endpoint: `POST /api/campaigns` - Auth: send the header `Authorization: Klaviyo-API-Key $KLAVIYO_API_KEY` - Get a key: https://www.klaviyo.com/create-private-api-key - Docs: https://developers.klaviyo.com/en/reference/api_overview Before doing anything else, make one read-only call to confirm access. ## Rules - Ask the user before anything that sends messages, costs money, or changes data. - Never print API keys. --- ref: tool:klaviyo/create-event name: Create an event company: company:klaviyo workflows: [] access: [cli, api] tags: [capability:track-product-usage, category:email, has:api, has:cli] docs: https://developers.klaviyo.com/en/reference/create_event updated: 2026-09-27 --- # Create an event Records one event, such as a purchase, against a profile and creates or updates that profile. Give the profile at least one identifier (`id`, `email` or `phone_number`) and the metric a `name`. Events can trigger flows; set `backfill` to `true` for historical events that shouldn't. The remote MCP server doesn't offer single events, but `bulk_create_events` (`POST /api/event-bulk-create-jobs`) records up to 1,000 events per request. ## Set up Use the first option your agent supports. ### CLI (official) Install the command, then confirm it runs. ```sh go install github.com/klaviyo/klaviyo-cli/cmd/klaviyo@latest klaviyo --version ``` Run `klaviyo events create`. Set `$KLAVIYO_API_KEY` in your environment first (get a key: https://www.klaviyo.com/create-private-api-key). ### API (official) - Base URL: https://a.klaviyo.com - Endpoint: `POST /api/events` - Auth: send the header `Authorization: Klaviyo-API-Key $KLAVIYO_API_KEY` - Get a key: https://www.klaviyo.com/create-private-api-key - Docs: https://developers.klaviyo.com/en/reference/api_overview Before doing anything else, make one read-only call to confirm access. ## Rules - Ask the user before anything that sends messages, costs money, or changes data. - Never print API keys. --- ref: tool:klaviyo/send-campaign name: Send a campaign company: company:klaviyo workflows: [] access: [mcp, cli, api] tags: [capability:send-email, category:email, has:api, has:cli, has:mcp] docs: https://developers.klaviyo.com/en/reference/send_campaign updated: 2026-09-27 --- # Send a campaign Starts an asynchronous job that sends a campaign to its configured audience. Check progress with Get Campaign Send Job (`get_campaign_send_job`), and stop a send with Cancel Campaign Send (`cancel_campaign_send`). Confirm the campaign, its audience and its content with the user before sending. ## Set up Use the first option your agent supports. ### MCP (official, remote) Add this server to your agent's MCP settings, then sign in when asked. ```json { "mcpServers": { "klaviyo": { "url": "https://mcp.klaviyo.com/mcp" } } } ``` Call the MCP tool `send_campaign`. Server URL: https://mcp.klaviyo.com/mcp ### CLI (official) Install the command, then confirm it runs. ```sh go install github.com/klaviyo/klaviyo-cli/cmd/klaviyo@latest klaviyo --version ``` Run `klaviyo campaigns send-campaign`. Set `$KLAVIYO_API_KEY` in your environment first (get a key: https://www.klaviyo.com/create-private-api-key). ### API (official) - Base URL: https://a.klaviyo.com - Endpoint: `POST /api/campaign-send-jobs` - Auth: send the header `Authorization: Klaviyo-API-Key $KLAVIYO_API_KEY` - Get a key: https://www.klaviyo.com/create-private-api-key - Docs: https://developers.klaviyo.com/en/reference/api_overview Before doing anything else, make one read-only call to confirm access. ## Rules - Ask the user before anything that sends messages, costs money, or changes data. - Never print API keys. --- ref: tool:klaviyo/subscribe-profiles name: Subscribe profiles to marketing company: company:klaviyo workflows: [] access: [mcp, cli, api] tags: [capability:build-audience, category:email, has:api, has:cli, has:mcp] docs: https://developers.klaviyo.com/en/reference/bulk_subscribe_profiles updated: 2026-09-27 --- # Subscribe profiles to marketing Records marketing consent for up to 1,000 profiles on email, SMS, WhatsApp or push, optionally adding them to a list. If the list uses double opt-in, each profile gets a confirmation message first. Subscribing also removes unsubscribe, spam-report and user suppressions. To add profiles to a list without touching consent, use Add Profiles to List (`add_profiles_to_list`, `POST /api/lists/{id}/relationships/profiles`). The MCP tool `subscribe_profile_to_marketing` subscribes one profile per call; the CLI and API take up to 1,000 at once. ## Set up Use the first option your agent supports. ### MCP (official, remote) Add this server to your agent's MCP settings, then sign in when asked. ```json { "mcpServers": { "klaviyo": { "url": "https://mcp.klaviyo.com/mcp" } } } ``` Call the MCP tool `subscribe_profile_to_marketing`. Server URL: https://mcp.klaviyo.com/mcp ### CLI (official) Install the command, then confirm it runs. ```sh go install github.com/klaviyo/klaviyo-cli/cmd/klaviyo@latest klaviyo --version ``` Run `klaviyo profiles bulk-subscribe-profiles`. Set `$KLAVIYO_API_KEY` in your environment first (get a key: https://www.klaviyo.com/create-private-api-key). ### API (official) - Base URL: https://a.klaviyo.com - Endpoint: `POST /api/profile-subscription-bulk-create-jobs` - Auth: send the header `Authorization: Klaviyo-API-Key $KLAVIYO_API_KEY` - Get a key: https://www.klaviyo.com/create-private-api-key - Docs: https://developers.klaviyo.com/en/reference/api_overview Before doing anything else, make one read-only call to confirm access. ## Rules - Ask the user before anything that sends messages, costs money, or changes data. - Never print API keys. --- ref: tool:klaviyo/upsert-profile name: Create or update a profile company: company:klaviyo workflows: [] access: [mcp, cli, api] tags: [capability:build-audience, category:email, has:api, has:cli, has:mcp] docs: https://developers.klaviyo.com/en/reference/create_or_update_profile updated: 2026-09-27 --- # Create or update a profile Creates a profile or updates the one that matches, with contact details, location and custom properties. Returns 201 for a new profile and 200 for an updated one. A field set to `null` is cleared, and a field left out keeps its value. To give a profile consent to receive marketing, subscribe it with Bulk Subscribe Profiles. ## Set up Use the first option your agent supports. ### MCP (official, remote) Add this server to your agent's MCP settings, then sign in when asked. ```json { "mcpServers": { "klaviyo": { "url": "https://mcp.klaviyo.com/mcp" } } } ``` Call the MCP tool `create_or_update_profile`. Server URL: https://mcp.klaviyo.com/mcp ### CLI (official) Install the command, then confirm it runs. ```sh go install github.com/klaviyo/klaviyo-cli/cmd/klaviyo@latest klaviyo --version ``` Run `klaviyo profiles create-or-update-profile`. Set `$KLAVIYO_API_KEY` in your environment first (get a key: https://www.klaviyo.com/create-private-api-key). ### API (official) - Base URL: https://a.klaviyo.com - Endpoint: `POST /api/profile-import` - Auth: send the header `Authorization: Klaviyo-API-Key $KLAVIYO_API_KEY` - Get a key: https://www.klaviyo.com/create-private-api-key - Docs: https://developers.klaviyo.com/en/reference/api_overview Before doing anything else, make one read-only call to confirm access. ## Rules - Ask the user before anything that sends messages, costs money, or changes data. - Never print API keys. --- ref: tool:lemlist/add-lead-to-campaign name: Add a lead to a campaign company: company:lemlist workflows: [workflow:funding-signal-outbound] access: [cli, api] tags: [capability:send-email, category:sales-engagement, has:api, has:cli] docs: https://developer.lemlist.com/api-reference/endpoints/leads/create-lead-in-campaign updated: 2026-09-27 --- # Add a lead to a campaign Creates a lead in a lemlist campaign from an email, name, company and custom variables, optionally finding or verifying their email first; it never updates an existing lead. Replace `{campaignId}` with the campaign's id (`cam_...`). A contact that is already in the campaign is refused with `400 LEAD_ALREADY_IN_CAMPAIGN`; set `deduplicate=true` to also refuse contacts that are in another campaign. `findEmail`, `verifyEmail`, `findPhone` and `linkedinEnrichment` spend credits. A campaign automates outreach to its leads, so confirm the campaign before adding people to it. ## Set up Use the first option your agent supports. ### CLI (official) Install the command, then confirm it runs. ```sh npm install -g @lemlist-official/cli lemlist --version ``` Run `lemlist api POST /campaigns/{campaignId}/leads/`. ### API (official) - Base URL: https://api.lemlist.com/api - Endpoint: `POST /campaigns/{campaignId}/leads/` - Auth: send the header `Authorization: Basic $LEMLIST_API_KEY` - Get a key: https://app.lemlist.com/settings/integrations - Docs: https://developer.lemlist.com/api-reference/getting-started/authentication Before doing anything else, make one read-only call to confirm access. ## Rules - Ask the user before anything that sends messages, costs money, or changes data. - Never print API keys. --- ref: tool:lemlist/enrich-person name: Enrich a person company: company:lemlist workflows: [] access: [cli, api] tags: [capability:find-work-emails, category:sales-engagement, has:api, has:cli] docs: https://developer.lemlist.com/api-reference/endpoints/enrich/enrich-data updated: 2026-09-27 --- # Enrich a person Starts a lookup that finds a person's verified email, phone number or LinkedIn profile, or verifies an email you have, and returns an id to fetch the result with. Choose what to run with the `findEmail`, `verifyEmail`, `findPhone` and `linkedinEnrichment` query parameters, and identify the person with an `email`, a `linkedinUrl`, or a `firstName` and `lastName` with a `companyDomain` or `companyName`. With the CLI, put them in the path's query string. Enrichment is asynchronous: fetch the result with `GET /enrich/{enrichId}` or pass a `webhookUrl`. Each enrichment spends credits, so confirm before running it on many people. ## Set up Use the first option your agent supports. ### CLI (official) Install the command, then confirm it runs. ```sh npm install -g @lemlist-official/cli lemlist --version ``` Run `lemlist api POST /enrich`. ### API (official) - Base URL: https://api.lemlist.com/api - Endpoint: `POST /enrich` - Auth: send the header `Authorization: Basic $LEMLIST_API_KEY` - Get a key: https://app.lemlist.com/settings/integrations - Docs: https://developer.lemlist.com/api-reference/getting-started/authentication Before doing anything else, make one read-only call to confirm access. ## Rules - Ask the user before anything that sends messages, costs money, or changes data. - Never print API keys. --- ref: tool:lemlist/search-companies name: Search companies company: company:lemlist workflows: [] access: [cli, api] tags: [capability:build-audience, category:sales-engagement, has:api, has:cli] docs: https://developer.lemlist.com/api-reference/endpoints/people-database/search-companies-database updated: 2026-09-27 --- # Search companies Returns companies from lemlist's database that match filters such as industry, company size or technologies used, with their location, employee count and technologies. Filters take the same shape as the people search: a `filterId`, such as `industry`, `companySize` or `currentCompanyTechnologies`, with `in` and `out` value lists; `GET /database/filters` lists them. Pages hold up to 500 companies (`size`, 100 by default). ## Set up Use the first option your agent supports. ### CLI (official) Install the command, then confirm it runs. ```sh npm install -g @lemlist-official/cli lemlist --version ``` Run `lemlist api POST /database/companies`. ### API (official) - Base URL: https://api.lemlist.com/api - Endpoint: `POST /database/companies` - Auth: send the header `Authorization: Basic $LEMLIST_API_KEY` - Get a key: https://app.lemlist.com/settings/integrations - Docs: https://developer.lemlist.com/api-reference/getting-started/authentication Before doing anything else, make one read-only call to confirm access. ## Rules - Ask the user before anything that sends messages, costs money, or changes data. - Never print API keys. --- ref: tool:lemlist/search-people name: Search people company: company:lemlist workflows: [] access: [mcp, cli, api] tags: [capability:build-audience, category:sales-engagement, has:api, has:cli, has:mcp] docs: https://developer.lemlist.com/api-reference/endpoints/people-database/search-people-database updated: 2026-09-27 --- # Search people Returns people from lemlist's B2B database who match filters such as country, job title or department, with their LinkedIn profile and current company but no email address. Send `filters`, each a `filterId` with `in` and `out` value lists (`GET /database/filters` lists the filter ids), and optionally a free-text `search`. Pages hold up to 100 people (`size`), and searches are limited to a number of queries every 24 hours, reported in the response's `limitation`. Enrich the people you keep to get their emails. ## Set up Use the first option your agent supports. ### MCP (official, remote) Add this server to your agent's MCP settings, then sign in when asked. ```json { "mcpServers": { "lemlist": { "url": "https://app.lemlist.com/mcp" } } } ``` Call the MCP tool `lemleads_search`. Server URL: https://app.lemlist.com/mcp ### CLI (official) Install the command, then confirm it runs. ```sh npm install -g @lemlist-official/cli lemlist --version ``` Run `lemlist api POST /database/people`. ### API (official) - Base URL: https://api.lemlist.com/api - Endpoint: `POST /database/people` - Auth: send the header `Authorization: Basic $LEMLIST_API_KEY` - Get a key: https://app.lemlist.com/settings/integrations - Docs: https://developer.lemlist.com/api-reference/getting-started/authentication Before doing anything else, make one read-only call to confirm access. ## Rules - Ask the user before anything that sends messages, costs money, or changes data. - Never print API keys. --- ref: tool:lemlist/send-inbox-email name: Send an email from the inbox company: company:lemlist workflows: [] access: [cli, api] tags: [capability:send-email, category:sales-engagement, has:api, has:cli] docs: https://developer.lemlist.com/api-reference/endpoints/inbox/send-email updated: 2026-09-27 --- # Send an email from the inbox Sends one email to a lemlist contact or lead from a connected mailbox, as a new message or as a reply in their latest thread. Pass the sender's `sendUserId`, `sendUserEmail` and `sendUserMailboxId`, the recipient's `contactId` or `leadId`, a `subject` and an HTML `message`. Set `replyToActivityId` to an email activity id (`act_...`), or to `latest`, to reply in the thread and reuse its subject. This sends a real email, so confirm the recipient and text first. ## Set up Use the first option your agent supports. ### CLI (official) Install the command, then confirm it runs. ```sh npm install -g @lemlist-official/cli lemlist --version ``` Run `lemlist api POST /inbox/email`. ### API (official) - Base URL: https://api.lemlist.com/api - Endpoint: `POST /inbox/email` - Auth: send the header `Authorization: Basic $LEMLIST_API_KEY` - Get a key: https://app.lemlist.com/settings/integrations - Docs: https://developer.lemlist.com/api-reference/getting-started/authentication Before doing anything else, make one read-only call to confirm access. ## Rules - Ask the user before anything that sends messages, costs money, or changes data. - Never print API keys. --- ref: tool:linear/add-customer-request name: Add a customer request to an issue company: company:linear workflows: [] access: [mcp, api] tags: [capability:manage-tasks, category:project-management, has:api, has:mcp] docs: https://linear.app/developers/managing-customers updated: 2026-09-27 --- # Add a customer request to an issue Attaches a customer's request, with its text and an optional source URL, to an issue, so the issue shows which customers asked for it. Customer Requests must be enabled in the workspace settings; they are available on every Linear plan. On the API, send `customerNeedCreate` with the `issueId`, the request `body` and either the Linear `customerId` or one of the customer's `customerExternalId` values; an `attachmentUrl`, such as a support conversation or call link, is saved as the request's source. To create the customer first without making a duplicate, `customerUpsert` matches an existing customer by domain and merges in your external id. ## Set up Use the first option your agent supports. ### MCP (official, remote) Add this server to your agent's MCP settings, then sign in when asked. ```json { "mcpServers": { "linear": { "url": "https://mcp.linear.app/mcp" } } } ``` Call the MCP tool `save_customer_need`. Server URL: https://mcp.linear.app/mcp ### API (official) - Base URL: https://api.linear.app - Endpoint: `POST /graphql` - Auth: send the header `Authorization: $LINEAR_API_KEY` - Get a key: https://linear.app/settings/account/security - Docs: https://linear.app/developers/graphql Before doing anything else, make one read-only call to confirm access. ## Rules - Ask the user before anything that sends messages, costs money, or changes data. - Never print API keys. --- ref: tool:linear/create-issue name: Create or update an issue company: company:linear workflows: [] access: [mcp, api] tags: [capability:manage-tasks, category:project-management, has:api, has:mcp] docs: https://linear.app/developers/graphql updated: 2026-09-27 --- # Create or update an issue Creates an issue in a team with its title, description, assignee, labels and priority, or updates an existing issue when you pass its id. On the API, send the `issueCreate` mutation with a `teamId` and a `title`, or `issueUpdate` with the issue's id (its UUID or a key like `BLA-123`) and only the fields to change. An issue created through the API without a `stateId` lands in the team's first Backlog state, or in Triage when the team uses it; through the MCP server it takes the team's default state when you are a member of the team. `save_issue` replaced the separate `create_issue` and `update_issue` tools. ## Set up Use the first option your agent supports. ### MCP (official, remote) Add this server to your agent's MCP settings, then sign in when asked. ```json { "mcpServers": { "linear": { "url": "https://mcp.linear.app/mcp" } } } ``` Call the MCP tool `save_issue`. Server URL: https://mcp.linear.app/mcp ### API (official) - Base URL: https://api.linear.app - Endpoint: `POST /graphql` - Auth: send the header `Authorization: $LINEAR_API_KEY` - Get a key: https://linear.app/settings/account/security - Docs: https://linear.app/developers/graphql Before doing anything else, make one read-only call to confirm access. ## Rules - Ask the user before anything that sends messages, costs money, or changes data. - Never print API keys. --- ref: tool:linear/list-issues name: List issues company: company:linear workflows: [] access: [mcp, api] tags: [capability:manage-tasks, category:project-management, has:api, has:mcp] docs: https://linear.app/developers/filtering updated: 2026-09-27 --- # List issues Returns the issues that match a filter on fields such as assignee, label, status, project or priority, one page at a time. On the API, query `issues` with a `filter` built from comparators such as `eq`, `in` and `lte`, for example `assignee: { email: { eq: "..." } }`. Results come 50 at a time by default: pass `pageInfo.endCursor` as `after` to get the next page. `list_issues` pages its results as well. ## Set up Use the first option your agent supports. ### MCP (official, remote) Add this server to your agent's MCP settings, then sign in when asked. ```json { "mcpServers": { "linear": { "url": "https://mcp.linear.app/mcp" } } } ``` Call the MCP tool `list_issues`. Server URL: https://mcp.linear.app/mcp ### API (official) - Base URL: https://api.linear.app - Endpoint: `POST /graphql` - Auth: send the header `Authorization: $LINEAR_API_KEY` - Get a key: https://linear.app/settings/account/security - Docs: https://linear.app/developers/graphql Before doing anything else, make one read-only call to confirm access. ## Rules - Ask the user before anything that sends messages, costs money, or changes data. - Never print API keys. --- ref: tool:loom/get-meeting-action-items name: Get meeting action items company: company:loom workflows: [] access: [mcp] tags: [capability:review-recordings, category:video, has:mcp] docs: https://developer.atlassian.com/cloud/rovo-mcp/guides/supported-tools/ updated: 2026-09-27 --- # Get meeting action items Returns the action items Loom's AI extracted from a recorded meeting. A deferred tool: find it with `discover`, then run it with `executeRead`. Use the items to draft follow-up tasks or a recap after a recorded call. ## Set up Use the first option your agent supports. ### MCP (official, remote) Add this server to your agent's MCP settings, then sign in when asked. ```json { "mcpServers": { "loom": { "url": "https://mcp.atlassian.com/v2/mcp" } } } ``` Call the MCP tool `getLoomMeetingActionItems`. Server URL: https://mcp.atlassian.com/v2/mcp Before doing anything else, make one read-only call to confirm access. ## Rules - Ask the user before anything that sends messages, costs money, or changes data. - Never print API keys. --- ref: tool:loom/get-video name: Get a video company: company:loom workflows: [] access: [mcp] tags: [capability:review-recordings, category:video, has:mcp] docs: https://developer.atlassian.com/cloud/rovo-mcp/guides/supported-tools/ updated: 2026-09-27 --- # Get a video Returns a Loom video's metadata and, on request, its transcript, comments, AI brief, meeting action items or attached links. A primary tool, always listed. Ask only for the parts you need, such as the transcript of a demo or a prospect's feedback video to summarize before a follow-up. It runs as the signed-in user, inside their Loom permissions. ## Set up Use the first option your agent supports. ### MCP (official, remote) Add this server to your agent's MCP settings, then sign in when asked. ```json { "mcpServers": { "loom": { "url": "https://mcp.atlassian.com/v2/mcp" } } } ``` Call the MCP tool `getLoomVideo`. Server URL: https://mcp.atlassian.com/v2/mcp Before doing anything else, make one read-only call to confirm access. ## Rules - Ask the user before anything that sends messages, costs money, or changes data. - Never print API keys. --- ref: tool:loom/list-videos name: List my videos company: company:loom workflows: [] access: [mcp] tags: [capability:store-files, category:video, has:mcp] docs: https://developer.atlassian.com/cloud/rovo-mcp/guides/supported-tools/ updated: 2026-09-27 --- # List my videos Returns the videos the signed-in user owns, most recent first. A deferred tool: find it with `discover`, then run it with `executeRead`. For videos others have shared with the user, use `listLoomVideosSharedWithMe`. ## Set up Use the first option your agent supports. ### MCP (official, remote) Add this server to your agent's MCP settings, then sign in when asked. ```json { "mcpServers": { "loom": { "url": "https://mcp.atlassian.com/v2/mcp" } } } ``` Call the MCP tool `listLoomVideos`. Server URL: https://mcp.atlassian.com/v2/mcp Before doing anything else, make one read-only call to confirm access. ## Rules - Ask the user before anything that sends messages, costs money, or changes data. - Never print API keys. --- ref: tool:loom/set-video-visibility name: "Set a video's visibility" company: company:loom workflows: [] access: [mcp] tags: [capability:store-files, category:video, has:mcp] docs: https://developer.atlassian.com/cloud/rovo-mcp/guides/supported-tools/ updated: 2026-09-27 --- # Set a video's visibility Sets a Loom video's visibility to OWNER, WORKSPACE or PUBLIC. Choose `PUBLIC` before sharing a video's link with people outside the workspace; `WORKSPACE` and `OWNER` keep it internal. A deferred tool: find it with `discover` and run it through the execute tool for its risk tier. ## Set up Use the first option your agent supports. ### MCP (official, remote) Add this server to your agent's MCP settings, then sign in when asked. ```json { "mcpServers": { "loom": { "url": "https://mcp.atlassian.com/v2/mcp" } } } ``` Call the MCP tool `updateLoomVideoPermissions`. Server URL: https://mcp.atlassian.com/v2/mcp Before doing anything else, make one read-only call to confirm access. ## Rules - Ask the user before anything that sends messages, costs money, or changes data. - Never print API keys. --- ref: tool:loom/upload-video name: Upload a video company: company:loom workflows: [] access: [mcp] tags: [capability:store-files, category:video, has:mcp] docs: https://developer.atlassian.com/cloud/rovo-mcp/guides/supported-tools/ updated: 2026-09-27 --- # Upload a video Starts uploading a new video to Loom, the first of two steps before it is published. Step 1 of 2: once the upload is done, call `publishLoomVideo` to finalize the video. Both are deferred tools: find them with `discover` and run them through the execute tool for their risk tier. ## Set up Use the first option your agent supports. ### MCP (official, remote) Add this server to your agent's MCP settings, then sign in when asked. ```json { "mcpServers": { "loom": { "url": "https://mcp.atlassian.com/v2/mcp" } } } ``` Call the MCP tool `createLoomVideoUpload`. Server URL: https://mcp.atlassian.com/v2/mcp Before doing anything else, make one read-only call to confirm access. ## Rules - Ask the user before anything that sends messages, costs money, or changes data. - Never print API keys. --- ref: tool:loops/create-audience-segment name: Create an audience segment company: company:loops workflows: [] access: [mcp, cli, api] tags: [capability:build-audience, category:email, has:api, has:cli, has:mcp] docs: https://loops.so/docs/api-reference/create-audience-segment updated: 2026-09-27 --- # Create an audience segment Saves a named segment of the contacts that match an audience filter, for targeting campaigns and filtering workflows. The filter matches `all` or `any` of its conditions, such as a contact property equal to a value. Target a campaign at the segment with its ID. On the MCP server, `search`, `describe` and `execute` find, inspect and run this operation. ## Set up Use the first option your agent supports. ### MCP (official, remote) Add this server to your agent's MCP settings, then sign in when asked. ```json { "mcpServers": { "loops": { "url": "https://mcp.loops.so" } } } ``` Call the MCP tool `execute`. Server URL: https://mcp.loops.so ### CLI (official) Install the command, then confirm it runs. ```sh brew install loops-so/tap/loops loops --version ``` Run `loops audience-segments create`. Set `$LOOPS_API_KEY` in your environment first (get a key: https://app.loops.so/settings?page=api). ### API (official) - Base URL: https://app.loops.so/api - Endpoint: `POST /v1/audience-segments` - Auth: send the header `Authorization: Bearer $LOOPS_API_KEY` - Get a key: https://app.loops.so/settings?page=api - Docs: https://loops.so/docs/api-reference/intro Before doing anything else, make one read-only call to confirm access. ## Rules - Ask the user before anything that sends messages, costs money, or changes data. - Never print API keys. --- ref: tool:loops/create-campaign name: Create a campaign company: company:loops workflows: [] access: [mcp, cli, api] tags: [capability:send-email, category:email, has:api, has:cli, has:mcp] docs: https://loops.so/docs/api-reference/create-campaign updated: 2026-09-27 --- # Create a campaign Creates a draft marketing campaign with an empty email message, optionally aimed at a mailing list, segment or filter and scheduled. Write the email's subject, sender, preview text and LMX content through the returned `emailMessageId` (`loops email-messages update` on the CLI). `scheduling` (`--schedule-at` or `--schedule-now`) sets when the campaign sends once it is published. On the MCP server, `search`, `describe` and `execute` find, inspect and run this operation. ## Set up Use the first option your agent supports. ### MCP (official, remote) Add this server to your agent's MCP settings, then sign in when asked. ```json { "mcpServers": { "loops": { "url": "https://mcp.loops.so" } } } ``` Call the MCP tool `execute`. Server URL: https://mcp.loops.so ### CLI (official) Install the command, then confirm it runs. ```sh brew install loops-so/tap/loops loops --version ``` Run `loops campaigns create`. Set `$LOOPS_API_KEY` in your environment first (get a key: https://app.loops.so/settings?page=api). ### API (official) - Base URL: https://app.loops.so/api - Endpoint: `POST /v1/campaigns` - Auth: send the header `Authorization: Bearer $LOOPS_API_KEY` - Get a key: https://app.loops.so/settings?page=api - Docs: https://loops.so/docs/api-reference/intro Before doing anything else, make one read-only call to confirm access. ## Rules - Ask the user before anything that sends messages, costs money, or changes data. - Never print API keys. --- ref: tool:loops/send-event name: Send an event company: company:loops workflows: [] access: [mcp, cli, api] tags: [capability:send-email, category:email, has:api, has:cli, has:mcp] docs: https://loops.so/docs/api-reference/send-event updated: 2026-09-27 --- # Send an event Sends a named event for a contact, found by email address or user ID, to start the workflows it triggers, and creates the contact if it doesn't exist. `eventProperties` are available in the emails the event sends, and contact properties at the top level of the body update the contact. Create properties in Loops before you send them. Send an `Idempotency-Key` header (`--idempotency-key` on the CLI): a key reused within 24 hours returns `409 Conflict`. On the MCP server, `search`, `describe` and `execute` find, inspect and run this operation. ## Set up Use the first option your agent supports. ### MCP (official, remote) Add this server to your agent's MCP settings, then sign in when asked. ```json { "mcpServers": { "loops": { "url": "https://mcp.loops.so" } } } ``` Call the MCP tool `execute`. Server URL: https://mcp.loops.so ### CLI (official) Install the command, then confirm it runs. ```sh brew install loops-so/tap/loops loops --version ``` Run `loops events send`. Set `$LOOPS_API_KEY` in your environment first (get a key: https://app.loops.so/settings?page=api). ### API (official) - Base URL: https://app.loops.so/api - Endpoint: `POST /v1/events/send` - Auth: send the header `Authorization: Bearer $LOOPS_API_KEY` - Get a key: https://app.loops.so/settings?page=api - Docs: https://loops.so/docs/api-reference/intro Before doing anything else, make one read-only call to confirm access. ## Rules - Ask the user before anything that sends messages, costs money, or changes data. - Never print API keys. --- ref: tool:loops/send-transactional-email name: Send a transactional email company: company:loops workflows: [] access: [mcp, cli, api] tags: [capability:send-email, category:email, has:api, has:cli, has:mcp] docs: https://loops.so/docs/api-reference/send-transactional-email updated: 2026-09-27 --- # Send a transactional email Sends a published transactional email to one recipient, filled with the data variables you pass. Pass `transactionalId` and `email`, plus `dataVariables` for the template (`--var KEY=value` on the CLI). Set `addToAudience` to also create the recipient as a contact, and send an `Idempotency-Key` header (`--idempotency-key`) so a retry never sends twice. Attachments work only after Loops support enables them. On the MCP server, find this operation with `search`, check its request shape with `describe` and run it with `execute`. ## Set up Use the first option your agent supports. ### MCP (official, remote) Add this server to your agent's MCP settings, then sign in when asked. ```json { "mcpServers": { "loops": { "url": "https://mcp.loops.so" } } } ``` Call the MCP tool `execute`. Server URL: https://mcp.loops.so ### CLI (official) Install the command, then confirm it runs. ```sh brew install loops-so/tap/loops loops --version ``` Run `loops transactional send`. Set `$LOOPS_API_KEY` in your environment first (get a key: https://app.loops.so/settings?page=api). ### API (official) - Base URL: https://app.loops.so/api - Endpoint: `POST /v1/transactional` - Auth: send the header `Authorization: Bearer $LOOPS_API_KEY` - Get a key: https://app.loops.so/settings?page=api - Docs: https://loops.so/docs/api-reference/intro Before doing anything else, make one read-only call to confirm access. ## Rules - Ask the user before anything that sends messages, costs money, or changes data. - Never print API keys. --- ref: tool:loops/upsert-contact name: Create or update a contact company: company:loops workflows: [] access: [mcp, cli, api] tags: [capability:build-audience, category:email, has:api, has:cli, has:mcp] docs: https://loops.so/docs/api-reference/update-contact updated: 2026-09-27 --- # Create or update a contact Updates the contact with a matching email address or user ID, or creates it, with properties and mailing list subscriptions. Identify the contact by `email` or `userId`. To change a contact's email address, it needs a `userId`: send the `userId` with the new address. Leave `subscribed` out unless you mean to unsubscribe or re-subscribe the contact. Set list membership with `mailingLists` (`--list =true` on the CLI). On the MCP server, `search`, `describe` and `execute` find, inspect and run this operation. ## Set up Use the first option your agent supports. ### MCP (official, remote) Add this server to your agent's MCP settings, then sign in when asked. ```json { "mcpServers": { "loops": { "url": "https://mcp.loops.so" } } } ``` Call the MCP tool `execute`. Server URL: https://mcp.loops.so ### CLI (official) Install the command, then confirm it runs. ```sh brew install loops-so/tap/loops loops --version ``` Run `loops contacts update`. Set `$LOOPS_API_KEY` in your environment first (get a key: https://app.loops.so/settings?page=api). ### API (official) - Base URL: https://app.loops.so/api - Endpoint: `PUT /v1/contacts/update` - Auth: send the header `Authorization: Bearer $LOOPS_API_KEY` - Get a key: https://app.loops.so/settings?page=api - Docs: https://loops.so/docs/api-reference/intro Before doing anything else, make one read-only call to confirm access. ## Rules - Ask the user before anything that sends messages, costs money, or changes data. - Never print API keys. --- ref: tool:lusha/enrich-company name: Enrich a company company: company:lusha workflows: [] access: [mcp, api] tags: [capability:research-accounts, category:data-provider, has:api, has:mcp] docs: https://docs.lusha.com/mcp-docs updated: 2026-09-27 --- # Enrich a company Returns a company's firmographics, such as size, revenue, industry, location and technologies, found by its domain or name. ## Set up Use the first option your agent supports. ### MCP (official, remote) Add this server to your agent's MCP settings, then sign in when asked. ```json { "mcpServers": { "lusha": { "url": "https://mcp.lusha.com" } } } ``` Call the MCP tool `companies_search`. Server URL: https://mcp.lusha.com ### API (official) - Base URL: https://api.lusha.com - Endpoint: `POST /v3/companies/search-and-enrich` - Auth: send the header `api_key: $LUSHA_API_KEY` - Get a key: https://dashboard.lusha.com/enrich/api - Docs: https://docs.lusha.com/apis/openapi Before doing anything else, make one read-only call to confirm access. ## Rules - Ask the user before anything that sends messages, costs money, or changes data. - Never print API keys. --- ref: tool:lusha/enrich-person name: Enrich a person company: company:lusha workflows: [] access: [mcp, api] tags: [capability:enrich-contacts, category:data-provider, has:api, has:mcp] docs: https://docs.lusha.com/mcp-docs updated: 2026-09-27 --- # Enrich a person Returns a person's verified email and direct and mobile phone numbers, with their title and company, found by email, LinkedIn URL, or first name, last name and company. Pass one lookup path: an email, a LinkedIn URL, or first name, last name and company name together. `enrich` defaults to true and reveals phones and email in the same call. When the match may be ambiguous, call it with `enrich: false` for a preview that spends no reveal credits, then reveal the chosen person with `prospecting_contact_enrich`; never do both for the same person, which charges twice. ## Set up Use the first option your agent supports. ### MCP (official, remote) Add this server to your agent's MCP settings, then sign in when asked. ```json { "mcpServers": { "lusha": { "url": "https://mcp.lusha.com" } } } ``` Call the MCP tool `contacts_search`. Server URL: https://mcp.lusha.com ### API (official) - Base URL: https://api.lusha.com - Endpoint: `POST /v3/contacts/search-and-enrich` - Auth: send the header `api_key: $LUSHA_API_KEY` - Get a key: https://dashboard.lusha.com/enrich/api - Docs: https://docs.lusha.com/apis/openapi Before doing anything else, make one read-only call to confirm access. ## Rules - Ask the user before anything that sends messages, costs money, or changes data. - Never print API keys. --- ref: tool:lusha/get-company-signals name: "Get a company's buying signals" company: company:lusha workflows: [] access: [mcp] tags: [capability:track-intent, category:data-provider, has:mcp] docs: https://docs.lusha.com/mcp-docs updated: 2026-09-27 --- # Get a company's buying signals Returns recent signals for companies found by name or domain, such as headcount growth, hiring surges, website traffic changes and news like funding rounds or executive hires. List the valid signal types first with `signals_company_filters`, which costs no credits. Signals cover the last six months by default, and each signal returned costs credits, so run it on a shortlist. For companies you already have Lusha IDs for, use `signals_companies_get`. ## Set up Use the first option your agent supports. ### MCP (official, remote) Add this server to your agent's MCP settings, then sign in when asked. ```json { "mcpServers": { "lusha": { "url": "https://mcp.lusha.com" } } } ``` Call the MCP tool `signals_companies_search`. Server URL: https://mcp.lusha.com Before doing anything else, make one read-only call to confirm access. ## Rules - Ask the user before anything that sends messages, costs money, or changes data. - Never print API keys. --- ref: tool:lusha/reveal-contact-details name: Reveal emails and phone numbers company: company:lusha workflows: [] access: [mcp, api] tags: [capability:find-work-emails, category:data-provider, has:api, has:mcp] docs: https://docs.lusha.com/mcp-docs updated: 2026-09-27 --- # Reveal emails and phone numbers Reveals the emails and direct and mobile phone numbers of up to 50 contacts found by search, charging only for the fields you ask to reveal. Pass the contact `id`s from a search and set `reveal` from each result's `canReveal[].field`. Add up `canReveal[].credits` to know the cost before a large batch, and check your balance with `account_usage`. Data already revealed for your account costs nothing to reveal again. ## Set up Use the first option your agent supports. ### MCP (official, remote) Add this server to your agent's MCP settings, then sign in when asked. ```json { "mcpServers": { "lusha": { "url": "https://mcp.lusha.com" } } } ``` Call the MCP tool `prospecting_contact_enrich`. Server URL: https://mcp.lusha.com ### API (official) - Base URL: https://api.lusha.com - Endpoint: `POST /v3/contacts/enrich` - Auth: send the header `api_key: $LUSHA_API_KEY` - Get a key: https://dashboard.lusha.com/enrich/api - Docs: https://docs.lusha.com/apis/openapi Before doing anything else, make one read-only call to confirm access. ## Rules - Ask the user before anything that sends messages, costs money, or changes data. - Never print API keys. --- ref: tool:lusha/search-people name: Search for people company: company:lusha workflows: [] access: [mcp, api] tags: [capability:build-audience, category:data-provider, has:api, has:mcp] docs: https://docs.lusha.com/mcp-docs updated: 2026-09-27 --- # Search for people Returns preview profiles of contacts who match job title, seniority, department, location and company filters, each listing which emails and phones can be revealed and at what credit cost. Job titles are free text; resolve seniority, department and location values with `prospecting_contact_filters` first, which costs no credits. Scope the search to accounts with `companyDomains` or `companyNames`, and pass a `signals` filter to keep only people with a recent promotion or company change. Previews carry no emails or phones: reveal the people you keep with `prospecting_contact_enrich`. ## Set up Use the first option your agent supports. ### MCP (official, remote) Add this server to your agent's MCP settings, then sign in when asked. ```json { "mcpServers": { "lusha": { "url": "https://mcp.lusha.com" } } } ``` Call the MCP tool `prospecting_contact_search`. Server URL: https://mcp.lusha.com ### API (official) - Base URL: https://api.lusha.com - Endpoint: `POST /v3/contacts/prospecting` - Auth: send the header `api_key: $LUSHA_API_KEY` - Get a key: https://dashboard.lusha.com/enrich/api - Docs: https://docs.lusha.com/apis/openapi Before doing anything else, make one read-only call to confirm access. ## Rules - Ask the user before anything that sends messages, costs money, or changes data. - Never print API keys. --- ref: tool:mailchimp/add-list-member-event name: Add an event for a contact company: company:mailchimp workflows: [] access: [api] tags: [capability:track-product-usage, category:email, has:api] docs: https://mailchimp.com/developer/marketing/api/list-member-events/add-event/ updated: 2026-09-27 --- # Add an event for a contact Records a named event, with optional properties and time, for one audience contact. The event `name` is 2 to 30 characters, such as `purchased`; `occurred_at` takes an ISO 8601 time. Events can trigger automations; set `is_syncing` to `true` when importing ones that shouldn't. ## Set up Use the first option your agent supports. ### API (official) - Base URL: https://{dc}.api.mailchimp.com/3.0 - Endpoint: `POST /lists/{list_id}/members/{subscriber_hash}/events` - Auth: send the header `Authorization: Bearer $MAILCHIMP_API_KEY` - Get a key: https://us1.admin.mailchimp.com/account/api/ - Docs: https://mailchimp.com/developer/marketing/api/ Before doing anything else, make one read-only call to confirm access. ## Rules - Ask the user before anything that sends messages, costs money, or changes data. - Never print API keys. --- ref: tool:mailchimp/create-campaign name: Create a campaign company: company:mailchimp workflows: [] access: [api] tags: [capability:send-email, category:email, has:api] docs: https://mailchimp.com/developer/marketing/api/campaigns/add-campaign/ updated: 2026-09-27 --- # Create a campaign Creates an unsent campaign for one audience, or a segment of it, with its subject line, sender and settings. Set `type` (such as `regular`), `recipients.list_id` and, to narrow the audience, `recipients.segment_opts`; `settings` holds the subject line, from name and reply-to address. Add the content with `PUT /campaigns/{campaign_id}/content` before sending. ## Set up Use the first option your agent supports. ### API (official) - Base URL: https://{dc}.api.mailchimp.com/3.0 - Endpoint: `POST /campaigns` - Auth: send the header `Authorization: Bearer $MAILCHIMP_API_KEY` - Get a key: https://us1.admin.mailchimp.com/account/api/ - Docs: https://mailchimp.com/developer/marketing/api/ Before doing anything else, make one read-only call to confirm access. ## Rules - Ask the user before anything that sends messages, costs money, or changes data. - Never print API keys. --- ref: tool:mailchimp/send-campaign name: Send a campaign company: company:mailchimp workflows: [] access: [api] tags: [capability:send-email, category:email, has:api] docs: https://mailchimp.com/developer/marketing/api/campaigns/send-campaign/ updated: 2026-09-27 --- # Send a campaign Sends a campaign to its recipients right away; an RSS campaign sends on its schedule instead. Review `GET /campaigns/{campaign_id}/send-checklist` first and resolve what it lists; `POST /campaigns/{campaign_id}/actions/test` sends a test email. Confirm the campaign and its audience with the user before sending. ## Set up Use the first option your agent supports. ### API (official) - Base URL: https://{dc}.api.mailchimp.com/3.0 - Endpoint: `POST /campaigns/{campaign_id}/actions/send` - Auth: send the header `Authorization: Bearer $MAILCHIMP_API_KEY` - Get a key: https://us1.admin.mailchimp.com/account/api/ - Docs: https://mailchimp.com/developer/marketing/api/ Before doing anything else, make one read-only call to confirm access. ## Rules - Ask the user before anything that sends messages, costs money, or changes data. - Never print API keys. --- ref: tool:mailchimp/tag-list-member name: Tag a contact company: company:mailchimp workflows: [] access: [api] tags: [capability:build-audience, category:email, has:api] docs: https://mailchimp.com/developer/marketing/api/list-member-tags/add-or-remove-member-tags/ updated: 2026-09-27 --- # Tag a contact Adds or removes tags on one audience contact, creating any active tag that doesn't exist yet. Pass each tag as `{ "name": ..., "status": "active" }` to add it or `"inactive"` to remove it. Set `is_syncing` to `true` to keep automations based on these tags from firing. ## Set up Use the first option your agent supports. ### API (official) - Base URL: https://{dc}.api.mailchimp.com/3.0 - Endpoint: `POST /lists/{list_id}/members/{subscriber_hash}/tags` - Auth: send the header `Authorization: Bearer $MAILCHIMP_API_KEY` - Get a key: https://us1.admin.mailchimp.com/account/api/ - Docs: https://mailchimp.com/developer/marketing/api/ Before doing anything else, make one read-only call to confirm access. ## Rules - Ask the user before anything that sends messages, costs money, or changes data. - Never print API keys. --- ref: tool:mailchimp/upsert-list-member name: Add or update a contact company: company:mailchimp workflows: [] access: [api] tags: [capability:build-audience, category:email, has:api] docs: https://mailchimp.com/developer/marketing/api/list-members/add-or-update-list-member/ updated: 2026-09-27 --- # Add or update a contact Adds a contact to an audience or updates the contact with that email address, with its subscription status and merge fields. `subscriber_hash` is the MD5 hash of the lowercase email address; the endpoint also accepts the address itself. Send `email_address` and `status_if_new` (`subscribed`, `pending`, `unsubscribed`, `cleaned` or `transactional`); they take effect only when the contact is new. ## Set up Use the first option your agent supports. ### API (official) - Base URL: https://{dc}.api.mailchimp.com/3.0 - Endpoint: `PUT /lists/{list_id}/members/{subscriber_hash}` - Auth: send the header `Authorization: Bearer $MAILCHIMP_API_KEY` - Get a key: https://us1.admin.mailchimp.com/account/api/ - Docs: https://mailchimp.com/developer/marketing/api/ Before doing anything else, make one read-only call to confirm access. ## Rules - Ask the user before anything that sends messages, costs money, or changes data. - Never print API keys. --- ref: tool:make/create-scenario name: Create a scenario company: company:make workflows: [] access: [mcp, cli, api] tags: [capability:automate-workflows, category:automation, has:api, has:cli, has:mcp] docs: https://developers.make.com/api-documentation/api-reference/scenarios updated: 2026-09-27 --- # Create a scenario Creates a Make scenario in a team from a blueprint of modules and a schedule, and returns the new scenario's details. `teamId`, `scheduling` and `blueprint` are required; the blueprint lists the modules, their parameters and the connections they use. A new scenario is inactive: activate it with `scenarios_activate`, `make-cli scenarios activate` or `POST /scenarios/{scenarioId}/start` before running it. ## Set up Use the first option your agent supports. ### MCP (official, remote) Add this server to your agent's MCP settings, then sign in when asked. ```json { "mcpServers": { "make": { "url": "https://mcp.make.com" } } } ``` Call the MCP tool `scenarios_create`. Server URL: https://mcp.make.com ### CLI (official) Install the command, then confirm it runs. ```sh npm install -g @makehq/cli make-cli --version ``` Run `make-cli scenarios create`. Set `$MAKE_API_KEY` in your environment first. ### API (official) - Base URL: https://{zone_url}/api/v2 - Endpoint: `POST /scenarios` - Auth: send the header `Authorization: Token $MAKE_API_KEY` - Docs: https://developers.make.com/api-documentation Before doing anything else, make one read-only call to confirm access. ## Rules - Ask the user before anything that sends messages, costs money, or changes data. - Never print API keys. --- ref: tool:make/get-scenario-run name: Get a scenario run company: company:make workflows: [] access: [mcp, cli, api] tags: [capability:automate-workflows, category:automation, has:api, has:cli, has:mcp] docs: https://developers.make.com/api-documentation/api-reference/scenarios/logs updated: 2026-09-27 --- # Get a scenario run Returns one scenario run's status, such as running, success, warning or error, and its outputs or error once it ends. Pass the `executionId` a run returned, with the scenario's ID. Poll until the status is no longer `RUNNING`: a run whose call timed out keeps going in Make for up to 40 minutes. ## Set up Use the first option your agent supports. ### MCP (official, remote) Add this server to your agent's MCP settings, then sign in when asked. ```json { "mcpServers": { "make": { "url": "https://mcp.make.com" } } } ``` Call the MCP tool `executions_get`. Server URL: https://mcp.make.com ### CLI (official) Install the command, then confirm it runs. ```sh npm install -g @makehq/cli make-cli --version ``` Run `make-cli executions get`. Set `$MAKE_API_KEY` in your environment first. ### API (official) - Base URL: https://{zone_url}/api/v2 - Endpoint: `GET /scenarios/{scenarioId}/executions/{executionId}` - Auth: send the header `Authorization: Token $MAKE_API_KEY` - Docs: https://developers.make.com/api-documentation Before doing anything else, make one read-only call to confirm access. ## Rules - Ask the user before anything that sends messages, costs money, or changes data. - Never print API keys. --- ref: tool:make/list-scenarios name: List scenarios company: company:make workflows: [] access: [cli, api] tags: [capability:automate-workflows, category:automation, has:api, has:cli] docs: https://developers.make.com/api-documentation/api-reference/scenarios updated: 2026-09-27 --- # List scenarios Returns the scenarios in a Make team or organization, filterable by name, folder and whether they are active. Pass `teamId` or `organizationId` on the API, and `--team-id` on the CLI. Read the inputs a scenario expects with `make-cli scenarios interface` or `GET /scenarios/{scenarioId}/interface` before running it. ## Set up Use the first option your agent supports. ### CLI (official) Install the command, then confirm it runs. ```sh npm install -g @makehq/cli make-cli --version ``` Run `make-cli scenarios list`. Set `$MAKE_API_KEY` in your environment first. ### API (official) - Base URL: https://{zone_url}/api/v2 - Endpoint: `GET /scenarios` - Auth: send the header `Authorization: Token $MAKE_API_KEY` - Docs: https://developers.make.com/api-documentation Before doing anything else, make one read-only call to confirm access. ## Rules - Ask the user before anything that sends messages, costs money, or changes data. - Never print API keys. --- ref: tool:make/run-scenario name: Run a scenario company: company:make workflows: [] access: [mcp, cli, api] tags: [capability:automate-workflows, category:automation, has:api, has:cli, has:mcp] docs: https://developers.make.com/api-documentation/api-reference/scenarios updated: 2026-09-27 --- # Run a scenario Runs an active Make scenario with the inputs you pass and returns the run's status, execution ID and, when the scenario defines them, its outputs. Pass the scenario's inputs in `data` (`--data` on the CLI). On the API, `responsive: true` waits for the run to finish (`--responsive` on the CLI); a run longer than 40 seconds times out the call but keeps going, and `callbackUrl` receives the result when it ends. On the MCP server a run that outlasts the tool timeout (25 seconds over OAuth) returns an `executionId`: check it with `executions_get`. A scenario doesn't run while its organization or team is paused for going over its operations or data transfer limit. ## Set up Use the first option your agent supports. ### MCP (official, remote) Add this server to your agent's MCP settings, then sign in when asked. ```json { "mcpServers": { "make": { "url": "https://mcp.make.com" } } } ``` Call the MCP tool `scenarios_run`. Server URL: https://mcp.make.com ### CLI (official) Install the command, then confirm it runs. ```sh npm install -g @makehq/cli make-cli --version ``` Run `make-cli scenarios run`. Set `$MAKE_API_KEY` in your environment first. ### API (official) - Base URL: https://{zone_url}/api/v2 - Endpoint: `POST /scenarios/{scenarioId}/run` - Auth: send the header `Authorization: Token $MAKE_API_KEY` - Docs: https://developers.make.com/api-documentation Before doing anything else, make one read-only call to confirm access. ## Rules - Ask the user before anything that sends messages, costs money, or changes data. - Never print API keys. --- ref: tool:metabase/query-metrics name: Query tables and metrics company: company:metabase workflows: [] access: [mcp, api] tags: [capability:track-product-usage, category:product-analytics, has:api, has:mcp] docs: https://www.metabase.com/docs/latest/ai/agent-api updated: 2026-09-27 --- # Query tables and metrics Runs a query against a table or saved metric through the semantic layer and returns the results. The API returns at most 200 rows per request, with a `continuation_token` to pass back for the next page. ## Set up Use the first option your agent supports. ### MCP (official, remote) Add this server to your agent's MCP settings, then sign in when asked. ```json { "mcpServers": { "metabase": { "url": "https://{your-metabase-url}/api/metabase-mcp" } } } ``` Call the MCP tool `query`. Server URL: https://{your-metabase-url}/api/metabase-mcp ### API (official) - Base URL: https://{your-metabase-url} - Endpoint: `POST /api/agent/v1/query` - Auth: send the header `X-API-Key: $METABASE_API_KEY` - Docs: https://www.metabase.com/docs/latest/ai/agent-api Before doing anything else, make one read-only call to confirm access. ## Rules - Ask the user before anything that sends messages, costs money, or changes data. - Never print API keys. --- ref: tool:metabase/run-sql-query name: Run a SQL query company: company:metabase workflows: [] access: [mcp] tags: [capability:track-product-usage, category:product-analytics, has:mcp] docs: https://www.metabase.com/docs/latest/ai/mcp updated: 2026-09-27 --- # Run a SQL query Runs a native SQL query against a connected database and returns the rows. Needs native-query permission on the target database. ## Set up Use the first option your agent supports. ### MCP (official, remote) Add this server to your agent's MCP settings, then sign in when asked. ```json { "mcpServers": { "metabase": { "url": "https://{your-metabase-url}/api/metabase-mcp" } } } ``` Call the MCP tool `execute_sql`. Server URL: https://{your-metabase-url}/api/metabase-mcp Before doing anything else, make one read-only call to confirm access. ## Rules - Ask the user before anything that sends messages, costs money, or changes data. - Never print API keys. --- ref: tool:mixpanel/create-cohort name: Create a cohort company: company:mixpanel workflows: [] access: [mcp, cli] tags: [capability:build-audience, category:product-analytics, has:cli, has:mcp] docs: https://docs.mixpanel.com/docs/mcp updated: 2026-09-26 --- # Create a cohort Creates a saved cohort of users from a cohort definition. Over MCP, `Describe-Cohort-Schema` documents the structure of a cohort definition. ## Set up Use the first option your agent supports. ### MCP (official, remote) Add this server to your agent's MCP settings, then sign in when asked. ```json { "mcpServers": { "mixpanel": { "url": "https://mcp.mixpanel.com/mcp" } } } ``` Call the MCP tool `Create-Cohort`. Server URL: https://mcp.mixpanel.com/mcp ### CLI (official) Install the command, then confirm it runs. ```sh pip install mixpanel-headless mp --version ``` Run `mp cohorts create`. Before doing anything else, make one read-only call to confirm access. ## Rules - Ask the user before anything that sends messages, costs money, or changes data. - Never print API keys. --- ref: tool:mixpanel/query-profiles name: Query profiles company: company:mixpanel workflows: [] access: [api] tags: [capability:build-audience, category:product-analytics, has:api] docs: https://docs.mixpanel.com/reference/engage-query updated: 2026-09-26 --- # Query profiles Returns the user or group profiles that match a selector expression or belong to a cohort. Filter with a `where` selector or `filter_by_cohort`, and include `project_id`. Each response holds at most `page_size` records; page with the `session_id` from the first response and an incremented `page`. ## Set up Use the first option your agent supports. ### API (official) - Base URL: https://mixpanel.com/api/query - Endpoint: `POST /engage` - Auth: send the header `Authorization: Basic $MIXPANEL_SA_TOKEN` - Get a key: https://mixpanel.com/settings/org#serviceaccounts - Docs: https://docs.mixpanel.com/reference/query-api Before doing anything else, make one read-only call to confirm access. ## Rules - Ask the user before anything that sends messages, costs money, or changes data. - Never print API keys. --- ref: tool:mixpanel/query-saved-report name: Query a saved report company: company:mixpanel workflows: [] access: [mcp, cli, api] tags: [capability:track-product-usage, category:product-analytics, has:api, has:cli, has:mcp] docs: https://docs.mixpanel.com/reference/insights-query updated: 2026-09-26 --- # Query a saved report Returns the data behind a saved report, such as an Insights report, by its ID. Over the API, pass the report's `bookmark_id` and `project_id`. The Query API allows 60 queries per hour and 5 concurrent queries. ## Set up Use the first option your agent supports. ### MCP (official, remote) Add this server to your agent's MCP settings, then sign in when asked. ```json { "mcpServers": { "mixpanel": { "url": "https://mcp.mixpanel.com/mcp" } } } ``` Call the MCP tool `Get-Report`. Server URL: https://mcp.mixpanel.com/mcp ### CLI (official) Install the command, then confirm it runs. ```sh pip install mixpanel-headless mp --version ``` Run `mp query saved-report`. ### API (official) - Base URL: https://mixpanel.com/api/query - Endpoint: `GET /insights` - Auth: send the header `Authorization: Basic $MIXPANEL_SA_TOKEN` - Get a key: https://mixpanel.com/settings/org#serviceaccounts - Docs: https://docs.mixpanel.com/reference/query-api Before doing anything else, make one read-only call to confirm access. ## Rules - Ask the user before anything that sends messages, costs money, or changes data. - Never print API keys. --- ref: tool:mixpanel/run-query name: Run a query company: company:mixpanel workflows: [workflow:at-risk-customer-rescue] access: [mcp] tags: [capability:track-product-usage, category:product-analytics, has:mcp] docs: https://docs.mixpanel.com/docs/mcp updated: 2026-09-27 --- # Run a query Runs an ad-hoc insights, funnels, flows or retention query on the project's events and returns the results. Call `Get-Query-Schema` first for the full JSON schema of a query. An organization admin must enable MCP in Settings → Org → Overview before anyone can connect, except on free and growth accounts created after August 1, 2026, where it is on by default. ## Set up Use the first option your agent supports. ### MCP (official, remote) Add this server to your agent's MCP settings, then sign in when asked. ```json { "mcpServers": { "mixpanel": { "url": "https://mcp.mixpanel.com/mcp" } } } ``` Call the MCP tool `Run-Query`. Server URL: https://mcp.mixpanel.com/mcp Before doing anything else, make one read-only call to confirm access. ## Rules - Ask the user before anything that sends messages, costs money, or changes data. - Never print API keys. --- ref: tool:monday/comment-on-item name: Comment on an item company: company:monday workflows: [] access: [mcp, api] tags: [capability:manage-tasks, category:project-management, has:api, has:mcp] docs: https://developer.monday.com/api-reference/docs/create-update updated: 2026-09-27 --- # Comment on an item Posts an update, monday.com's comment, on an item, or a reply to an existing update, with optional mentions. The `body` takes HTML such as `` and `
`, not Markdown. Mention users, teams or boards with `mentionsList`, never with `@` in the body, and pass `parentId` to reply in a thread. On the API, send the `create_update` mutation with `item_id` and `body`. ## Set up Use the first option your agent supports. ### MCP (official, remote) Add this server to your agent's MCP settings, then sign in when asked. ```json { "mcpServers": { "monday": { "url": "https://mcp.monday.com/mcp" } } } ``` Call the MCP tool `create_update`. Server URL: https://mcp.monday.com/mcp ### API (official) - Base URL: https://api.monday.com - Endpoint: `POST /v2` - Auth: send the header `Authorization: $MONDAY_TOKEN` - Docs: https://developer.monday.com/api-reference/docs/authentication Before doing anything else, make one read-only call to confirm access. ## Rules - Ask the user before anything that sends messages, costs money, or changes data. - Never print API keys. --- ref: tool:monday/create-item name: Create an item company: company:monday workflows: [] access: [mcp, api] tags: [capability:manage-tasks, category:project-management, has:api, has:mcp] docs: https://developer.monday.com/api-reference/docs/create-item updated: 2026-09-27 --- # Create an item Creates an item, a row on a board, with its name and column values, and returns the item's id and URL. Read the board first with `get_board_info` for its column ids, column types, group ids and status labels. `columnValues` is a JSON string keyed by column id, such as `{"status_col": {"label": "Done"}}`, and the item lands in the board's top group unless you pass `groupId`. On the API, send the `create_item` mutation with `board_id`, `item_name` and `column_values`. ## Set up Use the first option your agent supports. ### MCP (official, remote) Add this server to your agent's MCP settings, then sign in when asked. ```json { "mcpServers": { "monday": { "url": "https://mcp.monday.com/mcp" } } } ``` Call the MCP tool `create_item`. Server URL: https://mcp.monday.com/mcp ### API (official) - Base URL: https://api.monday.com - Endpoint: `POST /v2` - Auth: send the header `Authorization: $MONDAY_TOKEN` - Docs: https://developer.monday.com/api-reference/docs/authentication Before doing anything else, make one read-only call to confirm access. ## Rules - Ask the user before anything that sends messages, costs money, or changes data. - Never print API keys. --- ref: tool:monday/list-board-items name: "List a board's items" company: company:monday workflows: [] access: [mcp, api] tags: [capability:manage-tasks, category:project-management, has:api, has:mcp] docs: https://developer.monday.com/api-reference/docs/get-board-items updated: 2026-09-27 --- # List a board's items Returns a board's items, filtered, searched or sorted, with their column values when asked, one page at a time. Call `get_board_info` first to get the column ids and status labels filters need. `searchTerm` runs a free-text search, and `includeColumns` adds column values at the cost of much larger responses. Pages hold 25 items by default and up to 500: pass the returned `nextCursor` as `cursor` for the next page. On the API, query the board's `items_page`. ## Set up Use the first option your agent supports. ### MCP (official, remote) Add this server to your agent's MCP settings, then sign in when asked. ```json { "mcpServers": { "monday": { "url": "https://mcp.monday.com/mcp" } } } ``` Call the MCP tool `get_board_items_page`. Server URL: https://mcp.monday.com/mcp ### API (official) - Base URL: https://api.monday.com - Endpoint: `POST /v2` - Auth: send the header `Authorization: $MONDAY_TOKEN` - Docs: https://developer.monday.com/api-reference/docs/authentication Before doing anything else, make one read-only call to confirm access. ## Rules - Ask the user before anything that sends messages, costs money, or changes data. - Never print API keys. --- ref: tool:monday/notify-user name: Notify a user company: company:monday workflows: [] access: [mcp, api] tags: [capability:route-alerts, category:project-management, has:api, has:mcp] docs: https://developer.monday.com/api-reference/docs/create-notification updated: 2026-09-27 --- # Notify a user Sends a user a monday.com bell notification that links to an item, a board or an update, with an email if their settings allow. Pass the recipient's `user_id`, the `text`, a `target_id` and its `target_type`: `Project` for an item or board, `Post` for an update or reply. Look up user ids with `list_users_and_teams`. On the API, send the `create_notification` mutation with the same four arguments. ## Set up Use the first option your agent supports. ### MCP (official, remote) Add this server to your agent's MCP settings, then sign in when asked. ```json { "mcpServers": { "monday": { "url": "https://mcp.monday.com/mcp" } } } ``` Call the MCP tool `create_notification`. Server URL: https://mcp.monday.com/mcp ### API (official) - Base URL: https://api.monday.com - Endpoint: `POST /v2` - Auth: send the header `Authorization: $MONDAY_TOKEN` - Docs: https://developer.monday.com/api-reference/docs/authentication Before doing anything else, make one read-only call to confirm access. ## Rules - Ask the user before anything that sends messages, costs money, or changes data. - Never print API keys. --- ref: tool:monday/update-item name: Update an item company: company:monday workflows: [] access: [mcp, api] tags: [capability:manage-tasks, category:project-management, has:api, has:mcp] docs: https://developer.monday.com/api-reference/docs/change-item-column-values updated: 2026-09-27 --- # Update an item Sets one or more column values on an existing item in one call, such as its status, a date or an email. Pass `columnValues` as a JSON string keyed by column id; each column type has its own format, such as `{"label": "Done"}` for a status or `{"date": "2024-06-01"}` for a date. Set `createLabelsIfMissing` to add a status or dropdown label that doesn't exist yet. On the API, send the `change_multiple_column_values` mutation with `board_id`, `item_id` and `column_values`. ## Set up Use the first option your agent supports. ### MCP (official, remote) Add this server to your agent's MCP settings, then sign in when asked. ```json { "mcpServers": { "monday": { "url": "https://mcp.monday.com/mcp" } } } ``` Call the MCP tool `change_item_column_values`. Server URL: https://mcp.monday.com/mcp ### API (official) - Base URL: https://api.monday.com - Endpoint: `POST /v2` - Auth: send the header `Authorization: $MONDAY_TOKEN` - Docs: https://developer.monday.com/api-reference/docs/authentication Before doing anything else, make one read-only call to confirm access. ## Rules - Ask the user before anything that sends messages, costs money, or changes data. - Never print API keys. --- ref: tool:n8n/create-workflow name: Create a workflow company: company:n8n workflows: [] access: [mcp, cli, api] tags: [capability:automate-workflows, category:automation, has:api, has:cli, has:mcp] docs: https://docs.n8n.io/connect/n8n-api/workflow updated: 2026-09-27 --- # Create a workflow Creates an n8n workflow from its nodes and connections and returns the new workflow with its ID. The API and `n8n-cli workflow create --stdin` take workflow JSON. The MCP tool takes TypeScript or JavaScript written with the n8n Workflow SDK, validated first with `validate_workflow`; it assigns available credentials to nodes and makes the workflow available to MCP. A workflow runs in production only once it is published (`publish_workflow` on the MCP server). ## Set up Use the first option your agent supports. ### MCP (official, remote) Add this server to your agent's MCP settings, then sign in when asked. ```json { "mcpServers": { "n8n": { "url": "https://{your-n8n-domain}/mcp-server/http" } } } ``` Call the MCP tool `create_workflow_from_code`. Server URL: https://{your-n8n-domain}/mcp-server/http ### CLI (official) Install the command, then confirm it runs. ```sh npm install -g @n8n/cli n8n-cli --version ``` Run `n8n-cli workflow create`. Set `$N8N_API_KEY` in your environment first. ### API (official) - Base URL: https://{your-domain}/api/v1 - Endpoint: `POST /workflows` - Auth: send the header `X-N8N-API-KEY: $N8N_API_KEY` - Docs: https://docs.n8n.io/connect/n8n-api Before doing anything else, make one read-only call to confirm access. ## Rules - Ask the user before anything that sends messages, costs money, or changes data. - Never print API keys. --- ref: tool:n8n/find-workflows name: Find workflows company: company:n8n workflows: [] access: [mcp, cli, api] tags: [capability:automate-workflows, category:automation, has:api, has:cli, has:mcp] docs: https://docs.n8n.io/connect/n8n-api/workflow updated: 2026-09-27 --- # Find workflows Returns the n8n workflows you have access to, filtered by name, tags or project, with each one's ID and whether it is active. On the MCP server, `query` matches names and descriptions and returns up to 200 previews, and `availableInMCP` shows which workflows an agent can run. On the API, filter with `name`, `tags`, `active` or `projectId`. ## Set up Use the first option your agent supports. ### MCP (official, remote) Add this server to your agent's MCP settings, then sign in when asked. ```json { "mcpServers": { "n8n": { "url": "https://{your-n8n-domain}/mcp-server/http" } } } ``` Call the MCP tool `search_workflows`. Server URL: https://{your-n8n-domain}/mcp-server/http ### CLI (official) Install the command, then confirm it runs. ```sh npm install -g @n8n/cli n8n-cli --version ``` Run `n8n-cli workflow list`. Set `$N8N_API_KEY` in your environment first. ### API (official) - Base URL: https://{your-domain}/api/v1 - Endpoint: `GET /workflows` - Auth: send the header `X-N8N-API-KEY: $N8N_API_KEY` - Docs: https://docs.n8n.io/connect/n8n-api Before doing anything else, make one read-only call to confirm access. ## Rules - Ask the user before anything that sends messages, costs money, or changes data. - Never print API keys. --- ref: tool:n8n/get-workflow-run name: Get a workflow run company: company:n8n workflows: [] access: [mcp, cli, api] tags: [capability:automate-workflows, category:automation, has:api, has:cli, has:mcp] docs: https://docs.n8n.io/connect/n8n-api/executions updated: 2026-09-27 --- # Get a workflow run Returns one n8n execution's status and start and stop times and, when asked, the data each node produced. It returns metadata only unless you pass `includeData`. The MCP tool also needs the `workflowId`, and takes `nodeNames` or `truncateData` to keep the returned data small. ## Set up Use the first option your agent supports. ### MCP (official, remote) Add this server to your agent's MCP settings, then sign in when asked. ```json { "mcpServers": { "n8n": { "url": "https://{your-n8n-domain}/mcp-server/http" } } } ``` Call the MCP tool `get_workflow_execution`. Server URL: https://{your-n8n-domain}/mcp-server/http ### CLI (official) Install the command, then confirm it runs. ```sh npm install -g @n8n/cli n8n-cli --version ``` Run `n8n-cli execution get`. Set `$N8N_API_KEY` in your environment first. ### API (official) - Base URL: https://{your-domain}/api/v1 - Endpoint: `GET /executions/{executionId}` - Auth: send the header `X-N8N-API-KEY: $N8N_API_KEY` - Docs: https://docs.n8n.io/connect/n8n-api Before doing anything else, make one read-only call to confirm access. ## Rules - Ask the user before anything that sends messages, costs money, or changes data. - Never print API keys. --- ref: tool:n8n/run-workflow name: Run a workflow company: company:n8n workflows: [] access: [mcp] tags: [capability:automate-workflows, category:automation, has:mcp] docs: https://docs.n8n.io/connect/connect-to-n8n-mcp-server/mcp-server-tools-reference updated: 2026-09-27 --- # Run a workflow Starts one run of an n8n workflow, passing chat, form or webhook input to its trigger, and returns the execution ID without waiting for it to finish. Set `executionMode` to `production` to run the published version, which works with Webhook, Chat Trigger, Form Trigger and Schedule Trigger nodes, or to `manual` to test the current draft. If the workflow has more than one eligible trigger, or its trigger needs input, name the trigger in `triggerNodeName`, which is required whenever you pass `inputs`. Check the outcome with `get_workflow_execution`. Only workflows enabled for MCP access can run, and multi-step forms or human-in-the-loop steps aren't supported. ## Set up Use the first option your agent supports. ### MCP (official, remote) Add this server to your agent's MCP settings, then sign in when asked. ```json { "mcpServers": { "n8n": { "url": "https://{your-n8n-domain}/mcp-server/http" } } } ``` Call the MCP tool `execute_workflow`. Server URL: https://{your-n8n-domain}/mcp-server/http Before doing anything else, make one read-only call to confirm access. ## Rules - Ask the user before anything that sends messages, costs money, or changes data. - Never print API keys. --- ref: tool:notion/create-page name: Create a page company: company:notion workflows: [workflow:content-download-nurture] access: [mcp, cli, api] tags: [capability:manage-docs, category:docs, has:api, has:cli, has:mcp] docs: https://developers.notion.com/reference/post-page updated: 2026-09-27 --- # Create a page Creates a page under a parent page, or a new row in a data source, with property values and content. To add a row to a database, set the parent to its data source and match the data source's property schema. `notion-create-pages` can create several pages in one call. ## Set up Use the first option your agent supports. ### MCP (official, remote) Add this server to your agent's MCP settings, then sign in when asked. ```json { "mcpServers": { "notion": { "url": "https://mcp.notion.com/mcp" } } } ``` Call the MCP tool `notion-create-pages`. Server URL: https://mcp.notion.com/mcp ### CLI (official) Install the command, then confirm it runs. ```sh npm install --global ntn ntn --version ``` Run `ntn api v1/pages`. Set `$NOTION_API_TOKEN` in your environment first (get a key: https://www.notion.so/developers/tokens). ### API (official) - Base URL: https://api.notion.com - Endpoint: `POST /v1/pages` - Auth: send the header `Authorization: Bearer $NOTION_API_KEY` - Get a key: https://www.notion.so/developers/tokens - Docs: https://developers.notion.com/reference/intro Before doing anything else, make one read-only call to confirm access. ## Rules - Ask the user before anything that sends messages, costs money, or changes data. - Never print API keys. --- ref: tool:notion/query-data-source name: Query a data source company: company:notion workflows: [] access: [mcp, cli, api] tags: [capability:manage-docs, category:docs, has:api, has:cli, has:mcp] docs: https://developers.notion.com/reference/query-a-data-source updated: 2026-09-27 --- # Query a data source Returns the pages in a data source that match a filter, in the requested sort order. `notion-query-data-sources` can also run SQL across data sources or run a saved view. SQL is unlimited on Business and Enterprise plans with Notion AI; on other plans, rows mode and single-data-source SQL share a per-workspace allowance. ## Set up Use the first option your agent supports. ### MCP (official, remote) Add this server to your agent's MCP settings, then sign in when asked. ```json { "mcpServers": { "notion": { "url": "https://mcp.notion.com/mcp" } } } ``` Call the MCP tool `notion-query-data-sources`. Server URL: https://mcp.notion.com/mcp ### CLI (official) Install the command, then confirm it runs. ```sh npm install --global ntn ntn --version ``` Run `ntn datasources query `. Set `$NOTION_API_TOKEN` in your environment first (get a key: https://www.notion.so/developers/tokens). ### API (official) - Base URL: https://api.notion.com - Endpoint: `POST /v1/data_sources/{data_source_id}/query` - Auth: send the header `Authorization: Bearer $NOTION_API_KEY` - Get a key: https://www.notion.so/developers/tokens - Docs: https://developers.notion.com/reference/intro Before doing anything else, make one read-only call to confirm access. ## Rules - Ask the user before anything that sends messages, costs money, or changes data. - Never print API keys. --- ref: tool:notion/read-page name: Read a page company: company:notion workflows: [] access: [mcp, api] tags: [capability:manage-docs, category:docs, has:api, has:mcp] docs: https://developers.notion.com/reference/retrieve-page-markdown updated: 2026-09-27 --- # Read a page Returns a page's content as Notion-flavored markdown. `notion-fetch` also reads a database, data source or saved view by its URL or ID. ## Set up Use the first option your agent supports. ### MCP (official, remote) Add this server to your agent's MCP settings, then sign in when asked. ```json { "mcpServers": { "notion": { "url": "https://mcp.notion.com/mcp" } } } ``` Call the MCP tool `notion-fetch`. Server URL: https://mcp.notion.com/mcp ### API (official) - Base URL: https://api.notion.com - Endpoint: `GET /v1/pages/{page_id}/markdown` - Auth: send the header `Authorization: Bearer $NOTION_API_KEY` - Get a key: https://www.notion.so/developers/tokens - Docs: https://developers.notion.com/reference/intro Before doing anything else, make one read-only call to confirm access. ## Rules - Ask the user before anything that sends messages, costs money, or changes data. - Never print API keys. --- ref: tool:notion/search-workspace name: Search the workspace company: company:notion workflows: [] access: [mcp, cli, api] tags: [capability:manage-docs, category:docs, has:api, has:cli, has:mcp] docs: https://developers.notion.com/reference/post-search updated: 2026-09-27 --- # Search the workspace Finds pages and data sources that match a query. The API matches the titles of pages and data sources the token can reach; `notion-search` also searches page content and, with Notion AI, connected sources. ## Set up Use the first option your agent supports. ### MCP (official, remote) Add this server to your agent's MCP settings, then sign in when asked. ```json { "mcpServers": { "notion": { "url": "https://mcp.notion.com/mcp" } } } ``` Call the MCP tool `notion-search`. Server URL: https://mcp.notion.com/mcp ### CLI (official) Install the command, then confirm it runs. ```sh npm install --global ntn ntn --version ``` Run `ntn api v1/search`. Set `$NOTION_API_TOKEN` in your environment first (get a key: https://www.notion.so/developers/tokens). ### API (official) - Base URL: https://api.notion.com - Endpoint: `POST /v1/search` - Auth: send the header `Authorization: Bearer $NOTION_API_KEY` - Get a key: https://www.notion.so/developers/tokens - Docs: https://developers.notion.com/reference/intro Before doing anything else, make one read-only call to confirm access. ## Rules - Ask the user before anything that sends messages, costs money, or changes data. - Never print API keys. --- ref: tool:notion/update-page name: Update a page company: company:notion workflows: [] access: [mcp, cli, api] tags: [capability:manage-docs, category:docs, has:api, has:cli, has:mcp] docs: https://developers.notion.com/reference/patch-page updated: 2026-09-27 --- # Update a page Changes a page's property values, icon or cover. `notion-update-page` can also edit the page's content. ## Set up Use the first option your agent supports. ### MCP (official, remote) Add this server to your agent's MCP settings, then sign in when asked. ```json { "mcpServers": { "notion": { "url": "https://mcp.notion.com/mcp" } } } ``` Call the MCP tool `notion-update-page`. Server URL: https://mcp.notion.com/mcp ### CLI (official) Install the command, then confirm it runs. ```sh npm install --global ntn ntn --version ``` Run `ntn api v1/pages/$PAGE_ID -X PATCH`. Set `$NOTION_API_TOKEN` in your environment first (get a key: https://www.notion.so/developers/tokens). ### API (official) - Base URL: https://api.notion.com - Endpoint: `PATCH /v1/pages/{page_id}` - Auth: send the header `Authorization: Bearer $NOTION_API_KEY` - Get a key: https://www.notion.so/developers/tokens - Docs: https://developers.notion.com/reference/intro Before doing anything else, make one read-only call to confirm access. ## Rules - Ask the user before anything that sends messages, costs money, or changes data. - Never print API keys. --- ref: tool:openai/create-image name: Create an image company: company:openai workflows: [] access: [cli, api] tags: [capability:design-assets, category:ai-model, has:api, has:cli] docs: https://developers.openai.com/api/reference/resources/images/methods/generate updated: 2026-09-26 --- # Create an image Generates images from a text prompt; GPT image models return them base64-encoded. ## Set up Use the first option your agent supports. ### CLI (official) Install the command, then confirm it runs. ```sh brew install openai/tools/openai openai --version ``` Run `openai images generate`. Set `$OPENAI_API_KEY` in your environment first (get a key: https://platform.openai.com/api-keys). ### API (official) - Base URL: https://api.openai.com/v1 - Endpoint: `POST /images/generations` - Auth: send the header `Authorization: Bearer $OPENAI_API_KEY` - Get a key: https://platform.openai.com/api-keys - Docs: https://developers.openai.com/api/reference/overview Before doing anything else, make one read-only call to confirm access. ## Rules - Ask the user before anything that sends messages, costs money, or changes data. - Never print API keys. --- ref: tool:openai/create-response name: Create a response company: company:openai workflows: [] access: [cli, api] tags: [capability:write-copy, category:ai-model, has:api, has:cli] docs: https://developers.openai.com/api/reference/resources/responses/methods/create updated: 2026-09-26 --- # Create a response Generates text, or JSON that follows a schema you pass, from a prompt, optionally using tools such as web search. Draft copy with a plain prompt. To classify records, pass a JSON schema in `text.format` (structured outputs) and read the label from the returned JSON. ## Set up Use the first option your agent supports. ### CLI (official) Install the command, then confirm it runs. ```sh brew install openai/tools/openai openai --version ``` Run `openai responses create`. Set `$OPENAI_API_KEY` in your environment first (get a key: https://platform.openai.com/api-keys). ### API (official) - Base URL: https://api.openai.com/v1 - Endpoint: `POST /responses` - Auth: send the header `Authorization: Bearer $OPENAI_API_KEY` - Get a key: https://platform.openai.com/api-keys - Docs: https://developers.openai.com/api/reference/overview Before doing anything else, make one read-only call to confirm access. ## Rules - Ask the user before anything that sends messages, costs money, or changes data. - Never print API keys. --- ref: tool:outreach/add-prospects-to-sequence name: Add prospects to a sequence company: company:outreach workflows: [] access: [mcp, api] tags: [capability:send-email, category:sales-engagement, has:api, has:mcp] docs: https://developers.outreach.io/api/reference/batch/paths/~1batches~1actions~1prospectsaddtosequence/post updated: 2026-09-27 --- # Add prospects to a sequence Enrolls one or more prospects in an Outreach sequence, sending from the mailbox you choose, and returns the status of the batch. Find the sequence with `sequence_search` on the MCP server or `GET /sequences` over the API. The API call takes the prospect `ids`, the `sequenceId` and the sender's `mailboxId` under `data.attributes`; to enroll a single prospect, `POST /sequenceStates` with prospect, sequence and mailbox relationships does the same. Enrolling starts the sequence's automation, so confirm the sequence, mailbox and prospects first, and check the result with `sequence_state_search`. ## Set up Use the first option your agent supports. ### MCP (official, remote) Add this server to your agent's MCP settings, then sign in when asked. ```json { "mcpServers": { "outreach": { "url": "https://api.outreach.io/mcp" } } } ``` Call the MCP tool `sequence_add_prospects`. Server URL: https://api.outreach.io/mcp ### API (official) - Base URL: https://api.outreach.io/api/v2 - Endpoint: `POST /batches/actions/prospectsAddToSequence` - Auth: OAuth; sign in when the agent asks - Docs: https://developers.outreach.io/api/getting-started Before doing anything else, make one read-only call to confirm access. ## Rules - Ask the user before anything that sends messages, costs money, or changes data. - Never print API keys. --- ref: tool:outreach/ask-account-question name: Ask a question about an account company: company:outreach workflows: [] access: [mcp] tags: [capability:research-accounts, category:sales-engagement, has:mcp] docs: https://developers.outreach.io/mcp-server/tool-catalog updated: 2026-09-27 --- # Ask a question about an account Answers a plain-language question about one Outreach account from its records, call transcripts and related data, and saves the question and answer in Outreach. Find the account with `account_search` first. Each question is saved to the account's Q&A history in the Outreach app, which is why the tool is not marked read-only. `opportunity_answer_question` does the same for an opportunity. ## Set up Use the first option your agent supports. ### MCP (official, remote) Add this server to your agent's MCP settings, then sign in when asked. ```json { "mcpServers": { "outreach": { "url": "https://api.outreach.io/mcp" } } } ``` Call the MCP tool `account_answer_question`. Server URL: https://api.outreach.io/mcp Before doing anything else, make one read-only call to confirm access. ## Rules - Ask the user before anything that sends messages, costs money, or changes data. - Never print API keys. --- ref: tool:outreach/create-account name: Create an account company: company:outreach workflows: [] access: [mcp, api] tags: [capability:manage-crm, category:sales-engagement, has:api, has:mcp] docs: https://developers.outreach.io/api/reference/account/paths/~1accounts/post updated: 2026-09-27 --- # Create an account Creates an account, the company record that groups prospects in Outreach, from a name, domain and other company fields, and returns its id. Over the API, send `data.type` set to `account` with `name` and fields such as `domain` under `data.attributes`. An account's `prospects` can't be written directly: create or update each prospect with an `account` relationship pointing at the new account. On the MCP server, check for an existing account with `account_search` first. ## Set up Use the first option your agent supports. ### MCP (official, remote) Add this server to your agent's MCP settings, then sign in when asked. ```json { "mcpServers": { "outreach": { "url": "https://api.outreach.io/mcp" } } } ``` Call the MCP tool `account_create`. Server URL: https://api.outreach.io/mcp ### API (official) - Base URL: https://api.outreach.io/api/v2 - Endpoint: `POST /accounts` - Auth: OAuth; sign in when the agent asks - Docs: https://developers.outreach.io/api/getting-started Before doing anything else, make one read-only call to confirm access. ## Rules - Ask the user before anything that sends messages, costs money, or changes data. - Never print API keys. --- ref: tool:outreach/create-prospect name: Create a prospect company: company:outreach workflows: [] access: [mcp, api] tags: [capability:manage-crm, category:sales-engagement, has:api, has:mcp] docs: https://developers.outreach.io/api/reference/prospect/paths/~1prospects/post updated: 2026-09-27 --- # Create a prospect Creates a prospect, the person record Outreach sequences and tasks act on, from a name, emails, title and company, and returns its id. Required and custom fields differ between orgs: on the MCP server, `input_fields_fetch` lists them before you create. Over the API, send `data.type` set to `prospect` with fields such as `firstName`, `lastName`, `emails` and `title` under `data.attributes`, and link the prospect to an account through its `account` relationship. ## Set up Use the first option your agent supports. ### MCP (official, remote) Add this server to your agent's MCP settings, then sign in when asked. ```json { "mcpServers": { "outreach": { "url": "https://api.outreach.io/mcp" } } } ``` Call the MCP tool `prospect_create`. Server URL: https://api.outreach.io/mcp ### API (official) - Base URL: https://api.outreach.io/api/v2 - Endpoint: `POST /prospects` - Auth: OAuth; sign in when the agent asks - Docs: https://developers.outreach.io/api/getting-started Before doing anything else, make one read-only call to confirm access. ## Rules - Ask the user before anything that sends messages, costs money, or changes data. - Never print API keys. --- ref: tool:outreach/search-prospects name: Search prospects company: company:outreach workflows: [] access: [mcp, api] tags: [capability:manage-crm, category:sales-engagement, has:api, has:mcp] docs: https://developers.outreach.io/api/reference/prospect/paths/~1prospects/get updated: 2026-09-27 --- # Search prospects Returns Outreach prospects that match filters such as name, account, owner or stage, with their emails, title and engagement counts. Over the API, filter with query parameters such as `filter[firstName]=Sally` or `filter[account][id]=1`, and page with `page[limit]` (at most 1,000). On the MCP server, `filter_schema_fetch` returns the filters each record type supports, and `prospect_search_by_external_id` finds a prospect by its id in your CRM. ## Set up Use the first option your agent supports. ### MCP (official, remote) Add this server to your agent's MCP settings, then sign in when asked. ```json { "mcpServers": { "outreach": { "url": "https://api.outreach.io/mcp" } } } ``` Call the MCP tool `prospect_search`. Server URL: https://api.outreach.io/mcp ### API (official) - Base URL: https://api.outreach.io/api/v2 - Endpoint: `GET /prospects` - Auth: OAuth; sign in when the agent asks - Docs: https://developers.outreach.io/api/getting-started Before doing anything else, make one read-only call to confirm access. ## Rules - Ask the user before anything that sends messages, costs money, or changes data. - Never print API keys. --- ref: tool:paddle/create-discount name: Create a discount company: company:paddle workflows: [] access: [mcp, api] tags: [capability:collect-payments, category:payments, has:api, has:mcp] docs: https://developer.paddle.com/api-reference/discounts/create-discount updated: 2026-09-27 --- # Create a discount Creates a flat, per-seat or percentage discount, with a code customers can redeem at checkout, and returns the discount. `description`, `type` and `amount` are required: a `percentage` discount takes 0.01 to 100, while `flat` and `flat_per_seat` take an amount in the currency's lowest denomination plus `currency_code`. Set `code` yourself, or Paddle generates a 10-character code when `enabled_for_checkout` is true. Apply it to a transaction with `discount_id`. On the MCP server, run it with `execute`; a live OAuth connection needs write access first. ## Set up Use the first option your agent supports. ### MCP (official, remote) Add this server to your agent's MCP settings, then sign in when asked. ```json { "mcpServers": { "paddle": { "url": "https://mcp.paddle.com/mcp" } } } ``` Call the MCP tool `execute`. Server URL: https://mcp.paddle.com/mcp ### API (official) - Base URL: https://api.paddle.com - Endpoint: `POST /discounts` - Auth: send the header `Authorization: Bearer $PADDLE_API_KEY` - Get a key: https://vendors.paddle.com/authentication-v2 - Docs: https://developer.paddle.com/api-reference/about Before doing anything else, make one read-only call to confirm access. ## Rules - Ask the user before anything that sends messages, costs money, or changes data. - Never print API keys. --- ref: tool:paddle/create-transaction name: Create a transaction company: company:paddle workflows: [] access: [mcp, api] tags: [capability:collect-payments, category:payments, has:api, has:mcp] docs: https://developer.paddle.com/api-reference/transactions/create-transaction updated: 2026-09-27 --- # Create a transaction Creates a transaction for the catalog prices or one-off items you pass and returns it with a checkout URL for collecting payment. List `items` by price ID and quantity. An automatically collected transaction (the default) is paid at `checkout.url`, your default payment link plus `?_ptxn=` and the transaction ID. Adding `customer_id` and `address_id` makes it `ready`, and completing it creates the related subscription. On the MCP server, find the method with `search` and run it with `execute`; a live OAuth connection needs write access first. ## Set up Use the first option your agent supports. ### MCP (official, remote) Add this server to your agent's MCP settings, then sign in when asked. ```json { "mcpServers": { "paddle": { "url": "https://mcp.paddle.com/mcp" } } } ``` Call the MCP tool `execute`. Server URL: https://mcp.paddle.com/mcp ### API (official) - Base URL: https://api.paddle.com - Endpoint: `POST /transactions` - Auth: send the header `Authorization: Bearer $PADDLE_API_KEY` - Get a key: https://vendors.paddle.com/authentication-v2 - Docs: https://developer.paddle.com/api-reference/about Before doing anything else, make one read-only call to confirm access. ## Rules - Ask the user before anything that sends messages, costs money, or changes data. - Never print API keys. --- ref: tool:paddle/get-mrr-metrics name: Get MRR metrics company: company:paddle workflows: [] access: [mcp, api] tags: [capability:track-revenue, category:payments, has:api, has:mcp] docs: https://developer.paddle.com/api-reference/metrics/get-metrics-monthly-recurring-revenue updated: 2026-09-27 --- # Get MRR metrics Returns daily monthly recurring revenue totals between two dates, counting new subscriptions, upgrades, downgrades and churn. `from` and `to` are required RFC 3339 dates; passing the same date for both returns an empty series. The totals leave out one-time payments and Paddle fees. An API key needs the `metrics.read` permission. On the MCP server, run it with `execute`. ## Set up Use the first option your agent supports. ### MCP (official, remote) Add this server to your agent's MCP settings, then sign in when asked. ```json { "mcpServers": { "paddle": { "url": "https://mcp.paddle.com/mcp" } } } ``` Call the MCP tool `execute`. Server URL: https://mcp.paddle.com/mcp ### API (official) - Base URL: https://api.paddle.com - Endpoint: `GET /metrics/monthly-recurring-revenue` - Auth: send the header `Authorization: Bearer $PADDLE_API_KEY` - Get a key: https://vendors.paddle.com/authentication-v2 - Docs: https://developer.paddle.com/api-reference/about Before doing anything else, make one read-only call to confirm access. ## Rules - Ask the user before anything that sends messages, costs money, or changes data. - Never print API keys. --- ref: tool:paddle/list-customers name: List customers company: company:paddle workflows: [] access: [mcp, api] tags: [capability:track-revenue, category:payments, has:api, has:mcp] docs: https://developer.paddle.com/api-reference/customers/list-customers updated: 2026-09-27 --- # List customers Returns active customers, or only those whose email exactly matches one of the addresses you pass. Pass up to 100 addresses in `email` as a comma-separated list, or `status=archived` for archived customers. Use the returned customer ID as `customer_id` when listing subscriptions or transactions. On the MCP server, run it with `execute`. ## Set up Use the first option your agent supports. ### MCP (official, remote) Add this server to your agent's MCP settings, then sign in when asked. ```json { "mcpServers": { "paddle": { "url": "https://mcp.paddle.com/mcp" } } } ``` Call the MCP tool `execute`. Server URL: https://mcp.paddle.com/mcp ### API (official) - Base URL: https://api.paddle.com - Endpoint: `GET /customers` - Auth: send the header `Authorization: Bearer $PADDLE_API_KEY` - Get a key: https://vendors.paddle.com/authentication-v2 - Docs: https://developer.paddle.com/api-reference/about Before doing anything else, make one read-only call to confirm access. ## Rules - Ask the user before anything that sends messages, costs money, or changes data. - Never print API keys. --- ref: tool:paddle/list-subscriptions name: List subscriptions company: company:paddle workflows: [] access: [mcp, api] tags: [capability:track-revenue, category:payments, has:api, has:mcp] docs: https://developer.paddle.com/api-reference/subscriptions/list-subscriptions updated: 2026-09-27 --- # List subscriptions Returns subscriptions filtered by status, customer or price, 50 per page by default and up to 200. `status` takes `active`, `canceled`, `past_due`, `paused` or `trialing`, as a comma-separated list; `customer_id` and `price_id` narrow it further. Follow `meta.pagination.next` for the next page. On the MCP server, run it with `execute`. ## Set up Use the first option your agent supports. ### MCP (official, remote) Add this server to your agent's MCP settings, then sign in when asked. ```json { "mcpServers": { "paddle": { "url": "https://mcp.paddle.com/mcp" } } } ``` Call the MCP tool `execute`. Server URL: https://mcp.paddle.com/mcp ### API (official) - Base URL: https://api.paddle.com - Endpoint: `GET /subscriptions` - Auth: send the header `Authorization: Bearer $PADDLE_API_KEY` - Get a key: https://vendors.paddle.com/authentication-v2 - Docs: https://developer.paddle.com/api-reference/about Before doing anything else, make one read-only call to confirm access. ## Rules - Ask the user before anything that sends messages, costs money, or changes data. - Never print API keys. --- ref: tool:people-data-labs/enrich-company name: Enrich a company company: company:people-data-labs workflows: [] access: [api] tags: [capability:research-accounts, category:data-provider, has:api] docs: https://docs.peopledatalabs.com/docs/reference-company-enrichment-api updated: 2026-09-27 --- # Enrich a company Returns one company's profile, with size, employee count, industry, founding year, location, funding stage and total raised, and social profiles, matched from its name, website, profile URL or ticker. Charged per match; a request with no match returns 404. Headcount trends, inferred revenue, subsidiaries and job-posting insights are premium fields that your plan must include. ## Set up Use the first option your agent supports. ### API (official) - Base URL: https://api.peopledatalabs.com - Endpoint: `GET /v5/company/enrich` - Auth: send the header `X-Api-Key: $PDL_API_KEY` - Get a key: https://dashboard.peopledatalabs.com/api-keys - Docs: https://docs.peopledatalabs.com/docs/authentication Before doing anything else, make one read-only call to confirm access. ## Rules - Ask the user before anything that sends messages, costs money, or changes data. - Never print API keys. --- ref: tool:people-data-labs/enrich-person name: Enrich a person company: company:people-data-labs workflows: [] access: [api] tags: [capability:enrich-contacts, category:data-provider, has:api] docs: https://docs.peopledatalabs.com/docs/reference-person-enrichment-api updated: 2026-09-27 --- # Enrich a person Returns one person's profile, with job title, employer, work history, education, skills and social profiles, plus work email and phone numbers on paid plans, matched from an email, phone, profile URL, or name and company. Charged per match; a request with no match returns 404. Raise `min_likelihood` (default 2) for stricter matches, and set `required`, such as `work_email`, so you are only charged for responses that include the fields you need. On the free plan, emails, phone numbers and detailed locations come back as true/false flags. To enrich up to 100 people in one request, use `POST /v5/person/bulk`. ## Set up Use the first option your agent supports. ### API (official) - Base URL: https://api.peopledatalabs.com - Endpoint: `GET /v5/person/enrich` - Auth: send the header `X-Api-Key: $PDL_API_KEY` - Get a key: https://dashboard.peopledatalabs.com/api-keys - Docs: https://docs.peopledatalabs.com/docs/authentication Before doing anything else, make one read-only call to confirm access. ## Rules - Ask the user before anything that sends messages, costs money, or changes data. - Never print API keys. --- ref: tool:people-data-labs/identify-ip-company name: Identify the company behind an IP address company: company:people-data-labs workflows: [] access: [api] tags: [capability:track-intent, category:data-provider, has:api] docs: https://docs.peopledatalabs.com/docs/reference-ip-enrichment-api updated: 2026-09-27 --- # Identify the company behind an IP address Returns the company associated with an IP address, with a confidence level, name, website, size and industry, and on request the IP's location and whether it is a VPN, proxy, mobile or hosting address. Run it on website visitors' IP addresses to see which companies are visiting. Charged per match. Set `min_confidence` (such as `high`) to drop weak matches, and `return_ip_location` or `return_ip_metadata` to include the IP's location or network flags, which are left out by default. ## Set up Use the first option your agent supports. ### API (official) - Base URL: https://api.peopledatalabs.com - Endpoint: `GET /v5/ip/enrich` - Auth: send the header `X-Api-Key: $PDL_API_KEY` - Get a key: https://dashboard.peopledatalabs.com/api-keys - Docs: https://docs.peopledatalabs.com/docs/authentication Before doing anything else, make one read-only call to confirm access. ## Rules - Ask the user before anything that sends messages, costs money, or changes data. - Never print API keys. --- ref: tool:people-data-labs/search-companies name: Search companies company: company:people-data-labs workflows: [workflow:funding-signal-outbound] access: [api] tags: [capability:build-audience, category:data-provider, has:api] docs: https://docs.peopledatalabs.com/docs/reference-company-search-api updated: 2026-09-27 --- # Search companies Returns up to 100 company records per call that match an Elasticsearch or SQL query over PDL's company fields, such as industry, size, location and funding. Send either `query` (Elasticsearch) or `sql`. Each record returned costs one credit, so set `size` (1 to 100, default 1) and page with `scroll_token`. ## Set up Use the first option your agent supports. ### API (official) - Base URL: https://api.peopledatalabs.com - Endpoint: `POST /v5/company/search` - Auth: send the header `X-Api-Key: $PDL_API_KEY` - Get a key: https://dashboard.peopledatalabs.com/api-keys - Docs: https://docs.peopledatalabs.com/docs/authentication Before doing anything else, make one read-only call to confirm access. ## Rules - Ask the user before anything that sends messages, costs money, or changes data. - Never print API keys. --- ref: tool:people-data-labs/search-people name: Search for people company: company:people-data-labs workflows: [] access: [api] tags: [capability:build-audience, category:data-provider, has:api] docs: https://docs.peopledatalabs.com/docs/reference-person-search-api updated: 2026-09-27 --- # Search for people Returns up to 100 person records per call that match an Elasticsearch or SQL query over PDL's person fields, such as job title, employer, location and skills. Send either `query` (Elasticsearch) or `sql`, not both. Each record returned costs one credit, so set `size` (1 to 100, default 1) and fetch the next page with the `scroll_token` from the previous response. The default rate limit is 10 requests per minute. ## Set up Use the first option your agent supports. ### API (official) - Base URL: https://api.peopledatalabs.com - Endpoint: `POST /v5/person/search` - Auth: send the header `X-Api-Key: $PDL_API_KEY` - Get a key: https://dashboard.peopledatalabs.com/api-keys - Docs: https://docs.peopledatalabs.com/docs/authentication Before doing anything else, make one read-only call to confirm access. ## Rules - Ask the user before anything that sends messages, costs money, or changes data. - Never print API keys. --- ref: tool:perplexity/ask-question name: Ask a question company: company:perplexity workflows: [] access: [mcp, api] tags: [capability:research-accounts, category:web-search, has:api, has:mcp] docs: https://docs.perplexity.ai/api-reference/agent-post updated: 2026-09-27 --- # Ask a question Answers a question from current web sources with inline citations, tuned for quick facts and short summaries. `perplexity_ask` is backed by the Agent API's `fast` preset: on the API, send `preset: "fast"` with the question as `input`. For questions that chain evidence across many sources, use the `medium` or `high` preset instead. ## Set up Use the first option your agent supports. ### MCP (official, remote) Add this server to your agent's MCP settings, then sign in when asked. ```json { "mcpServers": { "perplexity": { "url": "https://api.perplexity.ai/mcp" } } } ``` Call the MCP tool `perplexity_ask`. Server URL: https://api.perplexity.ai/mcp ### API (official) - Base URL: https://api.perplexity.ai - Endpoint: `POST /v1/agent` - Auth: send the header `Authorization: Bearer $PERPLEXITY_API_KEY` - Get a key: https://console.perplexity.ai/project/keys - Docs: https://docs.perplexity.ai/docs/getting-started/overview Before doing anything else, make one read-only call to confirm access. ## Rules - Ask the user before anything that sends messages, costs money, or changes data. - Never print API keys. --- ref: tool:perplexity/deep-research name: Run deep research company: company:perplexity workflows: [] access: [mcp, api] tags: [capability:research-accounts, category:web-search, has:api, has:mcp] docs: https://docs.perplexity.ai/api-reference/agent-post updated: 2026-09-27 --- # Run deep research Researches a question across many web sources with extended reasoning and returns a thorough answer with citations. `perplexity_research` is backed by the Agent API's `high` preset: on the API, send `preset: "high"` with the question as `input`. A long run can go in the background with `background: true` and be polled by its response ID. ## Set up Use the first option your agent supports. ### MCP (official, remote) Add this server to your agent's MCP settings, then sign in when asked. ```json { "mcpServers": { "perplexity": { "url": "https://api.perplexity.ai/mcp" } } } ``` Call the MCP tool `perplexity_research`. Server URL: https://api.perplexity.ai/mcp ### API (official) - Base URL: https://api.perplexity.ai - Endpoint: `POST /v1/agent` - Auth: send the header `Authorization: Bearer $PERPLEXITY_API_KEY` - Get a key: https://console.perplexity.ai/project/keys - Docs: https://docs.perplexity.ai/docs/getting-started/overview Before doing anything else, make one read-only call to confirm access. ## Rules - Ask the user before anything that sends messages, costs money, or changes data. - Never print API keys. --- ref: tool:perplexity/get-page-snippets name: Get page snippets company: company:perplexity workflows: [] access: [cli] tags: [capability:scrape-web, category:web-search, has:cli] docs: https://docs.perplexity.ai/docs/cli/overview updated: 2026-09-27 --- # Get page snippets Returns only the passages of one or more web pages that are relevant to a query, as JSON. Pass the query, then up to 50 URLs; each page is snipped on its own. `--max-tokens` (4096 by default) and `--max-tokens-per-page` cap the text. A page that can't be snipped returns an `error` instead of `text` without failing the command, so check every result. Needs CLI v0.2.3 or later. ## Set up Use the first option your agent supports. ### CLI (official) Install the command, then confirm it runs. ```sh curl -fsSL https://github.com/perplexityai/perplexity-cli/releases/latest/download/install.sh | sh pplx --version ``` Run `pplx content snippets`. Set `$PERPLEXITY_API_KEY` in your environment first (get a key: https://console.perplexity.ai/project/keys). Before doing anything else, make one read-only call to confirm access. ## Rules - Ask the user before anything that sends messages, costs money, or changes data. - Never print API keys. --- ref: tool:perplexity/search-people name: Search for people company: company:perplexity workflows: [] access: [api] tags: [capability:build-audience, category:web-search, has:api] docs: https://docs.perplexity.ai/docs/search/filters/people-search updated: 2026-09-27 --- # Search for people Returns web results about professionals who match a name, role, company or location, with titles, URLs and snippets naming their jobs and employers. Set `search_type` to `people` on a Search API request, with a query such as `Stripe VP of Engineering`; `max_results` and the other Search API parameters still apply. Use People Search only for legitimate professional research, and follow the privacy and data protection laws that apply to you. ## Set up Use the first option your agent supports. ### API (official) - Base URL: https://api.perplexity.ai - Endpoint: `POST /search` - Auth: send the header `Authorization: Bearer $PERPLEXITY_API_KEY` - Get a key: https://console.perplexity.ai/project/keys - Docs: https://docs.perplexity.ai/docs/getting-started/overview Before doing anything else, make one read-only call to confirm access. ## Rules - Ask the user before anything that sends messages, costs money, or changes data. - Never print API keys. --- ref: tool:perplexity/search-web name: Search the web company: company:perplexity workflows: [] access: [mcp, cli, api] tags: [capability:research-accounts, category:web-search, has:api, has:cli, has:mcp] docs: https://docs.perplexity.ai/api-reference/search-post updated: 2026-09-27 --- # Search the web Returns ranked web results for a query, each with its title, URL, snippet and dates, optionally limited to domains or a date range. On the CLI, `-n` sets the number of results (10 by default), and `--domains`, `--recency-filter`, the date flags and `--country` apply the Search API's filters. Extra queries on the CLI are rephrasings of one question, not separate searches, and come back as a single ranked list. ## Set up Use the first option your agent supports. ### MCP (official, remote) Add this server to your agent's MCP settings, then sign in when asked. ```json { "mcpServers": { "perplexity": { "url": "https://api.perplexity.ai/mcp" } } } ``` Call the MCP tool `perplexity_search`. Server URL: https://api.perplexity.ai/mcp ### CLI (official) Install the command, then confirm it runs. ```sh curl -fsSL https://github.com/perplexityai/perplexity-cli/releases/latest/download/install.sh | sh pplx --version ``` Run `pplx search web`. Set `$PERPLEXITY_API_KEY` in your environment first (get a key: https://console.perplexity.ai/project/keys). ### API (official) - Base URL: https://api.perplexity.ai - Endpoint: `POST /search` - Auth: send the header `Authorization: Bearer $PERPLEXITY_API_KEY` - Get a key: https://console.perplexity.ai/project/keys - Docs: https://docs.perplexity.ai/docs/getting-started/overview Before doing anything else, make one read-only call to confirm access. ## Rules - Ask the user before anything that sends messages, costs money, or changes data. - Never print API keys. --- ref: tool:pipedrive/create-deal name: Create a deal company: company:pipedrive workflows: [] access: [mcp, api] tags: [capability:manage-crm, category:crm, has:api, has:mcp] docs: https://developers.pipedrive.com/docs/api/v1/Deals#addDeal updated: 2026-09-27 --- # Create a deal Creates a deal with a title and, optionally, its pipeline stage, value, currency, person and organization, and returns the new deal. Only `title` is required. Place the deal with `pipeline_id` and `stage_id`, and link it with `person_id` and `org_id`. Custom fields go in `custom_fields`, keyed by each field's 40-character hash. ## Set up Use the first option your agent supports. ### MCP (official, remote) Add this server to your agent's MCP settings, then sign in when asked. ```json { "mcpServers": { "pipedrive": { "url": "https://mcp.pipedrive.ai/mcp" } } } ``` Call the MCP tool `addDeal`. Server URL: https://mcp.pipedrive.ai/mcp ### API (official) - Base URL: https://{companydomain}.pipedrive.com - Endpoint: `POST /api/v2/deals` - Auth: send the header `x-api-token: $PIPEDRIVE_API_KEY` - Get a key: https://app.pipedrive.com/settings/api - Docs: https://developers.pipedrive.com/docs/api/v1 Before doing anything else, make one read-only call to confirm access. ## Rules - Ask the user before anything that sends messages, costs money, or changes data. - Never print API keys. --- ref: tool:pipedrive/create-lead name: Create a lead company: company:pipedrive workflows: [] access: [mcp, api] tags: [capability:manage-crm, category:crm, has:api, has:mcp] docs: https://developers.pipedrive.com/docs/api/v1/Leads#addLead updated: 2026-09-27 --- # Create a lead Adds a lead to the Leads Inbox, linked to an existing person, organization or both, and returns it. Pass a `title` and a `person_id` or `organization_id`: a lead must be linked to at least one, so create the person or organization first. Set its worth with `value` as `{ "amount": 200, "currency": "EUR" }`. Leads created through the API get `API` as their source and origin. Convert a qualified lead into a deal with `convertLeadToDeal` (`POST /api/v2/leads/{id}/convert/deal`). ## Set up Use the first option your agent supports. ### MCP (official, remote) Add this server to your agent's MCP settings, then sign in when asked. ```json { "mcpServers": { "pipedrive": { "url": "https://mcp.pipedrive.ai/mcp" } } } ``` Call the MCP tool `addLead`. Server URL: https://mcp.pipedrive.ai/mcp ### API (official) - Base URL: https://{companydomain}.pipedrive.com - Endpoint: `POST /api/v1/leads` - Auth: send the header `x-api-token: $PIPEDRIVE_API_KEY` - Get a key: https://app.pipedrive.com/settings/api - Docs: https://developers.pipedrive.com/docs/api/v1 Before doing anything else, make one read-only call to confirm access. ## Rules - Ask the user before anything that sends messages, costs money, or changes data. - Never print API keys. --- ref: tool:pipedrive/create-note name: Create a note company: company:pipedrive workflows: [] access: [mcp, api] tags: [capability:manage-crm, category:crm, has:api, has:mcp] docs: https://developers.pipedrive.com/docs/api/v1/Notes#addNote updated: 2026-09-27 --- # Create a note Attaches an HTML note to a lead, deal, person or organization. Send the note as HTML in `content`; it is sanitized on the server. Name at least one record to attach it to: `lead_id`, `deal_id`, `person_id` or `org_id`. ## Set up Use the first option your agent supports. ### MCP (official, remote) Add this server to your agent's MCP settings, then sign in when asked. ```json { "mcpServers": { "pipedrive": { "url": "https://mcp.pipedrive.ai/mcp" } } } ``` Call the MCP tool `addNote`. Server URL: https://mcp.pipedrive.ai/mcp ### API (official) - Base URL: https://{companydomain}.pipedrive.com - Endpoint: `POST /api/v1/notes` - Auth: send the header `x-api-token: $PIPEDRIVE_API_KEY` - Get a key: https://app.pipedrive.com/settings/api - Docs: https://developers.pipedrive.com/docs/api/v1 Before doing anything else, make one read-only call to confirm access. ## Rules - Ask the user before anything that sends messages, costs money, or changes data. - Never print API keys. --- ref: tool:pipedrive/create-person name: Create a person company: company:pipedrive workflows: [] access: [mcp, api] tags: [capability:manage-crm, category:crm, has:api, has:mcp] docs: https://developers.pipedrive.com/docs/api/v1/Persons#addPerson updated: 2026-09-27 --- # Create a person Creates a person (contact) with a name and, optionally, emails, phones, an organization and an owner, and returns the new person. Only `name` is required. Send `emails` and `phones` as arrays of objects with `value`, `primary` and `label`, and link the person to a company with `org_id`. `marketing_status` is accepted only when the Campaigns product is enabled. ## Set up Use the first option your agent supports. ### MCP (official, remote) Add this server to your agent's MCP settings, then sign in when asked. ```json { "mcpServers": { "pipedrive": { "url": "https://mcp.pipedrive.ai/mcp" } } } ``` Call the MCP tool `addPerson`. Server URL: https://mcp.pipedrive.ai/mcp ### API (official) - Base URL: https://{companydomain}.pipedrive.com - Endpoint: `POST /api/v2/persons` - Auth: send the header `x-api-token: $PIPEDRIVE_API_KEY` - Get a key: https://app.pipedrive.com/settings/api - Docs: https://developers.pipedrive.com/docs/api/v1 Before doing anything else, make one read-only call to confirm access. ## Rules - Ask the user before anything that sends messages, costs money, or changes data. - Never print API keys. --- ref: tool:pipedrive/search-persons name: Search for people company: company:pipedrive workflows: [] access: [mcp, api] tags: [capability:manage-crm, category:crm, has:api, has:mcp] docs: https://developers.pipedrive.com/docs/api/v1/Persons#searchPersons updated: 2026-09-27 --- # Search for people Returns the people (contacts) in Pipedrive whose name, email, phone, notes or custom fields match a search term, each with a relevance score. Pass the `term`: at least 2 characters, or 1 with `exact_match` set. Narrow the match with `fields` (`name`, `email`, `phone`, `notes`, `custom_fields`) and `organization_id`. Search before you create a person, so you don't add a contact that already exists. ## Set up Use the first option your agent supports. ### MCP (official, remote) Add this server to your agent's MCP settings, then sign in when asked. ```json { "mcpServers": { "pipedrive": { "url": "https://mcp.pipedrive.ai/mcp" } } } ``` Call the MCP tool `searchPersons`. Server URL: https://mcp.pipedrive.ai/mcp ### API (official) - Base URL: https://{companydomain}.pipedrive.com - Endpoint: `GET /api/v2/persons/search` - Auth: send the header `x-api-token: $PIPEDRIVE_API_KEY` - Get a key: https://app.pipedrive.com/settings/api - Docs: https://developers.pipedrive.com/docs/api/v1 Before doing anything else, make one read-only call to confirm access. ## Rules - Ask the user before anything that sends messages, costs money, or changes data. - Never print API keys. --- ref: tool:posthog/create-cohort name: Create a cohort company: company:posthog workflows: [] access: [mcp, cli, api] tags: [capability:build-audience, category:product-analytics, has:api, has:cli, has:mcp] docs: https://posthog.com/docs/api/cohorts updated: 2026-09-27 --- # Create a cohort Creates a cohort of persons from property or behavioral filters, or a static cohort from a list of person IDs. Needs a personal API key with the `cohort:write` scope. ## Set up Use the first option your agent supports. ### MCP (official, remote) Add this server to your agent's MCP settings, then sign in when asked. ```json { "mcpServers": { "posthog": { "url": "https://mcp.posthog.com/mcp" } } } ``` Call the MCP tool `cohorts-create`. Server URL: https://mcp.posthog.com/mcp ### CLI (official) Install the command, then confirm it runs. ```sh npm install -g @posthog/cli@latest posthog-cli --version ``` Run `posthog-cli api call cohorts-create`. Set `$POSTHOG_CLI_API_KEY` in your environment first (get a key: https://app.posthog.com/settings/user-api-keys?preset=mcp_server). ### API (official) - Base URL: https://us.posthog.com - Endpoint: `POST /api/projects/:project_id/cohorts/` - Auth: send the header `Authorization: Bearer $POSTHOG_PERSONAL_API_KEY` - Get a key: https://us.posthog.com/settings/user-api-keys - Docs: https://posthog.com/docs/api Before doing anything else, make one read-only call to confirm access. ## Rules - Ask the user before anything that sends messages, costs money, or changes data. - Never print API keys. --- ref: tool:posthog/run-sql-query name: Run a SQL query company: company:posthog workflows: [workflow:high-intent-visitors, workflow:free-to-paid-activation] access: [mcp, cli, api] tags: [capability:track-product-usage, category:product-analytics, has:api, has:cli, has:mcp] docs: https://posthog.com/docs/api/query updated: 2026-09-27 --- # Run a SQL query Runs a SQL (HogQL) query over the project's events, persons and other data and returns the rows. Over the API, send the SQL as `{"query": {"kind": "HogQLQuery", "query": "..."}}` with a personal API key that has the `query:read` scope. A query returns up to 100 rows by default and up to 50,000 with an explicit `LIMIT`; the endpoint is for ad-hoc analysis, not bulk export. ## Set up Use the first option your agent supports. ### MCP (official, remote) Add this server to your agent's MCP settings, then sign in when asked. ```json { "mcpServers": { "posthog": { "url": "https://mcp.posthog.com/mcp" } } } ``` Call the MCP tool `execute-sql`. Server URL: https://mcp.posthog.com/mcp ### CLI (official) Install the command, then confirm it runs. ```sh npm install -g @posthog/cli@latest posthog-cli --version ``` Run `posthog-cli api call execute-sql`. Set `$POSTHOG_CLI_API_KEY` in your environment first (get a key: https://app.posthog.com/settings/user-api-keys?preset=mcp_server). ### API (official) - Base URL: https://us.posthog.com - Endpoint: `POST /api/projects/:project_id/query/` - Auth: send the header `Authorization: Bearer $POSTHOG_PERSONAL_API_KEY` - Get a key: https://us.posthog.com/settings/user-api-keys - Docs: https://posthog.com/docs/api Before doing anything else, make one read-only call to confirm access. ## Rules - Ask the user before anything that sends messages, costs money, or changes data. - Never print API keys. --- ref: tool:resend/add-contact-to-segment name: Add a contact to a segment company: company:resend workflows: [] access: [mcp, cli, api] tags: [capability:build-audience, category:email, has:api, has:cli, has:mcp] docs: https://resend.com/docs/api-reference/contacts/add-contact-to-segment updated: 2026-09-27 --- # Add a contact to a segment Adds an existing contact, found by ID or email address, to a segment that broadcasts can target. The contact must already exist; to put a new contact in segments as you create it, pass `segments` to Create a contact. A broadcast goes to one segment, so segment membership decides who receives it. ## Set up Use the first option your agent supports. ### MCP (official, remote) Add this server to your agent's MCP settings, then sign in when asked. ```json { "mcpServers": { "resend": { "url": "https://mcp.resend.com/mcp" } } } ``` Call the MCP tool `add-contact-to-segment`. Server URL: https://mcp.resend.com/mcp ### CLI (official) Install the command, then confirm it runs. ```sh npm install -g resend-cli resend --version ``` Run `resend contacts add-segment`. Set `$RESEND_API_KEY` in your environment first (get a key: https://resend.com/api-keys). ### API (official) - Base URL: https://api.resend.com - Endpoint: `POST /contacts/:contact_id/segments/:segment_id` - Auth: send the header `Authorization: Bearer $RESEND_API_KEY` - Get a key: https://resend.com/api-keys - Docs: https://resend.com/docs/api-reference/introduction Before doing anything else, make one read-only call to confirm access. ## Rules - Ask the user before anything that sends messages, costs money, or changes data. - Never print API keys. --- ref: tool:resend/create-broadcast name: Create a broadcast company: company:resend workflows: [] access: [mcp, cli, api] tags: [capability:send-email, category:email, has:api, has:cli, has:mcp] docs: https://resend.com/docs/api-reference/broadcasts/create-broadcast updated: 2026-09-27 --- # Create a broadcast Creates a marketing email to every subscribed contact in one segment, saved as a draft or, with send set to true, sent or scheduled at once. Pass `segment_id`, `from`, `subject` and `html` or `text`; contact properties can personalize the body. Add `topic_id` to reach only the contacts subscribed to that topic. On the MCP server `create-broadcast` only saves the draft: send it with `send-broadcast`. A draft made without `send` goes out later with `resend broadcasts send ` or `POST /broadcasts/:broadcast_id/send`. ## Set up Use the first option your agent supports. ### MCP (official, remote) Add this server to your agent's MCP settings, then sign in when asked. ```json { "mcpServers": { "resend": { "url": "https://mcp.resend.com/mcp" } } } ``` Call the MCP tool `create-broadcast`. Server URL: https://mcp.resend.com/mcp ### CLI (official) Install the command, then confirm it runs. ```sh npm install -g resend-cli resend --version ``` Run `resend broadcasts create`. Set `$RESEND_API_KEY` in your environment first (get a key: https://resend.com/api-keys). ### API (official) - Base URL: https://api.resend.com - Endpoint: `POST /broadcasts` - Auth: send the header `Authorization: Bearer $RESEND_API_KEY` - Get a key: https://resend.com/api-keys - Docs: https://resend.com/docs/api-reference/introduction Before doing anything else, make one read-only call to confirm access. ## Rules - Ask the user before anything that sends messages, costs money, or changes data. - Never print API keys. --- ref: tool:resend/create-contact name: Create a contact company: company:resend workflows: [] access: [mcp, cli, api] tags: [capability:build-audience, category:email, has:api, has:cli, has:mcp] docs: https://resend.com/docs/api-reference/contacts/create-contact updated: 2026-09-27 --- # Create a contact Adds a contact with an email address and optional name, custom properties, segments and topic subscriptions, and returns its ID. Pass `segments` to add the new contact to segments in the same call, and `topics` to set its topic subscriptions. Setting `unsubscribed` to `true` keeps the contact out of every broadcast. ## Set up Use the first option your agent supports. ### MCP (official, remote) Add this server to your agent's MCP settings, then sign in when asked. ```json { "mcpServers": { "resend": { "url": "https://mcp.resend.com/mcp" } } } ``` Call the MCP tool `create-contact`. Server URL: https://mcp.resend.com/mcp ### CLI (official) Install the command, then confirm it runs. ```sh npm install -g resend-cli resend --version ``` Run `resend contacts create`. Set `$RESEND_API_KEY` in your environment first (get a key: https://resend.com/api-keys). ### API (official) - Base URL: https://api.resend.com - Endpoint: `POST /contacts` - Auth: send the header `Authorization: Bearer $RESEND_API_KEY` - Get a key: https://resend.com/api-keys - Docs: https://resend.com/docs/api-reference/introduction Before doing anything else, make one read-only call to confirm access. ## Rules - Ask the user before anything that sends messages, costs money, or changes data. - Never print API keys. --- ref: tool:resend/send-email name: Send an email company: company:resend workflows: [] access: [mcp, cli, api] tags: [capability:send-email, category:email, has:api, has:cli, has:mcp] docs: https://resend.com/docs/api-reference/emails/send-email updated: 2026-09-27 --- # Send an email Sends one email from a verified domain to up to 50 recipients, now or at a scheduled time, and returns its ID. Pass `from`, `to`, `subject` and `html` or `text`, or a published `template` with its variables. Send an `Idempotency-Key` header (`--idempotency-key` on the CLI) so a retry never sends the email twice; keys expire after 24 hours. `scheduled_at` takes an ISO 8601 time or plain words such as `in 1 min`. ## Set up Use the first option your agent supports. ### MCP (official, remote) Add this server to your agent's MCP settings, then sign in when asked. ```json { "mcpServers": { "resend": { "url": "https://mcp.resend.com/mcp" } } } ``` Call the MCP tool `send-email`. Server URL: https://mcp.resend.com/mcp ### CLI (official) Install the command, then confirm it runs. ```sh npm install -g resend-cli resend --version ``` Run `resend emails send`. Set `$RESEND_API_KEY` in your environment first (get a key: https://resend.com/api-keys). ### API (official) - Base URL: https://api.resend.com - Endpoint: `POST /emails` - Auth: send the header `Authorization: Bearer $RESEND_API_KEY` - Get a key: https://resend.com/api-keys - Docs: https://resend.com/docs/api-reference/introduction Before doing anything else, make one read-only call to confirm access. ## Rules - Ask the user before anything that sends messages, costs money, or changes data. - Never print API keys. --- ref: tool:resend/send-event name: Send an event company: company:resend workflows: [] access: [mcp, cli, api] tags: [capability:send-email, category:email, has:api, has:cli, has:mcp] docs: https://resend.com/docs/api-reference/events/send-event updated: 2026-09-27 --- # Send an event Sends a named event for one contact, by contact ID or email address, and starts every automation that event triggers. Pass exactly one of `contact_id` or `email`; an email address with no contact yet becomes one when the automation runs. The optional `payload` feeds the automation's template variables and conditions, and is checked against the event's schema when it has one. ## Set up Use the first option your agent supports. ### MCP (official, remote) Add this server to your agent's MCP settings, then sign in when asked. ```json { "mcpServers": { "resend": { "url": "https://mcp.resend.com/mcp" } } } ``` Call the MCP tool `send-event`. Server URL: https://mcp.resend.com/mcp ### CLI (official) Install the command, then confirm it runs. ```sh npm install -g resend-cli resend --version ``` Run `resend events send`. Set `$RESEND_API_KEY` in your environment first (get a key: https://resend.com/api-keys). ### API (official) - Base URL: https://api.resend.com - Endpoint: `POST /events/send` - Auth: send the header `Authorization: Bearer $RESEND_API_KEY` - Get a key: https://resend.com/api-keys - Docs: https://resend.com/docs/api-reference/introduction Before doing anything else, make one read-only call to confirm access. ## Rules - Ask the user before anything that sends messages, costs money, or changes data. - Never print API keys. --- ref: tool:salesforce/create-record name: Create a record company: company:salesforce workflows: [] access: [mcp, cli, api] tags: [capability:manage-crm, category:crm, has:api, has:cli, has:mcp] docs: https://developer.salesforce.com/docs/platform/api-rest/guide/resources-sobject-basic-info-post.html updated: 2026-09-27 --- # Create a record Creates a record of any object, such as a Lead, Contact or Opportunity, and returns its new ID. Replace `sObject` with the object's API name, such as `Lead`, and send the field values in the body; the call fails if a required field is missing. Every call runs as the signed-in user, within their object permissions and field-level security. ## Set up Use the first option your agent supports. ### MCP (official, remote) Add this server to your agent's MCP settings, then sign in when asked. ```json { "mcpServers": { "salesforce": { "url": "https://api.salesforce.com/platform/mcp/v1/platform/sobject-mutations" } } } ``` Call the MCP tool `createSobjectRecord`. Server URL: https://api.salesforce.com/platform/mcp/v1/platform/sobject-mutations ### CLI (official) Install the command, then confirm it runs. ```sh npm install @salesforce/cli --global sf --version ``` Run `sf data create record`. ### API (official) - Base URL: https://{MyDomainName}.my.salesforce.com - Endpoint: `POST /services/data/vXX.X/sobjects/sObject/` - Auth: OAuth; sign in when the agent asks - Docs: https://developer.salesforce.com/docs/platform/api-rest/guide/intro-rest.html Before doing anything else, make one read-only call to confirm access. ## Rules - Ask the user before anything that sends messages, costs money, or changes data. - Never print API keys. --- ref: tool:salesforce/query-records name: Query records with SOQL company: company:salesforce workflows: [] access: [mcp, cli, api] tags: [capability:manage-crm, category:crm, has:api, has:cli, has:mcp] docs: https://developer.salesforce.com/docs/platform/api-rest/guide/resources-query.html updated: 2026-09-27 --- # Query records with SOQL Runs a SOQL query and returns the matching records with the fields it selects. Pass the query in `q`, for example `SELECT Id, Name, Industry FROM Account WHERE Industry = 'Technology' LIMIT 100`. One response holds up to 2,000 records; when there are more, `nextRecordsUrl` fetches the next batch. ## Set up Use the first option your agent supports. ### MCP (official, remote) Add this server to your agent's MCP settings, then sign in when asked. ```json { "mcpServers": { "salesforce": { "url": "https://api.salesforce.com/platform/mcp/v1/platform/sobject-mutations" } } } ``` Call the MCP tool `soqlQuery`. Server URL: https://api.salesforce.com/platform/mcp/v1/platform/sobject-mutations ### CLI (official) Install the command, then confirm it runs. ```sh npm install @salesforce/cli --global sf --version ``` Run `sf data query`. ### API (official) - Base URL: https://{MyDomainName}.my.salesforce.com - Endpoint: `GET /services/data/vXX.X/query` - Auth: OAuth; sign in when the agent asks - Docs: https://developer.salesforce.com/docs/platform/api-rest/guide/intro-rest.html Before doing anything else, make one read-only call to confirm access. ## Rules - Ask the user before anything that sends messages, costs money, or changes data. - Never print API keys. --- ref: tool:salesforce/search-records name: Search records with SOSL company: company:salesforce workflows: [] access: [mcp, cli, api] tags: [capability:manage-crm, category:crm, has:api, has:cli, has:mcp] docs: https://developer.salesforce.com/docs/platform/api-rest/guide/resources-search.html updated: 2026-09-27 --- # Search records with SOSL Runs a SOSL text search across several objects at once and returns the matches grouped by object. Use it when a name or email could be on a Lead, a Contact or an Account, for example `FIND {Acme} IN NAME FIELDS RETURNING Account(Id, Name), Contact(Id, Name, Email)`. Pass the URL-encoded search in `q`. ## Set up Use the first option your agent supports. ### MCP (official, remote) Add this server to your agent's MCP settings, then sign in when asked. ```json { "mcpServers": { "salesforce": { "url": "https://api.salesforce.com/platform/mcp/v1/platform/sobject-mutations" } } } ``` Call the MCP tool `find`. Server URL: https://api.salesforce.com/platform/mcp/v1/platform/sobject-mutations ### CLI (official) Install the command, then confirm it runs. ```sh npm install @salesforce/cli --global sf --version ``` Run `sf data search`. ### API (official) - Base URL: https://{MyDomainName}.my.salesforce.com - Endpoint: `GET /services/data/vXX.X/search/` - Auth: OAuth; sign in when the agent asks - Docs: https://developer.salesforce.com/docs/platform/api-rest/guide/intro-rest.html Before doing anything else, make one read-only call to confirm access. ## Rules - Ask the user before anything that sends messages, costs money, or changes data. - Never print API keys. --- ref: tool:salesforce/update-record name: Update a record company: company:salesforce workflows: [] access: [mcp, cli, api] tags: [capability:manage-crm, category:crm, has:api, has:cli, has:mcp] docs: https://developer.salesforce.com/docs/platform/api-rest/guide/resources-sobject-retrieve-patch.html updated: 2026-09-27 --- # Update a record Changes the fields you pass on one record, found by its ID, and leaves every other field as it is. Use it to move an opportunity's stage or fill in fields from research. It fails if the record does not exist, the user cannot edit it, or a validation rule rejects a value. ## Set up Use the first option your agent supports. ### MCP (official, remote) Add this server to your agent's MCP settings, then sign in when asked. ```json { "mcpServers": { "salesforce": { "url": "https://api.salesforce.com/platform/mcp/v1/platform/sobject-mutations" } } } ``` Call the MCP tool `updateSobjectRecord`. Server URL: https://api.salesforce.com/platform/mcp/v1/platform/sobject-mutations ### CLI (official) Install the command, then confirm it runs. ```sh npm install @salesforce/cli --global sf --version ``` Run `sf data update record`. ### API (official) - Base URL: https://{MyDomainName}.my.salesforce.com - Endpoint: `PATCH /services/data/vXX.X/sobjects/sObject/id/` - Auth: OAuth; sign in when the agent asks - Docs: https://developer.salesforce.com/docs/platform/api-rest/guide/intro-rest.html Before doing anything else, make one read-only call to confirm access. ## Rules - Ask the user before anything that sends messages, costs money, or changes data. - Never print API keys. --- ref: tool:salesloft/add-person-to-cadence name: Add a person to a cadence company: company:salesloft workflows: [] access: [api] tags: [capability:send-email, category:sales-engagement, has:api] docs: https://developers.salesloft.com/docs/api/cadence-memberships-create/ updated: 2026-09-27 --- # Add a person to a cadence Adds one person to a Salesloft cadence and returns the cadence membership, whose state shows whether the cadence has started for them. Pass `person_id` and `cadence_id` as query parameters; `user_id` defaults to you, and `step_id` starts the person on a later step. You can add a person on a teammate's behalf only to a team cadence, a cadence the teammate owns, or when the teammate has the Personal Cadence Admin permission. The call needs the `cadences:write` scope. In the response, `current_state` `staged` means the person is waiting for the cadence's first step. Adding someone to a cadence can start real outreach, so confirm the cadence first. ## Set up Use the first option your agent supports. ### API (official) - Base URL: https://api.salesloft.com - Endpoint: `POST /v2/cadence_memberships` - Auth: send the header `Authorization: Bearer $SALESLOFT_API_KEY` - Docs: https://developers.salesloft.com/docs/platform/api-basics/api-key-authentication/ Before doing anything else, make one read-only call to confirm access. ## Rules - Ask the user before anything that sends messages, costs money, or changes data. - Never print API keys. --- ref: tool:salesloft/search-accounts name: Search accounts company: company:salesloft workflows: [] access: [mcp, api] tags: [capability:manage-crm, category:sales-engagement, has:api, has:mcp] docs: https://developers.salesloft.com/docs/api/accounts-index/ updated: 2026-09-27 --- # Search accounts Returns Salesloft accounts, the companies a team sells to, that match filters such as domain, name, owner, industry, tag or open opportunity. Filter by `domain` to find the account behind a company website, then read the full record with `account_by_id` on the MCP server or `GET /v2/accounts/:id` over the API. Results are paged with `per_page` and `page`; pages past 100 cost extra against the rate limit. ## Set up Use the first option your agent supports. ### MCP (official, remote) Add this server to your agent's MCP settings, then sign in when asked. ```json { "mcpServers": { "salesloft": { "url": "https://mcp.salesloft.com/sse" } } } ``` Call the MCP tool `search_accounts`. Server URL: https://mcp.salesloft.com/sse ### API (official) - Base URL: https://api.salesloft.com - Endpoint: `GET /v2/accounts` - Auth: send the header `Authorization: Bearer $SALESLOFT_API_KEY` - Docs: https://developers.salesloft.com/docs/platform/api-basics/api-key-authentication/ Before doing anything else, make one read-only call to confirm access. ## Rules - Ask the user before anything that sends messages, costs money, or changes data. - Never print API keys. --- ref: tool:salesloft/search-conversations name: Search conversations company: company:salesloft workflows: [] access: [mcp, api] tags: [capability:review-recordings, category:sales-engagement, has:api, has:mcp] docs: https://developers.salesloft.com/docs/api/conversations-find-all/ updated: 2026-09-27 --- # Search conversations Returns recorded calls and meetings in Salesloft, filtered by account, person, owner, platform, duration or date, each with its title, duration, account and person. Filter with `account_ids[]` or `person_ids[]` to review what was said with one account or person. On the MCP server, `conversation_by_id` returns one conversation's participants and messages. Over the API the call needs the `conversations:read` scope, and pages hold up to 100 conversations. ## Set up Use the first option your agent supports. ### MCP (official, remote) Add this server to your agent's MCP settings, then sign in when asked. ```json { "mcpServers": { "salesloft": { "url": "https://mcp.salesloft.com/sse" } } } ``` Call the MCP tool `search_conversations`. Server URL: https://mcp.salesloft.com/sse ### API (official) - Base URL: https://api.salesloft.com - Endpoint: `GET /v2/conversations` - Auth: send the header `Authorization: Bearer $SALESLOFT_API_KEY` - Docs: https://developers.salesloft.com/docs/platform/api-basics/api-key-authentication/ Before doing anything else, make one read-only call to confirm access. ## Rules - Ask the user before anything that sends messages, costs money, or changes data. - Never print API keys. --- ref: tool:salesloft/search-people name: Search people company: company:salesloft workflows: [] access: [mcp, api] tags: [capability:manage-crm, category:sales-engagement, has:api, has:mcp] docs: https://developers.salesloft.com/docs/api/people-index/ updated: 2026-09-27 --- # Search people Returns Salesloft people, the contacts and leads a team works, that match filters such as email address, name, company, title, account or cadence. Over the API, filters are query parameters such as `email_addresses`, `title`, `account_id` and `cadence_id`, and `can_email=true` keeps only people who can be emailed. The MCP tool returns each person's id, name, email and job title; `person_by_id` (or `GET /v2/people/:id`) returns the full record. ## Set up Use the first option your agent supports. ### MCP (official, remote) Add this server to your agent's MCP settings, then sign in when asked. ```json { "mcpServers": { "salesloft": { "url": "https://mcp.salesloft.com/sse" } } } ``` Call the MCP tool `search_people`. Server URL: https://mcp.salesloft.com/sse ### API (official) - Base URL: https://api.salesloft.com - Endpoint: `GET /v2/people` - Auth: send the header `Authorization: Bearer $SALESLOFT_API_KEY` - Docs: https://developers.salesloft.com/docs/platform/api-basics/api-key-authentication/ Before doing anything else, make one read-only call to confirm access. ## Rules - Ask the user before anything that sends messages, costs money, or changes data. - Never print API keys. --- ref: tool:salesloft/upsert-person name: Create or update a person company: company:salesloft workflows: [] access: [api] tags: [capability:manage-crm, category:sales-engagement, has:api] docs: https://developers.salesloft.com/docs/api/person-upserts-create/ updated: 2026-09-27 --- # Create or update a person Creates a Salesloft person, or updates the one matched by id, CRM id or email address, and says which it did. Set `upsert_key` to `id`, `crm_id` or `email_address` and send that field with the person's details, such as `first_name`, `last_name`, `title`, `account_id` and `tags`; without `upsert_key` an existing person is never updated. The request fails when the key matches more than one person. The response's `upsert_type` is `create` or `update`. The call needs the `people:write` scope; the MCP server can't write. ## Set up Use the first option your agent supports. ### API (official) - Base URL: https://api.salesloft.com - Endpoint: `POST /v2/person_upserts` - Auth: send the header `Authorization: Bearer $SALESLOFT_API_KEY` - Docs: https://developers.salesloft.com/docs/platform/api-basics/api-key-authentication/ Before doing anything else, make one read-only call to confirm access. ## Rules - Ask the user before anything that sends messages, costs money, or changes data. - Never print API keys. --- ref: tool:segment/associate-user-with-group name: Associate a user with a group company: company:segment workflows: [] access: [api] tags: [capability:track-product-usage, category:cdp, has:api] docs: https://www.twilio.com/docs/segment/connections/sources/catalog/libraries/server/http-api#group updated: 2026-09-27 --- # Associate a user with a group Ties an identified user to a group, such as a company or account, and records the group's traits like industry and employee count. Send `userId` or `anonymousId`, the `groupId`, and the group's `traits`. Destinations that model accounts, such as Intercom, use it to tie users to their company. `SEGMENT_API_KEY` holds the base64 of the source's write key followed by a colon. ## Set up Use the first option your agent supports. ### API (official) - Base URL: https://api.segment.io - Endpoint: `POST /v1/group` - Auth: send the header `Authorization: Basic $SEGMENT_API_KEY` - Get a key: https://www.twilio.com/docs/segment/connections/find-writekey - Docs: https://www.twilio.com/docs/segment/connections/sources/catalog/libraries/server/http-api Before doing anything else, make one read-only call to confirm access. ## Rules - Ask the user before anything that sends messages, costs money, or changes data. - Never print API keys. --- ref: tool:segment/identify-user name: Identify a user company: company:segment workflows: [] access: [api] tags: [capability:track-product-usage, category:cdp, has:api] docs: https://www.twilio.com/docs/segment/connections/sources/catalog/libraries/server/http-api#identify updated: 2026-09-27 --- # Identify a user Records a user's traits, such as email, name and plan, against their user ID and routes them to the source's destinations. Send `userId` or `anonymousId` and a `traits` object. Segment recommends identifying once when the account is created and again only when its traits change. `SEGMENT_API_KEY` holds the base64 of the source's write key followed by a colon. The API answers 200 even for an event it drops (only oversized payloads and invalid JSON return 400), so confirm arrival in the source's Debugger. ## Set up Use the first option your agent supports. ### API (official) - Base URL: https://api.segment.io - Endpoint: `POST /v1/identify` - Auth: send the header `Authorization: Basic $SEGMENT_API_KEY` - Get a key: https://www.twilio.com/docs/segment/connections/find-writekey - Docs: https://www.twilio.com/docs/segment/connections/sources/catalog/libraries/server/http-api Before doing anything else, make one read-only call to confirm access. ## Rules - Ask the user before anything that sends messages, costs money, or changes data. - Never print API keys. --- ref: tool:segment/send-batch name: Send a batch of calls company: company:segment workflows: [] access: [api] tags: [capability:track-product-usage, category:cdp, has:api] docs: https://www.twilio.com/docs/segment/connections/sources/catalog/libraries/server/http-api#batch updated: 2026-09-27 --- # Send a batch of calls Sends up to 2,500 identify, group, track, page and screen calls to a source in one request. Put each call in `batch[]` with its `type`. A request can be up to 500 KB and each call up to 32 KB. Segment still answers 200 but drops the events when a batch holds more than 2,500 of them, so split large imports. `SEGMENT_API_KEY` holds the base64 of the source's write key followed by a colon. ## Set up Use the first option your agent supports. ### API (official) - Base URL: https://api.segment.io - Endpoint: `POST /v1/batch` - Auth: send the header `Authorization: Basic $SEGMENT_API_KEY` - Get a key: https://www.twilio.com/docs/segment/connections/find-writekey - Docs: https://www.twilio.com/docs/segment/connections/sources/catalog/libraries/server/http-api Before doing anything else, make one read-only call to confirm access. ## Rules - Ask the user before anything that sends messages, costs money, or changes data. - Never print API keys. --- ref: tool:segment/track-event name: Track an event company: company:segment workflows: [] access: [api] tags: [capability:track-product-usage, category:cdp, has:api] docs: https://www.twilio.com/docs/segment/connections/sources/catalog/libraries/server/http-api#track updated: 2026-09-27 --- # Track an event Records one action a user took, such as Signed Up, with its properties and routes it to the source's destinations. Send `event`, `userId` or `anonymousId`, and optional `properties`; a request can be up to 32 KB. Segment deduplicates on `messageId`, so give every event a unique one under 100 characters. `SEGMENT_API_KEY` holds the base64 of the source's write key followed by a colon. ## Set up Use the first option your agent supports. ### API (official) - Base URL: https://api.segment.io - Endpoint: `POST /v1/track` - Auth: send the header `Authorization: Basic $SEGMENT_API_KEY` - Get a key: https://www.twilio.com/docs/segment/connections/find-writekey - Docs: https://www.twilio.com/docs/segment/connections/sources/catalog/libraries/server/http-api Before doing anything else, make one read-only call to confirm access. ## Rules - Ask the user before anything that sends messages, costs money, or changes data. - Never print API keys. --- ref: tool:sendgrid/create-segment name: Create a segment company: company:sendgrid workflows: [] access: [api] tags: [capability:build-audience, category:email, has:api] docs: https://www.twilio.com/docs/sendgrid/api-reference/segmenting-contacts-v2/create-segment updated: 2026-09-27 --- # Create a segment Creates a segment of the contacts that match an SQL-style query, optionally within one list, that updates as contacts change. Pass a unique `name` and the `query_dsl`; `parent_list_ids` limits the segment to one list. Segment counts refresh every 1 to 24 hours, and a segment built on engagement data takes about 30 minutes to start filling. ## Set up Use the first option your agent supports. ### API (official) - Base URL: https://api.sendgrid.com - Endpoint: `POST /v3/marketing/segments/2.0` - Auth: send the header `Authorization: Bearer $SENDGRID_API_KEY` - Get a key: https://app.sendgrid.com/settings/api_keys - Docs: https://www.twilio.com/docs/sendgrid/api-reference Before doing anything else, make one read-only call to confirm access. ## Rules - Ask the user before anything that sends messages, costs money, or changes data. - Never print API keys. --- ref: tool:sendgrid/create-single-send name: Create a Single Send company: company:sendgrid workflows: [] access: [api] tags: [capability:send-email, category:email, has:api] docs: https://www.twilio.com/docs/sendgrid/api-reference/single-sends/create-single-send updated: 2026-09-27 --- # Create a Single Send Creates an unscheduled draft marketing email for lists, segments or all contacts, with its content, sender and unsubscribe settings. Set `send_to` (`list_ids`, `segment_ids` or `all`) and `email_config`: the subject and HTML, or a `design_id`, the `sender_id`, and a `suppression_group_id` or `custom_unsubscribe_url`. A `send_at` here only prefills the date; schedule the Single Send to send it. ## Set up Use the first option your agent supports. ### API (official) - Base URL: https://api.sendgrid.com - Endpoint: `POST /v3/marketing/singlesends` - Auth: send the header `Authorization: Bearer $SENDGRID_API_KEY` - Get a key: https://app.sendgrid.com/settings/api_keys - Docs: https://www.twilio.com/docs/sendgrid/api-reference Before doing anything else, make one read-only call to confirm access. ## Rules - Ask the user before anything that sends messages, costs money, or changes data. - Never print API keys. --- ref: tool:sendgrid/schedule-single-send name: Schedule a Single Send company: company:sendgrid workflows: [] access: [api] tags: [capability:send-email, category:email, has:api] docs: https://www.twilio.com/docs/sendgrid/api-reference/single-sends/schedule-single-send updated: 2026-09-27 --- # Schedule a Single Send Sends a Single Send right away when send_at is now, or schedules it for a future ISO 8601 time. Confirm the Single Send, its recipients and its content with the user before sending. ## Set up Use the first option your agent supports. ### API (official) - Base URL: https://api.sendgrid.com - Endpoint: `PUT /v3/marketing/singlesends/{id}/schedule` - Auth: send the header `Authorization: Bearer $SENDGRID_API_KEY` - Get a key: https://app.sendgrid.com/settings/api_keys - Docs: https://www.twilio.com/docs/sendgrid/api-reference Before doing anything else, make one read-only call to confirm access. ## Rules - Ask the user before anything that sends messages, costs money, or changes data. - Never print API keys. --- ref: tool:sendgrid/send-email name: Send an email company: company:sendgrid workflows: [] access: [cli, api] tags: [capability:send-email, category:email, has:api, has:cli] docs: https://www.twilio.com/docs/sendgrid/api-reference/mail-send/mail-send updated: 2026-09-27 --- # Send an email Sends an email from a verified sender, with up to 1,000 personalizations that each set their own recipients. Each object in `personalizations` is one envelope: its recipients and how their message is handled. On the CLI, `twilio email:set` saves a default sender and subject, and `twilio email:send` takes `--to`, `--text`, `--subject`, `--from` and `--attachment`. ## Set up Use the first option your agent supports. ### CLI (official) Install the command, then confirm it runs. ```sh brew tap twilio/brew && brew install twilio twilio --version ``` Run `twilio email:send`. Set `$SENDGRID_API_KEY` in your environment first (get a key: https://app.sendgrid.com/settings/api_keys). ### API (official) - Base URL: https://api.sendgrid.com - Endpoint: `POST /v3/mail/send` - Auth: send the header `Authorization: Bearer $SENDGRID_API_KEY` - Get a key: https://app.sendgrid.com/settings/api_keys - Docs: https://www.twilio.com/docs/sendgrid/api-reference Before doing anything else, make one read-only call to confirm access. ## Rules - Ask the user before anything that sends messages, costs money, or changes data. - Never print API keys. --- ref: tool:sendgrid/upsert-contacts name: Add or update contacts company: company:sendgrid workflows: [] access: [api] tags: [capability:build-audience, category:email, has:api] docs: https://www.twilio.com/docs/sendgrid/api-reference/contacts/add-or-update-a-contact updated: 2026-09-27 --- # Add or update contacts Queues up to 30,000 contacts, or 6 MB, to be created or updated in Marketing Campaigns and returns a job ID. Processing is asynchronous: a `202` means queued, and the `job_id` shows the import status. To update a contact, send all of its existing identifiers; fields you leave out keep their values. Create custom fields before you set them. ## Set up Use the first option your agent supports. ### API (official) - Base URL: https://api.sendgrid.com - Endpoint: `PUT /v3/marketing/contacts` - Auth: send the header `Authorization: Bearer $SENDGRID_API_KEY` - Get a key: https://app.sendgrid.com/settings/api_keys - Docs: https://www.twilio.com/docs/sendgrid/api-reference Before doing anything else, make one read-only call to confirm access. ## Rules - Ask the user before anything that sends messages, costs money, or changes data. - Never print API keys. --- ref: tool:slack/find-user-by-email name: Find a user by email company: company:slack workflows: [] access: [mcp, cli, api] tags: [capability:route-alerts, category:messaging, has:api, has:cli, has:mcp] docs: https://docs.slack.dev/reference/methods/users.lookupByEmail updated: 2026-09-27 --- # Find a user by email Returns the workspace member registered with an email address, so a message can mention or reach them. Needs the `users:read.email` scope; a deactivated user returns `users_not_found`. Over MCP, `slack_search_users` finds people by name, email or role. ## Set up Use the first option your agent supports. ### MCP (official, remote) Add this server to your agent's MCP settings, then sign in when asked. ```json { "mcpServers": { "slack": { "url": "https://mcp.slack.com/mcp" } } } ``` Call the MCP tool `slack_search_users`. Server URL: https://mcp.slack.com/mcp ### CLI (official) Install the command, then confirm it runs. ```sh curl -fsSL https://downloads.slack-edge.com/slack-cli/install.sh | bash slack --version ``` Run `slack api users.lookupByEmail`. Set `$SLACK_BOT_TOKEN` in your environment first (get a key: https://api.slack.com/apps). ### API (official) - Base URL: https://slack.com/api - Endpoint: `GET /users.lookupByEmail` - Auth: send the header `Authorization: Bearer $SLACK_BOT_TOKEN` - Get a key: https://api.slack.com/apps - Docs: https://docs.slack.dev/apis/web-api/ Before doing anything else, make one read-only call to confirm access. ## Rules - Ask the user before anything that sends messages, costs money, or changes data. - Never print API keys. --- ref: tool:slack/post-message name: Post a message company: company:slack workflows: [workflow:high-intent-visitors, workflow:product-qualified-expansion, workflow:at-risk-customer-rescue] access: [mcp, cli, api] tags: [capability:route-alerts, category:messaging, has:api, has:cli, has:mcp] docs: https://docs.slack.dev/reference/methods/chat.postMessage updated: 2026-09-27 --- # Post a message Posts a message to a channel, DM or thread and returns the channel ID and the message timestamp. Needs the `chat:write` scope. Pass `thread_ts` to reply in a thread. Over MCP, `slack_send_message` posts as the signed-in user; the API and CLI post as the app's bot. ## Set up Use the first option your agent supports. ### MCP (official, remote) Add this server to your agent's MCP settings, then sign in when asked. ```json { "mcpServers": { "slack": { "url": "https://mcp.slack.com/mcp" } } } ``` Call the MCP tool `slack_send_message`. Server URL: https://mcp.slack.com/mcp ### CLI (official) Install the command, then confirm it runs. ```sh curl -fsSL https://downloads.slack-edge.com/slack-cli/install.sh | bash slack --version ``` Run `slack api chat.postMessage`. Set `$SLACK_BOT_TOKEN` in your environment first (get a key: https://api.slack.com/apps). ### API (official) - Base URL: https://slack.com/api - Endpoint: `POST /chat.postMessage` - Auth: send the header `Authorization: Bearer $SLACK_BOT_TOKEN` - Get a key: https://api.slack.com/apps - Docs: https://docs.slack.dev/apis/web-api/ Before doing anything else, make one read-only call to confirm access. ## Rules - Ask the user before anything that sends messages, costs money, or changes data. - Never print API keys. --- ref: tool:slack/schedule-message name: Schedule a message company: company:slack workflows: [] access: [mcp, cli, api] tags: [capability:route-alerts, category:messaging, has:api, has:cli, has:mcp] docs: https://docs.slack.dev/reference/methods/chat.scheduleMessage updated: 2026-09-27 --- # Schedule a message Schedules a message to post to a channel at a future Unix time and returns its scheduled message ID. Needs the `chat:write` scope. `post_at` can be at most 120 days ahead. ## Set up Use the first option your agent supports. ### MCP (official, remote) Add this server to your agent's MCP settings, then sign in when asked. ```json { "mcpServers": { "slack": { "url": "https://mcp.slack.com/mcp" } } } ``` Call the MCP tool `slack_schedule_message`. Server URL: https://mcp.slack.com/mcp ### CLI (official) Install the command, then confirm it runs. ```sh curl -fsSL https://downloads.slack-edge.com/slack-cli/install.sh | bash slack --version ``` Run `slack api chat.scheduleMessage`. Set `$SLACK_BOT_TOKEN` in your environment first (get a key: https://api.slack.com/apps). ### API (official) - Base URL: https://slack.com/api - Endpoint: `POST /chat.scheduleMessage` - Auth: send the header `Authorization: Bearer $SLACK_BOT_TOKEN` - Get a key: https://api.slack.com/apps - Docs: https://docs.slack.dev/apis/web-api/ Before doing anything else, make one read-only call to confirm access. ## Rules - Ask the user before anything that sends messages, costs money, or changes data. - Never print API keys. --- ref: tool:slack/search-messages name: Search messages company: company:slack workflows: [] access: [mcp] tags: [capability:research-accounts, category:messaging, has:mcp] docs: https://github.com/slackapi/slack-skills-plugin/blob/main/skills/slack-search/SKILL.md updated: 2026-09-27 --- # Search messages Searches messages and files in public channels, narrowed by channel, person and date. Use it to see what the team has already said about an account before reaching out; narrow a query with `in:`, `from:`, `before:` and `after:`. `slack_search_public_and_private` also covers private channels and DMs, with the user's consent. The Web API's `search.messages` needs a user token, so it is not listed here beside the bot-token API. ## Set up Use the first option your agent supports. ### MCP (official, remote) Add this server to your agent's MCP settings, then sign in when asked. ```json { "mcpServers": { "slack": { "url": "https://mcp.slack.com/mcp" } } } ``` Call the MCP tool `slack_search_public`. Server URL: https://mcp.slack.com/mcp Before doing anything else, make one read-only call to confirm access. ## Rules - Ask the user before anything that sends messages, costs money, or changes data. - Never print API keys. --- ref: tool:stripe/create-coupon name: Create a coupon company: company:stripe workflows: [] access: [mcp, cli, api] tags: [capability:collect-payments, category:payments, has:api, has:cli, has:mcp] docs: https://docs.stripe.com/api/coupons/create updated: 2026-09-27 --- # Create a coupon Creates a percent-off or amount-off discount and returns the coupon to apply to invoices and subscriptions. Set `percent_off`, or `amount_off` with `currency`. `duration` is `once`, `repeating` (with `duration_in_months`) or `forever`, and `max_redemptions` and `redeem_by` cap how it is used. On the MCP server this method runs through the generic `stripe_api_write` tool. ## Set up Use the first option your agent supports. ### MCP (official, remote) Add this server to your agent's MCP settings, then sign in when asked. ```json { "mcpServers": { "stripe": { "url": "https://mcp.stripe.com" } } } ``` Call the MCP tool `stripe_api_write`. Server URL: https://mcp.stripe.com ### CLI (official) Install the command, then confirm it runs. ```sh npm install -g @stripe/cli stripe --version ``` Run `stripe coupons create`. ### API (official) - Base URL: https://api.stripe.com - Endpoint: `POST /v1/coupons` - Auth: send the header `Authorization: Bearer $STRIPE_API_KEY` - Get a key: https://dashboard.stripe.com/apikeys - Docs: https://docs.stripe.com/api Before doing anything else, make one read-only call to confirm access. ## Rules - Ask the user before anything that sends messages, costs money, or changes data. - Never print API keys. --- ref: tool:stripe/create-payment-link name: Create a payment link company: company:stripe workflows: [] access: [mcp, cli, api] tags: [capability:collect-payments, category:payments, has:api, has:cli, has:mcp] docs: https://docs.stripe.com/api/payment-link/create updated: 2026-09-27 --- # Create a payment link Creates a Stripe-hosted checkout link for the prices you pass and returns it with its shareable URL. Each entry in `line_items` takes a price ID and a quantity, up to 20 per link; the link to send is the `url` in the response. On the MCP server this method runs through the generic `stripe_api_write` tool. ## Set up Use the first option your agent supports. ### MCP (official, remote) Add this server to your agent's MCP settings, then sign in when asked. ```json { "mcpServers": { "stripe": { "url": "https://mcp.stripe.com" } } } ``` Call the MCP tool `stripe_api_write`. Server URL: https://mcp.stripe.com ### CLI (official) Install the command, then confirm it runs. ```sh npm install -g @stripe/cli stripe --version ``` Run `stripe payment_links create`. ### API (official) - Base URL: https://api.stripe.com - Endpoint: `POST /v1/payment_links` - Auth: send the header `Authorization: Bearer $STRIPE_API_KEY` - Get a key: https://dashboard.stripe.com/apikeys - Docs: https://docs.stripe.com/api Before doing anything else, make one read-only call to confirm access. ## Rules - Ask the user before anything that sends messages, costs money, or changes data. - Never print API keys. --- ref: tool:stripe/list-customers name: List customers company: company:stripe workflows: [workflow:free-to-paid-activation, workflow:at-risk-customer-rescue] access: [mcp, cli, api] tags: [capability:track-revenue, category:payments, has:api, has:cli, has:mcp] docs: https://docs.stripe.com/api/customers/list updated: 2026-09-27 --- # List customers Returns customers newest first; pass an email to get only the customers with exactly that address. The `email` filter is case-sensitive. Use the returned customer ID with the `customer` filter on subscriptions or invoices to see what that person pays. On the MCP server this method runs through the generic `stripe_api_read` tool. ## Set up Use the first option your agent supports. ### MCP (official, remote) Add this server to your agent's MCP settings, then sign in when asked. ```json { "mcpServers": { "stripe": { "url": "https://mcp.stripe.com" } } } ``` Call the MCP tool `stripe_api_read`. Server URL: https://mcp.stripe.com ### CLI (official) Install the command, then confirm it runs. ```sh npm install -g @stripe/cli stripe --version ``` Run `stripe customers list`. ### API (official) - Base URL: https://api.stripe.com - Endpoint: `GET /v1/customers` - Auth: send the header `Authorization: Bearer $STRIPE_API_KEY` - Get a key: https://dashboard.stripe.com/apikeys - Docs: https://docs.stripe.com/api Before doing anything else, make one read-only call to confirm access. ## Rules - Ask the user before anything that sends messages, costs money, or changes data. - Never print API keys. --- ref: tool:stripe/list-invoices name: List invoices company: company:stripe workflows: [] access: [mcp, cli, api] tags: [capability:track-revenue, category:payments, has:api, has:cli, has:mcp] docs: https://docs.stripe.com/api/invoices/list updated: 2026-09-27 --- # List invoices Returns invoices newest first, filtered by customer, subscription or status such as paid or open. `status` is one of `draft`, `open`, `paid`, `uncollectible` or `void`. Each invoice carries `amount_due`, `amount_paid`, `customer_email` and `status`. On the MCP server this method runs through the generic `stripe_api_read` tool. ## Set up Use the first option your agent supports. ### MCP (official, remote) Add this server to your agent's MCP settings, then sign in when asked. ```json { "mcpServers": { "stripe": { "url": "https://mcp.stripe.com" } } } ``` Call the MCP tool `stripe_api_read`. Server URL: https://mcp.stripe.com ### CLI (official) Install the command, then confirm it runs. ```sh npm install -g @stripe/cli stripe --version ``` Run `stripe invoices list`. ### API (official) - Base URL: https://api.stripe.com - Endpoint: `GET /v1/invoices` - Auth: send the header `Authorization: Bearer $STRIPE_API_KEY` - Get a key: https://dashboard.stripe.com/apikeys - Docs: https://docs.stripe.com/api Before doing anything else, make one read-only call to confirm access. ## Rules - Ask the user before anything that sends messages, costs money, or changes data. - Never print API keys. --- ref: tool:stripe/list-subscriptions name: List subscriptions company: company:stripe workflows: [workflow:free-to-paid-activation, workflow:at-risk-customer-rescue] access: [mcp, cli, api] tags: [capability:track-revenue, category:payments, has:api, has:cli, has:mcp] docs: https://docs.stripe.com/api/subscriptions/list updated: 2026-09-27 --- # List subscriptions Returns subscriptions filtered by status, customer or price; with no status it returns every subscription that is not canceled. Pass `status=active` to get paying subscriptions only, or `customer` to check a single customer. Each subscription carries its `status`, its `customer` ID and, on each item, the price and `current_period_end`: when it renews. On the MCP server this method runs through the generic `stripe_api_read` tool. ## Set up Use the first option your agent supports. ### MCP (official, remote) Add this server to your agent's MCP settings, then sign in when asked. ```json { "mcpServers": { "stripe": { "url": "https://mcp.stripe.com" } } } ``` Call the MCP tool `stripe_api_read`. Server URL: https://mcp.stripe.com ### CLI (official) Install the command, then confirm it runs. ```sh npm install -g @stripe/cli stripe --version ``` Run `stripe subscriptions list`. ### API (official) - Base URL: https://api.stripe.com - Endpoint: `GET /v1/subscriptions` - Auth: send the header `Authorization: Bearer $STRIPE_API_KEY` - Get a key: https://dashboard.stripe.com/apikeys - Docs: https://docs.stripe.com/api Before doing anything else, make one read-only call to confirm access. ## Rules - Ask the user before anything that sends messages, costs money, or changes data. - Never print API keys. --- ref: tool:trello/add-card-comment name: Add a comment to a card company: company:trello workflows: [] access: [api] tags: [capability:manage-tasks, category:project-management, has:api] docs: https://developer.atlassian.com/cloud/trello/rest/api-group-cards/#api-cards-id-actions-comments-post updated: 2026-09-27 --- # Add a comment to a card Adds a comment with the text you pass to a card and returns the comment action. ## Set up Use the first option your agent supports. ### API (official) - Base URL: https://api.trello.com/1 - Endpoint: `POST /cards/{id}/actions/comments` - Auth: OAuth; sign in when the agent asks - Docs: https://developer.atlassian.com/cloud/trello/rest/ Before doing anything else, make one read-only call to confirm access. ## Rules - Ask the user before anything that sends messages, costs money, or changes data. - Never print API keys. --- ref: tool:trello/create-card name: Create a card company: company:trello workflows: [] access: [api] tags: [capability:manage-tasks, category:project-management, has:api] docs: https://developer.atlassian.com/cloud/trello/rest/api-group-cards/#api-cards-post updated: 2026-09-27 --- # Create a card Creates a card in a list, with an optional description, due date, members and labels, and returns the card. `idList` is required. Parameters can go in the query string or a JSON body. ## Set up Use the first option your agent supports. ### API (official) - Base URL: https://api.trello.com/1 - Endpoint: `POST /cards` - Auth: OAuth; sign in when the agent asks - Docs: https://developer.atlassian.com/cloud/trello/rest/ Before doing anything else, make one read-only call to confirm access. ## Rules - Ask the user before anything that sends messages, costs money, or changes data. - Never print API keys. --- ref: tool:trello/search name: Search Trello company: company:trello workflows: [] access: [api] tags: [capability:manage-tasks, category:project-management, has:api] docs: https://developer.atlassian.com/cloud/trello/rest/api-group-search/#api-search-get updated: 2026-09-27 --- # Search Trello Finds the boards, cards, members and organizations that match a query. `query` is required; narrow it with `idBoards`, `idOrganizations` or `modelTypes`, and cap results with `cards_limit` and `boards_limit`. ## Set up Use the first option your agent supports. ### API (official) - Base URL: https://api.trello.com/1 - Endpoint: `GET /search` - Auth: OAuth; sign in when the agent asks - Docs: https://developer.atlassian.com/cloud/trello/rest/ Before doing anything else, make one read-only call to confirm access. ## Rules - Ask the user before anything that sends messages, costs money, or changes data. - Never print API keys. --- ref: tool:trello/update-card name: Update a card company: company:trello workflows: [] access: [api] tags: [capability:manage-tasks, category:project-management, has:api] docs: https://developer.atlassian.com/cloud/trello/rest/api-group-cards/#api-cards-id-put updated: 2026-09-27 --- # Update a card Changes a card's fields, such as its list, due date, members or archived state, and returns the updated card. Set `idList` to move the card to another list, `due` to change its due date, and `closed` to archive it. Parameters can go in the query string or a JSON body. ## Set up Use the first option your agent supports. ### API (official) - Base URL: https://api.trello.com/1 - Endpoint: `PUT /cards/{id}` - Auth: OAuth; sign in when the agent asks - Docs: https://developer.atlassian.com/cloud/trello/rest/ Before doing anything else, make one read-only call to confirm access. ## Rules - Ask the user before anything that sends messages, costs money, or changes data. - Never print API keys. --- ref: tool:twilio/check-verification-code name: Check a verification code company: company:twilio workflows: [] access: [cli] tags: [capability:authenticate-users, category:messaging, has:cli] docs: https://www.twilio.com/docs/verify/api/verification-check#check-a-verification updated: 2026-09-27 --- # Check a verification code Checks the code a user entered against their pending verification and returns its status, approved when the code is right. Pass `--service-sid`, the same `--to` the code was sent to, and `--code`. A verification expires after 10 minutes and is deleted once it is approved or runs out of attempts; checking it after that returns 404. The REST call is `POST https://verify.twilio.com/v2/Services/{ServiceSid}/VerificationCheck`. The CLI also needs `TWILIO_ACCOUNT_SID` and `TWILIO_API_SECRET`, or a `twilio login` profile. ## Set up Use the first option your agent supports. ### CLI (official) Install the command, then confirm it runs. ```sh brew tap twilio/brew && brew install twilio twilio --version ``` Run `twilio api:verify:v2:services:verification-check:create`. Set `$TWILIO_API_KEY` in your environment first (get a key: https://www.twilio.com/docs/iam/api-keys/keys-in-console). Before doing anything else, make one read-only call to confirm access. ## Rules - Ask the user before anything that sends messages, costs money, or changes data. - Never print API keys. --- ref: tool:twilio/look-up-phone-number name: Look up a phone number company: company:twilio workflows: [] access: [cli] tags: [capability:enrich-contacts, category:messaging, has:cli] docs: https://www.twilio.com/docs/lookup/v2-api#making-a-request updated: 2026-09-27 --- # Look up a phone number Validates a phone number and returns it in E.164 and national formats, plus line type, caller name or other data you request. Pass `--phone-number` in E.164 format. The basic lookup (formatting and validation) is free; add paid data packages with `--fields`, such as `line_type_intelligence` (mobile, landline, VoIP and more) or `caller_name` (US numbers only). Some packages need Twilio's approval first. The REST call is `GET https://lookups.twilio.com/v2/PhoneNumbers/{PhoneNumber}`. The CLI also needs `TWILIO_ACCOUNT_SID` and `TWILIO_API_SECRET`, or a `twilio login` profile. ## Set up Use the first option your agent supports. ### CLI (official) Install the command, then confirm it runs. ```sh brew tap twilio/brew && brew install twilio twilio --version ``` Run `twilio api:lookups:v2:phone-numbers:fetch`. Set `$TWILIO_API_KEY` in your environment first (get a key: https://www.twilio.com/docs/iam/api-keys/keys-in-console). Before doing anything else, make one read-only call to confirm access. ## Rules - Ask the user before anything that sends messages, costs money, or changes data. - Never print API keys. --- ref: tool:twilio/make-call name: Make a phone call company: company:twilio workflows: [] access: [cli] tags: [capability:make-calls, category:messaging, has:cli] docs: https://www.twilio.com/docs/voice/api/call-resource#create-a-call updated: 2026-09-27 --- # Make a phone call Places an outbound call from a Twilio number to a phone number, SIP address or client and runs the TwiML you give it when the call connects. Pass `--to`, `--from` (a Twilio number or a verified caller ID) and the call's instructions as `--twiml` or as a `--url` that returns TwiML. Every completed call is charged, including one a voicemail answers. The REST call is `POST https://api.twilio.com/2010-04-01/Accounts/{AccountSid}/Calls.json`. The CLI also needs `TWILIO_ACCOUNT_SID` and `TWILIO_API_SECRET`, or a `twilio login` profile. ## Set up Use the first option your agent supports. ### CLI (official) Install the command, then confirm it runs. ```sh brew tap twilio/brew && brew install twilio twilio --version ``` Run `twilio api:core:calls:create`. Set `$TWILIO_API_KEY` in your environment first (get a key: https://www.twilio.com/docs/iam/api-keys/keys-in-console). Before doing anything else, make one read-only call to confirm access. ## Rules - Ask the user before anything that sends messages, costs money, or changes data. - Never print API keys. --- ref: tool:twilio/send-message name: Send a message company: company:twilio workflows: [] access: [cli] tags: [capability:send-sms, category:messaging, has:cli] docs: https://www.twilio.com/docs/messaging/api/message-resource#create-a-message-resource updated: 2026-09-27 --- # Send a message Sends an SMS, MMS or WhatsApp message from a Twilio sender to one recipient and returns the new Message resource. Pass `--to` in E.164 format (or a channel address such as `whatsapp:+15552229999`), a sender with `--from` or `--messaging-service-sid`, and `--body`. A body over 160 GSM-7 characters is split into segments, each charged, and trial accounts can only send to verified numbers. The REST call is `POST https://api.twilio.com/2010-04-01/Accounts/{AccountSid}/Messages.json`. The CLI also needs `TWILIO_ACCOUNT_SID` and `TWILIO_API_SECRET`, or a `twilio login` profile. ## Set up Use the first option your agent supports. ### CLI (official) Install the command, then confirm it runs. ```sh brew tap twilio/brew && brew install twilio twilio --version ``` Run `twilio api:core:messages:create`. Set `$TWILIO_API_KEY` in your environment first (get a key: https://www.twilio.com/docs/iam/api-keys/keys-in-console). Before doing anything else, make one read-only call to confirm access. ## Rules - Ask the user before anything that sends messages, costs money, or changes data. - Never print API keys. --- ref: tool:twilio/send-verification-code name: Send a verification code company: company:twilio workflows: [] access: [cli] tags: [capability:authenticate-users, category:messaging, has:cli] docs: https://www.twilio.com/docs/verify/api/verification#start-new-verification updated: 2026-09-27 --- # Send a verification code Starts verifying a phone number or email address by sending a one-time code over SMS, WhatsApp, a voice call or email. Create a Verify Service first, then pass its SID (`VA...`) as `--service-sid`, the `--to` number in E.164 format or email address, and `--channel` (`sms`, `whatsapp`, `call`, `email`, `sna` or `auto`). Check the code the user enters with `twilio api:verify:v2:services:verification-check:create`. The REST call is `POST https://verify.twilio.com/v2/Services/{ServiceSid}/Verifications`. The CLI also needs `TWILIO_ACCOUNT_SID` and `TWILIO_API_SECRET`, or a `twilio login` profile. ## Set up Use the first option your agent supports. ### CLI (official) Install the command, then confirm it runs. ```sh brew tap twilio/brew && brew install twilio twilio --version ``` Run `twilio api:verify:v2:services:verifications:create`. Set `$TWILIO_API_KEY` in your environment first (get a key: https://www.twilio.com/docs/iam/api-keys/keys-in-console). Before doing anything else, make one read-only call to confirm access. ## Rules - Ask the user before anything that sends messages, costs money, or changes data. - Never print API keys. --- ref: tool:typeform/aggregate-responses name: Aggregate responses company: company:typeform workflows: [] access: [mcp] tags: [capability:collect-responses, category:forms, has:mcp] docs: https://www.typeform.com/developers/mcp/tools/ updated: 2026-09-27 --- # Aggregate responses Returns counts, averages, sums or NPS for one field of a form's responses or for all of them. Call `insights-public_discover` first: it returns the form's queryable fields and measures, and field IDs differ per form. Filters cover answers, hidden fields, tags and response type. For rankings use `insights-public_toplist`; for trends over time, `insights-public_timeseries`. ## Set up Use the first option your agent supports. ### MCP (official, remote) Add this server to your agent's MCP settings, then sign in when asked. ```json { "mcpServers": { "typeform": { "url": "https://api.typeform.com/mcp" } } } ``` Call the MCP tool `insights-public_aggregate`. Server URL: https://api.typeform.com/mcp Before doing anything else, make one read-only call to confirm access. ## Rules - Ask the user before anything that sends messages, costs money, or changes data. - Never print API keys. --- ref: tool:typeform/create-form name: Create a form company: company:typeform workflows: [] access: [mcp, api] tags: [capability:collect-responses, category:forms, has:api, has:mcp] docs: https://www.typeform.com/developers/create/reference/create-form/ updated: 2026-09-27 --- # Create a form Creates a typeform in a workspace, an empty draft over MCP or a complete form with fields and logic over the API. Over MCP the new form is empty: call `forms-public_get_capabilities`, then `forms-public_validate_patch` and `forms-public_patch_form` to add fields, and `forms-public_publish_form` only when the user wants it live, since patched changes stay in the draft until then. The API takes the whole definition (`title`, `fields`, `logic`, `hidden` fields, `workspace`) in one request; any images in it must already be in the account. ## Set up Use the first option your agent supports. ### MCP (official, remote) Add this server to your agent's MCP settings, then sign in when asked. ```json { "mcpServers": { "typeform": { "url": "https://api.typeform.com/mcp" } } } ``` Call the MCP tool `forms-public_create_form`. Server URL: https://api.typeform.com/mcp ### API (official) - Base URL: https://api.typeform.com - Endpoint: `POST /forms` - Auth: send the header `Authorization: Bearer $TYPEFORM_API_KEY` - Get a key: https://admin.typeform.com/user/tokens - Docs: https://www.typeform.com/developers/get-started/ Before doing anything else, make one read-only call to confirm access. ## Rules - Ask the user before anything that sends messages, costs money, or changes data. - Never print API keys. --- ref: tool:typeform/create-webhook name: Send responses to a webhook company: company:typeform workflows: [] access: [api] tags: [capability:collect-responses, category:forms, has:api] docs: https://www.typeform.com/developers/webhooks/reference/create-or-update-webhook/ updated: 2026-09-27 --- # Send responses to a webhook Creates or updates a named webhook that posts each new response to a form to your URL. Name the webhook with `tag`, set `url` and `enabled: true`, and pass a `secret` so each payload is signed with HMAC SHA-256 and can be verified. Use `event_types`, such as `form_response_partial`, to choose the events it receives. The MCP server doesn't manage form-level webhooks; over MCP, add a webhook step to an automation with `automations-public_add_webhook_step`. ## Set up Use the first option your agent supports. ### API (official) - Base URL: https://api.typeform.com - Endpoint: `PUT /forms/{form_id}/webhooks/{tag}` - Auth: send the header `Authorization: Bearer $TYPEFORM_API_KEY` - Get a key: https://admin.typeform.com/user/tokens - Docs: https://www.typeform.com/developers/get-started/ Before doing anything else, make one read-only call to confirm access. ## Rules - Ask the user before anything that sends messages, costs money, or changes data. - Never print API keys. --- ref: tool:typeform/retrieve-responses name: Retrieve responses company: company:typeform workflows: [] access: [api] tags: [capability:collect-responses, category:forms, has:api] docs: https://www.typeform.com/developers/responses/reference/retrieve-responses/ updated: 2026-09-27 --- # Retrieve responses Returns a form's responses with their answers and landing and submission times, filtered by date, response type or a search phrase. Pass `since` to pull only the leads that arrived after the last run, and `response_type` to include partial responses. Forms with more than 1,000 responses need narrower `since` and `until` ranges or the `before` and `after` cursors. Responses from the last 30 minutes or so may be missing, so use a webhook for real-time leads. The MCP server has no equivalent: its `insights-*` tools return aggregates or one field at a time. ## Set up Use the first option your agent supports. ### API (official) - Base URL: https://api.typeform.com - Endpoint: `GET /forms/{form_id}/responses` - Auth: send the header `Authorization: Bearer $TYPEFORM_API_KEY` - Get a key: https://admin.typeform.com/user/tokens - Docs: https://www.typeform.com/developers/get-started/ Before doing anything else, make one read-only call to confirm access. ## Rules - Ask the user before anything that sends messages, costs money, or changes data. - Never print API keys. --- ref: tool:webflow/create-cms-items name: Create CMS items company: company:webflow workflows: [] access: [mcp, cli, api] tags: [capability:publish-content, category:cms, has:api, has:cli, has:mcp] docs: https://developers.webflow.com/data/reference/cms/collection-items/staged-items/create-items updated: 2026-09-27 --- # Create CMS items Creates up to 100 items in a CMS collection, as drafts unless queued for the next site publish, and returns them with their IDs. On the MCP server, use the `create_collection_items` action of `data_cms_tool` with `collection_id` and each item's `fieldData`; read the collection's fields first with `get_collection_details`. Items are drafts unless `isDraft` is `false`, which queues them for the next site publish; publish them to put them live now. The 100-item limit counts every locale variant. The CLI takes `--collection` and `--data` as JSON, plus `--draft` to keep the item a draft. ## Set up Use the first option your agent supports. ### MCP (official, remote) Add this server to your agent's MCP settings, then sign in when asked. ```json { "mcpServers": { "webflow": { "url": "https://mcp.webflow.com/mcp" } } } ``` Call the MCP tool `data_cms_tool`. Server URL: https://mcp.webflow.com/mcp ### CLI (official) Install the command, then confirm it runs. ```sh npm install -g @webflow/webflow-cli webflow --version ``` Run `webflow cms items create`. ### API (official) - Base URL: https://api.webflow.com/v2 - Endpoint: `POST /collections/{collection_id}/items/insert` - Auth: send the header `Authorization: Bearer $WEBFLOW_API_TOKEN` - Docs: https://developers.webflow.com/data/reference/rest-introduction Before doing anything else, make one read-only call to confirm access. ## Rules - Ask the user before anything that sends messages, costs money, or changes data. - Never print API keys. --- ref: tool:webflow/list-form-submissions name: List form submissions company: company:webflow workflows: [] access: [mcp, cli, api] tags: [capability:collect-responses, category:cms, has:api, has:cli, has:mcp] docs: https://developers.webflow.com/data/reference/forms/form-submissions/list-submissions updated: 2026-09-27 --- # List form submissions Returns the submissions of one form on a site, up to 100 per page. On the MCP server, use the `list_form_submissions` action of `data_forms_tool` with `site_id` and `form_id`; its `list_forms` action finds the form. Page with `offset` and `limit`. A form placed inside a component yields one form per instance: to collect them all, list by site with `GET /sites/{site_id}/form_submissions` and the form's `elementId`. The CLI can export submissions to CSV with `--output`. ## Set up Use the first option your agent supports. ### MCP (official, remote) Add this server to your agent's MCP settings, then sign in when asked. ```json { "mcpServers": { "webflow": { "url": "https://mcp.webflow.com/mcp" } } } ``` Call the MCP tool `data_forms_tool`. Server URL: https://mcp.webflow.com/mcp ### CLI (official) Install the command, then confirm it runs. ```sh npm install -g @webflow/webflow-cli webflow --version ``` Run `webflow forms submissions`. ### API (official) - Base URL: https://api.webflow.com/v2 - Endpoint: `GET /sites/{site_id}/forms/{form_id}/submissions` - Auth: send the header `Authorization: Bearer $WEBFLOW_API_TOKEN` - Docs: https://developers.webflow.com/data/reference/rest-introduction Before doing anything else, make one read-only call to confirm access. ## Rules - Ask the user before anything that sends messages, costs money, or changes data. - Never print API keys. --- ref: tool:webflow/publish-cms-items name: Publish CMS items company: company:webflow workflows: [] access: [mcp, cli, api] tags: [capability:publish-content, category:cms, has:api, has:cli, has:mcp] docs: https://developers.webflow.com/data/reference/cms/collection-items/staged-items/publish-item updated: 2026-09-27 --- # Publish CMS items Publishes one or more items in a CMS collection, making them live on the site. On the MCP server, use the `publish_collection_items` action of `data_cms_tool` with `collection_id` and the `itemIds`; the CLI takes `--collection` and a comma-separated `--items` list. Publishing a draft item sets its `isDraft` to `false`. ## Set up Use the first option your agent supports. ### MCP (official, remote) Add this server to your agent's MCP settings, then sign in when asked. ```json { "mcpServers": { "webflow": { "url": "https://mcp.webflow.com/mcp" } } } ``` Call the MCP tool `data_cms_tool`. Server URL: https://mcp.webflow.com/mcp ### CLI (official) Install the command, then confirm it runs. ```sh npm install -g @webflow/webflow-cli webflow --version ``` Run `webflow cms items publish`. ### API (official) - Base URL: https://api.webflow.com/v2 - Endpoint: `POST /collections/{collection_id}/items/publish` - Auth: send the header `Authorization: Bearer $WEBFLOW_API_TOKEN` - Docs: https://developers.webflow.com/data/reference/rest-introduction Before doing anything else, make one read-only call to confirm access. ## Rules - Ask the user before anything that sends messages, costs money, or changes data. - Never print API keys. --- ref: tool:webflow/publish-site name: Publish a site company: company:webflow workflows: [] access: [mcp, cli, api] tags: [capability:publish-content, category:cms, has:api, has:cli, has:mcp] docs: https://developers.webflow.com/data/reference/sites/publish updated: 2026-09-27 --- # Publish a site Publishes a site's latest changes, or one page, to its Webflow subdomain or chosen custom domains. On the MCP server, use the `publish_site` action of `data_sites_tool` with `site_id`. The API needs `customDomains` (custom domain IDs) or `publishToWebflowSubdomain: true`; the CLI publishes to the Webflow subdomain unless you pass `--domains`, publishes one page with `--page`, and previews with `--dry-run`. Publishing puts every pending change live, so confirm with the user first. ## Set up Use the first option your agent supports. ### MCP (official, remote) Add this server to your agent's MCP settings, then sign in when asked. ```json { "mcpServers": { "webflow": { "url": "https://mcp.webflow.com/mcp" } } } ``` Call the MCP tool `data_sites_tool`. Server URL: https://mcp.webflow.com/mcp ### CLI (official) Install the command, then confirm it runs. ```sh npm install -g @webflow/webflow-cli webflow --version ``` Run `webflow sites publish`. ### API (official) - Base URL: https://api.webflow.com/v2 - Endpoint: `POST /sites/{site_id}/publish` - Auth: send the header `Authorization: Bearer $WEBFLOW_API_TOKEN` - Docs: https://developers.webflow.com/data/reference/rest-introduction Before doing anything else, make one read-only call to confirm access. ## Rules - Ask the user before anything that sends messages, costs money, or changes data. - Never print API keys. --- ref: tool:webflow/update-cms-items name: Update CMS items company: company:webflow workflows: [] access: [mcp, cli, api] tags: [capability:publish-content, category:cms, has:api, has:cli, has:mcp] docs: https://developers.webflow.com/data/reference/cms/collection-items/staged-items/update-items updated: 2026-09-27 --- # Update CMS items Updates the fields of one or more items in a CMS collection, holding changes to published items in draft until they are published. On the MCP server, use the `update_collection_items` action of `data_cms_tool` with `collection_id` and each item's `id` and `fieldData`; the CLI updates one item at a time with `--collection`, `--item` and `--data`. A published item keeps its live version and shows "Changes in draft" until you publish it, so follow an update with a publish when the change should go live. ## Set up Use the first option your agent supports. ### MCP (official, remote) Add this server to your agent's MCP settings, then sign in when asked. ```json { "mcpServers": { "webflow": { "url": "https://mcp.webflow.com/mcp" } } } ``` Call the MCP tool `data_cms_tool`. Server URL: https://mcp.webflow.com/mcp ### CLI (official) Install the command, then confirm it runs. ```sh npm install -g @webflow/webflow-cli webflow --version ``` Run `webflow cms items update`. ### API (official) - Base URL: https://api.webflow.com/v2 - Endpoint: `PATCH /collections/{collection_id}/items` - Auth: send the header `Authorization: Bearer $WEBFLOW_API_TOKEN` - Docs: https://developers.webflow.com/data/reference/rest-introduction Before doing anything else, make one read-only call to confirm access. ## Rules - Ask the user before anything that sends messages, costs money, or changes data. - Never print API keys. --- ref: tool:zapier/find-actions name: Find actions in an app company: company:zapier workflows: [] access: [mcp, cli] tags: [capability:automate-workflows, category:automation, has:cli, has:mcp] docs: https://docs.zapier.com/mcp/overview/how-tools-work updated: 2026-09-27 --- # Find actions in an app Returns the actions Zapier can run in an app, such as sending a message or finding a record, so the right one can be enabled and run. On the MCP server, `discover_zapier_actions` searches apps and actions for the task at hand; add the one you need as a tool with `enable_zapier_action`. On the CLI, `zapier-sdk list-actions ` lists an app's actions with each one's key and type (narrow it with `--action-type write` or `--action-type search`), and `zapier-sdk list-action-input-fields ` shows the inputs an action needs. Discover app and action keys at runtime rather than hardcoding them. ## Set up Use the first option your agent supports. ### MCP (official, remote) Add this server to your agent's MCP settings, then sign in when asked. ```json { "mcpServers": { "zapier": { "url": "https://mcp.zapier.com/api/v1/connect" } } } ``` Call the MCP tool `discover_zapier_actions`. Server URL: https://mcp.zapier.com/api/v1/connect ### CLI (official) Install the command, then confirm it runs. ```sh npm install -g @zapier/zapier-sdk-cli zapier-sdk --version ``` Run `zapier-sdk list-actions`. Before doing anything else, make one read-only call to confirm access. ## Rules - Ask the user before anything that sends messages, costs money, or changes data. - Never print API keys. --- ref: tool:zapier/run-search-action name: Run a search action in an app company: company:zapier workflows: [] access: [mcp, cli] tags: [capability:automate-workflows, category:automation, has:cli, has:mcp] docs: https://docs.zapier.com/mcp/overview/how-tools-work updated: 2026-09-27 --- # Run a search action in an app Runs one read or search action in an app connected to Zapier, such as finding an email or looking up a contact, and returns what it finds. On the CLI, pass the app, the action's type (`search` for lookups) and its key, with `--connection` and `--inputs` as JSON; find an app's search actions with `zapier-sdk list-actions --action-type search`. Each successful MCP tool call uses two tasks from the Zapier plan. ## Set up Use the first option your agent supports. ### MCP (official, remote) Add this server to your agent's MCP settings, then sign in when asked. ```json { "mcpServers": { "zapier": { "url": "https://mcp.zapier.com/api/v1/connect" } } } ``` Call the MCP tool `execute_zapier_read_action`. Server URL: https://mcp.zapier.com/api/v1/connect ### CLI (official) Install the command, then confirm it runs. ```sh npm install -g @zapier/zapier-sdk-cli zapier-sdk --version ``` Run `zapier-sdk run-action`. Before doing anything else, make one read-only call to confirm access. ## Rules - Ask the user before anything that sends messages, costs money, or changes data. - Never print API keys. --- ref: tool:zapier/run-write-action name: Run a write action in an app company: company:zapier workflows: [] access: [mcp, cli] tags: [capability:automate-workflows, category:automation, has:cli, has:mcp] docs: https://docs.zapier.com/mcp/overview/how-tools-work updated: 2026-09-27 --- # Run a write action in an app Runs one write action in an app connected to Zapier, such as sending a message, creating a task or updating a record, and returns the result. On the MCP server the action runs through the app's default connection; to use another, look up its ID with `list_zapier_connections` and pass it as `connection_id`. On the CLI, pass the app, `write` and the action key, with `--connection` (an ID from `zapier-sdk list-connections`) and `--inputs` as JSON, as in `zapier-sdk run-action google-sheets write add_row`. Each successful MCP tool call uses two tasks from the Zapier plan. A write reaches real people and records: confirm the inputs first. ## Set up Use the first option your agent supports. ### MCP (official, remote) Add this server to your agent's MCP settings, then sign in when asked. ```json { "mcpServers": { "zapier": { "url": "https://mcp.zapier.com/api/v1/connect" } } } ``` Call the MCP tool `execute_zapier_write_action`. Server URL: https://mcp.zapier.com/api/v1/connect ### CLI (official) Install the command, then confirm it runs. ```sh npm install -g @zapier/zapier-sdk-cli zapier-sdk --version ``` Run `zapier-sdk run-action`. Before doing anything else, make one read-only call to confirm access. ## Rules - Ask the user before anything that sends messages, costs money, or changes data. - Never print API keys. --- ref: tool:zendesk/create-or-update-organization name: Create or update an organization company: company:zendesk workflows: [] access: [api] tags: [capability:manage-crm, category:support, has:api] docs: https://developer.zendesk.com/api-reference/ticketing/organizations/organizations/#create-or-update-organization updated: 2026-09-27 --- # Create or update an organization Creates an organization, or updates the one that matches its ID or external ID, and returns it. Pass `id` or `external_id` to update an existing organization: the name is never used for matching, and without either one an existing name returns a duplicate error. Agents can call it, with restrictions on some actions. ## Set up Use the first option your agent supports. ### API (official) - Base URL: https://{subdomain}.zendesk.com - Endpoint: `POST /api/v2/organizations/create_or_update` - Auth: send the header `Authorization: Bearer $ZENDESK_OAUTH_TOKEN` - Get a key: https://developer.zendesk.com/documentation/authentication/oauth-migration/#getting-your-first-token - Docs: https://developer.zendesk.com/api-reference/ticketing/introduction/ Before doing anything else, make one read-only call to confirm access. ## Rules - Ask the user before anything that sends messages, costs money, or changes data. - Never print API keys. --- ref: tool:zendesk/create-or-update-user name: Create or update a user company: company:zendesk workflows: [] access: [api] tags: [capability:manage-crm, category:support, has:api] docs: https://developer.zendesk.com/api-reference/ticketing/users/users/#create-or-update-user updated: 2026-09-27 --- # Create or update a user Creates a user, an end user unless you set a role, or updates the one that matches the email or external ID, and returns the full user. The response is 201 when the user is created and 200 when an existing user is updated. Add `"skip_verify_email": true` to create a user without sending a verification email. Needs an admin, or an agent whose custom role can manage end users or team members. ## Set up Use the first option your agent supports. ### API (official) - Base URL: https://{subdomain}.zendesk.com - Endpoint: `POST /api/v2/users/create_or_update` - Auth: send the header `Authorization: Bearer $ZENDESK_OAUTH_TOKEN` - Get a key: https://developer.zendesk.com/documentation/authentication/oauth-migration/#getting-your-first-token - Docs: https://developer.zendesk.com/api-reference/ticketing/introduction/ Before doing anything else, make one read-only call to confirm access. ## Rules - Ask the user before anything that sends messages, costs money, or changes data. - Never print API keys. --- ref: tool:zendesk/create-ticket name: Create a ticket company: company:zendesk workflows: [] access: [api] tags: [capability:manage-tasks, category:support, has:api] docs: https://developer.zendesk.com/api-reference/ticketing/tickets/tickets/#create-ticket updated: 2026-09-27 --- # Create a ticket Creates a support ticket from a first comment, with an optional subject, requester, priority, tags and custom fields, and returns the ticket. Send a `ticket` object whose only required property is `comment`; use `html_body` instead of `body` for HTML. Set `requester` to an email or a name and email: a requester who doesn't exist yet may be created, depending on account settings. Send an `Idempotency-Key` header so a retry can't create a duplicate ticket. Needs an agent's token. ## Set up Use the first option your agent supports. ### API (official) - Base URL: https://{subdomain}.zendesk.com - Endpoint: `POST /api/v2/tickets` - Auth: send the header `Authorization: Bearer $ZENDESK_OAUTH_TOKEN` - Get a key: https://developer.zendesk.com/documentation/authentication/oauth-migration/#getting-your-first-token - Docs: https://developer.zendesk.com/api-reference/ticketing/introduction/ Before doing anything else, make one read-only call to confirm access. ## Rules - Ask the user before anything that sends messages, costs money, or changes data. - Never print API keys. --- ref: tool:zendesk/search name: Search tickets, users and organizations company: company:zendesk workflows: [] access: [api] tags: [capability:research-accounts, category:support, has:api] docs: https://developer.zendesk.com/api-reference/ticketing/ticket-management/search/#list-search-results updated: 2026-09-27 --- # Search tickets, users and organizations Returns the tickets, users, organizations or groups that match a query in Zendesk's search syntax. Narrow the query by type and field, such as `type:ticket status:open` or `type:user`, and add `sort_by` and `sort_order` to order the results. It returns at most 1,000 results per query and 100 per page; for more, use the Export Search Results endpoint, `GET /api/v2/search/export`. ## Set up Use the first option your agent supports. ### API (official) - Base URL: https://{subdomain}.zendesk.com - Endpoint: `GET /api/v2/search?query={query}` - Auth: send the header `Authorization: Bearer $ZENDESK_OAUTH_TOKEN` - Get a key: https://developer.zendesk.com/documentation/authentication/oauth-migration/#getting-your-first-token - Docs: https://developer.zendesk.com/api-reference/ticketing/introduction/ Before doing anything else, make one read-only call to confirm access. ## Rules - Ask the user before anything that sends messages, costs money, or changes data. - Never print API keys. --- ref: tool:zendesk/update-ticket name: Update a ticket company: company:zendesk workflows: [] access: [api] tags: [capability:manage-tasks, category:support, has:api] docs: https://developer.zendesk.com/api-reference/ticketing/tickets/tickets/#update-ticket updated: 2026-09-27 --- # Update a ticket Changes a ticket's status, priority, assignee, tags or fields, and can add a public reply or an internal note. Send only the properties to change, in a `ticket` object. A `comment` with `public: true` is a reply the requester can see; `public: false` is an internal note. A ticket holds at most 5,000 comments. This endpoint has its own rate limit, separate from the account-wide one, and returns 429 when it runs out. ## Set up Use the first option your agent supports. ### API (official) - Base URL: https://{subdomain}.zendesk.com - Endpoint: `PUT /api/v2/tickets/{ticket_id}` - Auth: send the header `Authorization: Bearer $ZENDESK_OAUTH_TOKEN` - Get a key: https://developer.zendesk.com/documentation/authentication/oauth-migration/#getting-your-first-token - Docs: https://developer.zendesk.com/api-reference/ticketing/introduction/ Before doing anything else, make one read-only call to confirm access. ## Rules - Ask the user before anything that sends messages, costs money, or changes data. - Never print API keys. --- ref: tool:zoom/add-webinar-registrant name: Add a webinar registrant company: company:zoom workflows: [] access: [api] tags: [capability:host-meetings, category:video, has:api] docs: "https://developers.zoom.us/docs/api/meetings/#tag/webinars/POST/webinars/{webinarId}/registrants" updated: 2026-09-27 --- # Add a webinar registrant Registers a person for a webinar and returns their registrant ID and personal join URL. `email` and `first_name` are required. Needs a Pro or higher plan with the Webinar add-on. ## Set up Use the first option your agent supports. ### API (official) - Base URL: https://api.zoom.us/v2 - Endpoint: `POST /webinars/{webinarId}/registrants` - Auth: OAuth; sign in when the agent asks - Docs: https://developers.zoom.us/docs/api/ Before doing anything else, make one read-only call to confirm access. ## Rules - Ask the user before anything that sends messages, costs money, or changes data. - Never print API keys. --- ref: tool:zoom/create-meeting name: Create a meeting company: company:zoom workflows: [] access: [mcp, api] tags: [capability:host-meetings, category:video, has:api, has:mcp] docs: "https://developers.zoom.us/docs/api/meetings/#tag/meetings/POST/users/{userId}/meetings" updated: 2026-09-27 --- # Create a meeting Schedules a meeting for a user and returns its ID, the join URL to share and the host's start URL. For user-level apps, pass `me` instead of a user ID. Share only the `join_url`; the `start_url` is for the host and, for regular users, expires after two hours. The call allows 100 requests per meeting host per day. ## Set up Use the first option your agent supports. ### MCP (official, remote) Add this server to your agent's MCP settings, then sign in when asked. ```json { "mcpServers": { "zoom": { "url": "https://mcp.zoom.us/mcp/zoom/streamable" } } } ``` Call the MCP tool `meeting_create`. Server URL: https://mcp.zoom.us/mcp/zoom/streamable ### API (official) - Base URL: https://api.zoom.us/v2 - Endpoint: `POST /users/{userId}/meetings` - Auth: OAuth; sign in when the agent asks - Docs: https://developers.zoom.us/docs/api/ Before doing anything else, make one read-only call to confirm access. ## Rules - Ask the user before anything that sends messages, costs money, or changes data. - Never print API keys. --- ref: tool:zoom/create-webinar name: Create a webinar company: company:zoom workflows: [] access: [api] tags: [capability:host-meetings, category:video, has:api] docs: "https://developers.zoom.us/docs/api/meetings/#tag/webinars/POST/users/{userId}/webinars" updated: 2026-09-27 --- # Create a webinar Schedules a webinar for a webinar host and returns its ID, join URL and, when registration is on, its registration URL. For user-level apps, pass `me` instead of a user ID. Needs a Pro or higher plan with the Webinar add-on, and allows 100 requests per host per day. ## Set up Use the first option your agent supports. ### API (official) - Base URL: https://api.zoom.us/v2 - Endpoint: `POST /users/{userId}/webinars` - Auth: OAuth; sign in when the agent asks - Docs: https://developers.zoom.us/docs/api/ Before doing anything else, make one read-only call to confirm access. ## Rules - Ask the user before anything that sends messages, costs money, or changes data. - Never print API keys. --- ref: tool:zoom/list-webinar-absentees name: List webinar absentees company: company:zoom workflows: [workflow:webinar-follow-up] access: [api] tags: [capability:host-meetings, category:video, has:api] docs: "https://developers.zoom.us/docs/api/meetings/#tag/webinars/GET/past_webinars/{webinarId}/absentees" updated: 2026-09-27 --- # List webinar absentees Returns the registrants of a past webinar who did not attend, with their names and emails. Pass `occurrence_id` for one occurrence of a recurring webinar, and page with `next_page_token`. Needs a Pro or higher plan with the Webinar add-on. ## Set up Use the first option your agent supports. ### API (official) - Base URL: https://api.zoom.us/v2 - Endpoint: `GET /past_webinars/{webinarId}/absentees` - Auth: OAuth; sign in when the agent asks - Docs: https://developers.zoom.us/docs/api/ Before doing anything else, make one read-only call to confirm access. ## Rules - Ask the user before anything that sends messages, costs money, or changes data. - Never print API keys. --- ref: tool:zoom/list-webinar-participants name: List webinar participants company: company:zoom workflows: [workflow:webinar-follow-up] access: [api] tags: [capability:host-meetings, category:video, has:api] docs: "https://developers.zoom.us/docs/api/meetings/#tag/webinars/GET/past_webinars/{webinarId}/participants" updated: 2026-09-27 --- # List webinar participants Returns the people who attended a past webinar, with name, email, join and leave times and seconds attended. `duration` is in seconds per session: someone who leaves and rejoins appears again with a new entry, so add their durations up. `user_email` is empty for people outside the host's account, with some exceptions, so pass `include_fields=registrant_id` to match attendees to registrants. Needs a Pro or higher plan with the Webinar add-on. ## Set up Use the first option your agent supports. ### API (official) - Base URL: https://api.zoom.us/v2 - Endpoint: `GET /past_webinars/{webinarId}/participants` - Auth: OAuth; sign in when the agent asks - Docs: https://developers.zoom.us/docs/api/ Before doing anything else, make one read-only call to confirm access. ## Rules - Ask the user before anything that sends messages, costs money, or changes data. - Never print API keys. --- ref: tool:zoominfo/enrich-company name: Enrich a company company: company:zoominfo workflows: [] access: [mcp, cli, api] tags: [capability:research-accounts, category:data-provider, has:api, has:cli, has:mcp] docs: https://docs.gtm.ai/reference/enrichinterface_enrichcompany updated: 2026-09-27 --- # Enrich a company Returns firmographics such as industry, revenue, employee count and growth, funding, parent company and competitors for up to 25 companies, matched by ZoomInfo company ID, name, website or ticker. List the fields you want back in `outputFields`. Each company returned costs one credit unless it was already enriched in the last 12 months, and no match costs nothing. ## Set up Use the first option your agent supports. ### MCP (official, remote) Add this server to your agent's MCP settings, then sign in when asked. ```json { "mcpServers": { "zoominfo": { "url": "https://mcp.zoominfo.com/mcp" } } } ``` Call the MCP tool `enrich_companies`. Server URL: https://mcp.zoominfo.com/mcp ### CLI (official) Install the command, then confirm it runs. ```sh brew install zoominfo/gtm-ai/gtm-ai-cli gtm --version ``` Run `gtm companies enrich`. ### API (official) - Base URL: https://api.zoominfo.com/gtm - Endpoint: `POST /data/v1/companies/enrich` - Auth: OAuth; sign in when the agent asks - Docs: https://docs.gtm.ai/reference/api-overview Before doing anything else, make one read-only call to confirm access. ## Rules - Ask the user before anything that sends messages, costs money, or changes data. - Never print API keys. --- ref: tool:zoominfo/enrich-person name: Enrich a person company: company:zoominfo workflows: [] access: [mcp, cli, api] tags: [capability:enrich-contacts, category:data-provider, has:api, has:cli, has:mcp] docs: https://docs.gtm.ai/reference/enrichinterface_enrichcontact updated: 2026-09-27 --- # Enrich a person Returns email, phone numbers, job title, management level and employer for up to 25 people per call, matched by ZoomInfo person ID, email, phone, profile URL, or name and company. For the surest match, search first and enrich by person ID. List the fields you want back in `outputFields`; `requiredFields` drops any match that lacks one of them. Each record returned costs one credit unless it was already enriched in the last 12 months, and a request that finds no match costs nothing. ## Set up Use the first option your agent supports. ### MCP (official, remote) Add this server to your agent's MCP settings, then sign in when asked. ```json { "mcpServers": { "zoominfo": { "url": "https://mcp.zoominfo.com/mcp" } } } ``` Call the MCP tool `enrich_contacts`. Server URL: https://mcp.zoominfo.com/mcp ### CLI (official) Install the command, then confirm it runs. ```sh brew install zoominfo/gtm-ai/gtm-ai-cli gtm --version ``` Run `gtm contacts enrich`. ### API (official) - Base URL: https://api.zoominfo.com/gtm - Endpoint: `POST /data/v1/contacts/enrich` - Auth: OAuth; sign in when the agent asks - Docs: https://docs.gtm.ai/reference/api-overview Before doing anything else, make one read-only call to confirm access. ## Rules - Ask the user before anything that sends messages, costs money, or changes data. - Never print API keys. --- ref: tool:zoominfo/search-companies name: Search companies company: company:zoominfo workflows: [] access: [mcp, cli, api] tags: [capability:build-audience, category:data-provider, has:api, has:cli, has:mcp] docs: https://docs.gtm.ai/reference/searchinterface_searchcompany updated: 2026-09-27 --- # Search companies Returns companies that match industry, location, employee count, revenue, funding and other firmographic filters, with name, website, location, revenue and employee count. Search costs no credits and needs at least one filter. Resolve filter values such as industries and metro areas with the lookup tool first, then enrich the companies you keep for their full profile. ## Set up Use the first option your agent supports. ### MCP (official, remote) Add this server to your agent's MCP settings, then sign in when asked. ```json { "mcpServers": { "zoominfo": { "url": "https://mcp.zoominfo.com/mcp" } } } ``` Call the MCP tool `search_companies`. Server URL: https://mcp.zoominfo.com/mcp ### CLI (official) Install the command, then confirm it runs. ```sh brew install zoominfo/gtm-ai/gtm-ai-cli gtm --version ``` Run `gtm companies search`. ### API (official) - Base URL: https://api.zoominfo.com/gtm - Endpoint: `POST /data/v1/companies/search` - Auth: OAuth; sign in when the agent asks - Docs: https://docs.gtm.ai/reference/api-overview Before doing anything else, make one read-only call to confirm access. ## Rules - Ask the user before anything that sends messages, costs money, or changes data. - Never print API keys. --- ref: tool:zoominfo/search-intent name: Find companies showing buyer intent company: company:zoominfo workflows: [] access: [mcp, cli, api] tags: [capability:track-intent, category:data-provider, has:api, has:cli, has:mcp] docs: https://docs.gtm.ai/reference/searchinterface_searchintent updated: 2026-09-27 --- # Find companies showing buyer intent Returns intent signals for up to 50 topics, each naming a company researching the topic with its signal score, audience strength and date, plus recommended contacts there. Your ZoomInfo package must include Intent. Topic names must match ZoomInfo's exactly, so look them up first (`gtm lookup --field intent-topics`), and narrow results with firmographic filters and a minimum signal score between 60 and 100. The search consumes no credits, but each signal returned counts as a record toward your limits. ## Set up Use the first option your agent supports. ### MCP (official, remote) Add this server to your agent's MCP settings, then sign in when asked. ```json { "mcpServers": { "zoominfo": { "url": "https://mcp.zoominfo.com/mcp" } } } ``` Call the MCP tool `search_intent`. Server URL: https://mcp.zoominfo.com/mcp ### CLI (official) Install the command, then confirm it runs. ```sh brew install zoominfo/gtm-ai/gtm-ai-cli gtm --version ``` Run `gtm intent search`. ### API (official) - Base URL: https://api.zoominfo.com/gtm - Endpoint: `POST /data/v1/intent/search` - Auth: OAuth; sign in when the agent asks - Docs: https://docs.gtm.ai/reference/api-overview Before doing anything else, make one read-only call to confirm access. ## Rules - Ask the user before anything that sends messages, costs money, or changes data. - Never print API keys. --- ref: tool:zoominfo/search-people name: Search for people company: company:zoominfo workflows: [] access: [mcp, cli, api] tags: [capability:build-audience, category:data-provider, has:api, has:cli, has:mcp] docs: https://docs.gtm.ai/reference/searchinterface_searchcontact updated: 2026-09-27 --- # Search for people Returns contacts who match job title, management level, department, company and location filters, with their title and accuracy score but not their emails or phone numbers. Search costs no credits, though each request counts toward your request limits. Filter values such as industries, departments and management levels must be ZoomInfo's own: resolve them first with the `lookup` MCP tool, `gtm lookup` or the Lookup Data endpoint. Each result flags whether ZoomInfo holds an email, direct phone or mobile phone; enrich the people you keep to get them. ## Set up Use the first option your agent supports. ### MCP (official, remote) Add this server to your agent's MCP settings, then sign in when asked. ```json { "mcpServers": { "zoominfo": { "url": "https://mcp.zoominfo.com/mcp" } } } ``` Call the MCP tool `search_contacts`. Server URL: https://mcp.zoominfo.com/mcp ### CLI (official) Install the command, then confirm it runs. ```sh brew install zoominfo/gtm-ai/gtm-ai-cli gtm --version ``` Run `gtm contacts search`. ### API (official) - Base URL: https://api.zoominfo.com/gtm - Endpoint: `POST /data/v1/contacts/search` - Auth: OAuth; sign in when the agent asks - Docs: https://docs.gtm.ai/reference/api-overview Before doing anything else, make one read-only call to confirm access. ## Rules - Ask the user before anything that sends messages, costs money, or changes data. - Never print API keys. --- ref: workflow:at-risk-customer-rescue title: Spot and recover at-risk customer accounts author: thedogwiththedataonit tools: [tool:mixpanel/run-query, tool:stripe/list-customers, tool:stripe/list-subscriptions, tool:slack/post-message, tool:brew/generate-email] tags: [capability:route-alerts, capability:track-product-usage, capability:track-revenue, capability:write-copy, channel:chat, channel:email, has:mcp, motion:midbound] updated: 2026-09-27 --- # Spot and recover at-risk customer accounts Set up the tools below, then run the steps in order for the user. ## Inputs Ask the user for these before you start. - `drop_threshold`: the usage drop that counts, e.g. 40% - `renewal_window`: how soon renewal is, e.g. 90 days - `cs_channel`: where to escalate, e.g. #customer-success ## Set up ### Run a query (Mixpanel, tool:mixpanel/run-query) Use the MCP server. Add it to your agent's MCP settings, then sign in when asked. ```json { "mcpServers": { "mixpanel": { "url": "https://mcp.mixpanel.com/mcp" } } } ``` Call the MCP tool `Run-Query`. ### Stripe (tool:stripe/list-customers, tool:stripe/list-subscriptions) Use the first option your agent supports. #### MCP (official, remote) Add this server to your agent's MCP settings, then sign in when asked. ```json { "mcpServers": { "stripe": { "url": "https://mcp.stripe.com" } } } ``` - List customers: call the MCP tool `stripe_api_read` - List subscriptions: call the MCP tool `stripe_api_read` #### CLI (official) Install the command, then confirm it runs. ```sh npm install -g @stripe/cli stripe --version ``` - List customers: run `stripe customers list` - List subscriptions: run `stripe subscriptions list` ### Post a message (Slack, tool:slack/post-message) Use the first option your agent supports. #### MCP (official, remote) Add this server to your agent's MCP settings, then sign in when asked. ```json { "mcpServers": { "slack": { "url": "https://mcp.slack.com/mcp" } } } ``` Call the MCP tool `slack_send_message`. #### CLI (official) Install the command, then confirm it runs. ```sh curl -fsSL https://downloads.slack-edge.com/slack-cli/install.sh | bash slack --version ``` Run `slack api chat.postMessage`. Set `$SLACK_BOT_TOKEN` in your environment first (get a key: https://api.slack.com/apps). ### Generate an email (Brew, tool:brew/generate-email) Use the first option your agent supports. #### MCP (official, remote) Add this server to your agent's MCP settings, then sign in when asked. ```json { "mcpServers": { "brew": { "url": "https://brew.new/api/mcp" } } } ``` Call the MCP tool `create_email`. #### CLI (official) Install the command, then confirm it runs. ```sh brew install getbrew/tap/brew-cli brew-cli --version ``` Run `brew-cli emails generate`. Set `$BREW_API_KEY` in your environment first (get a key: https://brew.new/settings/api). Make one read-only call to each tool to confirm access. ## Steps 1. **Detect drops** with Run a query (Mixpanel). List accounts whose usage fell more than `drop_threshold` versus the prior 30 days. Keep an email for each account, such as its admin's. 2. **Find their customers** with List customers (Stripe). Look up each email, as stored and lowercased, and keep every customer ID it returns. 3. **Check renewals** with List subscriptions (Stripe). For each customer, keep the accounts whose subscription item's `current_period_end` falls within `renewal_window`. 4. **Escalate** with Post a message (Slack). Post one message per account to `cs_channel` with the usage numbers and renewal date. 5. **Draft the check-in** with Generate an email (Brew). Draft a short check-in email from the account manager for each account. Show the drafts to the user. ## Done when - Every at-risk account has a Slack post and a drafted email. - The user has the list ordered by renewal date. ## Rules - Only use the tools listed above. - Ask the user before anything that sends messages, costs money, or changes data. - Never print API keys. --- ref: workflow:champion-job-change-loop title: Reconnect when a product champion changes jobs author: thedogwiththedataonit tools: [tool:apollo/enrich-person, tool:clay/run-routine, tool:attio/upsert-record, tool:attio/create-record, tool:attio/create-note, tool:anthropic/create-message] tags: [capability:enrich-contacts, capability:manage-crm, capability:write-copy, channel:email, channel:linkedin, has:api, motion:outbound] updated: 2026-09-27 --- # Reconnect when a product champion changes jobs Set up the tools below, then run the steps in order for the user. ## Inputs Ask the user for this before you start. - `champion_list`: names and previous companies of past champions ## Set up ### Enrich a person (Apollo, tool:apollo/enrich-person) Use the first option your agent supports. #### MCP (official, remote) Add this server to your agent's MCP settings, then sign in when asked. ```json { "mcpServers": { "apollo": { "url": "https://mcp.apollo.io/mcp" } } } ``` Call the MCP tool `apollo_people_match`. #### CLI (official) Install the command, then confirm it runs. ```sh brew install apolloio/apollo-io-cli/apollo-io-cli apollo --version ``` Run `apollo people enrich`. ### Run a routine (Clay, tool:clay/run-routine) Use the first option your agent supports. #### CLI (official) Install the command, then confirm it runs. ```sh npm install --global @clay-run/cli clay --version ``` Run `clay routines runs start`. #### API (official) - Base URL: https://api.clay.com/public/v0 - Endpoint: `POST /routines/{routine_id}/run` - Auth: send the header `clay-api-key: $CLAY_PUBLIC_API_KEY` - Get a key: https://app.clay.com/workspaces/~/settings/account?accountTab=api-keys-beta ### Attio (tool:attio/upsert-record, tool:attio/create-record, tool:attio/create-note) Use the first option your agent supports. #### MCP (official, remote) Add this server to your agent's MCP settings, then sign in when asked. ```json { "mcpServers": { "attio": { "url": "https://mcp.attio.com/mcp" } } } ``` - Upsert a record: call the MCP tool `upsert-record` - Create a record: call the MCP tool `create-record` - Create a note: call the MCP tool `create-note` #### API (official) - Base URL: https://api.attio.com - Upsert a record: `PUT /v2/objects/{object}/records` - Create a record: `POST /v2/objects/{object}/records` - Create a note: `POST /v2/notes` - Auth: send the header `Authorization: Bearer $ATTIO_API_KEY` - Get a key: https://attio.com/help/reference/apps/generating-an-api-key ### Create a message (Anthropic, tool:anthropic/create-message) Use the first option your agent supports. #### CLI (official) Install the command, then confirm it runs. ```sh curl -fsSL https://claude.ai/install.sh | bash claude --version ``` Run `claude -p`. #### API (official) - Base URL: https://api.anthropic.com - Endpoint: `POST /v1/messages` - Auth: send the header `x-api-key: $ANTHROPIC_API_KEY` - Get a key: https://platform.claude.com/settings/keys Make one read-only call to each tool to confirm access. ## Steps 1. **Detect the move** with Enrich a person (Apollo). For each person in `champion_list`, find their current company and title. Keep only people who moved in the last 6 months. 2. **Size the new company** with Run a routine (Clay). For each new company, add size, industry and funding stage. 3. **Add them to the CRM** with Upsert a record (Attio). Create or update each new company, matched on its domain, and each champion, matched on their email. 4. **Open a deal** with Create a record (Attio). Create a deal on the new company with the champion as the contact. 5. **Note the history** with Create a note (Attio). Add a note to each deal describing the previous relationship. 6. **Draft the outreach** with Create a message (Anthropic). For each champion, draft a short note for LinkedIn or email that congratulates them and names the work you did together. Show the drafts to the user. ## Done when - Every champion who moved has a deal on their new company. - Each has a drafted note, and the user has the list of moves. ## Rules - Only use the tools listed above. - Ask the user before anything that sends messages, costs money, or changes data. - Never print API keys. --- ref: workflow:competitor-intent title: Follow up when accounts research a competitor author: thedogwiththedataonit tools: [tool:firecrawl/scrape-url, tool:g2/browse-product-buyer-intent, tool:attio/list-records, tool:brew/generate-email] tags: [capability:manage-crm, capability:scrape-web, capability:track-intent, capability:write-copy, channel:email, has:api, has:mcp, motion:outbound] updated: 2026-09-27 --- # Follow up when accounts research a competitor Set up the tools below, then run the steps in order for the user. ## Inputs Ask the user for these before you start. - `competitor_domain`: the competitor to watch, e.g. competitor.example - `g2_product_id`: your product's id on G2 - `watch_list`: account domains with an open deal ## Set up ### Scrape a URL (Firecrawl, tool:firecrawl/scrape-url) Use the first option your agent supports. #### MCP (official, remote) Add this server to your agent's MCP settings, then sign in when asked. ```json { "mcpServers": { "firecrawl": { "url": "https://mcp.firecrawl.dev/v2/mcp-oauth" } } } ``` Call the MCP tool `firecrawl_scrape`. #### CLI (official) Install the command, then confirm it runs. ```sh npm install -g firecrawl-cli firecrawl --version ``` Run `firecrawl scrape`. Set `$FIRECRAWL_API_KEY` in your environment first (get a key: https://www.firecrawl.dev/app/api-keys). ### Browse buyer intent for a product (G2, tool:g2/browse-product-buyer-intent) Use the first option your agent supports. #### MCP (official, remote) Add this server to your agent's MCP settings, then sign in when asked. ```json { "mcpServers": { "g2": { "url": "https://mcp.g2.com/mcp" } } } ``` Call the MCP tool `browse_product_buyer_intent`. #### API (official) - Base URL: https://data.g2.com - Endpoint: `GET /api/v2/products/{subject_product_id}/buyer_intent` - Auth: send the header `Authorization: Bearer $G2_API_KEY` - Get a key: https://my.g2.com/developers ### List records (Attio, tool:attio/list-records) Use the first option your agent supports. #### MCP (official, remote) Add this server to your agent's MCP settings, then sign in when asked. ```json { "mcpServers": { "attio": { "url": "https://mcp.attio.com/mcp" } } } ``` Call the MCP tool `list-records`. #### API (official) - Base URL: https://api.attio.com - Endpoint: `POST /v2/objects/{object}/records/query` - Auth: send the header `Authorization: Bearer $ATTIO_API_KEY` - Get a key: https://attio.com/help/reference/apps/generating-an-api-key ### Generate an email (Brew, tool:brew/generate-email) Use the first option your agent supports. #### MCP (official, remote) Add this server to your agent's MCP settings, then sign in when asked. ```json { "mcpServers": { "brew": { "url": "https://brew.new/api/mcp" } } } ``` Call the MCP tool `create_email`. #### CLI (official) Install the command, then confirm it runs. ```sh brew install getbrew/tap/brew-cli brew-cli --version ``` Run `brew-cli emails generate`. Set `$BREW_API_KEY` in your environment first (get a key: https://brew.new/settings/api). Make one read-only call to each tool to confirm access. ## Steps 1. **Read what changed** with Scrape a URL (Firecrawl). Fetch the pricing and changelog pages on `competitor_domain` and summarise what changed in the last month in five bullets. 2. **Find who is comparing** with Browse buyer intent for a product (G2). From `g2_product_id`, list the last 30 days' activity with the `company_domain` and `left_product_name` dimensions, and keep rows whose `left_product_name` is the competitor. Keep those in `watch_list`. 3. **Match open deals** with List records (Attio). For those accounts, find the records with an open deal. Keep the deal owner and stage. 4. **Write the comparison** with Generate an email (Brew). Draft one email per account that names a single concrete difference relevant to its stage. Show the drafts to the user. ## Done when - The user has the five-bullet competitor summary. - Every open deal researching the competitor has a drafted email. ## Rules - Only use the tools listed above. - Ask the user before anything that sends messages, costs money, or changes data. - Never print API keys. --- ref: workflow:content-download-nurture title: Turn content downloads into useful conversations author: thedogwiththedataonit tools: [tool:hubspot/search-crm-records, tool:brew/generate-email, tool:brew/send-email, tool:notion/create-page] tags: [capability:manage-crm, capability:manage-docs, capability:send-email, capability:write-copy, channel:email, has:api, has:mcp, motion:inbound] updated: 2026-09-27 --- # Turn content downloads into useful conversations Set up the tools below, then run the steps in order for the user. ## Inputs Ask the user for these before you start. - `content_asset`: the asset that was downloaded, e.g. The 2026 outbound benchmark - `follow_up_window`: how far back to look, e.g. 3 days - `nurture_log`: the Notion database that logs each send ## Set up ### Search CRM records (HubSpot, tool:hubspot/search-crm-records) Use the first option your agent supports. #### MCP (official, remote) Add this server to your agent's MCP settings, then sign in when asked. ```json { "mcpServers": { "hubspot": { "url": "https://mcp.hubspot.com" } } } ``` Call the MCP tool `search_crm_objects`. #### API (official) - Base URL: https://api.hubapi.com - Endpoint: `POST /crm/objects/2026-09/{objectType}/search` - Auth: send the header `Authorization: Bearer $HUBSPOT_API_KEY` ### Brew (tool:brew/generate-email, tool:brew/send-email) Use the first option your agent supports. #### MCP (official, remote) Add this server to your agent's MCP settings, then sign in when asked. ```json { "mcpServers": { "brew": { "url": "https://brew.new/api/mcp" } } } ``` - Generate an email: call the MCP tool `create_email` - Send an email: call the MCP tool `send_email` #### CLI (official) Install the command, then confirm it runs. ```sh brew install getbrew/tap/brew-cli brew-cli --version ``` - Generate an email: run `brew-cli emails generate` - Send an email: run `brew-cli emails send` Set `$BREW_API_KEY` in your environment first (get a key: https://brew.new/settings/api). ### Create a page (Notion, tool:notion/create-page) Use the first option your agent supports. #### MCP (official, remote) Add this server to your agent's MCP settings, then sign in when asked. ```json { "mcpServers": { "notion": { "url": "https://mcp.notion.com/mcp" } } } ``` Call the MCP tool `notion-create-pages`. #### CLI (official) Install the command, then confirm it runs. ```sh npm install --global ntn ntn --version ``` Run `ntn api v1/pages`. Set `$NOTION_API_TOKEN` in your environment first (get a key: https://www.notion.so/developers/tokens). Make one read-only call to each tool to confirm access. ## Steps 1. **Pull downloads** with Search CRM records (HubSpot). List contacts who downloaded `content_asset` within `follow_up_window`. Keep name, company and email. 2. **Write follow-ups** with Generate an email (Brew). Draft one email per contact that references a specific section of the asset. Show the drafts to the user. 3. **Send** with Send an email (Brew). Send each approved email to its contact. 4. **Log the send** with Create a page (Notion). Append one row per sent email to `nurture_log` with contact, asset and date. ## Done when - Every download in the window has a follow-up sent or declined. - The nurture log has one row per send. ## Rules - Only use the tools listed above. - Ask the user before anything that sends messages, costs money, or changes data. - Never print API keys. --- ref: workflow:executive-job-change title: Reach new executives in their first 90 days author: thedogwiththedataonit tools: [tool:apollo/search-people, tool:apollo/bulk-enrich-people, tool:anthropic/create-message, tool:hubspot/upsert-contacts, tool:hubspot/create-note] tags: [capability:build-audience, capability:enrich-contacts, capability:manage-crm, capability:write-copy, channel:email, has:api, motion:outbound] updated: 2026-09-27 --- # Reach new executives in their first 90 days Set up the tools below, then run the steps in order for the user. ## Inputs Ask the user for these before you start. - `target_titles`: the roles to watch, e.g. VP Marketing, Head of Growth - `target_accounts`: company domains to watch, e.g. acme.example, globex.example ## Set up ### Apollo (tool:apollo/search-people, tool:apollo/bulk-enrich-people) Use the first option your agent supports. #### MCP (official, remote) Add this server to your agent's MCP settings, then sign in when asked. ```json { "mcpServers": { "apollo": { "url": "https://mcp.apollo.io/mcp" } } } ``` - Search for people: call the MCP tool `apollo_mixed_people_api_search` - Enrich up to 10 people: call the MCP tool `apollo_people_bulk_match` #### CLI (official) Install the command, then confirm it runs. ```sh brew install apolloio/apollo-io-cli/apollo-io-cli apollo --version ``` - Search for people: run `apollo people search` - Enrich up to 10 people: run `apollo people bulk-enrich` ### Create a message (Anthropic, tool:anthropic/create-message) Use the first option your agent supports. #### CLI (official) Install the command, then confirm it runs. ```sh curl -fsSL https://claude.ai/install.sh | bash claude --version ``` Run `claude -p`. #### API (official) - Base URL: https://api.anthropic.com - Endpoint: `POST /v1/messages` - Auth: send the header `x-api-key: $ANTHROPIC_API_KEY` - Get a key: https://platform.claude.com/settings/keys ### HubSpot (tool:hubspot/upsert-contacts, tool:hubspot/create-note) For each call, use the first option your agent supports that lists it. #### MCP (official, remote) Add this server to your agent's MCP settings, then sign in when asked. ```json { "mcpServers": { "hubspot": { "url": "https://mcp.hubspot.com" } } } ``` - Create or update contacts: call the MCP tool `manage_crm_objects` #### API (official) - Base URL: https://api.hubapi.com - Create or update contacts: `POST /crm/objects/2026-09/contacts/batch/upsert` - Create a note: `POST /crm/objects/2026-09/notes` - Auth: send the header `Authorization: Bearer $HUBSPOT_API_KEY` Make one read-only call to each tool to confirm access. ## Steps 1. **Find new leaders** with Search for people (Apollo). Across `target_accounts`, find people with `target_titles`. 2. **Get their details** with Enrich up to 10 people (Apollo). Enrich them, up to 10 per call. Keep people who started in the last 90 days, with name, title, start date and work email. 3. **Draft a note** with Create a message (Anthropic). For each person, draft three lines about what a leader in that role usually fixes first. No pitch. Show the drafts to the user. 4. **Log it** with Create or update contacts (HubSpot). Create or update each contact. 5. **Attach the note** with Create a note (HubSpot). Attach each approved draft as a note on its contact. ## Done when - Every new leader has a contact record with a note. - The user has the list with start dates. ## Rules - Only use the tools listed above. - Ask the user before anything that sends messages, costs money, or changes data. - Never print API keys. --- ref: workflow:free-to-paid-activation title: Guide active free users toward their first paid moment author: thedogwiththedataonit tools: [tool:posthog/run-sql-query, tool:stripe/list-customers, tool:stripe/list-subscriptions, tool:brew/generate-email, tool:brew/send-email] tags: [capability:send-email, capability:track-product-usage, capability:track-revenue, capability:write-copy, channel:email, has:api, has:cli, has:mcp, motion:plg] updated: 2026-09-27 --- # Guide active free users toward their first paid moment Set up the tools below, then run the steps in order for the user. ## Inputs Ask the user for these before you start. - `activation_event`: the event that marks real usage, e.g. campaign_sent - `trial_plan`: the plan to offer, e.g. Pro, 14-day trial ## Set up ### Run a SQL query (PostHog, tool:posthog/run-sql-query) Use the first option your agent supports. #### MCP (official, remote) Add this server to your agent's MCP settings, then sign in when asked. ```json { "mcpServers": { "posthog": { "url": "https://mcp.posthog.com/mcp" } } } ``` Call the MCP tool `execute-sql`. #### CLI (official) Install the command, then confirm it runs. ```sh npm install -g @posthog/cli@latest posthog-cli --version ``` Run `posthog-cli api call execute-sql`. Set `$POSTHOG_CLI_API_KEY` in your environment first (get a key: https://app.posthog.com/settings/user-api-keys?preset=mcp_server). ### Stripe (tool:stripe/list-customers, tool:stripe/list-subscriptions) Use the first option your agent supports. #### MCP (official, remote) Add this server to your agent's MCP settings, then sign in when asked. ```json { "mcpServers": { "stripe": { "url": "https://mcp.stripe.com" } } } ``` - List customers: call the MCP tool `stripe_api_read` - List subscriptions: call the MCP tool `stripe_api_read` #### CLI (official) Install the command, then confirm it runs. ```sh npm install -g @stripe/cli stripe --version ``` - List customers: run `stripe customers list` - List subscriptions: run `stripe subscriptions list` ### Brew (tool:brew/generate-email, tool:brew/send-email) Use the first option your agent supports. #### MCP (official, remote) Add this server to your agent's MCP settings, then sign in when asked. ```json { "mcpServers": { "brew": { "url": "https://brew.new/api/mcp" } } } ``` - Generate an email: call the MCP tool `create_email` - Send an email: call the MCP tool `send_email` #### CLI (official) Install the command, then confirm it runs. ```sh brew install getbrew/tap/brew-cli brew-cli --version ``` - Generate an email: run `brew-cli emails generate` - Send an email: run `brew-cli emails send` Set `$BREW_API_KEY` in your environment first (get a key: https://brew.new/settings/api). Make one read-only call to each tool to confirm access. ## Steps 1. **Find activated free users** with Run a SQL query (PostHog). List users on the free plan who fired `activation_event` three or more times in the last 14 days. 2. **Find their customers** with List customers (Stripe). Look up each user's email, as stored and lowercased, and keep every customer ID it returns. 3. **Skip paying customers** with List subscriptions (Stripe). Remove anyone whose customer has an active subscription. 4. **Write the email** with Generate an email (Brew). Draft one email explaining `trial_plan` around what they already did. Show it to the user. 5. **Send** with Send an email (Brew). After the user approves, send it to the remaining users. ## Done when - No paying customer received the email. - The user has the count of users emailed. ## Rules - Only use the tools listed above. - Ask the user before anything that sends messages, costs money, or changes data. - Never print API keys. --- ref: workflow:funding-signal-outbound title: Turn fresh funding news into qualified outbound author: thedogwiththedataonit tools: [tool:people-data-labs/search-companies, tool:apollo/search-people, tool:apollo/bulk-enrich-people, tool:anthropic/create-message, tool:lemlist/add-lead-to-campaign] tags: [capability:build-audience, capability:enrich-contacts, capability:send-email, capability:write-copy, channel:email, has:api, motion:outbound] updated: 2026-09-27 --- # Turn fresh funding news into qualified outbound Set up the tools below, then run the steps in order for the user. ## Inputs Ask the user for these before you start. - `target_segment`: the kind of company to watch, e.g. Series A B2B SaaS in the US - `campaign_id`: the lemlist campaign that sends the emails from your mailbox, e.g. cam_123; its email reads each lead's drafted text from a custom variable ## Set up ### Search companies (People Data Labs, tool:people-data-labs/search-companies) Use the API. - Base URL: https://api.peopledatalabs.com - Endpoint: `POST /v5/company/search` - Auth: send the header `X-Api-Key: $PDL_API_KEY` - Get a key: https://dashboard.peopledatalabs.com/api-keys ### Apollo (tool:apollo/search-people, tool:apollo/bulk-enrich-people) Use the first option your agent supports. #### MCP (official, remote) Add this server to your agent's MCP settings, then sign in when asked. ```json { "mcpServers": { "apollo": { "url": "https://mcp.apollo.io/mcp" } } } ``` - Search for people: call the MCP tool `apollo_mixed_people_api_search` - Enrich up to 10 people: call the MCP tool `apollo_people_bulk_match` #### CLI (official) Install the command, then confirm it runs. ```sh brew install apolloio/apollo-io-cli/apollo-io-cli apollo --version ``` - Search for people: run `apollo people search` - Enrich up to 10 people: run `apollo people bulk-enrich` ### Create a message (Anthropic, tool:anthropic/create-message) Use the first option your agent supports. #### CLI (official) Install the command, then confirm it runs. ```sh curl -fsSL https://claude.ai/install.sh | bash claude --version ``` Run `claude -p`. #### API (official) - Base URL: https://api.anthropic.com - Endpoint: `POST /v1/messages` - Auth: send the header `x-api-key: $ANTHROPIC_API_KEY` - Get a key: https://platform.claude.com/settings/keys ### Add a lead to a campaign (lemlist, tool:lemlist/add-lead-to-campaign) Use the first option your agent supports. #### CLI (official) Install the command, then confirm it runs. ```sh npm install -g @lemlist-official/cli lemlist --version ``` Run `lemlist api POST /campaigns/{campaignId}/leads/`. #### API (official) - Base URL: https://api.lemlist.com/api - Endpoint: `POST /campaigns/{campaignId}/leads/` - Auth: send the header `Authorization: Basic $LEMLIST_API_KEY` - Get a key: https://app.lemlist.com/settings/integrations Make one read-only call to each tool to confirm access. ## Steps 1. **Find funded companies** with Search companies (People Data Labs). List companies matching `target_segment` whose `last_funding_date` falls in the last 30 days, with `size` up to 100 and `scroll_token` for the next page. Keep name, domain, latest round and date. 2. **Find the buyer** with Search for people (Apollo). For each company, find the head of growth or marketing; skip companies with no match. 3. **Get their emails** with Enrich up to 10 people (Apollo). Enrich each buyer, up to 10 per call. Keep their name, title and work email. 4. **Write emails** with Create a message (Anthropic). Draft a three-sentence plain-text email per contact: congratulate the round, name one thing they will now have budget for, ask one question. Show the drafts to the user. 5. **Send** with Add a lead to a campaign (lemlist). After the user approves, add each contact to `campaign_id` with their approved email as a custom variable. ## Done when - Every funded company has a contact, or a note explaining why not. - Every approved contact is in the campaign, and the user has a summary table. ## Rules - Only use the tools listed above. - Ask the user before anything that sends messages, costs money, or changes data. - Never print API keys. --- ref: workflow:high-intent-visitors title: Flag high-intent website visitors to sales author: thedogwiththedataonit tools: [tool:posthog/run-sql-query, tool:clay/run-routine, tool:slack/post-message] tags: [capability:enrich-contacts, capability:route-alerts, capability:track-product-usage, channel:chat, channel:website, has:api, has:cli, motion:midbound] updated: 2026-09-27 --- # Flag high-intent website visitors to sales Set up the tools below, then run the steps in order for the user. ## Inputs Ask the user for these before you start. - `pricing_path`: the page that signals intent, e.g. /pricing - `alerts_channel`: where to post, e.g. #sales-signals ## Set up ### Run a SQL query (PostHog, tool:posthog/run-sql-query) Use the first option your agent supports. #### MCP (official, remote) Add this server to your agent's MCP settings, then sign in when asked. ```json { "mcpServers": { "posthog": { "url": "https://mcp.posthog.com/mcp" } } } ``` Call the MCP tool `execute-sql`. #### CLI (official) Install the command, then confirm it runs. ```sh npm install -g @posthog/cli@latest posthog-cli --version ``` Run `posthog-cli api call execute-sql`. Set `$POSTHOG_CLI_API_KEY` in your environment first (get a key: https://app.posthog.com/settings/user-api-keys?preset=mcp_server). ### Run a routine (Clay, tool:clay/run-routine) Use the first option your agent supports. #### CLI (official) Install the command, then confirm it runs. ```sh npm install --global @clay-run/cli clay --version ``` Run `clay routines runs start`. #### API (official) - Base URL: https://api.clay.com/public/v0 - Endpoint: `POST /routines/{routine_id}/run` - Auth: send the header `clay-api-key: $CLAY_PUBLIC_API_KEY` - Get a key: https://app.clay.com/workspaces/~/settings/account?accountTab=api-keys-beta ### Post a message (Slack, tool:slack/post-message) Use the first option your agent supports. #### MCP (official, remote) Add this server to your agent's MCP settings, then sign in when asked. ```json { "mcpServers": { "slack": { "url": "https://mcp.slack.com/mcp" } } } ``` Call the MCP tool `slack_send_message`. #### CLI (official) Install the command, then confirm it runs. ```sh curl -fsSL https://downloads.slack-edge.com/slack-cli/install.sh | bash slack --version ``` Run `slack api chat.postMessage`. Set `$SLACK_BOT_TOKEN` in your environment first (get a key: https://api.slack.com/apps). Make one read-only call to each tool to confirm access. ## Steps 1. **Find repeat visitors** with Run a SQL query (PostHog). List identified accounts that viewed `pricing_path` at least twice in the last 7 days. 2. **Enrich** with Run a routine (Clay). For each account domain, add company size, industry and any open hiring for sales or marketing. 3. **Alert** with Post a message (Slack). Post one message per account to `alerts_channel` with the enrichment and a suggested owner. Ask the user before posting the first one. ## Done when - Every qualifying account was posted once, with no duplicates. - The user has the list of accounts and suggested owners. ## Rules - Only use the tools listed above. - Ask the user before anything that sends messages, costs money, or changes data. - Never print API keys. --- ref: workflow:product-qualified-expansion title: Surface product-qualified expansion opportunities author: thedogwiththedataonit tools: [tool:amplitude/query-analytics, tool:attio/upsert-record, tool:slack/post-message] tags: [capability:manage-crm, capability:route-alerts, capability:track-product-usage, channel:chat, has:mcp, motion:midbound, motion:plg] updated: 2026-09-27 --- # Surface product-qualified expansion opportunities Set up the tools below, then run the steps in order for the user. ## Inputs Ask the user for these before you start. - `usage_threshold`: the weekly active users that signal a bigger team, e.g. 25 - `plan_limit`: the plan limit accounts approach, e.g. 10 seats - `sales_channel`: where to post, e.g. #expansion ## Set up ### Query product analytics (Amplitude, tool:amplitude/query-analytics) Use the MCP server. Add it to your agent's MCP settings, then sign in when asked. ```json { "mcpServers": { "amplitude": { "url": "https://mcp.amplitude.com/mcp" } } } ``` Call the MCP tool `query_amplitude_data`. ### Upsert a record (Attio, tool:attio/upsert-record) Use the first option your agent supports. #### MCP (official, remote) Add this server to your agent's MCP settings, then sign in when asked. ```json { "mcpServers": { "attio": { "url": "https://mcp.attio.com/mcp" } } } ``` Call the MCP tool `upsert-record`. #### API (official) - Base URL: https://api.attio.com - Endpoint: `PUT /v2/objects/{object}/records` - Auth: send the header `Authorization: Bearer $ATTIO_API_KEY` - Get a key: https://attio.com/help/reference/apps/generating-an-api-key ### Post a message (Slack, tool:slack/post-message) Use the first option your agent supports. #### MCP (official, remote) Add this server to your agent's MCP settings, then sign in when asked. ```json { "mcpServers": { "slack": { "url": "https://mcp.slack.com/mcp" } } } ``` Call the MCP tool `slack_send_message`. #### CLI (official) Install the command, then confirm it runs. ```sh curl -fsSL https://downloads.slack-edge.com/slack-cli/install.sh | bash slack --version ``` Run `slack api chat.postMessage`. Set `$SLACK_BOT_TOKEN` in your environment first (get a key: https://api.slack.com/apps). Make one read-only call to each tool to confirm access. ## Steps 1. **Find accounts near the line** with Query product analytics (Amplitude). List accounts whose weekly active users crossed `usage_threshold` or reached 80% of `plan_limit` in the last 14 days. 2. **Mark them** with Upsert a record (Attio). Set each company record, matched on its domain, to expansion-ready with the metric and the date. Keep each account's owner. 3. **Tell sales** with Post a message (Slack). Post one message per account to `sales_channel` with the metric, the date and the account's owner. Ask the user before posting the first one. ## Done when - Every account over the line is marked in the CRM. - `sales_channel` has one post per account. ## Rules - Only use the tools listed above. - Ask the user before anything that sends messages, costs money, or changes data. - Never print API keys. --- ref: workflow:resend-to-unopened title: Win a second open with a subject-line resend author: thedogwiththedataonit tools: [tool:brew/create-audience-from-events, tool:anthropic/create-message, tool:brew/send-email] tags: [capability:build-audience, capability:send-email, capability:write-copy, channel:email, has:api, has:cli] updated: 2026-09-27 --- # Win a second open with a subject-line resend Set up the tools below, then run the steps in order for the user. ## Inputs Ask the user for these before you start. - `send_id`: the Brew send to follow up - `email_id`: the email it sent - `original_subject`: its subject line - `wait_days`: how long to wait after the first send, e.g. 3 ## Set up ### Brew (tool:brew/create-audience-from-events, tool:brew/send-email) Use the first option your agent supports. #### MCP (official, remote) Add this server to your agent's MCP settings, then sign in when asked. ```json { "mcpServers": { "brew": { "url": "https://brew.new/api/mcp" } } } ``` - Create an audience from email events: call the MCP tool `create_audience_from_events` - Send an email: call the MCP tool `send_email` #### CLI (official) Install the command, then confirm it runs. ```sh brew install getbrew/tap/brew-cli brew-cli --version ``` - Create an audience from email events: run `brew-cli audiences from-events` - Send an email: run `brew-cli emails send` Set `$BREW_API_KEY` in your environment first (get a key: https://brew.new/settings/api). ### Create a message (Anthropic, tool:anthropic/create-message) Use the first option your agent supports. #### CLI (official) Install the command, then confirm it runs. ```sh curl -fsSL https://claude.ai/install.sh | bash claude --version ``` Run `claude -p`. #### API (official) - Base URL: https://api.anthropic.com - Endpoint: `POST /v1/messages` - Auth: send the header `x-api-key: $ANTHROPIC_API_KEY` - Get a key: https://platform.claude.com/settings/keys Make one read-only call to each tool to confirm access. ## Steps 1. **Segment** with Create an audience from email events (Brew). Build an audience of the contacts in `send_id` who have not opened after `wait_days`, and wait until it has built. 2. **Rewrite** with Create a message (Anthropic). Write two alternatives to `original_subject` that make a different promise. Show them to the user. 3. **Resend** with Send an email (Brew). Send `email_id` with the chosen subject line to that audience, after the user approves. ## Done when - Only unopened contacts received the resend. - The user has the number of contacts it went to. ## Rules - Only use the tools listed above. - Ask the user before anything that sends messages, costs money, or changes data. - Never print API keys. --- ref: workflow:webinar-follow-up title: Create a webinar follow-up that reflects attendance author: thedogwiththedataonit tools: [tool:zoom/list-webinar-participants, tool:zoom/list-webinar-absentees, tool:brew/generate-email, tool:hubspot/upsert-contacts, tool:brew/send-email] tags: [capability:host-meetings, capability:manage-crm, capability:send-email, capability:write-copy, channel:email, has:api, motion:inbound] updated: 2026-09-27 --- # Create a webinar follow-up that reflects attendance Set up the tools below, then run the steps in order for the user. ## Inputs Ask the user for this before you start. - `webinar_id`: the webinar to work from ## Set up ### Zoom (tool:zoom/list-webinar-participants, tool:zoom/list-webinar-absentees) Use the API. - Base URL: https://api.zoom.us/v2 - List webinar participants: `GET /past_webinars/{webinarId}/participants` - List webinar absentees: `GET /past_webinars/{webinarId}/absentees` - Auth: OAuth; sign in when the agent asks ### Brew (tool:brew/generate-email, tool:brew/send-email) Use the first option your agent supports. #### MCP (official, remote) Add this server to your agent's MCP settings, then sign in when asked. ```json { "mcpServers": { "brew": { "url": "https://brew.new/api/mcp" } } } ``` - Generate an email: call the MCP tool `create_email` - Send an email: call the MCP tool `send_email` #### CLI (official) Install the command, then confirm it runs. ```sh brew install getbrew/tap/brew-cli brew-cli --version ``` - Generate an email: run `brew-cli emails generate` - Send an email: run `brew-cli emails send` Set `$BREW_API_KEY` in your environment first (get a key: https://brew.new/settings/api). ### Create or update contacts (HubSpot, tool:hubspot/upsert-contacts) Use the first option your agent supports. #### MCP (official, remote) Add this server to your agent's MCP settings, then sign in when asked. ```json { "mcpServers": { "hubspot": { "url": "https://mcp.hubspot.com" } } } ``` Call the MCP tool `manage_crm_objects`. #### API (official) - Base URL: https://api.hubapi.com - Endpoint: `POST /crm/objects/2026-09/contacts/batch/upsert` - Auth: send the header `Authorization: Bearer $HUBSPOT_API_KEY` Make one read-only call to each tool to confirm access. ## Steps 1. **List attendees** with List webinar participants (Zoom). From `webinar_id`, list who attended and add up each person's time across rejoins; 40 minutes or more makes them engaged. 2. **List no-shows** with List webinar absentees (Zoom). From `webinar_id`, list the registrants who did not attend. 3. **Write three emails** with Generate an email (Brew). Draft one email per list: the recording for no-shows, the next step for attendees, a call offer for the engaged. Show the drafts to the user. 4. **Tag contacts** with Create or update contacts (HubSpot). Set a contact property with the list each person landed in. 5. **Send** with Send an email (Brew). Send each list its approved email. ## Done when - Every registrant is in exactly one list. - Approved emails are sent and the property is set. ## Rules - Only use the tools listed above. - Ask the user before anything that sends messages, costs money, or changes data. - Never print API keys. --- ref: company:6sense name: 6sense tools: [tool:6sense/enrich-company, tool:6sense/enrich-people, tool:6sense/search-people] tags: [capability:build-audience, capability:enrich-contacts, capability:research-accounts, category:intent, has:api] updated: 2026-09-27 --- # 6sense The ABM platform powered by revenue intelligence, with buying signals, predictive buying stages and B2B people and company data. 6sense captures anonymous buying signals across the buyer's journey, predicts each account's buying stage, and supplies B2B people and company data to revenue teams. The hosted MCP server is read-only and signs in each user with OAuth. It answers questions about account insights, 6QA trends, keyword intent, website activity, ad campaign performance and segments, and with Sales Intelligence it finds and unlocks contacts. 6sense's docs don't list the server's tool names; the agent discovers them after connecting. An admin must first turn on MCP under Settings, AI and MCP (it is off by default), and what each user can ask depends on their Revenue Marketing or Sales Intelligence license. The REST API takes a 40-character API token in `Authorization: Token`. Tokens are created in Settings, API Token management, and each works only for the APIs of its group; enrichment calls spend 6sense Credits allocated to API (Enrichment). The API allows 100 requests a minute. The Company Identification and Lead Scoring APIs run on other hosts (`epsilon.6sense.com`, `scribe.6sense.com`) and aren't covered here. ## Tools - tool:6sense/enrich-company — Enrich a company: Returns a company's firmographics, such as industry, employee and revenue range, address and SIC and NAICS codes, plus its 6sense segments, found from an email or a domain. - tool:6sense/enrich-people — Enrich people: Returns the email, phone numbers, job title, level and company of up to 25 people per call, each matched from an email, a LinkedIn URL or a 6sense people ID. - tool:6sense/search-people — Search for people: Returns people in 6sense's B2B database who match company domain, job title, level, function, location or industry filters, without their emails or phone numbers. ## Links - Website: https://6sense.com - Docs: https://support.6sense.com --- ref: company:airtable name: Airtable tools: [tool:airtable/create-records, tool:airtable/list-records, tool:airtable/search-records, tool:airtable/update-records] tags: [capability:manage-tables, category:database, has:api, has:cli, has:mcp] updated: 2026-09-27 --- # Airtable Build AI workflows, apps and agents on your team's shared data. Airtable is a platform for building apps, workflows and agents on shared data: a base holds tables of records, with interfaces, forms and automations on top. Its MCP server, available on every plan, reads, creates and updates records, builds bases, tables, interfaces and automations, and submits forms, always within the permissions you already have. It signs in with OAuth; a personal access token works too. The `airtable-mcp` CLI runs the same MCP tools from a terminal, with hyphens in place of underscores (`list_records_for_table` becomes `airtable-mcp list-records-for-table`). Run `airtable-mcp tools` to see what the server offers now: the CLI is experimental and tool names can change. One personal access token, created with the scopes you need, serves both the CLI and the Web API, which takes it as a bearer token. Record writes through MCP and the CLI key fields by field id: read the ids with `get_table_schema`. ## Tools - tool:airtable/create-records — Create records: Creates one or more records in a table from their field values and returns each new record with its id. - tool:airtable/list-records — List records: Returns a table's records a page at a time, filtered, sorted and cut down to the fields you ask for. - tool:airtable/search-records — Search records: Finds the records in a table whose searchable fields match a keyword, such as a company name. - tool:airtable/update-records — Update records: Changes only the fields you pass on existing records, leaving the rest as they were, and returns the updated records. ## Links - Website: https://airtable.com - Docs: https://airtable.com/developers --- ref: company:amplitude name: Amplitude tools: [tool:amplitude/create-cohort, tool:amplitude/get-user-activity, tool:amplitude/query-analytics, tool:amplitude/query-chart] tags: [capability:build-audience, capability:track-product-usage, category:product-analytics, has:api, has:cli, has:mcp] updated: 2026-09-27 --- # Amplitude Behavioral analytics across the funnel. Amplitude is an AI analytics platform that tracks what users do in a product and turns it into engagement, retention and revenue insights. Its MCP server queries analytics, user activity and cohorts with your Amplitude permissions; the `amp` CLI and the Developer API behind it manage projects, taxonomy and feature flags and query saved charts. Projects with EU data residency use `https://mcp.eu.amplitude.com/mcp`. ## Tools - tool:amplitude/create-cohort — Create and sync a cohort: Creates or reads a cohort of users, checks membership, exports it as CSV, or syncs it to a destination such as Braze, Iterable or a webhook. - tool:amplitude/get-user-activity — Get user activity: Returns user profiles, user properties and activity timelines from an Amplitude project. - tool:amplitude/query-analytics — Query product analytics: Runs an ad-hoc event segmentation, funnel or retention query and returns the results. - tool:amplitude/query-chart — Query a saved chart: Returns the computed results of a saved event segmentation, sessions, funnel or retention chart for a time range. ## Links - Website: https://amplitude.com - Docs: https://amplitude.com/docs --- ref: company:anthropic name: Anthropic tools: [tool:anthropic/create-message] tags: [capability:write-copy, category:ai-model, has:api, has:cli] updated: 2026-09-26 --- # Anthropic Claude: models and agent tooling for drafting, reasoning and classification. Anthropic is an AI safety and research company and the maker of Claude. The Claude API gives programmatic access to Claude models and Claude Managed Agents. Claude Code is its command-line agent: it signs in with a Claude or Console account, or, when `ANTHROPIC_API_KEY` is set, asks you to approve that key instead. ## Tools - tool:anthropic/create-message — Create a message: Returns Claude's next message for a prompt or conversation, such as a drafted email or a label for a record. ## Links - Website: https://anthropic.com - Docs: https://platform.claude.com/docs/en/home --- ref: company:apify name: Apify tools: [tool:apify/get-dataset-items, tool:apify/run-actor, tool:apify/search-actors, tool:apify/search-web] tags: [capability:research-accounts, capability:scrape-web, category:scraper, has:api, has:cli, has:mcp] updated: 2026-09-27 --- # Apify Cloud platform and store of ready-made scrapers, called Actors, that turn websites into data. Apify is a cloud platform for web scraping and automation. Its programs, called Actors, run in the cloud from JSON input and save their results to datasets, and Apify Store lists ready-made Actors such as scrapers for Google Search, Google Maps and Instagram. The MCP server, the `apify` CLI and the REST API search the Store, run Actors and read their results. The MCP server signs in with OAuth in the browser, or takes an Apify API token as a Bearer header. The CLI signs in through Apify Console with `apify login`, and the API takes the token as a Bearer token. Each Actor sets its own pricing, such as Apify platform usage, a price per result or a price per event. ## Tools - tool:apify/get-dataset-items — Get an Actor run's results: Returns the items an Actor run saved to a dataset, such as scraped records, a page at a time. - tool:apify/run-actor — Run an Actor: Starts an Apify Actor, such as a Google Maps or search-results scraper, with JSON input and returns the run's status and the ID of the dataset that holds its results. - tool:apify/search-actors — Find a scraper in Apify Store: Returns Actors from Apify Store, Apify's marketplace of ready-made scrapers and automations, that match a search query, with each Actor's name, author and description. - tool:apify/search-web — Search the web and read the top results: Starts Apify's RAG Web Browser on a query, or on one URL, and returns the run's storage IDs; its dataset holds the top result pages as Markdown. ## Links - Website: https://apify.com - Docs: https://docs.apify.com --- ref: company:apollo name: Apollo tools: [tool:apollo/add-contacts-to-sequence, tool:apollo/bulk-enrich-people, tool:apollo/enrich-company, tool:apollo/enrich-person, tool:apollo/search-people] tags: [capability:build-audience, capability:enrich-contacts, capability:research-accounts, capability:send-email, category:data-provider, has:api, has:cli, has:mcp] updated: 2026-09-27 --- # Apollo Contact data, work emails and outbound sequences in one place. Apollo is a sales intelligence and engagement platform with a database of over 240 million contacts and 30 million companies. Its MCP server, the `apollo` CLI and the REST API search and enrich people and companies, manage contacts, accounts and deals, and enroll contacts in outbound sequences. The MCP server and the CLI sign in with OAuth; the API takes an API key, and the Apollo plan decides which endpoints it can call and what they cost in credits. ## Tools - tool:apollo/add-contacts-to-sequence — Add contacts to a sequence: Enrolls saved contacts in an Apollo sequence so its email steps go out from the mailbox you choose. - tool:apollo/bulk-enrich-people — Enrich up to 10 people: Returns the work email, title and employer of up to 10 people in one call, each matched from a name and company domain, an email or a LinkedIn URL. - tool:apollo/enrich-company — Enrich a company: Returns one company's industry, revenue, employee count, funding rounds, locations and parent or subsidiary companies, found by its domain or name. - tool:apollo/enrich-person — Enrich a person: Returns one person's title, employer, employment history and work email, matched from an email, a LinkedIn URL, or a name plus company. - tool:apollo/search-people — Search for people: Returns people in Apollo's database who match title, seniority, location and company filters, without their emails or phone numbers. ## Links - Website: https://apollo.io - Docs: https://docs.apollo.io --- ref: company:asana name: Asana tools: [tool:asana/add-comment, tool:asana/create-task, tool:asana/update-task] tags: [capability:manage-tasks, category:project-management, has:api, has:mcp] updated: 2026-09-27 --- # Asana Work management for tasks, projects and portfolios. Asana is work management software for teams and AI agents. Its V2 MCP server and its REST API read and write the Work Graph: tasks, projects, portfolios, goals and the people they are assigned to. Coding clients such as Claude Code or Cursor connect to the MCP server through an OAuth app you register in the Asana developer console; the API takes a personal access token. ## Tools - tool:asana/add-comment — Comment on a task: Adds a comment to a task as the signed-in user, in plain text or HTML, with optional @-mentions. - tool:asana/create-task — Create a task: Creates a task in a workspace, a project or under a parent task, with its assignee, due date, description and custom fields. - tool:asana/update-task — Update a task: Changes a task's name, assignee, due date, description, completion or custom fields, leaving every other field as it was. ## Links - Website: https://asana.com - Docs: https://developers.asana.com --- ref: company:atlassian name: Atlassian tools: [tool:atlassian/comment-on-jira-work-item, tool:atlassian/create-confluence-page, tool:atlassian/create-jira-work-item, tool:atlassian/search-confluence, tool:atlassian/search-jira-work-items] tags: [capability:manage-docs, capability:manage-tasks, category:project-management, has:api, has:cli, has:mcp] updated: 2026-09-27 --- # Atlassian Jira and Confluence, for tracking work and keeping team knowledge on one connected platform. Atlassian makes Jira, for planning and tracking work, and Confluence, for docs and team knowledge, alongside Loom, Bitbucket and Rovo AI agents; Trello is listed on its own. The Rovo MCP server reads and writes Jira, Confluence, Bitbucket, Loom and more with the signed-in user's permissions. It lists a few primary tools up front, including every call named here, and finds the rest at runtime through `discover`, which you then run with `executeRead` or `executeWrite`. Some tools spend Rovo credits. The `acli` CLI covers Jira; sign in with `acli jira auth login --web`. The Jira and Confluence REST APIs live on your own site, where `your-domain` is its name, and Confluence paths start with `/wiki`. They take basic auth: `ATLASSIAN_API_KEY` holds the base64 of `:` for a token created without scopes. A scoped token calls `https://api.atlassian.com/ex/jira/{cloudId}` instead. ## Tools - tool:atlassian/comment-on-jira-work-item — Comment on a Jira work item: Adds a comment to a Jira work item and returns the new comment. - tool:atlassian/create-confluence-page — Create a Confluence page: Creates a page in a Confluence space, under a parent page if you pass one, and returns the new page. - tool:atlassian/create-jira-work-item — Create a Jira work item: Creates a Jira work item (an issue) in a project with its type, summary, description, assignee and labels, and returns its key. - tool:atlassian/search-confluence — Search Confluence with CQL: Returns the Confluence pages, blog posts and other content that match a CQL query. - tool:atlassian/search-jira-work-items — Search Jira work items with JQL: Returns the Jira work items that match a JQL query, with the fields you ask for, one page at a time. ## Links - Website: https://atlassian.com - Docs: https://developer.atlassian.com --- ref: company:attio name: Attio tools: [tool:attio/create-note, tool:attio/create-record, tool:attio/list-records, tool:attio/update-record, tool:attio/upsert-record] tags: [capability:manage-crm, category:crm, has:api, has:mcp] updated: 2026-09-26 --- # Attio The CRM for revenue teams, with records, lists, notes and tasks an agent can read and write. Attio is a CRM for revenue teams. Its hosted MCP server signs in as an Attio user with OAuth, and its REST API takes a workspace access token that an admin creates under Workspace settings, Developers. Both read and write people, companies, deals and custom objects, list entries, notes and tasks. ## Tools - tool:attio/create-note — Create a note: Adds a note with a title and plaintext or markdown content to a person, company, deal or other record. - tool:attio/create-record — Create a record: Creates a person, company, deal or custom-object record, and fails if a unique attribute such as a domain or email address is already taken. - tool:attio/list-records — List records: Returns the records of one object, such as people, companies or deals, filtered and sorted by their attribute values. - tool:attio/update-record — Update a record: Updates the given attributes of one record by its record id, adding to multiselect values instead of replacing them. - tool:attio/upsert-record — Upsert a record: Updates the record whose matching attribute, such as a company's domain or a person's email, has the given value, or creates the record if none does. ## Links - Website: https://attio.com - Docs: https://docs.attio.com --- ref: company:brew name: Brew tools: [tool:brew/create-audience, tool:brew/create-audience-from-events, tool:brew/fire-trigger-event, tool:brew/generate-email, tool:brew/send-email] tags: [capability:build-audience, capability:send-email, capability:write-copy, category:email, has:api, has:cli, has:mcp] updated: 2026-09-26 --- # Brew AI-native email platform that designs on-brand emails from a prompt, builds the audience and sends them. Brew is an AI-native email platform for teams and AI agents. Describe an email, audience or automation and Brew designs it on brand from your own design system, checks rendering and deliverability, and sends it from your domain. It is built for permission-based marketing and transactional email: cold outreach to lists without opt-in is not permitted. ## Tools - tool:brew/create-audience — Create an audience: Saves a live contact segment from a name and a set of field filters and returns the audience. - tool:brew/create-audience-from-events — Create an audience from email events: Saves a frozen cohort of the contacts who opened, clicked or otherwise engaged in a time window or send, or with an exclude rule those who did not. - tool:brew/fire-trigger-event — Fire a trigger event: Validates an event payload, upserts the contact it describes and starts one run of every published automation listening to that trigger. - tool:brew/generate-email — Generate an email: Generates an on-brand email design from a plain-language prompt and returns its emailId, version id and HTML. - tool:brew/send-email — Send an email: Sends an email design as a campaign to a saved audience or an inline recipient list through a verified domain, or one test copy with test set to true. ## Links - Website: https://brew.new - Docs: https://docs.brew.new --- ref: company:cal-com name: Cal.com tools: [tool:cal-com/create-booking, tool:cal-com/create-private-link, tool:cal-com/get-available-slots, tool:cal-com/list-bookings, tool:cal-com/reschedule-booking] tags: [capability:book-meetings, category:scheduling, has:api, has:cli, has:mcp] updated: 2026-09-27 --- # Cal.com Open-source scheduling software, with booking pages for people and a scheduling API for apps. Cal.com is open-source scheduling software for individuals, businesses that take calls, and developers building scheduling into their own products. Its hosted MCP server, the `calcom` CLI and API v2 check availability, create, reschedule and cancel bookings, and manage event types, schedules and private booking links. The MCP server signs in with OAuth 2.1. The CLI and the API take an API key (`cal_live_` in live mode, `cal_` in test mode) as a Bearer token: run `calcom login` once, or set `CAL_API_KEY`. Every API v2 request needs the `cal-api-version` header, set to the version its endpoint's reference names. Checking slots and creating a booking are public and need no key. ## Tools - tool:cal-com/create-booking — Create a booking: Books an attendee into a start time on an event type and returns the booking with its UID. - tool:cal-com/create-private-link — Create a private booking link: Returns a private booking URL for an event type that expires after a number of bookings or at a set time. - tool:cal-com/get-available-slots — Get available slots: Returns the open start times of an event type between two dates, grouped by day. - tool:cal-com/list-bookings — List bookings: Returns bookings filtered by status, attendee, event type and date range, one page at a time. - tool:cal-com/reschedule-booking — Reschedule a booking: Moves an accepted or pending booking to a new start time and returns the rescheduled booking. ## Links - Website: https://cal.com - Docs: https://cal.com/docs --- ref: company:calendly name: Calendly tools: [tool:calendly/book-meeting, tool:calendly/create-scheduling-link, tool:calendly/list-available-times, tool:calendly/list-event-invitees, tool:calendly/list-scheduled-events] tags: [capability:book-meetings, category:scheduling, has:api, has:mcp] updated: 2026-09-27 --- # Calendly Meeting scheduling software for booking links, open times and booked meetings. Calendly is meeting scheduling software that covers the work around a meeting, from scheduling and payments to meeting prep, notetaking, contact management and follow-up. Its hosted MCP server and REST API v2 read and update event types and availability, create single-use scheduling links, book invitees directly through the Scheduling API, and list scheduled events and their invitees. The MCP server is hosted by Calendly and signs in with OAuth 2.1 through dynamic client registration; it does not accept personal access tokens. The API takes a personal access token, or an OAuth app's token, as a Bearer token. Any Calendly plan can connect over MCP, but booking an invitee directly needs a paid plan (Standard or above) and routing forms need Teams or higher. ## Tools - tool:calendly/book-meeting — Book a meeting: Books an invitee into an open time on an event type and returns the invitee with links to cancel or reschedule. - tool:calendly/create-scheduling-link — Create a single-use scheduling link: Returns a single-use booking URL for one event type, good for one booked meeting. - tool:calendly/list-available-times — List available times: Returns the open start times of one event type within a range of up to 31 days, each with its booking page URL. - tool:calendly/list-event-invitees — List event invitees: Returns the invitees of one scheduled event with their emails, booking-question answers, UTM tracking and no-show status. - tool:calendly/list-scheduled-events — List scheduled events: Returns the meetings scheduled with a user, group or organization, filtered by invitee email, status and start time. ## Links - Website: https://calendly.com - Docs: https://developer.calendly.com --- ref: company:canva name: Canva tools: [tool:canva/autofill-design, tool:canva/export-design, tool:canva/generate-design, tool:canva/resize-design] tags: [capability:design-assets, category:design, has:api, has:cli, has:mcp] updated: 2026-09-26 --- # Canva Online visual suite for designing presentations, social posts, videos and other marketing assets. Canva is an online visual communication and collaboration platform. Its MCP server lets an AI assistant generate, edit, search and export a user's designs; its REST APIs, also reachable through `canva api` in the Canva CLI, let an app create, autofill, resize and export designs on the user's behalf. Both act as a signed-in Canva user, and some calls need a paid Canva plan. ## Tools - tool:canva/autofill-design — Autofill a brand template: Starts a job that creates a design from a brand template, or updates a design in place, filling its text, image and chart fields with your data. - tool:canva/export-design — Export a design: Starts a job that exports a design as PDF, PNG, JPG, GIF, PPTX, MP4 or HTML and returns download links that expire. - tool:canva/generate-design — Generate a design: Generates design candidates from a natural-language brief and returns each candidate's id, preview link and thumbnails. - tool:canva/resize-design — Resize a design: Starts a job that creates a resized copy of a design at a preset design type or a custom width and height. ## Links - Website: https://canva.com - Docs: https://www.canva.dev/docs/apps/ --- ref: company:chargebee name: Chargebee tools: [tool:chargebee/create-checkout, tool:chargebee/create-coupon, tool:chargebee/list-customers, tool:chargebee/list-invoices, tool:chargebee/list-subscriptions] tags: [capability:collect-payments, capability:track-revenue, category:payments, has:api] updated: 2026-09-27 --- # Chargebee Subscription billing and revenue management, from hosted checkout to invoices and revenue data. Chargebee is a billing and revenue management platform: it meters usage, runs subscriptions, turns them into invoices and payments, and recognizes revenue on one commercial record. `{site}` and `{YOUR-CHARGEBEE-SUBDOMAIN}` are your Chargebee site name, such as `acme-test`. The REST API uses HTTP Basic auth with the API key as the username and an empty password, takes form-encoded parameters and returns JSON. Create a key under Settings > Configure Chargebee > API Keys and Webhooks; test and live sites have different keys. The Data Lookup MCP server reads customers, subscriptions, invoices, quotes and payments. Turn on its MCP access and create an OAuth client ID for your MCP client under Settings > Configure Chargebee > Agentic AI > MCP Servers; sites with Multi-Business Entity enabled can't use OAuth. Sites in the EU and AU data centers use `mcp.eu.chargebee.com` and `mcp.au.chargebee.com` in place of `mcp.chargebee.com`. The MCP server's docs list its tools by label, not by name, so the tools below name only their API calls; the server lists its own once connected. ## Tools - tool:chargebee/create-checkout — Create a checkout for a new subscription: Creates a Chargebee-hosted checkout page for the plan and add-on prices you pass and returns it with the URL to send the customer. - tool:chargebee/create-coupon — Create a coupon: Creates a percentage, fixed-amount or free-quantity coupon that applies to an invoice or to specific items, and returns the coupon. - tool:chargebee/list-customers — List customers: Returns customers on your Chargebee site, filtered by email, name or company, to find the billing record for a person or account. - tool:chargebee/list-invoices — List invoices: Returns invoices filtered by status, customer or subscription, with their amounts, dates and payment status. - tool:chargebee/list-subscriptions — List subscriptions: Returns the subscriptions that match every filter you pass, such as status, customer or plan price, with plan and billing details. ## Links - Website: https://chargebee.com - Docs: https://www.chargebee.com/docs --- ref: company:clay name: Clay tools: [tool:clay/create-audience, tool:clay/create-signal, tool:clay/run-routine, tool:clay/search-people-and-companies] tags: [capability:build-audience, capability:enrich-contacts, capability:track-intent, category:data-provider, has:api, has:cli] updated: 2026-09-26 --- # Clay Go-to-market data platform for finding, enriching and watching people and companies. Clay is a go-to-market data and automation platform. From the `clay` CLI or the Public API an agent can search Clay's database of people and companies, run Clay-managed enrichment functions (work email, phone, firmographics, tech stack, funding) or a team's own functions, and set up signals that watch for job changes, hiring and funding news. Tables and custom functions are still built in the Clay app; the CLI and API run and read them. ## Tools - tool:clay/create-audience — Create an audience: Saves a segment of the workspace's own people or companies from a filter, with membership that updates as records change. - tool:clay/create-signal — Create a signal: Creates a signal that watches people or companies and records an event on a job change, promotion, new hire, job posting, funding news or topic intent. - tool:clay/run-routine — Run a routine: Runs a Clay-managed function such as Work Email or Company Domain, or a team's own function, on 1 to 100 records and returns a run id to poll for results. - tool:clay/search-people-and-companies — Search people and companies: Starts a search of Clay's database of people or companies from an advanced search query and returns a search id to page through the matches. ## Links - Website: https://clay.com - Docs: https://developers.clay.com --- ref: company:clerk name: Clerk tools: [tool:clerk/create-invitation, tool:clerk/invite-waitlist-entry, tool:clerk/list-users] tags: [capability:authenticate-users, category:auth, has:api, has:cli] updated: 2026-09-26 --- # Clerk User management for developers, with prebuilt sign-up and sign-in, organizations, SSO and billing. Clerk is user management for developers: sign-up and sign-in with prebuilt UI components, multi-tenant organizations, enterprise SSO, subscription billing and machine-to-machine auth. Its Backend API and CLI read and manage an application's users, invitations and waitlist, so new sign-ups can start a growth workflow. ## Tools - tool:clerk/create-invitation — Invite a user: Creates an invitation for an email address and sends the invitation email with a link to sign up. - tool:clerk/invite-waitlist-entry — Invite a waitlist entry: Sends an invitation to the email address on a waitlist entry so that person can sign up. - tool:clerk/list-users — List users: Returns the application's users, newest first, filtered by email, name, organization or sign-up, sign-in and last-active dates. ## Links - Website: https://clerk.com - Docs: https://clerk.com/docs --- ref: company:clickup name: ClickUp tools: [tool:clickup/comment-on-task, tool:clickup/create-task, tool:clickup/filter-tasks, tool:clickup/send-chat-message, tool:clickup/update-task] tags: [capability:manage-tasks, capability:route-alerts, category:project-management, has:api, has:mcp] updated: 2026-09-27 --- # ClickUp The everything app for work, with tasks, docs, goals and chat in one workspace. ClickUp keeps tasks, docs, goals and chat in one Workspace, organized into Spaces, Folders and Lists. Its MCP server, in public beta on every plan, searches, creates and updates tasks, and works with comments, docs, time tracking and Chat. It signs in with OAuth only. Without the Everything AI add-on, MCP calls are capped per rolling 24 hours: 50 on the Free Forever plan and 300 on Unlimited and above; with it, the API's own rate limits apply. The REST API takes a personal token, which starts with `pk_`, in the `Authorization` header as is; OAuth apps send `Bearer ` instead. Most endpoints are v2 and newer ones, such as Chat, are v3, both under the base URL above. In v2 paths a Workspace is called a team. ## Tools - tool:clickup/comment-on-task — Comment on a task: Adds a comment to a task, optionally assigned to someone, and returns the new comment's id. - tool:clickup/create-task — Create a task: Creates a task in a List with its name, description, assignees, status, priority, due date and custom fields, and returns the task. - tool:clickup/filter-tasks — Filter tasks in a Workspace: Returns the tasks across a Workspace that match filters such as Lists, statuses, assignees, tags and dates, 100 per page. - tool:clickup/send-chat-message — Send a Chat message: Posts a message to a ClickUp Chat channel, such as an alert for a team, and returns the message. - tool:clickup/update-task — Update a task: Changes the fields you send on a task, such as its name, description, status, priority, dates or assignees, and leaves the rest as they were. ## Links - Website: https://clickup.com - Docs: https://developer.clickup.com --- ref: company:close name: Close tools: [tool:close/create-contact, tool:close/create-lead, tool:close/create-note, tool:close/search-leads, tool:close/subscribe-to-sequence] tags: [capability:manage-crm, capability:send-email, category:crm, has:api, has:mcp] updated: 2026-09-27 --- # Close The CRM with a built-in AI teammate that calls leads, qualifies prospects, books meetings and keeps the CRM up to date. In Close, the central record is the lead: a company or organization that holds the contacts (people) you sell to, plus their opportunities, tasks and activities such as calls, emails and notes. The hosted MCP server signs in with OAuth and supports Dynamic Client Registration. The scope granted at sign-in decides its tools: `mcp.read` only reads, `mcp.write_safe` also creates records, and `mcp.write_destructive` also updates and deletes them. The REST API uses HTTP Basic auth with an API key as the username and an empty password, so `CLOSE_API_KEY` holds the base64 of the key followed by a colon (`:`). Keys are created per user and organization in Close under Settings, Developer, API Keys. ## Tools - tool:close/create-contact — Create a contact: Adds a person, with name, title, emails, phones and URLs, to a lead and returns the new contact. - tool:close/create-lead — Create a lead: Creates a lead (a company) and returns it with its ID; over the API its contacts, addresses and custom fields can be created in the same call. - tool:close/create-note — Create a note: Logs a note activity on a lead, optionally tied to one of its contacts. - tool:close/search-leads — Search leads and contacts: Returns the leads or contacts that match a query, such as contacts with CTO in their title or leads not contacted in the past week. - tool:close/subscribe-to-sequence — Subscribe a contact to a sequence: Enrolls a contact in a sequence (workflow), whose timed email and call steps run until the contact replies. ## Links - Website: https://close.com - Docs: https://developer.close.com --- ref: company:crustdata name: Crustdata tools: [tool:crustdata/enrich-company, tool:crustdata/enrich-person, tool:crustdata/enrich-person-contact, tool:crustdata/search-companies, tool:crustdata/search-people] tags: [capability:build-audience, capability:enrich-contacts, capability:find-work-emails, capability:research-accounts, category:data-provider, has:api, has:cli] updated: 2026-09-27 --- # Crustdata Real-time company and people data for AI agents, from search to enrichment and contact details. Crustdata provides a real-time B2B data API for AI agents, covering people and companies for sales, recruiting and investment workflows. Its Company, Person, Job, Web and Social Post APIs search, identify and enrich records, and watches deliver newly matching records on a schedule. Pin every API request to a version with the `x-api-version: 2025-11-01` header; some endpoints and fields depend on the plan. The MCP server's tool names aren't published, so the tools below name only their API or CLI calls; the server lists its own once connected. ## Tools - tool:crustdata/enrich-company — Enrich a company: Returns a company's firmographics, headcount, funding, web traffic, employee reviews, key people and news, found by domain, name, profile URL or Crustdata ID. - tool:crustdata/enrich-person — Enrich a person: Returns employment history, education and skills for up to 25 people at once, found by their professional profile URLs. - tool:crustdata/enrich-person-contact — Get a person's emails and phone numbers: Returns business emails, personal emails and phone numbers for up to 25 people at once, found by professional profile URL or business email. - tool:crustdata/search-companies — Search companies: Searches Crustdata's company database with structured filters, a natural-language query or both, and returns ranked companies with a cursor for the next page. - tool:crustdata/search-people — Search people: Searches Crustdata's person database by title, company, seniority, location, industry, education and more, and returns matching profiles with a cursor for the next page. ## Links - Website: https://crustdata.com - Docs: https://docs.crustdata.com --- ref: company:customer-io name: Customer.io tools: [tool:customer-io/create-one-time-send, tool:customer-io/search-people, tool:customer-io/send-transactional-email, tool:customer-io/trigger-broadcast] tags: [capability:build-audience, capability:send-email, category:email, has:api, has:cli, has:mcp] updated: 2026-09-27 --- # Customer.io Messaging automation that sends email, push, SMS and in-app messages from customer data and behavior. Customer.io is a messaging automation platform: automations, broadcasts, one-time sends and transactional messages go out by email, push, SMS, in-app and WhatsApp, targeted with segments built from people's attributes and events. The MCP server and the `cio` CLI reach Customer.io's Journeys and Data Pipelines APIs through generic tools: `cio_schema` finds an endpoint, `cio_read_api` makes GET requests and `cio_write_api` makes POST, PUT and PATCH requests (`cio schema` and `cio api ` on the CLI). An account admin must first turn MCP on under Settings > AI; each person then signs in with OAuth and grants scopes, and changing live data or sending messages over MCP also needs the admin's permission. The CLI takes a service-account token (`sa_live_...`) in `CIO_TOKEN`. The API above is the App API, which sends transactional messages and broadcasts and reads workspace data with an App API key as a Bearer token. EU accounts use `https://mcp-eu.customer.io/mcp` and `https://api-eu.customer.io`. People and events come in through the separate Track and Pipelines APIs, which use Basic auth. ## Tools - tool:customer-io/create-one-time-send — Create a one-time send: Creates a one-time send (a newsletter) for a filter over segments and attributes or a CSV of recipients, as a draft, scheduled, or sent right away. - tool:customer-io/search-people — Search for people: Returns up to 1,000 people in a workspace who match a filter on segment membership and attribute values. - tool:customer-io/send-transactional-email — Send a transactional email: Sends one transactional email to a person, from a template filled with your message data or from a subject, body and sender you pass, creating the person if needed. - tool:customer-io/trigger-broadcast — Trigger a broadcast: Sends an API-triggered broadcast now or at a scheduled time, to its saved audience or to the people, emails or filter you pass, with data for its Liquid placeholders. ## Links - Website: https://customer.io - Docs: https://docs.customer.io --- ref: company:dropbox name: Dropbox tools: [tool:dropbox/create-file-request, tool:dropbox/create-shared-link, tool:dropbox/save-url, tool:dropbox/search-files] tags: [capability:store-files, category:storage, has:api] updated: 2026-09-26 --- # Dropbox Store, find, organize and share work files in one place. Dropbox stores and syncs files and folders and shares them by link, with named people, or through file requests that collect uploads from others. Its HTTP API takes OAuth 2 access tokens; its remote MCP server, in beta, gives agents the same kinds of actions: search, shared links, file requests and file management. ## Tools - tool:dropbox/create-file-request — Create a file request: Creates a file request for a destination folder and returns the URL others use to upload files into it. - tool:dropbox/create-shared-link — Create a shared link: Creates a shared link to a file or folder, with optional settings for audience, access, downloads, password and expiry. - tool:dropbox/save-url — Save a file from a URL: Downloads the file at a URL into a path in the user's Dropbox, as a job that must finish within 15 minutes. - tool:dropbox/search-files — Search files: Returns files and folders that match a query, optionally limited to a folder, file extensions, file categories or file names only. ## Links - Website: https://dropbox.com - Docs: https://docs.dropboxapi.com --- ref: company:exa name: Exa tools: [tool:exa/answer-question, tool:exa/create-monitor, tool:exa/get-page-contents, tool:exa/run-agent, tool:exa/search-web] tags: [capability:build-audience, capability:research-accounts, capability:scrape-web, capability:track-intent, category:web-search, has:api, has:mcp] updated: 2026-09-27 --- # Exa Web search for AI agents, with page contents, cited answers, monitors and a research agent. Exa is a web search engine built for AI agents. Its API searches the web in natural language, with categories for company pages and people profiles, returns clean page contents, answers questions with citations, reruns searches on a schedule as monitors, and runs Exa Agent for multi-step research, list building and enrichment with structured output. The hosted MCP server also works without a key at free rate limits. Signing in with OAuth (the `?login` URL) uses your team's plan and turns on `agent_run`; a client without OAuth can send an API key in the `x-api-key` header instead. The API takes the key as a Bearer token or in `x-api-key`. Usage is pay-as-you-go, and new accounts start with free credits. ## Tools - tool:exa/answer-question — Answer a question from the web: Searches the web for a question and returns a direct answer or a summary with citations, or JSON that matches an output schema. - tool:exa/create-monitor — Monitor the web for new results: Creates a monitor that reruns an Exa search on a schedule and sends only new, deduplicated results to your webhook. - tool:exa/get-page-contents — Read web pages: Returns clean text, the most relevant highlights or a summary for one or more known URLs, from Exa's cache or a fresh crawl. - tool:exa/run-agent — Run a list-building and research agent: Starts an Exa Agent run that searches and reads the web to build lists, enrich records you pass in or research a question, and returns cited findings with optional schema-validated JSON. - tool:exa/search-web — Search the web: Returns web pages that match a natural-language query, up to 100 per call, with their text, highlights or summaries, and can focus on company pages, people profiles or news. ## Links - Website: https://exa.ai - Docs: https://exa.ai/docs --- ref: company:figma name: Figma tools: [tool:figma/edit-design, tool:figma/export-images, tool:figma/upload-images] tags: [capability:design-assets, category:design, has:api, has:mcp] updated: 2026-09-26 --- # Figma The collaborative canvas where teams design, prototype and build products. Figma is a browser-based design tool for interfaces and prototypes, with FigJam for whiteboards and Figma Slides for decks. Its remote MCP server reads designs and writes to Design, FigJam and Slides files; the REST API reads files and renders their layers as images. ## Tools - tool:figma/edit-design — Create or edit a design: Creates, edits, deletes or inspects frames, components, text, images, variables and styles in a Figma Design, FigJam or Slides file. - tool:figma/export-images — Export images: Renders frames or layers from a file as PNG, JPG, SVG or PDF and returns temporary URLs to download them. - tool:figma/upload-images — Upload images: Places PNG, JPG, GIF or WebP images of up to 10 MB into a Figma file, as a fill on a given layer or in new frames. ## Links - Website: https://figma.com - Docs: https://developers.figma.com --- ref: company:firecrawl name: Firecrawl tools: [tool:firecrawl/crawl-site, tool:firecrawl/map-site, tool:firecrawl/run-agent, tool:firecrawl/scrape-url, tool:firecrawl/search-web] tags: [capability:research-accounts, capability:scrape-web, category:scraper, has:api, has:cli, has:mcp] updated: 2026-09-26 --- # Firecrawl The web data API for AI agents — search the web, scrape any page and interact with it. Firecrawl turns websites into data an agent can use. It scrapes a page into markdown or JSON, searches the web, maps and crawls whole sites, and runs an agent that gathers structured data across sources from a prompt. ## Tools - tool:firecrawl/crawl-site — Crawl a website: Follows links from a starting URL and returns the content of every page it reaches, within the limits you set. - tool:firecrawl/map-site — Map a website: Returns the URLs found on a site, with titles and descriptions, without fetching each page's content. - tool:firecrawl/run-agent — Run a research agent: Starts an agent that searches, navigates and reads the web to return the data a prompt describes, as JSON. - tool:firecrawl/scrape-url — Scrape a URL: Returns one page as clean markdown, HTML, links or a screenshot, or as JSON fields extracted with a prompt or schema. - tool:firecrawl/search-web — Search the web: Returns web search results with title, description and URL, and can scrape each result's content in the same call. ## Links - Website: https://firecrawl.dev - Docs: https://docs.firecrawl.dev --- ref: company:front name: Front tools: [tool:front/assign-conversation, tool:front/create-draft, tool:front/search-conversations, tool:front/send-message, tool:front/tag-conversation] tags: [capability:classify-signals, capability:research-accounts, capability:route-alerts, capability:send-email, category:support, has:api, has:mcp] updated: 2026-09-27 --- # Front Customer service platform that handles email, SMS, chat and other channels in one place. Front is a customer service platform where teams work email, SMS, chat and other channels as shared conversations, with internal comments, tags and assignment. Its hosted MCP server, in open beta, acts as the Front teammate who authorizes it, with that teammate's permissions and the `read`, `write` and `send` scopes. Front does not support Dynamic Client Registration: create a developer app with an OAuth feature (Settings, Company, Developer), enable MCP Server feature access, and connect the AI client with that app's client ID and secret. Claude and ChatGPT can connect from their official connector directories instead. The Core API takes a company-level API token as a Bearer token. An admin creates it under Settings, Developers, API Tokens, and its features, namespaces and permissions decide what it reaches; sending messages needs the Send permission. ## Tools - tool:front/assign-conversation — Assign a conversation: Assigns a conversation to a teammate, or unassigns it. - tool:front/create-draft — Draft a new message: Creates an unsent draft that starts a new conversation from a channel, for a teammate to review and send. - tool:front/search-conversations — Search conversations: Returns the conversations that match search text and filters such as sender, contact, tag, inbox, assignee, status or date. - tool:front/send-message — Send a message: Sends a message from a channel to its recipients right away; on the API this starts a new conversation. - tool:front/tag-conversation — Tag a conversation: Adds one or more existing tags to a conversation. ## Links - Website: https://front.com - Docs: https://dev.frontapp.com --- ref: company:g2 name: G2 tools: [tool:g2/browse-buyer-intent, tool:g2/browse-competitive-intelligence, tool:g2/browse-product-buyer-intent, tool:g2/list-product-reviews, tool:g2/unlock-companies] tags: [capability:read-reviews, capability:track-intent, category:intent, has:api, has:mcp] updated: 2026-09-27 --- # G2 The software review marketplace, with buyer intent data on the companies researching your product and its competitors. G2 is a marketplace where buyers compare business software through user reviews. For vendors listed on it, G2 Buyer Intent shows which companies are researching their product, category or competitors, alongside G2's reviews, product catalog and categories. The hosted MCP server signs in with OAuth 2.0. In Claude and ChatGPT, add the G2 MCP connector from their catalogs. G2's OAuth server doesn't support Dynamic Client Registration, so any other client first registers an OAuth app in the G2 Developer Portal and uses its client ID and secret. What an account can read depends on its G2 subscription: buyer intent needs a Buyer Intent license, and Market Intelligence reviews need an Enterprise package. The REST API takes a G2 access token as a Bearer token. Create one in the G2 Developer Portal under Access Tokens and choose the endpoints it can reach; tokens expire a year after they are created. G2 allows 100 API requests per second from each IP address. ## Tools - tool:g2/browse-buyer-intent — Browse buyer intent: Returns the companies researching your products on G2 and what they looked at, such as profiles, pricing or comparisons, across one or more of your products. - tool:g2/browse-competitive-intelligence — Browse competitive intelligence: Returns which competitors the companies researching your product are evaluating on G2, with their comparison activity. - tool:g2/browse-product-buyer-intent — Browse buyer intent for a product: Returns the companies researching one of your products or its competitors on G2, ranked by intent score, with their activity and signal types. - tool:g2/list-product-reviews — List product reviews: Returns the G2 reviews of a product, filterable by reviewer company size, industry, region, role, star rating and date. - tool:g2/unlock-companies — Unlock companies showing intent: Spends G2 Activate credits to reveal up to 25 masked companies that are showing intent for your product, and returns them. ## Links - Website: https://g2.com - Docs: https://documentation.g2.com --- ref: company:github name: GitHub tools: [tool:github/create-issue, tool:github/list-stargazers, tool:github/search-code, tool:github/search-repositories, tool:github/search-users] tags: [capability:build-audience, capability:manage-code, capability:research-accounts, category:code, has:api, has:cli, has:mcp] updated: 2026-09-26 --- # GitHub Code hosting, issues and pull requests, with search across public repositories and developers. GitHub hosts Git repositories and the issues, pull requests and discussions around them. Its search covers public code, repositories and users, so it is also a way to find the teams that use a technology and the developers who follow a project. ## Tools - tool:github/create-issue — Create an issue: Opens a new issue in a repository with a title, body, labels and assignees. - tool:github/list-stargazers — List stargazers: Returns the users who starred a repository, optionally with when each star was created. - tool:github/search-code — Search code: Returns files, and the repositories they live in, whose code matches a query such as an import of a package. - tool:github/search-repositories — Search repositories: Returns repositories that match a query on name, topic, language, stars or owner. - tool:github/search-users — Search users: Returns GitHub users who match a query such as a name, a location or a follower count. ## Links - Website: https://github.com - Docs: https://docs.github.com --- ref: company:gong name: Gong tools: [tool:gong/ask-about-account, tool:gong/ask-about-deal, tool:gong/assign-prospects-to-flow, tool:gong/generate-brief, tool:gong/get-call-transcripts] tags: [capability:research-accounts, capability:review-recordings, capability:send-email, category:revenue-intelligence, has:api, has:mcp] updated: 2026-09-27 --- # Gong Revenue AI that turns the calls and emails your team has with customers into account and deal insights. Gong records and analyzes the calls and emails a revenue team has with customers, ties them to the accounts, deals, contacts and leads in the CRM, and runs Gong Engage flows for outreach. The hosted MCP server is read-only: it answers questions about accounts and deals and writes briefs from their calls and emails, and never returns raw transcripts or email bodies. A Gong tech admin must first register an MCP server integration under Admin center, Settings, Ecosystem, MCP. With automatic registration, people connect by signing in to Gong; a manual integration issues a client ID and secret for the one client allowed to connect. Connecting needs a paid Gong seat, and every answer consumes Gong credits. The API host differs per company: Gong's API settings show it, and OAuth returns it as `api_base_url_for_customer` (the docs' example is `https://company-17.api.gong.io`). A tech admin creates an access key and secret on the Gong API page; `GONG_API_KEY` holds the base64 of `:`. By default a company can make 3 API calls per second and 10,000 per day. ## Tools - tool:gong/ask-about-account — Ask about an account: Answers one plain-language question about a CRM account, such as its risks, objections or competitor mentions, from the calls and emails linked to it. - tool:gong/ask-about-deal — Ask about a deal: Answers one plain-language question about a CRM deal, such as what is blocking it or which next steps were agreed, from the calls and emails linked to it. - tool:gong/assign-prospects-to-flow — Add prospects to an Engage flow: Assigns up to 100 CRM contacts or leads to a Gong Engage flow, starting its email and call to-dos for them. - tool:gong/generate-brief — Generate a brief: Returns a structured brief on a CRM account, deal or contact, with its key themes, stakeholders, risks and next steps drawn from its calls and emails. - tool:gong/get-call-transcripts — Get call transcripts: Returns the transcripts of the calls recorded in a date range, or of chosen calls, as monologues with each speaker's ID, topic and timed sentences. ## Links - Website: https://gong.io - Docs: https://help.gong.io --- ref: company:hubspot name: HubSpot tools: [tool:hubspot/add-to-segment, tool:hubspot/create-note, tool:hubspot/search-crm-records, tool:hubspot/upsert-contacts] tags: [capability:build-audience, capability:manage-crm, category:crm, has:api, has:mcp] updated: 2026-09-26 --- # HubSpot Marketing, sales and service software on one customer platform, built around a shared CRM. HubSpot's marketing, sales and service tools share one CRM of contacts, companies, deals and activities. Its hosted MCP server reads and writes CRM records with the signed-in user's permissions. The REST API takes a service key (in public beta) or an app's static access token as a Bearer token, and its current paths carry a dated version such as `2026-09`. ## Tools - tool:hubspot/add-to-segment — Add records to a segment: Adds contacts or other records, by ID, to a static segment (list). - tool:hubspot/create-note — Create a note: Logs a note on the timeline of the contacts, companies or deals it is associated with. - tool:hubspot/search-crm-records — Search CRM records: Returns contacts, companies, deals or other CRM records that match property filters or a text query. - tool:hubspot/upsert-contacts — Create or update contacts: Creates contacts or updates the ones that already exist with new property values. ## Links - Website: https://hubspot.com - Docs: https://developers.hubspot.com/docs --- ref: company:hunter name: Hunter tools: [tool:hunter/enrich-person-and-company, tool:hunter/find-email, tool:hunter/search-companies, tool:hunter/search-domain, tool:hunter/verify-email] tags: [capability:build-audience, capability:enrich-contacts, capability:find-work-emails, capability:verify-emails, category:data-provider, has:api, has:mcp] updated: 2026-09-27 --- # Hunter Find and verify professional email addresses, enrich people and companies, and run email outreach. Hunter finds and verifies professional email addresses: it lists the people and emails behind a company domain, finds one person's email, checks deliverability, discovers companies that match a profile, enriches people and companies, and runs outreach sequences from saved leads. The hosted MCP server covers all of it; Claude, ChatGPT and Gemini sign in with OAuth, and other clients send the API key in an `X-API-Key` header. The REST API accepts the key in that header, as a Bearer token, or as the `api_key` query parameter. Every plan, including the free one, can use the API and the MCP server. Usage counts against the plan's credits: a search uses 1 credit and a verification half a credit, while Discover (company search) is free. ## Tools - tool:hunter/enrich-person-and-company — Enrich a person and their company: Returns the profile of the person behind an email address, with their name, location and employment, together with their company's profile, in one call. - tool:hunter/find-email — Find a person's email: Returns the most likely work email for a person from their name and company domain or LinkedIn handle, with a confidence score, its verification status and the public sources. - tool:hunter/search-companies — Search companies: Returns up to 100 companies that match a plain-language description or filters such as headquarters location, industry, headcount and company type, at no credit cost. - tool:hunter/search-domain — Search a domain for emails: Returns the email addresses Hunter has found for a company domain, with each person's name, position, seniority, department and a confidence score. - tool:hunter/verify-email — Verify an email address: Checks whether an email address is deliverable and returns its status (valid, invalid, accept_all, webmail, disposable or unknown), a score and the checks behind it. ## Links - Website: https://hunter.io - Docs: https://hunter.io/api-documentation/v2 --- ref: company:instantly name: Instantly tools: [tool:instantly/add-leads-to-campaign, tool:instantly/import-supersearch-leads, tool:instantly/reply-to-email, tool:instantly/search-people, tool:instantly/verify-email] tags: [capability:build-audience, capability:send-email, capability:verify-emails, category:sales-engagement, has:api] updated: 2026-09-27 --- # Instantly Automated email outreach with a B2B lead database, deliverability tools and an AI-powered CRM. Instantly runs cold email outreach: it connects and warms up sending accounts, sends campaigns with sequences and subsequences, finds leads in its SuperSearch B2B lead database, verifies email addresses, and keeps replies in its Unibox inbox and CRM. API v2 takes a workspace API key as a Bearer token; each key carries scopes, every path starts with `/api/v2`, and the workspace shares a limit of 100 requests per second and 6,000 per minute. The `instantly` CLI reads the same key from `INSTANTLY_API_KEY`. Instantly also hosts an MCP server at `https://mcp.instantly.ai/mcp` with a tool for every API v2 endpoint, named like `list_campaigns` or `create_lead`. It authenticates with the API key in the `Authorization` header, and `instantly mcp` runs a local MCP server from the CLI. ## Tools - tool:instantly/add-leads-to-campaign — Add leads to a campaign: Adds up to 1,000 leads to one Instantly campaign or lead list, checking their emails against blocklists and existing leads. - tool:instantly/import-supersearch-leads — Import leads from SuperSearch: Adds the people matching a SuperSearch query to an Instantly lead list, creating the list if needed, and enriches them with work emails or LinkedIn profiles as you ask. - tool:instantly/reply-to-email — Reply to an email: Sends a reply to an email in an Instantly inbox from one of the workspace's connected sending accounts. - tool:instantly/search-people — Search people: Returns people from Instantly's SuperSearch lead database who match filters such as job title, department, level, location, industry or employee count, without their email addresses. - tool:instantly/verify-email — Verify an email address: Checks whether one email address is deliverable and returns verified, invalid or pending, whether its domain is catch-all, and the credits used. ## Links - Website: https://instantly.ai - Docs: https://developer.instantly.ai --- ref: company:intercom name: Intercom tools: [tool:intercom/create-contact, tool:intercom/search-contacts, tool:intercom/search-conversations, tool:intercom/send-message, tool:intercom/track-event] tags: [capability:manage-crm, capability:research-accounts, capability:send-email, capability:track-product-usage, category:support, has:api, has:mcp] updated: 2026-09-27 --- # Intercom Customer service helpdesk with a built-in AI agent, Fin. Intercom is a helpdesk with a natively integrated AI agent, Fin, built around contacts (users and leads), companies and conversations. Its hosted MCP server signs in with OAuth and searches and reads conversations, contacts, companies and Help Center articles, creates and updates articles, and adds internal notes. It serves US and EU workspaces: EU workspaces (`app.eu.intercom.com`) use `https://mcp.eu.intercom.com/mcp`, and AU workspaces are not supported yet. The REST API takes the access token of an app created in the Developer Hub (Configure, then Authentication) as a Bearer token. EU and Australian workspaces call `https://api.eu.intercom.io` and `https://api.au.intercom.io`. Requests use the API version set on the app unless an `Intercom-Version` header, such as `2.16`, overrides it. ## Tools - tool:intercom/create-contact — Create a contact: Creates a user or lead from an email, an external ID or a role, with optional name, phone, owner and custom attributes, and returns the contact. - tool:intercom/search-contacts — Search contacts: Returns the users and leads whose attributes, such as email, email domain, name, phone or a custom attribute, match your filters. - tool:intercom/search-conversations — Search conversations: Returns the conversations that match filters such as state, source type, author email, assignee or a word in the message body. - tool:intercom/send-message — Send a message: Sends an email, in-app or WhatsApp message from a teammate to a user or lead and returns the created message. - tool:intercom/track-event — Track an event: Records a named event with optional metadata against a user or lead, where teammates can filter on it and build segments from it. ## Links - Website: https://intercom.com - Docs: https://developers.intercom.com --- ref: company:klaviyo name: Klaviyo tools: [tool:klaviyo/create-campaign, tool:klaviyo/create-event, tool:klaviyo/send-campaign, tool:klaviyo/subscribe-profiles, tool:klaviyo/upsert-profile] tags: [capability:build-audience, capability:send-email, capability:track-product-usage, category:email, has:api, has:cli, has:mcp] updated: 2026-09-27 --- # Klaviyo Email and SMS marketing on a B2C CRM, with profiles, events, campaigns and flows. Klaviyo is a B2C marketing platform: profiles and the events they generate drive email and SMS campaigns, automated flows, lists and segments. The remote MCP server signs in with OAuth and is open to Owner, Admin and Manager roles; add `read-only=true` to its URL to turn off every tool that writes. The `klaviyo` CLI has a command for every JSON API operation and takes a private API key (`pk_...`). The API takes that key as `Authorization: Klaviyo-API-Key ` plus a `revision` header with the API version date, such as `2026-07-15`; the CLI sends both for you. ## Tools - tool:klaviyo/create-campaign — Create a campaign: Creates a campaign for the lists and segments you include, with its messages and send strategy, and returns it. - tool:klaviyo/create-event — Create an event: Records one event, such as a purchase, against a profile and creates or updates that profile. - tool:klaviyo/send-campaign — Send a campaign: Starts an asynchronous job that sends a campaign to its configured audience. - tool:klaviyo/subscribe-profiles — Subscribe profiles to marketing: Records marketing consent for up to 1,000 profiles on email, SMS, WhatsApp or push, optionally adding them to a list. - tool:klaviyo/upsert-profile — Create or update a profile: Creates a profile or updates the one that matches, with contact details, location and custom properties. ## Links - Website: https://klaviyo.com - Docs: https://developers.klaviyo.com/en --- ref: company:lemlist name: lemlist tools: [tool:lemlist/add-lead-to-campaign, tool:lemlist/enrich-person, tool:lemlist/search-companies, tool:lemlist/search-people, tool:lemlist/send-inbox-email] tags: [capability:build-audience, capability:find-work-emails, capability:send-email, category:sales-engagement, has:api, has:cli, has:mcp] updated: 2026-09-27 --- # lemlist Sales engagement platform to find leads, enrich contacts and run multichannel outreach campaigns. lemlist is a sales engagement platform for cold outreach: it finds leads in its people and companies databases, enriches them with verified emails and phone numbers, runs multichannel campaigns across email, LinkedIn, phone and WhatsApp, and keeps contacts and replies in its own CRM and inbox. The MCP server and the `lemlist` CLI sign in with OAuth; the MCP server also accepts an API key in an `X-API-Key` header, and `?bucket=` narrows the tools it advertises. The CLI's `lemlist api ` calls any endpoint of the REST API. The REST API uses HTTP Basic auth with an empty username and the API key as the password, so `LEMLIST_API_KEY` must hold the base64 encoding of `:` followed by the key. Each key may send 20 requests every 2 seconds, and enrichment spends the team's credits. ## Tools - tool:lemlist/add-lead-to-campaign — Add a lead to a campaign: Creates a lead in a lemlist campaign from an email, name, company and custom variables, optionally finding or verifying their email first; it never updates an existing lead. - tool:lemlist/enrich-person — Enrich a person: Starts a lookup that finds a person's verified email, phone number or LinkedIn profile, or verifies an email you have, and returns an id to fetch the result with. - tool:lemlist/search-companies — Search companies: Returns companies from lemlist's database that match filters such as industry, company size or technologies used, with their location, employee count and technologies. - tool:lemlist/search-people — Search people: Returns people from lemlist's B2B database who match filters such as country, job title or department, with their LinkedIn profile and current company but no email address. - tool:lemlist/send-inbox-email — Send an email from the inbox: Sends one email to a lemlist contact or lead from a connected mailbox, as a new message or as a reply in their latest thread. ## Links - Website: https://lemlist.com - Docs: https://developer.lemlist.com --- ref: company:linear name: Linear tools: [tool:linear/add-customer-request, tool:linear/create-issue, tool:linear/list-issues] tags: [capability:manage-tasks, category:project-management, has:api, has:mcp] updated: 2026-09-27 --- # Linear The system for product development, built for planning and building with AI agents. Linear is where product teams and AI agents plan and build: issues, projects, cycles, initiatives and documents, plus Customer Requests that tie feedback from customers to the work it asks for. Its hosted MCP server finds, creates and updates issues, projects, comments and documents. It signs in with OAuth, and also accepts a Linear API key as a bearer token; connect to `https://mcp.linear.app/mcp/readonly` for read tools only. The API is GraphQL only: every call is a `POST` to `https://api.linear.app/graphql` with a query or mutation in the body. A personal API key goes in the `Authorization` header as is, without `Bearer`; an OAuth access token is sent as `Bearer `. ## Tools - tool:linear/add-customer-request — Add a customer request to an issue: Attaches a customer's request, with its text and an optional source URL, to an issue, so the issue shows which customers asked for it. - tool:linear/create-issue — Create or update an issue: Creates an issue in a team with its title, description, assignee, labels and priority, or updates an existing issue when you pass its id. - tool:linear/list-issues — List issues: Returns the issues that match a filter on fields such as assignee, label, status, project or priority, one page at a time. ## Links - Website: https://linear.app - Docs: https://linear.app/developers --- ref: company:loom name: Loom tools: [tool:loom/get-meeting-action-items, tool:loom/get-video, tool:loom/list-videos, tool:loom/set-video-visibility, tool:loom/upload-video] tags: [capability:review-recordings, capability:store-files, category:video, has:mcp] updated: 2026-09-27 --- # Loom Screen and meeting recordings with transcripts, AI briefs and action items, shared as a link. Loom, now part of Atlassian, records screen and camera videos and meetings and adds transcripts, AI briefs and meeting action items. Agents reach Loom through the Atlassian Rovo MCP server, which reads videos with their transcripts, comments and action items, and uploads, shares and organizes videos as the signed-in user. Only Loom workspaces linked to an Atlassian site are available, and Loom has no open API. The server lists a few primary tools, such as `getLoomVideo`, directly; the other Loom tools are deferred: find them with `discover` and run them through `executeRead`, `executeWrite` or `executeDestructive`, by risk tier. A client that needs every tool listed up front can connect to `https://mcp.atlassian.com/v2/mcp?tools=all`. The server signs in with OAuth 2.1; an API token also works once an organization admin enables it. ## Tools - tool:loom/get-meeting-action-items — Get meeting action items: Returns the action items Loom's AI extracted from a recorded meeting. - tool:loom/get-video — Get a video: Returns a Loom video's metadata and, on request, its transcript, comments, AI brief, meeting action items or attached links. - tool:loom/list-videos — List my videos: Returns the videos the signed-in user owns, most recent first. - tool:loom/set-video-visibility — Set a video's visibility: Sets a Loom video's visibility to OWNER, WORKSPACE or PUBLIC. - tool:loom/upload-video — Upload a video: Starts uploading a new video to Loom, the first of two steps before it is published. ## Links - Website: https://loom.com - Docs: https://support.atlassian.com/loom/ --- ref: company:loops name: Loops tools: [tool:loops/create-audience-segment, tool:loops/create-campaign, tool:loops/send-event, tool:loops/send-transactional-email, tool:loops/upsert-contact] tags: [capability:build-audience, capability:send-email, category:email, has:api, has:cli, has:mcp] updated: 2026-09-27 --- # Loops Email platform for software companies, with campaigns, event-triggered workflows and transactional email. Loops is an email platform for software companies: marketing campaigns, workflows that start when an event arrives or a contact changes, and transactional email, all sent from one product. The MCP server exposes four generic tools: `search` finds a Loops API operation, `describe` shows its request shape, `execute` runs it for a team, and `teams` lists the teams you can reach. It signs in with OAuth, so the client must support Client ID Metadata Documents or be preregistered with Loops. The `loops` CLI and the REST API take an API key. The API allows 10 requests per second per team, and 60 per minute on the content endpoints, campaigns included. ## Tools - tool:loops/create-audience-segment — Create an audience segment: Saves a named segment of the contacts that match an audience filter, for targeting campaigns and filtering workflows. - tool:loops/create-campaign — Create a campaign: Creates a draft marketing campaign with an empty email message, optionally aimed at a mailing list, segment or filter and scheduled. - tool:loops/send-event — Send an event: Sends a named event for a contact, found by email address or user ID, to start the workflows it triggers, and creates the contact if it doesn't exist. - tool:loops/send-transactional-email — Send a transactional email: Sends a published transactional email to one recipient, filled with the data variables you pass. - tool:loops/upsert-contact — Create or update a contact: Updates the contact with a matching email address or user ID, or creates it, with properties and mailing list subscriptions. ## Links - Website: https://loops.so - Docs: https://loops.so/docs --- ref: company:lusha name: Lusha tools: [tool:lusha/enrich-company, tool:lusha/enrich-person, tool:lusha/get-company-signals, tool:lusha/reveal-contact-details, tool:lusha/search-people] tags: [capability:build-audience, capability:enrich-contacts, capability:find-work-emails, capability:research-accounts, capability:track-intent, category:data-provider, has:api, has:mcp] updated: 2026-09-27 --- # Lusha Verified B2B emails, phone numbers and buying signals for prospecting and enrichment. Lusha is a B2B data platform for prospecting and enrichment: verified emails, direct and mobile phone numbers, company firmographics, and signals such as job changes, promotions, hiring surges and funding news. Its MCP server finds and enriches contacts and companies, searches by ideal customer profile, finds lookalikes and returns signals and scored recommendations. The MCP server signs in with OAuth; a client without OAuth can send a Lusha API key in the `x-api-key` header instead. The REST API (version 3, under `https://api.lusha.com/v3/`) takes the key in an `api_key` header. Searches return previews without emails or phones. Credits are charged per search result, per revealed email or phone and per matched signal, and failed lookups are not charged. ## Tools - tool:lusha/enrich-company — Enrich a company: Returns a company's firmographics, such as size, revenue, industry, location and technologies, found by its domain or name. - tool:lusha/enrich-person — Enrich a person: Returns a person's verified email and direct and mobile phone numbers, with their title and company, found by email, LinkedIn URL, or first name, last name and company. - tool:lusha/get-company-signals — Get a company's buying signals: Returns recent signals for companies found by name or domain, such as headcount growth, hiring surges, website traffic changes and news like funding rounds or executive hires. - tool:lusha/reveal-contact-details — Reveal emails and phone numbers: Reveals the emails and direct and mobile phone numbers of up to 50 contacts found by search, charging only for the fields you ask to reveal. - tool:lusha/search-people — Search for people: Returns preview profiles of contacts who match job title, seniority, department, location and company filters, each listing which emails and phones can be revealed and at what credit cost. ## Links - Website: https://lusha.com - Docs: https://docs.lusha.com --- ref: company:mailchimp name: Mailchimp tools: [tool:mailchimp/add-list-member-event, tool:mailchimp/create-campaign, tool:mailchimp/send-campaign, tool:mailchimp/tag-list-member, tool:mailchimp/upsert-list-member] tags: [capability:build-audience, capability:send-email, capability:track-product-usage, category:email, has:api] updated: 2026-09-27 --- # Mailchimp Email and SMS marketing platform, with audiences, campaigns and automation flows. Mailchimp is an email and SMS marketing platform. Its Marketing API manages audiences of contacts, organized with tags, segments and events, and creates and sends campaigns. `{dc}` in the API URL is your account's data center, such as `us6`: the part of the API key after the dash. The key works as a Bearer token (HTTP Basic auth with any username also works), and an account gets 10 simultaneous connections. Transactional email (formerly Mandrill) is a separate API at `https://mandrillapp.com/api/1.0` with its own key; its MCP server at `https://mandrillapp.com/mcp` takes that key as a Bearer token. ## Tools - tool:mailchimp/add-list-member-event — Add an event for a contact: Records a named event, with optional properties and time, for one audience contact. - tool:mailchimp/create-campaign — Create a campaign: Creates an unsent campaign for one audience, or a segment of it, with its subject line, sender and settings. - tool:mailchimp/send-campaign — Send a campaign: Sends a campaign to its recipients right away; an RSS campaign sends on its schedule instead. - tool:mailchimp/tag-list-member — Tag a contact: Adds or removes tags on one audience contact, creating any active tag that doesn't exist yet. - tool:mailchimp/upsert-list-member — Add or update a contact: Adds a contact to an audience or updates the contact with that email address, with its subscription status and merge fields. ## Links - Website: https://mailchimp.com - Docs: https://mailchimp.com/developer/ --- ref: company:make name: Make tools: [tool:make/create-scenario, tool:make/get-scenario-run, tool:make/list-scenarios, tool:make/run-scenario] tags: [capability:automate-workflows, category:automation, has:api, has:cli, has:mcp] updated: 2026-09-27 --- # Make Visual automation platform; run and build scenarios across 3,500+ apps from an agent. Make is a visual automation platform for building AI agents, agentic workflows and integrations without writing code. Its workflows, called scenarios, connect 3,500+ pre-built apps or any service with an API. The hosted MCP server signs in with OAuth, where you pick the organization and scopes: every active, on-demand scenario becomes a tool on any plan, and on paid plans management tools view and modify scenarios, connections, webhooks and data stores. The `make-cli` CLI and the REST API take an API token created in your Make profile; the API sends it as `Authorization: Token `. `{zone_url}` is the zone your organization is hosted in, such as `eu1.make.com` or `us2.make.com`, as shown in your Make dashboard's address bar; the CLI reads it from `MAKE_ZONE`. ## Tools - tool:make/create-scenario — Create a scenario: Creates a Make scenario in a team from a blueprint of modules and a schedule, and returns the new scenario's details. - tool:make/get-scenario-run — Get a scenario run: Returns one scenario run's status, such as running, success, warning or error, and its outputs or error once it ends. - tool:make/list-scenarios — List scenarios: Returns the scenarios in a Make team or organization, filterable by name, folder and whether they are active. - tool:make/run-scenario — Run a scenario: Runs an active Make scenario with the inputs you pass and returns the run's status, execution ID and, when the scenario defines them, its outputs. ## Links - Website: https://make.com - Docs: https://developers.make.com --- ref: company:metabase name: Metabase tools: [tool:metabase/query-metrics, tool:metabase/run-sql-query] tags: [capability:track-product-usage, category:product-analytics, has:api, has:mcp] updated: 2026-09-27 --- # Metabase Open-source analytics: questions, dashboards and metrics on your own database. Metabase is open-source analytics software that grounds every answer in your semantic layer (your metrics and business logic), so you can inspect the query behind it. Each Metabase is served from its own address: replace `{your-metabase-url}` with it. An admin turns the MCP server on under Admin > AI > MCP, and it signs in with OAuth. API keys are created under Admin > Settings > Authentication > API keys; a key's group decides what it can read. ## Tools - tool:metabase/query-metrics — Query tables and metrics: Runs a query against a table or saved metric through the semantic layer and returns the results. - tool:metabase/run-sql-query — Run a SQL query: Runs a native SQL query against a connected database and returns the rows. ## Links - Website: https://metabase.com - Docs: https://www.metabase.com/docs/latest/ --- ref: company:mixpanel name: Mixpanel tools: [tool:mixpanel/create-cohort, tool:mixpanel/query-profiles, tool:mixpanel/query-saved-report, tool:mixpanel/run-query] tags: [capability:build-audience, capability:track-product-usage, category:product-analytics, has:api, has:cli, has:mcp] updated: 2026-09-26 --- # Mixpanel Product analytics, session replay, experiments and feature flags on your event data. Mixpanel is a product intelligence platform that combines event analytics (insights, funnels, flows and retention), session replay, experiments, feature flags and AI-powered insights. The URLs above are for US projects. EU and India projects use `https://mcp-eu.mixpanel.com/mcp` and `https://mcp-in.mixpanel.com/mcp` for MCP, and `https://eu.mixpanel.com/api/query` and `https://in.mixpanel.com/api/query` for the Query API. The Query API authenticates with a service account: `MIXPANEL_SA_TOKEN` holds the base64 of `:`, and every request carries `project_id`. ## Tools - tool:mixpanel/create-cohort — Create a cohort: Creates a saved cohort of users from a cohort definition. - tool:mixpanel/query-profiles — Query profiles: Returns the user or group profiles that match a selector expression or belong to a cohort. - tool:mixpanel/query-saved-report — Query a saved report: Returns the data behind a saved report, such as an Insights report, by its ID. - tool:mixpanel/run-query — Run a query: Runs an ad-hoc insights, funnels, flows or retention query on the project's events and returns the results. ## Links - Website: https://mixpanel.com - Docs: https://docs.mixpanel.com --- ref: company:monday name: monday.com tools: [tool:monday/comment-on-item, tool:monday/create-item, tool:monday/list-board-items, tool:monday/notify-user, tool:monday/update-item] tags: [capability:manage-tasks, capability:route-alerts, category:project-management, has:api, has:mcp] updated: 2026-09-27 --- # monday.com The AI work platform for people and agents, from projects to sales CRM and service. monday.com is a work platform where teams run work management, sales CRM, dev and service work on boards: each row is an item, and its columns hold typed values such as a status, a date or an email. The hosted Platform MCP server has more than 60 tools for boards, items, docs, forms, dashboards and automations. It signs in with OAuth or takes a personal API token as a bearer token, and every MCP call runs as a GraphQL API request that counts toward the account's daily API call limit. The API is GraphQL: every call is a `POST` to `https://api.monday.com/v2` with a query or mutation in the body, and the personal API token goes in the `Authorization` header as is. Find the token under your profile picture, then Developers, then API token. Viewer seats can't use the API. ## Tools - tool:monday/comment-on-item — Comment on an item: Posts an update, monday.com's comment, on an item, or a reply to an existing update, with optional mentions. - tool:monday/create-item — Create an item: Creates an item, a row on a board, with its name and column values, and returns the item's id and URL. - tool:monday/list-board-items — List a board's items: Returns a board's items, filtered, searched or sorted, with their column values when asked, one page at a time. - tool:monday/notify-user — Notify a user: Sends a user a monday.com bell notification that links to an item, a board or an update, with an email if their settings allow. - tool:monday/update-item — Update an item: Sets one or more column values on an existing item in one call, such as its status, a date or an email. ## Links - Website: https://monday.com - Docs: https://developer.monday.com/api-reference/docs --- ref: company:n8n name: n8n tools: [tool:n8n/create-workflow, tool:n8n/find-workflows, tool:n8n/get-workflow-run, tool:n8n/run-workflow] tags: [capability:automate-workflows, category:automation, has:api, has:cli, has:mcp] updated: 2026-09-27 --- # n8n Workflow automation with AI for technical teams, on n8n Cloud or self-hosted. n8n runs automation workflows, with AI steps, that a team builds visually or in code. It runs on n8n Cloud or self-hosted, so every way in points at your own instance: `{your-n8n-domain}` and `{your-domain}` are its domain without `https://`, such as `your-instance.app.n8n.cloud` on n8n Cloud or the domain that serves your n8n editor when self-hosted. The built-in MCP server is off until an instance owner or admin turns on Settings > Instance-level MCP. It signs in with OAuth, and an agent can run or change only the workflows enabled for MCP access. The `n8n-cli` CLI and the public REST API take an API key from Settings > n8n API, sent in the `X-N8N-API-KEY` header; the CLI reads the instance URL from `N8N_URL`. The API isn't available during the free trial. ## Tools - tool:n8n/create-workflow — Create a workflow: Creates an n8n workflow from its nodes and connections and returns the new workflow with its ID. - tool:n8n/find-workflows — Find workflows: Returns the n8n workflows you have access to, filtered by name, tags or project, with each one's ID and whether it is active. - tool:n8n/get-workflow-run — Get a workflow run: Returns one n8n execution's status and start and stop times and, when asked, the data each node produced. - tool:n8n/run-workflow — Run a workflow: Starts one run of an n8n workflow, passing chat, form or webhook input to its trigger, and returns the execution ID without waiting for it to finish. ## Links - Website: https://n8n.io - Docs: https://docs.n8n.io --- ref: company:notion name: Notion tools: [tool:notion/create-page, tool:notion/query-data-source, tool:notion/read-page, tool:notion/search-workspace, tool:notion/update-page] tags: [capability:manage-docs, category:docs, has:api, has:cli, has:mcp] updated: 2026-09-27 --- # Notion Docs, wikis and databases in one AI workspace. Notion is an AI workspace for docs, wikis and databases, where teams build Custom Agents, search across their apps and automate busywork. A database holds one or more data sources, and each row of a data source is a page. API requests also send a `Notion-Version` header; `ntn api` adds it for you. One personal access token works for the CLI and the API: the CLI reads it as `NOTION_API_TOKEN` and API requests as `NOTION_API_KEY`, each the name that way's docs use. ## Tools - tool:notion/create-page — Create a page: Creates a page under a parent page, or a new row in a data source, with property values and content. - tool:notion/query-data-source — Query a data source: Returns the pages in a data source that match a filter, in the requested sort order. - tool:notion/read-page — Read a page: Returns a page's content as Notion-flavored markdown. - tool:notion/search-workspace — Search the workspace: Finds pages and data sources that match a query. - tool:notion/update-page — Update a page: Changes a page's property values, icon or cover. ## Links - Website: https://notion.com - Docs: https://developers.notion.com --- ref: company:openai name: OpenAI tools: [tool:openai/create-image, tool:openai/create-response] tags: [capability:design-assets, capability:write-copy, category:ai-model, has:api, has:cli] updated: 2026-09-26 --- # OpenAI GPT models for text, structured output, images and speech through one API. OpenAI builds the GPT models and ChatGPT. Its API generates text and JSON that follows a schema, can call built-in tools such as web search and file search, and creates images, speech and embeddings. ## Tools - tool:openai/create-image — Create an image: Generates images from a text prompt; GPT image models return them base64-encoded. - tool:openai/create-response — Create a response: Generates text, or JSON that follows a schema you pass, from a prompt, optionally using tools such as web search. ## Links - Website: https://openai.com - Docs: https://developers.openai.com/api/docs --- ref: company:outreach name: Outreach tools: [tool:outreach/add-prospects-to-sequence, tool:outreach/ask-account-question, tool:outreach/create-account, tool:outreach/create-prospect, tool:outreach/search-prospects] tags: [capability:manage-crm, capability:research-accounts, capability:send-email, category:sales-engagement, has:api, has:mcp] updated: 2026-09-27 --- # Outreach AI platform for revenue teams to work prospects and accounts, run sequences and forecast deals. Outreach is a sales engagement and revenue platform: reps work prospects and accounts, enroll prospects in multi-step sequences, and track opportunities, recorded meetings and forecasts. Its hosted MCP server searches, creates and deletes those records and answers questions about accounts and opportunities, signing in with OAuth 2.1 as the Outreach user. It needs the Amplify add-on, an admin must switch it on under Administration > Organization > Org Info, and create tools are on while delete tools are off until the admin allows them. The REST API follows JSON:API 1.0: send `Content-Type: application/vnd.api+json` and a bearer token from an Outreach app's OAuth 2.0 flow. It is rate limited to 10,000 requests per hour per user. ## Tools - tool:outreach/add-prospects-to-sequence — Add prospects to a sequence: Enrolls one or more prospects in an Outreach sequence, sending from the mailbox you choose, and returns the status of the batch. - tool:outreach/ask-account-question — Ask a question about an account: Answers a plain-language question about one Outreach account from its records, call transcripts and related data, and saves the question and answer in Outreach. - tool:outreach/create-account — Create an account: Creates an account, the company record that groups prospects in Outreach, from a name, domain and other company fields, and returns its id. - tool:outreach/create-prospect — Create a prospect: Creates a prospect, the person record Outreach sequences and tasks act on, from a name, emails, title and company, and returns its id. - tool:outreach/search-prospects — Search prospects: Returns Outreach prospects that match filters such as name, account, owner or stage, with their emails, title and engagement counts. ## Links - Website: https://outreach.io - Docs: https://developers.outreach.io --- ref: company:paddle name: Paddle tools: [tool:paddle/create-discount, tool:paddle/create-transaction, tool:paddle/get-mrr-metrics, tool:paddle/list-customers, tool:paddle/list-subscriptions] tags: [capability:collect-payments, capability:track-revenue, category:payments, has:api, has:mcp] updated: 2026-09-27 --- # Paddle Merchant of record for SaaS, apps and AI products; payments, tax and subscriptions in one integration. Paddle is a merchant of record for SaaS, mobile app, AI and digital product companies: it takes care of payments, tax, fraud and compliance and manages subscriptions in a single integration. These files cover Paddle Billing; the legacy Paddle Classic is a separate product with a different API. Instead of one tool per API operation, the hosted MCP server has three tools: `search` finds an API method and its parameters, `execute` runs JavaScript that chains one or more API calls, and `report_missing_tool` flags a gap to Paddle. The live server signs in with OAuth and starts with read access to what your Paddle role permits; grant write access, or remove the connection, under Paddle > Connectors > MCP. The sandbox server (`https://sandbox-mcp.paddle.com/mcp`) and sandbox API (`https://sandbox-api.paddle.com`) take a sandbox API key instead. The API uses Bearer API keys created under Paddle > Developer tools > Authentication, each with only the permissions it needs. ## Tools - tool:paddle/create-discount — Create a discount: Creates a flat, per-seat or percentage discount, with a code customers can redeem at checkout, and returns the discount. - tool:paddle/create-transaction — Create a transaction: Creates a transaction for the catalog prices or one-off items you pass and returns it with a checkout URL for collecting payment. - tool:paddle/get-mrr-metrics — Get MRR metrics: Returns daily monthly recurring revenue totals between two dates, counting new subscriptions, upgrades, downgrades and churn. - tool:paddle/list-customers — List customers: Returns active customers, or only those whose email exactly matches one of the addresses you pass. - tool:paddle/list-subscriptions — List subscriptions: Returns subscriptions filtered by status, customer or price, 50 per page by default and up to 200. ## Links - Website: https://paddle.com - Docs: https://developer.paddle.com --- ref: company:people-data-labs name: People Data Labs tools: [tool:people-data-labs/enrich-company, tool:people-data-labs/enrich-person, tool:people-data-labs/identify-ip-company, tool:people-data-labs/search-companies, tool:people-data-labs/search-people] tags: [capability:build-audience, capability:enrich-contacts, capability:research-accounts, capability:track-intent, category:data-provider, has:api] updated: 2026-09-27 --- # People Data Labs Person and company data APIs for enrichment, search and IP-to-company lookups. People Data Labs (PDL) is a B2B data provider. Its REST API matches people against a dataset of nearly three billion profiles and companies against its company records, searches both with Elasticsearch or SQL queries, and resolves IP addresses to the companies behind them. Official SDKs cover Python, JavaScript, Ruby, Go and Rust. The API takes a key in the `X-Api-Key` header. Enrichment is charged per match and search per record returned. The free plan is meant for testing and returns contact fields such as emails, phone numbers and street-level locations only as true/false flags; a paid Pro plan returns their values. ## Tools - tool:people-data-labs/enrich-company — Enrich a company: Returns one company's profile, with size, employee count, industry, founding year, location, funding stage and total raised, and social profiles, matched from its name, website, profile URL or ticker. - tool:people-data-labs/enrich-person — Enrich a person: Returns one person's profile, with job title, employer, work history, education, skills and social profiles, plus work email and phone numbers on paid plans, matched from an email, phone, profile URL, or name and company. - tool:people-data-labs/identify-ip-company — Identify the company behind an IP address: Returns the company associated with an IP address, with a confidence level, name, website, size and industry, and on request the IP's location and whether it is a VPN, proxy, mobile or hosting address. - tool:people-data-labs/search-companies — Search companies: Returns up to 100 company records per call that match an Elasticsearch or SQL query over PDL's company fields, such as industry, size, location and funding. - tool:people-data-labs/search-people — Search for people: Returns up to 100 person records per call that match an Elasticsearch or SQL query over PDL's person fields, such as job title, employer, location and skills. ## Links - Website: https://peopledatalabs.com - Docs: https://docs.peopledatalabs.com --- ref: company:perplexity name: Perplexity tools: [tool:perplexity/ask-question, tool:perplexity/deep-research, tool:perplexity/get-page-snippets, tool:perplexity/search-people, tool:perplexity/search-web] tags: [capability:build-audience, capability:research-accounts, capability:scrape-web, category:web-search, has:api, has:cli, has:mcp] updated: 2026-09-27 --- # Perplexity Real-time web search, web-grounded answers and research for agents and apps. Perplexity's API platform brings real-time, web-wide research and Q&A to your products. The Search API returns ranked web results; the Agent API answers and researches with web search using models from several providers; the Router and Embeddings APIs cover open-weight models and embeddings. Sonar Chat Completions was replaced by the Agent API and reached its end of support on September 27, 2026. The hosted MCP server offers `perplexity_search`, `perplexity_ask`, `perplexity_research` and `perplexity_reason`. It signs in with your Perplexity account and bills tool calls to the API organization you pick, which you must administer. The `pplx` CLI returns Search API results and page snippets as JSON. ## Tools - tool:perplexity/ask-question — Ask a question: Answers a question from current web sources with inline citations, tuned for quick facts and short summaries. - tool:perplexity/deep-research — Run deep research: Researches a question across many web sources with extended reasoning and returns a thorough answer with citations. - tool:perplexity/get-page-snippets — Get page snippets: Returns only the passages of one or more web pages that are relevant to a query, as JSON. - tool:perplexity/search-people — Search for people: Returns web results about professionals who match a name, role, company or location, with titles, URLs and snippets naming their jobs and employers. - tool:perplexity/search-web — Search the web: Returns ranked web results for a query, each with its title, URL, snippet and dates, optionally limited to domains or a date range. ## Links - Website: https://perplexity.ai - Docs: https://docs.perplexity.ai --- ref: company:pipedrive name: Pipedrive tools: [tool:pipedrive/create-deal, tool:pipedrive/create-lead, tool:pipedrive/create-note, tool:pipedrive/create-person, tool:pipedrive/search-persons] tags: [capability:manage-crm, category:crm, has:api, has:mcp] updated: 2026-09-27 --- # Pipedrive Sales CRM built around deals and pipelines. Pipedrive is a sales CRM for small and medium-sized businesses, built around deals, leads, people, organizations, activities and notes. Its hosted MCP server is on every plan, and its usage counts against the plan's token limits. It signs in with OAuth, can only see and change what the signed-in user can, and records every change in the change log. The REST API takes the user's personal API token in the `x-api-token` header; a user has one active token at a time. Each company has its own API host: `GET https://api.pipedrive.com/v1/users/me` returns it as `company_domain`. Persons, organizations, deals and activities are on `/api/v2/`; creating leads and notes is still on `/api/v1/`. ## Tools - tool:pipedrive/create-deal — Create a deal: Creates a deal with a title and, optionally, its pipeline stage, value, currency, person and organization, and returns the new deal. - tool:pipedrive/create-lead — Create a lead: Adds a lead to the Leads Inbox, linked to an existing person, organization or both, and returns it. - tool:pipedrive/create-note — Create a note: Attaches an HTML note to a lead, deal, person or organization. - tool:pipedrive/create-person — Create a person: Creates a person (contact) with a name and, optionally, emails, phones, an organization and an owner, and returns the new person. - tool:pipedrive/search-persons — Search for people: Returns the people (contacts) in Pipedrive whose name, email, phone, notes or custom fields match a search term, each with a relevance score. ## Links - Website: https://pipedrive.com - Docs: https://developers.pipedrive.com --- ref: company:posthog name: PostHog tools: [tool:posthog/create-cohort, tool:posthog/run-sql-query] tags: [capability:build-audience, capability:track-product-usage, category:product-analytics, has:api, has:cli, has:mcp] updated: 2026-09-27 --- # PostHog Product analytics, session replay, feature flags and experiments on one platform. PostHog is a product platform that combines product and web analytics, session replay, feature flags, experiments, surveys, error tracking and a CDP in one place. The API URL above is US Cloud; EU Cloud projects use `https://eu.posthog.com`. The hosted MCP server routes to the right region from the account you sign in with. The CLI reads its key as `POSTHOG_CLI_API_KEY` and the API as `POSTHOG_PERSONAL_API_KEY`: each is the name that way's docs use. ## Tools - tool:posthog/create-cohort — Create a cohort: Creates a cohort of persons from property or behavioral filters, or a static cohort from a list of person IDs. - tool:posthog/run-sql-query — Run a SQL query: Runs a SQL (HogQL) query over the project's events, persons and other data and returns the rows. ## Links - Website: https://posthog.com - Docs: https://posthog.com/docs --- ref: company:resend name: Resend tools: [tool:resend/add-contact-to-segment, tool:resend/create-broadcast, tool:resend/create-contact, tool:resend/send-email, tool:resend/send-event] tags: [capability:build-audience, capability:send-email, category:email, has:api, has:cli, has:mcp] updated: 2026-09-27 --- # Resend Email API for developers, with broadcasts, contacts and event-triggered automations. Resend is an email API for developers. It sends transactional email and marketing broadcasts from your verified domains, keeps contacts in segments with topic subscriptions, and runs automations that custom events start. The hosted MCP server, the `resend` CLI and the REST API each cover the whole platform. The MCP server signs in with OAuth; an agent that can't open a browser can send an API key as a Bearer token instead. Direct API requests must also send a `User-Agent` header, and a team gets 10 requests per second by default. ## Tools - tool:resend/add-contact-to-segment — Add a contact to a segment: Adds an existing contact, found by ID or email address, to a segment that broadcasts can target. - tool:resend/create-broadcast — Create a broadcast: Creates a marketing email to every subscribed contact in one segment, saved as a draft or, with send set to true, sent or scheduled at once. - tool:resend/create-contact — Create a contact: Adds a contact with an email address and optional name, custom properties, segments and topic subscriptions, and returns its ID. - tool:resend/send-email — Send an email: Sends one email from a verified domain to up to 50 recipients, now or at a scheduled time, and returns its ID. - tool:resend/send-event — Send an event: Sends a named event for one contact, by contact ID or email address, and starts every automation that event triggers. ## Links - Website: https://resend.com - Docs: https://resend.com/docs --- ref: company:salesforce name: Salesforce tools: [tool:salesforce/create-record, tool:salesforce/query-records, tool:salesforce/search-records, tool:salesforce/update-record] tags: [capability:manage-crm, category:crm, has:api, has:cli, has:mcp] updated: 2026-09-27 --- # Salesforce CRM for accounts, contacts, leads and opportunities. Salesforce is a CRM: accounts, contacts, leads and opportunities, as objects each org can extend. The MCP server is Salesforce's hosted SObject Mutations server for production orgs: it queries, searches, creates and updates records but never deletes them. Sandboxes use `https://api.salesforce.com/platform/mcp/v1/sandbox/platform/sobject-mutations`, and an admin must first create an External Client App and activate the server. The REST API runs on each org's own My Domain URL, written `https://{MyDomainName}.my.salesforce.com` here (`MyDomainName` in Salesforce's docs), and its paths carry the API version as `vXX.X`; after `sf org login web`, `sf org display` prints both as Instance Url and Api Version. ## Tools - tool:salesforce/create-record — Create a record: Creates a record of any object, such as a Lead, Contact or Opportunity, and returns its new ID. - tool:salesforce/query-records — Query records with SOQL: Runs a SOQL query and returns the matching records with the fields it selects. - tool:salesforce/search-records — Search records with SOSL: Runs a SOSL text search across several objects at once and returns the matches grouped by object. - tool:salesforce/update-record — Update a record: Changes the fields you pass on one record, found by its ID, and leaves every other field as it is. ## Links - Website: https://salesforce.com - Docs: https://developer.salesforce.com/docs --- ref: company:salesloft name: Salesloft tools: [tool:salesloft/add-person-to-cadence, tool:salesloft/search-accounts, tool:salesloft/search-conversations, tool:salesloft/search-people, tool:salesloft/upsert-person] tags: [capability:manage-crm, capability:review-recordings, capability:send-email, category:sales-engagement, has:api, has:mcp] updated: 2026-09-27 --- # Salesloft Revenue platform where sales teams run cadences, record conversations and manage deals. Salesloft is a revenue platform: sales teams keep people and accounts, run cadences of email, phone and other steps, record and transcribe conversations, and track opportunities synced from their CRM. Its hosted MCP server is read-only and in beta: it searches and reads people, accounts, opportunities, conversations and users, but can't write anything or read cadences. It comes with Salesloft's Agent packages, an admin must turn on Enable MCP Server under Settings > Artificial Intelligence Settings, users sign in with OAuth, and every MCP call counts against the team's API rate limit. Customers call the REST API with an API key sent as a Bearer token: create one under Your Applications > API Keys in Salesloft and give it the scopes the calls need (partners build OAuth apps instead). Every path starts with `/v2`, and the team shares a limit of 600 cost points per minute. ## Tools - tool:salesloft/add-person-to-cadence — Add a person to a cadence: Adds one person to a Salesloft cadence and returns the cadence membership, whose state shows whether the cadence has started for them. - tool:salesloft/search-accounts — Search accounts: Returns Salesloft accounts, the companies a team sells to, that match filters such as domain, name, owner, industry, tag or open opportunity. - tool:salesloft/search-conversations — Search conversations: Returns recorded calls and meetings in Salesloft, filtered by account, person, owner, platform, duration or date, each with its title, duration, account and person. - tool:salesloft/search-people — Search people: Returns Salesloft people, the contacts and leads a team works, that match filters such as email address, name, company, title, account or cadence. - tool:salesloft/upsert-person — Create or update a person: Creates a Salesloft person, or updates the one matched by id, CRM id or email address, and says which it did. ## Links - Website: https://salesloft.com - Docs: https://developers.salesloft.com --- ref: company:segment name: Segment tools: [tool:segment/associate-user-with-group, tool:segment/identify-user, tool:segment/send-batch, tool:segment/track-event] tags: [capability:track-product-usage, category:cdp, has:api] updated: 2026-09-27 --- # Segment Customer data platform that collects events once and sends them to hundreds of tools. Twilio Segment is a customer data platform: it collects events and user traits from websites, apps and servers, cleans them, and routes them to the analytics, CRM and marketing tools connected as destinations. The HTTP Tracking API records identify, track, group, page and batch calls for one source and authenticates with that source's write key (in the source, open Settings and then API Keys). Send it as Basic auth: `SEGMENT_API_KEY` holds the base64 of the write key followed by a colon, `:`. Workspaces in the EU send to `https://events.eu1.segmentapis.com` with a write key from an EU workspace; Segment rejects data sent to the wrong region. The Public API at `https://api.segmentapis.com`, which manages sources, destinations and Engage audiences, takes a separate workspace token and is not the API listed here. ## Tools - tool:segment/associate-user-with-group — Associate a user with a group: Ties an identified user to a group, such as a company or account, and records the group's traits like industry and employee count. - tool:segment/identify-user — Identify a user: Records a user's traits, such as email, name and plan, against their user ID and routes them to the source's destinations. - tool:segment/send-batch — Send a batch of calls: Sends up to 2,500 identify, group, track, page and screen calls to a source in one request. - tool:segment/track-event — Track an event: Records one action a user took, such as Signed Up, with its properties and routes it to the source's destinations. ## Links - Website: https://segment.com - Docs: https://www.twilio.com/docs/segment --- ref: company:sendgrid name: SendGrid tools: [tool:sendgrid/create-segment, tool:sendgrid/create-single-send, tool:sendgrid/schedule-single-send, tool:sendgrid/send-email, tool:sendgrid/upsert-contacts] tags: [capability:build-audience, capability:send-email, category:email, has:api, has:cli] updated: 2026-09-27 --- # SendGrid Twilio's email API and marketing campaigns, with contacts, lists, segments and Single Sends. Twilio SendGrid sends transactional email through its v3 Mail Send API and runs Marketing Campaigns: contacts, lists and segments, and Single Sends to them. The CLI is the Twilio CLI, whose built-in SendGrid commands send email with `SENDGRID_API_KEY`. EU regional subusers send mail through `https://api.eu.sendgrid.com`. Twilio's MCP server at `https://mcp.twilio.com/docs` indexes SendGrid's docs but can't call the API. ## Tools - tool:sendgrid/create-segment — Create a segment: Creates a segment of the contacts that match an SQL-style query, optionally within one list, that updates as contacts change. - tool:sendgrid/create-single-send — Create a Single Send: Creates an unscheduled draft marketing email for lists, segments or all contacts, with its content, sender and unsubscribe settings. - tool:sendgrid/schedule-single-send — Schedule a Single Send: Sends a Single Send right away when send_at is now, or schedules it for a future ISO 8601 time. - tool:sendgrid/send-email — Send an email: Sends an email from a verified sender, with up to 1,000 personalizations that each set their own recipients. - tool:sendgrid/upsert-contacts — Add or update contacts: Queues up to 30,000 contacts, or 6 MB, to be created or updated in Marketing Campaigns and returns a job ID. ## Links - Website: https://sendgrid.com - Docs: https://www.twilio.com/docs/sendgrid --- ref: company:slack name: Slack tools: [tool:slack/find-user-by-email, tool:slack/post-message, tool:slack/schedule-message, tool:slack/search-messages] tags: [capability:research-accounts, capability:route-alerts, category:messaging, has:api, has:cli, has:mcp] updated: 2026-09-27 --- # Slack Team messaging in channels and direct messages. Slack is team messaging: channels, direct messages, files and workflows. The MCP server acts as the signed-in user, and a workspace admin must approve MCP access first. The Web API and the CLI's `slack api` command call the same methods with a bot token (`xoxb-`) from an app installed in the workspace; `slack api` reads it from `SLACK_BOT_TOKEN`. ## Tools - tool:slack/find-user-by-email — Find a user by email: Returns the workspace member registered with an email address, so a message can mention or reach them. - tool:slack/post-message — Post a message: Posts a message to a channel, DM or thread and returns the channel ID and the message timestamp. - tool:slack/schedule-message — Schedule a message: Schedules a message to post to a channel at a future Unix time and returns its scheduled message ID. - tool:slack/search-messages — Search messages: Searches messages and files in public channels, narrowed by channel, person and date. ## Links - Website: https://slack.com - Docs: https://docs.slack.dev --- ref: company:stripe name: Stripe tools: [tool:stripe/create-coupon, tool:stripe/create-payment-link, tool:stripe/list-customers, tool:stripe/list-invoices, tool:stripe/list-subscriptions] tags: [capability:collect-payments, capability:track-revenue, category:payments, has:api, has:cli, has:mcp] updated: 2026-09-27 --- # Stripe Payments, billing and subscriptions for internet businesses. Stripe takes payments online and runs billing, invoices and subscriptions. Stripe's MCP server reaches the API through generic tools rather than one tool per method: `stripe_api_read` runs any supported `GET` method and `stripe_api_write` any supported `POST`, `PATCH`, `PUT` or `DELETE` method, while `stripe_api_search` and `stripe_api_details` find a method and its parameters. The CLI signs in with `stripe login` in the browser, or reads a key from `STRIPE_API_KEY`. ## Tools - tool:stripe/create-coupon — Create a coupon: Creates a percent-off or amount-off discount and returns the coupon to apply to invoices and subscriptions. - tool:stripe/create-payment-link — Create a payment link: Creates a Stripe-hosted checkout link for the prices you pass and returns it with its shareable URL. - tool:stripe/list-customers — List customers: Returns customers newest first; pass an email to get only the customers with exactly that address. - tool:stripe/list-invoices — List invoices: Returns invoices newest first, filtered by customer, subscription or status such as paid or open. - tool:stripe/list-subscriptions — List subscriptions: Returns subscriptions filtered by status, customer or price; with no status it returns every subscription that is not canceled. ## Links - Website: https://stripe.com - Docs: https://docs.stripe.com --- ref: company:trello name: Trello tools: [tool:trello/add-card-comment, tool:trello/create-card, tool:trello/search, tool:trello/update-card] tags: [capability:manage-tasks, category:project-management, has:api] updated: 2026-09-27 --- # Trello Boards, lists and cards for tracking work. Trello organizes work as cards in lists on boards. The MCP server works on any Trello plan and connects to one workspace per authorization. It can search boards and cards, create and update cards and checklists, move cards and lists, and archive cards, but it cannot delete anything. The REST API takes OAuth 2.0 bearer tokens since September 2026, and still accepts the older API key and token pair. The MCP server's tool names aren't published, so the tools below name only their API calls; the server lists its own once connected. ## Tools - tool:trello/add-card-comment — Add a comment to a card: Adds a comment with the text you pass to a card and returns the comment action. - tool:trello/create-card — Create a card: Creates a card in a list, with an optional description, due date, members and labels, and returns the card. - tool:trello/search — Search Trello: Finds the boards, cards, members and organizations that match a query. - tool:trello/update-card — Update a card: Changes a card's fields, such as its list, due date, members or archived state, and returns the updated card. ## Links - Website: https://trello.com - Docs: https://developer.atlassian.com/cloud/trello/ --- ref: company:twilio name: Twilio tools: [tool:twilio/check-verification-code, tool:twilio/look-up-phone-number, tool:twilio/make-call, tool:twilio/send-message, tool:twilio/send-verification-code] tags: [capability:authenticate-users, capability:enrich-contacts, capability:make-calls, capability:send-sms, category:messaging, has:cli] updated: 2026-09-27 --- # Twilio APIs for SMS, RCS, voice and email, plus phone number lookup and identity verification. Twilio provides APIs to send SMS, MMS and WhatsApp messages, place voice calls, look up phone numbers and verify users with one-time codes. The `twilio` CLI reaches every Twilio REST API through `twilio api:...` commands. It reads credentials from `TWILIO_ACCOUNT_SID`, `TWILIO_API_KEY` (an API key SID) and `TWILIO_API_SECRET`, or from a profile that `twilio login` saves. Twilio also documents apt, Scoop, Docker and npm installs of the CLI. The REST APIs behind those commands live on several hosts, such as `https://api.twilio.com` for messages and calls, `https://verify.twilio.com` and `https://lookups.twilio.com`, and take HTTP Basic auth with an API key SID as the username and its secret as the password; each tool names its REST call. Twilio's hosted MCP server at `https://mcp.twilio.com/docs` searches Twilio's API specs and docs but does not make calls. ## Tools - tool:twilio/check-verification-code — Check a verification code: Checks the code a user entered against their pending verification and returns its status, approved when the code is right. - tool:twilio/look-up-phone-number — Look up a phone number: Validates a phone number and returns it in E.164 and national formats, plus line type, caller name or other data you request. - tool:twilio/make-call — Make a phone call: Places an outbound call from a Twilio number to a phone number, SIP address or client and runs the TwiML you give it when the call connects. - tool:twilio/send-message — Send a message: Sends an SMS, MMS or WhatsApp message from a Twilio sender to one recipient and returns the new Message resource. - tool:twilio/send-verification-code — Send a verification code: Starts verifying a phone number or email address by sending a one-time code over SMS, WhatsApp, a voice call or email. ## Links - Website: https://twilio.com - Docs: https://www.twilio.com/docs --- ref: company:typeform name: Typeform tools: [tool:typeform/aggregate-responses, tool:typeform/create-form, tool:typeform/create-webhook, tool:typeform/retrieve-responses] tags: [capability:collect-responses, category:forms, has:api, has:mcp] updated: 2026-09-27 --- # Typeform Forms, surveys and quizzes that capture leads and feedback and trigger automated follow-up. Typeform builds forms, surveys and quizzes, and runs automations on the responses to enrich leads and follow up. Its MCP server builds and publishes forms and automations, manages contacts and analyzes responses; the Create, Responses and Webhooks APIs create forms, read full responses and push new responses to a URL. The MCP server signs in with OAuth only, and almost every tool needs the `account_id` that `accounts-list_accounts` returns. The APIs take a personal access token as a Bearer token. Accounts hosted in an EU data center use `api.eu.typeform.com` or `api.typeform.eu` in place of `api.typeform.com`, for both the MCP server and the APIs. Features depend on the plan, which is checked when a tool is called. ## Tools - tool:typeform/aggregate-responses — Aggregate responses: Returns counts, averages, sums or NPS for one field of a form's responses or for all of them. - tool:typeform/create-form — Create a form: Creates a typeform in a workspace, an empty draft over MCP or a complete form with fields and logic over the API. - tool:typeform/create-webhook — Send responses to a webhook: Creates or updates a named webhook that posts each new response to a form to your URL. - tool:typeform/retrieve-responses — Retrieve responses: Returns a form's responses with their answers and landing and submission times, filtered by date, response type or a search phrase. ## Links - Website: https://typeform.com - Docs: https://www.typeform.com/developers/ --- ref: company:webflow name: Webflow tools: [tool:webflow/create-cms-items, tool:webflow/list-form-submissions, tool:webflow/publish-cms-items, tool:webflow/publish-site, tool:webflow/update-cms-items] tags: [capability:collect-responses, capability:publish-content, category:cms, has:api, has:cli, has:mcp] updated: 2026-09-27 --- # Webflow Design, build and host websites, with a CMS, forms and SEO settings built in. Webflow is a platform for designing, building and hosting websites, with a CMS, forms and SEO settings built in. Its remote MCP server, the `webflow` CLI and the Data API v2 create, update and publish CMS items, publish sites and read form submissions; the MCP server can also build pages, styles and components. The MCP server signs in with OAuth, one workspace per authorization, and an agent can do only what the user's Webflow role allows. `webflow auth login` opens a browser sign-in and saves a `WEBFLOW_API_TOKEN` to the project's `.env`; the CLI needs Node.js 22.13.0 or later. The Data API takes a site token as a Bearer token: a site administrator creates it per site under the site's settings, in Apps & integrations, API access. ## Tools - tool:webflow/create-cms-items — Create CMS items: Creates up to 100 items in a CMS collection, as drafts unless queued for the next site publish, and returns them with their IDs. - tool:webflow/list-form-submissions — List form submissions: Returns the submissions of one form on a site, up to 100 per page. - tool:webflow/publish-cms-items — Publish CMS items: Publishes one or more items in a CMS collection, making them live on the site. - tool:webflow/publish-site — Publish a site: Publishes a site's latest changes, or one page, to its Webflow subdomain or chosen custom domains. - tool:webflow/update-cms-items — Update CMS items: Updates the fields of one or more items in a CMS collection, holding changes to published items in draft until they are published. ## Links - Website: https://webflow.com - Docs: https://developers.webflow.com --- ref: company:zapier name: Zapier tools: [tool:zapier/find-actions, tool:zapier/run-search-action, tool:zapier/run-write-action] tags: [capability:automate-workflows, category:automation, has:cli, has:mcp] updated: 2026-09-27 --- # Zapier Run actions in 9,000+ apps through the connections saved in a Zapier account. Zapier is an automation platform with integrations for 9,000+ apps and 40,000+ actions. Its hosted MCP server and the `zapier-sdk` CLI let an agent find and run those actions, such as sending a Slack message or looking up a contact, through the app connections already saved in a Zapier account, so the agent never handles a third-party API key. The MCP server signs in with OAuth from inside the MCP client, and Zapier creates the server during that sign-in; in its default agentic mode the agent discovers and enables actions itself. The CLI signs in through the browser with `zapier-sdk login`. Each successful MCP tool call uses two tasks from the Zapier plan. Zapier's REST APIs on `api.zapier.com` serve partners that embed Zapier in their own product: running an action through them needs a public Zapier integration or White Label access. ## Tools - tool:zapier/find-actions — Find actions in an app: Returns the actions Zapier can run in an app, such as sending a message or finding a record, so the right one can be enabled and run. - tool:zapier/run-search-action — Run a search action in an app: Runs one read or search action in an app connected to Zapier, such as finding an email or looking up a contact, and returns what it finds. - tool:zapier/run-write-action — Run a write action in an app: Runs one write action in an app connected to Zapier, such as sending a message, creating a task or updating a record, and returns the result. ## Links - Website: https://zapier.com - Docs: https://docs.zapier.com --- ref: company:zendesk name: Zendesk tools: [tool:zendesk/create-or-update-organization, tool:zendesk/create-or-update-user, tool:zendesk/create-ticket, tool:zendesk/search, tool:zendesk/update-ticket] tags: [capability:manage-crm, capability:manage-tasks, capability:research-accounts, category:support, has:api] updated: 2026-09-27 --- # Zendesk AI-powered customer service platform, with an API for tickets, users and organizations. Zendesk is a customer service platform. Its Support API, also called the Ticketing API, manages tickets, users, organizations and search. `{subdomain}` is the account's Zendesk subdomain, as in `acme.zendesk.com`; Zendesk's own CLI reads it from `ZENDESK_SUBDOMAIN`. Requests authenticate with an OAuth access token sent as a Bearer token, `ZENDESK_OAUTH_TOKEN` being the name Zendesk's CLI uses for one. Register an OAuth client in Admin Center, then get the first token with the one-time browser setup. Tokens from clients created on or after April 30, 2026 expire after 30 minutes by default and come with a refresh token. API tokens, sent with Basic auth, are being retired: accounts can't create new ones after October 27, 2026, and all of them stop working on April 30, 2027. Zendesk announced its own MCP server for early access in May 2026. ## Tools - tool:zendesk/create-or-update-organization — Create or update an organization: Creates an organization, or updates the one that matches its ID or external ID, and returns it. - tool:zendesk/create-or-update-user — Create or update a user: Creates a user, an end user unless you set a role, or updates the one that matches the email or external ID, and returns the full user. - tool:zendesk/create-ticket — Create a ticket: Creates a support ticket from a first comment, with an optional subject, requester, priority, tags and custom fields, and returns the ticket. - tool:zendesk/search — Search tickets, users and organizations: Returns the tickets, users, organizations or groups that match a query in Zendesk's search syntax. - tool:zendesk/update-ticket — Update a ticket: Changes a ticket's status, priority, assignee, tags or fields, and can add a public reply or an internal note. ## Links - Website: https://zendesk.com - Docs: https://developer.zendesk.com --- ref: company:zoom name: Zoom tools: [tool:zoom/add-webinar-registrant, tool:zoom/create-meeting, tool:zoom/create-webinar, tool:zoom/list-webinar-absentees, tool:zoom/list-webinar-participants] tags: [capability:host-meetings, category:video, has:api, has:mcp] updated: 2026-09-27 --- # Zoom Video meetings and webinars, with chat and phone. Zoom runs video meetings and webinars, with team chat and phone alongside. Both the MCP server and the API sign in through an OAuth app you create on the Zoom App Marketplace. The MCP server does not support dynamic client registration, so the agent's client needs that app's client ID and secret. Webinar calls need a Pro or higher plan with the Webinar add-on. ## Tools - tool:zoom/add-webinar-registrant — Add a webinar registrant: Registers a person for a webinar and returns their registrant ID and personal join URL. - tool:zoom/create-meeting — Create a meeting: Schedules a meeting for a user and returns its ID, the join URL to share and the host's start URL. - tool:zoom/create-webinar — Create a webinar: Schedules a webinar for a webinar host and returns its ID, join URL and, when registration is on, its registration URL. - tool:zoom/list-webinar-absentees — List webinar absentees: Returns the registrants of a past webinar who did not attend, with their names and emails. - tool:zoom/list-webinar-participants — List webinar participants: Returns the people who attended a past webinar, with name, email, join and leave times and seconds attended. ## Links - Website: https://zoom.us - Docs: https://developers.zoom.us --- ref: company:zoominfo name: ZoomInfo tools: [tool:zoominfo/enrich-company, tool:zoominfo/enrich-person, tool:zoominfo/search-companies, tool:zoominfo/search-intent, tool:zoominfo/search-people] tags: [capability:build-audience, capability:enrich-contacts, capability:research-accounts, capability:track-intent, category:data-provider, has:api, has:cli, has:mcp] updated: 2026-09-27 --- # ZoomInfo Go-to-market intelligence to find and enrich companies and contacts and spot buyer intent. ZoomInfo is a go-to-market intelligence platform with data on more than 100 million companies and 500 million professionals, plus buying and business signals such as intent topics, news and scoops. Its MCP server, the `gtm` CLI and the GTM API search and enrich companies and contacts, find companies researching a topic and run AI account research, all on one backend with shared credits. Every way in needs a ZoomInfo license (GTM.ai self-serve or Enterprise), and the plan decides which data, endpoints and credits are available. The MCP server and the CLI sign in with OAuth in a browser. The API takes an OAuth 2.0 access token from an app created in the ZoomInfo Developer Portal, with the client-credentials flow for server-to-server calls. Searches are free; enriching a record costs one credit the first time in any 12 months. ## Tools - tool:zoominfo/enrich-company — Enrich a company: Returns firmographics such as industry, revenue, employee count and growth, funding, parent company and competitors for up to 25 companies, matched by ZoomInfo company ID, name, website or ticker. - tool:zoominfo/enrich-person — Enrich a person: Returns email, phone numbers, job title, management level and employer for up to 25 people per call, matched by ZoomInfo person ID, email, phone, profile URL, or name and company. - tool:zoominfo/search-companies — Search companies: Returns companies that match industry, location, employee count, revenue, funding and other firmographic filters, with name, website, location, revenue and employee count. - tool:zoominfo/search-intent — Find companies showing buyer intent: Returns intent signals for up to 50 topics, each naming a company researching the topic with its signal score, audience strength and date, plus recommended contacts there. - tool:zoominfo/search-people — Search for people: Returns contacts who match job title, management level, department, company and location filters, with their title and accuracy score but not their emails or phone numbers. ## Links - Website: https://zoominfo.com - Docs: https://docs.gtm.ai