Skip to main content
Glama

Sendblox

Update Campaign

update_campaign
Idempotent

APP: Updates outbound email campaign Settings fields: name, description, tags, default language, timezone, send days, start/end time, connected data source, audience tab, campaign type, review mode, and daily send cap. HubSpot, Capsule, and Attio tabs are Contacts and Companies. Salesforce and Dynamics also accept Leads. Zoho Companies is the account object. Pipedrive People is Contacts. Apollo also accepts a saved-list tab. Monday uses a board id, ClickUp a list id, Google Sheets a tab name, and Airtable a table name. Changing dataSource without a tab selects that source default object. Does not launch or send.

Tool call template

This tool declares no required parameters. Add optional parameters from the input schema as needed.

{
  "id": 1,
  "jsonrpc": "2.0",
  "method": "tools/call",
  "params": {
    "arguments": {},
    "name": "update_campaign"
  }
}

Input Schema

NameRequiredDescriptionDefault
idNo
daysNo
nameNo
tagsNo
regionNo
teamIdNo
endTimeNo
languageNo
timezoneNo
objectiveNo
startTimeNo
campaignIdNo
dataSourceNo
recordTypeNo
reviewModeNo
descriptionNo
campaignTypeNo
departmentIdNo
manualReviewNo
scheduleDaysNo
integrationIdNo
idempotencyKeyNo
maxSendsPerDayNo
defaultLanguageNo
scheduleEndTimeNo
selectedSheetTabNo
externalProjectIdNo
scheduleStartTimeNo
externalCampaignIdNo
externalObjectiveIdNo
externalCorrelationIdNo

Output Schema

NameRequiredDescriptionDefault
jobIdNo
resultYes
statusYes
summaryNo
blockersYes
warningsYes
readinessNo
requestIdYes
retryableNo
nextPossibleActionsYes

Schema Changelog

Changes observed during successful MCP inspections.

  1. Added

TDQS

B3.3/5.0
Behavior3/5

Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?

Annotations already declare readOnlyHint=false, idempotentHint=true and destructiveHint=false, so safety is covered. The description adds real value with 'Changing dataSource without a tab selects that source default object,' a non-obvious side effect. It omits the most consequential behavior for a 31-parameter update: whether omitted fields are left untouched or cleared, and what happens on conflicting values.

Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.

Conciseness3/5

Is the description appropriately sized, front-loaded, and free of redundancy?

The opening sentence front-loads purpose well, but the body is a dense run-on of CRM mapping clauses of uneven relevance. The most decision-relevant constraint, 'Does not launch or send,' is buried at the very end instead of being placed near the purpose statement.

Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.

Completeness3/5

Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?

An output schema exists, so return values need no explanation, and annotations cover the safety profile. Given 31 undocumented parameters, though, the description is only partially complete: it never states that this is a partial/patch update, never explains the identity parameters, and never disambiguates the several near-duplicate field pairs.

Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.

Parameters3/5

Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?

Schema description coverage is 0% across 31 parameters, so the description carries the full burden, and it does explain the integration-specific meaning of the tab/project parameters (Monday board id, ClickUp list id, Google Sheets tab name, Airtable table name) plus which CRM objects are valid. It leaves major ambiguities unresolved: id vs campaignId, days vs scheduleDays, startTime vs scheduleStartTime, language vs defaultLanguage, and reviewMode vs manualReview are never distinguished.

Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.

Purpose4/5

Does the description clearly state what the tool does and how it differs from similar tools?

States a specific verb and resource ('Updates outbound email campaign Settings fields') and enumerates the mutable fields, so an agent knows exactly what changes. It also carves out a boundary against launch_campaign with 'Does not launch or send.' Minor mismatch: the description says 'email campaign' while the campaignType enum also allows sms/whatsapp/voice.

Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.

Usage Guidelines3/5

Does the description explain when to use this tool, when not to, or what alternatives exist?

'Does not launch or send' implicitly routes the agent to launch_campaign, and the field list implies use over create_campaign for existing campaigns. However, there is no explicit when-to-use statement, no mention of how the target campaign is identified (id vs campaignId, both optional in the schema), and no prerequisites or permissions guidance.

Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.

Try in Browser

Glama MCP Gateway

Add one secure layer between your agents and this server.

Resources