# Open prices shop locations

Shops and online stores where Open Prices contributors recorded prices: Open Prices id (use it in open-prices/prices), OpenStreetMap name, brand, type. Takes name, city, country and more, all optional.

Shops and online stores where Open Prices contributors recorded prices: Open Prices id (use it in open-prices/prices), OpenStreetMap name, brand, type (supermarket, convenience...), address, city, country, coordinates, and counts of prices, products and contributors. Filter by name, city or country substring; sort by most prices to find well-covered shops.

- Tool ID: `open-prices/locations`
- Name in the catalog: Open Prices shop locations
- Provider: [Open Prices](/providers/open-prices.md)
- Capability: [Product catalogs & food data](/tools/ecommerce/product-catalogs.md)
- Price: no charge per call
- Authentication: an authorised Agentik workspace is required for execution, including zero-price tools.

## Pricing contract

No charge per call. A workspace is still needed so your agent can call it.


```json
{
  "model": "per_call",
  "amountUsd": 0
}
```

## Complete input schema


```json
{
  "type": "object",
  "properties": {
    "name": {
      "type": "string",
      "minLength": 2,
      "maxLength": 100,
      "description": "Substring of the shop name, e.g. 'Carrefour'"
    },
    "city": {
      "type": "string",
      "minLength": 2,
      "maxLength": 100,
      "description": "Substring of the city, e.g. 'Nancy'"
    },
    "country": {
      "type": "string",
      "minLength": 2,
      "maxLength": 100,
      "description": "Substring of the country name as in OpenStreetMap, e.g. 'France'"
    },
    "order_by": {
      "type": "string",
      "enum": [
        "-price_count",
        "-product_count",
        "-user_count"
      ],
      "default": "-price_count",
      "description": "Order: most prices, most products or most contributors first, e.g. '-price_count'"
    },
    "size": {
      "type": "integer",
      "minimum": 1,
      "maximum": 50,
      "default": 10,
      "description": "Shops per page (max 50), e.g. 10"
    },
    "page": {
      "type": "integer",
      "minimum": 1,
      "maximum": 500,
      "default": 1,
      "description": "Page number, starting at 1, e.g. 2"
    }
  },
  "additionalProperties": false
}
```

## Published example

This is the provider tool’s published example. Replace example values with the user’s requested inputs, respecting the schema; do not execute an example merely to test a connection.


```json
{
  "tool_id": "open-prices/locations",
  "input": {
    "name": "Carrefour",
    "country": "France",
    "size": 5
  }
}
```

## Execute and retrieve

Inspect again before execution, explain the price and obtain the required authority. Use MCP run_tool or POST /v1/run with this tool ID, valid input and an idempotency key. Save the returned run ID and follow the actual state. If Agentik answers that the tool is temporarily unavailable, do not retry it blindly; use discovery to propose an alternative.

A partial or uncertain result can still have consumed provider resources. Consult [billing](/docs/billing.md), [idempotency](/docs/idempotency.md) and [asynchronous results](/docs/async.md).

Licence: ODbL 1.0 (Open Prices and OpenStreetMap data).

Attribution: Prices from Open Prices by Open Food Facts contributors (prices.openfoodfacts.org), ODbL; shop data © OpenStreetMap contributors.

[Provider documentation](https://prices.openfoodfacts.org/api/docs)

[REST inspection](https://api.agentik.cc/v1/tools/open-prices/locations) · [OpenAPI](/openapi.json) · [Connection guide](/connect.md)

---

[HTML page](/providers/open-prices/locations) · [Agent index](/llms.txt)
