Skip to main content
Glama

Deliver File Match

deliver_file_match
Destructive

Trigger download delivery for a file-based identity match job. Always delivers to download — returns a signed URL to the enriched output file. Use this instead of deliver_audience for matched segments created via create_segment(subtype=matched). The match_id is the segment_id returned by create_segment(subtype=matched) — delivery still routes through an audience wrapper internally. Matched segments do not support LiveRamp or Narrative destinations. Supply template_id OR field_list — not both. Use get_field_catalog() to browse options. Requires 'creator' scope.

Input Schema

NameRequiredDescriptionDefault
match_idYesThe segment_id returned by create_segment(subtype=matched) — also accepted as match_id for backward compatibility
field_listNoCustom list of field names to include. Mutually exclusive with template_id.
template_idNoEnrichment template ID from get_field_catalog(). Mutually exclusive with field_list.
webhook_urlNoOptional HTTPS URL to notify when delivery completes.
output_formatNoOutput file format. Defaults to csv if not specified.
include_unmatchedNoInclude rows that did not resolve to a known identity. Defaults to true.
output_compressionNoExplicit output compression. gzip supports csv/json/jsonl; Avro uses native DEFLATE.none

Output Schema

NameRequiredDescriptionDefault
costYes
statusYesCurrent delivery state
guidanceNoInterpretation or recovery guidance for this result
count_unitNo
page_countNoNumber of objects on this page, not the organization total
audience_idYes
count_stateNoUnknown means no count; available does not guarantee freshness. Recount for a current value.
delivery_idYes
destinationYes
next_actionsNoSuggested next calls using returned IDs and available scopes. Not executed and not user consent.
download_urlsNoFresh signed artifact URLs on an individual completed download delivery
money_displayNoCurrency amounts formatted once from source paths ending in _cents. Use verbatim; do not divide again. Null/missing source amounts are omitted, not zero.
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. First observed

TDQS

A4.6/5.0
Behavior4/5

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

Adds real context beyond annotations: delivery always routes to download and returns a signed URL, matched segments don't support LiveRamp/Narrative, and the 'creator' scope requirement is disclosed. It doesn't fully clarify irreversibility or what a repeated call does (idempotentHint=false), so slightly short of full marks.

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 core action and delivery behavior, and most sentences carry distinct routing or constraint information. A few details (backward-compatibility phrasing aside) are dense but each earns its place.

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?

Given an output schema, full param coverage, and clarifying annotations, the description covers the workflow context an agent needs: what it returns, destination limits, auth scope, and param routing. Nothing critical is missing.

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?

Schema coverage is 100%, but the description still adds value by explaining that match_id is the segment_id from create_segment (routing through an audience wrapper internally) and pointing to get_field_catalog for template_id discovery. This meaning goes beyond the schema text.

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 ('Trigger download delivery') and resource ('file-based identity match job'), and explicitly distinguishes it from deliver_audience. The agent can identify exactly what the tool does 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 Guidelines5/5

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

Names the alternative (deliver_audience) and the exact condition that selects this tool (matched segments from create_segment(subtype=matched)). Also states exclusions (no LiveRamp/Narrative destinations) and the template_id/field_list exclusivity.

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