Skip to main content
Glama

campaignstack_get_persona

Read-onlyIdempotent

Get a persona by ID. Returns the full persona record including pain points, goals, and objections. If not found, use campaignstack_list_personas with a valid campaignId.

Input Schema

TableJSON Schema
NameRequiredDescriptionDefault
personaIdYes

Schema Changelog

Changes observed during successful MCP inspections. Dates show when Glama detected each change.

  1. First observed

TDQS

A4.1/5.0
Behavior4/5

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

Annotations already mark the operation as read-only, idempotent, and non-destructive. The description adds useful behavioral context by specifying the returned fields and providing a not-found fallback. No contradiction with annotations exists.

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

Conciseness5/5

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

Three compact sentences with no wasted words. The primary action is front-loaded, followed by return-value details and a fallback instruction, making the description easy to scan.

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?

For a single-parameter read operation, the description covers the return payload and even offers recovery guidance for not-found cases. It could be slightly more explicit about how to obtain a valid personaId, but overall it is adequately complete.

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?

The only parameter, personaId, has 0% schema description coverage. The description merely says 'by ID' and does not explain where the personaId comes from, whether it is scoped to a campaign, or what format or constraints apply beyond the schema's type and minLength.

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 description uses a specific verb and resource ('Get a persona by ID') and clearly states what is returned: the full persona record including pain points, goals, and objections. This separates it from creation, update, deletion, and listing sibling tools.

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?

It gives clear context: this tool fetches a persona by ID, and if not found, the agent should use campaignstack_list_personas with a valid campaignId. This names an alternative and a condition, though it does not explicitly explain when to choose this tool over listing from the outset.

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.

TDQS

A3.6/5.0
Disambiguation3/5

Many tools share the same verb prefix (create_, list_, update_, get_) across closely related resources, so pairs like add_lead_to_external_list vs add_lead_to_sequence, create_signal_agent vs create_signal_watch, and approve_review vs approve_content_post can be confused. The descriptions are unusually detailed and cross-referenced, which mitigates but does not eliminate the ambiguity inherent in a 282-tool surface.

Naming Consistency4/5

Virtually every tool follows the campaignstack_verb_noun snake_case pattern, which is highly predictable. Minor deviations exist: destructive operations mix remove_ and delete_ (remove_lead_list vs delete_campaign), AI generation uses both craft_ and generate_, and the seo_/search_console_ subdomains introduce a second prefix convention.

Tool Count1/5

282 tools is an extreme mismatch by any reasonable standard, exceeding the 50+ threshold by more than 5x. Even for a full B2B outreach platform, this surface is far too large and would be better consolidated into higher-level operations or grouped sub-servers.

Completeness4/5

The tool surface is impressively comprehensive, covering campaigns, workflows, leads, content, ads, SEO, integrations, billing, and more with CRUD-level depth. Minor gaps remain: no single-ICP getter, no direct pause/delete for search watches, and no explicit delete for ad campaigns (only archive via update).

Resources