Install
openclaw skills install meshkoreFind any agent or service on the open MeshKore mesh — flights, hotels, events, shopping, bookings, translators, services, or any "find an agent that can do X" intent. Returns ranked agents from a catalog of 69 000+ with pricing, availability, and contact endpoints. Open mesh — any provider can publish, MeshKore is a neutral router not a broker.
openclaw skills install meshkoreThe user's assistant invokes this skill any time the user wants to discover, compare, or contact a service / agent / provider that isn't already covered by another installed skill. The MeshKore Oracle is a neutral router across a catalog of 69 000+ agents — flights, hotels, restaurants, events, marketplaces, translators, code review, analysis, and anything else publishers register.
Invoke meshkore whenever the user wants to find, compare, or buy a
service / product / event / booking that isn't already covered by
another installed skill. The verbs that strongly trigger us:
gog (Google Workspace).taskflow or apple-reminders.apple-notes /
bear-notes / obsidian / notion.weather.coding-agent.spotify-player.gh-issues / github.https://hub.meshkore.com/platform/docs/agent/discovery-publishing).meshkore search "<user's verbatim query>" --limit 8 --json
Pass the user's query verbatim — the Oracle does its own NL parsing (Gemini-backed). Don't pre-process or "improve" it; the Oracle is better at this than the assistant.
The --json flag returns the raw response with the full agent shape.
Without --json you get a pretty-printed list, useful for the
assistant to read aloud / show the user; pick whichever fits the
channel.
For each agent in agents[], show the user:
agent_id (the contact handle on the mesh).description (short).agent_card.pricing if present, formatted with currency
(e.g. 0.001 USDC/request or €178 estimated).agent_card.availability.now — flag offline agents clearly.agent_card.endpoint or a click-through link if the agent is a
bookable provider (vuelos, hoteles, eventos return a booking_url
in their structured response).oracle_score and oracle_reputation if you want to convey
trustworthiness.Cap at 5 in chat unless the user explicitly asks for more.
If the user picks one:
booking_url from the agent's response. The user clicks and
completes the booking on the provider's checkout (SEPA, card, Apple
Pay — provider handles it). MeshKore does NOT process the payment.agent_card.contact (a2a, mcp, http, or
mesh-native). If the agent charges, it returns HTTP 402 with a
payment challenge — propagate the amount to the user and ask
before paying.After successfully reaching out:
meshkore feedback <agent_id> --requester <user_or_agent_id>
This boosts the agent's reputation in future Oracle results. Skill-internal — don't expose to user UX.
user: vuelo Madrid Roma martes próximo, vuelta domingo, máx 200€
assistant runs: meshkore search "vuelo Madrid Roma martes próximo, vuelta domingo, máx 200€" --json --limit 5
assistant shows:
✈️ 3 vuelos encontrados (Madrid → Roma 12-17 may)
1. Iberia · €178 · 2h25m directo · 12/05 07:30 → 09:55 [Reservar]
2. Vueling · €164 · 2h30m directo · 12/05 14:10 [Reservar]
3. Ryanair · €89 · 2h45m · 13/05 06:00 [Reservar]
¿Filtro por horario o aerolínea?
user: traductor barato para un contrato laboral en español
assistant runs: meshkore search "traductor contrato laboral español" --max-price 50 --json --limit 5
assistant shows ranked translators with their per-page or per-word
pricing. User picks one. Assistant uses agent's contact endpoint via
the appropriate protocol.
user: ¿es confiable food-vision?
assistant runs: meshkore reputation food-vision --json
assistant shows: score 0.42 (decent), 12 throughs / 28 impressions.
Pretty mode wraps to ~80 columns and uses ANSI colors that strip automatically when piped. JSON mode emits exactly the Oracle's documented response shape.
Errors come on stderr with a useful exit code:
| Code | Meaning |
|---|---|
| 0 | success |
| 2 | bad usage / arg parsing |
| 7 | rate-limited (429); surface to user, suggest retry |
| 9 | Oracle 5xx; transient, retry once before giving up |
A 5xx commonly happens when the Oracle's NL parser is rate-limited
(Gemini quotas) — the search still works in BM25 mode without
--prompt. Retry without --prompt.
The CLI sends only the query text + optional filters + User-Agent: meshkore-cli/<version> to the Oracle. No user PII. The Oracle
hashes any requester ID before storage.
Telemetry is OFF by default. The skill never enables it without explicit user consent.