PPactDocs
MCP & AI agents

MCP tool reference

The full catalog of tools Pact's MCP server exposes, grouped by module, with read/write access and required scope.

Pact's MCP server (https://api.pact.place/mcp) exposes 171 tools across 34 modules — 94 read tools and 77 write/action tools. Every read is consent-filtered, contact PII is BYOK-decrypted per tenant, and every call is audited and cost-attributed. Each tool declares a required OAuth scope; a key or token only sees the tools its scopes allow.

Note

The typed TypeScript and Python clients wrap each tool as a method that returns its structured output directly — you rarely call a tool by raw name. Write and action tools are marked Write below; they follow the same consent, audit, and cost rules as reads.

Access legend: Read = read-only (no side effects); Write = creates, updates, or runs an action.

Core CRM & workspace

Query accounts, contacts, deals, pipeline health, and ask the workspace.

ToolAccessScopeWhat it does
ask_workspaceReadAsk a natural-language question across the tenant's workspace (accounts, contacts, deals, activity) and get a grounded, cited…
compute_pipeline_metricsReadCompute pipeline dimensions over the unified data layer: time-in-stage histogram, stage conversion + win rate, deal velocity…
get_metric_explanationReadExplain why a KPI moved, grounded in the deals that advanced, slipped, won, or lost in the window (the metric-explainer agent).
get_traceReadFetch the full span tree for a past MCP trace_id — every tool, every sub-tool, every cost, every citation.
list_agentsReadList the Pact AI agents that can be run via fire_agent.
predict_costReadEstimate cents-per-call and tokens for one Pact MCP tool BEFORE you fire it, so an agent or UI can budget.
query_accountsReadSearch the tenant's CRM accounts (companies).
query_activity_ledgerReadRead the unified activity log for an entity: emails, calls, meetings, notes, agent fires, syncs, documents, signatures — with…
query_contactsReadSearch the tenant's CRM contacts (people).
query_dealsReadSearch the tenant's pipeline deals.
query_pipeline_healthReadAggregate pipeline metrics for the tenant: open pipeline value, weighted value, deal count, average deal size, win rate, and a…
query_stage_historyReadRead the deal/opportunity/account stage-transition log: every move with from/to stage, why (reason_code), days spent in the…
read_briefingReadA daily briefing for the calling user, composed from the live pipeline snapshot, the last week's deal activity, and a grounded AI…
fire_agentWriteExecute a Pact AI agent (see list_agents) and return its output, confidence, and citations.
replay_traceWriteRe-fire the root tool of a past trace with the same arguments and return a diff (latency / cost / citations) vs the original.

Core CRM writes

Create and update the core CRM records.

ToolAccessScopeWhat it does
add_noteWritewrite:activitiesAppend a timestamped note (or call/email/meeting/visit log entry) to an account's activity history.
create_accountWriteCreate a CRM account (company) in the caller's tenant.
create_contactWritewrite:contactsCreate a CRM contact.
create_dealWritewrite:dealsCreate a pipeline deal (opportunity) on an account.
update_accountWritewrite:accountsUpdate fields on an existing account, addressed by public_id (or legacy integer id).
update_contactWritewrite:contactsUpdate fields on an existing contact, addressed by public_id.
update_dealWritewrite:dealsUpdate fields on an existing deal by integer deal_id (from query_deals or create_deal).

API monetization

API usage, tier, and forecast.

ToolAccessScopeWhat it does
current_tierReadReturn the caller's current tier slug, name, monthly unit allowance, RPS limit, and feature flags.
forecast_usageReadProject the caller's month-end API unit consumption from the trailing-7d daily average.
query_usageReadReturn per-class API usage for the caller's tenant in the supplied period (default: current UTC month).

Audio & video

Audio/video (Wave) tools.

ToolAccessScopeWhat it does
query_sentiment_trendReadReturn the rolling-window sentiment trend (average, slope, direction, points) for one contact or one account.
query_survey_responsesReadReturn survey responses (NPS / CSAT / CES) filtered by survey type, account, contact, or score band ('promoter' / 'passive' /…
trigger_surveyWriteSchedule a one-off survey invitation for a contact, bypassing the lifecycle scanner.

Call actions

AI-extracted call follow-up actions.

ToolAccessScopeWhat it does
list_call_actionsReadread:activitiesList AI-extracted follow-up actions from completed calls (newest first): tasks, decisions, deal-stage-change proposals, follow-up…
apply_call_actionWritewrite:activitiesApply ONE extracted call action by public id: create the task, pin the decision, or apply the deal-stage change (stage changes…
extract_call_actionsWritewrite:activitiesEnqueue AI extraction of follow-up actions for one completed call (idempotent — re-running yields the same actions with the same…

Context & memory

Conversation context and memory.

ToolAccessScopeWhat it does
classify_intentReadMap a user question to one of Pact's context-engine intents (pipeline_health, deal_inspection, account_360, forecast,…
get_context_bundleReadRun the full Pact context engine: classify the question, resolve the bundle, fetch every source (consent-gated), and return a…
preview_contextReadClassify a question to an intent, resolve the bundle (override or built-in), and return a cost estimate WITHOUT firing the LLM or…
define_bundleWriteCreate a tenant-defined context bundle (or version-bump an existing slug).

Customer portal

Customer-facing portal operations.

ToolAccessScopeWhat it does
portal_list_change_requestsReadList change-requests proposed by the tenant CRM to portal users on a given account, with optional status filter (pending |…
portal_list_feedbackReadList feedback submissions filed by portal users across the tenant (kinds: feature | problem | praise | nps_followup).
portal_list_renewalsReadList renewal / expansion / cancel / change-terms requests filed by portal users for a given account, plus an optional status…
portal_team_overviewReadList portal members + pending invitations for a given account so the CSM can see who on the customer's side has portal access.

Customer success

Customer-success and health tools.

ToolAccessScopeWhat it does
cs_qbr_composeReadCompose (or fetch cached) a Quarterly Business Review deck for an account+period combo.
cs_renewal_briefReadCompose (or fetch cached) a CSM-grade renewal brief for a specific opportunity.
cs_save_coachReadReturn the top-N ranked save plays for one account plus the currently-active save runs.
cs_expansion_scanWriteRun the deterministic expansion-signal scan and return the live feed.

Data quality

Data-quality checks and fixes.

ToolAccessScopeWhat it does
dq_find_duplicatesReadReturn pending dedupe candidates for one entity type — sorted by confidence descending.
dq_auto_dedupe_runWriteRun one bounded scan over the entity's records under the active match config.
dq_merge_pairWriteApply the tenant's survivorship rules to a candidate pair: the survivor side wins per-attribute under each rule's strategy, the…
dq_scoreWriteCompute and snapshot per-attribute data quality scores for one entity type.

Data warehouse

Warehouse sync tools.

ToolAccessScopeWhat it does
list_warehouse_connectionsReadList the tenant's BYOK warehouse sync connections (Snowflake / BigQuery / Databricks / Redshift / Postgres) with status, CDC lag,…
configure_warehouseWriteUpdate the non-secret settings of an existing warehouse connection: display name, PII mode (include|drop|hash), synced table…
trigger_warehouse_syncWriteRun a warehouse sync now.

Deal spaces

Shared deal-space tools.

ToolAccessScopeWhat it does
summarize_spaceReadRoll up activity, decisions, and commitments in a deal collaboration space over the last day or week.
pin_decisionWritePromote an existing message in a deal space to the decisions / facts feed.
post_to_spaceWriteInsert a message into the deal space tied to an opportunity.

Decks

Pitch-deck generation tools.

ToolAccessScopeWhat it does
deck_templatesReadList the tenant's deck templates (master pptx + slide-plan + brand colors + fonts).
generate_deckWriteGenerate a fully-tailored, grounded pitch deck for one opportunity.
regenerate_slideWriteRebuild ONE slide in a deck after the underlying source data (call extractions / content matches / opp record) has moved.

Enrichment

Run and manage contact/company enrichment.

ToolAccessScopeWhat it does
account_360ReadAggregate everything the enrichment platform knows about one account: per-field provenance, structured facts (funding history,…
enrichment_historyReadFor a contact or account, return the per-field provenance trail — which source provided each value, at what confidence, and when.
enrichment_signalsReadRecent change signals for one account — news, funding rounds, exec moves, tech-stack shifts, hiring surges.
list_recent_signalsReadTenant-wide feed of recent change signals — funding rounds, exec moves, hiring surges, tech-stack shifts, news mentions — across…
bulk_enrichWriteEnroll a set of accounts onto the named tier as Live subscriptions.
configure_signal_actionWriteCreate, update, pause or delete a tenant-wide signal action rule ('when a funding_round over $10M is detected, notify the account…
enrich_accountWriteEnroll an account on the named tier (standard|pro|deep|live) as a Live subscription with an immediate first refresh.
enrich_contactWriteEnroll a contact on the named tier (standard|pro|deep|live) as a Live subscription with an immediate first refresh.

Enrichment budget

Read and manage enrichment spend.

ToolAccessScopeWhat it does
list_enrichment_budgetsReadEvery active enrichment budget for the tenant with current-period spend, percent used, threshold config and behavior (alert |…
predict_enrichment_costReadEstimated cost in cents for enriching count records at the given level (L1-L4), and whether the caller's budgets would allow…
set_enrichment_budgetWriteCreate a budget (omit budget_id) or update one (pass budget_id).

Field workspace

Custom field and schema tools.

ToolAccessScopeWhat it does
field_today_glanceReadCompose the calling field rep's morning view: route plan, ordered visits with geocoded coords, territory list, and trailing-30d…
field_visit_briefReadGenerate a grounded pre-visit account brief.
field_log_visit_noteWriteAppend the rep's notes (typed + voice-transcript) to a visit and run the grounded post-visit summary.
field_optimize_routeWriteGreedy nearest-neighbour TSP over the calling rep's plan for the given date (defaults to today).

Identity & access

Users, roles, and access tools.

ToolAccessScopeWhat it does
audit_iam_eventsReadMost recent IAM-relevant audit events (auth., iam., scim.*).
list_sessionsReadRecent auth_sessions rows for the tenant.
grant_jit_roleWriteElevate a user's role for a bounded duration with auto-revoke.
provision_userWriteCreate or update a single tenant_users row by email.
revoke_sessionWriteKill a single auth_sessions row by id (sets ended_at + ended_reason='revoked_by_agent').

Inbound

Inbound message and lead handling.

ToolAccessScopeWhat it does
list_inbound_webhooksReadReturn every inbound webhook endpoint configured for this tenant — the receiver URL the external system POSTs to, the per-source…
fire_test_webhookWriteSkips signature verification and dispatches a synthesized payload for the endpoint's source.
replay_inbound_eventWriteRe-fire a previously received webhook event against the CURRENT subscription mapping.
subscribe_inboundWriteMap an external event_type (or glob pattern, e.g.

Knowledge base

Knowledge-base search and drafting.

ToolAccessScopeWhat it does
search_kbReadHybrid semantic + keyword search over the tenant's KB articles — the same engine behind the /kb browser and the agent reply…
create_kb_articleWritePersist a new KB article.
record_kb_helpfulnessWriteRecord a helpful / not-helpful vote on a KB article (by public id or slug) as the calling user.

Learning

Enablement and learning tools.

ToolAccessScopeWhat it does
learning_statusReadRead-only inspection: returns the open drift signals (cost ↑, latency ↑, guardrail blocks ↑, citation overlap ↓, rating ↓) and…
propose_variantWriteRun the learning-loop analyzer on this agent over the last 7 days, compare to the prior 14-day baseline, and generate up to 3…

Marketing

Marketing workspace operations.

ToolAccessScopeWhat it does
compute_attributionReadCompute multi-touch attribution for won deals in the lookback window.
search_content_libraryReadSemantic-search the tenant's content library by free-form query, optionally filtered by kind or persona.
generate_campaign_briefWriteGenerate a structured campaign brief (goal, audience hypothesis, channels, KPIs, draft subjects, key message) from one NL prompt.
simulate_persona_readWritePreview an email body as if a specific persona (VP Finance, Head of Engineering, CMO, etc.) read it.

Marketplace seed

Marketplace seed handlers.

ToolAccessScopeWhat it does
pact_meeting_prepReadReturn a one-page briefing for an upcoming meeting on an account or contact: snapshot, deal status, last touchpoints, 3 lead-with…
pact_pipeline_reviewerReadScan the caller's active pipeline and return a structured digest of deals at risk — slippage, single-thread exposure, engagement…
pact_rfp_drafterReadParse an uploaded RFP / SOW / questionnaire (PDF, DOCX) and return a structured first draft: each extracted question matched…

MCP marketplace

Federated MCP marketplace tools.

ToolAccessScopeWhat it does
marketplace_recommendReadRecommend marketplace listings for a stated intent (e.g.
marketplace_searchReadSearch the public Pact MCP marketplace by query string and optional category…
marketplace_installWriteInstall a published listing onto the caller's tenant.

Meetings

Meeting (Wave) tools.

ToolAccessScopeWhat it does
best_timeReadTop-N candidate slots that work for every attendee, considering each one's busy events and stated working hours.
meeting_notesReadRead structured AI meeting notes — summary, action items, decisions, and citations back to the source rows that fed them.
search_decisionsReadSearch the tenant-wide rolled-up decision log (meeting decisions + deal-room space decisions + workflow decisions).
attendee_briefWriteBuild a tight, honest pre-meeting one-pager for the caller.
draft_follow_upWriteDraft a follow-up email + recap note for one meeting.

Microsoft 365

Microsoft 365 integration tools.

ToolAccessScopeWhat it does
m365_calendar_meeting_briefReadCompose a meeting brief from a list of attendee emails — matched profiles, open opportunities, recent activity.
m365_outlook_matchReadMatch an Outlook counterparty email against Pact's contacts + accounts.
m365_teams_home_panelReadRender one tab of the Teams personal-app Home — one of 'today', 'pipeline', 'inbox', 'records'.
m365_outlook_compose_assistWriteGenerate an AI subject / body / agenda / Pact-context block for an Outlook compose window.

Outbound

Outbound sequence operations.

ToolAccessScopeWhat it does
list_subscriptionsReadReturn every active subscription this MCP client has wired with subscribe().
list_topicsReadReturn the catalog of event topics a client can subscribe to via subscribe(), with per-topic filter examples.
subscribeWriteSubscribe this MCP client to a Pact event topic so the server pushes a notifications/pact/event JSON-RPC notification every…
unsubscribeWriteSoft-delete a Pact event-push subscription by its subscription_id.

Quotas & personalization

Quota and personalization controls.

ToolAccessScopeWhat it does
mcp_get_user_preferencesReadReturn the caller's MCP preferences (role, tone, surface, timezone, skill levels) plus the currently-applied adapter set.
mcp_personalization_statusReadReturn the personalization adapters currently applied to the caller — combination of explicit preferences + behavior signals —…
mcp_quota_statusReadReport current spend + remaining + straight-line forecast for the quotas applicable to the caller.
mcp_request_quota_increaseWriteFile a request to raise a quota cap.
mcp_set_quotaWriteUpsert one quota subscription — (scope_level, scope_ref, period, cap_cents, behavior).
mcp_update_user_preferencesWritePartial-update the caller's MCP preferences.

Recording retention

Call-recording retention controls.

ToolAccessScopeWhat it does
list_recordings_pending_deletionReadRead-only view of the deletion queue: recordings past the tenant retention window (the next daily sweep soft-deletes them) and…
apply_legal_holdWritePlace a call recording under legal hold.
release_legal_holdWriteRelease a legal hold.
set_retention_policyWriteUpdate the tenant's recording retention window (1-2555 days), toggle call recording on/off, and/or set the consent ack mode…

Sales engineering

RFP drafting, win vault, playbooks, sandboxes, and SE analytics.

ToolAccessScopeWhat it does
get_se_analyticsReadReturn the SE lead's team analytics: RFP win-rate by section, sandbox stage funnel, top prospect objections, playbook…
list_top_objectionsReadReturn the top prospect objection categories mined from the SE's tech-Q&A inbox (open / escalated / deferred rows), with counts…
se_get_battlecardReadFetch one battlecard by public_id — the rendered body plus the structured sections (proof from won deals, competitive signal, how…
se_list_battlecardsReadList the tenant's auto-generated competitor battlecards — competitor, title, current version, and when each was last generated.
se_list_playbook_suggestionsReadList AI-detected playbook gaps — recurring lost-deal themes with no covering playbook in the SE library.
se_open_rfpsReadList open RFPs for the caller's tenant — sorted by due date.
se_rfp_prep_sheetReadNegotiation prep for one scored RFP: per question, the risk band (lose_on/win_on/neutral), objection category, likely objections,…
se_sandbox_compliance_summaryReadReturn the honest compliance description for a regulatory scope (none | hipaa | sox | pci | gdpr) applied to a vertical…
se_suggest_architectureReadCompose a deterministic architecture palette + Mermaid block from a prospect-shape input (seats, vertical, SSO flag, residency,…
search_playbooksReadHybrid semantic + keyword search over the tenant's curated SE playbook library (vertical discovery guides, competitor battle…
search_win_libraryReadSemantic + lexical search over the tenant's win library (reusable sales evidence distilled from won deals: quotes, ROI figures,…
create_playbookWriteAdd a markdown playbook to the tenant's curated SE library.
extract_evidence_from_dealWriteQueue a BYOK-LLM extraction of reusable win evidence from a closed-won deal (its notes, quotes, correspondence, transcripts).
record_playbook_usageWriteRecord that an SE playbook was used, dismissed, or contributed to a won deal — feeds the library's usage analytics so playbooks…
request_customer_consent_for_evidenceWriteEmail the quoted customer a one-click request to reuse a verbatim quote from the win library in outward-facing material.
se_accept_playbook_suggestionWriteAccept a playbook suggestion — creates a real playbook in the SE library and marks the suggestion accepted, linking the two.
se_create_demo_sandboxWriteProvision a per-prospect demo sandbox.
se_detect_playbook_gapsWriteScan LOST deals for recurring themes no playbook covers, and draft a suggestion for each gap.
se_dismiss_playbook_suggestionWriteDismiss a playbook suggestion.
se_generate_battlecardWriteGenerate (or regenerate) a battlecard for one competitor from won-deal evidence and competitive signal.
se_score_rfpWriteRun the SE-7 scoring pass over an RFP: strategic weight, prospect signal, composite score, risk band, and objection category per…
se_suggest_rfp_answerWriteRun the Wave AX evidence-vault autofill against one RFP.

Sales management

Manager-level pipeline and team tools.

ToolAccessScopeWhat it does
sales_manager_coaching_feedReadCoaching opportunity feed + per-rep skill scorecards for the manager's direct reports.
sales_manager_gap_analysisReadReturn the gap-to-plan and the smallest set of pipeline-classified deals (ranked by AI commit-confidence × value) that would…
sales_manager_today_glanceReadCompose the manager's morning glance: per-rep coverage + open value + at-risk + a stage-stuck coaching feed + forecast totals.
sales_manager_oneonone_prepWriteGenerate (or return cached) AI-assisted 1:1 prep for one of the manager's direct reports, keyed by ISO-week.

Support & cases

Triage, route, and work support cases.

ToolAccessScopeWhat it does
get_support_dashboardReadS-6: the team-wide support analytics payload — ticket volume (today/week/window + daily series), avg first-response and…
list_agent_metricsReadS-6: per-agent support performance over a trailing window — cases handled/resolved, avg first-response minutes, avg resolution…
list_at_risk_ticketsReadS-2: open tickets ranked by rolling customer sentiment (EMA over customer messages, -1..+1), bucketed at_risk / recovering /…
list_queuesReadThe tenant's queues (shared lead/support pools) with member counts — the routing-rule targets.
list_sla_at_riskReadS-3: open tickets with a running SLA clock, tightest deadline first.
list_sla_policiesReadS-3: the tenant's SLA policy per priority tier (P1–P4 → urgent/high/normal/low).
support_queue_todayReadReturn the agent's ranked support queue for today: urgent / high-tier / SLA-burning / negative-sentiment cases at the top.
support_similar_casesReadSearch past resolved cases that look like the open one (lexical similarity over subject + description).
support_suggest_replyReadCompose three reply drafts for an open case (empathy / fact / confirmation).
unified_inbox_searchReadSearch support cases across every channel (email / chat / Slack / WhatsApp / SMS / voice) by free text over the subject,…
classify_ticketWriteClassify a case with the tenant's BYOK LLM — urgency (P1–P4), category, customer sentiment, and language — then apply the verdict…
configure_escalation_rulesWriteS-2: manage the tenant's sentiment-escalation rules.
configure_sla_policyWriteS-3: set the tenant's SLA policy for one priority tier (P1–P4).
merge_ticketsWriteFold a secondary case into a primary one — the cross-channel merge that unifies a single customer's threads (e.g.
route_ticketWriteRe-run only the routing step for a case using its stored triage verdict (category / urgency / sentiment) against the tenant's…
send_ticket_replyWritePost an agent reply to a case.
support_promote_to_kbWriteCompose a KB-article body from a resolved case (symptom + resolution + category).

Vertical solutions

Industry vertical tools.

ToolAccessScopeWhat it does
list_verticalsReadReturn the catalogue of pre-built vertical onboarding templates (FinServ, Healthcare, Real Estate, Manufacturing, Professional…
vertical_statusReadReturn the tenant's installed verticals plus the full catalogue (for picking what's next).
apply_vertical_templateWriteInstall the chosen vertical template into the current tenant: creates the pipeline, suggests integrations, seeds compliance…

Voice agents

Voice-agent configuration and runs.

ToolAccessScopeWhat it does
list_voice_agentsReadList the tenant's configured AI voice agents (receptionist / qualifier / cold_caller) with role, provider, status, budget and…
configure_voice_agentWriteCreate a new AI voice agent (draft) or update an existing one by agent_public_id.
fire_voice_agent_callWritePlace a net-$0 SIMULATED test call against a voice agent (by agent_public_id) and return the transcript, outcome, sentiment and…

Voice campaigns

Outbound voice campaign tools.

ToolAccessScopeWhat it does
create_call_campaignWriteCreate an outbound call campaign: an ordered sequence of steps (dial | voicemail | sms | wait) with per-step retry/backoff, a…

Voicemail

Voicemail operations.

ToolAccessScopeWhat it does
get_voicemail_transcriptReadread:activitiesFetch one voicemail's full transcript plus its reply drafts and matched contact.
list_voicemailsReadread:activitiesList the tenant's inbound voicemails (newest first): caller number, matched contact, duration, processing status, transcript…
draft_voicemail_replyWritewrite:activities(Re)draft the three AI replies for a voicemail — an empathetic email, a factual email, and a call-back SMS — using the tenant's…