{"name":"Optimly Scout","description":"Optimly Scout (optimly.ai — not Optimizely, which is a different company) is the agent interface to Optimly's brand trust registry for AI — a verified index of 60,000+ brand profiles that AI models read from when answering buyer-intent questions. Scout provides brand lookups, BAI audit data, source-graph intelligence, and registry-write access for verified brand owners.","provider":"Optimly AI","version":"0.3.0","protocol":"a2a","mcp_endpoint":"https://scout.optimly.ai/mcp","mcp_transport":"streamable-http","skills":[{"name":"brand_lookup","audience":"brand","description":"Look up a brand's profile in the Optimly brand trust registry by name or slug. Returns BAI tier, archetype, category, and basic info from the verified registry index.","parameters":{"type":"object","properties":{"slug":{"type":"string","description":"Brand slug for exact match (e.g. 'stripe', 'hal9')"},"name":{"type":"string","description":"Brand name to search for"},"category":{"type":"string","description":"Filter by category"}}}},{"name":"brand_narrative_check","audience":"brand","description":"See the full AI perception profile for a brand from the brand trust registry — what AI tells buyers, sentiment, accuracy gaps, and the third-party sources shaping that description.","parameters":{"type":"object","properties":{"brand_slug":{"type":"string"},"brand_name":{"type":"string"}}}},{"name":"brand_action_plan","audience":"brand","description":"Prioritized action plan for improving how AI represents your brand, based on the source graph analysis and registry audit. Returns specific fixes ranked by urgency with benchmark data.","parameters":{"type":"object","properties":{"brand_slug":{"type":"string"},"brand_name":{"type":"string"}}}},{"name":"brand_compare","audience":"brand","description":"Compare brands side-by-side on AI representation — archetype, BAI tier, sentiment, category positioning, and key discrepancies. Works for any brand in the registry.","parameters":{"type":"object","properties":{"primary_brand":{"type":"string"},"competitors":{"type":"array","items":{"type":"string"},"description":"Up to 5 competitor slugs"}},"required":["primary_brand","competitors"]}},{"name":"magic_moment_analysis","audience":"brand","authentication":"required","description":"Deliver one evidence-backed Optimly analysis across Business Profile, AI Representation, and connected website outcomes. Free plans can complete it once across Ask Optimly and MCP; paid plans retain ongoing access.","parameters":{"type":"object","properties":{"brand_id":{"type":"string","format":"uuid"}},"required":["brand_id"]}},{"name":"list_experiment_candidates","audience":"brand","authentication":"required","description":"List recommendations eligible to become measured tests, including their Optimly Actions workflow state, entitlement lock state, and any existing experiment.","parameters":{"type":"object","properties":{"brand_id":{"type":"string","format":"uuid"}}}},{"name":"start_recommendation_experiment","audience":"brand","authentication":"required","description":"Prepare baseline measurement for a recommendation already in the customer's plan. Approval, execution, and independent verification remain in Optimly Actions; post-action measurement starts only after verified-live evidence.","parameters":{"type":"object","properties":{"brand_id":{"type":"string","format":"uuid"},"work_item_id":{"type":"string","format":"uuid"}},"required":["work_item_id"]}},{"name":"get_experiment_status","audience":"brand","authentication":"required","description":"Read the authoritative lifecycle, observations, and results for one measured test without inferring approval, implementation, or verification.","parameters":{"type":"object","properties":{"brand_id":{"type":"string","format":"uuid"},"experiment_id":{"type":"string","format":"uuid"}},"required":["experiment_id"]}},{"name":"get_agent_activity","audience":"brand","authentication":"required","description":"Read bounded, tenant-scoped AI agent and crawler activity for a connected site.","parameters":{"type":"object","properties":{"brand_id":{"type":"string","format":"uuid"},"site_id":{"type":"string","format":"uuid"},"start_date":{"type":"string","format":"date"},"end_date":{"type":"string","format":"date"}},"required":["brand_id","site_id","start_date","end_date"]}},{"name":"get_agent_content_gaps","audience":"brand","authentication":"required","description":"Read evidence-backed paths that AI agents or crawlers attempted but could not successfully retrieve.","parameters":{"type":"object","properties":{"brand_id":{"type":"string","format":"uuid"},"site_id":{"type":"string","format":"uuid"},"start_date":{"type":"string","format":"date"},"end_date":{"type":"string","format":"date"}},"required":["brand_id","site_id","start_date","end_date"]}},{"name":"brand_status","audience":"brand","authentication":"required","description":"Check your brand's verified entry in the brand trust registry — baseline version, last edits, and section summaries. Requires Signal Pro or Enterprise.","parameters":{"type":"object","properties":{}}},{"name":"get_whitespace_candidates","audience":"brand","authentication":"required","description":"Get ranked, evidence-backed information gaps for a brand, with observed demand and supply-weakness signals. Requires Signal Pro or Enterprise.","parameters":{"type":"object","properties":{"min_score":{"type":"number"},"status":{"type":"string","enum":["new","pinned","targeted","held","dismissed"]},"platform":{"type":"string","enum":["chatgpt","perplexity","gemini","copilot","ai_overviews","human","n/a"]}}}},{"name":"update_candidate_status","audience":"brand","authentication":"required","description":"Pin, target, hold, dismiss, or reopen a whitespace candidate. Targeted candidates require an action reference for attribution. Requires Signal Pro or Enterprise.","parameters":{"type":"object","properties":{"candidate_id":{"type":"string","format":"uuid"},"status":{"type":"string","enum":["new","pinned","targeted","held","dismissed"]},"action_ref":{"type":"string"}},"required":["candidate_id","status"]}},{"name":"brand_vault_profile","audience":"brand","authentication":"required","description":"Read your brand's verified entry in the Optimly brand trust registry — all 15 ground truth sections that AI models read from. Requires Signal Pro or Enterprise.","parameters":{"type":"object","properties":{}}},{"name":"delta_report","audience":"brand","authentication":"required","description":"Get a Brand Authority Index audit — how AI describes your brand vs. the verified registry entry. Returns BAI score breakdown and run metadata. Pass run_id for a specific historical run. Requires Signal Pro or Enterprise.","parameters":{"type":"object","properties":{"run_id":{"type":"string"}}}},{"name":"delta_report_details","audience":"brand","authentication":"required","description":"Per-question detail from a BAI audit — exactly what each AI model said, with citation URLs tagged [OWNED] or [3P]. Pass only_grounded=true to filter to cited answers. Requires Signal Pro or Enterprise.","parameters":{"type":"object","properties":{"run_id":{"type":"string"},"limit":{"type":"number"},"offset":{"type":"number"},"only_grounded":{"type":"boolean"}},"required":["run_id"]}},{"name":"delta_report_history","audience":"brand","authentication":"required","description":"List historical BAI audit runs newest-first with run-over-run deltas and trend analysis. Use to spot trends and pick a run_id to drill into. Requires Signal Pro or Enterprise.","parameters":{"type":"object","properties":{"limit":{"type":"number"},"since":{"type":"string","description":"Optional ISO date"}}}},{"name":"brand_sources","audience":"brand","authentication":"required","description":"See the canonical cross-run ranking of sources monitored AI answers actually cited. Pass run_id for detailed analysis of one completed audit. Use coverage_list separately to check whether an article is enrolled for tracking. Requires Signal Pro or Enterprise.","parameters":{"type":"object","properties":{"run_id":{"type":"string"},"group_by":{"type":"string","enum":["url","domain"]}}}},{"name":"competitive_analysis","audience":"brand","authentication":"required","description":"Compare your brand against your competitors across AI models — BAI scores, archetypes, and where you lead or trail. Requires Signal Pro or Enterprise.","parameters":{"type":"object","properties":{}}},{"name":"brand_monitor","audience":"brand","authentication":"required","description":"Check what's changed in your brand's AI representation since your last check — score changes, narrative drift, competitor movements, and alerts. Requires Signal Pro or Enterprise.","parameters":{"type":"object","properties":{"since":{"type":"string","description":"ISO date or shorthand: 'last_week', 'last_month', 'last_quarter'"}}}},{"name":"brand_site_audit","audience":"brand","authentication":"required","description":"Audit key pages on a brand's website from the AI crawler's perspective — HTTP status, robots.txt rules for AI bots, structured data, llms.txt presence, and rendered content. Requires Signal Pro or Enterprise.","parameters":{"type":"object","properties":{"url":{"type":"string"},"pages":{"type":"array","items":{"type":"string"}}}}},{"name":"brand_update","audience":"brand","authentication":"enterprise","description":"Execute one exactly approved BrandVault mutation from its immutable stored action payload. The call atomically starts the action and consumes approval; never call record_action_started first. Requires Enterprise.","parameters":{"type":"object","properties":{"action_id":{"type":"string"},"approval_id":{"type":"string"},"idempotency_key":{"type":"string"},"actor":{"type":"object"}},"required":["action_id","approval_id","idempotency_key","actor"]}},{"name":"brand_publish","audience":"brand","authentication":"enterprise","description":"Execute an approved aggregate BrandVault publish covering text sections, structured competitors, sub-brands, and disambiguation. Automatically refreshes the canonical Optimly-hosted llms.txt.","parameters":{"type":"object","properties":{"action_id":{"type":"string"},"approval_id":{"type":"string"},"idempotency_key":{"type":"string"},"actor":{"type":"object"}},"required":["action_id","approval_id","idempotency_key","actor"]}},{"name":"coverage_list","audience":"brand","authentication":"enterprise","description":"List earned-media URLs tracked for your brand and their monitored AI citation status. Requires Enterprise.","parameters":{"type":"object","properties":{}}},{"name":"coverage_add","audience":"brand","authentication":"enterprise","description":"Add one earned-media URL through the dedicated Media Coverage intake. Missing article details are identified automatically. Requires Enterprise.","parameters":{"type":"object","properties":{"url":{"type":"string","format":"uri"},"title":{"type":"string"},"publication":{"type":"string"},"published_at":{"type":"string"}},"required":["url"]}},{"name":"coverage_add_many","audience":"brand","authentication":"enterprise","description":"Bulk-add 1 to 25 structured earned-media URL records through the dedicated Media Coverage intake, with per-item outcomes. Requires Enterprise.","parameters":{"type":"object","properties":{"items":{"type":"array","minItems":1,"maxItems":25,"items":{"type":"object","properties":{"url":{"type":"string","format":"uri"},"title":{"type":"string"},"publication":{"type":"string"},"published_at":{"type":"string"}},"required":["url"]}}},"required":["items"]}},{"name":"get_agent_work","audience":"brand","authentication":"enterprise","description":"Read canonical recommendations and drafts, including REC IDs, versions, allowed actions, verification status, and Optimly app links.","parameters":{"type":"object","properties":{"brand_id":{"type":"string"},"include_dismissed":{"type":"boolean"}},"required":["brand_id"]}},{"name":"get_agent_work_changes","audience":"brand","authentication":"enterprise","description":"Read durable recommendation changes after a cursor for agent reconciliation.","parameters":{"type":"object","properties":{"brand_id":{"type":"string"},"after":{"type":"number"},"limit":{"type":"number"}},"required":["brand_id"]}},{"name":"get_agent_work_context","audience":"brand","authentication":"enterprise","description":"Read this week's canonical recommendations and the next recommendation-generation time.","parameters":{"type":"object","properties":{"brand_id":{"type":"string"}},"required":["brand_id"]}},{"name":"save_recommendation","audience":"brand","authentication":"enterprise","description":"Save one grounded onsite or offsite recommendation to the shared Optimly Actions inbox.","parameters":{"type":"object","properties":{"brand_id":{"type":"string"},"base_version":{"type":["number","null"]},"canonical_key":{"type":"string"},"domain":{"type":"string"},"action_type":{"type":"string"},"title":{"type":"string"},"evidence":{"type":"array"},"target":{"type":"object"},"producer":{"type":"object"}},"required":["brand_id","base_version","canonical_key","domain","action_type","title","evidence","target","producer"]}},{"name":"save_draft","audience":"brand","authentication":"enterprise","description":"Save one evidence-backed, copy/pasteable draft and its portable implementation package to Optimly Actions.","parameters":{"type":"object","properties":{"brand_id":{"type":"string"},"base_version":{"type":["number","null"]},"canonical_key":{"type":"string"},"domain":{"type":"string"},"title":{"type":"string"},"implementation_package":{"type":"object"},"evidence":{"type":"array"},"producer":{"type":"object"}},"required":["brand_id","base_version","canonical_key","domain","title","implementation_package","evidence","producer"]}},{"name":"get_work_status","audience":"brand","authentication":"enterprise","description":"Read one work item by UUID or REC ID and return its canonical workflow and deep link.","parameters":{"type":"object","properties":{"brand_id":{"type":"string"},"work_item_id":{"type":"string"}},"required":["brand_id","work_item_id"]}},{"name":"record_agent_feedback","audience":"brand","authentication":"enterprise","description":"Record explicit non-dismissal customer feedback using the current work version.","parameters":{"type":"object","properties":{"brand_id":{"type":"string"},"work_item_id":{"type":"string"},"base_version":{"type":"number"},"decision":{"type":"string"},"reason":{"type":["string","null"]},"explanation":{"type":["string","null"]}},"required":["brand_id","work_item_id","base_version","decision"]}},{"name":"record_checklist_progress","audience":"brand","authentication":"enterprise","description":"Record customer checklist progress separately from independent verification.","parameters":{"type":"object","properties":{"brand_id":{"type":"string"},"work_item_id":{"type":"string"},"checklist_item_id":{"type":"string"},"base_version":{"type":"number"},"state":{"type":"string"},"evidence_reference":{"type":["string","null"]}},"required":["brand_id","work_item_id","checklist_item_id","base_version","state"]}},{"name":"request_customer_input","audience":"brand","authentication":"enterprise","description":"Create an explicit customer responsibility request on a recommendation.","parameters":{"type":"object","properties":{"brand_id":{"type":"string"},"work_item_id":{"type":"string"},"request":{"type":"object"}},"required":["brand_id","work_item_id","request"]}},{"name":"record_customer_response","audience":"brand","authentication":"enterprise","description":"Record a customer response and transfer responsibility away from the customer.","parameters":{"type":"object","properties":{"brand_id":{"type":"string"},"work_item_id":{"type":"string"},"request_id":{"type":"string"},"response":{"type":"object"}},"required":["brand_id","work_item_id","request_id","response"]}},{"name":"record_work_verification","audience":"brand","authentication":"enterprise","description":"Record independently observed work-verification evidence.","parameters":{"type":"object","properties":{"brand_id":{"type":"string"},"work_item_id":{"type":"string"},"base_version":{"type":"number"},"verification":{"type":"object"}},"required":["brand_id","work_item_id","base_version","verification"]}},{"name":"record_work_outcome","audience":"brand","authentication":"enterprise","description":"Record a directional outcome after verified implementation without claiming causality.","parameters":{"type":"object","properties":{"brand_id":{"type":"string"},"work_item_id":{"type":"string"},"base_version":{"type":"number"},"outcome":{"type":"object"}},"required":["brand_id","work_item_id","base_version","outcome"]}},{"name":"assign_recommendation","audience":"brand","authentication":"enterprise","description":"Assign a recommendation to the customer or Optimly from explicit Slack evidence.","parameters":{"type":"object","properties":{"brand_id":{"type":"string"},"work_item_id":{"type":"string"},"assignment":{"type":"object"},"decision":{"type":"object"}},"required":["brand_id","work_item_id","assignment","decision"]}},{"name":"start_recommendation","audience":"brand","authentication":"enterprise","description":"Move assigned work into progress or link a governed execution action.","parameters":{"type":"object","properties":{"brand_id":{"type":"string"},"work_item_id":{"type":"string"},"mode":{"type":"string"},"start":{"type":"object"},"decision":{"type":"object"}},"required":["brand_id","work_item_id","mode","start"]}},{"name":"dismiss_recommendation","audience":"brand","authentication":"enterprise","description":"Dismiss a recommendation with explicit Slack evidence and a reason.","parameters":{"type":"object","properties":{"brand_id":{"type":"string"},"work_item_id":{"type":"string"},"dismissal":{"type":"object"},"decision":{"type":"object"}},"required":["brand_id","work_item_id","dismissal","decision"]}},{"name":"preview_recommendation_adaptation","audience":"brand","authentication":"enterprise","description":"Preview an adaptation without replacing the canonical recommendation.","parameters":{"type":"object","properties":{"brand_id":{"type":"string"},"work_item_id":{"type":"string"},"adaptation":{"type":"object"},"decision":{"type":"object"}},"required":["brand_id","work_item_id","adaptation","decision"]}},{"name":"confirm_recommendation_adaptation","audience":"brand","authentication":"enterprise","description":"Confirm and apply a previously returned adaptation preview.","parameters":{"type":"object","properties":{"brand_id":{"type":"string"},"work_item_id":{"type":"string"},"draft_id":{"type":"string"},"confirmation":{"type":"object"},"decision":{"type":"object"}},"required":["brand_id","work_item_id","draft_id","confirmation","decision"]}},{"name":"discard_recommendation_adaptation","audience":"brand","authentication":"enterprise","description":"Discard an adaptation preview without changing the recommendation.","parameters":{"type":"object","properties":{"brand_id":{"type":"string"},"work_item_id":{"type":"string"},"draft_id":{"type":"string"},"discard":{"type":"object"},"decision":{"type":"object"}},"required":["brand_id","work_item_id","draft_id","discard","decision"]}},{"name":"record_customer_completion","audience":"brand","authentication":"enterprise","description":"Record the customer's explicit completion claim without treating it as verified.","parameters":{"type":"object","properties":{"brand_id":{"type":"string"},"work_item_id":{"type":"string"},"completion":{"type":"object"},"decision":{"type":"object"}},"required":["brand_id","work_item_id","completion","decision"]}},{"name":"verify_recommendation_now","audience":"brand","authentication":"enterprise","description":"Ask Optimly to verify a completed recommendation now.","parameters":{"type":"object","properties":{"brand_id":{"type":"string"},"work_item_id":{"type":"string"}},"required":["brand_id","work_item_id"]}},{"name":"submit_recommendation_implementation","audience":"brand","authentication":"enterprise","description":"Submit an implementation artifact for independent verification.","parameters":{"type":"object","properties":{"brand_id":{"type":"string"},"work_item_id":{"type":"string"},"expectedLifecycleVersion":{"type":"number"},"idempotencyKey":{"type":"string"}},"required":["brand_id","work_item_id","expectedLifecycleVersion","idempotencyKey"]}},{"name":"get_website_analytics_installation","audience":"brand","authentication":"enterprise","description":"Read the exact Optimly website analytics snippet, developer guide, verification state, and next action.","parameters":{"type":"object","properties":{"brand_id":{"type":"string"}},"required":["brand_id"]}},{"name":"get_website_analytics_installation_status","audience":"brand","authentication":"enterprise","description":"Re-check website analytics installation and activation readiness.","parameters":{"type":"object","properties":{"brand_id":{"type":"string"}},"required":["brand_id"]}},{"name":"prepare_website_analytics_installation","audience":"brand","authentication":"enterprise","description":"Prepare website analytics with an approved, exactly matching execution action.","parameters":{"type":"object","properties":{"brand_id":{"type":"string"},"action_id":{"type":"string"},"timezone":{"type":"string"}},"required":["brand_id","action_id","timezone"]}},{"name":"activate_website_analytics","audience":"brand","authentication":"enterprise","description":"Activate a verified website analytics installation with an approved execution action.","parameters":{"type":"object","properties":{"brand_id":{"type":"string"},"action_id":{"type":"string"},"site_id":{"type":"string"}},"required":["brand_id","action_id","site_id"]}},{"name":"create_execution_action","audience":"brand","authentication":"enterprise","description":"Create an immutable, payload-hashed action proposal for an explicitly selected brand.","parameters":{"type":"object","properties":{"brand_id":{"type":"string"},"source_type":{"type":"string"},"source_reference":{"type":"string"},"capability":{"type":"string"},"integration":{"type":"string"},"operation":{"type":"string"},"instruction":{"type":"string"},"sanitized_payload":{},"payload_preview":{"type":"string"},"risk_level":{"type":"string"},"approval_required":{"type":"boolean"},"idempotency_key":{"type":"string"}},"required":["brand_id","source_type","capability","integration","operation","instruction","sanitized_payload","payload_preview","risk_level","approval_required","idempotency_key"]}},{"name":"create_brand_vault_publish_action","audience":"brand","authentication":"enterprise","description":"Create a typed immutable approval proposal covering BrandVault text sections, structured competitors, sub-brands, and disambiguation.","parameters":{"type":"object","properties":{"brand_id":{"type":"string"},"payload":{"type":"object"},"instruction":{"type":"string"},"payload_preview":{"type":"string"},"risk_level":{"type":"string"},"idempotency_key":{"type":"string"}},"required":["brand_id","payload","instruction","payload_preview","risk_level","idempotency_key"]}},{"name":"request_action_approval","audience":"brand","authentication":"enterprise","description":"Request time-limited approval for one or more exact action payloads.","parameters":{"type":"object","properties":{"brand_id":{"type":"string"},"action_ids":{"type":"array","items":{"type":"string"}},"requested_from_contact_id":{"type":"string"}},"required":["brand_id","action_ids","requested_from_contact_id"]}},{"name":"record_approval_decision","audience":"brand","authentication":"enterprise","description":"Record an approver decision with collector source and external evidence; use collector_source=viktor for Viktor-mediated approval.","parameters":{"type":"object","properties":{"brand_id":{"type":"string"},"approval_id":{"type":"string"},"decided_by_contact_id":{"type":"string"},"decision":{"type":"string"},"collector_source":{"type":"string"},"evidence_ref":{"type":"string"},"evidence_hash":{"type":"string"},"reason":{"type":"string"},"external_actor":{"type":"object"}},"required":["brand_id","approval_id","decided_by_contact_id","decision","collector_source","evidence_ref","evidence_hash","reason"]}},{"name":"get_action_status","audience":"brand","authentication":"enterprise","description":"Read an action and its append-only execution history.","parameters":{"type":"object","properties":{"brand_id":{"type":"string"},"action_id":{"type":"string"}},"required":["brand_id","action_id"]}},{"name":"transition_execution_action","audience":"brand","authentication":"enterprise","description":"Record an authenticated action transition, including reconciliation or rollback.","parameters":{"type":"object","properties":{"brand_id":{"type":"string"},"action_id":{"type":"string"},"status":{"type":"string","enum":["started","succeeded","failed","needs_reconciliation","rolled_back"]}},"required":["brand_id","action_id","status"]}},{"name":"list_pending_approvals","audience":"brand","authentication":"enterprise","description":"List the selected brand's pending approval requests.","parameters":{"type":"object","properties":{"brand_id":{"type":"string"},"limit":{"type":"number"},"offset":{"type":"number"}},"required":["brand_id"]}},{"name":"check_action_idempotency","audience":"brand","authentication":"enterprise","description":"Check whether an operation and idempotency key already have a durable result.","parameters":{"type":"object","properties":{"brand_id":{"type":"string"},"operation":{"type":"string"},"idempotency_key":{"type":"string"}},"required":["brand_id","operation","idempotency_key"]}},{"name":"brand_vault_read","audience":"superadmin","authentication":"superadmin","description":"Read any brand's verified registry entry — all 15 ground truth sections. Superadmin only.","parameters":{"type":"object","properties":{"brand_slug":{"type":"string"},"brand_name":{"type":"string"}}}},{"name":"brand_audit","audience":"superadmin","authentication":"superadmin","description":"Run a Brand Authority Index audit on any brand, or fetch the latest. Tests AI model responses against the registry entry. Superadmin only.","parameters":{"type":"object","properties":{"brand_slug":{"type":"string"},"action":{"type":"string","enum":["run","latest"]},"models":{"type":"array","items":{"type":"string"}},"query_count":{"type":"number"}},"required":["brand_slug","action"]}},{"name":"fix_card_draft","audience":"superadmin","authentication":"superadmin","description":"Generate structured data for a brand fix card — registry entry, latest BAI audit, and top inaccuracies. Superadmin only.","parameters":{"type":"object","properties":{"brand_slug":{"type":"string"},"focus_areas":{"type":"array","items":{"type":"string"}}},"required":["brand_slug"]}},{"name":"brand_offsite_audit","audience":"superadmin","authentication":"superadmin","description":"Audit a brand's off-site AI footprint — review platforms, knowledge sources, and integration directories that AI models train on. Shows which third-party sources align with the brand's desired positioning. Superadmin only.","parameters":{"type":"object","properties":{"brand_slug":{"type":"string"},"sources":{"type":"array","items":{"type":"string"}}},"required":["brand_slug"]}},{"name":"scout_check_product","audience":"consumer","description":"Full product verification for shoppers — safety recalls (CPSC, FDA), ownership lookup, B Corp/cruelty-free certifications, Reddit sentiment, and a Shopper Fit Score. Returns a shareable verification card. Consumer/ShopperFit surface.","parameters":{"type":"object","properties":{"product_url":{"type":"string"},"postal_code":{"type":"string"}},"required":["product_url"]}},{"name":"scout_check_by_gtin","audience":"consumer","description":"Check a product by UPC/EAN barcode. Resolves the barcode and runs the full ShopperFit check. Consumer/ShopperFit surface.","parameters":{"type":"object","properties":{"gtin":{"type":"string","description":"12-digit UPC or 13-digit EAN"},"postal_code":{"type":"string"}},"required":["gtin"]}},{"name":"safe_product_check","audience":"consumer","description":"Product safety check — CPSC recalls, FDA enforcement, parent company, B Corp, cruelty-free certifications. Returns a check_id for chaining with other ShopperFit tools.","parameters":{"type":"object","properties":{"product_url":{"type":"string"},"postal_code":{"type":"string"}},"required":["product_url"]}},{"name":"scout_reviews","audience":"consumer","description":"Curated Reddit threads for a brand sourced from the Optimly Scout Reddit data layer. Includes signal_strength indicator.","parameters":{"type":"object","properties":{"query":{"type":"string","description":"Brand name"},"category_slug":{"type":"string"},"check_id":{"type":"string"}},"required":["query"]}},{"name":"scout_inventory_nearby","audience":"consumer","description":"Check if a product is in stock at retail stores near you (Best Buy, Target). Requires a US ZIP code.","parameters":{"type":"object","properties":{"query":{"type":"string"},"postal_code":{"type":"string"},"retailer":{"type":"string"}},"required":["query","postal_code"]}},{"name":"scout_checkout","audience":"consumer","description":"Create a Shopify cart for a product after verification. Returns checkout link or direct product link for non-Shopify stores.","parameters":{"type":"object","properties":{"product_url":{"type":"string"},"variant_id":{"type":"string"},"quantity":{"type":"number"},"postal_code":{"type":"string"}},"required":["product_url"]}},{"name":"scout_generate_card","audience":"consumer","description":"Finalize a ShopperFit card with the Shopper Fit Score. Stores the score and marks the card complete.","parameters":{"type":"object","properties":{"check_id":{"type":"string"},"fit_score":{"type":"number"},"fit_rationale":{"type":"string"}},"required":["check_id","fit_score","fit_rationale"]}},{"name":"scout_eu_safety_check","audience":"consumer","description":"Check the EU Safety Gate (RAPEX) for safety alerts on a brand or product. Covers 31 EU/EEA countries.","parameters":{"type":"object","properties":{"brand":{"type":"string"},"product_name":{"type":"string"},"product_category":{"type":"string"}},"required":["brand"]}},{"name":"scout_ingredients","audience":"consumer","description":"Check ingredient safety for cosmetics, personal care, food, and supplement products. Returns flagged ingredients, allergen warnings, NOVA classification, and a safety score. Personalizable against ShopperVault preferences.","parameters":{"type":"object","properties":{"brand":{"type":"string"},"product_name":{"type":"string"},"product_category":{"type":"string"},"gtin":{"type":"string"},"category_hint":{"type":"string","enum":["food","cosmetics","supplement","cleaning"]}},"required":["brand"]}}]}