Follow-up from PR #4540 (brand verification RFC) — explicitly deferred from v1.
The gap
Each verification tool takes a single target. A crawler verifying 100 brand-portfolio entries against a single house's brand-agent pays 100 MCP round-trips.
When this hurts
- AAO's crawler refreshing brand-portfolio state for a member with 50+ brands.
- A DSP onboarding inventory across a full holdco portfolio.
- A creative-clearance pipeline batch-validating marks across a campaign's creatives.
Single-target shape ships in v1 because the design works for the common case. Bulk is additive.
Sketch
```json
// verify_subsidiary_claims (plural)
{
"claims": [
{ "claimed_subsidiary_domain": "converse.com", "claimed_brand_id": "converse" },
{ "claimed_subsidiary_domain": "jordan.com", "claimed_brand_id": "jordan" },
...
]
}
→
{
"results": [
{ "claimed_subsidiary_domain": "converse.com", "status": "owned", "brand_id": "converse" },
{ "claimed_subsidiary_domain": "jordan.com", "status": "owned", "brand_id": "jordan" }
]
}
```
Same shape for `verify_properties` and `verify_trademarks`.
Design questions
- Max batch size — 100? 1000? Per-tool varies?
- Partial failure semantics — does one bad input fail the batch?
- Signing — does each result need its own signed envelope, or one envelope for the whole batch?
- Cache header semantics for mixed results (one `pending` + nine `owned` in the same response)?
- Per-result `Cache-Control` extension or single-batch lowest-common-TTL?
When to land
The product expert review on PR #4540 said "crawlers will demand it within 6 months." Roughly track adoption of v1 single-target tools; if AAO's crawler or 2+ external consumers hit the round-trip cost, prioritize.
Related
Follow-up from PR #4540 (brand verification RFC) — explicitly deferred from v1.
The gap
Each verification tool takes a single target. A crawler verifying 100 brand-portfolio entries against a single house's brand-agent pays 100 MCP round-trips.
When this hurts
Single-target shape ships in v1 because the design works for the common case. Bulk is additive.
Sketch
```json
// verify_subsidiary_claims (plural)
{
"claims": [
{ "claimed_subsidiary_domain": "converse.com", "claimed_brand_id": "converse" },
{ "claimed_subsidiary_domain": "jordan.com", "claimed_brand_id": "jordan" },
...
]
}
→
{
"results": [
{ "claimed_subsidiary_domain": "converse.com", "status": "owned", "brand_id": "converse" },
{ "claimed_subsidiary_domain": "jordan.com", "status": "owned", "brand_id": "jordan" }
]
}
```
Same shape for `verify_properties` and `verify_trademarks`.
Design questions
When to land
The product expert review on PR #4540 said "crawlers will demand it within 6 months." Roughly track adoption of v1 single-target tools; if AAO's crawler or 2+ external consumers hit the round-trip cost, prioritize.
Related