Skip to main content
Glama

Get email campaign

postfjord_get_campaign
Read-only

Read only. One email with its status and its content: subject, preheader and blocks in the simple form postfjord_draft_campaign takes. A block that form cannot show (logo, columns, post card, social links typed before the shared list) comes as type "keep" with its id. A product block lists its products as they were in the store when picked. A block in a background box (a color or photo behind a few blocks, set in the app) has box, the box's id. An email with an A/B test of its subject also has abTest: both subjects, where the test is, the winner and the numbers per subject. Read this before postfjord_update_campaign.

Tool call template

Replace each placeholder with a value matching the input schema. Only required parameters are included; add optional parameters as needed.

{
  "id": 1,
  "jsonrpc": "2.0",
  "method": "tools/call",
  "params": {
    "arguments": {
      "campaignId": "<campaignId>"
    },
    "name": "postfjord_get_campaign"
  }
}

Input Schema

NameRequiredDescriptionDefault
campaignIdYes

Schema Changelog

Changes observed during successful MCP inspections.

  1. First observed

TDQS

A4/5.0
Behavior4/5

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

Annotations already declare readOnlyHint=true and destructiveHint=false, and the description reinforces 'Read only' without contradicting it. Beyond that it discloses real behavioral detail the annotations cannot: unsupported blocks degrade to type "keep" with an id, product blocks show point-in-time snapshots, boxed blocks carry a box id, and A/B-tested subjects add an abTest object with winner and per-subject numbers.

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

Conciseness4/5

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

The read-only constraint and the core return statement are front-loaded, and each following sentence covers a distinct return-shape case rather than restating. Some phrasing is dense and app-referential ('set in the app', 'typed before the shared list'), which costs a little readability but carries genuine information.

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

Completeness4/5

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

With no output schema, the description does substantial work describing the returned block model, the "keep" fallback, product snapshots, boxes, and A/B test payloads. What is missing is low-cost but important: how to supply or discover campaignId, and what happens for an unknown or inaccessible campaign.

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

Parameters2/5

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

Schema description coverage is 0% for the single required parameter, so the description must carry the burden for campaignId and does not: it never states the id format, where to obtain a campaign id, or that the parameter is required. The only clue is 'One email', leaving the agent to infer the id's provenance from sibling names.

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

Purpose5/5

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

The first sentence states a specific verb and resource ('One email with its status and its content') and immediately names the shape it returns, tying it to postfjord_draft_campaign's format. It distinguishes itself from write siblings by naming postfjord_update_campaign as the follow-up action, so an agent can place it without opening any schema.

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

Usage Guidelines4/5

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

There is explicit sequencing guidance ('Read this before postfjord_update_campaign') and an implicit pairing with postfjord_draft_campaign via the shared block form. It stops short of saying when NOT to use it (e.g., for metrics, defer to postfjord_get_campaign_report), so the alternative-routing is incomplete rather than absent.

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