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-12USmethodology registry-public-v1
Searchable tools
113,018
Authless tools
7,424
Auth required
100,766
Described tools
61,167
113,018 tools
- Create a webhook endpointcreate · Register an HTTPS URL to receive Extend events (webhooks group). CRITICAL: the response's signingSecret is shown ONLY on this call — store it immediately; it cannot be retrieved later. Receivers verify HMAC-SHA256 of "v0:{timestamp}:{body}" against it (reject timestamps older than 5 minutes). enabledEvents here are workspace-global and NOT every event type is valid globally: resource-run events such as workflow_run.completed are rejected here and must instead be scoped to a specific resource via create_webhook_subscription (create the endpoint with enabledEvents [], then subscribe it to the workflow/extractor/etc.). Setting up webhooks by hand? Call get_documentation with https://docs.extend.ai/webhooks/configuration.md first. Follow any llmContext guidance included in results.ExtendExtend
PluginrequiredAI - Create a webhook subscriptioncreate · Subscribe an existing webhook endpoint to events from ONE specific extractor, classifier, splitter, or workflow (webhooks group) — deliveries for other resources are unaffected. Use this instead of global enabledEvents when only some resources matter. Configuration rules: call get_documentation with https://docs.extend.ai/webhooks/configuration.md first (event catalog: https://docs.extend.ai/webhooks/events.md). Follow any llmContext guidance included in results.ExtendExtend
PluginrequiredAI - Create a workflowcreate · Create a workflow — a multi-step document pipeline (workflows group): parse → extract/classify/split → validations → human review. name alone creates an empty draft; steps builds the graph up front (call get_documentation with https://docs.extend.ai/workflows/configuring-workflows.md before hand-authoring a step graph). The draft is the only mutable surface — edit with update_workflow, freeze with deploy_workflow_version, run with run_workflow. Follow any llmContext guidance included in results.ExtendExtend
PluginrequiredAI - Create an evaluation setcreate · Create an evaluation set — a named collection of ground-truth examples scoped to ONE extractor, classifier, or splitter via entityId (evaluations group). The iteration loop: create a set → add items with add_evaluation_items → publish a new version of the resource → run_evaluation against that version → read accuracy metrics with get_evaluation_run. New to evaluations? Call get_documentation with https://docs.extend.ai/evaluation/overview.md first (set authoring in detail: https://docs.extend.ai/evaluation/creating-evaluation-sets.md). Follow any llmContext guidance included in results.ExtendExtend
PluginrequiredAI - Create an extractorcreate · Create a saved, reusable extractor (extract group). Three starting points, mutually exclusive: config (inline schema — call get_documentation with https://docs.extend.ai/extraction/schema.md BEFORE writing one by hand), cloneExtractorId (copy another extractor's draft config), or generate (Extend writes the schema from 1-5 sample documents plus optional instructions; no docs needed); name alone creates an empty draft. The draft is the only mutable surface — edit it with update_extractor, freeze it with publish_extractor_version, run it with extract_data. Follow any llmContext guidance included in results.ExtendExtend
PluginrequiredAI - Delete a classify rundelete · Permanently delete a classify run and its stored outputs (classify group). Cannot be undone. Follow any llmContext guidance included in results.ExtendExtend
PluginrequiredAI - Delete a filedelete · Permanently delete an uploaded file from Extend (files group). Runs that already processed the file keep their outputs, but the file's bytes and parsed contents are gone. This cannot be undone. Follow any llmContext guidance included in results.ExtendExtend
PluginrequiredAI - Delete a parse rundelete · Permanently delete a parse run and its stored outputs (parse group). Cannot be undone. Follow any llmContext guidance included in results.ExtendExtend
PluginrequiredAI - Delete a split rundelete · Permanently delete a split run and its stored outputs (split group). Cannot be undone. Follow any llmContext guidance included in results.ExtendExtend
PluginrequiredAI - Delete a webhook endpointdelete · Permanently delete a webhook endpoint (webhooks group). This ALSO deletes every subscription attached to it, and deliveries stop immediately. This cannot be undone. Follow any llmContext guidance included in results.ExtendExtend
PluginrequiredAI - Delete a webhook subscriptiondelete · Permanently delete a webhook subscription (webhooks group). The endpoint and its global events are unaffected. This cannot be undone. Follow any llmContext guidance included in results.ExtendExtend
PluginrequiredAI - Delete a workflow rundelete · Permanently delete a workflow run and its stored outputs (workflows group). Cannot be undone. Follow any llmContext guidance included in results.ExtendExtend
PluginrequiredAI - Delete an edit rundelete · Permanently delete an edit run and its stored outputs (edit group). Cannot be undone. Follow any llmContext guidance included in results.ExtendExtend
PluginrequiredAI - Delete an evaluation itemdelete · Permanently remove one ground-truth item from an evaluation set (evaluations group). Past run metrics are unaffected. This cannot be undone. Follow any llmContext guidance included in results.ExtendExtend
PluginrequiredAI - Delete an extract rundelete · Permanently delete an extract run and its stored outputs (extract group). Cannot be undone. Follow any llmContext guidance included in results.ExtendExtend
PluginrequiredAI - Deploy a workflow versiondeploy · Deploy the workflow's current draft as a new immutable version (workflows group). Unlike extractor/classifier/splitter publishing there is NO releaseType — workflow versions are integer deploy numbers ("1", "2", ...) with an optional display name referenced at run time. Pass steps to deploy that graph instead of the draft. Deployed versions never change — keep iterating on the draft. Follow any llmContext guidance included in results.ExtendExtend
PluginrequiredAI - Detect PDF form fields / generate an edit schemadetect · Detect the fillable fields in a PDF form and return an edit schema (edit group): each property is a detected field with its type (text/checkbox/radio/dropdown/signature/table), page index, and bounding box. Use it to see what a form asks for, or as the scaffold for a structured fill — set extend_edit:value on each field and pass the populated schema to edit_pdf. Pass inputSchema to re-run detection against an existing schema (mapping mode) — for the edit-schema rules, call get_documentation with https://docs.extend.ai/editing/configuration.md first. Inspect runs with get_form_detection_run. Follow any llmContext guidance included in results.ExtendExtend
PluginrequiredAI - Extract structured data from a documentextract · Extract specific structured values (totals, line items, dates, names, tables) from a document (extract group) using a saved extractor, an inline JSON Schema, or schema-less inference. If the user says "OCR" but wants specific values out, use this tool; for the raw text/markdown of the pages use parse_document instead. Provide exactly one of extractor or config, or omit both for schema-less inference (guided by config.extractionRules when config has no schema; not usable with package). If a saved extractor turns out not to exist, rerun THIS tool without the extractor (schema-less) — do not fall back to parse_document for value extraction. For one merged result across 2-50 related documents, pass package instead of file. detail: "full" returns per-field source citations and confidence — the only way to prove where a value came from (provenance); parsing cannot cite. Creates an extract run: may return status: "running" with a runId — normal, not an error; poll it with get_extract_run. Follow any llmContext guidance included in results.ExtendExtend
PluginrequiredAI - Fetch an Extend docs pageget · Fetch an Extend docs page as markdown, live from docs.extend.ai. Pass a URL from a tool description, an error's docUrl, or a search_documentation result. Always available, no workspace targeting.ExtendExtend
PluginrequiredAI - Fill a PDF formedit · Fill form fields in a PDF and return the edited file (edit group). Values come from instructions (free-form prose, e.g. "name is Acme Corp; date is 2026-04-15") and/or schema (an edit schema from detect_form_fields with extend_edit:value set per field; extend_edit:image with an image_url for signature images). The document passed here must be the TARGET form, not the source you read values from — parse or extract the source first, then fill. Before authoring a schema fill by hand, call get_documentation with https://docs.extend.ai/editing/configuration.md and follow it. Output is a pointer { id, presignedUrl } to the filled PDF; the URL expires in ~15 minutes (re-fetch with get_file). Inspect runs with get_edit_run. Follow any llmContext guidance included in results.ExtendExtend
PluginrequiredAI - Get (or wait on) a classify runget · Get the state and output of a classify run (classify group) — resume a status: "running" run or inspect a failed one. wait: true blocks until terminal or wait-budget expiry (call again to keep waiting). Follow any llmContext guidance included in results.ExtendExtend
PluginrequiredAI - Get (or wait on) a form detection runget · Get the state and output of a form detection run (edit group) — resume a status: "running" run or inspect a failed one. wait: true blocks until terminal or wait-budget expiry (call again to keep waiting). Form detection runs have no list endpoint — keep the run ID. Follow any llmContext guidance included in results.ExtendExtend
PluginrequiredAI - Get (or wait on) a parse runget · Get the state and output of a parse run (parse group) — resume a status: "running" run or inspect a failed one. wait: true blocks until terminal or wait-budget expiry (call again to keep waiting). Supports pageRange/maxChars/rawBlocks output slicing as in parse_document. Follow any llmContext guidance included in results.ExtendExtend
PluginrequiredAI - Get (or wait on) a split runget · Get the state and output of a split run (split group) — resume a status: "running" run or inspect a failed one. wait: true blocks until terminal or wait-budget expiry (call again to keep waiting). Follow any llmContext guidance included in results.ExtendExtend
PluginrequiredAI - Get (or wait on) a workflow runget · Get the state and output of a workflow run (workflows group) — resume a status: "running" run or inspect a failed one. wait: true blocks until terminal or wait-budget expiry (call again to keep waiting). Workflow runs commonly take minutes to hours — repeated running responses are normal. Follow any llmContext guidance included in results.ExtendExtend
PluginrequiredAI - Get (or wait on) an edit runget · Get the state and output of an edit run (edit group) — resume a status: "running" run or inspect a failed one. wait: true blocks until terminal or wait-budget expiry (call again to keep waiting). Edit runs have no list endpoint — keep the run ID. Follow any llmContext guidance included in results.ExtendExtend
PluginrequiredAI - Get (or wait on) an extract runget · Get the state and output of an extract run (extract group) — resume a status: "running" run or inspect a failed one. wait: true blocks until terminal or wait-budget expiry (call again to keep waiting). Follow any llmContext guidance included in results.ExtendExtend
PluginrequiredAI - Get a classifier (or one of its versions)get · Get a classifier with its draft config, or one specific version's config via version (classify group). Use list_classifiers to discover IDs. Follow any llmContext guidance included in results.ExtendExtend
PluginrequiredAI - Get a classify batchget · Get the aggregate status of a classify batch (classify group) submitted by run_classify_batch. wait: true polls until terminal. Statuses: PENDING, PROCESSING, PROCESSED, FAILED, CANCELLED. Follow any llmContext guidance included in results.ExtendExtend
PluginrequiredAI - Get a parse batchget · Get the aggregate status of a parse batch (parse group) submitted by run_parse_batch. wait: true polls until terminal. Statuses: PENDING, PROCESSING, PROCESSED, FAILED, CANCELLED. Follow any llmContext guidance included in results.ExtendExtend
PluginrequiredAI - Get a split batchget · Get the aggregate status of a split batch (split group) submitted by run_split_batch. wait: true polls until terminal. Statuses: PENDING, PROCESSING, PROCESSED, FAILED, CANCELLED. Follow any llmContext guidance included in results.ExtendExtend
PluginrequiredAI - Get a splitter (or one of its versions)get · Get a splitter with its draft config, or one specific version's config via version (split group). Use list_splitters to discover IDs. Follow any llmContext guidance included in results.ExtendExtend
PluginrequiredAI - Get a workflow (or one of its versions)get · Get a workflow with its draft step graph, or one specific deployed version's steps via version (workflows group). Use list_workflows to discover IDs. Follow any llmContext guidance included in results.ExtendExtend
PluginrequiredAI - Get an evaluation runget · Get an evaluation run's status and accuracy metrics — this is the ONLY tool that returns them, not a get-batch tool (evaluations group). An evaluation is an async job: a fresh run reports PROCESSING, so pass wait: true to block until it finishes instead of polling in a loop. Metrics by resource type: extractors { accuracy, fieldMetrics per field path — each field has countExpected/countAccurate, and accuracy is aggregated across items, not per-item }; classifiers { accuracy, classificationMetrics with precision/recall/f1 per type }; splitters { precision, recall, f1, split counts }. Terminal statuses: PROCESSED, FAILED, CANCELLED. Follow any llmContext guidance included in results.ExtendExtend
PluginrequiredAI - Get an extract batchget · Get the aggregate status of an extract batch (extract group) submitted by run_extract_batch. wait: true polls until terminal. Statuses: PENDING, PROCESSING, PROCESSED, FAILED, CANCELLED. Follow any llmContext guidance included in results.ExtendExtend
PluginrequiredAI - Get an extractor (or one of its versions)get · Get an extractor with its draft config, or one specific version's config via version (extract group). Use list_extractors to discover IDs. Follow any llmContext guidance included in results.ExtendExtend
PluginrequiredAI - Get file metadata, download URL, or parsed contentsget · Get a file's metadata and a fresh presigned download URL — expires in ~15 minutes, re-call to refresh (files group). Set contents to also return parsed text; contents: null means "not parsed yet", not an error (run parse_document first). Split-produced child files carry parentSplit (source file, page range) in metadata. Follow any llmContext guidance included in results.ExtendExtend
PluginrequiredAI - Get the result of a user file uploadget · Check an upload link created by request_file_upload and get the uploaded file ids (files group). Call it on the user's message after they were shown the link — never in the same turn that shared it. Default is one instant status check; wait: true blocks until the user finishes or the wait budget runs out (call again to keep waiting). Follow any llmContext guidance included in results.ExtendExtend
PluginrequiredAI - List classifier versionslist · List a classifier's published (immutable) versions (classify group). Fetch one version's config with get_classifier. Follow any llmContext guidance included in results.ExtendExtend
PluginrequiredAI - List classifierslist · List the workspace's classifiers, newest first (classify group). Fetch a specific one's config with get_classifier. Follow any llmContext guidance included in results.ExtendExtend
PluginrequiredAI - List classify runslist · List recent classify runs, newest first (classify group). Filter rather than paginate: status, classifierId, batchId, fileNameContains. Follow any llmContext guidance included in results.ExtendExtend
PluginrequiredAI - List evaluation itemslist · List an evaluation set's items — file pairings only; expected outputs are not included in summaries (evaluations group). Item IDs feed update_evaluation_item / delete_evaluation_item and subset runs. Follow any llmContext guidance included in results.ExtendExtend
PluginrequiredAI - List evaluation setslist · List evaluation sets, optionally scoped to one extractor/classifier/splitter via entityId (evaluations group). There is no get-by-id tool — this list returns full set objects. Follow any llmContext guidance included in results.ExtendExtend
PluginrequiredAI - List extract runslist · List recent extract runs, newest first (extract group). Filter rather than paginate: status, extractorId, batchId, fileNameContains. Follow any llmContext guidance included in results.ExtendExtend
PluginrequiredAI - List extractor versionslist · List an extractor's published (immutable) versions (extract group). Fetch one version's config with get_extractor. Follow any llmContext guidance included in results.ExtendExtend
PluginrequiredAI - List extractorslist · List the workspace's extractors, newest first (extract group). Fetch a specific one's config with get_extractor. Follow any llmContext guidance included in results.ExtendExtend
PluginrequiredAI - List fileslist · List files in the workspace, newest first (files group). Filter with nameContains rather than paginating broadly. Use get_file for a download URL or parsed contents. Follow any llmContext guidance included in results.ExtendExtend
PluginrequiredAI - List parse runslist · List recent parse runs, newest first (parse group). Filter rather than paginate: status, batchId, fileNameContains. Results come back in the upstream default order — this endpoint does not support sorting. Follow any llmContext guidance included in results.ExtendExtend
PluginrequiredAI - List split runslist · List recent split runs, newest first (split group). Filter rather than paginate: status, splitterId, batchId, fileNameContains. Follow any llmContext guidance included in results.ExtendExtend
PluginrequiredAI - List splitter versionslist · List a splitter's published (immutable) versions (split group). Fetch one version's config with get_splitter. Follow any llmContext guidance included in results.ExtendExtend
PluginrequiredAI
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.