Skip to main content
Glama
This connector has been deprecated

Replaced by io.github.no-fait/infinite-audience

Duplicate Segment

duplicate_segment

Create a duplicate of an existing segment. Preserves the source subtype and all subtype-specific data: filter criteria for filter segments; match results, column mappings, and match counts for matched segments; immutable membership version and expiry for custom segments (underlying computed data is referenced, never recomputed). Lineage is recorded (parent_segment_id, derived_from root ancestor, parent_segment_version pin). Filter duplicates start with record_count null — trigger a recount with count_segment for a fresh count; matched/custom duplicates carry the source's counts. Returns 409 SOURCE_MATCH_UNAVAILABLE when a matched source's match data is unavailable (expired/failed/incomplete match), or 409 SOURCE_NOT_READY when a non-matched source is pending or failed. Requires 'creator' scope.

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": {
      "segment_id": "<segment_id>"
    },
    "name": "duplicate_segment"
  }
}

Input Schema

NameRequiredDescriptionDefault
nameNoName for the duplicate. Defaults to "<source name> (copy)"
segment_idYesID of the segment to duplicate

Output Schema

NameRequiredDescriptionDefault
nameYes
statusYes
subtypeYes
guidanceNoInterpretation or recovery guidance for this result
count_unitNo
page_countNoNumber of objects on this page, not the organization total
segment_idYes
upload_urlNo
audience_idNo
count_stateNoUnknown means no count; available does not guarantee freshness. Recount for a current value.
upload_urlsNo
next_actionsNoSuggested next calls using returned IDs and available scopes. Not executed and not user consent.
record_countNoStored count; null means unknown. Call count_segment for a current count.
record_limitNoMaximum members; null means no explicit cap
filter_groupsNoComplete saved filter definition; one AND group also represents a simple flat filter list
current_versionNo
workflow_run_idNo
population_inputNoPopulation input used for the preview; IDs refer to their current saved definitions
upload_expires_atNo

Schema Changelog

Changes observed during successful MCP inspections.

  1. Added
  2. Removed
  3. Added

TDQS

A4.5/5.0
Behavior5/5

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

Annotations only state non-readonly, non-idempotent, non-destructive, and closed-world behavior. The description adds what is preserved, lineage recording, count behavior, source-ready errors, and the required 'creator' scope, which is substantial context for correct invocation.

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?

Front-loads the purpose, then groups preservation, lineage, count, and error behavior into compact sentences. It is dense, but each clause supports correct use and there is no filler.

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

Completeness5/5

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

An output schema exists, so the description need not explain return values. It still covers preservation, lineage, count semantics, failure modes, and required scope, making it complete for a duplicate mutation tool.

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 100%, and both parameters are documented in the schema. The description reinforces segment_id as a source segment and explains subtype-dependent consequences, but does not add syntax or default details beyond what the schema already provides.

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?

States a specific verb and resource: 'Create a duplicate of an existing segment.' It immediately differentiates duplicate behavior from ordinary creation by enumerating subtype-specific preservation, so an agent can identify the operation without opening the 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?

Explains that filter duplicates start with record_count null and should be recounted via count_segment, and gives 409 conditions that affect when the call can succeed. It does not explicitly compare against create_segment or duplicate_audience, so it lacks full when/when-not/alternatives 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