Skip to main content
Glama
This connector has been deprecated

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

Confirm Column Mappings

confirm_column_mappings
Destructive

Confirm column mappings for a staged matched-segment upload, starting identity resolution. Call this after analyze_audience_upload has been reviewed with the user and they approve (with or without edits). This moves the staged file into place — nothing runs before this call succeeds. Only call wait_for_segment after this returns ok. Pass exactly one of segment_id or audience_id — use audience_id when only the audience is known (it resolves to that audience's matched member segment server-side). When using audience_id, column_mappings is required (no auto-inference fallback on that path). When using segment_id, column_mappings may be omitted — the platform re-analyzes the active upload itself and accepts its own suggested mapping as-is. Async build completion or failure may notify configured external webhooks and opted-in users by email. Requires 'creator' scope.

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": "confirm_column_mappings"
  }
}

Input Schema

NameRequiredDescriptionDefault
segment_idNoThe segment_id returned by create_segment(subtype=matched)
audience_idNoThe audience_id, if segment_id isn't known
column_mappingsNoMap of source column name -> standard identity attribute name. Valid targets: iag_person_id, full_name, first_name, middle_name, last_name, name_suffix, address_1, address_2, city, state, zip, email, phone, dob, email_sha256, phone_sha256, emails, phones, addresses, emails_sha256, phones_sha256 (the last 7 — hashed/plural/array variants — are LLM/programmatic mapping targets only, not offered in a human dropdown). Use "(skip)" to exclude a column. For segment_id: omit to have the platform accept its own fresh analysis of the upload as-is. For audience_id: required. Always send the FULL mapping set (not just user-edited columns); this replaces the mappings entirely rather than merging.

Output Schema

NameRequiredDescriptionDefault
okYesWhether the requested action succeeded
guidanceNoInterpretation or recovery guidance for this result
count_unitNo
page_countNoNumber of objects on this page, not the organization total
count_stateNoUnknown means no count; available does not guarantee freshness. Recount for a current value.
next_actionsNoSuggested next calls using returned IDs and available scopes. Not executed and not user consent.
column_mappingsYes
population_inputNoPopulation input used for the preview; IDs refer to their current saved definitions

Schema Changelog

Changes observed during successful MCP inspections.

  1. Added
  2. Removed
  3. Added

TDQS

A4.8/5.0
Behavior5/5

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

Goes well past the annotations: it discloses that the staged file is moved into place and nothing runs before success, that the call is a hard gate for downstream work, that async build outcomes may notify webhooks and opted-in users by email, and that 'creator' scope is required. These details are consistent with destructiveHint=true and idempotentHint=false rather than contradicting them.

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?

Front-loaded with the gating action and sequencing, and no sentence is filler. It is delivered as one dense block, though, and the parameter-mode rules would scan faster as structure; minor readability cost only.

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?

For a destructive, non-idempotent gated write with a rich nested mapping object, it covers prerequisites, scope, path-specific parameter requirements, and async notification side effects. An output schema exists, so omitting return-value documentation is appropriate.

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

Parameters4/5

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

The schema declares zero required parameters, so the description carries real weight by stating 'exactly one of segment_id or audience_id' and explaining that audience_id resolves to the matched member segment server-side. Some content overlaps the column_mappings schema text (required for audience_id, optional for segment_id, full-set replacement), but the mutual-exclusivity and no-auto-inference rules add meaning the schema does not encode.

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 ('Confirm column mappings for a staged matched-segment upload') plus the downstream effect ('starting identity resolution'). It explicitly separates itself from analyze_audience_upload (the review step) and wait_for_segment (the follow-up step), so an agent can place it in the workflow 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 Guidelines5/5

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

Gives an explicit precondition ('after analyze_audience_upload has been reviewed with the user and they approve'), an explicit sequencing rule ('Only call wait_for_segment after this returns ok'), and the alternative-path selection rule between segment_id and audience_id. No exclusions are left to inference.

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