Contract
{
"type": "object",
"required": [
"transaction_info"
],
"properties": {
"city": {
"type": "string",
"description": "City to prioritize when searching for the merchant."
},
"maxSpeed": {
"type": "boolean",
"default": false,
"description": "Optimize for speed: the upstream service skips time-consuming enrichment for a faster response at the cost of less comprehensive data. Default false."
},
"timeoutMS": {
"type": "integer",
"maximum": 300000,
"minimum": 1000,
"description": "Upstream timeout in milliseconds (max 300000). The upstream service aborts the call with a 408 when exceeded. Keep it below the endpoint's requestTimeoutMs so the provider answers before the platform's own budget expires."
},
"country_gl": {
"type": "string",
"maxLength": 2,
"minLength": 2,
"description": "Two-letter ISO 3166-1 alpha-2 country code (e.g. 'us', 'gb', 'de'). Must be one of the supported countries."
},
"force_language": {
"type": "string",
"minLength": 2,
"description": "Force the language of the returned brand copy (a language NAME, e.g. 'english', 'french', 'japanese')."
},
"transaction_info": {
"type": "string",
"maxLength": 500,
"minLength": 3,
"description": "The raw transaction descriptor to identify, e.g. 'SQ *COFFEE BAR 4157...' or 'AMZN Mktp US*2K4TZ'."
},
"high_confidence_only": {
"type": "boolean",
"default": false,
"description": "Run an extra verification pass and only return a match the upstream service is confident about. Default false."
}
},
"additionalProperties": false
}{
"type": "object",
"properties": {
"code": {
"type": [
"number",
"string"
],
"description": "200 on a successful match; a string error code like 'HTTP_400' when the descriptor cannot be resolved."
},
"brand": {
"type": "object",
"properties": {
"links": {
"type": "object",
"properties": {
"blog": {
"type": [
"string",
"null"
]
},
"terms": {
"type": [
"string",
"null"
]
},
"careers": {
"type": [
"string",
"null"
]
},
"contact": {
"type": [
"string",
"null"
]
},
"pricing": {
"type": [
"string",
"null"
]
},
"privacy": {
"type": [
"string",
"null"
]
}
},
"description": "Links to the merchant's own site pages. Every leaf was observed null on the one real match captured, so a populated value's exact shape (a plain URL string is expected but unconfirmed) is not guaranteed.",
"additionalProperties": false
},
"logos": {
"type": "array",
"items": {
"type": "object",
"properties": {
"url": {
"type": [
"string",
"null"
],
"description": "Always null: this tool strips the raw logo image URL before shipping it."
},
"mode": {
"type": "string",
"description": "e.g. 'dark' -- which UI theme this logo variant suits."
},
"type": {
"type": "string",
"description": "e.g. 'icon'."
},
"colors": {
"type": "array",
"items": {
"type": "object",
"properties": {
"hex": {
"type": "string"
},
"name": {
"type": "string",
"description": "A color-swatch name, not a person's name."
}
},
"additionalProperties": false
}
},
"resolution": {
"type": "object",
"properties": {
"width": {
"type": "number"
},
"height": {
"type": "number"
},
"aspect_ratio": {
"type": "number"
}
},
"additionalProperties": false
}
},
"additionalProperties": false
},
"description": "Logo image variants. Each entry's own image URL is not shipped (see responseShaping)."
},
"title": {
"type": "string",
"description": "The merchant's own public display name."
},
"colors": {
"type": "array",
"items": {
"type": "object",
"properties": {
"hex": {
"type": "string"
},
"name": {
"type": "string",
"description": "A paint-swatch-style color name (e.g. 'Blaze Orange'), not a person's name."
}
},
"additionalProperties": false
},
"description": "The brand's palette."
},
"domain": {
"type": "string",
"description": "The merchant's primary web domain."
},
"slogan": {
"type": "string"
},
"is_nsfw": {
"type": "boolean"
},
"industries": {
"type": "object",
"properties": {
"eic": {
"type": "array",
"items": {
"type": "object",
"properties": {
"industry": {
"type": "string"
},
"subindustry": {
"type": "string"
}
},
"additionalProperties": false
}
}
},
"additionalProperties": false
},
"description": {
"type": "string"
},
"primary_language": {
"type": "string"
}
},
"description": "Present only when the descriptor resolves to a confident merchant match.",
"additionalProperties": false
},
"status": {
"type": "string",
"description": "'ok' on the one successful match observed. Absent on a failed lookup."
},
"message": {
"type": "string",
"description": "Present only when the lookup fails -- the human-readable reason."
},
"cache_metadata": {
"type": "object",
"properties": {
"age_ms": {
"type": "number",
"description": "Milliseconds since this brand record was cached."
},
"status": {
"type": "string",
"description": "e.g. 'hit' or 'miss'."
}
},
"description": "Present only when the descriptor resolves to a confident merchant match.",
"additionalProperties": false
}
},
"description": "The brand-identification result, as returned at routing.responseResultPath ($.output).",
"additionalProperties": false
}Pricing
Every real charge, itemised. A model that quietly omits one is a slow financial leak, so nothing here is rolled up, and a charge that only applies to some inputs says so rather than being added in.
Prices in this catalog are the provider's own list price, not your bill: Omnial MCP charges provider cost plus a platform markup on top, so what you are charged is higher than the figure shown. For the exact amount a specific call will cost, run omnial_execute with dry_run: true; that number includes the markup and is what we hold while the call runs. It is a quote, not a cap on the charge.
| Charge | Rate |
|---|---|
Per call Flat, regardless of what comes back | $0.012285 |
- Cost basis
- Not recorded
This tool's catalog entry does not record how its final bill is determined, so we will not tell you whether its cost is fixed before the call or reported by the provider afterwards. Either way what is held is a quote rather than a cap: you are charged what the call actually costs, bounded at 2x the quote.
- Updated
- Sep 15, 2026
