MCP App Store
Claude
Demandbase icon

Demandbase

by Demandbase Inc

Overview

Demandbase integration with ChatGPT gives sales, marketing, and GTM teams seamless access to rich B2B data directly inside ChatGPT for easier account targeting and engagement.

This app connects ChatGPT to Demandbase via a secure MCP connection, letting you access both first and third party data: Third-Party Data (3P): Search and retrieve industry-leading company and contact data from Demandbase, including firmographics, technographics, family tree, company news, and leadership profiles.

First-Party Data (1P): Securely access your own Demandbase 1P data such as known accounts, contacts, CRM entities, engagement, and in-pipeline opportunities

What you can do: Search companies by name, location, size, revenue, or industry Discover decision-makers and influencers by role or job level Fetch full company profiles including recent news and competitors Tap into 1P signals like engagement, MQA status, or activity

Who it’s for: Sales reps looking for fast answers about a target account in real time Marketers enriching leads or refining personas RevOps and Enablement teams embedding intelligence into workflows AI product teams creating agent workflows

Note: This requires Demandbase licences, please contact PartnerSupport@demandbase.com.

Tools

company_global_directory

ChatGPT
Demandbase company catalogue search + fetch. Tool selection (REQUIRED): use for external/global company searches; do not use for "accounts" (use search_internal_account_database for internal/CRM/tenant). Pagination (CRITICAL): NEVER set queryOptions.perPage unless the user types an explicit number — inferring it from prompt intent or completeness is FORBIDDEN. Scope words ("all", "top"), time ranges ("last week"), intent words ("analyze", "rank") are NOT integers. No integer typed → ALWAYS omit. Integer typed → use it. Confidence gate (REQUIRED): self-rate 1–10 (tool+params); if <8 STOP—ask 1–2 clarifying Qs; do NOT call. Clarify-first (REQUIRED): ask 1-2 Q BEFORE calling if (a) user mentions "ICP" — ALWAYS ask for their criteria (ICP is customer-defined), (b) company name is a single ambiguous word with no domain/country, or (c) enrichment/news depth is unclear. NOTE (REQUIRED): filtering on familyTree/competitors is not supported — explain and do NOT call. Unsupported analytics (YoY financials, quarterly trends, CAGR) are NOT available — explain and ask what profile data they'd like instead before calling. Mapping rules: preserve entity strings as-is (e.g., "Inc."). Strict inequalities: "over 500"→"501,". revenueRange is in millions: "$1B"→"1000", "over $1B"→"1001,". Ambiguous location → clarify before calling. Data types: basicCorporateProfile=name,description,revenue etc.; industryClassifications=industry codes; contactPoints=website,address,phone,etc.; familyTree=structure; competitors; installedTech; news. IMPORTANT: By default core profile will be returned. Add other types only if explicitly requested. Use only tool-returned data. Range: >50→"51,"; <50→",49" (employeesRange/revenueRange in millions). Example: company_global_directory(companyName="Apple Inc.", includeData=["competitors","news"], newsCategories=["ACQUISITIONS"]).

contact_global_directory

ChatGPT
Demandbase contact catalogue search + fetch. Tool selection (REQUIRED): default for generic contact searches + prospecting (no internal indicators). Use internal person tools only when user explicitly signals internal scope ("my contacts/leads", "in our CRM/database/internal"). Pagination (CRITICAL): NEVER set queryOptions.perPage unless the user types an explicit number — inferring it from prompt intent or completeness is FORBIDDEN. Scope words ("all", "top"), time ranges ("last week"), intent words ("analyze", "rank") are NOT integers. No integer typed → ALWAYS omit. Integer typed → use it. Confidence gate (REQUIRED): self-rate 1–10 (tool+params); if <8 STOP—ask 1–2 clarifying Qs; do NOT call. Clarify-first (REQUIRED): ask 1-2 Q BEFORE calling if (a) user mentions "ICP" — ALWAYS ask for their criteria (ICP is customer-defined), (b) user says "prospects" without clear scope, (c) ambiguous collective like "decision-makers" without concrete role constraints, (d) name-only search for a common name without disambiguating context (company/role/location), or (e) job level/function/title unclear. Industry/revenue/employees filter (REQUIRED): if the user's request includes any of these, FIRST call company_global_directory, THEN call this tool with companyIdsToInclude along with contact filters needed. Parameter defaults (REQUIRED): Use jobTitles for explicit titles ("CTO"/"Chief Technology Officer"); use jobFunctions+jobLevels for roles (e.g., sales+manager). includeData by depth: personal details→["businessIdentity"], current role→["currentEmploymentRecord"], job history→["otherEmployments"], full background→all three. Location mapping (REQUIRED): contact's location→contactLocation={country/state/city}; employer location→companyLocation={country/state/city}. Ambiguous scope→clarify before calling. Data types: businessIdentity=personal details; currentEmploymentRecord=current job; otherEmployments=job history. IMPORTANT: By default presonal details will be returned; add other types only if explicitly requested. Use only tool-returned data; do NOT add unrequested filter parameters.

get_demandbase_reference_data

ChatGPT
Fetch tenant-configured reference data: account lists. Tool selection (REQUIRED): use to list/browse/resolve account lists or get their IDs before calling another tool. Do NOT use to search accounts, contacts, or companies. Name lookup (REQUIRED): for "details of <name>" always fetch the FULL list (no filters) and match client-side. FILTERS: accountListFilters only — keys: name (contains), ownedBy (equals/exact), isPublic ('true'/'false'), numberOfAccounts (range str: 'min,max'|'min,'|',max'|'exact'). No filters for any other type (do NOT invent parameters). Pagination (CRITICAL): NEVER set queryOptions.limit unless the user types an explicit number. No integer typed → ALWAYS omit. Integer typed → use it.

search_internal_account_database

ChatGPT
Internal account database search (CRM/ABM). Use for "MY accounts" / "OUR database". Default for "accounts" unless user explicitly asks external/global/Demandbase. Tool selection (REQUIRED): default for "accounts" unless user explicitly asks external/global/Demandbase; if the request references internal sales/CRM state (e.g., "we aren't talking to", "engaged sales", owner, journey stage, pipeline/opportunities), use this tool even if the user says "companies". If intent is global/public/catalogue → use Demandbase company catalogue (don't call this tool). Account list filter (REQUIRED): resolve list name via get_demandbase_reference_data first, then pass as accountListNames. Pagination (CRITICAL): NEVER set queryOptions.limit unless the user types an explicit number — inferring it from prompt intent or completeness is FORBIDDEN. Scope words ("all", "top"), time ranges ("last week"), intent words ("analyze", "rank") are NOT integers. No integer typed → ALWAYS omit. Integer typed → use it. Confidence gate (REQUIRED): self-rate 1–10 (tool+params); if <8 STOP—ask 1–2 clarifying Qs; do NOT call. Clarify-first (REQUIRED): ask 1-2 Q before ANY call if (a) account/company name is a single common word with no domain/location, (b) score/range is expressed qualitatively ("high"/"likely"/"low") — NEVER assume a numeric value, (c) a collective role like "decision-makers" is used without titles/levels, (d) user mentions "ICP" — ALWAYS ask for their criteria (ICP is customer-defined), or (e) revenue is in shorthand (">1B", ">100M") — confirm USD annual revenue before calling. Range/date handling (REQUIRED): numeric X>Y range → swap to Y,X and proceed. Date start>end → ask before calling. Boolean not clearly true/false → ask and do NOT call. "before X" → ",X-1day"; "after X" → "X+1day,". "status" ambiguous → clarify journeyStage vs accountStatus. FILTER FORMATS: Ranges "min,max"|"min,"|",max"|"val"(exact); Dict text {"value":"a,b","operator":"in"}(default in); OPERATORS: Strings none; Lists in/notIn(default in); Booleans equals; ranges use range syntax only. NOT SUPPORTED: intent data, buying groups, activities, campaigns, creative; any write/create/enrich actions. DEFINITIONS: MQA=Marketing Qualified Account. CROSS-TOOL IDs: "Match Company ID" = companyIds in company_global_directory. RANGE TRANSLATION: "over/greater than X"→X+1; "less than X"→X-1; "at least X"→"X,"; "at most X"→",X". 0–1 scores as %: ">80"→"0.81,", "<50"→",0.49", exact "0.94"→"0.94". Multiple conflicting constraints → use most restrictive. EXAMPLES: over 80% pipeline→pipelinePredictScoreRange="0.81,"; between $1M-$5M→revenueRange="1000000,5000000"; before June 30, 2023→closedOpportunityDateRange=",2023-06-29". Empty Result Fallback (REQUIRED): if {"data": []}, say no internal results; ask permission once to try Demandbase company catalogue with same filters (no auto-fallback).

search_internal_person_database

ChatGPT
Internal person/contact database search (CRM/Leads). Use for internal/CRM people queries; use Demandbase contact catalogue for ICP/prospecting/global contact discovery unless the user explicitly signals internal scope. Tool selection (REQUIRED): call this tool when the request clearly targets internal data ("my contacts/leads", "in our CRM/database/internal") OR uses internal-only fields (engagementMinutes*/leadOrContact). Do NOT treat "our ICP"/prospecting language as internal by itself. Pagination (CRITICAL): NEVER set queryOptions.limit unless the user types an explicit number — inferring it from prompt intent or completeness is FORBIDDEN. Scope words ("all", "top"), time ranges ("last week"), intent words ("analyze", "rank") are NOT integers. No integer typed → ALWAYS omit. Integer typed → use it. Confidence gate (REQUIRED): self-rate 1–10 (tool+params); if <8 STOP—ask 1–2 clarifying Qs; do NOT call. Clarify-first (REQUIRED): ask 1-2 Q BEFORE calling if (a) user mentions "ICP" — ALWAYS ask for their criteria (ICP is customer-defined), (b) engagement time window is unsupported (only 7 days exists — do NOT silently substitute), (c) role label is collective/ambiguous ("decision-makers") without concrete constraints, or (d) job title/level/function is unclear. Date phrasing: "before X"→",X-1day"; "after X"→"X+1day,". Lead vs Contact (REQUIRED): leads/MQLs/prospects→leadOrContact=["Lead"] (include "Anonymous Lead" when appropriate, e.g. ["Lead","Anonymous Lead"]); contacts→["Contact"]. "Top" default: no metric given → sort by engagementMinutesLast7Days desc, omit limit. Name handling: full name + clear internal scope → proceed. Common last name only or ambiguous full name (e.g., "John Smith") without company/email/location → ask for disambiguator first. Global intent: ICP/prospecting/public catalogue → use Demandbase contact catalogue (don't call this tool). FILTER FORMATS: Strings (firstName/lastName/email/jobTitle/accountName/ownerName); Dict text {"value":"a,b","operator":"in"}(default in); Ranges "min,max"|"min,"|",max"|"exact". OPERATORS: Strings none; Lists in/notIn(default in); DEFINITIONS: MQL=Marketing Qualified Lead. NOT SUPPORTED: person lists, intent data, buying groups, activities, campaigns, creative; any write/create/enrich actions. EXAMPLES: "Find my contact John Smith"→firstName="John",lastName="Smith",leadOrContact=["Contact"]; "top MQLs"→leadOrContact=["Lead"],queryOptions={"order":"engagementMinutesLast7Days desc"}. Empty Result Fallback (REQUIRED): if {"data": []}, say no internal results; ask permission once to try Demandbase contact catalogue with same filters (no auto-fallback).

App Stats

5

Tools

1

Prompts

Mar 13, 2026

First seen

ChatGPT

Platforms

Works with

ChatGPT

Data refreshed daily