so.coreloop/directory
name:so.coreloop/directory
Search real businesses, then read profiles, services and hours or contact them, in one endpoint.
- transport:
- remote
- credential class:
- self-provisionable
Owner verification
Not yet verified. Verifying proves you control this server and is free, permanently — it never changes a published score.
Start verification →Tools
- check_business_availabilityshallow
One business's opening hours, whether it is open right now, and when it next opens. Phase 1 returns published hours, not bookable slots.
- compare_business_servicesshallow
Compare one business's services within a category or keyword, with a price/duration summary. Each row reports `match_type`, so you can tell an exact category hit from an incidental keyword.
- get_business_agentshallow
The canonical ids and endpoint URLs for one business — its own MCP and A2A endpoints, agent card, llms.txt and public page, under `protocol_urls`. A null URL means that surface is switched off for this business right now: do not construct it yourself, and use one of the non-null surfaces instead.
- get_business_infoshallow
Full profile for one business found through search_businesses: identity, locations, contact, policies, images, public documents and the languages it publishes in.
- get_business_servicesshallow
One business's service catalogue, with filtering, sorting and pagination. Page with `offset`/`limit` and read `has_more` — the order is stable, so a second page will not repeat or skip a service.
- search_businessesshallow
Search the CoreLoop business directory. Start here: every other tool on this endpoint needs a business, and each result carries the `business_id` and `slug` you pass to them as the `business` argument. `business_id` is a PUBLIC, OPAQUE, STABLE routing identifier: it is safe to store and re-use across sessions, it stays the same when a business renames itself or changes its slug, and it carries no sensitive information. Treat it as a token — do not parse it, do not derive meaning from its format, and do not construct one. Pass back exactly the value you were given. A result with `asserts_no_physical_location: true` has stated that it has no premises (consultants, trades, online-only) — it is intentionally absent from city search rather than missing data. `false` means no such statement was made; it does NOT imply premises. Results are returned in your requested language when the business has published a translation: send `?locale=<code>` on the endpoint URL (takes precedence) or an Accept-Language header. Each result reports the language it is written in (`locale`), the business's original language (`content_locale`), and every language it is available in (`available_locales`). `mcp_url`, `a2a_url` and `page_url` — and every URL inside `protocol_urls` — are null when that surface is currently switched off for the business: a null is intentional (do not construct the URL yourself), and the business remains reachable through its non-null surfaces. `data_source: "directory"` marks these rows as the search projection; call get_business_info for the live profile. PAGING: one call returns at most `limit` results. Read `has_more` — a short page is not proof of the end — and pass `next_cursor` back as `cursor` for the next page. The cursor is opaque and bound to the filters and sort it was issued for: change any of them and it is rejected, so start a new search instead. `limit` may change between pages.
- send_business_inquiryshallow
Send a message to one business. This has a real side effect — it notifies the owner and delivers an email — and is rate-limited both per business and across this directory, so send one considered inquiry rather than a broadcast.
Embed this server’s score
Tool count and median score across every tool in this server’s corpus — honest in a way a single cherry-picked tool’s badge wouldn’t be.
[](https://vouch.tools/servers/f7d8c682-11b0-43ab-afe6-7d8cc46d7b69)