Tools Reference

Complete reference for all 43 Supp MCP tools.


Classification

supp_classify

Classify a message into one of 315 intents. Costs $0.20 per call.

ParameterTypeRequiredDescription
textstringYesMessage text to classify
json
// Returns
{
  "intent": "bug_report",
  "confidence": 0.91,
  "all_intents": [
    {"intent": "bug_report", "confidence": 0.91},
    {"intent": "performance_issue", "confidence": 0.68}
  ]
}

supp_classify_with_priority

Classify intent AND score priority in a single call. Costs $0.23 per call ($0.20 classification + $0.03 priority).

ParameterTypeRequiredDescription
textstringYesMessage text to classify and score
json
// Returns
{
  "intent": "api_troubleshooting",
  "confidence": 0.88,
  "priority": "high",
  "all_intents": [...],
  "cost": 0.23,
  "new_balance": 4.77
}

supp_intents

List all 315 supported intents, optionally filtered by category.

ParameterTypeRequiredDefaultDescription
categoryenumNo"all"One of: no_intent, account_management, billing_payment, subscription_management, product_inquiry, technical_support, order_delivery, returns_refunds, feature_requests, complaints_feedback, general_inquiry, verification_authentication, loyalty_rewards, all
json
// Returns
{
  "total": 315,
  "categories": [
    {
      "category": "technical_support",
      "count": 47,
      "intents": [
        {"id": "bug_report", "description": "Customer reporting a software bug"},
        {"id": "performance_issue", "description": "..."}
      ]
    }
  ]
}

supp_categories

List all 13 intent categories with counts. No parameters.

json
// Returns
{
  "total_intents": 315,
  "categories": [
    {"id": "technical_support", "name": "Technical Support", "intent_count": 47},
    {"id": "billing_payment", "name": "Billing & Payment", "intent_count": 31}
  ]
}

Tickets

supp_tickets

List support tickets with filters.

ParameterTypeRequiredDefaultDescription
statusenumNo"all""open", "resolved", "all"
intentstringNoFilter by intent (e.g., "bug_report")
limitnumberNo501-100
sincestringNoISO date (e.g., "2025-01-15")
untilstringNoISO date (e.g., "2025-01-31")
json
// Returns
{
  "tickets": [
    {
      "id": "conv_abc",
      "message": "The app keeps crashing",
      "intent": "bug_report",
      "confidence": 0.91,
      "status": "open",
      "user_email": "customer@example.com",
      "created_at": "2025-01-15T10:30:00Z"
    }
  ]
}

supp_ticket

Get full details of a single ticket.

ParameterTypeRequiredDescription
ticket_idstringYesTicket ID
json
// Returns
{
  "id": "conv_abc",
  "message": "The app keeps crashing",
  "intent": "bug_report",
  "confidence": 0.91,
  "status": "open",
  "user_email": "customer@example.com",
  "created_at": "2025-01-15T10:30:00Z",
  "trigger_fired": "trg_xyz",
  "action_status": "completed"
}

supp_ticket_resolve

Mark a ticket as resolved.

ParameterTypeRequiredDescription
ticket_idstringYesTicket ID to resolve

Triggers (Routing Rules)

supp_triggers

List your custom triggers. Default: top 20.

ParameterTypeRequiredDefaultDescription
limitnumberNo201-100
offsetnumberNo0Pagination offset

supp_trigger_get

Get a single trigger by ID.

ParameterTypeRequiredDescription
trigger_idstringYesTrigger ID

Returns full trigger config including pipeline, template, approval settings, priority filter, and collect fields.

supp_trigger_create

Create a new routing rule.

ParameterTypeRequiredDescription
namestringYesHuman-readable name
whenstringYesIntent to trigger on (e.g., "bug_report")
actionstringYes"mcp_action", "template", "escalate", or "none"
configobjectNoAction config (must include provider for integrations)
responseobjectNoResponse template config
approvalbooleanNoRequire human approval (default: false)
priority_filterstring[]NoOnly fire for these priority levels
actionsarrayNoMulti-action pipeline (see below)
collect_fieldsarrayNoFields to collect before executing

Pipeline actions (for actions parameter):

json
[
  {"type": "mcp_action", "provider": "github", "config": {"repo": "org/app", "labels": "bug"}},
  {"type": "mcp_action", "provider": "slack", "config": {"channel": "#alerts"}},
  {"type": "template", "template": "We've filed a ticket for your issue."}
]

escalate_human is terminal — nothing can follow it in the pipeline.

Collect fields:

json
[
  {"key": "email", "label": "Your email", "type": "email", "required": true},
  {"key": "description", "label": "Describe the issue", "type": "text", "required": false}
]

supp_trigger_update

Update an existing trigger. Only specified fields are changed.

ParameterTypeRequiredDescription
trigger_idstringYesTrigger ID
approvalbooleanNoRequire approval
templatestringNoResponse template
enabledbooleanNoEnable/disable
actionstringNoNew action type
configobjectNoUpdated config
priority_filterstring[]NoPriority filter (empty array to clear)
actionsarrayNoReplace pipeline
collect_fieldsarray/nullNoReplace fields (null to clear)

supp_trigger_delete

Delete a trigger permanently.

ParameterTypeRequiredDescription
trigger_idstringYesTrigger ID

supp_trigger_simulate

Dry-run a trigger against sample text. No side effects, no charges.

ParameterTypeRequiredDescription
trigger_idstringYesTrigger ID
sample_textstringYesSample message to test
json
// Returns
{
  "would_fire": true,
  "intent_matched": "bug_report",
  "confidence": 0.89,
  "action_preview": "Create GitHub issue",
  "approval_required": false
}

supp_trigger_execute

Execute a trigger's integration actions for real. Creates actual issues, sends real messages.

ParameterTypeRequiredDescription
trigger_idstringNo*Trigger ID (*one of trigger_id or intent required)
intentstringNo*Intent name (*one of trigger_id or intent required)

Routing (Bulk Configuration)

supp_routing_list

List the routing table grouped by category.

ParameterTypeRequiredDescription
categorystringNoCategory ID for full details (omit for summary)
enabled_onlybooleanNoOnly show enabled intents (default: false)

Without category: returns compact summary (count per category). With category: returns full details for every intent in that category.

supp_routing_bulk

Apply routing config to multiple intents at once.

Mode 1 — Same config for all:

ParameterTypeRequiredDescription
intentsstring[]YesIntent IDs (max 500)
actionstringYesAction type
configobjectNoAction config
confidence_thresholdnumberNo0-1 (default: 0.80)
approvalbooleanNoRequire approval
priority_filterstring[]NoPriority filter
actionsarrayNoMulti-action pipeline
collect_fieldsarrayNoFields to collect

Mode 2 — Per-intent overrides:

ParameterTypeRequiredDescription
rulesarrayYes[{intent, action?, config?, actions?}] (max 500)
actionstringYesDefault action type
configobjectNoDefault config (overridden by per-rule config)

supp_routing_category

Apply routing config to all intents in entire categories.

ParameterTypeRequiredDescription
categoriesstring[]YesCategory IDs or ["all"]
actionstringYesAction type
configobjectNoAction config
confidence_thresholdnumberNo0-1 (default: 0.80)
approvalbooleanNoRequire approval
priority_filterstring[]NoPriority filter
actionsarrayNoMulti-action pipeline
collect_fieldsarrayNoFields to collect

Priority Scoring

supp_priority_score

Score a message's urgency. Costs $0.03 per call.

ParameterTypeRequiredDescription
textstringYesMessage text to score
json
// Returns
{"priority": "critical", "cost": 0.03}

Priority levels: low, medium, high, critical.

supp_priority_rules

List blanket priority rules (one per priority level). No parameters.

supp_priority_rule_set

Create or update a blanket priority rule.

ParameterTypeRequiredDescription
priority_levelenumYes"low", "medium", "high", "critical"
actionstringYes"mcp_action", "template", "escalate", "none"
configobjectNoAction config
enabledbooleanNoActive/inactive (default: true)

supp_priority_rule_delete

Delete a blanket priority rule.

ParameterTypeRequiredDescription
rule_idstringYesRule ID

supp_priority_scoring_settings

Get or set global priority scoring.

ParameterTypeRequiredDescription
enabledbooleanNoSet on/off (omit to read current value)

supp_priority_scoring_intent

Override priority scoring for specific intents.

ParameterTypeRequiredDescription
intentsstring[]YesIntent IDs (1-500)
enabledboolean/nullYestrue = force on, false = force off, null = inherit

Integrations

supp_integrations

List all connected and available integrations. No parameters.

Returns connected (active services) and available (services you can connect with setup hints).

supp_connect

Get the OAuth URL or setup instructions for a service.

ParameterTypeRequiredDescription
servicestringYesService name (e.g., "github", "slack", "linear")

OAuth services return a URL you can open to authorize. Non-OAuth services return instructions.

supp_disconnect

Disconnect a service.

ParameterTypeRequiredDescription
servicestringYesService name

Escalation

supp_escalated

List escalated tickets needing human attention.

ParameterTypeRequiredDefaultDescription
intentstringNoFilter by intent
limitnumberNo251-100

supp_escalation_respond

Send a response to an escalated ticket. Saved as a draft for human review.

ParameterTypeRequiredDefaultDescription
ticket_idstringYesTicket ID
messagestringYesResponse message (1-10,000 chars)
resolvebooleanNofalseResolve the ticket after responding

Approvals

supp_queue

List pending approval requests. No parameters.

supp_approve

Approve a pending action. Executes the configured action immediately.

ParameterTypeRequiredDescription
approval_idstringYesApproval ID

supp_reject

Reject a pending action. Ticket stays open.

ParameterTypeRequiredDescription
approval_idstringYesApproval ID
reasonstringNoReason for rejection

Analytics

supp_stats

Overview metrics for a time period.

ParameterTypeRequiredDefaultDescription
periodenumNo"week""today", "week", "month", "all"
json
// Returns
{
  "period": "week",
  "total_tickets": 142,
  "resolved": 118,
  "escalated": 24,
  "auto_resolution_rate": 0.83,
  "avg_confidence": 0.82
}

supp_stats_intents

Intent frequency breakdown.

ParameterTypeRequiredDefaultDescription
periodenumNo"week"Time period
limitnumberNo101-50

supp_stats_triggers

Trigger performance metrics (fires, resolutions, rejections).

ParameterTypeRequiredDefaultDescription
periodenumNo"week"Time period
trigger_idstringNoSingle trigger (omit for all)
limitnumberNo201-100
offsetnumberNo0Pagination

supp_stats_export

Export data as CSV or JSON.

ParameterTypeRequiredDefaultDescription
periodenumNo"month"Time period
formatenumNo"json""csv" or "json"

Billing

supp_balance

Check current credit balance and recent charges. No parameters.

supp_spend_cap

View or update spend caps for an API key.

ParameterTypeRequiredDescription
actionenumYes"view", "update", "approve_overage"
key_idstringYesAPI key ID
spend_capnumberFor updateNew cap ($0.10-$10,000)
spend_windowenumFor update"daily" or "weekly"
duration_hoursnumberFor overageHours to allow overage (1-168)

supp_refund

Submit a refund request.

ParameterTypeRequiredDescription
reasonstringYesDescription of the issue (10-2,000 chars)
amountnumberNoSpecific amount ($0.01-$10,000)
transaction_idsstring[]NoTransaction IDs to flag (max 50)
contact_methodenumNo"email", "widget", "form"
contact_detailstringNoContact info (max 200 chars)

supp_refund_status

Check status of refund requests. No parameters.


API Keys

supp_api_key_create

Generate a new API key pair. Keys are shown once and cannot be retrieved again.

ParameterTypeRequiredDefaultDescription
labelstringNo"Default"Label for the key pair (max 100 chars)
json
// Returns
{
  "publishable_key": "pk_live_abc123...",
  "secret_key": "sk_live_xyz789...",
  "label": "Production",
  "warning": "Save these keys now — they cannot be retrieved again."
}
  • pk_live_ key: safe for client-side (widget embedding)
  • sk_live_ key: server-side only (keep private)

Knowledge

supp_docs_connect

Link a documentation source.

ParameterTypeRequiredDescription
sourceenumYes"notion", "github", "url"
urlstringYesURL of the documentation source

supp_docs

List connected documentation sources and their sync status. No parameters.


Help

supp_help

On-demand documentation about Supp.

ParameterTypeRequiredDefaultDescription
topicenumNo"overview""overview", "installation", "tools", "setup", "triggers", "classification", "approvals", "integrations", "stats", "workflows", "all"