metadata
Workspace metadata: the field VOCABULARY (fields-list), lexical value search (search), metadata+content matching (compound-search), extraction eligibility (eligible), and folding near-duplicate field names together (fields-merge, DESTRUCTIVE). RETIRED: metadata TEMPLATES and SAVED VIEWS are gone — the platform removed those endpoints, so template-, nodes-, auto-match, preview-match, suggest-fields, extract-all and view-*/views-list no longer exist here. Per-file extraction lives on the storage tool (metadata-extract for one file, metadata-extract-all for a folder subtree).
Input Schema
| Name | Required | Description | Default |
|---|---|---|---|
| q | No | search keyword(s). 1-1024 chars. Multi-token = ALL tokens (AND); case-insensitive; substring for <=64 chars, else whole-word. | |
| limit | No | search: page size (1-100, default 100). | |
| action | Yes | Operation. Use 'describe' for full action reference. | |
| cursor | No | eligible/fields-list: opaque pagination cursor from a prior page's response — echo it back verbatim rather than constructing one. Omit for the first page. | |
| offset | No | search: results to skip (default 0). offset+limit must stay <= 10000. | |
| confirm | No | fields-merge: must be 'true' to proceed. The merge is IRREVERSIBLE and workspace-wide; the gate exists because the platform's guards check DATA safety, not whether the two fields mean the same thing. | |
| page_size | No | eligible/fields-list: cursor page size (1-250, default 100). Server caps at 250. | |
| template_id | No | RETIRED — metadata templates were removed, so there is no template to scope to. This tool REFUSES it on EVERY action: supplying it FAILS the request rather than narrowing it (the platform hard-refuses it too, and OPTIONS deliberately does not advertise it). Narrow by FIELD NAME instead — list valid names with `metadata action=fields-list`. | |
| source_field | No | fields-merge: the field NAME that is FOLDED AWAY and stops existing. Names, not ids. | |
| target_field | No | fields-merge: the field NAME that SURVIVES and absorbs the source's values. | |
| workspace_id | No | Workspace opaque ID (19-digit numeric ID or custom name). Required for every action. | |
| content_query | No | compound-search: free-text query run against INDEXED FILE CONTENT (1-1024 chars). Required for compound-search and AND-ed with metadata_filters — a file matches only if it satisfies BOTH. A file with no indexed content can never match, however well its metadata fits. | |
| display_limit | No | search: how many items to return post-fetch. Default 10, max 100 (the backend fetches at most 100 per page — a higher value has no effect; use offset to page past 100). | |
| describe_action | No | When action='describe', narrow the output to ONE action's full params/notes (e.g. 'fields-list'). Omit to get the compact action index. | |
| metadata_filters | No | compound-search: JSON predicate array `[{"field","operator","value"}]` (sent to the platform as `filters`). Required for compound-search. |