# RescueCatalog for AI agents

> RescueCatalog sells emergency, first-aid, rescue and aid kits to governments, aid organisations and companies, quoted per request. Use search_products / get_product to find products (refs RS-001…), search_aid_needs to see published aid-kit tenders worldwide, request_quote to ask for an offer (no account needed; the offer goes to the e-mail given) and get_request_status to follow up. Producers can offer capacity with submit_supplier_offer.

No account and no API key are needed. Everything an agent can do here works without a human on our side: searching, reading,
sending a quote request or a supplier offer, and checking its status. A person at RescueCatalog prepares the actual offer.

Catalogue: 503 products in 11 categories. Aid-kit requests tracked worldwide: 1361 (as of 2026-11-13).

## Ways in

- MCP (Streamable HTTP): https://rescuecatalog.com/mcp — protocol 2026-07-28 (stateless, server/discover) and 2025-11-25 / 2025-06-18 / 2025-03-26 (initialize).
- A2A: Agent Card https://rescuecatalog.com/.well-known/agent-card.json (A2A 1.0) · JSON-RPC endpoint https://rescuecatalog.com/a2a · A2A 0.3 card: https://rescuecatalog.com/.well-known/agent.json
- WebMCP: open https://rescuecatalog.com/agents/ in a browser with WebMCP (navigator.modelContext); the same tools are registered on that page.
- HTTP/JSON: https://rescuecatalog.com/agents/api — OpenAPI 3.1 at https://rescuecatalog.com/agents/openapi.json

## Tools (same names everywhere)

- **search_products**: Search the RescueCatalog product catalogue (emergency backpacks, first-aid and trauma kits, fire safety, survival tools, lights, protective gear, bags, medical devices, food and water). Returns refs, names, summaries, page URLs and images. Prices are given per quote.
- **get_product**: Full details of one product by its ref (e.g. RS-001): description, specifications, contents list, items shown in the photo, images and page URL.
- **list_product_categories**: All product categories with the number of products and the category page URL.
- **search_aid_needs**: Search published aid-kit requests (tenders, RFQs, framework agreements, appeals) worldwide: kit type, region, country, buyer type, status and dates. Buyer names are withheld.
- **get_aid_need**: One published aid-kit request by id (e.g. RN-001) with contents, quantity, dates and status.
- **list_aid_kit_types**: Aid-kit types seen in published requests (hygiene, dignity, NFI, shelter, winterization, food, first aid …) with request counts, countries, buyer types and typical items.
- **get_ordering_info**: How to order from RescueCatalog: who operates it, the quote process, what a quote request should contain, contacts and languages.
- **request_quote** (sends data): Send a binding-free request for a quote to RescueCatalog: catalogue products (refs + quantities) and/or a custom kit built to your item list, with delivery country and contact e-mail. Returns a request_id; the offer is sent to the e-mail given. Use get_request_status to follow up.
- **submit_supplier_offer** (sends data): For producers, kit assemblers and wholesalers: offer emergency, rescue, first-aid or aid-kit products and production capacity to RescueCatalog. Returns an offer_id.
- **get_request_status**: Status of a quote request or supplier offer sent earlier: received, in_review, quoted, closed or rejected, with dated history. Needs the request_id and the e-mail used in the request.

## A2A messages

Exact call: one data part `{"skill": "<tool name>", "input": {…}}`. Plain text is treated as a search
(product refs like RS-001 and request ids like RN-001 are recognised). Quote requests without the needed fields come back as
TASK_STATE_INPUT_REQUIRED with the missing fields; reply on the same taskId.

## Examples

MCP (2026-07-28):
```
curl -s https://rescuecatalog.com/mcp -H 'Content-Type: application/json' -H 'Accept: application/json, text/event-stream' \
  -H 'MCP-Protocol-Version: 2026-07-28' -H 'Mcp-Method: tools/call' -H 'Mcp-Name: search_products' \
  -d '{"jsonrpc":"2.0","id":1,"method":"tools/call","params":{"name":"search_products","arguments":{"query":"emergency blanket"},"_meta":{"io.modelcontextprotocol/protocolVersion":"2026-07-28","io.modelcontextprotocol/clientCapabilities":{}}}}'
```

A2A 1.0:
```
curl -s https://rescuecatalog.com/a2a -H 'Content-Type: application/json' -H 'A2A-Version: 1.0' \
  -d '{"jsonrpc":"2.0","id":1,"method":"SendMessage","params":{"message":{"messageId":"m1","role":"ROLE_USER","parts":[{"data":{"skill":"search_aid_needs","input":{"kit_type":"hygiene","status":"Open"}}}]}}}'
```

HTTP/JSON:
```
curl -s 'https://rescuecatalog.com/agents/api/products?query=trauma%20kit&limit=5'
curl -s https://rescuecatalog.com/agents/api/quote-requests -H 'Content-Type: application/json' \
  -d '{"organization":"City of Example","email":"buyer@example.org","country":"Germany","items":[{"ref":"RS-001","quantity":5000}]}'
```

## Rules

- Prices are per quote; there are no list prices. Quote requests are not orders.
- Write tools are rate-limited per IP. Please identify your agent in "agent": {"name", "url", "on_behalf_of"}.
- Contact: WhatsApp +49 171 1254074 · ag@brn.ai · RescueCatalog · a BRNZ service · TechFunder World AG, Zug, Switzerland
