{"ok":true,"site":{"host":"melaninmap.app","url":"https://melaninmap.app/","type":"live","desc":"Discover Black history, businesses, and cultural events with Big Mama. Try text chat on the web; request native Clarksville alpha access.","tools":[{"name":"search_black_owned_directory","kind":"answer","impl":"imperative","description":"Search Melanin Map's published directory of Black-owned businesses, events, and tours in Clarksville, Tennessee. Results are published directory records. Each item's catalogFreshness reflects data freshness, not ownership verification — use the verification tool before describing a listing as verified. The response includes a recommendationId, which subsequent record_interest and request_event_handoff calls require.","annotations":{"readOnlyHint":true},"inputSchema":{"type":"object","properties":{"query":{"type":"string","maxLength":400,"description":"Free-text search terms. Accepted up to 400 characters, but only the first 160 are used for matching — anything after that is ignored rather than rejected."},"category":{"type":"string","maxLength":64,"description":"Optional category filter."},"kind":{"type":"string","enum":["business","event","all"],"description":"Optional record kind filter; defaults to \"all\"."},"limit":{"type":"integer","minimum":1,"maximum":16,"description":"Maximum number of results to return."}},"required":[]},"hasHandler":true,"hasExecute":true,"__source":"spec","executable":true,"handlerField":"execute","page":"/","pages":["/","/try-big-mama","/farmers","/story-of-the-day","/blog","/community/missing"]},{"name":"get_business_details","kind":"answer","impl":"imperative","description":"Get the published directory record for one listing by its externalId, as returned by search_black_owned_directory. Returns only published fields plus a truthful public Passport status and URL when a fresh, human-approved Passport exists.","annotations":{"readOnlyHint":true},"inputSchema":{"type":"object","properties":{"externalId":{"type":"string","minLength":1,"maxLength":200,"description":"The listing's externalId from search_black_owned_directory."}},"required":["externalId"]},"hasHandler":true,"hasExecute":true,"__source":"spec","executable":true,"handlerField":"execute","page":"/","pages":["/","/try-big-mama","/farmers","/story-of-the-day","/blog","/community/missing"]},{"name":"check_ownership_verification","kind":"answer","impl":"imperative","description":"Check the ownership verification status of a directory listing. Returns one of four statuses: \"verified\" (an authoritative third-party ownership record is on file). \"preview_unverified\" = a design-partner Passport page exists but ownership is NOT verified: never describe such a listing as verified or Black-owned. \"not_listed\" = no publicly listed verification for this id. \"exposure_disabled\" = public Passport exposure is currently switched off site-wide. Verification is never purchasable.","annotations":{"readOnlyHint":true},"inputSchema":{"type":"object","properties":{"externalId":{"type":"string","minLength":1,"maxLength":200,"description":"The listing's externalId from search_black_owned_directory."}},"required":["externalId"]},"hasHandler":true,"hasExecute":true,"__source":"spec","executable":true,"handlerField":"execute","page":"/","pages":["/","/try-big-mama","/farmers","/story-of-the-day","/blog","/community/missing"]},{"name":"record_interest","kind":"act","impl":"imperative","description":"Record an attributed follow-through (tap, save, or directions) for a recommendation previously returned by search_black_owned_directory. Safe to call once per genuine user intent; it no-ops if the recommendation has expired.","inputSchema":{"type":"object","properties":{"recommendationId":{"type":"string","minLength":1,"maxLength":200,"description":"The recommendationId from a prior search_black_owned_directory response."},"action":{"type":"string","enum":["tap","save","directions"],"description":"The kind of follow-through the person expressed."},"targetType":{"type":"string","enum":["business","event"],"description":"The record type of the target, from the search item. Only \"business\" and \"event\" exist here: search_black_owned_directory mints no other type, and the backend matches the target against the items that search actually returned."},"targetId":{"type":"string","minLength":1,"maxLength":200,"description":"The target's externalId, from the search item."}},"required":["recommendationId","action","targetType","targetId"]},"hasHandler":true,"hasExecute":true,"__source":"spec","executable":true,"handlerField":"execute","page":"/","pages":["/","/try-big-mama","/farmers","/story-of-the-day","/blog","/community/missing"]},{"name":"request_event_handoff","kind":"act","impl":"imperative","description":"Start a tracked hand-off to an event's or tour's official ticketing destination. A visible confirmation card is shown to the person using this browser, and the hand-off proceeds only if they confirm it; if they decline, no hand-off request is made and the result is { ok: false, code: \"user_declined\" }.","annotations":{"readOnlyHint":false,"consequentialHint":true},"inputSchema":{"type":"object","properties":{"recommendationId":{"type":"string","minLength":1,"maxLength":200,"description":"The recommendationId from a prior search_black_owned_directory response."},"targetExternalId":{"type":"string","minLength":1,"maxLength":200,"description":"The event's or tour's externalId, from the search item."},"channel":{"type":"string","enum":["event_detail"],"description":"The hand-off channel. The web agent lane always uses \"event_detail\"."}},"required":["recommendationId","targetExternalId","channel"]},"hasHandler":true,"hasExecute":true,"__source":"spec","executable":true,"handlerField":"execute","page":"/","pages":["/","/try-big-mama","/farmers","/story-of-the-day","/blog","/community/missing"]}],"favicon":"/favicons/melaninmap.app.png","apiSurface":"spec","category":"Travel & Events","toolCount":5}}