Back to tracker
Plugin tracker
Tools
Explore what tracked Claude Connectors and ChatGPT Plugins can actually do. Search by tool, Plugin, Brand, category, verb, or access requirement.
Latest snapshot2026-09-11USmethodology registry-public-v1
Searchable tools
113,017
Authless tools
7,424
Auth required
100,766
Described tools
61,166
113,017 tools
- Get Evidence Mediaget · Return a bounded absolute media reference for one authorized Wazu item. Does not return server file paths or raw media bytes.WazuWAZU
PluginrequiredProductivity - Get Full Evidence Contentget · Fetch the complete indexed content and passage locators for one authorized Wazu item when the hydrated item or search snippet is insufficient.WazuWAZU
PluginrequiredProductivity - List Recent Evidencelatest · List recent evidence in an explicit or active Wazu scope, newest first. Use for recent/latest requests; this deterministic read does not perform topical or vector search.WazuWAZU
PluginrequiredProductivity - List Wazu Scopeslist · List the personal scope and cohorts the authenticated Wazu actor may use. Personal is a scope represented by 'personal'; it is not a cohort UUID.WazuWAZU
PluginrequiredProductivity - Save Media Evidenceingest · Create one Wazu media evidence item from supported user-authorized base64 content in an explicit authorized cohort; enrichment may continue asynchronously.WazuWAZU
PluginrequiredProductivity - Save Structured Summarycommit · Create one structured summary, decision, update, insight, task, or meeting record in an explicit authorized Wazu cohort.WazuWAZU
PluginrequiredProductivity - Save Text Evidenceingest · Create one Wazu evidence item from user-authorized raw text, notes, a transcript, or extracted document text in an explicit authorized cohort.WazuWAZU
PluginrequiredProductivity - Search Wazu Evidencesearch · Search authorized Wazu evidence by topic, phrase, person, tag, or content type using Wazu's retrieval engine. Use latest_search for chronological lists.WazuWAZU
PluginrequiredProductivity - Set Active Wazu Scopeset · Set the authenticated actor's active Wazu scope for later calls. Pass 'personal' for personal memory or an authorized cohort UUID. This updates private Wazu session context and does not edit evidence.WazuWAZU
PluginrequiredProductivity - Add meal plan to RecipeBeecommit · Use after prepare_meal_plan_import. Submit exactly one decision for every recipe. Use use_existing only with a recipe ID returned by preparation and only after the user chooses it; otherwise use create_new. This creates one private meal plan and its entries atomically, then renders the final RecipeBee card. Claim success only when persisted=true. The response may include an optional image batch link; never start image generation from MCP client.RecipeBeeRecipeBee
PluginrequiredConsumer & Lifestyle - Attach MCP client imageattach · Use when the user wants to attach an image generated or uploaded in the current MCP client conversation to an existing private RecipeBee recipe. Prefer the Apps SDK file input when MCP client supplies file with download_url and file_id. Use image_url only for a URL selected or uploaded in the RecipeBee widget. If neither file nor image_url is available, return a pending selection and do not claim attachment. The widget picker is a fallback because native generated images may not be available in MCP client Files. Report attachment only after persisted=true and needs_image_selection=false. mode=replace changes which retained image is primary but does not delete the previous image; use it only after the user explicitly requests replacement. Do not use for a new RecipeBee-generated image.RecipeBeeRecipeBee
PluginrequiredConsumer & Lifestyle - Check recipe imageget · Check the private AI image status for an existing RecipeBee recipe after image generation was requested.RecipeBeeRecipeBee
PluginrequiredConsumer & Lifestyle - Generate recipe imagegenerate · Use only when the user explicitly asks RecipeBee to generate a new AI image for an existing private recipe or explicitly accepts RecipeBee image credits. Do not use for a native MCP client image or an image already generated or uploaded in this conversation. mode=add retains the current primary image. mode=replace changes which retained image is primary but does not delete the previous image; use it only after the user explicitly requests replacement.RecipeBeeRecipeBee
PluginrequiredConsumer & Lifestyle - Get RecipeBee image batch statusget · Read the progress of an optional RecipeBee image-generation batch returned by a meal-plan import. This tool never starts, charges, or cancels image generation; the user must confirm the batch in RecipeBee.RecipeBeeRecipeBee
PluginrequiredConsumer & Lifestyle - Prepare meal-plan importprepare · Use only after the user explicitly asks to add a completed meal plan to RecipeBee. This stateful, data-only step checks private recipes for exact or possible matches and creates a short-lived import draft without creating recipes or a meal plan or rendering a RecipeBee card. Do not use for chat-only meal planning. Wait for explicit recipe choices when matches are returned.RecipeBeeRecipeBee
PluginrequiredConsumer & Lifestyle - Preview meal planpreview · Use when the user asks to review a meal plan without adding it to RecipeBee. This chat-only, data-only tool never writes recipes or meal plans and does not render a RecipeBee card.RecipeBeeRecipeBee
PluginrequiredConsumer & Lifestyle - Preview recipepreview · Use when the user asks to preview or review a complete recipe without saving it. Include realistic integer prep_time_minutes, cook_time_minutes, and total_time_minutes values in every complete recipe. Estimate them when the user does not specify times; use 0 only when that part genuinely takes no time. Validate and render the recipe without persistence. Do not call as an intermediate step when the user has already explicitly asked to save.RecipeBeeRecipeBee
PluginrequiredConsumer & Lifestyle - Save private recipesave · Use when the user explicitly asks to save a complete recipe privately. Include realistic integer prep_time_minutes, cook_time_minutes, and total_time_minutes values in every complete recipe. Estimate them when the user does not specify times; use 0 only when that part genuinely takes no time. Save exactly once. If the user explicitly asks RecipeBee to create the image, use save_recipe_with_image instead. If the user wants to attach a MCP client-generated or uploaded image, save the recipe with this tool and then use attach_recipe_image. Do not publish or use browser control.RecipeBeeRecipeBee
PluginrequiredConsumer & Lifestyle - Save recipe with imagesave · Use only when the user explicitly asks RecipeBee to generate its own AI food image while saving a complete recipe privately, explicitly names RecipeBee's image generator, or explicitly accepts RecipeBee image credits. Include realistic integer prep_time_minutes, cook_time_minutes, and total_time_minutes values in every complete recipe. Estimate them when the user does not specify times; use 0 only when that part genuinely takes no time. Do not use for ordinary requests to create or generate an image in MCP client. Save exactly once and queue RecipeBee's moderated image pipeline. For a MCP client-generated or uploaded image, use save_recipe followed by attach_recipe_image instead. Do not call preview_recipe or save_recipe first.RecipeBeeRecipeBee
PluginrequiredConsumer & Lifestyle - Show RecipeBee recipeshow · Use after attach_recipe_image or generate_recipe_image to render the current authoritative private recipe and image status, or when the user explicitly asks to view an existing recipe. Do not call immediately after save_recipe or save_recipe_with_image because those tools already return the authoritative saved recipe. Call it once after a later image mutation; do not use it repeatedly or as a substitute for saving.RecipeBeeRecipeBee
PluginrequiredConsumer & Lifestyle - Open Arrayco Crew Hub in ChatGPTopen · Open the secure Arrayco Crew Hub as a full-screen interface inside ChatGPT.Arrayco Crew HubArrayco Construction
PluginnoneOperations - Search BC Building Code 2024search · Search Arrayco's BC Building Code 2024 reference index by code number or construction topic. Returns code headings and direct links to the official PDF pages. Reference only; confirm project-specific compliance with the authority having jurisdiction or a qualified professional.Arrayco Crew HubArrayco Construction
PluginnoneOperations - Search WorkSafeBC Safety Referencessearch · Search Arrayco's WorkSafeBC safety reference index. Returns relevant OHS Regulation parts and official source links. Reference only; confirm current project requirements with a competent safety professional.Arrayco Crew HubArrayco Construction
PluginnoneOperations - Finalize quotefinalize · Returns the indicative quote (price and web url) when all required inputs are captured, otherwise returns the remaining missing inputs.OrusOrus
PluginnoneFinance - Provide quote inputprovide · Stores one or more quote inputs against the session and returns the updated session state (captured and remaining inputs, next question, readiness flag).OrusOrus
PluginnoneFinance - Search activity catalogsearch · Searches the Orus activity catalog and returns a ranked list of candidate activities matching a short text description.OrusOrus
PluginnoneFinance - Start quote sessionstart · Opens a new indicative-quote session and returns the session id, the funnel roadmap, and the first input the funnel requires.OrusOrus
PluginnoneFinance - Create Trip (Travel Vibes)plan · Use this when the user wants to plan a NEW trip. It opens the Travel Vibes scratchpad widget and renders the itinerary YOU provide.
IMPORTANT — YOU write the itinerary. Do not expect our backend to generate it. Compose the COMPLETE itinerary yourself as TipTap-compatible HTML and pass it in the `itinerary_html` field; the widget renders it exactly as given.
DEFAULT TO CALLING IT. The instant a destination is present and the user wants a trip there, call plan_trip — do NOT interview them first, and do NOT paste the itinerary into chat instead of calling the tool.
TRIGGER plan_trip when BOTH hold:
1. a destination is present — a city, country, region, or park; AND
2. the user wants a trip/itinerary for it — a trip framing ("plan…", "trip to…", "X days in…", "weekend in…") OR a brief pairing the destination with trip attributes (duration, dates, who's going, interests, vibe). "Plan a trip to Tokyo" counts. This is NOT met by a question that only asks for a fact, the weather, or where to go — a place named inside a factual or general-knowledge question ("What is the capital of France?") is NOT planning intent (see WHEN NOT TO CALL).
Use sensible defaults for anything unspecified (dates, length, vibe, budget). Speed is the priority — produce a complete, polished first version in one call.
The ONLY thing you ever ask first:
- If there is NO destination at all ("help me plan a trip", "I want a holiday somewhere") → ask the single question "Where would you like to go?". As soon as they name a place, build it and call plan_trip.
Never ask about dates, vibe, or budget before calling. Never run a multi-step questionnaire.
WHEN NOT TO CALL plan_trip (answer in chat, do NOT trigger the tool):
- General-knowledge or factual questions that merely mention a place ("What is the capital of France?", "What's the population of Tokyo?", "Is Bali expensive?") → a place named inside a factual question is NOT planning intent.
- Destination brainstorming ("Where should I go?", "Best places for X", "Where can I travel during the summer break?") → suggest options in chat.
- Travel facts / weather / visas / currency ("What's the weather like in Bali in December?", "Do I need a visa for Japan?") → just answer the question.
- Off-topic, or advice/inspiration rather than a structured itinerary.
- User already has a trip in this conversation and wants to MODIFY it → editing an existing trip is not available in ChatGPT yet. Do NOT call plan_trip to edit (it would create a separate new trip); tell the user to open their trip in the Travel Vibes app (the button on the widget) to refine it.
=== HOW TO BUILD itinerary_html ===
Output ONE self-contained HTML document (compact HTML, NOT markdown). Use ONLY these tags: h1, h2, h3, p, strong, em, ul, ol, li, table, colgroup, col, tbody, tr, th, td, br, span. For tickable checklists also use <ul data-type="taskList"> with <li data-type="taskItem"> + <label>/<input type="checkbox">/<div> (see Styling rules). Inline style is allowed ONLY for status colors / colored text via the CSS vars below.
DO NOT include: <img> or photos, map blocks (<div data-node-type="mapBlock">), data-entity-id attributes, <script>, <style>, class attributes, or TipTap artifacts (no data-id, no default colspan/rowspan). Photos and maps are added later inside the app — omit them.
Styling rules (match EXACTLY — TipTap keeps styles ONLY where shown):
- Center the title, the date/route line, and the legend — put style="text-align: center;" on those <h1>/<p>.
- Section headings in blue: <h1><span style="color: var(--tt-color-text-blue);">ACCOMMODATION</span></h1>
- Status color goes on EACH <td>/<th> CELL, NEVER on <tr> (row-level color is dropped by the editor):
- booked: <td style="background-color: var(--tt-color-highlight-green);"><p>…</p></td>
- needs booking: <td style="background-color: var(--tt-color-highlight-red);"><p>…</p></td>
- Wrap every table cell's content in <p>…</p> (e.g. <th><p>Dates</p></th>, <td><p>Apr 10</p></td>).
- Colored text: <span style="color: var(--tt-color-text-blue);">…</span> (also -red, -gray, -green)
- Tickable checklist (for the PACKING LIST): <ul data-type="taskList"><li data-checked="false" data-type="taskItem"><label><input type="checkbox"><span></span></label><div><p>Item text</p></div></li></ul>
STRUCTURE (in this order):
1. <h1> trip title </h1>
2. <p> date range | duration | route </p>
3. <p> Legend: GREEN = booked, RED = needs booking </p>
4. Logistics (only the relevant ones): <h1>FLIGHT INFO</h1> / <h1>ACCOMMODATION</h1> / <h1>BOOKING CHECKLIST</h1> — each a <table> with a header row (<th>) and data rows (<td>); use a placeholder "…" row when the user gave no data; color the CELLS by status (see Styling rules — color on <td>, not <tr>).
5. <h1>ACTIVITY PLAN</h1>, then for EACH day:
- <h2>Day N | Weekday, Month Dth — Area</h2>
- <p><strong>Location:</strong> …</p> and <p><strong>Accommodation:</strong> …</p>
- <table> with header Time | Activity/Location | Duration | Notes, one row per activity (use real, specific place names + "⭐ 4.x" rating inline when you know it)
- <p><strong>Day N Food Options:</strong></p> then a <ul><li> list of real restaurants/cafes/bars
6. <h1>Important Notes</h1> and <h1>BUDGET BREAKDOWN</h1> as concise bullet lists; <h1>PACKING LIST</h1> as a tickable taskList with a few items (see Styling rules).
Keep it concise — short lists, not essays. Output ALL days. Use real, specific places you know. Write the itinerary in the user's language.
WORKED EXAMPLE (abbreviated — copy this shape, then expand to every day):
<h1 style="text-align: center;"><span style="color: var(--tt-color-text-blue);"><strong>Tokyo Food & Culture — 5 Days</strong></span></h1><p style="text-align: center;">April 10–15, 2026 | 5 Days | Couple</p><p style="text-align: center;">Legend: GREEN = booked, RED = needs booking</p><h1><span style="color: var(--tt-color-text-blue);">ACCOMMODATION</span></h1><table><tbody><tr><th><p style="text-align: center;">Dates</p></th><th><p style="text-align: center;">Hotel</p></th><th><p style="text-align: center;">Nights</p></th><th><p style="text-align: center;">Status</p></th></tr><tr><td style="background-color: var(--tt-color-highlight-red);"><p>Apr 10–15</p></td><td style="background-color: var(--tt-color-highlight-red);"><p>Shibuya boutique hotel</p></td><td style="background-color: var(--tt-color-highlight-red);"><p>5</p></td><td style="background-color: var(--tt-color-highlight-red);"><p>Needs booking</p></td></tr></tbody></table><h1><span style="color: var(--tt-color-text-blue);">ACTIVITY PLAN</span></h1><h2><span style="color: var(--tt-color-text-blue);">Day 1 | Thursday, April 10th — Shibuya</span></h2><p><strong>Location:</strong> Arrive Tokyo → Shibuya</p><table><tbody><tr><th><p style="text-align: center;">Time</p></th><th><p style="text-align: center;">Activity/Location</p></th><th><p style="text-align: center;">Duration</p></th><th><p style="text-align: center;">Notes</p></th></tr><tr><td><p>15:00</p></td><td><p>Shibuya Crossing ⭐ 4.6</p></td><td><p>1h</p></td><td><p>Iconic scramble</p></td></tr><tr><td><p>19:00</p></td><td><p>Omoide Yokocho ⭐ 4.4</p></td><td><p>2h</p></td><td><p>Yakitori alley</p></td></tr></tbody></table><p><strong>Day 1 Food Options:</strong></p><ul><li><p>Ichiran Shibuya ⭐ 4.3 — tonkotsu ramen</p></li><li><p>Gonpachi ⭐ 4.2 — izakaya</p></li></ul><h1><span style="color: var(--tt-color-text-blue);">PACKING LIST</span></h1><ul data-type="taskList"><li data-checked="false" data-type="taskItem"><label><input type="checkbox"><span></span></label><div><p>Passport + travel insurance</p></div></li><li data-checked="false" data-type="taskItem"><label><input type="checkbox"><span></span></label><div><p>Comfortable walking shoes</p></div></li><li data-checked="false" data-type="taskItem"><label><input type="checkbox"><span></span></label><div><p>Power adapter + charger</p></div></li><li data-checked="false" data-type="taskItem"><label><input type="checkbox"><span></span></label><div><p>Light layers + umbrella</p></div></li></ul>
RULES:
- Do NOT write the day-by-day itinerary in chat — it goes in itinerary_html.
- Do NOT use plan_trip to CHANGE an existing trip. Editing in ChatGPT is not available yet — tell the user to refine it in the Travel Vibes app.
WHAT TO SAY IN CHAT alongside the call: one short, warm sentence in the user's language (e.g. "Your Tokyo itinerary is ready in the widget above — take a look!"). Friendly, slightly cheeky travel-buddy tone; never a survey.HOTELS Find & Book StaysTravel Vibes
PluginnoneTravel & Hospitality - Get Automationsget · Get automations with optional filters.
Returns compact summaries by default (trigger_type, action_count).
Filter by specific ID(s) for full detail including trigger config,
actions, actions_on_trigger, and actions_on_resolve.
Filter operators:
- id.any_: Match specific automation IDs
- name.any_: Match automation names
- enabled.eq_: Filter by enabled state
Examples:
- List all automations: get_automations()
- Full detail: get_automations(filter={"id": {"any_": ["<automation-id>"]}})
- Get by name: get_automations(filter={"name": {"any_": ["my-automation"]}})
- Only enabled: get_automations(filter={"enabled": {"eq_": True}})PrefectPrefect
PluginrequiredDeveloper Tools - Get Dashboardget · Get a high-level dashboard overview of the Prefect instance.
Returns current flow run statistics, work pool status, and all active
concurrency limits (global/tag-based, deployment, work pool, and work queue).
Essential for diagnosing flow run delays and bottlenecks.PrefectPrefect
PluginrequiredDeveloper Tools - Get Deploymentsget · Get deployments with optional filters.
Returns compact summaries by default. Filter by specific ID(s) for full
detail including parameters, parameter_openapi_schema, job_variables,
work_pool details, and recent_runs.
Filter operators:
- any_: Match any value in list
- all_: Match all values
- like_: SQL LIKE pattern matching
- not_any_: Exclude values
- is_null_: Check for null/not null
- eq_/ne_: Equality comparisons
Examples:
- List all deployments: get_deployments()
- Full detail: get_deployments(filter={"id": {"any_": ["<deployment-id>"]}})
- Active deployments: get_deployments(filter={"paused": {"eq_": False}})
- Production deployments: get_deployments(filter={"tags": {"all_": ["production"]}})PrefectPrefect
PluginrequiredDeveloper Tools - Get Flow Run Logsget · Get execution logs for a flow run.
Retrieves log entries from the flow run execution,
including timestamps, log levels, and messages.
Examples:
- Get logs: get_flow_run_logs(flow_run_id="...")
- Get more logs: get_flow_run_logs(flow_run_id="...", limit=500)PrefectPrefect
PluginrequiredDeveloper Tools - Get Flow Runsget · Get flow runs with optional filters.
Returns compact summaries by default. Filter by specific ID(s) for full
detail including parameters, inlined deployment info, and work pool info.
Filter operators:
- any_: Match any value in list
- all_: Match all values
- like_: SQL LIKE pattern matching
- not_any_: Exclude values
- is_null_: Check for null/not null
- after_/before_: Time comparisons
- gt_/gte_/lt_/lte_: Numeric comparisons
Examples:
- List recent runs: get_flow_runs()
- Get specific run: get_flow_runs(filter={"id": {"any_": ["<flow-run-id>"]}})
- Failed runs: get_flow_runs(filter={"state": {"type": {"any_": ["FAILED"]}}})
- Production runs: get_flow_runs(filter={"tags": {"all_": ["production"]}})PrefectPrefect
PluginrequiredDeveloper Tools - Get Flowsget · Get flows with optional filters.
Returns a list of flows registered in the workspace.
Filter operators:
- any_: Match any value in list
- like_: SQL LIKE pattern matching
- all_: Match all values
Examples:
- List all flows: get_flows()
- Get specific flow: get_flows(filter={"id": {"any_": ["<flow-id>"]}})
- Flows by name pattern: get_flows(filter={"name": {"like_": "etl-%"}})
- Flows by tags: get_flows(filter={"tags": {"all_": ["production"]}})PrefectPrefect
PluginrequiredDeveloper Tools - Get Identityget · Get identity and connection information for the current Prefect instance.
Returns API URL, type (cloud/oss), and user information if available.
Essential for understanding which Prefect instance you're connected to.PrefectPrefect
PluginrequiredDeveloper Tools - Get Object Schemaget · Get a schema for an object type.PrefectPrefect
PluginrequiredDeveloper Tools - Get Prefect Release Notesdocs · Get authoritative, structured release notes for a Prefect OSS release.
Use this for questions like "what changed in the latest Prefect release?"
instead of semantic documentation search.PrefectPrefect
PluginrequiredDeveloper Tools - Get Task Runsget · Get task runs with optional filters.
Returns a list of task runs and their details matching the filters.
Note that 'task_inputs' contains dependency tracking
information (upstream task relationships), not the actual parameter values
passed to the task.
Filter operators:
- any_: Match any value in list
- like_: SQL LIKE pattern matching
- not_any_: Exclude values
- is_null_: Check for null/not null
Examples:
- List recent tasks: get_task_runs()
- Get specific task: get_task_runs(filter={"id": {"any_": ["<task-run-id>"]}})
- Failed tasks: get_task_runs(filter={"state": {"type": {"any_": ["FAILED"]}}})
- Tasks by pattern: get_task_runs(filter={"name": {"like_": "%process%"}})PrefectPrefect
PluginrequiredDeveloper Tools - Get Work Poolsget · Get work pools with optional filters.
Returns compact summaries by default (name, type, status, concurrency_limit).
Filter by specific ID(s) for full detail including work queues, active worker
counts, and descriptions. Essential for debugging deployment issues related to
flow runs being stuck or not starting.
Filter operators:
- any_: Match any value in list
- like_: SQL LIKE pattern matching
Examples:
- List all pools: get_work_pools()
- Full detail: get_work_pools(filter={"id": {"any_": ["<work-pool-id>"]}})
- Kubernetes pools: get_work_pools(filter={"type": {"any_": ["kubernetes"]}})PrefectPrefect
PluginrequiredDeveloper Tools - List Authorized Workspaceslist · List Prefect Cloud workspaces selected during OAuth consent.
This tool is only available when the server is running in Prefect Cloud
OAuth mode. Use it before calling workspace-scoped tools when the user
names a workspace by handle, account/workspace pair, or nickname.PrefectPrefect
PluginrequiredDeveloper Tools - Orientationorientation · Explain which Prefect MCP tool to use for common Prefect operations.
Covers workspace inspection, failure diagnosis, documentation, release notes,
object schemas, and the separately gated execution-plan authoring tools.
Returns routing guidance only and does not access or modify Prefect data.PrefectPrefect
PluginrequiredDeveloper Tools - Read Eventsread · Read and filter events from the Prefect instance.
Provides a structured view of events with filtering capabilities.
Note: When no time range is specified, events from the last 1 hour are returned by default.
Use occurred_after/occurred_before parameters to query a different time range.
Common event type prefixes:
- prefect.flow-run: Flow run lifecycle events
- prefect.deployment: Deployment-related events
- prefect.work-queue: Work queue events
- prefect.agent: Agent events
Examples:
- Recent flow run events: read_events(event_type_prefix="prefect.flow-run")
- Last 24 hours: read_events(occurred_after="<ISO8601-timestamp-24-hours-ago>")
- Specific time range: read_events(occurred_after="2024-01-01T00:00:00Z", occurred_before="2024-01-02T00:00:00Z")PrefectPrefect
PluginrequiredDeveloper Tools - Search Prefect Documentationdocs · Search Prefect documentation for concepts, examples, and best practices.
For latest or version-specific Prefect OSS release notes, use
get_release_notes instead.PrefectPrefect
PluginrequiredDeveloper Tools - Crustdata data toolslist · List the underlying Crustdata tools callable from inside execute() via callTool(name, params).CrustdataCrustdata
PluginrequiredData & Analytics - Crustdata tool schemasget · Return the input fields, filterable columns, and response shape for the named tools.CrustdataCrustdata
PluginrequiredData & Analytics - Crustdata: people, company and job dataexecute · People and organisations: 800M+ profiles, 200M+ companies. Employment history with dates, titles and seniority, education, skills, location, headcount over time, funding, technologies, job postings, social posts, work emails and phone numbers. Filter, combine, count and sort across any of it — people who studied at one place and now work at another, everyone hired into a role since a date, faculty at an institution, alumni of a company, who is hiring, who left and where they went, how many match. Live web search and page fetch too.
If the request names a person, an organisation, a role or a posting — or asks which of them, or how many — use this. A search returns documents that mention them; this returns the ones that match, all of them and only them.
A search answers the same question by handing you pages to fetch, read, and reconcile into entities, and you never learn what you missed. Here the answer arrives as records you can hand to the next step, and you can see how many matched. The open web is in here as well, so a question needing both doesn't need two tools.
Run a plain-JavaScript script that drives Crustdata. Author it against the TypeScript-typed tool surface from get_schema, but write NO type annotations in the body — a `: Type`/`as`/generic fails the whole run at parse, zero spend. The ONLY I/O is `const r = await callTool(name, params)` → `{ok:true,data}|{ok:false,status,errorType,message}`; always branch on `r.ok` (or `unwrap(await callTool(...))` to throw instead of silently proceeding on empty data). A toolkit is preloaded in the sandbox — no import, and (except `paginate` and `parallelMap`) do NOT await it: query builder (eq, and_, or_, gte, in_, any_of, field, chunk), result shapers (project, pick, compact, paginate, parallelMap, firstArray, unwrap), response accessors (profileUrl, currentCompanyIds, businessEmails), introspection (keys, shape). await only callTool, sleep, paginate, and parallelMap. Progress survives a bad run: when the run times out OR fails (a thrown error, a crashed pipeline, a client cancelling), the result carries a `partial`. The host fills it automatically with the results of every tool call that completed — you are billed for those either way, so they come back for you to resume from. `checkpoint(accumulator)` (synchronous) additionally saves YOUR value — call it after each costly stage when your own accumulator is what you want back, and it takes precedence over the automatic capture. If the captured rows overflow the size cap, `partial.resume` still carries each paginated call's `next_cursor` (and any `batch_id`), so you continue from where the run stopped instead of re-walking it — no paid re-run to recover it. Recovery is NOT automatic: pass the failed run's `partial` back to the next execute as `inputs` (the script reads it as `inputs.partial`) and write that script to skip the stages it already completed. Run INDEPENDENT calls (bulk enrich/lookup, per-entity sub-queries) concurrently with parallelMap instead of an await-loop. Return the smallest projection you need. Before a long or expensive script, `dry_run: true` rehearses it against fixtures for zero credits and reports where it breaks — a lint, not a check that the answer is right. Its values come from committed fixtures rather than from the API, so they are sample data with no bearing on the real answer (crustdata://catalog/dry-run). Read crustdata://catalog for the rules + a section index, then fetch a section (e.g. crustdata://catalog/patterns) for the details.CrustdataCrustdata
PluginrequiredData & Analytics - Add drive logadd · Add a completed drive log entry between `start` and `end` (ISO-8601) by creating a mutable entry in timr.timrtimr
PluginrequiredHR & Recruiting - Add project timeadd · Add a completed project time entry between `start` and `end` (ISO-8601) by creating a mutable entry in timr.timrtimr
PluginrequiredHR & Recruiting - Add working timeadd · Add a completed working time entry between `start` and `end` (ISO-8601) by creating a mutable entry in timr.timrtimr
PluginrequiredHR & Recruiting - Create date spancreate · Create a mutable multi-day working-time date span for the current user — e.g. vacation, sick leave, or training that spans Aug 5–15. `start`/`end` are YYYY-MM-DD; the `_half_day` flags mark a half day on the boundary; `substitute_id` is optional (the colleague covering).timrtimr
PluginrequiredHR & Recruiting
What is Tool Explorer?
Tool Explorer indexes the callable tool names and descriptions attached to public registry profiles. It is useful for seeing what agents can actually invoke, not just which profile exists.
How do category and verb filters work?
Category filters use the live registry category rollup. Verb filters use the public tool insights rollup, so the page stays backed by the same read models as the tracker charts.
Why do auth requirements matter?
Auth requirements show whether a tool is likely usable without account connection, requires authentication, is private, or is unknown in the current snapshot.