Skip to main content
Glama

Faceabot Stores for AI agents

Server Details

Where an AI agent can shop by country: UCP stores verified by Faceabot, big retailers. Free.

Ownership verified
Status
Healthy
Last Tested
Transport
Streamable HTTP · MCP 2025-11-25
URL

TDQS

A3.5/5.0

Scored across 5 tools

Disambiguation4/5

Each tool has a reasonably distinct target: product/country lookup (find_store), per-domain record (store_details), category taxonomy (list_store_categories), agent identity publishing (get_agent_profile), and market research facts (ai_shopping_observatory). Minor overlap exists between find_store/list_store_categories (both store discovery-oriented) and between store_details and ai_shopping_observatory (both surfacing placement/policy facts), but the 'Use when' cues resolve most confusion.

Naming Consistency4/5

Three tools follow a clean verb_noun pattern (find_store, get_agent_profile, list_store_categories) in snake_case, but two deviate to bare noun phrases (store_details, ai_shopping_observatory), with the latter being notably long and marketing-flavored. The convention is readable and mostly predictable, just not uniform.

Tool Count5/5

Five tools is well-scoped for a read-only store directory plus agent-profile service; each tool maps to a distinct agent need (find, inspect, categorize, identify self, research). Nothing feels redundant or padded.

Completeness4/5

The surface covers the core loop: discover stores by product/country, get categories, drill into a store's MCP endpoint and robots rules, and register an agent profile. Gaps are minor — no name/brand-based store search, no way to report a bad or stale store record, and no listing of all verified stores beyond category counts, but agents can work around these via find_store.

Available Tools

5 tools
ai_shopping_observatoryThe AI shopping observatoryC
Read-onlyIdempotent
Inspect

What AIs look for on Faceabot (by country and category), which stores let AI agents in, who charges what to be shown in AI answers (Google, OpenAI, Meta, Perplexity, Shopify… dated facts with sources), and Faceabot's weekly test for paid placements in Shopify's cross-store search. Example: {}

NameRequiredDescriptionDefault
daysNo

TDQS

C2.8/5.0
Behavior3/5

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

Annotations already declare readOnlyHint=true, openWorldHint=true, idempotentHint=true, and destructiveHint=false, so safety is covered. The description adds useful context that facts are dated and sourced and that a weekly test exists, but it does not explain freshness handling, return format, or how the optional time window affects results.

Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.

Conciseness3/5

Is the description appropriately sized, front-loaded, and free of redundancy?

The description is a single dense sentence with multiple clauses plus an empty-object example. It is concise in length but not well structured, and the example adds little beyond indicating that no parameters are required.

Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.

Completeness2/5

Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?

With no output schema, the description should explain return shape or granularity, but it only lists topic areas. It also leaves the only parameter unexplained, so an agent knows the subject matter but not enough about what it will receive or how to scope it.

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

Parameters2/5

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

The sole parameter 'days' has 0% schema description coverage and is not mentioned in the description at all. Its default and range are visible in the schema, but the description does not explain what the time window controls or how it applies to the weekly test or dated facts.

Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.

Purpose4/5

Does the description clearly state what the tool does and how it differs from similar tools?

The description specifies the data domain clearly: AI shopping observations by country/category, agent access by stores, paid-placement pricing, and a weekly Shopify test. It is more specific than the title and distinguishes this from store-lookup siblings, though it lacks an explicit verb like 'returns' or 'reports'.

Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.

Usage Guidelines2/5

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

There is no explicit guidance on when to use this tool versus find_store, get_agent_profile, list_store_categories, or store_details. The content implies it is for aggregate observatory data, but no alternatives, prerequisites, or exclusions are stated.

Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.

find_storeFind a store where an AI agent can shopA
Read-onlyIdempotent
Inspect

Where can I (an AI agent) shop for this product, for my human's country? Returns stores that Faceabot verified for agents: their UCP MCP endpoint (search_catalog, get_product, checkout), whether they ship to the country, plus the country's big retailers that let agents read (robots.txt) and the Shopify cross-store search. Any language. Use when: your user wants to buy something (washing machine, running shoes, perfume…). Example: {"query":"washing machine","country":"BE"}

NameRequiredDescriptionDefault
limitNo
queryYesProduct or need in any language, e.g. washing machine, lave-linge, 洗濯機
countryNoYour human's country (ISO code or name), e.g. BE, Japan
categoryNoOptional category id (see list_store_categories)
agent_checkout_onlyNotrue = only stores declaring agent checkout

TDQS

A4.2/5.0
Behavior4/5

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

Annotations already declare the tool as read-only, open-world, idempotent, and non-destructive. The description adds useful behavioral context beyond that: it explains that results include verified agent endpoints, shipping eligibility, robots.txt-readable retailers, and Shopify cross-store search, which helps the agent understand the shape and nature of the response.

Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.

Conciseness5/5

Is the description appropriately sized, front-loaded, and free of redundancy?

The description is front-loaded with the core question and answer, followed by a clear 'Use when' cue and a compact example. Every sentence adds value without repeating structured data unnecessarily.

Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.

Completeness4/5

Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?

No output schema exists, so the description appropriately explains what the tool returns. It covers the main query and country parameters and the behavioral context, though it leaves minor parameters like limit and agent_checkout_only to the schema.

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

Parameters3/5

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

Schema coverage is 80%, so the schema already documents most parameters. The description reinforces the meaning of 'query' and 'country' ('for my human's country', 'Any language') but does not add syntax or context for limit, category, or agent_checkout_only beyond what the schema provides.

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?

The description states a specific verb and resource ('Where can I shop for this product') and goes further to specify what is returned: agent-verified stores, UCP MCP endpoints, shipping eligibility, and big retailers readable by agents. This scope is clearly distinguishable from sibling tools like store_details and list_store_categories.

Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.

Usage Guidelines4/5

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

It gives a direct 'Use when' cue ('your user wants to buy something') and a concrete example with query and country. However, it does not explicitly name alternatives or exclusions, such as when to use list_store_categories or store_details instead.

Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.

get_agent_profileGet a UCP agent profile URL hosted by Faceabot (browse only)A
Idempotent
Inspect

UCP stores (Shopify and others) ask every agent for meta['ucp-agent'].profile: the https URL of a JSON file describing it. No website to publish one? Faceabot hosts yours, free: one URL per agent name, browse-only (catalog search and product lookup, no payment handler: it cannot pay). Same name = same URL. Faceabot never sees your searches. Example: {"agent_name":"Travel helper by Acme"}

NameRequiredDescriptionDefault
agent_nameYesYour agent's name (2-80 characters), ideally with its maker, e.g. "Travel helper by Acme"

TDQS

A4/5.0
Behavior4/5

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

The description adds substantial context beyond annotations: free hosting, one URL per agent name, browse-only capabilities, no payment handler, idempotent name-to-URL mapping, and search privacy. However, with readOnlyHint=false, it could more explicitly state whether calling the tool registers or creates a profile entry rather than merely retrieving one.

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?

The description is information-dense and every sentence contributes context, but it is somewhat conversational and leads with background rather than the action. It could be tightened and front-loaded while preserving the useful constraints.

Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.

Completeness4/5

Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?

For a one-parameter tool with no output schema, the description gives enough context to understand the result (a hosted profile URL) and its limitations. The main remaining gap is not clarifying the write/registration side effect implied by readOnlyHint=false.

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%, so the parameter is already documented. The description still adds useful semantics by explaining the stable 'same name = same URL' mapping and providing a concrete agent_name example.

Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.

Purpose4/5

Does the description clearly state what the tool does and how it differs from similar tools?

The description clearly states that the tool obtains a UCP agent profile URL hosted by Faceabot, with a specific verb and resource. It does not explicitly differentiate from sibling tools, but those siblings serve unrelated shopping/store lookup purposes, so the core purpose is still clear.

Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.

Usage Guidelines4/5

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

It explains the triggering context: UCP stores ask for a meta['ucp-agent'].profile URL, and Faceabot can host one when the agent has no website. It also gives a key limitation ('browse-only ... cannot pay') but does not explicitly frame alternatives or when-not-to-use in a structured way.

Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.

list_store_categoriesStore categoriesA
Read-onlyIdempotent
Inspect

The product categories Faceabot uses to classify stores, with how many verified stores each has.

NameRequiredDescriptionDefault

No parameters

TDQS

A3.5/5.0
Behavior3/5

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

Annotations already declare read-only, idempotent, non-destructive, and open-world behavior, so the safety profile is covered. The description adds a useful behavioral detail by saying counts are for verified stores, but it says nothing about ordering, pagination, or freshness.

Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.

Conciseness5/5

Is the description appropriately sized, front-loaded, and free of redundancy?

It is a single front-loaded sentence with no filler or repetition. Every phrase contributes to identifying the returned resource and its associated count.

Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.

Completeness4/5

Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?

For a zero-parameter read-only tool with no output schema, the description conveys the returned resource and that the counts are verified-store counts. It stops short of specifying output shape or ordering, but is largely adequate for correct invocation.

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 tool has zero parameters, so the baseline is 4. There are no parameter semantics to clarify, and the description does not need to compensate for schema gaps.

Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.

Purpose4/5

Does the description clearly state what the tool does and how it differs from similar tools?

The description identifies the resource (product categories used to classify stores) and the accompanying metric (verified store count per category). It lacks an explicit verb such as 'lists' and does not name a sibling, but the resource is clearly distinct from find_store and store_details.

Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.

Usage Guidelines2/5

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

There is no explicit when-to-use or when-not-to-use guidance and no alternatives are named. The content implies it is for category taxonomy or count lookups, but an agent must infer that from the noun phrase.

Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.

store_detailsWhat Faceabot measured on one storeC
Read-onlyIdempotent
Inspect

One store's record: UCP version and MCP endpoint, capabilities, tools listed, countries it ships to, robots.txt rules for agents, last checks, and the exact search_catalog call. Example: {"domain":"allbirds.com","country":"US"}

NameRequiredDescriptionDefault
queryNoOptional product words for the call template
domainYesStore domain, e.g. allbirds.com
countryNoOptional: your human's country, to check shipping

TDQS

C2.9/5.0
Behavior3/5

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

Annotations already declare readOnlyHint=true, openWorldHint=true, idempotentHint=true, and destructiveHint=false, so the safety profile is clear. The description adds useful output context by enumerating the fields returned (e.g., UCP version, MCP endpoint, capabilities), but it does not disclose behavioral traits beyond what annotations provide, such as rate limits or data freshness.

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?

The description is two sentences: a list of fields and an example. It is front-loaded with the subject ('One store's record') and contains no extraneous information, though the field list could be slightly more clearly framed as output.

Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.

Completeness3/5

Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?

With no output schema, the description must convey what is returned. It lists many fields, which is helpful, but it does not explain what these fields mean or how they should be interpreted. It also lacks guidance on usage or limitations, leaving the agent with a partially complete picture for this read-only tool.

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

Parameters3/5

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

Schema coverage is 100%, so the schema already documents all three parameters. The description includes an example input object that shows domain and country, but it does not elaborate on the purpose of the optional 'query' parameter or add meaning beyond the schema descriptions.

Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.

Purpose3/5

Does the description clearly state what the tool does and how it differs from similar tools?

The description begins with 'One store's record:' and then lists several data fields, which hints at a retrieval tool. However, it lacks a clear action verb like 'retrieve' or 'fetch' and does not explicitly differentiate itself from sibling tools like find_store or list_store_categories.

Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.

Usage Guidelines2/5

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

There is no guidance on when to use this tool versus alternatives. It does not mention any conditions, exclusions, or references to sibling tools, leaving the agent to infer usage from the name and schema alone.

Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.

Tool Schema Changelog

Recent tool additions, removals, and schema changes observed during successful MCP inspections.

  1. 5 tool updates
    • First observedai_shopping_observatory
    • First observedfind_store
    • First observedget_agent_profile
    • First observedlist_store_categories
    • First observedstore_details

Related MCP Connectors

Related MCP Servers

Try in Browser

Glama MCP Gateway

Add one secure layer between your agents and this server.

Resources