Skip to main content
Glama
denya

Glovo Claude Skill

by denya

Glovo Skill and MCP

Open Claude and Codex integration for personalized live Glovo suggestions, saved delivery locations, stores, products and modifiers, authenticated order analysis, repeat planning, and real basket preparation. It has no checkout, payment, delivery-slot booking, or order-placement tool. Browser use is limited to explicit session bootstrap; every suggestion, location, catalog, history, research, repeat-plan, and basket operation uses Glovo HTTP APIs through MCP.

Install in Claude Code

Requires current Claude Code, Node.js 18 or newer, and Google Chrome only if interactive login is needed.

claude plugin marketplace add denya/glovo-skill
claude plugin install glovo@denya-glovo

Reload Claude Code and inspect /mcp for glovo. The explicit glovo_login tool may open a dedicated Chrome login window for session bootstrap. Once saved, normal operations use the direct API. Claude Code stores session state at ${CLAUDE_PLUGIN_DATA}/session.json with a 0700 parent directory and 0600 file.

Optional Google Maps quality evidence is configured after installation through /plugin -> Installed -> Glovo -> Configure. Leave it blank to use the complete personalized and Glovo-only path.

Related MCP server: mcp-telepizza

Install in Claude Desktop

Download Glovo v0.2.1 for Claude Desktop (.mcpb)

Release notes and checksum

SHA256: 1fa8c7b5b01fb5ff53ae5dcdfa21547941415378f17bb7c17d3362b8114102c3

  1. Download glovo-skill-0.2.1.mcpb.

  2. Open Claude Desktop on macOS.

  3. Go to Settings -> Extensions -> Advanced settings -> Install Extension....

  4. Select the MCPB and approve installation.

  5. Optionally enter a restricted Google Maps Platform key when prompted.

  6. Ask Claude to check Glovo authorization or make a read-only suggestion.

The Desktop package uses the same bundled dist/server.mjs runtime. It stores Glovo session state in ~/.glovo/session.json, not in the bundle. To reproduce the package from source:

git clone https://github.com/denya/glovo-skill.git
cd glovo-skill
npm ci
npm run build
npm run validate:mcpb
npm run pack:mcpb

Install in Codex

Codex uses the same local stdio MCP runtime and skill instructions:

git clone https://github.com/denya/glovo-skill.git ~/.local/share/glovo-skill
cd ~/.local/share/glovo-skill
npm ci
npm run build
codex mcp add glovo \
  --env GLOVO_SESSION_PATH="$HOME/.glovo/session.json" \
  -- node "$PWD/dist/server.mjs"
mkdir -p "${CODEX_HOME:-$HOME/.codex}/skills/glovo"
cp skills/glovo/SKILL.md "${CODEX_HOME:-$HOME/.codex}/skills/glovo/SKILL.md"

Restart Codex, then ask it to use Glovo. Optional Google enrichment can be added by registering GOOGLE_MAPS_API_KEY as another MCP environment value; do not put the key in the repository or a shared script.

What You Can Ask

  • "Pizza again: give me three live choices based on places I actually ordered from."

  • "Try a new pizza from a high-quality place, with Google evidence if configured."

  • "Use a favorite restaurant but suggest a different current item."

  • "Show why each choice was selected, the history coverage, current price, availability, and required options."

  • "Show my saved delivery locations and whether the current Glovo location matches one."

  • "Find open supermarkets near the selected location and compare delivery minimums."

  • "Browse a pharmacy or retail shop by category and show exact current sizes or packs without inventing variants."

  • "Read my full order history and separate card-level venue statistics from detail-backed product statistics."

  • "Resolve my previous order against the current catalog without changing the basket."

  • "After I approve the exact product and modifiers, prepare the basket for my review."

glovo_get_suggestions accepts repeat, explore, or balanced intent and returns 3-5 labeled live choices. It never mutates the basket. The agent must use the separate product/options tools and obtain explicit approval before any basket change.

Suggestions keep an account-scoped private order-card cache beside the session file. Every request still refreshes Glovo from offset=0 and follows exact cursors until it overlaps a known order; live stores, prices, availability, options, and all Google evidence remain uncached. Responses report cache mode, pages fetched, prior full-walk coverage, refresh time, and stale:false. Set history_refresh=full to force cursor exhaustion.

Recommendation Evidence

Venue ranking uses all completed order cards and the validation-selected 5/20/80-event multi-scale recency model. On the untouched 137-order final window it achieved Precision@5 0.083, Recall@5 0.416, and NDCG@5 0.271; the popularity baseline reached Recall@5 0.204 and NDCG@5 0.160. Selection used a contiguous 70/15/15 chronological split and the simplest model within one validation standard error.

This is holdout-supported evidence, not a claim of scientific proof. Product learning is deliberately disabled: only 15 orders had successful detail enrichment, which is insufficient for a defensible learned item model. Product choices therefore resolve against the current Glovo catalog, authenticated Easy Reorder, and Top Sellers, with required options re-fetched before presentation.

See the aggregate evaluation and reproduction protocol. Run it against the authenticated card history without writing raw orders:

npm run eval:venues

Optional Google Places

Google Places API (New) enriches only the final Glovo shortlist, normally at most five venues. Name and proximity must agree conservatively; ambiguous matches receive no Google attachment. Ratings use transparent Bayesian shrinkage with a 4.2 prior and weight 100 rather than raw averages. Google evidence is display-only and does not alter the backtested personalized rank.

Review text is fetched only when include_google_reviews=true, for at most three finalists. Responses preserve author attribution, review and Maps links, source notices, and Google's ordering caveat. The runtime does not persist ratings, reviews, or result payloads; it stores no Google data and uses an ephemeral request only.

No key is required. Without GOOGLE_MAPS_API_KEY, personalized Glovo suggestions still work and report that external quality evidence is unavailable. If enabling it:

Maps Grounding Lite can be installed separately for free-form place discovery, but it is not a dependency and does not replace the direct, bounded Places enrichment used here.

Test the Local MCP

git clone https://github.com/denya/glovo-skill.git
cd glovo-skill
npm ci
npm run verify
claude --plugin-dir "$(pwd)"

npm run verify uses an empty temporary session for the guest MCP smoke, never invokes login, and never opens or navigates a browser. After an explicit login, the sanitized authenticated read smoke is:

npm run test:mcp:auth

Tools

Tool

Purpose

Auth

glovo_auth_status / glovo_login

Check or explicitly bootstrap a saved session

Login only

glovo_get_location / glovo_set_location

Read or set local browsing-location headers

No

glovo_search_locations / glovo_select_location

Find and select a serviceable public location

No

glovo_get_saved_locations

Read saved delivery locations and current-match arguments

Yes

glovo_browse_stores / glovo_get_store / glovo_get_store_menu

Browse current restaurant, grocery, and retail stores and menus

No

glovo_browse_store_catalog

Follow an exact same-store menu content URI, with a truthful search fallback

Yes

glovo_get_suggestions

Produce personalized 3-5 current choices with optional Google evidence

Yes

glovo_get_store_recommendations / glovo_get_store_order_options

Read Easy Reorder, Top Sellers, fees, restrictions, and alternatives

Yes / No

glovo_search_store_items / glovo_get_product

Search current products and inspect required/optional modifiers

No

glovo_get_purchase_history / glovo_get_order_stats

Read cursor-correct card history and compact statistics

Yes

glovo_get_order_items / glovo_analyze_order_history

Inspect bounded detail-backed items, cadence, and coverage

Yes

glovo_preview_reorder / glovo_plan_reorder

Resolve a past order into current, reviewable candidates

Yes

glovo_get_basket

Read the current basket

Yes

glovo_add_to_basket / glovo_set_quantity / glovo_remove_from_basket

Mutate the real basket only after explicit approval

Yes

Capabilities and Boundaries

  • All suggestion, search, location, product, history, stats, repeat-plan, and basket behavior is direct API traffic. It does not drive, tap, or scrape Chrome.

  • History pagination starts at offset=0 and follows pagination.next.offset exactly. It never numerically increments a cursor.

  • Suggestions rank against a complete account-scoped order-card cache, refresh the newest cursor page on every call, and expose explicit freshness metadata. A forced full walk remains available. Product details remain a bounded, separately reported coverage layer.

  • Restaurant, grocery, and retail surfaces share Glovo's API family. Catalog nodes are followed only through validated same-store content URIs; nodes without product tiles return an item-search fallback. Retail size or pack variants are never synthesized when Glovo exposes them only as separate named products.

  • A previous purchase proves familiarity, not satisfaction. known_liked_only is used only when the user explicitly supplies that preference.

  • Exploration is separate from the backtested repeat model. Novel candidates use current Glovo availability and count-aware Glovo quality; optional Google data remains clearly labeled external evidence.

  • Every chosen product is re-fetched and must have add_enabled=true. Three product identifiers, the store category, and all required/optional modifier identities are preserved for later basket review.

  • glovo_plan_reorder is read-only. Glovo exposes an order-summary navigation token, but no safe native basket-only reorder endpoint was proven, so this project does not guess one.

  • Basket writes are real. Snapshot first, obtain explicit approval, verify each mutation, and restore on test failure.

  • No checkout, payment, delivery-slot booking, or order-placement API is included.

Verify a Checkout-Free Build

npm run verify

The gate builds the self-contained server, runs unit and contract tests, validates the Claude Code plugin and MCPB manifest, packs MCPB, runs guest MCP and isolated packaged-runtime smokes, audits dependencies, and scans for secrets and browser-boundary violations.

Reversible basket E2E remains separately dual-gated and is not run by release verification:

GLOVO_E2E_MUTATE=1 npm run live:e2e:mutate

MIT licensed. Independent project; not affiliated with, endorsed by, or sponsored by Glovo or Google.

Available Tools

23 tools
glovo_add_to_basketAdd to basketB

Add a product to the real Glovo basket. Do not call unless the user explicitly asks for a real basket change.

ParametersJSON Schema
NameRequiredDescriptionDefault
quantityNo
store_idYes
product_idYes
external_idNo
selected_optionsNoSelected modifier options. Use option_group ids from glovo_get_product.
store_address_idYes
store_product_idNo
validate_optionsNoFetch product details and validate required/optional modifiers before adding. Default true when selected_options are supplied.
store_category_idNo

TDQS

B3.3/5.0
Behavior2/5

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

No annotations are provided, so the description carries full burden. It does not disclose side effects, auth requirements, or state changes beyond stating it adds to a real basket.

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?

Two sentences, front-loaded with the action and a clear usage condition. No wasted words or unnecessary detail.

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 9 parameters, no output schema, and no annotations, the description is too minimal. It omits important context like prerequisites, error handling, and what happens to the basket after adding.

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

Parameters1/5

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

Schema description coverage is only 22%, and the tool description does not explain any parameters. It adds no value beyond the minimal schema, leaving most parameters ambiguous.

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?

Clearly states 'Add a product to the real Glovo basket' with specific verb and resource. Distinguishes from sibling tools like glovo_remove_from_basket and glovo_set_quantity.

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?

Explicitly instructs to call only when user explicitly asks for a real basket change, providing a clear usage condition. However, lacks guidance on when not to use it or comparisons to alternatives.

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

glovo_analyze_order_historyAnalyze order historyA

Walk cursor-correct history, enrich a bounded recent subset with order details, and calculate truthful product frequency, cadence, customization, and visible-spend statistics with explicit coverage.

ParametersJSON Schema
NameRequiredDescriptionDefault
max_pagesNoOmit for full cursor discovery.
detail_limitNoRecent order details to enrich. Default 10; stops on detail rate limit.
page_delay_msNoDefault 750.
detail_delay_msNoDefault 1000.

TDQS

A3.6/5.0
Behavior3/5

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

No annotations are provided, so the description must cover behavioral traits. It mentions 'enrich a bounded recent subset' and 'explicit coverage,' hinting at limits and what is included, but does not specify whether the tool is read-only, if it modifies data, or any side effects. It adequately describes the process but lacks depth on safety or idempotence.

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 a single sentence that packs substantial information without unnecessary words. It is front-loaded with the main action. However, it could be slightly restructured for readability, but overall it is concise.

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?

The tool has no output schema, so the description should explain return values. It mentions calculating 'product frequency, cadence, customization, and visible-spend statistics,' giving an idea of the output, but not its structure or format. With 4 optional parameters, the description covers the process but lacks full completeness on output and prerequisites.

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 description coverage is 100%, so the baseline is 3. The description adds contextual meaning like 'bounded recent subset' which relates to detail_limit, but the schema already explains each parameter's purpose and defaults. The description does not significantly enhance understanding beyond the schema.

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 action: walking cursor-correct history, enriching a bounded recent subset, and calculating various statistics. It clearly distinguishes from sibling tools like glovo_get_purchase_history, glovo_get_order_items, and glovo_get_order_stats by offering an aggregated analysis rather than raw data retrieval.

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

Usage Guidelines3/5

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

The description implies when to use the tool (for aggregated statistics) but does not explicitly mention when not to use it or suggest alternatives. It could be improved by stating that for raw history or individual order details, other sibling tools should be used.

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

glovo_auth_statusAuth statusA

Check whether a Glovo session is available and whether the access token is currently valid.

ParametersJSON Schema
NameRequiredDescriptionDefault

No parameters

TDQS

A4.1/5.0
Behavior4/5

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

The description indicates a read-only operation checking state, which is transparent. However, it does not explicitly state that it has no side effects or requires no permissions, which would be helpful.

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?

Single sentence, front-loaded with the action and resource. No superfluous information.

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?

For a simple status check tool with no parameters and no output schema, the description is adequate but lacks details about the return value format (e.g., boolean or object). Some ambiguity remains.

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?

There are no parameters, so the description does not need to add semantic information. The schema coverage is 100% trivially, and the description adds no redundant param info.

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 clearly states the verb 'Check' and the resources 'session availability' and 'access token validity'. It distinguishes itself from sibling tools like 'glovo_login' which creates a session.

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

Usage Guidelines3/5

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

The description implies usage for verifying authentication status but does not explicitly state when to use it (e.g., before other operations) or mention alternatives. No when-not-to-use guidance.

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

glovo_browse_storesBrowse storesA

Browse live Glovo stores for the configured location. category_id 1 = restaurants, 4 = groceries, and 3 = pharmacy/beauty retail.

ParametersJSON Schema
NameRequiredDescriptionDefault
limitNoPage size. Default 24, max 50.
offsetNoPagination offset. Default 0.
category_idNoGlovo category id. Default 4 (groceries); use 1 for food.
previous_store_idsNoStore ids already returned, for pagination.

TDQS

A3.5/5.0
Behavior2/5

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

No annotations provided, so description carries burden. Implies non-destructive read operation ('browse live stores'), but lacks details on authentication requirements, rate limits, or pagination behavior beyond parameter names. No mention of whether it returns full store list or paginated results.

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?

Two sentences: first states main action and resource, second provides critical category_id details. No unnecessary words, front-loaded with purpose.

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?

Given no output schema and no annotations, the description omits expected return format (e.g., list of stores with fields) and pagination details. Does not mention that a location must be configured. Adequate for a simple browse, but could be more thorough.

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% with descriptions for all parameters. Description adds value by enumerating specific category_id mappings (1,3,4) beyond the schema's 'Default 4 (groceries); use 1 for food.' This helps agent select correct category.

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?

Clearly states 'Browse live Glovo stores for the configured location' with specific verb and resource. Provides category_id mappings (1=restaurants, 4=groceries, 3=pharmacy/beauty) that distinguish it from sibling tools like glovo_search_store_items.

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?

No explicit guidance on when to use this tool vs. siblings like glovo_search_store_items or glovo_get_store_order_options. Does not mention prerequisites such as setting a location first via glovo_set_location.

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

glovo_get_basketGet basketA

Read the current authenticated Glovo basket. If store_id is provided, read that store basket.

ParametersJSON Schema
NameRequiredDescriptionDefault
store_idNo

TDQS

A3.9/5.0
Behavior3/5

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

No annotations are provided, so description carries full burden. It discloses read-only behavior and mentions authentication context ('authenticated Glovo basket'), but does not detail response format, error conditions, or side effects.

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?

Two sentences, zero wasted words. The core action is front-loaded in the first sentence, and the conditional variation is efficiently stated in the second.

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?

For a simple read tool with one optional parameter, the description is adequate but incomplete: it lacks details about the response (basket contents, status) and does not mention error conditions (e.g., authentication failure, missing basket).

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 optional store_id parameter is explained: if provided, it reads a different store's basket. Schema coverage is 0%, so description adds crucial meaning beyond type constraints.

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?

Description clearly states it reads the current Glovo basket, with a conditional variant for a store-specific basket. The verb 'read' and resource 'basket' are specific, and it distinguishes from mutation siblings like glovo_add_to_basket.

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

Usage Guidelines3/5

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

Description implies use for reading basket state, but does not explicitly advise when to use this versus alternative tools such as glovo_add_to_basket or glovo_remove_from_basket. No usage exclusions or prerequisites are stated.

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

glovo_get_locationGet locationA

Read the current Glovo browsing location headers. Does not mutate baskets.

ParametersJSON Schema
NameRequiredDescriptionDefault

No parameters

TDQS

A3.7/5.0
Behavior3/5

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

No annotations provided, so description carries full burden. It clearly states it's read-only and does not mutate, but does not explain what the headers are or what the return format looks like.

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?

Two concise sentences that directly state purpose and safety, with no filler.

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?

For a 0-parameter tool with no output schema, the description tells the purpose and safety but lacks any description of the return value or structure, leaving the agent uncertain about what to expect.

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?

No parameters, so schema coverage is 100%. Baseline 4 applies; description adds no parameter info because none exist.

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?

Explicitly states the verb 'Read' and the resource 'current Glovo browsing location headers' and distinguishes from mutation tools by noting it does not mutate baskets.

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?

Provides no guidance on when to use this tool versus alternatives like other getters or location tools. The only hint is the non-mutating behavior, but no explicit when-to-use or when-not-to-use.

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

glovo_get_order_itemsOrder itemsB

Read details/items for one past Glovo order.

ParametersJSON Schema
NameRequiredDescriptionDefault
order_idYesOrder id from glovo_get_purchase_history.

TDQS

B3.4/5.0
Behavior3/5

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

The description indicates a read-only operation ('Read'), which is appropriate. With no annotations, the description alone discloses no mutation, but does not mention authentication requirements, rate limits, or behavior for invalid order IDs.

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 a single, concise sentence with no superfluous words. It directly conveys the tool's function and is front-loaded.

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?

Given the tool's simplicity (one parameter, no output schema), the description covers the essential purpose. However, it does not describe the format or structure of the returned items, which would aid the agent in handling the response.

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 input schema covers the single parameter with 100% coverage. The description adds valuable context by specifying that the order_id comes from glovo_get_purchase_history, linking the tools and providing source guidance.

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 the action ('Read') and resource ('details/items for one past Glovo order'), making the purpose unambiguous. However, it does not differentiate from related tools like glovo_get_order_stats, which also concern order 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?

No explicit guidance on when to use this tool versus alternatives such as glovo_get_purchase_history or glovo_get_basket. The description implies use for retrieving items of a specific past order, but does not advise on exclusions or context.

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

glovo_get_order_statsOrder statisticsB

Walk full order-history cursor pagination and return compact card-only statistics. Detail enrichment is intentionally separate.

ParametersJSON Schema
NameRequiredDescriptionDefault
max_pagesNo
page_delay_msNo

TDQS

B3.3/5.0
Behavior2/5

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

With no annotations provided, the description must fully disclose behavioral traits. It mentions cursor pagination and compact statistics but omits critical details such as the read-only nature, rate limits, handling of pagination responses, or what happens with large histories. This is insufficient for an agent to anticipate side effects or constraints.

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 extremely concise at two sentences with no redundant information. The first sentence front-loads the core action and result, making it efficient for quick comprehension.

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?

Given the tool involves pagination and statistics, the description lacks output schema guidance, parameter explanations, and behavioral details. It does not specify the format or structure of the returned statistics, leaving the agent uncertain about the output. Without annotations or additional context, it is incomplete for safe and correct invocation.

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

Parameters1/5

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

Schema coverage is 0% and the description does not explain the parameters 'max_pages' or 'page_delay_ms'. An agent cannot infer what values to use (e.g., page_delay_ms in milliseconds? how max_pages affects results?) from the description alone, leaving a critical gap.

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 'Walk full order-history cursor pagination and return compact card-only statistics' clearly identifies the action (paginate and return statistics), the resource (order history), and the output type (compact card-only statistics). It distinguishes from siblings like glovo_get_order_items which provide detail enrichment.

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?

The description explicitly states that 'Detail enrichment is intentionally separate,' guiding users to use other tools for detailed item information. However, it does not list alternative tool names or specify when not to use this tool beyond that hint.

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

glovo_get_productGet productB

Get product details from a store. Use product ids returned by glovo_search_store_items.

ParametersJSON Schema
NameRequiredDescriptionDefault
quantityNo
store_idYes
product_idYes
category_idNo
external_idNo
store_address_idYes

TDQS

B3/5.0
Behavior2/5

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

No annotations present. The description only states the basic action without disclosing any behavioral traits such as output format, authentication requirements, or side effects.

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 very concise but lacks necessary structure for a tool with multiple parameters; it under-specifies important details.

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

Completeness1/5

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

With no output schema and no annotations, the description fails to provide sufficient context for an agent to correctly use the tool, especially regarding parameter usage and expected return data.

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

Parameters1/5

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

Schema coverage is 0%, and the description adds no information about the six parameters, leaving their purpose unclear 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?

Description clearly states the action ('Get product details') and resource ('from a store'), and distinguishes from sibling tools like glovo_search_store_items by specifying the input source.

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?

Provides clear context for use: product ids from glovo_search_store_items. No explicit when-not-to-use, but the prerequisite is well indicated.

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

glovo_get_purchase_historyPurchase historyA

Read authenticated Glovo order history. Pagination is cursor-based: start with offset 0, then pass the returned next_offset value.

ParametersJSON Schema
NameRequiredDescriptionDefault
limitNoDefault 15; Glovo currently caps order-history pages at 15.
offsetNoOrder-id cursor. Default 0; use the returned next_offset for the next page.

TDQS

A4/5.0
Behavior3/5

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

Discloses pagination behavior and read-only nature, but with no annotations, the description carries full burden. Lacks details on authentication requirements, rate limits, or error handling.

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?

Two concise sentences: first defines purpose, second explains pagination. No redundant information; every sentence serves a clear function.

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?

Adequately covers pagination mechanics, which is the main complexity. However, with no output schema and no annotations, the description could mention return format or prerequisites like authentication. Still, it is largely complete for a read-only tool with two well-documented params.

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 has 100% coverage with descriptions. The description adds the usage pattern 'start with offset 0, then pass the returned next_offset', but this is mostly a clarification of existing schema info. No significant additional meaning beyond schema.

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?

Clearly states 'Read authenticated Glovo order history' – a specific verb (Read) and resource (order history). Distinguishes from siblings like glovo_get_order_items and glovo_get_order_stats.

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?

Explains cursor-based pagination with offset and next_offset, providing clear usage context. However, no explicit guidance on when to use this tool vs. siblings or when not to use it.

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

glovo_get_saved_locationsGet saved delivery locationsA

Read authenticated saved Glovo delivery locations and identify the current saved-location match. Read-only; does not change location headers or baskets.

ParametersJSON Schema
NameRequiredDescriptionDefault
match_textNoOptional private address text to match against saved locations. Not persisted.

TDQS

A4.2/5.0
Behavior4/5

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

Given no annotations, description adequately discloses read-only nature and lack of side effects ('does not change location headers or baskets'). Could mention authentication requirements or rate limits, but still clear.

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?

Two sentences, no redundant words, front-loaded with main action first. Highly efficient.

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?

Covers core behavior and read-only guarantee. Lacks output structure description, but tool is simple and no output schema exists. Adequate for its purpose.

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?

Parameter `match_text` is fully described in the schema (100% coverage). Description adds 'identify the current saved-location match' but does not significantly augment schema details. Baseline 3 is appropriate.

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?

Description clearly states the verb 'Read' and resource 'authenticated saved Glovo delivery locations', adding nuance about identifying matches. It distinguishes from sibling tools like glovo_set_location by emphasizing read-only behavior and no side effects.

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?

Implicitly indicates usage for reading saved locations or finding a match, and states it is read-only. However, it does not explicitly compare to siblings like glovo_get_location, which might also read location data.

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

glovo_get_shopping_guideShopping guideA

Return the Glovo shopping playbook and safety rules. Call this before changing a basket.

ParametersJSON Schema
NameRequiredDescriptionDefault

No parameters

TDQS

A4.5/5.0
Behavior4/5

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

No annotations provided; description states it returns a playbook and safety rules. Adequately implies no side effects, but lacks details on return format or whether it requires auth. Acceptable for a no-parameter tool.

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?

Single sentence, front-loaded with purpose, then usage instruction. Every word earns its place with zero waste.

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?

Despite no output schema, the description fully captures what the tool does and when to use it. No further details are necessary given the tool's simplicity.

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?

No parameters exist, so schema coverage is complete. Baseline of 4 applies as no param information is needed.

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?

Clearly states it returns 'Glovo shopping playbook and safety rules' and specifies to call before modifying basket. Distinct from sibling tools that perform actions like add_to_basket or remove_from_basket.

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?

Explicitly instructs 'Call this before changing a basket,' providing clear when-to-use context. Does not cover when not to use, but the guidance is sufficient for this simple read-only tool.

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

glovo_get_store_order_optionsStore order optionsA

Read delivery minimums, surcharges, restrictions, public store information, and similar stores before preparing a basket. No checkout or order placement.

ParametersJSON Schema
NameRequiredDescriptionDefault
store_idYes
translationNoStore information language. Default en.
similar_limitNoDefault 5.
store_address_idYes

TDQS

A3.8/5.0
Behavior3/5

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

No annotations are provided, so the description carries the full burden. It clearly labels the operation as read-only by using 'Read' and stating 'No checkout or order placement'. It lists the data returned but does not disclose permissions, rate limits, or side effects, though for a read-only tool this is minimally acceptable.

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 two sentences long, front-loads the key purpose, and contains no redundant words. Every sentence earns its place.

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 four parameters, no output schema, and no annotations, the description provides a high-level understanding but lacks guidance on how to use specific parameters (e.g., translation language, similar_limit). It is minimally complete for an agent to infer behavior but leaves gaps.

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?

Schema description coverage is 50% (only 'translation' and 'similar_limit' have schema descriptions). The tool description does not add any parameter-specific information beyond the schema, failing to compensate for the missing schema descriptions of 'store_id' and 'store_address_id'.

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 clearly states the verb 'Read' and the resource 'store order options', listing specific elements like delivery minimums, surcharges, restrictions, public store info, and similar stores. It also distinguishes itself from siblings by noting it is a pre-basket read operation, not checkout or order placement.

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?

The description explicitly states 'before preparing a basket' (when to use) and 'No checkout or order placement' (when not to use). However, it does not name specific alternative tools for comparison, but the context is clear enough for an agent to decide.

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

glovo_get_suggestionsPersonalized live suggestionsA

Turn structured repeat, explore, or balanced food intent into 3-5 read-only live Glovo choices. Uses full card-level venue history, re-fetches current products/options, and can attach optional Google Maps quality evidence. Never changes the basket.

ParametersJSON Schema
NameRequiredDescriptionDefault
modeNoRepeat familiar venues, explore new venues, or mix both. Default balanced.
queryYesFood or product keywords, for example pizza, sushi, or burger.
item_modeNoPrefer Easy Reorder items, different items at a familiar venue, or any matching live item.
max_choicesNoReturn 3-5 choices. Default 5; fewer may be returned when current products are unavailable.
venue_queryNoOptional venue name constraint, for example a favorite restaurant.
history_refreshNoIncrementally refresh the newest order page by default, or force a complete cursor walk.
known_liked_onlyNoApply only when the user explicitly says a venue is liked; historical purchase alone does not prove satisfaction.
novelty_toleranceNoExploration share for balanced intent. Default 0.4.
quality_preferenceNoEvidence preference. Google remains display-only because it is not part of the backtested personalized model.
include_google_qualityNoRequest optional Google Places quality evidence for the final shortlist. Requires configured GOOGLE_MAPS_API_KEY.
include_google_reviewsNoExplicitly request Google review text for at most the first three matched finalists. May increase Places billing; preserves author/source attribution.

TDQS

A3.9/5.0
Behavior4/5

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

The description explicitly states 'Never changes the basket' and 'read-only', which are key behavioral traits. It also mentions re-fetching current products and optional Google Maps evidence. With no annotations provided, this description covers essential behavioral aspects but lacks details on authentication or rate limits.

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 two sentences, front-loaded with the core purpose, and every word adds value. No redundancy or wasted text.

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 11 parameters and no output schema, the description covers the main behavior but does not explain the structure of the returned choices (e.g., whether they include venue names, product details, pricing). This omission means the agent lacks full context on what the tool returns.

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 baseline is 3. The description adds little beyond the schema; it mentions 'repeat, explore, or balanced food intent' which maps to the 'mode' parameter, but does not elaborate on other parameters. The schema itself provides adequate descriptions.

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 clearly states the tool converts structured food intent (repeat/explore/balanced) into 3-5 read-only live choices, using venue history and re-fetching products. It distinguishes itself from siblings by focusing on personalized suggestions based on intent, not browsing or analysis.

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

Usage Guidelines3/5

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

The description implies usage when a food intent is known (repeat/explore/balanced), but it does not explicitly compare to sibling tools like glovo_browse_stores, glovo_search_store_items, or glovo_analyze_order_history, leaving the agent without clear guidance on when to choose this tool over alternatives.

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

glovo_loginLog in to GlovoA

Open Chrome for Glovo sign-in and save the local session for order history and basket tools.

ParametersJSON Schema
NameRequiredDescriptionDefault
timeout_msNoMaximum login wait. Defaults to five minutes; test harnesses may use a short timeout.

TDQS

A4/5.0
Behavior3/5

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

No annotations are provided, so the description carries full burden. It discloses that Chrome is opened and a local session is saved, but lacks details on side effects (e.g., user interaction required, browser state modification, timeout behavior, or re-login implications).

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 a single, front-loaded sentence that efficiently conveys the action and purpose. No redundant or extraneous content.

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?

Given the simple input schema (one optional integer) and no output schema, the description adequately explains the tool's role for subsequent tools. However, it could be enhanced by noting that it requires a browser environment and may involve manual login steps.

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%, with a clear description for the single parameter (timeout_ms). The tool description adds no parameter information, but baseline is 3 when schema coverage is high. Thus score is adequate.

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 clearly states the action ('Open Chrome for Glovo sign-in') and the purpose ('save the local session for order history and basket tools'). It distinguishes the tool from siblings by indicating it is a prerequisite for other tools like basket and history.

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?

The description implies usage as the first step for other tools by mentioning 'save the local session for order history and basket tools.' However, it does not explicitly state when not to use it or offer alternatives, though sibling names like glovo_auth_status suggest a complementary tool.

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

glovo_plan_reorderPlan a repeat orderA

Resolve past order lines against authenticated Easy Reorder and current store search results. Read-only; inspect product options and obtain approval before using basket tools.

ParametersJSON Schema
NameRequiredDescriptionDefault
order_idYesOrder id from glovo_get_purchase_history.
max_searchesNoMaximum fallback store searches. Default 5.
candidates_per_lineNoDefault 3.

TDQS

A3.7/5.0
Behavior4/5

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

With no annotations, the description carries the full burden. It clearly states the tool is read-only and that users should inspect product options and obtain approval before using basket tools. This disclosure of non-destructive behavior is valuable, though more detail on return format or auth needs would strengthen it.

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 two sentences with no filler. The first sentence conveys the core action, and the second provides usage context. Every word earns its place.

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?

Given the tool has no output schema and three parameters, the description is minimal. It lacks details on what the output looks like or how to interpret results (e.g., which products are unavailable). For a reorder planning tool, more context on the resolution process would improve completeness.

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 baseline is 3. The description adds no parameter-level information beyond the schema; it does not explain what max_searches or candidates_per_line control in relation to the planning process. This is adequate but not enhanced.

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 the tool resolves past order lines against current store results for planning a repeat order. This distinguishes it from general basket tools and suggests a planning role, though the difference from glovo_preview_reorder is not explicit.

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

Usage Guidelines3/5

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

The description implies this tool is a read-only planning step before using basket tools, but does not explicitly state when to use it over similar tools like glovo_preview_reorder or glovo_add_to_basket. More concrete when-to-use and when-not-to-use guidance would help.

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

glovo_preview_reorderPreview reorderA

Read one past order and report whether it can be safely rebuilt into a basket. This never mutates the basket or places an order.

ParametersJSON Schema
NameRequiredDescriptionDefault
order_idYesOrder id from glovo_get_purchase_history.

TDQS

A4/5.0
Behavior4/5

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

Explicitly states no mutation ('never mutates the basket or places an order'), which is critical for safe usage. With no annotations, description carries full burden and does well.

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?

Two sentences, no fluff, front-loaded with key purpose. Efficient and clear.

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?

Lacks return format details (e.g., boolean or status), but for a read-only preview tool, the description provides sufficient context for safe usage despite no output 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 description for order_id already indicates source (glovo_get_purchase_history). Description adds 'past order' context but limited extra value; schema coverage is 100%.

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?

Clearly states verb ('Read'), resource ('one past order'), and outcome ('report whether it can be safely rebuilt into a basket'). Distinguishes from mutation tools by emphasizing it never mutates.

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

Usage Guidelines3/5

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

Implicitly suggests when to use (to check rebuild feasibility) but lacks explicit exclusions or references to sibling tools like glovo_add_to_basket for actual reordering.

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

glovo_remove_from_basketRemove from basketB

Remove one product from the real Glovo basket. Do not call unless explicitly requested.

ParametersJSON Schema
NameRequiredDescriptionDefault
store_idYes
product_idNo
store_product_idNo
basket_product_idNo

TDQS

B3.1/5.0
Behavior2/5

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

No annotations are provided, so the description carries the full burden. It states the action but discloses no side effects, prerequisites, or response behavior. The agent is left uninformed about error states or confirmation requirements.

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 consists of two short, direct sentences with no redundancy. However, it could be more structured by including key parameter hints without adding much length.

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

Completeness1/5

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

For a tool with 4 parameters, no schema coverage, and no output schema, the description fails to provide essential invocation context. The agent cannot reliably construct correct calls without guessing parameter roles.

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

Parameters1/5

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

Schema description coverage is 0%, yet the description provides zero information about the four parameters (store_id, product_id, store_product_id, basket_product_id). The agent cannot determine which parameter distinguishes the product to remove or that store_id is required.

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 explicitly states 'Remove one product from the real Glovo basket,' which clearly identifies the action (remove) and the resource (product from basket). This purpose is distinct from sibling tools like glovo_add_to_basket and glovo_get_basket.

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?

The instruction 'Do not call unless explicitly requested' provides a clear usage constraint, implying the tool should only be used when the user directly asks to remove a product. However, no alternatives or when-not-to-use scenarios are mentioned.

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

glovo_search_locationsSearch locationsB

Search public Glovo delivery locations by text. Returns only place id, provider, title, and subtitle.

ParametersJSON Schema
NameRequiredDescriptionDefault
limitNoMaximum suggestions returned. Default 5.
queryYesAddress or place text. Minimum 3 characters.

TDQS

B3.4/5.0
Behavior3/5

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

Discloses that it returns only place id, provider, title, and subtitle – a key behavioral detail beyond the schema. No annotations provided, so description carries burden. Does not mention pagination, error behavior, or auth requirements, but acceptable for a simple search tool.

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?

Single sentence with no wasted words. Includes both action and output description. Well-structured for readability.

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?

Adequately covers purpose and output for a simple search tool with 2 parameters and no output schema. Could mention that it searches only public locations, but not necessary given the title.

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?

Input schema has 100% description coverage for both parameters (query and limit). Description adds no additional meaning beyond schema – baseline 3 is appropriate.

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?

Clearly states 'search public Glovo delivery locations by text' – specific verb and resource. Distinguishes from sibling tools like glovo_get_location (single location) and glovo_browse_stores (stores). However, does not explicitly contrast with siblings.

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?

No guidance on when to use this tool vs alternatives (e.g., glovo_get_location for a specific location, glovo_browse_stores for stores). Implied usage from name and description, but lacks explicit direction.

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

glovo_search_store_itemsSearch store itemsB

Search products/items inside a specific Glovo store. Use ids from glovo_browse_stores or glovo_get_store.

ParametersJSON Schema
NameRequiredDescriptionDefault
limitNoDefault 24.
queryYesSearch text, e.g. 'leche', 'pizza', 'water'.
store_idYes
store_address_idYes

TDQS

B3.3/5.0
Behavior2/5

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

No annotations exist, so the description carries full burden. It fails to disclose behavioral traits such as whether the operation is read-only, authentication requirements, or pagination behavior. Only states 'Search' without additional transparency.

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?

Two sentences: first states purpose, second gives prerequisite. No fluff, front-loaded, every sentence earns its place.

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?

Given no output schema, the description should explain return format, pagination, or error handling. It does not, leaving the agent uninformed about the response structure.

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 50% (limit and query described). The description adds valuable context for store_id and store_address_id by referencing sibling tools, and provides example search terms for query, compensating for missing schema descriptions.

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 it searches products/items inside a specific Glovo store. It names the specific verb and resource, and mentions using ids from sibling tools, which helps differentiate from tools like glovo_browse_stores.

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

Usage Guidelines3/5

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

It advises using ids from glovo_browse_stores or glovo_get_store, providing prerequisite context. However, it does not explicitly state when to use this tool versus alternatives like glovo_get_store_menu or glovo_get_product.

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

glovo_select_locationSelect locationA

Resolve a public location suggestion, check guest delivery serviceability, and persist only valid browsing location headers.

ParametersJSON Schema
NameRequiredDescriptionDefault
place_idYesPlace id from glovo_search_locations.
providerNoProvider from glovo_search_locations, if present.

TDQS

A3.9/5.0
Behavior3/5

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

With no annotations, the description must disclose behavioral traits. It mentions checking serviceability and persisting valid headers, but it does not describe error handling (e.g., when serviceability fails), auth requirements, or side effects like session changes.

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?

A single, well-structured sentence that packs all key information without verbosity. Every word earns its place.

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?

The description explains the outcome but lacks details about the return value (no output schema). It does not cover the complete context for a tool that performs validation and persistence, leaving gaps about possible errors or success signals.

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?

The schema has 100% coverage with descriptions for both parameters. The description adds little beyond that, only hinting that these come from glovo_search_locations. Since schema is already clear, baseline 3 is appropriate.

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 clearly states the tool's specific purpose: resolving a public location suggestion, checking guest delivery serviceability, and persisting valid browsing location headers. It distinguishes itself from sibling tools like glovo_search_locations (which only suggests) and glovo_set_location (which may not include validation).

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?

The description implies usage after glovo_search_locations by referencing its outputs, and it clarifies the validation and persistence steps. However, it does not explicitly state when not to use it or mention alternatives like glovo_set_location for setting a location without validation.

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

glovo_set_locationSet locationA

Set the local browsing location headers. This does not clear baskets, but changing stores may make an existing basket incompatible.

ParametersJSON Schema
NameRequiredDescriptionDefault
latitudeNo
city_codeNo
longitudeNo
country_codeNo
language_codeNo

TDQS

A3.8/5.0
Behavior4/5

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

With no annotations provided, the description carries the full burden. It explicitly states that setting location does not clear baskets but warns that changing stores may make a basket incompatible, which is a key behavioral trait.

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?

Two sentences, front-loaded with the main purpose, and the second sentence adds a behavioral note. No wasted words.

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?

Given no annotations, no output schema, and five undocumented parameters, the description is not fully complete. It covers the core behavior and side effect but misses parameter details and return value description.

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?

Schema description coverage is 0% and the description adds no information about the five parameters. Although parameter names are self-explanatory, the description should compensate for the lack of schema descriptions, but it does not.

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 clearly states the tool sets location headers, and distinguishes from siblings like glovo_select_location and glovo_search_locations by focusing on direct header setting.

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

Usage Guidelines3/5

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

The description mentions a caveat about basket incompatibility when changing stores, but does not provide explicit guidance on when to use this tool versus alternative location-related tools (e.g., glovo_select_location or glovo_search_locations).

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

glovo_set_quantitySet quantityA

Set exact product quantity in the real Glovo basket. Quantity 0 removes it. Do not call unless explicitly requested.

ParametersJSON Schema
NameRequiredDescriptionDefault
quantityYes
store_idYes
product_idNo
store_product_idNo
basket_product_idNo

TDQS

A3.5/5.0
Behavior3/5

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

No annotations provided; description carries full burden. It discloses that the tool sets exact quantity and that 0 removes the product. It does not mention mutation of the live basket or other side effects, but baseline behavior is covered.

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?

Two sentences that efficiently convey purpose, a special case (quantity 0), and a usage warning. No redundant information.

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?

Despite 5 parameters and no output schema, the description omits parameter details and return value. The tool's complexity demands more context for effective use, especially given zero schema coverage.

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

Parameters1/5

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

Schema description coverage is 0%, and the description provides no explanation of parameters like store_id, product_id, etc. The agent must rely solely on parameter names, which is insufficient for a 5-parameter tool.

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 clearly states the verb 'set' and the resource 'exact product quantity in the real Glovo basket,' distinguishing it from siblings like add or remove. It also specifies that quantity 0 removes the item, which is a key behavioral detail.

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?

The description includes 'Do not call unless explicitly requested,' giving a clear usage restriction. However, it does not compare with sibling tools like add_to_basket or remove_from_basket to guide when to use alternatives.

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. 10 tool updatesv0.2.1
    • Addedglovo_add_to_basket
    • Addedglovo_analyze_order_history
    • Addedglovo_auth_status
    • Removedglovo_browse_store_catalog
    • Addedglovo_browse_stores
    • Addedglovo_get_order_stats
    • Removedglovo_get_store_recommendations
    • Addedglovo_get_suggestions
    • Addedglovo_plan_reorder
    • Addedglovo_preview_reorder
  2. 11 tool updatesv0.2.1
    • Removedglovo_add_to_basket
    • Removedglovo_analyze_order_history
    • Removedglovo_auth_status
    • Addedglovo_browse_store_catalog
    • Removedglovo_browse_stores
    • Removedglovo_get_order_stats
    • Removedglovo_get_store
    • Removedglovo_get_store_menu
    • Removedglovo_get_suggestions
    • Removedglovo_plan_reorder
    • Removedglovo_preview_reorder
  3. 6 tool updatesv0.2.0
    • Addedglovo_analyze_order_history
    • Addedglovo_get_saved_locations
    • Addedglovo_get_store_order_options
    • Addedglovo_get_store_recommendations
    • Addedglovo_get_suggestions
    • Addedglovo_plan_reorder
  4. 20 tool updatesv0.1.1
    • First observedglovo_add_to_basket
    • First observedglovo_auth_status
    • First observedglovo_browse_stores
    • First observedglovo_get_basket
    • First observedglovo_get_location
    • First observedglovo_get_order_items
    • First observedglovo_get_order_stats
    • First observedglovo_get_product
    • First observedglovo_get_purchase_history
    • First observedglovo_get_shopping_guide
    • First observedglovo_get_store
    • First observedglovo_get_store_menu
    • First observedglovo_login
    • First observedglovo_preview_reorder
    • First observedglovo_remove_from_basket
    • First observedglovo_search_locations
    • First observedglovo_search_store_items
    • First observedglovo_select_location
    • First observedglovo_set_location
    • First observedglovo_set_quantity

TDQS

A3.5/5.0

Scored across 23 tools

Disambiguation4/5

Most tools target clearly distinct resources or actions: auth, location, store browsing, order history, and basket mutation are cleanly separated. A few adjacent pairs such as get_order_stats vs analyze_order_history and preview_reorder vs plan_reorder could cause hesitation, but the descriptions explain their different outputs well enough.

Naming Consistency4/5

Tool names consistently follow a glovo_ + verb + noun pattern, making the set predictable and easy to scan. Minor deviations include glovo_auth_status, which lacks a leading verb, and glovo_login, which uses a bare verb instead of verb_noun.

Tool Count3/5

At 23 tools, the server is on the heavy side and falls into the 16-25 range that begins to feel bloated. The broad purpose of the skill justifies many operations, but some overlapping history and reorder helpers could likely be consolidated.

Completeness4/5

The set covers the main lifecycle well: location setup, store and product discovery, basket read/write/update/delete, order history, and reorder planning. Minor gaps remain, such as glovo_search_store_items referencing a glovo_get_store tool that is not exposed, and no checkout or saved-location write operations exist.

Maintenance

ActivityStale
ResponsivenessNo issues

Related MCP Connectors

Related MCP Servers

  • A
    license
    A
    quality
    D
    maintenance
    MCP server for Getir partner API (Turkey). Manage orders, products, pricing, and store status for your Getir restaurant via Bearer token authentication.
    8
    6 npm
    MIT
  • A
    license
    Not graded
    quality
    C
    maintenance
    Unofficial read-only MCP server for Telepizza.es that enables querying menu, prices, offers, stores, loyalty points, and order history using your own account. It cannot make purchases.
    1
    MIT
  • A
    license
    A
    quality
    A
    maintenance
    Unofficial MCP server for Greenweez that enables searching the catalog, reading product details, and managing a real shopping cart with safe confirmations, without ever placing orders or handling payment.
    8
    MIT