{"version":"2.0.0","catalog_revision":"07a373e389289e05","endpoint":"https://api-v2.hive-loop.com/mcp","documentation":"https://www.hivekind.ai/docs/mcp","instructions":"Hivekind acts only in the signed-in user's workspace. Never guess IDs or pass workspace_id, user_id or actor_id. Resolve exact entities and scope before writes. Paid work, sends, publishing and destructive changes need the user's exact authorization; obey operation-specific approvals and provider readiness.\n\nThis is V2 domain discovery. tools/list contains domain entrypoints, not business operations. Pick the relevant listed domain tool:\n- accounts: accounts, contacts, notes, tags and general imports\n- intelligence: research, discovery, ICP, targets and analytics\n- content: Library messaging/product/personas and playbooks\n- campaign: campaigns, audiences, Hiveloops, drafts and lifecycle\n- inbox: messages, threads, states and replies\n- events: events, roster imports, scoring, attendance and assignments\n- pages: briefs, drafts, templates, generation/publishing and analytics\n- data_quality: record edits, owner changes, employment, duplicates and merge\n- network: LinkedIn capacity, relationships, actions and consented paths\n- signals: recorded signals, feedback and industry scouts\n- workspace: health, connectors, suppression, evidence, memory and jobs\n- partners: Partner records, routes and Partner-scoped imports\n\nCall the domain with params={action:\"discover\",query:\"the intended task\"}; then params={action:\"describe\",operation:\"the exact returned .v2 ID\"}. Read its schema, prerequisites, effects, billing and completion rules. Invoke through the same domain with params={action:\"invoke\",operation:\"that ID\",arguments:{...},operation_id:\"a UUID\"}. Reuse the UUID only for retries of the same write. Discovery never changes tools/list. A focused URL exposes one domain; use the canonical /mcp connection for cross-domain work.\n\nPreview names do not guarantee read-only behavior: event assignment previews save suggestions. Page generation may publish. Campaign launch prepares a Hiveloop; starting it can send. Phone outreach is unsupported. Create one campaign for a multi-account request unless asked otherwise. Keep queries bounded, follow pagination and poll queued job IDs through workspace. Unknown/syncing LinkedIn evidence is not proof that a company is cold. Use targets.preview.v2 for contact-level path/signal/ICP selection. General company imports and Partner imports have different scopes. Event rosters use events.import.*; people imports use prospects.import.*.\n\nV1 IDs, old generic runners and /mcp/legacy are retired. Refresh cached catalogs after migration. Never replay an uncertain old write under a new ID. Instructions and exact contracts: https://www.hivekind.ai/docs/mcp\n","domain_input_schema":{"$defs":{"DescribeAction":{"additionalProperties":false,"properties":{"action":{"const":"describe","title":"Action","type":"string"},"operation":{"description":"Exact .v2 operation returned by this domain's discover action.","maxLength":128,"minLength":1,"title":"Operation","type":"string"}},"required":["action","operation"],"title":"DescribeAction","type":"object"},"DiscoverAction":{"additionalProperties":false,"properties":{"action":{"const":"discover","title":"Action","type":"string"},"query":{"default":"","description":"Task or exact V2 operation ID. Empty lists this domain's authorized operations.","maxLength":200,"title":"Query","type":"string"},"limit":{"default":8,"description":"Maximum operation summaries, without full schemas.","maximum":20,"minimum":1,"title":"Limit","type":"integer"},"cursor":{"default":0,"description":"Zero-based offset returned as next_cursor; restart at zero when the catalog revision changes.","maximum":10000,"minimum":0,"title":"Cursor","type":"integer"}},"required":["action"],"title":"DiscoverAction","type":"object"},"InvokeAction":{"additionalProperties":false,"properties":{"action":{"const":"invoke","title":"Action","type":"string"},"operation":{"description":"Exact .v2 operation previously described within this domain.","maxLength":128,"minLength":1,"title":"Operation","type":"string"},"arguments":{"additionalProperties":true,"description":"Payload validated against the selected operation's input_schema, without workspace or actor identity.","title":"Arguments","type":"object"},"operation_id":{"anyOf":[{"format":"uuid","type":"string"},{"type":"null"}],"default":null,"description":"Required for non-read operations. Reuse for retries of identical work; use a new UUID for new work.","title":"Operation Id"}},"required":["action","operation"],"title":"InvokeAction","type":"object"}},"properties":{"params":{"discriminator":{"mapping":{"describe":"#/$defs/DescribeAction","discover":"#/$defs/DiscoverAction","invoke":"#/$defs/InvokeAction"},"propertyName":"action"},"oneOf":[{"$ref":"#/$defs/DiscoverAction"},{"$ref":"#/$defs/DescribeAction"},{"$ref":"#/$defs/InvokeAction"}],"title":"Params"}},"required":["params"],"title":"DomainCallInputV2","type":"object"},"domains":[{"id":"accounts","label":"Accounts and contacts","tool":"domain.accounts.v2","recipe":"Search accounts/contacts; resolve exact IDs before adding or changing notes/tags. General company and prospect imports: preview the entire intended scope, review errors and cost, then invoke the matching start operation with its exact import_token and a stable operation_id. Poll workspace jobs; partial coverage is not completion."},{"id":"intelligence","label":"Intelligence","tool":"domain.intelligence.v2","recipe":"Use existing account search for saved companies and discovery preview for new companies. Inspect actor-selected ICP rubrics and account scope before grading/research; explain the quote and obtain exact authorization. Poll job/discovery status. Analytics reports describe recorded evidence, not causal attribution or guaranteed historical coverage."},{"id":"content","label":"Content","tool":"domain.content.v2","recipe":"Read Library status/context, resolve the existing record, then use the matching messaging/product/persona/ICP/signal-definition writer. A proposal does not save a record: review the proposal and invoke the documented save operation when authorized. Search/get playbooks before creating, changing or binding them."},{"id":"campaign","label":"Campaigns","tool":"domain.campaign.v2","recipe":"Resolve accounts and a supported playbook; preview scope and create one campaign for the requested multi-account program. Add the exact audience, inspect LinkedIn readiness and prepare Hiveloops/drafts. Read back and approve the requested drafts. Launch prepares a sequence; sendability checks and explicit start are separate. Starting/resuming can send. Phone playbooks are unsupported."},{"id":"inbox","label":"Inbox","tool":"domain.inbox.v2","recipe":"Search the inbox and resolve item/contact IDs; read the item, thread and message context. Confirm the exact reply/recipient before replies.send.v2; use a stable UUID for retries and inspect the returned evidence. Changing inbox state is a separate workspace write."},{"id":"events","label":"Events","tool":"domain.events.v2","recipe":"Resolve an event before reading its roster, attendance or assignments. Ingest rosters through events.import.preview.v2 then events.import.start.v2 using the exact token; people-only imports belong to Accounts. Preview grading/enrichment scope and cost before starting. Assignment preview persists suggestions: obtain authorization and require read-back; confirmation is a separate action."},{"id":"pages","label":"Pages","tool":"domain.pages.v2","recipe":"Resolve the account and an existing ready page template; read existing pages before creating. Use the user's approved notes verbatim in the brief, then create/update the draft and require read-back. Failed verification is not permission to create a duplicate. Generation may publish and consume credits; request explicit approval before generating/publishing. Inspect saved page and engagement separately."},{"id":"data-quality","label":"Data quality","tool":"domain.data_quality.v2","recipe":"Search the exact account/contact and inspect current values before changes. Employment verification has preview/start/status steps. Read duplicates, preview the exact merge and review survivor/field effects before execute. Deletes, moves and owner reassignment require exact scope authorization; reconcile uncertain writes rather than repeat under another ID."},{"id":"network","label":"Network","tool":"domain.network.v2","recipe":"Read the signed-in user's LinkedIn account, capacity and relationship evidence. Check actor versus teammate consented paths explicitly. Preview the exact action, then schedule only with its real approved proposal and sufficient provider readiness. Unknown/syncing evidence is not proof that an account is cold; do not infer permission to message."},{"id":"signals","label":"Signals","tool":"domain.signals.v2","recipe":"Search recorded signals and retain source/time coverage. Feedback updates workspace state. Inspect scout configuration before create/update/delete; a scout can start downstream monitoring and paid provider work. Read discoveries and exact evidence without inferring collection completeness."},{"id":"workspace","label":"Workspace and operations","tool":"domain.workspace.v2","recipe":"Start with workspace.status.get.v2 and connector health for blockers; use suppression checks before outreach. Resolve evidence and accepted memory without inventing provenance. Poll jobs.status.get.v2 with the original job_id for imports and queued work, including jobs created before migration; waiting/partial results are not terminal success."},{"id":"partners","label":"Partners","tool":"domain.partners.v2","recipe":"Resolve/save the Partner with exact ownership and relationship context, inspect routes and unified account access. Preview the full network company list with mandatory Partner context, review the exact token/cost, then start and poll workspace jobs. Partner network imports cannot replace general company imports. Archive invalidates usable routes."}],"operations":[{"operation":"accounts.archive.v2","domain":"accounts","tool":"domain.accounts.v2","title":"Archive or restore accounts","purpose":"Park accounts the workspace is no longer working, so they stop appearing in lists, scoring, enrichment and outreach without being deleted. Pass restore true to bring archived accounts back.","side_effects":"Archives the accounts and their contacts, PAUSES any in-flight HiveLoops, cancels their pending drafts, and cancels their Parallel signal monitors. Restoring revives the accounts and contacts, but paused loops stay paused and signal monitoring must be re-enabled by hand.","permission":"execute","required_scopes":["actions:execute"],"requires_operation_id":true,"billing":"No gateway rate is configured. Check the Core workflow preview/quote for downstream charges and final settlement.","required_resolved_fields":[],"next_call":{"tool":"domain.accounts.v2","arguments":{"params":{"action":"describe","operation":"accounts.archive.v2"}}},"catalog_revision":"07a373e389289e05","when_not_to_use":"Do not use this to remove a duplicate — merge it with accounts.merge.execute.v2. Do not use it to stop one campaign; pause the campaign instead.","description":"Use when: Park accounts the workspace is no longer working, so they stop appearing in lists, scoring, enrichment and outreach without being deleted. Pass restore true to bring archived accounts back. Returns/does: Archives the accounts and their contacts, PAUSES any in-flight HiveLoops, cancels their pending drafts, and cancels their Parallel signal monitors. Restoring revives the accounts and contacts, but paused loops stay paused and signal monitoring must be re-enabled by hand. Do not use when: Do not use this to remove a duplicate — merge it with accounts.merge.execute.v2. Do not use it to stop one campaign; pause the campaign instead. Identity comes from OAuth. Resolve exact IDs; use typed enums and bounded limits. Billing: Gateway and downstream billing depend on the operation; check its preview/quote and returned billing.","input_schema":{"additionalProperties":false,"properties":{"action_proposal_id":{"anyOf":[{"format":"uuid","type":"string"},{"type":"null"}],"default":null,"description":"Optional. Hivekind fills this from the MCP consent grant.","title":"Action Proposal Id"},"account_ids":{"description":"Accounts to archive, or to restore when restore=true.","items":{"format":"uuid","type":"string"},"maxItems":500,"minItems":1,"title":"Account Ids","type":"array"},"restore":{"default":false,"description":"False archives the accounts; true restores previously archived ones. Restoring does NOT resume paused HiveLoops or re-enable signal monitoring — see not_restored on the result.","title":"Restore","type":"boolean"}},"required":["account_ids"],"title":"McpMcpPublicAccountsArchiveInputV2","type":"object"},"output_schema":{"additionalProperties":false,"description":"V2 result for accounts.archive.v2; preserves the established validators.","properties":{"restored":{"default":false,"description":"True when this call restored rather than archived.","title":"Restored","type":"boolean"},"account_ids":{"default":[],"description":"Accounts whose status actually changed.","items":{"type":"string"},"maxItems":500,"title":"Account Ids","type":"array"},"skipped":{"default":[],"description":"Ids asked about but not changed: outside the workspace, or already in the requested state.","items":{"type":"string"},"maxItems":500,"title":"Skipped","type":"array"},"contacts_changed":{"default":0,"description":"Contacts archived alongside their account, or restored with it.","minimum":0,"title":"Contacts Changed","type":"integer"},"activations_paused":{"default":0,"minimum":0,"title":"Activations Paused","type":"integer"},"drafts_cancelled":{"default":0,"minimum":0,"title":"Drafts Cancelled","type":"integer"},"monitors_archived":{"default":0,"minimum":0,"title":"Monitors Archived","type":"integer"},"not_restored":{"default":[],"description":"Restore only: what the caller must still do by hand. Repeat these to the user verbatim.","items":{"type":"string"},"maxItems":8,"title":"Not Restored","type":"array"},"errors":{"default":[],"items":{"type":"string"},"maxItems":32,"title":"Errors","type":"array"}},"title":"PublicAccountsArchiveResultV2","type":"object"},"example":{"tool":"domain.accounts.v2","arguments":{"params":{"action":"invoke","operation":"accounts.archive.v2","arguments":{"account_ids":["00000000-0000-4000-8000-000000000001"]},"operation_id":"00000000-0000-4000-8000-000000000003"}},"notice":"Fictional fixture IDs and example text. Resolve real IDs, use returned preview tokens and approve exact side effects before execution. Input validation is not proof of provider readiness or a successful business outcome."},"workflow_steps":[],"approval_policy":"exact_scope_single_action","idempotency_policy":"approved_action_outbox","gateway_credit_code":null,"identity":"Workspace, actor and consent come from OAuth; do not supply identity fields.","retry":"Keep the same operation and operation_id when retrying identical work. Reconcile an uncertain result before new work; never replay an old V1 write under a new V2 ID.","completion":"Check status, execution_state, error_code, output and evidence/resource references. Queued work is not complete: poll jobs.status.get.v2 in domain.workspace.v2. For read-back verification require read_back_verified=true where returned; reconcile failures without creating another object.","result_envelope":{"status":"completed | partial | cancelled | failed","execution_state":"terminal | queued | reconciliation_required","output":"Completed results validate against output_schema; partial/reconciliation results can contain incomplete evidence and must not be treated as completion.","billing":"gateway_credits_spent, downstream_settlement, job_id; pending downstream settlement is not a final cost","references":"run_id, invocation_id, resource_refs, evidence_refs"},"documentation":"https://www.hivekind.ai/docs/mcp/accounts#accounts-archive-v2"},{"operation":"accounts.buyer_groups.get.v2","domain":"intelligence","tool":"domain.intelligence.v2","title":"Read an account's buying committee","purpose":"See who is on an account and what buying role each holds, ordered by influence.","side_effects":"Reads current workspace state.","permission":"read","required_scopes":["accounts:read"],"requires_operation_id":false,"billing":"No gateway credit charge; reads saved workspace data without starting paid provider work.","required_resolved_fields":[],"next_call":{"tool":"domain.intelligence.v2","arguments":{"params":{"action":"describe","operation":"accounts.buyer_groups.get.v2"}}},"catalog_revision":"07a373e389289e05","when_not_to_use":"Do not use this to search people across the workspace — that is contacts.search.v2.","description":"Use when: See who is on an account and what buying role each holds, ordered by influence. Returns/does: Reads the current authorized workspace state. Do not use when: Do not use this to search people across the workspace — that is contacts.search.v2. Identity comes from OAuth. Resolve exact IDs; use typed enums and bounded limits. Billing: Gateway and downstream billing depend on the operation; check its preview/quote and returned billing.","input_schema":{"additionalProperties":false,"properties":{"account_id":{"description":"Exact account UUID returned by a Hivekind search, list, get, preview, or resource call.","format":"uuid","title":"Account Id","type":"string"}},"required":["account_id"],"title":"McpPublicAccountsBuyerGroupsGetInputV2","type":"object"},"output_schema":{"$defs":{"BuyerGroupMemberV1":{"additionalProperties":false,"properties":{"contact_id":{"format":"uuid","title":"Contact Id","type":"string"},"first_name":{"anyOf":[{"maxLength":255,"type":"string"},{"type":"null"}],"default":null,"title":"First Name"},"last_name":{"anyOf":[{"maxLength":255,"type":"string"},{"type":"null"}],"default":null,"title":"Last Name"},"email":{"anyOf":[{"maxLength":320,"type":"string"},{"type":"null"}],"default":null,"title":"Email"},"title":{"anyOf":[{"maxLength":255,"type":"string"},{"type":"null"}],"default":null,"title":"Title"},"linkedin_url":{"anyOf":[{"maxLength":500,"type":"string"},{"type":"null"}],"default":null,"title":"Linkedin Url"},"buyer_role":{"anyOf":[{"maxLength":64,"type":"string"},{"type":"null"}],"default":null,"title":"Buyer Role"},"needs_review":{"default":false,"description":"The classifier was below its 0.70 confidence threshold, so the role is a suggestion held for review, not a committed value.","title":"Needs Review","type":"boolean"}},"required":["contact_id"],"title":"BuyerGroupMemberV1","type":"object"}},"additionalProperties":false,"description":"V2 result for accounts.buyer_groups.get.v2; preserves the established validators.","properties":{"account_id":{"format":"uuid","title":"Account Id","type":"string"},"total_contacts":{"default":0,"minimum":0,"title":"Total Contacts","type":"integer"},"roles_identified":{"default":0,"minimum":0,"title":"Roles Identified","type":"integer"},"unclassified_contacts":{"default":0,"minimum":0,"title":"Unclassified Contacts","type":"integer"},"sorted_roles":{"default":[],"items":{"type":"string"},"maxItems":32,"title":"Sorted Roles","type":"array"},"members":{"default":[],"items":{"$ref":"#/$defs/BuyerGroupMemberV1"},"maxItems":500,"title":"Members","type":"array"},"needs_review":{"default":[],"items":{"$ref":"#/$defs/BuyerGroupMemberV1"},"maxItems":200,"title":"Needs Review","type":"array"}},"required":["account_id"],"title":"PublicAccountsBuyerGroupsGetResultV2","type":"object"},"example":{"tool":"domain.intelligence.v2","arguments":{"params":{"action":"invoke","operation":"accounts.buyer_groups.get.v2","arguments":{"account_id":"00000000-0000-4000-8000-000000000001"},"operation_id":"00000000-0000-4000-8000-000000000003"}},"notice":"Fictional fixture IDs and example text. Resolve real IDs, use returned preview tokens and approve exact side effects before execution. Input validation is not proof of provider readiness or a successful business outcome."},"workflow_steps":[],"approval_policy":null,"idempotency_policy":"read_only","gateway_credit_code":null,"identity":"Workspace, actor and consent come from OAuth; do not supply identity fields.","retry":"Keep the same operation and operation_id when retrying identical work. Reconcile an uncertain result before new work; never replay an old V1 write under a new V2 ID.","completion":"Check status, execution_state, error_code, output and evidence/resource references. Queued work is not complete: poll jobs.status.get.v2 in domain.workspace.v2. For read-back verification require read_back_verified=true where returned; reconcile failures without creating another object.","result_envelope":{"status":"completed | partial | cancelled | failed","execution_state":"terminal | queued | reconciliation_required","output":"Completed results validate against output_schema; partial/reconciliation results can contain incomplete evidence and must not be treated as completion.","billing":"gateway_credits_spent, downstream_settlement, job_id; pending downstream settlement is not a final cost","references":"run_id, invocation_id, resource_refs, evidence_refs"},"documentation":"https://www.hivekind.ai/docs/mcp/intelligence#accounts-buyer_groups-get-v2"},{"operation":"accounts.classify_buyers.v2","domain":"intelligence","tool":"domain.intelligence.v2","title":"Classify contacts into buying roles","purpose":"Place an account's existing contacts into buying roles. Declines when the account has too few contacts to be a committee.","side_effects":"Queues classification and meters one unit per contact classified. Poll jobs.status.get.v2.","permission":"execute","required_scopes":["actions:execute"],"requires_operation_id":true,"billing":"buyer_classification","required_resolved_fields":[],"next_call":{"tool":"domain.intelligence.v2","arguments":{"params":{"action":"describe","operation":"accounts.classify_buyers.v2"}}},"catalog_revision":"07a373e389289e05","when_not_to_use":"Do not use this to find people you do not have; it only organises the contacts already on the account.","description":"Use when: Place an account's existing contacts into buying roles. Declines when the account has too few contacts to be a committee. Returns/does: Queues classification and meters one unit per contact classified. Poll jobs.status.get.v2. Do not use when: Do not use this to find people you do not have; it only organises the contacts already on the account. Identity comes from OAuth. Resolve exact IDs; use typed enums and bounded limits. Billing: buyer_classification","input_schema":{"additionalProperties":false,"properties":{"action_proposal_id":{"anyOf":[{"format":"uuid","type":"string"},{"type":"null"}],"default":null,"description":"Optional. Hivekind fills this from the MCP consent grant.","title":"Action Proposal Id"},"account_id":{"description":"Exact account UUID returned by a Hivekind search, list, get, preview, or resource call.","format":"uuid","title":"Account Id","type":"string"},"methodology":{"anyOf":[{"maxLength":64,"type":"string"},{"type":"null"}],"default":null,"description":"Sales methodology whose role list to classify against. Omit for the workspace default.","title":"Methodology"},"min_contacts":{"default":2,"description":"Do nothing unless the account has at least this many contacts. One contact is not a committee — labelling a solo founder the economic buyer costs a credit and says nothing. Pass 1 to classify regardless.","maximum":1000,"minimum":1,"title":"Min Contacts","type":"integer"},"include_classified":{"default":false,"description":"By default only contacts with no committed buyer_role are sent, so re-running is cheap. Set true to reclassify everyone.","title":"Include Classified","type":"boolean"}},"required":["account_id"],"title":"McpMcpPublicAccountsClassifyBuyersInputV2","type":"object"},"output_schema":{"additionalProperties":false,"description":"V2 result for accounts.classify_buyers.v2; preserves the established validators.","properties":{"account_id":{"format":"uuid","title":"Account Id","type":"string"},"job_id":{"anyOf":[{"maxLength":255,"type":"string"},{"type":"null"}],"default":null,"title":"Job Id"},"queued":{"default":false,"title":"Queued","type":"boolean"},"contact_count":{"default":0,"minimum":0,"title":"Contact Count","type":"integer"},"skipped_reason":{"anyOf":[{"enum":["below_min_contacts","nothing_unclassified"],"type":"string"},{"type":"null"}],"default":null,"title":"Skipped Reason"}},"required":["account_id"],"title":"PublicAccountsClassifyBuyersResultV2","type":"object"},"example":{"tool":"domain.intelligence.v2","arguments":{"params":{"action":"invoke","operation":"accounts.classify_buyers.v2","arguments":{"account_id":"00000000-0000-4000-8000-000000000001"},"operation_id":"00000000-0000-4000-8000-000000000003"}},"notice":"Fictional fixture IDs and example text. Resolve real IDs, use returned preview tokens and approve exact side effects before execution. Input validation is not proof of provider readiness or a successful business outcome."},"workflow_steps":[],"approval_policy":"exact_scope_single_action","idempotency_policy":"approved_action_outbox","gateway_credit_code":null,"identity":"Workspace, actor and consent come from OAuth; do not supply identity fields.","retry":"Keep the same operation and operation_id when retrying identical work. Reconcile an uncertain result before new work; never replay an old V1 write under a new V2 ID.","completion":"Check status, execution_state, error_code, output and evidence/resource references. Queued work is not complete: poll jobs.status.get.v2 in domain.workspace.v2. For read-back verification require read_back_verified=true where returned; reconcile failures without creating another object.","result_envelope":{"status":"completed | partial | cancelled | failed","execution_state":"terminal | queued | reconciliation_required","output":"Completed results validate against output_schema; partial/reconciliation results can contain incomplete evidence and must not be treated as completion.","billing":"gateway_credits_spent, downstream_settlement, job_id; pending downstream settlement is not a final cost","references":"run_id, invocation_id, resource_refs, evidence_refs"},"documentation":"https://www.hivekind.ai/docs/mcp/intelligence#accounts-classify_buyers-v2"},{"operation":"accounts.delete.v2","domain":"data-quality","tool":"domain.data_quality.v2","title":"Delete an account","purpose":"Permanently remove an account that should not be in the workspace at all — a bad import, a test record, a company entered twice under different domains that is not worth merging. Call it first with dry_run true (the default) and show the user what would go; call again with dry_run false only after they confirm.","side_effects":"Irreversible. Deletes the account with ALL its contacts, their HiveLoop history, messages, drafts and notes, its landing pages and ICP scores, and cancels its signal monitors. dry_run true (the default) previews the counts and writes nothing.","permission":"execute","required_scopes":["actions:execute"],"requires_operation_id":true,"billing":"No gateway rate is configured. Check the Core workflow preview/quote for downstream charges and final settlement.","required_resolved_fields":[],"next_call":{"tool":"domain.data_quality.v2","arguments":{"params":{"action":"describe","operation":"accounts.delete.v2"}}},"catalog_revision":"07a373e389289e05","when_not_to_use":"Do not use this to stop working an account — archive it with accounts.archive.v2, which is reversible. Do not use it for a duplicate of another account — accounts.merge.execute.v2 keeps the history. It refuses while a contact on the account is in a running or paused HiveLoop, or while a Channel Partner record is built on it; the result says which, so tell the user what to stop first rather than retrying.","description":"Use when: Permanently remove an account that should not be in the workspace at all — a bad import, a test record, a company entered twice under different domains that is not worth merging. Call it first with dry_run true (the default) and show the user what would go; call again with dry_run false only after they confirm. Returns/does: Irreversible. Deletes the account with ALL its contacts, their HiveLoop history, messages, drafts and notes, its landing pages and ICP scores, and cancels its signal monitors. dry_run true (the default) previews the counts and writes nothing. Do not use when: Do not use this to stop working an account — archive it with accounts.archive.v2, which is reversible. Do not use it for a duplicate of another account — accounts.merge.execute.v2 keeps the history. It refuses while a contact on the account is in a running or paused HiveLoop, or while a Channel Partner record is built on it; the result says which, so tell the user what to stop first rather than retrying. Identity comes from OAuth. Resolve exact IDs; use typed enums and bounded limits. Billing: Gateway and downstream billing depend on the operation; check its preview/quote and returned billing.","input_schema":{"additionalProperties":false,"properties":{"action_proposal_id":{"anyOf":[{"format":"uuid","type":"string"},{"type":"null"}],"default":null,"description":"Optional. Hivekind fills this from the MCP consent grant.","title":"Action Proposal Id"},"account_id":{"description":"Exact account UUID returned by a Hivekind search, list, get, preview, or resource call.","format":"uuid","title":"Account Id","type":"string"},"dry_run":{"default":true,"description":"True (the default) reports what would be deleted and writes nothing. Show that to the user, then call again with false.","title":"Dry Run","type":"boolean"}},"required":["account_id"],"title":"McpMcpAccountsDeleteInputV2","type":"object"},"output_schema":{"$defs":{"DeletionBlockerV1":{"additionalProperties":false,"properties":{"code":{"description":"live_hiveloop or channel_partner.","maxLength":64,"minLength":1,"title":"Code","type":"string"},"message":{"maxLength":1000,"minLength":1,"title":"Message","type":"string"},"loops":{"default":[],"description":"Names of the running or paused HiveLoops holding the record.","items":{"type":"string"},"maxItems":50,"title":"Loops","type":"array"}},"required":["code","message"],"title":"DeletionBlockerV1","type":"object"}},"additionalProperties":false,"properties":{"entity_type":{"enum":["account","contact"],"title":"Entity Type","type":"string"},"entity_id":{"maxLength":64,"minLength":1,"title":"Entity Id","type":"string"},"name":{"anyOf":[{"maxLength":255,"type":"string"},{"type":"null"}],"default":null,"title":"Name"},"dry_run":{"title":"Dry Run","type":"boolean"},"deleted":{"default":false,"title":"Deleted","type":"boolean"},"can_delete":{"title":"Can Delete","type":"boolean"},"blockers":{"default":[],"items":{"$ref":"#/$defs/DeletionBlockerV1"},"maxItems":8,"title":"Blockers","type":"array"},"will_delete":{"additionalProperties":{"type":"integer"},"description":"Counts of what goes with the record: loop_activations, messages, drafts, notes, and for an account also contacts, signal_monitors and campaign_memberships.","title":"Will Delete","type":"object"}},"required":["entity_type","entity_id","dry_run","can_delete"],"title":"AccountsDeleteResultV2","type":"object"},"example":{"tool":"domain.data_quality.v2","arguments":{"params":{"action":"invoke","operation":"accounts.delete.v2","arguments":{"account_id":"00000000-0000-4000-8000-000000000001"},"operation_id":"00000000-0000-4000-8000-000000000003"}},"notice":"Fictional fixture IDs and example text. Resolve real IDs, use returned preview tokens and approve exact side effects before execution. Input validation is not proof of provider readiness or a successful business outcome."},"workflow_steps":[],"approval_policy":"exact_scope_single_action","idempotency_policy":"approved_action_outbox","gateway_credit_code":null,"identity":"Workspace, actor and consent come from OAuth; do not supply identity fields.","retry":"Keep the same operation and operation_id when retrying identical work. Reconcile an uncertain result before new work; never replay an old V1 write under a new V2 ID.","completion":"Check status, execution_state, error_code, output and evidence/resource references. Queued work is not complete: poll jobs.status.get.v2 in domain.workspace.v2. For read-back verification require read_back_verified=true where returned; reconcile failures without creating another object.","result_envelope":{"status":"completed | partial | cancelled | failed","execution_state":"terminal | queued | reconciliation_required","output":"Completed results validate against output_schema; partial/reconciliation results can contain incomplete evidence and must not be treated as completion.","billing":"gateway_credits_spent, downstream_settlement, job_id; pending downstream settlement is not a final cost","references":"run_id, invocation_id, resource_refs, evidence_refs"},"documentation":"https://www.hivekind.ai/docs/mcp/data-quality#accounts-delete-v2"},{"operation":"accounts.discovery.preview.v2","domain":"intelligence","tool":"domain.intelligence.v2","title":"Preview account discovery","purpose":"You want new companies outside the workspace and need the exact rubric, order size, credit quote, and conflict state before starting.","side_effects":"No write, provider query, grading, account creation, or charge.","permission":"propose","required_scopes":["accounts:read"],"requires_operation_id":true,"billing":"Free. Returns the exact maximum delivery charge.","required_resolved_fields":[],"next_call":{"tool":"domain.intelligence.v2","arguments":{"params":{"action":"describe","operation":"accounts.discovery.preview.v2"}}},"catalog_revision":"07a373e389289e05","when_not_to_use":"You are searching accounts already in Hivekind; use accounts.search.v2 instead.","description":"Use when: You want new companies outside the workspace and need the exact rubric, order size, credit quote, and conflict state before starting. Returns/does: No write, provider query, grading, account creation, or charge. Do not use when: You are searching accounts already in Hivekind; use accounts.search.v2 instead. Identity comes from OAuth. Resolve exact IDs; use typed enums and bounded limits. Billing: Free. Returns the exact maximum delivery charge.","input_schema":{"additionalProperties":false,"properties":{"count":{"default":25,"description":"How many accounts to deliver. This is an order size, not a search limit: raising it grades proportionally more companies and costs proportionally more.","maximum":100,"minimum":1,"title":"Count","type":"integer"},"rubric_id":{"anyOf":[{"format":"uuid","type":"string"},{"type":"null"}],"default":null,"description":"Rubric to discover against. Omit for the caller's active one.","title":"Rubric Id"},"owner_id":{"anyOf":[{"format":"uuid","type":"string"},{"type":"null"}],"default":null,"description":"Who the delivered accounts are assigned to. Omit to let it resolve: to you when you grade against this rubric, otherwise to its sole holder. An account is graded against its owner's rubric, so an owner who does not hold this one is refused, as is a rubric nobody holds — preview it to see the resolved owner, or the reason there is none.","title":"Owner Id"},"recompile":{"default":false,"description":"Re-author the Clay query instead of reusing the pinned one. Authoring is an LLM step and is not stable, so the new query will not be the old query. Use this when the rubric itself has changed — not to retry a week that returned few accounts.","title":"Recompile","type":"boolean"}},"title":"McpAccountsDiscoveryPreviewInputV2","type":"object"},"output_schema":{"additionalProperties":false,"properties":{"rubric_id":{"format":"uuid","title":"Rubric Id","type":"string"},"rubric_name":{"default":"","maxLength":255,"title":"Rubric Name","type":"string"},"owner_id":{"anyOf":[{"format":"uuid","type":"string"},{"type":"null"}],"default":null,"title":"Owner Id"},"owner_name":{"anyOf":[{"maxLength":255,"type":"string"},{"type":"null"}],"default":null,"title":"Owner Name"},"owner_blocker":{"anyOf":[{"maxLength":500,"type":"string"},{"type":"null"}],"default":null,"title":"Owner Blocker"},"requested_count":{"maximum":100,"minimum":1,"title":"Requested Count","type":"integer"},"credits_per_account":{"minimum":0,"title":"Credits Per Account","type":"number"},"estimated_credits":{"minimum":0,"title":"Estimated Credits","type":"number"},"available_credits":{"minimum":0,"title":"Available Credits","type":"number"},"can_afford":{"title":"Can Afford","type":"boolean"},"recompile":{"default":false,"title":"Recompile","type":"boolean"},"in_flight_run_id":{"anyOf":[{"format":"uuid","type":"string"},{"type":"null"}],"default":null,"title":"In Flight Run Id"},"in_flight_status":{"anyOf":[{"maxLength":32,"type":"string"},{"type":"null"}],"default":null,"title":"In Flight Status"}},"required":["rubric_id","requested_count","credits_per_account","estimated_credits","available_credits","can_afford"],"title":"AccountsDiscoveryPreviewResultV2","type":"object"},"example":{"tool":"domain.intelligence.v2","arguments":{"params":{"action":"invoke","operation":"accounts.discovery.preview.v2","arguments":{},"operation_id":"00000000-0000-4000-8000-000000000003"}},"notice":"Fictional fixture IDs and example text. Resolve real IDs, use returned preview tokens and approve exact side effects before execution. Input validation is not proof of provider readiness or a successful business outcome."},"workflow_steps":[],"approval_policy":null,"idempotency_policy":"read_only","gateway_credit_code":null,"identity":"Workspace, actor and consent come from OAuth; do not supply identity fields.","retry":"Keep the same operation and operation_id when retrying identical work. Reconcile an uncertain result before new work; never replay an old V1 write under a new V2 ID.","completion":"Check status, execution_state, error_code, output and evidence/resource references. Queued work is not complete: poll jobs.status.get.v2 in domain.workspace.v2. For read-back verification require read_back_verified=true where returned; reconcile failures without creating another object.","result_envelope":{"status":"completed | partial | cancelled | failed","execution_state":"terminal | queued | reconciliation_required","output":"Completed results validate against output_schema; partial/reconciliation results can contain incomplete evidence and must not be treated as completion.","billing":"gateway_credits_spent, downstream_settlement, job_id; pending downstream settlement is not a final cost","references":"run_id, invocation_id, resource_refs, evidence_refs"},"documentation":"https://www.hivekind.ai/docs/mcp/intelligence#accounts-discovery-preview-v2"},{"operation":"accounts.discovery.start.v2","domain":"intelligence","tool":"domain.intelligence.v2","title":"Start account discovery","purpose":"You approved the exact order returned by accounts.discovery.preview.v2 and want to discover, grade, and add new matching companies.","side_effects":"Queues a background provider workflow and adds delivered accounts. Poll accounts.discovery.status.get.v2.","permission":"execute","required_scopes":["actions:execute"],"requires_operation_id":true,"billing":"Billed per account delivered at the previewed rate; failed and undelivered accounts are free.","required_resolved_fields":[],"next_call":{"tool":"domain.intelligence.v2","arguments":{"params":{"action":"describe","operation":"accounts.discovery.start.v2"}}},"catalog_revision":"07a373e389289e05","when_not_to_use":"You have not previewed the order, need existing accounts, or another run for the rubric is active.","description":"Use when: You approved the exact order returned by accounts.discovery.preview.v2 and want to discover, grade, and add new matching companies. Returns/does: Queues a background provider workflow and adds delivered accounts. Poll accounts.discovery.status.get.v2. Do not use when: You have not previewed the order, need existing accounts, or another run for the rubric is active. Identity comes from OAuth. Resolve exact IDs; use typed enums and bounded limits. Billing: Billed per account delivered at the previewed rate; failed and undelivered accounts are free.","input_schema":{"additionalProperties":false,"properties":{"count":{"default":25,"description":"How many accounts to deliver. This is an order size, not a search limit: raising it grades proportionally more companies and costs proportionally more.","maximum":100,"minimum":1,"title":"Count","type":"integer"},"rubric_id":{"anyOf":[{"format":"uuid","type":"string"},{"type":"null"}],"default":null,"description":"Rubric to discover against. Omit for the caller's active one.","title":"Rubric Id"},"owner_id":{"anyOf":[{"format":"uuid","type":"string"},{"type":"null"}],"default":null,"description":"Who the delivered accounts are assigned to. Omit to let it resolve: to you when you grade against this rubric, otherwise to its sole holder. An account is graded against its owner's rubric, so an owner who does not hold this one is refused, as is a rubric nobody holds — preview it to see the resolved owner, or the reason there is none.","title":"Owner Id"},"recompile":{"default":false,"description":"Re-author the Clay query instead of reusing the pinned one. Authoring is an LLM step and is not stable, so the new query will not be the old query. Use this when the rubric itself has changed — not to retry a week that returned few accounts.","title":"Recompile","type":"boolean"},"action_proposal_id":{"anyOf":[{"format":"uuid","type":"string"},{"type":"null"}],"default":null,"description":"Optional. Hivekind fills this from the MCP consent grant.","title":"Action Proposal Id"}},"title":"McpMcpAccountsDiscoveryStartInputV2","type":"object"},"output_schema":{"additionalProperties":false,"properties":{"run_id":{"format":"uuid","title":"Run Id","type":"string"},"rubric_id":{"format":"uuid","title":"Rubric Id","type":"string"},"requested_count":{"minimum":0,"title":"Requested Count","type":"integer"},"status":{"default":"pending","enum":["pending","planning","harvesting","scoring","succeeded","failed","blocked"],"title":"Status","type":"string"},"queued":{"default":false,"title":"Queued","type":"boolean"},"pool_available":{"default":0,"minimum":0,"title":"Pool Available","type":"integer"}},"required":["run_id","rubric_id","requested_count"],"title":"AccountsDiscoveryStartResultV2","type":"object"},"example":{"tool":"domain.intelligence.v2","arguments":{"params":{"action":"invoke","operation":"accounts.discovery.start.v2","arguments":{},"operation_id":"00000000-0000-4000-8000-000000000003"}},"notice":"Fictional fixture IDs and example text. Resolve real IDs, use returned preview tokens and approve exact side effects before execution. Input validation is not proof of provider readiness or a successful business outcome."},"workflow_steps":[],"approval_policy":"exact_scope_single_action","idempotency_policy":"approved_action_outbox","gateway_credit_code":null,"identity":"Workspace, actor and consent come from OAuth; do not supply identity fields.","retry":"Keep the same operation and operation_id when retrying identical work. Reconcile an uncertain result before new work; never replay an old V1 write under a new V2 ID.","completion":"Check status, execution_state, error_code, output and evidence/resource references. Queued work is not complete: poll jobs.status.get.v2 in domain.workspace.v2. For read-back verification require read_back_verified=true where returned; reconcile failures without creating another object.","result_envelope":{"status":"completed | partial | cancelled | failed","execution_state":"terminal | queued | reconciliation_required","output":"Completed results validate against output_schema; partial/reconciliation results can contain incomplete evidence and must not be treated as completion.","billing":"gateway_credits_spent, downstream_settlement, job_id; pending downstream settlement is not a final cost","references":"run_id, invocation_id, resource_refs, evidence_refs"},"documentation":"https://www.hivekind.ai/docs/mcp/intelligence#accounts-discovery-start-v2"},{"operation":"accounts.discovery.status.get.v2","domain":"intelligence","tool":"domain.intelligence.v2","title":"Get account discovery status","purpose":"You have a discovery run_id, or need the latest run for an exact rubric, and want progress plus ranked delivered accounts.","side_effects":"Returns bounded progress, limitations, and delivered account IDs. Read only.","permission":"read","required_scopes":["accounts:read"],"requires_operation_id":false,"billing":"No gateway credit charge; reads saved workspace data without starting paid provider work.","required_resolved_fields":[],"next_call":{"tool":"domain.intelligence.v2","arguments":{"params":{"action":"describe","operation":"accounts.discovery.status.get.v2"}}},"catalog_revision":"07a373e389289e05","when_not_to_use":"You want to create a new order; preview it first.","description":"Use when: You have a discovery run_id, or need the latest run for an exact rubric, and want progress plus ranked delivered accounts. Returns/does: Returns bounded progress, limitations, and delivered account IDs. Read only. Do not use when: You want to create a new order; preview it first. Identity comes from OAuth. Resolve exact IDs; use typed enums and bounded limits. Billing: Gateway and downstream billing depend on the operation; check its preview/quote and returned billing.","input_schema":{"additionalProperties":false,"properties":{"run_id":{"anyOf":[{"format":"uuid","type":"string"},{"type":"null"}],"default":null,"description":"Omit for the most recent run in this workspace.","title":"Run Id"},"rubric_id":{"anyOf":[{"format":"uuid","type":"string"},{"type":"null"}],"default":null,"description":"Narrows the 'most recent run' lookup to one rubric. Ignored when run_id is given.","title":"Rubric Id"}},"title":"McpAccountsDiscoveryStatusInputV2","type":"object"},"output_schema":{"$defs":{"DiscoveredAccountV1":{"additionalProperties":false,"properties":{"account_id":{"format":"uuid","title":"Account Id","type":"string"},"name":{"maxLength":512,"title":"Name","type":"string"},"domain":{"anyOf":[{"maxLength":255,"type":"string"},{"type":"null"}],"default":null,"title":"Domain"},"industry":{"anyOf":[{"maxLength":255,"type":"string"},{"type":"null"}],"default":null,"title":"Industry"},"icp_score":{"anyOf":[{"maximum":100,"minimum":0,"type":"integer"},{"type":"null"}],"default":null,"title":"Icp Score"},"icp_grade":{"anyOf":[{"maxLength":8,"type":"string"},{"type":"null"}],"default":null,"title":"Icp Grade"},"rank":{"minimum":1,"title":"Rank","type":"integer"}},"required":["account_id","name","rank"],"title":"DiscoveredAccountV1","type":"object"}},"additionalProperties":false,"properties":{"run_id":{"format":"uuid","title":"Run Id","type":"string"},"rubric_id":{"format":"uuid","title":"Rubric Id","type":"string"},"status":{"enum":["pending","planning","harvesting","scoring","succeeded","failed","blocked"],"title":"Status","type":"string"},"requested_count":{"default":0,"minimum":0,"title":"Requested Count","type":"integer"},"delivered_count":{"default":0,"minimum":0,"title":"Delivered Count","type":"integer"},"short_delivery":{"default":false,"title":"Short Delivery","type":"boolean"},"pool_remaining":{"default":0,"minimum":0,"title":"Pool Remaining","type":"integer"},"unsearchable":{"default":[],"items":{"type":"string"},"maxItems":50,"title":"Unsearchable","type":"array"},"warnings":{"default":[],"items":{"type":"string"},"maxItems":20,"title":"Warnings","type":"array"},"accounts":{"default":[],"items":{"$ref":"#/$defs/DiscoveredAccountV1"},"maxItems":100,"title":"Accounts","type":"array"},"started_at":{"anyOf":[{"format":"date-time","type":"string"},{"type":"null"}],"default":null,"title":"Started At"},"completed_at":{"anyOf":[{"format":"date-time","type":"string"},{"type":"null"}],"default":null,"title":"Completed At"},"error_message":{"anyOf":[{"maxLength":2000,"type":"string"},{"type":"null"}],"default":null,"title":"Error Message"}},"required":["run_id","rubric_id","status"],"title":"AccountsDiscoveryStatusResultV2","type":"object"},"example":{"tool":"domain.intelligence.v2","arguments":{"params":{"action":"invoke","operation":"accounts.discovery.status.get.v2","arguments":{},"operation_id":"00000000-0000-4000-8000-000000000003"}},"notice":"Fictional fixture IDs and example text. Resolve real IDs, use returned preview tokens and approve exact side effects before execution. Input validation is not proof of provider readiness or a successful business outcome."},"workflow_steps":[],"approval_policy":null,"idempotency_policy":"read_only","gateway_credit_code":null,"identity":"Workspace, actor and consent come from OAuth; do not supply identity fields.","retry":"Keep the same operation and operation_id when retrying identical work. Reconcile an uncertain result before new work; never replay an old V1 write under a new V2 ID.","completion":"Check status, execution_state, error_code, output and evidence/resource references. Queued work is not complete: poll jobs.status.get.v2 in domain.workspace.v2. For read-back verification require read_back_verified=true where returned; reconcile failures without creating another object.","result_envelope":{"status":"completed | partial | cancelled | failed","execution_state":"terminal | queued | reconciliation_required","output":"Completed results validate against output_schema; partial/reconciliation results can contain incomplete evidence and must not be treated as completion.","billing":"gateway_credits_spent, downstream_settlement, job_id; pending downstream settlement is not a final cost","references":"run_id, invocation_id, resource_refs, evidence_refs"},"documentation":"https://www.hivekind.ai/docs/mcp/intelligence#accounts-discovery-status-get-v2"},{"operation":"accounts.duplicates.dismiss.v2","domain":"data-quality","tool":"domain.data_quality.v2","title":"Dismiss a duplicate suggestion","purpose":"You confirmed an exact suggested group contains different companies and want it excluded from future duplicate results.","side_effects":"Writes a reversible suppression decision; account records are unchanged.","permission":"execute","required_scopes":["actions:execute"],"requires_operation_id":true,"billing":"No gateway rate is configured. Check the Core workflow preview/quote for downstream charges and final settlement.","required_resolved_fields":[],"next_call":{"tool":"domain.data_quality.v2","arguments":{"params":{"action":"describe","operation":"accounts.duplicates.dismiss.v2"}}},"catalog_revision":"07a373e389289e05","when_not_to_use":"You intend to combine account data; preview a merge instead.","description":"Use when: You confirmed an exact suggested group contains different companies and want it excluded from future duplicate results. Returns/does: Writes a reversible suppression decision; account records are unchanged. Do not use when: You intend to combine account data; preview a merge instead. Identity comes from OAuth. Resolve exact IDs; use typed enums and bounded limits. Billing: Gateway and downstream billing depend on the operation; check its preview/quote and returned billing.","input_schema":{"additionalProperties":false,"properties":{"action_proposal_id":{"anyOf":[{"format":"uuid","type":"string"},{"type":"null"}],"default":null,"description":"Optional. Hivekind fills this from the MCP consent grant.","title":"Action Proposal Id"},"account_ids":{"description":"The accounts that are NOT duplicates of each other.","items":{"format":"uuid","type":"string"},"maxItems":10,"minItems":2,"title":"Account Ids","type":"array"}},"required":["account_ids"],"title":"McpMcpAccountsDuplicatesDismissInputV2","type":"object"},"output_schema":{"additionalProperties":false,"properties":{"dismissed":{"default":[],"items":{"type":"string"},"maxItems":10,"title":"Dismissed","type":"array"},"pairs":{"default":0,"minimum":0,"title":"Pairs","type":"integer"}},"title":"AccountsDuplicatesDismissResultV2","type":"object"},"example":{"tool":"domain.data_quality.v2","arguments":{"params":{"action":"invoke","operation":"accounts.duplicates.dismiss.v2","arguments":{"account_ids":["00000000-0000-4000-8000-000000000001","00000000-0000-4000-8000-000000000001"]},"operation_id":"00000000-0000-4000-8000-000000000003"}},"notice":"Fictional fixture IDs and example text. Resolve real IDs, use returned preview tokens and approve exact side effects before execution. Input validation is not proof of provider readiness or a successful business outcome."},"workflow_steps":[],"approval_policy":"exact_scope_single_action","idempotency_policy":"approved_action_outbox","gateway_credit_code":null,"identity":"Workspace, actor and consent come from OAuth; do not supply identity fields.","retry":"Keep the same operation and operation_id when retrying identical work. Reconcile an uncertain result before new work; never replay an old V1 write under a new V2 ID.","completion":"Check status, execution_state, error_code, output and evidence/resource references. Queued work is not complete: poll jobs.status.get.v2 in domain.workspace.v2. For read-back verification require read_back_verified=true where returned; reconcile failures without creating another object.","result_envelope":{"status":"completed | partial | cancelled | failed","execution_state":"terminal | queued | reconciliation_required","output":"Completed results validate against output_schema; partial/reconciliation results can contain incomplete evidence and must not be treated as completion.","billing":"gateway_credits_spent, downstream_settlement, job_id; pending downstream settlement is not a final cost","references":"run_id, invocation_id, resource_refs, evidence_refs"},"documentation":"https://www.hivekind.ai/docs/mcp/data-quality#accounts-duplicates-dismiss-v2"},{"operation":"accounts.duplicates.search.v2","domain":"data-quality","tool":"domain.data_quality.v2","title":"Search duplicate account candidates","purpose":"You need deterministic groups of existing accounts that may represent the same company before data cleanup.","side_effects":"Returns bounded candidate groups with stable account IDs. Read only.","permission":"read","required_scopes":["accounts:read"],"requires_operation_id":false,"billing":"No gateway credit charge; reads saved workspace data without starting paid provider work.","required_resolved_fields":[],"next_call":{"tool":"domain.data_quality.v2","arguments":{"params":{"action":"describe","operation":"accounts.duplicates.search.v2"}}},"catalog_revision":"07a373e389289e05","when_not_to_use":"You are searching accounts by business criteria; use accounts.search.v2.","description":"Use when: You need deterministic groups of existing accounts that may represent the same company before data cleanup. Returns/does: Returns bounded candidate groups with stable account IDs. Read only. Do not use when: You are searching accounts by business criteria; use accounts.search.v2. Identity comes from OAuth. Resolve exact IDs; use typed enums and bounded limits. Billing: Gateway and downstream billing depend on the operation; check its preview/quote and returned billing.","input_schema":{"additionalProperties":false,"properties":{"limit":{"default":50,"description":"Maximum number of records to return in this page.","maximum":200,"minimum":1,"title":"Limit","type":"integer"}},"title":"McpAccountsDuplicatesSearchInputV2","type":"object"},"output_schema":{"$defs":{"AccountCampaignMembershipV1":{"additionalProperties":false,"description":"One campaign an account belongs to (HIVE-1388).","properties":{"campaign_id":{"format":"uuid","title":"Campaign Id","type":"string"},"name":{"maxLength":255,"title":"Name","type":"string"},"status":{"description":"The campaign's status: \"active\", \"draft\", \"paused\", or \"archived\" once it has been archived, whatever it was before.","maxLength":64,"title":"Status","type":"string"},"added_at":{"anyOf":[{"format":"date-time","type":"string"},{"type":"null"}],"default":null,"description":"When the account joined the campaign (UTC).","title":"Added At"}},"required":["campaign_id","name","status"],"title":"AccountCampaignMembershipV1","type":"object"},"AccountSummaryV1":{"additionalProperties":false,"properties":{"account_id":{"format":"uuid","title":"Account Id","type":"string"},"name":{"maxLength":255,"minLength":1,"title":"Name","type":"string"},"domain":{"anyOf":[{"maxLength":255,"type":"string"},{"type":"null"}],"default":null,"title":"Domain"},"industry":{"anyOf":[{"maxLength":255,"type":"string"},{"type":"null"}],"default":null,"title":"Industry"},"region":{"anyOf":[{"maxLength":255,"type":"string"},{"type":"null"}],"default":null,"title":"Region"},"employee_count":{"anyOf":[{"minimum":0,"type":"integer"},{"type":"null"}],"default":null,"title":"Employee Count"},"owner_id":{"anyOf":[{"format":"uuid","type":"string"},{"type":"null"}],"default":null,"title":"Owner Id"},"account_type":{"anyOf":[{"maxLength":64,"type":"string"},{"type":"null"}],"default":null,"title":"Account Type"},"icp_score":{"anyOf":[{"maximum":100,"minimum":0,"type":"number"},{"type":"null"}],"default":null,"title":"Icp Score"},"icp_grade":{"anyOf":[{"maxLength":32,"type":"string"},{"type":"null"}],"default":null,"title":"Icp Grade"},"updated_at":{"anyOf":[{"format":"date-time","type":"string"},{"type":"null"}],"default":null,"description":"When the account record last changed (UTC).","title":"Updated At"},"icp_disqualified":{"default":false,"description":"True when a rubric disqualifier matched this account. A disqualifier pins the account to the rubric's lowest tier no matter how well it scored, so a high icp_score beside a low icp_grade is expected here, not a data error.","title":"Icp Disqualified","type":"boolean"},"icp_disqualification_reason":{"anyOf":[{"maxLength":500,"type":"string"},{"type":"null"}],"default":null,"description":"Which disqualifier matched and why. Null unless icp_disqualified is true.","title":"Icp Disqualification Reason"},"network_strength":{"default":0,"description":"Connection strength from distinct usable LinkedIn workspace members and Channel Partner organizations, capped at three.","maximum":3,"minimum":0,"title":"Network Strength","type":"integer"},"independent_source_count":{"default":0,"description":"Uncapped number of distinct usable network sources.","minimum":0,"title":"Independent Source Count","type":"integer"},"linkedin_member_count":{"default":0,"description":"Distinct consented workspace LinkedIn members with a usable route.","minimum":0,"title":"Linkedin Member Count","type":"integer"},"partner_count":{"default":0,"description":"Distinct active Channel Partner organizations with confirmed usable routes.","minimum":0,"title":"Partner Count","type":"integer"},"partner_names":{"default":[],"description":"Names of active Channel Partners providing usable routes.","items":{"type":"string"},"maxItems":20,"title":"Partner Names","type":"array"},"tags":{"default":[],"description":"Account tags on this account (free-form workspace labels).","items":{"type":"string"},"maxItems":50,"title":"Tags","type":"array"},"web_url":{"anyOf":[{"maxLength":2048,"type":"string"},{"type":"null"}],"default":null,"description":"Browser link to this account in the Hivekind app. Use it verbatim whenever you link the record for a person, including inside note bodies; never build a link by hand or use a hivekind:// URI, which is an MCP resource handle, not a page. Null when the server has no app URL configured.","title":"Web Url"},"campaigns":{"anyOf":[{"items":{"$ref":"#/$defs/AccountCampaignMembershipV1"},"maxItems":50,"type":"array"},{"type":"null"}],"default":null,"description":"Every campaign this account belongs to, archived ones included, newest membership first. An empty list means it is in none; null means this tool did not look.","title":"Campaigns"}},"required":["account_id","name"],"title":"AccountSummaryV1","type":"object"},"DuplicateAccountGroupV1":{"additionalProperties":false,"description":"Accounts that look like the same company, most complete first.","properties":{"reasons":{"default":[],"items":{"type":"string"},"maxItems":8,"title":"Reasons","type":"array"},"accounts":{"default":[],"items":{"$ref":"#/$defs/AccountSummaryV1"},"maxItems":10,"title":"Accounts","type":"array"}},"title":"DuplicateAccountGroupV1","type":"object"}},"additionalProperties":false,"properties":{"groups":{"default":[],"items":{"$ref":"#/$defs/DuplicateAccountGroupV1"},"maxItems":200,"title":"Groups","type":"array"},"total_groups":{"default":0,"minimum":0,"title":"Total Groups","type":"integer"}},"title":"AccountsDuplicatesSearchResultV2","type":"object"},"example":{"tool":"domain.data_quality.v2","arguments":{"params":{"action":"invoke","operation":"accounts.duplicates.search.v2","arguments":{},"operation_id":"00000000-0000-4000-8000-000000000003"}},"notice":"Fictional fixture IDs and example text. Resolve real IDs, use returned preview tokens and approve exact side effects before execution. Input validation is not proof of provider readiness or a successful business outcome."},"workflow_steps":[],"approval_policy":null,"idempotency_policy":"read_only","gateway_credit_code":null,"identity":"Workspace, actor and consent come from OAuth; do not supply identity fields.","retry":"Keep the same operation and operation_id when retrying identical work. Reconcile an uncertain result before new work; never replay an old V1 write under a new V2 ID.","completion":"Check status, execution_state, error_code, output and evidence/resource references. Queued work is not complete: poll jobs.status.get.v2 in domain.workspace.v2. For read-back verification require read_back_verified=true where returned; reconcile failures without creating another object.","result_envelope":{"status":"completed | partial | cancelled | failed","execution_state":"terminal | queued | reconciliation_required","output":"Completed results validate against output_schema; partial/reconciliation results can contain incomplete evidence and must not be treated as completion.","billing":"gateway_credits_spent, downstream_settlement, job_id; pending downstream settlement is not a final cost","references":"run_id, invocation_id, resource_refs, evidence_refs"},"documentation":"https://www.hivekind.ai/docs/mcp/data-quality#accounts-duplicates-search-v2"},{"operation":"accounts.get.v2","domain":"accounts","tool":"domain.accounts.v2","title":"Get account","purpose":"Load one account by id when resource reads are unavailable. Its campaigns field lists every campaign the account belongs to, with each campaign's status. A matched rubric disqualifier pins the account to the lowest grade whatever it scored, so read icp_disqualified and icp_disqualification_reason before treating a high score beside a low grade as wrong.","side_effects":"Reads current workspace state.","permission":"read","required_scopes":["accounts:read"],"requires_operation_id":false,"billing":"No gateway credit charge; reads saved workspace data without starting paid provider work.","required_resolved_fields":[],"next_call":{"tool":"domain.accounts.v2","arguments":{"params":{"action":"describe","operation":"accounts.get.v2"}}},"catalog_revision":"07a373e389289e05","when_not_to_use":"Prefer hivekind://account/{id}. Use accounts.search.v2 if you do not have an id.","description":"Use when: Load one account by id when resource reads are unavailable. Its campaigns field lists every campaign the account belongs to, with each campaign's status. A matched rubric disqualifier pins the account to the lowest grade whatever it scored, so read icp_disqualified and icp_disqualification_reason before treating a high score beside a low grade as wrong. Returns/does: Reads the current authorized workspace state. Do not use when: Prefer hivekind://account/{id}. Use accounts.search.v2 if you do not have an id. Identity comes from OAuth. Resolve exact IDs; use typed enums and bounded limits. Billing: Gateway and downstream billing depend on the operation; check its preview/quote and returned billing.","input_schema":{"additionalProperties":false,"properties":{"account_id":{"description":"Exact account UUID returned by a Hivekind search, list, get, preview, or resource call.","format":"uuid","title":"Account Id","type":"string"}},"required":["account_id"],"title":"McpPublicAccountsGetInputV2","type":"object"},"output_schema":{"$defs":{"AccountCampaignMembershipV1":{"additionalProperties":false,"description":"One campaign an account belongs to (HIVE-1388).","properties":{"campaign_id":{"format":"uuid","title":"Campaign Id","type":"string"},"name":{"maxLength":255,"title":"Name","type":"string"},"status":{"description":"The campaign's status: \"active\", \"draft\", \"paused\", or \"archived\" once it has been archived, whatever it was before.","maxLength":64,"title":"Status","type":"string"},"added_at":{"anyOf":[{"format":"date-time","type":"string"},{"type":"null"}],"default":null,"description":"When the account joined the campaign (UTC).","title":"Added At"}},"required":["campaign_id","name","status"],"title":"AccountCampaignMembershipV1","type":"object"}},"additionalProperties":false,"description":"V2 result for accounts.get.v2; preserves the established validators.","properties":{"account_id":{"format":"uuid","title":"Account Id","type":"string"},"name":{"maxLength":255,"minLength":1,"title":"Name","type":"string"},"domain":{"anyOf":[{"maxLength":255,"type":"string"},{"type":"null"}],"default":null,"title":"Domain"},"industry":{"anyOf":[{"maxLength":255,"type":"string"},{"type":"null"}],"default":null,"title":"Industry"},"region":{"anyOf":[{"maxLength":255,"type":"string"},{"type":"null"}],"default":null,"title":"Region"},"employee_count":{"anyOf":[{"minimum":0,"type":"integer"},{"type":"null"}],"default":null,"title":"Employee Count"},"owner_id":{"anyOf":[{"format":"uuid","type":"string"},{"type":"null"}],"default":null,"title":"Owner Id"},"account_type":{"anyOf":[{"maxLength":64,"type":"string"},{"type":"null"}],"default":null,"title":"Account Type"},"icp_score":{"anyOf":[{"maximum":100,"minimum":0,"type":"number"},{"type":"null"}],"default":null,"title":"Icp Score"},"icp_grade":{"anyOf":[{"maxLength":32,"type":"string"},{"type":"null"}],"default":null,"title":"Icp Grade"},"updated_at":{"anyOf":[{"format":"date-time","type":"string"},{"type":"null"}],"default":null,"description":"When the account record last changed (UTC).","title":"Updated At"},"icp_disqualified":{"default":false,"description":"True when a rubric disqualifier matched this account. A disqualifier pins the account to the rubric's lowest tier no matter how well it scored, so a high icp_score beside a low icp_grade is expected here, not a data error.","title":"Icp Disqualified","type":"boolean"},"icp_disqualification_reason":{"anyOf":[{"maxLength":500,"type":"string"},{"type":"null"}],"default":null,"description":"Which disqualifier matched and why. Null unless icp_disqualified is true.","title":"Icp Disqualification Reason"},"network_strength":{"default":0,"description":"Connection strength from distinct usable LinkedIn workspace members and Channel Partner organizations, capped at three.","maximum":3,"minimum":0,"title":"Network Strength","type":"integer"},"independent_source_count":{"default":0,"description":"Uncapped number of distinct usable network sources.","minimum":0,"title":"Independent Source Count","type":"integer"},"linkedin_member_count":{"default":0,"description":"Distinct consented workspace LinkedIn members with a usable route.","minimum":0,"title":"Linkedin Member Count","type":"integer"},"partner_count":{"default":0,"description":"Distinct active Channel Partner organizations with confirmed usable routes.","minimum":0,"title":"Partner Count","type":"integer"},"partner_names":{"default":[],"description":"Names of active Channel Partners providing usable routes.","items":{"type":"string"},"maxItems":20,"title":"Partner Names","type":"array"},"tags":{"default":[],"description":"Account tags on this account (free-form workspace labels).","items":{"type":"string"},"maxItems":50,"title":"Tags","type":"array"},"web_url":{"anyOf":[{"maxLength":2048,"type":"string"},{"type":"null"}],"default":null,"description":"Browser link to this account in the Hivekind app. Use it verbatim whenever you link the record for a person, including inside note bodies; never build a link by hand or use a hivekind:// URI, which is an MCP resource handle, not a page. Null when the server has no app URL configured.","title":"Web Url"},"campaigns":{"anyOf":[{"items":{"$ref":"#/$defs/AccountCampaignMembershipV1"},"maxItems":50,"type":"array"},{"type":"null"}],"default":null,"description":"Every campaign this account belongs to, archived ones included, newest membership first. An empty list means it is in none; null means this tool did not look.","title":"Campaigns"}},"required":["account_id","name"],"title":"PublicAccountsGetResultV2","type":"object"},"example":{"tool":"domain.accounts.v2","arguments":{"params":{"action":"invoke","operation":"accounts.get.v2","arguments":{"account_id":"00000000-0000-4000-8000-000000000001"},"operation_id":"00000000-0000-4000-8000-000000000003"}},"notice":"Fictional fixture IDs and example text. Resolve real IDs, use returned preview tokens and approve exact side effects before execution. Input validation is not proof of provider readiness or a successful business outcome."},"workflow_steps":[],"approval_policy":null,"idempotency_policy":"read_only","gateway_credit_code":null,"identity":"Workspace, actor and consent come from OAuth; do not supply identity fields.","retry":"Keep the same operation and operation_id when retrying identical work. Reconcile an uncertain result before new work; never replay an old V1 write under a new V2 ID.","completion":"Check status, execution_state, error_code, output and evidence/resource references. Queued work is not complete: poll jobs.status.get.v2 in domain.workspace.v2. For read-back verification require read_back_verified=true where returned; reconcile failures without creating another object.","result_envelope":{"status":"completed | partial | cancelled | failed","execution_state":"terminal | queued | reconciliation_required","output":"Completed results validate against output_schema; partial/reconciliation results can contain incomplete evidence and must not be treated as completion.","billing":"gateway_credits_spent, downstream_settlement, job_id; pending downstream settlement is not a final cost","references":"run_id, invocation_id, resource_refs, evidence_refs"},"documentation":"https://www.hivekind.ai/docs/mcp/accounts#accounts-get-v2"},{"operation":"accounts.import.preview.v2","domain":"accounts","tool":"domain.accounts.v2","title":"Preview a company import","purpose":"Show what a company list would land as in Hive Base and how many rows match accounts that already exist. Send the file whole; the response's column_policy names source-system noise. Pass an exact Partner Account and confirmed or sourced semantics to prepare a partner-network import.","side_effects":"Writes nothing. Returns an import_token that accounts.import.start.v2 can commit.","permission":"propose","required_scopes":["runs:create"],"requires_operation_id":true,"billing":"No gateway rate is configured. Check the Core workflow preview/quote for downstream charges and final settlement.","required_resolved_fields":[],"next_call":{"tool":"domain.accounts.v2","arguments":{"params":{"action":"describe","operation":"accounts.import.preview.v2"}}},"catalog_revision":"07a373e389289e05","when_not_to_use":"Do not use this when the rows carry people — those belong to prospects.import.preview.v2.","description":"Use when: Show what a company list would land as in Hive Base and how many rows match accounts that already exist. Send the file whole; the response's column_policy names source-system noise. Pass an exact Partner Account and confirmed or sourced semantics to prepare a partner-network import. Returns/does: Writes nothing. Returns an import_token that accounts.import.start.v2 can commit. Do not use when: Do not use this when the rows carry people — those belong to prospects.import.preview.v2. Identity comes from OAuth. Resolve exact IDs; use typed enums and bounded limits. Billing: Gateway and downstream billing depend on the operation; check its preview/quote and returned billing.","input_schema":{"$defs":{"CompanyInputV1":{"additionalProperties":false,"description":"Fields mirror the account CSV importer's canonical columns exactly, so a\nstructured row and an uploaded file take the same path with no remapping.","properties":{"name":{"maxLength":255,"minLength":1,"title":"Name","type":"string"},"domain":{"anyOf":[{"maxLength":255,"type":"string"},{"type":"null"}],"default":null,"title":"Domain"},"industry":{"anyOf":[{"maxLength":255,"type":"string"},{"type":"null"}],"default":null,"title":"Industry"},"city":{"anyOf":[{"maxLength":255,"type":"string"},{"type":"null"}],"default":null,"title":"City"},"country":{"anyOf":[{"maxLength":255,"type":"string"},{"type":"null"}],"default":null,"title":"Country"},"employee_count":{"anyOf":[{"maximum":10000000,"minimum":0,"type":"integer"},{"type":"null"}],"default":null,"title":"Employee Count"},"annual_revenue":{"anyOf":[{"maxLength":64,"type":"string"},{"type":"null"}],"default":null,"title":"Annual Revenue"},"account_type":{"anyOf":[{"maxLength":64,"type":"string"},{"type":"null"}],"default":null,"title":"Account Type"},"account_tier":{"anyOf":[{"maxLength":64,"type":"string"},{"type":"null"}],"default":null,"title":"Account Tier"},"owner_email":{"anyOf":[{"maxLength":320,"type":"string"},{"type":"null"}],"default":null,"title":"Owner Email"}},"required":["name"],"title":"CompanyInputV1","type":"object"}},"additionalProperties":false,"properties":{"csv_text":{"anyOf":[{"type":"string"},{"type":"null"}],"default":null,"description":"Verbatim contents of a CSV the caller holds. Send the file exactly as it is: never retype values, reorder or drop rows, summarise, or leave columns out. The server maps arbitrary column layouts itself, and the preview reports which columns it reads as source-system noise, and why, in column_policy. Decide there with the user -- not here.","title":"Csv Text"},"exclude_columns":{"default":[],"description":"Source columns to leave out, after the user agreed to it. Leave empty on a first preview. Naming a column the server protects, or one that is mapped to a canonical field, fails the whole call.","items":{"type":"string"},"maxItems":200,"title":"Exclude Columns","type":"array"},"keep_columns":{"default":[],"description":"Source columns to retain whatever the server makes of them. Use it when the user says a column matters. Outranks exclude_columns.","items":{"type":"string"},"maxItems":200,"title":"Keep Columns","type":"array"},"tags":{"anyOf":[{"items":{"maxLength":64,"minLength":1,"type":"string"},"maxItems":10,"type":"array"},{"type":"null"}],"default":null,"description":"Account tags (1-64 characters each, at most 10) added to every account this import creates or matches -- existing accounts get the tag and nothing else on them changes. Matched case-insensitively against existing tags; resolve them with accounts.tags.list.v2 first. The preview's import_token locks these in: omit tags on the commit to reuse them, and a different list is refused. Separate from the source badge.","title":"Tags"},"companies":{"default":[],"description":"Companies used by the public accounts import preview input v2 operation.","items":{"$ref":"#/$defs/CompanyInputV1"},"maxItems":2000,"title":"Companies","type":"array"},"partner_account_id":{"anyOf":[{"format":"uuid","type":"string"},{"type":"null"}],"default":null,"description":"Exact active Channel Partner Account whose network supplied these companies. When set, existing Accounts are preserved and routes are attached instead of reclassifying them.","title":"Partner Account Id"},"partner_relationship_status":{"anyOf":[{"enum":["confirmed","sourced"],"type":"string"},{"type":"null"}],"default":null,"description":"Required with partner_account_id. Confirmed means the Partner attests a usable relationship; sourced stays visible but adds no strength.","title":"Partner Relationship Status"}},"title":"McpPublicAccountsImportPreviewInputV2","type":"object"},"output_schema":{"$defs":{"ExcludedColumnV1":{"additionalProperties":false,"description":"One source column the server left out, or proposes leaving out.","properties":{"column":{"maxLength":255,"title":"Column","type":"string"},"reason":{"enum":["empty_column","opaque_source_id","payment_metadata","source_system_link","caller_selected"],"title":"Reason","type":"string"},"detail":{"default":"","maxLength":500,"title":"Detail","type":"string"}},"required":["column","reason"],"title":"ExcludedColumnV1","type":"object"},"ImportColumnPolicyV1":{"additionalProperties":false,"description":"What the server made of the file's columns.\n\n``applied`` is the field that matters. False -- the default for any preview\nthat was not given a selection -- means ``excluded_columns`` is a proposal\nand every column was still imported. Show it to the user, take their answer,\nand send it back as ``exclude_columns`` if they agree. Never act on it alone.","properties":{"version":{"default":1,"title":"Version","type":"integer"},"applied":{"default":false,"title":"Applied","type":"boolean"},"retained_columns":{"default":[],"items":{"type":"string"},"title":"Retained Columns","type":"array"},"excluded_columns":{"default":[],"items":{"$ref":"#/$defs/ExcludedColumnV1"},"title":"Excluded Columns","type":"array"}},"title":"ImportColumnPolicyV1","type":"object"},"JsonValue":{}},"additionalProperties":false,"description":"V2 result for accounts.import.preview.v2; preserves the established validators.","properties":{"column_policy":{"anyOf":[{"$ref":"#/$defs/ImportColumnPolicyV1"},{"type":"null"}],"default":null,"description":"What the server made of the file's columns. When applied is false this is a proposal only and nothing was left out."},"import_token":{"anyOf":[{"maxLength":255,"type":"string"},{"type":"null"}],"default":null,"description":"Pass to the matching commit tool to reuse exactly these rows. Null when no cache backend was reachable -- resend the data instead.","title":"Import Token"},"rows_parsed":{"default":0,"minimum":0,"title":"Rows Parsed","type":"integer"},"column_mapping":{"additionalProperties":{"type":"string"},"title":"Column Mapping","type":"object"},"matches_existing_accounts":{"default":0,"minimum":0,"title":"Matches Existing Accounts","type":"integer"},"new_companies":{"default":0,"minimum":0,"title":"New Companies","type":"integer"},"sample_rows":{"default":[],"items":{"additionalProperties":{"$ref":"#/$defs/JsonValue"},"type":"object"},"maxItems":5,"title":"Sample Rows","type":"array"},"tags":{"default":[],"description":"Account tags the import_token is locked to.","items":{"type":"string"},"title":"Tags","type":"array"},"accounts_to_tag":{"default":0,"description":"Accounts the commit would tag: matches_existing_accounts plus new_companies. Zero when no tags were given.","minimum":0,"title":"Accounts To Tag","type":"integer"}},"title":"PublicAccountsImportPreviewResultV2","type":"object"},"example":{"tool":"domain.accounts.v2","arguments":{"params":{"action":"invoke","operation":"accounts.import.preview.v2","arguments":{"companies":[{"domain":"example.com","name":"Example company"}]},"operation_id":"00000000-0000-4000-8000-000000000003"}},"notice":"Fictional fixture IDs and example text. Resolve real IDs, use returned preview tokens and approve exact side effects before execution. Input validation is not proof of provider readiness or a successful business outcome."},"workflow_steps":[],"approval_policy":null,"idempotency_policy":"run_task_import_preview","gateway_credit_code":null,"identity":"Workspace, actor and consent come from OAuth; do not supply identity fields.","retry":"Keep the same operation and operation_id when retrying identical work. Reconcile an uncertain result before new work; never replay an old V1 write under a new V2 ID.","completion":"Check status, execution_state, error_code, output and evidence/resource references. Queued work is not complete: poll jobs.status.get.v2 in domain.workspace.v2. For read-back verification require read_back_verified=true where returned; reconcile failures without creating another object.","result_envelope":{"status":"completed | partial | cancelled | failed","execution_state":"terminal | queued | reconciliation_required","output":"Completed results validate against output_schema; partial/reconciliation results can contain incomplete evidence and must not be treated as completion.","billing":"gateway_credits_spent, downstream_settlement, job_id; pending downstream settlement is not a final cost","references":"run_id, invocation_id, resource_refs, evidence_refs"},"documentation":"https://www.hivekind.ai/docs/mcp/accounts#accounts-import-preview-v2"},{"operation":"accounts.import.start.v2","domain":"accounts","tool":"domain.accounts.v2","title":"Import companies","purpose":"Create accounts from a company list, or attach them to an exact Channel Partner when partner context is supplied. Partner imports preserve existing Accounts and do not auto-score.","side_effects":"Queues a job that creates accounts and may score them. Created and matched accounts are badged with the import source when you pass source (name, kind; the id comes back as source_id). Poll jobs.status.get.v2.","permission":"execute","required_scopes":["actions:execute"],"requires_operation_id":true,"billing":"No gateway rate is configured. Check the Core workflow preview/quote for downstream charges and final settlement.","required_resolved_fields":[],"next_call":{"tool":"domain.accounts.v2","arguments":{"params":{"action":"describe","operation":"accounts.import.start.v2"}}},"catalog_revision":"07a373e389289e05","when_not_to_use":"Do not use this to add people; it never creates contacts.","description":"Use when: Create accounts from a company list, or attach them to an exact Channel Partner when partner context is supplied. Partner imports preserve existing Accounts and do not auto-score. Returns/does: Queues a job that creates accounts and may score them. Created and matched accounts are badged with the import source when you pass source (name, kind; the id comes back as source_id). Poll jobs.status.get.v2. Do not use when: Do not use this to add people; it never creates contacts. Identity comes from OAuth. Resolve exact IDs; use typed enums and bounded limits. Billing: Gateway and downstream billing depend on the operation; check its preview/quote and returned billing.","input_schema":{"$defs":{"CompanyInputV1":{"additionalProperties":false,"description":"Fields mirror the account CSV importer's canonical columns exactly, so a\nstructured row and an uploaded file take the same path with no remapping.","properties":{"name":{"maxLength":255,"minLength":1,"title":"Name","type":"string"},"domain":{"anyOf":[{"maxLength":255,"type":"string"},{"type":"null"}],"default":null,"title":"Domain"},"industry":{"anyOf":[{"maxLength":255,"type":"string"},{"type":"null"}],"default":null,"title":"Industry"},"city":{"anyOf":[{"maxLength":255,"type":"string"},{"type":"null"}],"default":null,"title":"City"},"country":{"anyOf":[{"maxLength":255,"type":"string"},{"type":"null"}],"default":null,"title":"Country"},"employee_count":{"anyOf":[{"maximum":10000000,"minimum":0,"type":"integer"},{"type":"null"}],"default":null,"title":"Employee Count"},"annual_revenue":{"anyOf":[{"maxLength":64,"type":"string"},{"type":"null"}],"default":null,"title":"Annual Revenue"},"account_type":{"anyOf":[{"maxLength":64,"type":"string"},{"type":"null"}],"default":null,"title":"Account Type"},"account_tier":{"anyOf":[{"maxLength":64,"type":"string"},{"type":"null"}],"default":null,"title":"Account Tier"},"owner_email":{"anyOf":[{"maxLength":320,"type":"string"},{"type":"null"}],"default":null,"title":"Owner Email"}},"required":["name"],"title":"CompanyInputV1","type":"object"},"ImportSourceInputV1":{"additionalProperties":false,"description":"Where this list came from. Every record the import creates or matches is badged with it.","properties":{"source_id":{"anyOf":[{"format":"uuid","type":"string"},{"type":"null"}],"default":null,"description":"Add to an existing source instead of creating one.","title":"Source Id"},"name":{"anyOf":[{"maxLength":255,"type":"string"},{"type":"null"}],"default":null,"description":"New source name, e.g. 'AI for CFOs workshop'. Omit to name it after the file.","title":"Name"},"kind":{"default":"list","enum":["workshop","event","webinar","list","other"],"title":"Kind","type":"string"},"occurred_on":{"anyOf":[{"format":"date","type":"string"},{"type":"null"}],"default":null,"title":"Occurred On"},"details":{"additionalProperties":{"anyOf":[{"type":"string"},{"type":"integer"},{"type":"number"},{"type":"boolean"},{"type":"null"}]},"description":"Location, host, link, notes. Flat: at most 20 keys (each up to 64 characters), values are text up to 1000 characters, numbers, booleans or null. No nested objects or lists.","title":"Details","type":"object"}},"title":"ImportSourceInputV1","type":"object"}},"additionalProperties":false,"properties":{"csv_text":{"anyOf":[{"type":"string"},{"type":"null"}],"default":null,"description":"Verbatim contents of a CSV the caller holds. Send the file exactly as it is: never retype values, reorder or drop rows, summarise, or leave columns out. The server maps arbitrary column layouts itself, and the preview reports which columns it reads as source-system noise, and why, in column_policy. Decide there with the user -- not here.","title":"Csv Text"},"exclude_columns":{"default":[],"description":"Source columns to leave out, after the user agreed to it. Leave empty on a first preview. Naming a column the server protects, or one that is mapped to a canonical field, fails the whole call.","items":{"type":"string"},"maxItems":200,"title":"Exclude Columns","type":"array"},"keep_columns":{"default":[],"description":"Source columns to retain whatever the server makes of them. Use it when the user says a column matters. Outranks exclude_columns.","items":{"type":"string"},"maxItems":200,"title":"Keep Columns","type":"array"},"tags":{"anyOf":[{"items":{"maxLength":64,"minLength":1,"type":"string"},"maxItems":10,"type":"array"},{"type":"null"}],"default":null,"description":"Account tags (1-64 characters each, at most 10) added to every account this import creates or matches -- existing accounts get the tag and nothing else on them changes. Matched case-insensitively against existing tags; resolve them with accounts.tags.list.v2 first. The preview's import_token locks these in: omit tags on the commit to reuse them, and a different list is refused. Separate from the source badge.","title":"Tags"},"companies":{"default":[],"description":"Companies used by the public accounts import start input v2 operation.","items":{"$ref":"#/$defs/CompanyInputV1"},"maxItems":2000,"title":"Companies","type":"array"},"partner_account_id":{"anyOf":[{"format":"uuid","type":"string"},{"type":"null"}],"default":null,"description":"Exact active Channel Partner Account whose network supplied these companies. When set, existing Accounts are preserved and routes are attached instead of reclassifying them.","title":"Partner Account Id"},"partner_relationship_status":{"anyOf":[{"enum":["confirmed","sourced"],"type":"string"},{"type":"null"}],"default":null,"description":"Required with partner_account_id. Confirmed means the Partner attests a usable relationship; sourced stays visible but adds no strength.","title":"Partner Relationship Status"},"source":{"anyOf":[{"$ref":"#/$defs/ImportSourceInputV1"},{"type":"null"}],"default":null,"description":"Label this list so every account and contact it creates or matches is badged with where it came from (workshop, event, webinar, list). The id comes back as source_id on the result."},"action_proposal_id":{"anyOf":[{"format":"uuid","type":"string"},{"type":"null"}],"default":null,"description":"Optional. Hivekind fills this from the MCP consent grant.","title":"Action Proposal Id"},"import_token":{"anyOf":[{"maxLength":255,"type":"string"},{"type":"null"}],"default":null,"description":"Import token used by the public accounts import start input v2 operation.","title":"Import Token"}},"title":"McpMcpPublicAccountsImportStartInputV2","type":"object"},"output_schema":{"additionalProperties":false,"description":"V2 result for accounts.import.start.v2; preserves the established validators.","properties":{"job_id":{"maxLength":255,"minLength":1,"title":"Job Id","type":"string"},"status":{"default":"queued","maxLength":32,"minLength":1,"title":"Status","type":"string"},"queued":{"default":true,"title":"Queued","type":"boolean"},"rows_parsed":{"default":0,"minimum":0,"title":"Rows Parsed","type":"integer"},"source_id":{"anyOf":[{"format":"uuid","type":"string"},{"type":"null"}],"default":null,"description":"Source the imported records are badged with.","title":"Source Id"},"tags":{"default":[],"description":"Account tags added to every account this import created or matched.","items":{"type":"string"},"title":"Tags","type":"array"}},"required":["job_id"],"title":"PublicAccountsImportStartResultV2","type":"object"},"example":{"tool":"domain.accounts.v2","arguments":{"params":{"action":"invoke","operation":"accounts.import.start.v2","arguments":{"import_token":"use-the-exact-token-from-the-approved-preview"},"operation_id":"00000000-0000-4000-8000-000000000003"}},"notice":"Fictional fixture IDs and example text. Resolve real IDs, use returned preview tokens and approve exact side effects before execution. Input validation is not proof of provider readiness or a successful business outcome."},"workflow_steps":[],"approval_policy":"exact_scope_single_action","idempotency_policy":"approved_action_outbox","gateway_credit_code":null,"identity":"Workspace, actor and consent come from OAuth; do not supply identity fields.","retry":"Keep the same operation and operation_id when retrying identical work. Reconcile an uncertain result before new work; never replay an old V1 write under a new V2 ID.","completion":"Check status, execution_state, error_code, output and evidence/resource references. Queued work is not complete: poll jobs.status.get.v2 in domain.workspace.v2. For read-back verification require read_back_verified=true where returned; reconcile failures without creating another object.","result_envelope":{"status":"completed | partial | cancelled | failed","execution_state":"terminal | queued | reconciliation_required","output":"Completed results validate against output_schema; partial/reconciliation results can contain incomplete evidence and must not be treated as completion.","billing":"gateway_credits_spent, downstream_settlement, job_id; pending downstream settlement is not a final cost","references":"run_id, invocation_id, resource_refs, evidence_refs"},"documentation":"https://www.hivekind.ai/docs/mcp/accounts#accounts-import-start-v2"},{"operation":"accounts.match.v2","domain":"data-quality","tool":"domain.data_quality.v2","title":"Match a company list against accounts","purpose":"You have a list of companies (domains, URLs, or names, e.g. from a CRM export, spreadsheet, or roster) and need to know which are already accounts in Hivekind and which are not, in one call. Takes up to 200 entries per call; split a longer list into batches of 200.","side_effects":"Returns every distinct input as matched (with the account), ambiguous (several candidate accounts), or unmatched. Domains are normalized before comparison; names match whole and case-insensitively. Read only.","permission":"read","required_scopes":["accounts:read"],"requires_operation_id":false,"billing":"No gateway credit charge; reads saved workspace data without starting paid provider work.","required_resolved_fields":[],"next_call":{"tool":"domain.data_quality.v2","arguments":{"params":{"action":"describe","operation":"accounts.match.v2"}}},"catalog_revision":"07a373e389289e05","when_not_to_use":"You are searching by business criteria such as industry, owner, or ICP grade; use accounts.search.v2. You need duplicates already inside Hivekind; use accounts.duplicates.search.v2.","description":"Use when: You have a list of companies (domains, URLs, or names, e.g. from a CRM export, spreadsheet, or roster) and need to know which are already accounts in Hivekind and which are not, in one call. Takes up to 200 entries per call; split a longer list into batches of 200. Returns/does: Returns every distinct input as matched (with the account), ambiguous (several candidate accounts), or unmatched. Domains are normalized before comparison; names match whole and case-insensitively. Read only. Do not use when: You are searching by business criteria such as industry, owner, or ICP grade; use accounts.search.v2. You need duplicates already inside Hivekind; use accounts.duplicates.search.v2. Identity comes from OAuth. Resolve exact IDs; use typed enums and bounded limits. Billing: Gateway and downstream billing depend on the operation; check its preview/quote and returned billing.","input_schema":{"additionalProperties":false,"properties":{"items":{"description":"Companies to look up, one per entry: a domain, a website URL, or a company name. Domains and URLs are normalized (scheme, www., path and port dropped, lowercased) and matched against account domains; anything else, or a domain with no match, is matched against the account name, whole and case-insensitively. Blank entries are ignored and repeats are answered once.","items":{"type":"string"},"maxItems":200,"minItems":1,"title":"Items","type":"array"},"include_archived":{"default":true,"description":"Also match archived accounts, reported with account_status \"archived\". Leave on when checking a list before an import: an archived account is still in Hivekind, and reporting it as missing invites a duplicate.","title":"Include Archived","type":"boolean"}},"required":["items"],"title":"McpAccountsMatchInputV2","type":"object"},"output_schema":{"$defs":{"AccountMatchAmbiguousV2":{"additionalProperties":false,"description":"One input that resolves to more than one account; the caller picks.","properties":{"input":{"maxLength":500,"title":"Input","type":"string"},"matched_on":{"enum":["domain","name"],"title":"Matched On","type":"string"},"candidates":{"items":{"$ref":"#/$defs/AccountMatchRowV2"},"maxItems":25,"minItems":2,"title":"Candidates","type":"array"}},"required":["input","matched_on","candidates"],"title":"AccountMatchAmbiguousV2","type":"object"},"AccountMatchRowV2":{"additionalProperties":false,"properties":{"account_id":{"format":"uuid","title":"Account Id","type":"string"},"name":{"maxLength":255,"title":"Name","type":"string"},"domain":{"anyOf":[{"maxLength":255,"type":"string"},{"type":"null"}],"default":null,"title":"Domain"},"account_type":{"anyOf":[{"maxLength":64,"type":"string"},{"type":"null"}],"default":null,"title":"Account Type"},"account_status":{"enum":["active","archived"],"title":"Account Status","type":"string"},"owner_id":{"anyOf":[{"format":"uuid","type":"string"},{"type":"null"}],"default":null,"title":"Owner Id"},"owner_name":{"anyOf":[{"maxLength":255,"type":"string"},{"type":"null"}],"default":null,"title":"Owner Name"},"icp_grade":{"anyOf":[{"maxLength":32,"type":"string"},{"type":"null"}],"default":null,"title":"Icp Grade"},"icp_score":{"anyOf":[{"maximum":100,"minimum":0,"type":"number"},{"type":"null"}],"default":null,"title":"Icp Score"}},"required":["account_id","name","account_status"],"title":"AccountMatchRowV2","type":"object"},"AccountMatchV2":{"additionalProperties":false,"properties":{"input":{"maxLength":500,"title":"Input","type":"string"},"matched_on":{"enum":["domain","name"],"title":"Matched On","type":"string"},"account":{"$ref":"#/$defs/AccountMatchRowV2"}},"required":["input","matched_on","account"],"title":"AccountMatchV2","type":"object"}},"additionalProperties":false,"properties":{"matched":{"default":[],"items":{"$ref":"#/$defs/AccountMatchV2"},"maxItems":200,"title":"Matched","type":"array"},"ambiguous":{"default":[],"items":{"$ref":"#/$defs/AccountMatchAmbiguousV2"},"maxItems":200,"title":"Ambiguous","type":"array"},"unmatched":{"default":[],"description":"Inputs with no account in the workspace, verbatim.","items":{"type":"string"},"maxItems":200,"title":"Unmatched","type":"array"},"input_count":{"maximum":200,"minimum":0,"title":"Input Count","type":"integer"},"distinct_count":{"maximum":200,"minimum":0,"title":"Distinct Count","type":"integer"}},"required":["input_count","distinct_count"],"title":"AccountsMatchResultV2","type":"object"},"example":{"tool":"domain.data_quality.v2","arguments":{"params":{"action":"invoke","operation":"accounts.match.v2","arguments":{"items":["Example items"]},"operation_id":"00000000-0000-4000-8000-000000000003"}},"notice":"Fictional fixture IDs and example text. Resolve real IDs, use returned preview tokens and approve exact side effects before execution. Input validation is not proof of provider readiness or a successful business outcome."},"workflow_steps":[],"approval_policy":null,"idempotency_policy":"read_only","gateway_credit_code":null,"identity":"Workspace, actor and consent come from OAuth; do not supply identity fields.","retry":"Keep the same operation and operation_id when retrying identical work. Reconcile an uncertain result before new work; never replay an old V1 write under a new V2 ID.","completion":"Check status, execution_state, error_code, output and evidence/resource references. Queued work is not complete: poll jobs.status.get.v2 in domain.workspace.v2. For read-back verification require read_back_verified=true where returned; reconcile failures without creating another object.","result_envelope":{"status":"completed | partial | cancelled | failed","execution_state":"terminal | queued | reconciliation_required","output":"Completed results validate against output_schema; partial/reconciliation results can contain incomplete evidence and must not be treated as completion.","billing":"gateway_credits_spent, downstream_settlement, job_id; pending downstream settlement is not a final cost","references":"run_id, invocation_id, resource_refs, evidence_refs"},"documentation":"https://www.hivekind.ai/docs/mcp/data-quality#accounts-match-v2"},{"operation":"accounts.merge.execute.v2","domain":"data-quality","tool":"domain.data_quality.v2","title":"Execute an irreversible account merge","purpose":"You explicitly approved the exact survivor/absorbed pair after reviewing accounts.merge.preview.v2.","side_effects":"Moves related rows, fills survivor blanks, and permanently DELETES the absorbed account. Irreversible.","permission":"execute","required_scopes":["actions:execute"],"requires_operation_id":true,"billing":"No gateway rate is configured. Check the Core workflow preview/quote for downstream charges and final settlement.","required_resolved_fields":[],"next_call":{"tool":"domain.data_quality.v2","arguments":{"params":{"action":"describe","operation":"accounts.merge.execute.v2"}}},"catalog_revision":"07a373e389289e05","when_not_to_use":"You have not previewed the pair, are uncertain they are duplicates, or only want to suppress the suggestion.","description":"Use when: You explicitly approved the exact survivor/absorbed pair after reviewing accounts.merge.preview.v2. Returns/does: Moves related rows, fills survivor blanks, and permanently DELETES the absorbed account. Irreversible. Do not use when: You have not previewed the pair, are uncertain they are duplicates, or only want to suppress the suggestion. Identity comes from OAuth. Resolve exact IDs; use typed enums and bounded limits. Billing: Gateway and downstream billing depend on the operation; check its preview/quote and returned billing.","input_schema":{"additionalProperties":false,"properties":{"winner_account_id":{"description":"The account that would survive.","format":"uuid","title":"Winner Account Id","type":"string"},"absorbed_account_id":{"description":"The account that would be absorbed and deleted by execute.","format":"uuid","title":"Absorbed Account Id","type":"string"},"field_overrides":{"additionalProperties":{"enum":["winner","loser"],"type":"string"},"description":"Which record's value wins, for a column BOTH accounts have filled — for example {\"account_type\": \"loser\"}. A column left out keeps the survivor's value. Columns the survivor left blank are taken from the absorbed account either way, so this only settles real conflicts.","title":"Field Overrides","type":"object"},"action_proposal_id":{"anyOf":[{"format":"uuid","type":"string"},{"type":"null"}],"default":null,"description":"Optional. Hivekind fills this from the MCP consent grant.","title":"Action Proposal Id"}},"required":["winner_account_id","absorbed_account_id"],"title":"McpMcpAccountsMergeExecuteInputV2","type":"object"},"output_schema":{"$defs":{"MergedAccountBriefV1":{"additionalProperties":false,"description":"Enough of an account to say which row survived and which was absorbed.","properties":{"account_id":{"maxLength":64,"minLength":1,"title":"Account Id","type":"string"},"name":{"anyOf":[{"maxLength":255,"type":"string"},{"type":"null"}],"default":null,"title":"Name"},"domain":{"anyOf":[{"maxLength":255,"type":"string"},{"type":"null"}],"default":null,"title":"Domain"},"account_status":{"anyOf":[{"maxLength":32,"type":"string"},{"type":"null"}],"default":null,"title":"Account Status"},"web_url":{"anyOf":[{"maxLength":2048,"type":"string"},{"type":"null"}],"default":null,"description":"Browser link to this account (null for an absorbed account once the merge ran) in the Hivekind app. Use it verbatim whenever you link the record for a person, including inside note bodies; never build a link by hand or use a hivekind:// URI, which is an MCP resource handle, not a page. Null when the server has no app URL configured.","title":"Web Url"}},"required":["account_id"],"title":"MergedAccountBriefV1","type":"object"}},"additionalProperties":false,"properties":{"winner":{"$ref":"#/$defs/MergedAccountBriefV1"},"loser":{"$ref":"#/$defs/MergedAccountBriefV1"},"rows_moved":{"additionalProperties":{"type":"integer"},"description":"Child rows repointed onto the winner, by table.","title":"Rows Moved","type":"object"},"rows_dropped":{"additionalProperties":{"type":"integer"},"description":"Loser rows dropped because the winner already held the equivalent row.","title":"Rows Dropped","type":"object"},"fields_filled":{"default":[],"description":"Winner columns that were blank and were taken from the loser.","items":{"type":"string"},"maxItems":32,"title":"Fields Filled","type":"array"},"fields_overridden":{"default":[],"description":"Winner columns that held a value and were replaced by the loser's, because field_overrides asked for it.","items":{"type":"string"},"maxItems":32,"title":"Fields Overridden","type":"array"},"dry_run":{"default":false,"title":"Dry Run","type":"boolean"},"warnings":{"default":[],"items":{"type":"string"},"maxItems":32,"title":"Warnings","type":"array"}},"required":["winner","loser"],"title":"AccountsMergeResultV2","type":"object"},"example":{"tool":"domain.data_quality.v2","arguments":{"params":{"action":"invoke","operation":"accounts.merge.execute.v2","arguments":{"absorbed_account_id":"00000000-0000-4000-8000-000000000002","winner_account_id":"00000000-0000-4000-8000-000000000001"},"operation_id":"00000000-0000-4000-8000-000000000003"}},"notice":"Fictional fixture IDs and example text. Resolve real IDs, use returned preview tokens and approve exact side effects before execution. Input validation is not proof of provider readiness or a successful business outcome."},"workflow_steps":[],"approval_policy":"exact_scope_single_action","idempotency_policy":"approved_action_outbox","gateway_credit_code":null,"identity":"Workspace, actor and consent come from OAuth; do not supply identity fields.","retry":"Keep the same operation and operation_id when retrying identical work. Reconcile an uncertain result before new work; never replay an old V1 write under a new V2 ID.","completion":"Check status, execution_state, error_code, output and evidence/resource references. Queued work is not complete: poll jobs.status.get.v2 in domain.workspace.v2. For read-back verification require read_back_verified=true where returned; reconcile failures without creating another object.","result_envelope":{"status":"completed | partial | cancelled | failed","execution_state":"terminal | queued | reconciliation_required","output":"Completed results validate against output_schema; partial/reconciliation results can contain incomplete evidence and must not be treated as completion.","billing":"gateway_credits_spent, downstream_settlement, job_id; pending downstream settlement is not a final cost","references":"run_id, invocation_id, resource_refs, evidence_refs"},"documentation":"https://www.hivekind.ai/docs/mcp/data-quality#accounts-merge-execute-v2"},{"operation":"accounts.merge.preview.v2","domain":"data-quality","tool":"domain.data_quality.v2","title":"Preview an account merge","purpose":"You selected an exact survivor and absorbed account from duplicate evidence and need to see every row and field that would move.","side_effects":"Forces dry-run mode. Nothing is written or deleted.","permission":"propose","required_scopes":["accounts:read"],"requires_operation_id":true,"billing":"No gateway rate is configured. Check the Core workflow preview/quote for downstream charges and final settlement.","required_resolved_fields":[],"next_call":{"tool":"domain.data_quality.v2","arguments":{"params":{"action":"describe","operation":"accounts.merge.preview.v2"}}},"catalog_revision":"07a373e389289e05","when_not_to_use":"You want to apply the merge, or the accounts are not confirmed duplicates.","description":"Use when: You selected an exact survivor and absorbed account from duplicate evidence and need to see every row and field that would move. Returns/does: Forces dry-run mode. Nothing is written or deleted. Do not use when: You want to apply the merge, or the accounts are not confirmed duplicates. Identity comes from OAuth. Resolve exact IDs; use typed enums and bounded limits. Billing: Gateway and downstream billing depend on the operation; check its preview/quote and returned billing.","input_schema":{"additionalProperties":false,"properties":{"winner_account_id":{"description":"The account that would survive.","format":"uuid","title":"Winner Account Id","type":"string"},"absorbed_account_id":{"description":"The account that would be absorbed and deleted by execute.","format":"uuid","title":"Absorbed Account Id","type":"string"},"field_overrides":{"additionalProperties":{"enum":["winner","loser"],"type":"string"},"description":"Which record's value wins, for a column BOTH accounts have filled — for example {\"account_type\": \"loser\"}. A column left out keeps the survivor's value. Columns the survivor left blank are taken from the absorbed account either way, so this only settles real conflicts.","title":"Field Overrides","type":"object"}},"required":["winner_account_id","absorbed_account_id"],"title":"McpAccountsMergePreviewInputV2","type":"object"},"output_schema":{"$defs":{"MergedAccountBriefV1":{"additionalProperties":false,"description":"Enough of an account to say which row survived and which was absorbed.","properties":{"account_id":{"maxLength":64,"minLength":1,"title":"Account Id","type":"string"},"name":{"anyOf":[{"maxLength":255,"type":"string"},{"type":"null"}],"default":null,"title":"Name"},"domain":{"anyOf":[{"maxLength":255,"type":"string"},{"type":"null"}],"default":null,"title":"Domain"},"account_status":{"anyOf":[{"maxLength":32,"type":"string"},{"type":"null"}],"default":null,"title":"Account Status"},"web_url":{"anyOf":[{"maxLength":2048,"type":"string"},{"type":"null"}],"default":null,"description":"Browser link to this account (null for an absorbed account once the merge ran) in the Hivekind app. Use it verbatim whenever you link the record for a person, including inside note bodies; never build a link by hand or use a hivekind:// URI, which is an MCP resource handle, not a page. Null when the server has no app URL configured.","title":"Web Url"}},"required":["account_id"],"title":"MergedAccountBriefV1","type":"object"}},"additionalProperties":false,"properties":{"winner":{"$ref":"#/$defs/MergedAccountBriefV1"},"loser":{"$ref":"#/$defs/MergedAccountBriefV1"},"rows_moved":{"additionalProperties":{"type":"integer"},"description":"Child rows repointed onto the winner, by table.","title":"Rows Moved","type":"object"},"rows_dropped":{"additionalProperties":{"type":"integer"},"description":"Loser rows dropped because the winner already held the equivalent row.","title":"Rows Dropped","type":"object"},"fields_filled":{"default":[],"description":"Winner columns that were blank and were taken from the loser.","items":{"type":"string"},"maxItems":32,"title":"Fields Filled","type":"array"},"fields_overridden":{"default":[],"description":"Winner columns that held a value and were replaced by the loser's, because field_overrides asked for it.","items":{"type":"string"},"maxItems":32,"title":"Fields Overridden","type":"array"},"dry_run":{"default":false,"title":"Dry Run","type":"boolean"},"warnings":{"default":[],"items":{"type":"string"},"maxItems":32,"title":"Warnings","type":"array"}},"required":["winner","loser"],"title":"AccountsMergeResultV2","type":"object"},"example":{"tool":"domain.data_quality.v2","arguments":{"params":{"action":"invoke","operation":"accounts.merge.preview.v2","arguments":{"absorbed_account_id":"00000000-0000-4000-8000-000000000002","winner_account_id":"00000000-0000-4000-8000-000000000001"},"operation_id":"00000000-0000-4000-8000-000000000003"}},"notice":"Fictional fixture IDs and example text. Resolve real IDs, use returned preview tokens and approve exact side effects before execution. Input validation is not proof of provider readiness or a successful business outcome."},"workflow_steps":[],"approval_policy":null,"idempotency_policy":"read_only","gateway_credit_code":null,"identity":"Workspace, actor and consent come from OAuth; do not supply identity fields.","retry":"Keep the same operation and operation_id when retrying identical work. Reconcile an uncertain result before new work; never replay an old V1 write under a new V2 ID.","completion":"Check status, execution_state, error_code, output and evidence/resource references. Queued work is not complete: poll jobs.status.get.v2 in domain.workspace.v2. For read-back verification require read_back_verified=true where returned; reconcile failures without creating another object.","result_envelope":{"status":"completed | partial | cancelled | failed","execution_state":"terminal | queued | reconciliation_required","output":"Completed results validate against output_schema; partial/reconciliation results can contain incomplete evidence and must not be treated as completion.","billing":"gateway_credits_spent, downstream_settlement, job_id; pending downstream settlement is not a final cost","references":"run_id, invocation_id, resource_refs, evidence_refs"},"documentation":"https://www.hivekind.ai/docs/mcp/data-quality#accounts-merge-preview-v2"},{"operation":"accounts.owner.set.v2","domain":"data-quality","tool":"domain.data_quality.v2","title":"Assign an account owner","purpose":"Give accounts an owner, or move them to a different one. Do this for accounts that arrived without one: an account nobody owns is skipped by every rule-based grading run, so it can never be re-scored again.","side_effects":"Re-grades each account in the background against the new owner's rubric, which spends scoring credits. An owner with no rubric pinned has the account's score cleared instead.","permission":"execute","required_scopes":["actions:execute"],"requires_operation_id":true,"billing":"No gateway rate is configured. Check the Core workflow preview/quote for downstream charges and final settlement.","required_resolved_fields":[],"next_call":{"tool":"domain.data_quality.v2","arguments":{"params":{"action":"describe","operation":"accounts.owner.set.v2"}}},"catalog_revision":"07a373e389289e05","when_not_to_use":"Do not use this to change what an account is graded against in general — grading follows the owner's own pinned rubric, so this moves the account to that person's rubric as a side effect.","description":"Use when: Give accounts an owner, or move them to a different one. Do this for accounts that arrived without one: an account nobody owns is skipped by every rule-based grading run, so it can never be re-scored again. Returns/does: Re-grades each account in the background against the new owner's rubric, which spends scoring credits. An owner with no rubric pinned has the account's score cleared instead. Do not use when: Do not use this to change what an account is graded against in general — grading follows the owner's own pinned rubric, so this moves the account to that person's rubric as a side effect. Identity comes from OAuth. Resolve exact IDs; use typed enums and bounded limits. Billing: Gateway and downstream billing depend on the operation; check its preview/quote and returned billing.","input_schema":{"additionalProperties":false,"properties":{"account_ids":{"description":"Exact account UUIDs returned by a Hivekind search, list, get, preview, or resource call.","items":{"format":"uuid","type":"string"},"maxItems":100,"minItems":1,"title":"Account Ids","type":"array"},"owner_id":{"description":"The workspace member to own these accounts. Grading follows the owner's own pinned rubric, so choose someone assigned to the rubric these accounts should be graded against -- an owner with no rubric has their score cleared instead.","format":"uuid","title":"Owner Id","type":"string"},"action_proposal_id":{"anyOf":[{"format":"uuid","type":"string"},{"type":"null"}],"default":null,"description":"Optional. Hivekind fills this from the MCP consent grant.","title":"Action Proposal Id"}},"required":["account_ids","owner_id"],"title":"McpMcpAccountsOwnerSetInputV2","type":"object"},"output_schema":{"$defs":{"AccountOwnerAssignmentV2":{"additionalProperties":false,"description":"What became of one account in the batch.","properties":{"account_id":{"format":"uuid","title":"Account Id","type":"string"},"name":{"default":"","maxLength":255,"title":"Name","type":"string"},"assigned":{"default":false,"title":"Assigned","type":"boolean"},"reason":{"default":"","maxLength":500,"title":"Reason","type":"string"}},"required":["account_id"],"title":"AccountOwnerAssignmentV2","type":"object"}},"additionalProperties":false,"properties":{"owner_id":{"format":"uuid","title":"Owner Id","type":"string"},"assigned_count":{"default":0,"minimum":0,"title":"Assigned Count","type":"integer"},"failed_count":{"default":0,"minimum":0,"title":"Failed Count","type":"integer"},"accounts":{"default":[],"items":{"$ref":"#/$defs/AccountOwnerAssignmentV2"},"maxItems":100,"title":"Accounts","type":"array"}},"required":["owner_id"],"title":"AccountsOwnerSetResultV2","type":"object"},"example":{"tool":"domain.data_quality.v2","arguments":{"params":{"action":"invoke","operation":"accounts.owner.set.v2","arguments":{"account_ids":["00000000-0000-4000-8000-000000000001"],"owner_id":"00000000-0000-4000-8000-000000000001"},"operation_id":"00000000-0000-4000-8000-000000000003"}},"notice":"Fictional fixture IDs and example text. Resolve real IDs, use returned preview tokens and approve exact side effects before execution. Input validation is not proof of provider readiness or a successful business outcome."},"workflow_steps":[],"approval_policy":"exact_scope_single_action","idempotency_policy":"approved_action_outbox","gateway_credit_code":null,"identity":"Workspace, actor and consent come from OAuth; do not supply identity fields.","retry":"Keep the same operation and operation_id when retrying identical work. Reconcile an uncertain result before new work; never replay an old V1 write under a new V2 ID.","completion":"Check status, execution_state, error_code, output and evidence/resource references. Queued work is not complete: poll jobs.status.get.v2 in domain.workspace.v2. For read-back verification require read_back_verified=true where returned; reconcile failures without creating another object.","result_envelope":{"status":"completed | partial | cancelled | failed","execution_state":"terminal | queued | reconciliation_required","output":"Completed results validate against output_schema; partial/reconciliation results can contain incomplete evidence and must not be treated as completion.","billing":"gateway_credits_spent, downstream_settlement, job_id; pending downstream settlement is not a final cost","references":"run_id, invocation_id, resource_refs, evidence_refs"},"documentation":"https://www.hivekind.ai/docs/mcp/data-quality#accounts-owner-set-v2"},{"operation":"accounts.research.v2","domain":"intelligence","tool":"domain.intelligence.v2","title":"Account research","purpose":"Run billed research for one account (evidence, fit). Does not send mail.","side_effects":"May change workspace state or start work; describe before invoking.","permission":"propose","required_scopes":["accounts:read","research:run"],"requires_operation_id":true,"billing":"account_research","required_resolved_fields":[],"next_call":{"tool":"domain.intelligence.v2","arguments":{"params":{"action":"describe","operation":"accounts.research.v2"}}},"catalog_revision":"07a373e389289e05","when_not_to_use":"Do not use this to list accounts or to launch a campaign.","description":"Use when: Run billed research for one account (evidence, fit). Does not send mail. Returns/does: Changes workspace state or starts work; review the exact contract and approval requirements. Do not use when: Do not use this to list accounts or to launch a campaign. Identity comes from OAuth. Resolve exact IDs; use typed enums and bounded limits. Billing: account_research","input_schema":{"additionalProperties":false,"properties":{"account_id":{"description":"Exact account UUID returned by a Hivekind search, list, get, preview, or resource call.","format":"uuid","title":"Account Id","type":"string"},"name":{"description":"Human-readable name for the record.","maxLength":255,"minLength":1,"title":"Name","type":"string"},"domain":{"anyOf":[{"maxLength":255,"type":"string"},{"type":"null"}],"default":null,"description":"Domain used by the public accounts research input v2 operation.","title":"Domain"},"objective":{"description":"Plain-language outcome the user wants from this operation.","maxLength":2000,"minLength":1,"title":"Objective","type":"string"}},"required":["account_id","name","objective"],"title":"McpPublicAccountsResearchInputV2","type":"object"},"output_schema":{"$defs":{"EvidenceFindingV1":{"additionalProperties":false,"properties":{"claim":{"maxLength":2000,"minLength":1,"title":"Claim","type":"string"},"source_url":{"anyOf":[{"format":"uri","maxLength":2083,"minLength":1,"type":"string"},{"type":"null"}],"default":null,"title":"Source Url"},"source_label":{"maxLength":255,"minLength":1,"title":"Source Label","type":"string"},"observed_at":{"anyOf":[{"maxLength":64,"type":"string"},{"type":"null"}],"default":null,"title":"Observed At"}},"required":["claim","source_label"],"title":"EvidenceFindingV1","type":"object"}},"additionalProperties":false,"description":"V2 result for accounts.research.v2; preserves the established validators.","properties":{"account_id":{"format":"uuid","title":"Account Id","type":"string"},"summary":{"maxLength":4000,"minLength":1,"title":"Summary","type":"string"},"findings":{"default":[],"items":{"$ref":"#/$defs/EvidenceFindingV1"},"title":"Findings","type":"array"}},"required":["account_id","summary"],"title":"PublicAccountsResearchResultV2","type":"object"},"example":{"tool":"domain.intelligence.v2","arguments":{"params":{"action":"invoke","operation":"accounts.research.v2","arguments":{"account_id":"00000000-0000-4000-8000-000000000001","name":"Example name","objective":"Example objective"},"operation_id":"00000000-0000-4000-8000-000000000003"}},"notice":"Fictional fixture IDs and example text. Resolve real IDs, use returned preview tokens and approve exact side effects before execution. Input validation is not proof of provider readiness or a successful business outcome."},"workflow_steps":[],"approval_policy":null,"idempotency_policy":"run_task_account","gateway_credit_code":"account_research","identity":"Workspace, actor and consent come from OAuth; do not supply identity fields.","retry":"Keep the same operation and operation_id when retrying identical work. Reconcile an uncertain result before new work; never replay an old V1 write under a new V2 ID.","completion":"Check status, execution_state, error_code, output and evidence/resource references. Queued work is not complete: poll jobs.status.get.v2 in domain.workspace.v2. For read-back verification require read_back_verified=true where returned; reconcile failures without creating another object.","result_envelope":{"status":"completed | partial | cancelled | failed","execution_state":"terminal | queued | reconciliation_required","output":"Completed results validate against output_schema; partial/reconciliation results can contain incomplete evidence and must not be treated as completion.","billing":"gateway_credits_spent, downstream_settlement, job_id; pending downstream settlement is not a final cost","references":"run_id, invocation_id, resource_refs, evidence_refs"},"documentation":"https://www.hivekind.ai/docs/mcp/intelligence#accounts-research-v2"},{"operation":"accounts.search.v2","domain":"accounts","tool":"domain.accounts.v2","title":"Search accounts","purpose":"You need accounts selected by name, domain, owner, region, industry, saved ICP, or unified LinkedIn-plus-Partner network strength. Use network_strength_then_icp to rank warm accounts while retaining ungraded matches.","side_effects":"Applies network-strength and ICP filters before pagination, then returns one bounded, deterministically sorted page. Read only.","permission":"read","required_scopes":["accounts:read"],"requires_operation_id":false,"billing":"No gateway credit charge; reads saved workspace data without starting paid provider work.","required_resolved_fields":[],"next_call":{"tool":"domain.accounts.v2","arguments":{"params":{"action":"describe","operation":"accounts.search.v2"}}},"catalog_revision":"07a373e389289e05","when_not_to_use":"The audience requires contact-level LinkedIn evidence, buyer roles, or signals; use targets.preview.v2.","description":"Use when: You need accounts selected by name, domain, owner, region, industry, saved ICP, or unified LinkedIn-plus-Partner network strength. Use network_strength_then_icp to rank warm accounts while retaining ungraded matches. Returns/does: Applies network-strength and ICP filters before pagination, then returns one bounded, deterministically sorted page. Read only. Do not use when: The audience requires contact-level LinkedIn evidence, buyer roles, or signals; use targets.preview.v2. Identity comes from OAuth. Resolve exact IDs; use typed enums and bounded limits. Billing: Gateway and downstream billing depend on the operation; check its preview/quote and returned billing.","input_schema":{"additionalProperties":false,"properties":{"query":{"default":"*","description":"Search text. Use a name, domain, title, or other identifying phrase relevant to this operation.","maxLength":1000,"minLength":1,"title":"Query","type":"string"},"match_mode":{"default":"contains","description":"How query is matched against an account's name and domain. \"contains\" finds it anywhere in either; \"prefix\" matches the start; \"exact\" matches the whole name or the whole domain, case insensitively. Reach for exact or prefix when you already know the company's name — a short word matches a great many companies in the middle of a longer name.","enum":["contains","exact","prefix"],"title":"Match Mode","type":"string"},"account_ids":{"default":[],"description":"Exact account UUIDs returned by a Hivekind search, list, get, preview, or resource call.","items":{"format":"uuid","type":"string"},"maxItems":100,"title":"Account Ids","type":"array"},"tags":{"default":[],"description":"Only accounts carrying these account tags, matched case-insensitively. See tags_match. List the workspace's tags with accounts.tags.list.v2.","items":{"maxLength":64,"minLength":1,"type":"string"},"maxItems":10,"title":"Tags","type":"array"},"tags_match":{"default":"any","description":"any: an account with at least one of tags. all: every one of them.","enum":["any","all"],"title":"Tags Match","type":"string"},"campaign_ids":{"default":[],"description":"Only accounts that belong to any of these campaigns (archived campaigns included). Combines with every other filter. Page through with offset to pull a whole campaign's accounts.","items":{"format":"uuid","type":"string"},"maxItems":50,"title":"Campaign Ids","type":"array"},"source_ids":{"default":[],"description":"Only accounts linked to any of these import sources (workshop, event, webinar or list badges).","items":{"format":"uuid","type":"string"},"maxItems":50,"title":"Source Ids","type":"array"},"icp_grades":{"default":[],"description":"Icp grades used by the accounts search input v2 operation.","items":{"type":"string"},"maxItems":8,"title":"Icp Grades","type":"array"},"industries":{"default":[],"description":"Industries used by the accounts search input v2 operation.","items":{"type":"string"},"maxItems":50,"title":"Industries","type":"array"},"regions":{"default":[],"description":"Regions used by the accounts search input v2 operation.","items":{"type":"string"},"maxItems":50,"title":"Regions","type":"array"},"owner_ids":{"default":[],"description":"Exact owner UUIDs returned by a Hivekind search, list, get, preview, or resource call.","items":{"format":"uuid","type":"string"},"maxItems":100,"title":"Owner Ids","type":"array"},"owner_scope":{"default":"any","description":"Owner scope used by the accounts search input v2 operation.","enum":["any","assigned","unassigned","mine"],"title":"Owner Scope","type":"string"},"account_types":{"default":[],"description":"Account types used by the accounts search input v2 operation.","items":{"type":"string"},"maxItems":20,"title":"Account Types","type":"array"},"in_hiveloop":{"anyOf":[{"type":"boolean"},{"type":"null"}],"default":null,"description":"In hiveloop used by the accounts search input v2 operation.","title":"In Hiveloop"},"minimum_icp_score":{"anyOf":[{"maximum":100,"minimum":0,"type":"number"},{"type":"null"}],"default":null,"description":"Minimum icp score used to bound matching records.","title":"Minimum Icp Score"},"maximum_icp_score":{"anyOf":[{"maximum":100,"minimum":0,"type":"number"},{"type":"null"}],"default":null,"description":"Maximum icp score used to bound matching records.","title":"Maximum Icp Score"},"minimum_employee_count":{"anyOf":[{"maximum":10000000,"minimum":0,"type":"integer"},{"type":"null"}],"default":null,"description":"Minimum employee count used to bound matching records.","title":"Minimum Employee Count"},"maximum_employee_count":{"anyOf":[{"maximum":10000000,"minimum":0,"type":"integer"},{"type":"null"}],"default":null,"description":"Maximum employee count used to bound matching records.","title":"Maximum Employee Count"},"network_sources":{"default":["linkedin","partner"],"description":"Network source types counted for filtering and ranking. LinkedIn uses self plus consented workspace members; partner uses confirmed usable active Channel Partner routes.","items":{"enum":["linkedin","partner"],"type":"string"},"maxItems":2,"minItems":1,"title":"Network Sources","type":"array"},"minimum_network_strength":{"anyOf":[{"maximum":3,"minimum":1,"type":"integer"},{"type":"null"}],"default":null,"description":"Require at least this many distinct usable network sources, capped at three. Applied before sorting and pagination.","title":"Minimum Network Strength"},"sort_by":{"default":"updated_at","description":"updated_at (the default) lists the accounts added or changed most recently first. Pass icp_score to rank by fit, or network_strength_then_icp to rank by reachable network.","enum":["updated_at","icp_score","name","created_at","network_strength_then_icp"],"title":"Sort By","type":"string"},"sort_direction":{"default":"desc","description":"Sort direction used by the accounts search input v2 operation.","enum":["asc","desc"],"title":"Sort Direction","type":"string"},"offset":{"default":0,"description":"Zero-based number of matching records to skip for pagination.","maximum":1000000,"minimum":0,"title":"Offset","type":"integer"},"limit":{"default":25,"description":"Maximum number of records to return in this page.","maximum":100,"minimum":1,"title":"Limit","type":"integer"}},"title":"McpAccountsSearchInputV2","type":"object"},"output_schema":{"$defs":{"AccountCampaignMembershipV1":{"additionalProperties":false,"description":"One campaign an account belongs to (HIVE-1388).","properties":{"campaign_id":{"format":"uuid","title":"Campaign Id","type":"string"},"name":{"maxLength":255,"title":"Name","type":"string"},"status":{"description":"The campaign's status: \"active\", \"draft\", \"paused\", or \"archived\" once it has been archived, whatever it was before.","maxLength":64,"title":"Status","type":"string"},"added_at":{"anyOf":[{"format":"date-time","type":"string"},{"type":"null"}],"default":null,"description":"When the account joined the campaign (UTC).","title":"Added At"}},"required":["campaign_id","name","status"],"title":"AccountCampaignMembershipV1","type":"object"},"AccountSummaryV1":{"additionalProperties":false,"properties":{"account_id":{"format":"uuid","title":"Account Id","type":"string"},"name":{"maxLength":255,"minLength":1,"title":"Name","type":"string"},"domain":{"anyOf":[{"maxLength":255,"type":"string"},{"type":"null"}],"default":null,"title":"Domain"},"industry":{"anyOf":[{"maxLength":255,"type":"string"},{"type":"null"}],"default":null,"title":"Industry"},"region":{"anyOf":[{"maxLength":255,"type":"string"},{"type":"null"}],"default":null,"title":"Region"},"employee_count":{"anyOf":[{"minimum":0,"type":"integer"},{"type":"null"}],"default":null,"title":"Employee Count"},"owner_id":{"anyOf":[{"format":"uuid","type":"string"},{"type":"null"}],"default":null,"title":"Owner Id"},"account_type":{"anyOf":[{"maxLength":64,"type":"string"},{"type":"null"}],"default":null,"title":"Account Type"},"icp_score":{"anyOf":[{"maximum":100,"minimum":0,"type":"number"},{"type":"null"}],"default":null,"title":"Icp Score"},"icp_grade":{"anyOf":[{"maxLength":32,"type":"string"},{"type":"null"}],"default":null,"title":"Icp Grade"},"updated_at":{"anyOf":[{"format":"date-time","type":"string"},{"type":"null"}],"default":null,"description":"When the account record last changed (UTC).","title":"Updated At"},"icp_disqualified":{"default":false,"description":"True when a rubric disqualifier matched this account. A disqualifier pins the account to the rubric's lowest tier no matter how well it scored, so a high icp_score beside a low icp_grade is expected here, not a data error.","title":"Icp Disqualified","type":"boolean"},"icp_disqualification_reason":{"anyOf":[{"maxLength":500,"type":"string"},{"type":"null"}],"default":null,"description":"Which disqualifier matched and why. Null unless icp_disqualified is true.","title":"Icp Disqualification Reason"},"network_strength":{"default":0,"description":"Connection strength from distinct usable LinkedIn workspace members and Channel Partner organizations, capped at three.","maximum":3,"minimum":0,"title":"Network Strength","type":"integer"},"independent_source_count":{"default":0,"description":"Uncapped number of distinct usable network sources.","minimum":0,"title":"Independent Source Count","type":"integer"},"linkedin_member_count":{"default":0,"description":"Distinct consented workspace LinkedIn members with a usable route.","minimum":0,"title":"Linkedin Member Count","type":"integer"},"partner_count":{"default":0,"description":"Distinct active Channel Partner organizations with confirmed usable routes.","minimum":0,"title":"Partner Count","type":"integer"},"partner_names":{"default":[],"description":"Names of active Channel Partners providing usable routes.","items":{"type":"string"},"maxItems":20,"title":"Partner Names","type":"array"},"tags":{"default":[],"description":"Account tags on this account (free-form workspace labels).","items":{"type":"string"},"maxItems":50,"title":"Tags","type":"array"},"web_url":{"anyOf":[{"maxLength":2048,"type":"string"},{"type":"null"}],"default":null,"description":"Browser link to this account in the Hivekind app. Use it verbatim whenever you link the record for a person, including inside note bodies; never build a link by hand or use a hivekind:// URI, which is an MCP resource handle, not a page. Null when the server has no app URL configured.","title":"Web Url"},"campaigns":{"anyOf":[{"items":{"$ref":"#/$defs/AccountCampaignMembershipV1"},"maxItems":50,"type":"array"},{"type":"null"}],"default":null,"description":"Every campaign this account belongs to, archived ones included, newest membership first. An empty list means it is in none; null means this tool did not look.","title":"Campaigns"}},"required":["account_id","name"],"title":"AccountSummaryV1","type":"object"}},"additionalProperties":false,"properties":{"accounts":{"default":[],"items":{"$ref":"#/$defs/AccountSummaryV1"},"title":"Accounts","type":"array"},"total":{"default":0,"minimum":0,"title":"Total","type":"integer"},"offset":{"default":0,"minimum":0,"title":"Offset","type":"integer"},"limit":{"default":25,"maximum":100,"minimum":1,"title":"Limit","type":"integer"}},"title":"AccountsSearchResultV2","type":"object"},"example":{"tool":"domain.accounts.v2","arguments":{"params":{"action":"invoke","operation":"accounts.search.v2","arguments":{},"operation_id":"00000000-0000-4000-8000-000000000003"}},"notice":"Fictional fixture IDs and example text. Resolve real IDs, use returned preview tokens and approve exact side effects before execution. Input validation is not proof of provider readiness or a successful business outcome."},"workflow_steps":[],"approval_policy":null,"idempotency_policy":"read_only","gateway_credit_code":null,"identity":"Workspace, actor and consent come from OAuth; do not supply identity fields.","retry":"Keep the same operation and operation_id when retrying identical work. Reconcile an uncertain result before new work; never replay an old V1 write under a new V2 ID.","completion":"Check status, execution_state, error_code, output and evidence/resource references. Queued work is not complete: poll jobs.status.get.v2 in domain.workspace.v2. For read-back verification require read_back_verified=true where returned; reconcile failures without creating another object.","result_envelope":{"status":"completed | partial | cancelled | failed","execution_state":"terminal | queued | reconciliation_required","output":"Completed results validate against output_schema; partial/reconciliation results can contain incomplete evidence and must not be treated as completion.","billing":"gateway_credits_spent, downstream_settlement, job_id; pending downstream settlement is not a final cost","references":"run_id, invocation_id, resource_refs, evidence_refs"},"documentation":"https://www.hivekind.ai/docs/mcp/accounts#accounts-search-v2"},{"operation":"accounts.tags.apply.v2","domain":"accounts","tool":"domain.accounts.v2","title":"Tag accounts","purpose":"Add or remove free-form account tags (e.g. \"TechWeek 2026\") on many accounts at once. Pick the accounts with exactly one of account_ids (up to 500), campaign_id (every account in that campaign's audience) or event_id (every account the event's roster was matched to or created). Resolve existing tag names with accounts.tags.list.v2 first, then call with dry_run true and show the user how many accounts would change before applying.","side_effects":"Adds or removes tags only. No credits are spent, nothing is re-scored, and contacts, HiveLoops and drafts are untouched. Tag names are trimmed and matched case-insensitively; a name with no existing match creates a new tag with the casing given. Archived accounts and ids outside the workspace are skipped with a reason; accounts that already have the tag are reported as unchanged. dry_run true writes nothing.","permission":"execute","required_scopes":["actions:execute"],"requires_operation_id":true,"billing":"No gateway rate is configured. Check the Core workflow preview/quote for downstream charges and final settlement.","required_resolved_fields":[],"next_call":{"tool":"domain.accounts.v2","arguments":{"params":{"action":"describe","operation":"accounts.tags.apply.v2"}}},"catalog_revision":"07a373e389289e05","when_not_to_use":"Do not use this to edit account fields — that is accounts.update.v2 — or to add accounts to a campaign, which is campaigns.audience.add.v2. Do not use it to badge where a list came from: imports already badge their source. To tag accounts as they are imported, pass tags on the import tools instead.","description":"Use when: Add or remove free-form account tags (e.g. \"TechWeek 2026\") on many accounts at once. Pick the accounts with exactly one of account_ids (up to 500), campaign_id (every account in that campaign's audience) or event_id (every account the event's roster was matched to or created). Resolve existing tag names with accounts.tags.list.v2 first, then call with dry_run true and show the user how many accounts would change before applying. Returns/does: Adds or removes tags only. No credits are spent, nothing is re-scored, and contacts, HiveLoops and drafts are untouched. Tag names are trimmed and matched case-insensitively; a name with no existing match creates a new tag with the casing given. Archived accounts and ids outside the workspace are skipped with a reason; accounts that already have the tag are reported as unchanged. dry_run true writes nothing. Do not use when: Do not use this to edit account fields — that is accounts.update.v2 — or to add accounts to a campaign, which is campaigns.audience.add.v2. Do not use it to badge where a list came from: imports already badge their source. To tag accounts as they are imported, pass tags on the import tools instead. Identity comes from OAuth. Resolve exact IDs; use typed enums and bounded limits. Billing: Gateway and downstream billing depend on the operation; check its preview/quote and returned billing.","input_schema":{"additionalProperties":false,"properties":{"action_proposal_id":{"anyOf":[{"format":"uuid","type":"string"},{"type":"null"}],"default":null,"description":"Optional. Hivekind fills this from the MCP consent grant.","title":"Action Proposal Id"},"account_ids":{"anyOf":[{"items":{"format":"uuid","type":"string"},"maxItems":500,"minItems":1,"type":"array"},{"type":"null"}],"default":null,"description":"Exact accounts to tag. One of account_ids, campaign_id or event_id.","title":"Account Ids"},"campaign_id":{"anyOf":[{"format":"uuid","type":"string"},{"type":"null"}],"default":null,"description":"Tag every account in this campaign's audience.","title":"Campaign Id"},"event_id":{"anyOf":[{"format":"uuid","type":"string"},{"type":"null"}],"default":null,"description":"Tag every account this event's roster was matched to or created.","title":"Event Id"},"add_tags":{"default":[],"description":"Add tags used by the public accounts tags apply input v2 operation.","items":{"maxLength":64,"minLength":1,"type":"string"},"maxItems":10,"title":"Add Tags","type":"array"},"remove_tags":{"default":[],"description":"Remove tags used by the public accounts tags apply input v2 operation.","items":{"maxLength":64,"minLength":1,"type":"string"},"maxItems":10,"title":"Remove Tags","type":"array"},"dry_run":{"default":false,"description":"Report what would change and write nothing. Run this first and show the user.","title":"Dry Run","type":"boolean"}},"title":"McpMcpPublicAccountsTagsApplyInputV2","type":"object"},"output_schema":{"$defs":{"AccountTagRefV1":{"additionalProperties":false,"properties":{"tag_id":{"anyOf":[{"format":"uuid","type":"string"},{"type":"null"}],"default":null,"description":"Null only in a dry run, for a tag the real run would create.","title":"Tag Id"},"name":{"maxLength":64,"minLength":1,"title":"Name","type":"string"},"color":{"maxLength":32,"minLength":1,"title":"Color","type":"string"},"exists":{"default":true,"description":"False when the tag does not exist yet (dry run only).","title":"Exists","type":"boolean"}},"required":["name","color"],"title":"AccountTagRefV1","type":"object"},"AccountTagSkipV1":{"additionalProperties":false,"properties":{"account_id":{"format":"uuid","title":"Account Id","type":"string"},"reason":{"description":"archived: the account is archived. not_found: no such account in this workspace.","enum":["archived","not_found"],"title":"Reason","type":"string"}},"required":["account_id","reason"],"title":"AccountTagSkipV1","type":"object"}},"additionalProperties":false,"description":"V2 result for accounts.tags.apply.v2; preserves the established validators.","properties":{"dry_run":{"title":"Dry Run","type":"boolean"},"selector":{"enum":["account_ids","campaign_id","event_id"],"title":"Selector","type":"string"},"selected":{"description":"Accounts the selector picked, before skips.","minimum":0,"title":"Selected","type":"integer"},"tagged":{"description":"Accounts that changed (or would, in a dry run).","minimum":0,"title":"Tagged","type":"integer"},"unchanged":{"description":"Accounts that already had every tag asked for.","minimum":0,"title":"Unchanged","type":"integer"},"skipped":{"default":[],"items":{"$ref":"#/$defs/AccountTagSkipV1"},"maxItems":500,"title":"Skipped","type":"array"},"tags":{"default":[],"description":"Tags added, as stored.","items":{"$ref":"#/$defs/AccountTagRefV1"},"maxItems":10,"title":"Tags","type":"array"},"removed_tags":{"default":[],"items":{"$ref":"#/$defs/AccountTagRefV1"},"maxItems":10,"title":"Removed Tags","type":"array"},"tagged_account_ids":{"default":[],"items":{"format":"uuid","type":"string"},"maxItems":500,"title":"Tagged Account Ids","type":"array"},"ids_truncated":{"default":false,"title":"Ids Truncated","type":"boolean"}},"required":["dry_run","selector","selected","tagged","unchanged"],"title":"PublicAccountsTagsApplyResultV2","type":"object"},"example":{"tool":"domain.accounts.v2","arguments":{"params":{"action":"invoke","operation":"accounts.tags.apply.v2","arguments":{"account_ids":["00000000-0000-4000-8000-000000000001"],"add_tags":["Event attendee"]},"operation_id":"00000000-0000-4000-8000-000000000003"}},"notice":"Fictional fixture IDs and example text. Resolve real IDs, use returned preview tokens and approve exact side effects before execution. Input validation is not proof of provider readiness or a successful business outcome."},"workflow_steps":[],"approval_policy":"exact_scope_single_action","idempotency_policy":"approved_action_outbox","gateway_credit_code":null,"identity":"Workspace, actor and consent come from OAuth; do not supply identity fields.","retry":"Keep the same operation and operation_id when retrying identical work. Reconcile an uncertain result before new work; never replay an old V1 write under a new V2 ID.","completion":"Check status, execution_state, error_code, output and evidence/resource references. Queued work is not complete: poll jobs.status.get.v2 in domain.workspace.v2. For read-back verification require read_back_verified=true where returned; reconcile failures without creating another object.","result_envelope":{"status":"completed | partial | cancelled | failed","execution_state":"terminal | queued | reconciliation_required","output":"Completed results validate against output_schema; partial/reconciliation results can contain incomplete evidence and must not be treated as completion.","billing":"gateway_credits_spent, downstream_settlement, job_id; pending downstream settlement is not a final cost","references":"run_id, invocation_id, resource_refs, evidence_refs"},"documentation":"https://www.hivekind.ai/docs/mcp/accounts#accounts-tags-apply-v2"},{"operation":"accounts.tags.list.v2","domain":"accounts","tool":"domain.accounts.v2","title":"List account tags","purpose":"See which account tags the workspace already uses and how many active accounts carry each, so a new tag reuses an existing name instead of creating a near-duplicate. Use query to look up a name.","side_effects":"Reads current workspace state.","permission":"read","required_scopes":["accounts:read"],"requires_operation_id":false,"billing":"No gateway credit charge; reads saved workspace data without starting paid provider work.","required_resolved_fields":[],"next_call":{"tool":"domain.accounts.v2","arguments":{"params":{"action":"describe","operation":"accounts.tags.list.v2"}}},"catalog_revision":"07a373e389289e05","when_not_to_use":"Do not use this to find the accounts carrying a tag — that is accounts.search.v2 with tags. Import source badges (workshops, events, lists) are not tags.","description":"Use when: See which account tags the workspace already uses and how many active accounts carry each, so a new tag reuses an existing name instead of creating a near-duplicate. Use query to look up a name. Returns/does: Reads the current authorized workspace state. Do not use when: Do not use this to find the accounts carrying a tag — that is accounts.search.v2 with tags. Import source badges (workshops, events, lists) are not tags. Identity comes from OAuth. Resolve exact IDs; use typed enums and bounded limits. Billing: Gateway and downstream billing depend on the operation; check its preview/quote and returned billing.","input_schema":{"additionalProperties":false,"properties":{"query":{"anyOf":[{"maxLength":64,"minLength":1,"type":"string"},{"type":"null"}],"default":null,"description":"Only tags whose name contains this, case-insensitively.","title":"Query"},"limit":{"default":100,"description":"Maximum number of records to return in this page.","maximum":200,"minimum":1,"title":"Limit","type":"integer"}},"title":"McpPublicAccountsTagsListInputV2","type":"object"},"output_schema":{"$defs":{"AccountTagUsageV1":{"additionalProperties":false,"properties":{"tag_id":{"format":"uuid","title":"Tag Id","type":"string"},"name":{"maxLength":64,"minLength":1,"title":"Name","type":"string"},"color":{"maxLength":32,"minLength":1,"title":"Color","type":"string"},"account_count":{"description":"Active accounts carrying the tag.","minimum":0,"title":"Account Count","type":"integer"}},"required":["tag_id","name","color","account_count"],"title":"AccountTagUsageV1","type":"object"}},"additionalProperties":false,"description":"V2 result for accounts.tags.list.v2; preserves the established validators.","properties":{"tags":{"default":[],"items":{"$ref":"#/$defs/AccountTagUsageV1"},"maxItems":200,"title":"Tags","type":"array"},"total":{"description":"Matching tags before limit.","minimum":0,"title":"Total","type":"integer"}},"required":["total"],"title":"PublicAccountsTagsListResultV2","type":"object"},"example":{"tool":"domain.accounts.v2","arguments":{"params":{"action":"invoke","operation":"accounts.tags.list.v2","arguments":{},"operation_id":"00000000-0000-4000-8000-000000000003"}},"notice":"Fictional fixture IDs and example text. Resolve real IDs, use returned preview tokens and approve exact side effects before execution. Input validation is not proof of provider readiness or a successful business outcome."},"workflow_steps":[],"approval_policy":null,"idempotency_policy":"read_only","gateway_credit_code":null,"identity":"Workspace, actor and consent come from OAuth; do not supply identity fields.","retry":"Keep the same operation and operation_id when retrying identical work. Reconcile an uncertain result before new work; never replay an old V1 write under a new V2 ID.","completion":"Check status, execution_state, error_code, output and evidence/resource references. Queued work is not complete: poll jobs.status.get.v2 in domain.workspace.v2. For read-back verification require read_back_verified=true where returned; reconcile failures without creating another object.","result_envelope":{"status":"completed | partial | cancelled | failed","execution_state":"terminal | queued | reconciliation_required","output":"Completed results validate against output_schema; partial/reconciliation results can contain incomplete evidence and must not be treated as completion.","billing":"gateway_credits_spent, downstream_settlement, job_id; pending downstream settlement is not a final cost","references":"run_id, invocation_id, resource_refs, evidence_refs"},"documentation":"https://www.hivekind.ai/docs/mcp/accounts#accounts-tags-list-v2"},{"operation":"accounts.update.v2","domain":"data-quality","tool":"domain.data_quality.v2","title":"Edit account fields","purpose":"Correct or fill in an account's details — name, domain, industry, region, type, subtype, tier or owner — on one account or on many at once. Pass dry_run true first to see exactly which accounts would change, what each change sets off, and what it would cost; use clear_fields to empty a field, since leaving a field out means 'keep it'.","side_effects":"Changing the owner re-scores each account in the background against the new owner's pinned rubric, which spends scoring credits; an owner with no rubric has the account's score cleared instead. Contacts, HiveLoops and drafts are NOT reassigned — only the account's owner moves. Changing account_type to Competitor pins the grade to F, Self and Partner pin it to \"-\", and each of those keeps a matching Context Library entry in step. Accounts that are archived, outside the workspace, unchanged, or whose new domain is already taken are skipped with a reason rather than failing the call.","permission":"execute","required_scopes":["actions:execute"],"requires_operation_id":true,"billing":"No gateway rate is configured. Check the Core workflow preview/quote for downstream charges and final settlement.","required_resolved_fields":[],"next_call":{"tool":"domain.data_quality.v2","arguments":{"params":{"action":"describe","operation":"accounts.update.v2"}}},"catalog_revision":"07a373e389289e05","when_not_to_use":"Do not use this to archive an account — that is accounts.archive.v2 — or to delete one, which is accounts.delete.v2. Do not use it to combine two records for the same company — that is accounts.merge.execute.v2. Changing an account's type to Competitor, Self or Partner pins its ICP grade, so do not reach for it as a way to adjust a score.","description":"Use when: Correct or fill in an account's details — name, domain, industry, region, type, subtype, tier or owner — on one account or on many at once. Pass dry_run true first to see exactly which accounts would change, what each change sets off, and what it would cost; use clear_fields to empty a field, since leaving a field out means 'keep it'. Returns/does: Changing the owner re-scores each account in the background against the new owner's pinned rubric, which spends scoring credits; an owner with no rubric has the account's score cleared instead. Contacts, HiveLoops and drafts are NOT reassigned — only the account's owner moves. Changing account_type to Competitor pins the grade to F, Self and Partner pin it to \"-\", and each of those keeps a matching Context Library entry in step. Accounts that are archived, outside the workspace, unchanged, or whose new domain is already taken are skipped with a reason rather than failing the call. Do not use when: Do not use this to archive an account — that is accounts.archive.v2 — or to delete one, which is accounts.delete.v2. Do not use it to combine two records for the same company — that is accounts.merge.execute.v2. Changing an account's type to Competitor, Self or Partner pins its ICP grade, so do not reach for it as a way to adjust a score. Identity comes from OAuth. Resolve exact IDs; use typed enums and bounded limits. Billing: Gateway and downstream billing depend on the operation; check its preview/quote and returned billing.","input_schema":{"$defs":{"AccountFieldUpdatesV1":{"additionalProperties":false,"description":"New values for the fields being changed. Omitted means \"leave alone\".","properties":{"name":{"anyOf":[{"maxLength":255,"minLength":1,"type":"string"},{"type":"null"}],"default":null,"description":"Company name.","title":"Name"},"domain":{"anyOf":[{"maxLength":255,"minLength":1,"type":"string"},{"type":"null"}],"default":null,"description":"Primary company domain. Normalised on the way in, so a full URL is accepted. Only settable on one account per call, because the workspace allows one account per domain.","title":"Domain"},"industry":{"anyOf":[{"maxLength":255,"minLength":1,"type":"string"},{"type":"null"}],"default":null,"title":"Industry"},"region":{"anyOf":[{"maxLength":255,"minLength":1,"type":"string"},{"type":"null"}],"default":null,"title":"Region"},"account_type":{"anyOf":[{"maxLength":64,"minLength":1,"type":"string"},{"type":"null"}],"default":null,"description":"Prospect, Client, Prior Client, Partner, Competitor or Self. Competitor pins the ICP grade to F, Self and Partner pin it to \"-\", and each of the four keeps a matching Context Library entry in step.","title":"Account Type"},"account_subtype":{"anyOf":[{"maxLength":64,"minLength":1,"type":"string"},{"type":"null"}],"default":null,"title":"Account Subtype"},"account_tier":{"anyOf":[{"pattern":"^[A-Da-d]$","type":"string"},{"type":"null"}],"default":null,"description":"A, B, C or D.","title":"Account Tier"},"partner_type":{"anyOf":[{"maxLength":64,"minLength":1,"type":"string"},{"type":"null"}],"default":null,"title":"Partner Type"},"user_id":{"anyOf":[{"format":"uuid","type":"string"},{"type":"null"}],"default":null,"description":"New owner. Changing it re-scores the account against that person's pinned rubric, which spends credits; an owner with no rubric has the account's score cleared instead.","title":"User Id"}},"title":"AccountFieldUpdatesV1","type":"object"}},"additionalProperties":false,"properties":{"action_proposal_id":{"anyOf":[{"format":"uuid","type":"string"},{"type":"null"}],"default":null,"description":"Optional. Hivekind fills this from the MCP consent grant.","title":"Action Proposal Id"},"account_ids":{"description":"Accounts to apply the same change to.","items":{"format":"uuid","type":"string"},"maxItems":500,"minItems":1,"title":"Account Ids","type":"array"},"updates":{"$ref":"#/$defs/AccountFieldUpdatesV1","description":"Fields to set. Leave a field out to keep its value."},"clear_fields":{"default":[],"description":"Fields to set back to empty: user_id, account_tier, account_subtype, partner_type, industry, region. Leaving a field out of updates keeps it; only this clears it.","items":{"type":"string"},"maxItems":6,"title":"Clear Fields","type":"array"},"dry_run":{"default":false,"description":"True previews the per-account change and what it would cost, and writes nothing. Preview first whenever the change moves owners — each re-scored account spends credits.","title":"Dry Run","type":"boolean"}},"required":["account_ids"],"title":"McpMcpAccountsUpdateInputV2","type":"object"},"output_schema":{"$defs":{"AccountUpdateOutcomeV1":{"additionalProperties":false,"description":"What one account in the batch did, or would do.","properties":{"account_id":{"maxLength":64,"minLength":1,"title":"Account Id","type":"string"},"name":{"anyOf":[{"maxLength":255,"type":"string"},{"type":"null"}],"default":null,"title":"Name"},"web_url":{"anyOf":[{"maxLength":2048,"type":"string"},{"type":"null"}],"default":null,"description":"Browser link to this account in the Hivekind app. Use it verbatim whenever you link the record for a person, including inside note bodies; never build a link by hand or use a hivekind:// URI, which is an MCP resource handle, not a page. Null when the server has no app URL configured.","title":"Web Url"},"updated":{"default":false,"title":"Updated","type":"boolean"},"changed_fields":{"default":[],"description":"Fields that actually differed; unchanged values are not rewritten.","items":{"type":"string"},"maxItems":16,"title":"Changed Fields","type":"array"},"reason":{"anyOf":[{"maxLength":64,"type":"string"},{"type":"null"}],"default":null,"description":"Why this account was left alone. One of: not_found (outside the workspace), archived, domain_taken (another account already holds that domain), no_change, update_failed. Null when it was updated.","title":"Reason"},"consequences":{"default":[],"description":"What this change sets off elsewhere — re-scores, cleared grades, Library entries. Repeat these to the user rather than paraphrasing.","items":{"type":"string"},"maxItems":8,"title":"Consequences","type":"array"}},"required":["account_id"],"title":"AccountUpdateOutcomeV1","type":"object"}},"additionalProperties":false,"properties":{"results":{"default":[],"items":{"$ref":"#/$defs/AccountUpdateOutcomeV1"},"maxItems":500,"title":"Results","type":"array"},"updated":{"default":0,"minimum":0,"title":"Updated","type":"integer"},"skipped":{"default":0,"description":"Accounts left alone; each one's reason is on its outcome.","minimum":0,"title":"Skipped","type":"integer"},"dry_run":{"default":false,"title":"Dry Run","type":"boolean"},"accounts_to_rescore":{"default":0,"description":"Accounts whose owner change fires a metered ICP re-score.","minimum":0,"title":"Accounts To Rescore","type":"integer"},"estimated_credits":{"default":"0","description":"Credits those re-scores are expected to cost, from the workspace rate card. Decimal as a string.","maxLength":32,"title":"Estimated Credits","type":"string"}},"title":"AccountsUpdateResultV2","type":"object"},"example":{"tool":"domain.data_quality.v2","arguments":{"params":{"action":"invoke","operation":"accounts.update.v2","arguments":{"account_ids":["00000000-0000-4000-8000-000000000001"],"updates":{"industry":"Software"}},"operation_id":"00000000-0000-4000-8000-000000000003"}},"notice":"Fictional fixture IDs and example text. Resolve real IDs, use returned preview tokens and approve exact side effects before execution. Input validation is not proof of provider readiness or a successful business outcome."},"workflow_steps":[],"approval_policy":"exact_scope_single_action","idempotency_policy":"approved_action_outbox","gateway_credit_code":null,"identity":"Workspace, actor and consent come from OAuth; do not supply identity fields.","retry":"Keep the same operation and operation_id when retrying identical work. Reconcile an uncertain result before new work; never replay an old V1 write under a new V2 ID.","completion":"Check status, execution_state, error_code, output and evidence/resource references. Queued work is not complete: poll jobs.status.get.v2 in domain.workspace.v2. For read-back verification require read_back_verified=true where returned; reconcile failures without creating another object.","result_envelope":{"status":"completed | partial | cancelled | failed","execution_state":"terminal | queued | reconciliation_required","output":"Completed results validate against output_schema; partial/reconciliation results can contain incomplete evidence and must not be treated as completion.","billing":"gateway_credits_spent, downstream_settlement, job_id; pending downstream settlement is not a final cost","references":"run_id, invocation_id, resource_refs, evidence_refs"},"documentation":"https://www.hivekind.ai/docs/mcp/data-quality#accounts-update-v2"},{"operation":"analytics.campaigns.get.v2","domain":"intelligence","tool":"domain.intelligence.v2","title":"Campaign and loop execution metrics","purpose":"Use the existing Core workflow: Campaign and loop execution metrics. Loop execution counts; no program spend or causal ROI.","side_effects":"Read only.","permission":"read","required_scopes":["accounts:read"],"requires_operation_id":false,"billing":"No gateway credit charge; reads saved workspace data without starting paid provider work.","required_resolved_fields":[],"next_call":{"tool":"domain.intelligence.v2","arguments":{"params":{"action":"describe","operation":"analytics.campaigns.get.v2"}}},"catalog_revision":"07a373e389289e05","when_not_to_use":"Do not infer unsupported history, attribution, or commitments from this response.","description":"Use when: Use the existing Core workflow: Campaign and loop execution metrics. Loop execution counts; no program spend or causal ROI. Returns/does: Read only. Do not use when: Do not infer unsupported history, attribution, or commitments from this response. Identity comes from OAuth. Resolve exact IDs; use typed enums and bounded limits. Billing: Gateway and downstream billing depend on the operation; check its preview/quote and returned billing.","input_schema":{"additionalProperties":false,"properties":{"time_period":{"default":"quarter","description":"Time period used by the analytics campaigns get input v2 operation.","enum":["day","week","month","quarter"],"title":"Time Period","type":"string"}},"title":"McpAnalyticsCampaignsGetInputV2","type":"object"},"output_schema":{"additionalProperties":false,"properties":{"title":{"title":"Title","type":"string"},"data":{"additionalProperties":true,"title":"Data","type":"object"},"limitations":{"title":"Limitations","type":"string"},"applied_parameters":{"additionalProperties":true,"title":"Applied Parameters","type":"object"},"source_path":{"title":"Source Path","type":"string"},"job_id":{"anyOf":[{"type":"string"},{"type":"null"}],"default":null,"description":"Core job identifier when an operation enqueues work; poll jobs.status.get.v2 and read the resulting resource.","title":"Job Id"},"queued":{"default":false,"title":"Queued","type":"boolean"},"outcome_status":{"default":"partial","enum":["completed","partial","needs_input","awaiting_approval"],"title":"Outcome Status","type":"string"},"read_back_verified":{"default":false,"title":"Read Back Verified","type":"boolean"},"verification_message":{"anyOf":[{"type":"string"},{"type":"null"}],"default":null,"title":"Verification Message"}},"required":["title","data","limitations","source_path"],"title":"AnalyticsResultV2","type":"object"},"example":{"tool":"domain.intelligence.v2","arguments":{"params":{"action":"invoke","operation":"analytics.campaigns.get.v2","arguments":{},"operation_id":"00000000-0000-4000-8000-000000000003"}},"notice":"Fictional fixture IDs and example text. Resolve real IDs, use returned preview tokens and approve exact side effects before execution. Input validation is not proof of provider readiness or a successful business outcome."},"workflow_steps":[],"approval_policy":null,"idempotency_policy":"caller_operation","gateway_credit_code":null,"identity":"Workspace, actor and consent come from OAuth; do not supply identity fields.","retry":"Keep the same operation and operation_id when retrying identical work. Reconcile an uncertain result before new work; never replay an old V1 write under a new V2 ID.","completion":"Check status, execution_state, error_code, output and evidence/resource references. Queued work is not complete: poll jobs.status.get.v2 in domain.workspace.v2. For read-back verification require read_back_verified=true where returned; reconcile failures without creating another object.","result_envelope":{"status":"completed | partial | cancelled | failed","execution_state":"terminal | queued | reconciliation_required","output":"Completed results validate against output_schema; partial/reconciliation results can contain incomplete evidence and must not be treated as completion.","billing":"gateway_credits_spent, downstream_settlement, job_id; pending downstream settlement is not a final cost","references":"run_id, invocation_id, resource_refs, evidence_refs"},"documentation":"https://www.hivekind.ai/docs/mcp/intelligence#analytics-campaigns-get-v2"},{"operation":"analytics.outcomes.get.v2","domain":"intelligence","tool":"domain.intelligence.v2","title":"Recorded outcome counts","purpose":"Use the existing Core workflow: Recorded outcome counts. Recorded outcomes and unmatched records; no causal attribution or commercial commitments.","side_effects":"Read only.","permission":"read","required_scopes":["accounts:read"],"requires_operation_id":false,"billing":"No gateway credit charge; reads saved workspace data without starting paid provider work.","required_resolved_fields":[],"next_call":{"tool":"domain.intelligence.v2","arguments":{"params":{"action":"describe","operation":"analytics.outcomes.get.v2"}}},"catalog_revision":"07a373e389289e05","when_not_to_use":"Do not infer unsupported history, attribution, or commitments from this response.","description":"Use when: Use the existing Core workflow: Recorded outcome counts. Recorded outcomes and unmatched records; no causal attribution or commercial commitments. Returns/does: Read only. Do not use when: Do not infer unsupported history, attribution, or commitments from this response. Identity comes from OAuth. Resolve exact IDs; use typed enums and bounded limits. Billing: Gateway and downstream billing depend on the operation; check its preview/quote and returned billing.","input_schema":{"additionalProperties":false,"properties":{"period":{"default":"quarter","description":"Backend-supported reporting window. Quarter is 90 days, not fiscal-quarter history.","enum":["7d","30d","quarter"],"title":"Period","type":"string"}},"title":"McpPublicAnalyticsOutcomesGetInputV2","type":"object"},"output_schema":{"additionalProperties":false,"description":"V2 result for analytics.outcomes.get.v2; preserves the established validators.","properties":{"title":{"title":"Title","type":"string"},"data":{"additionalProperties":true,"title":"Data","type":"object"},"limitations":{"title":"Limitations","type":"string"},"applied_parameters":{"additionalProperties":true,"title":"Applied Parameters","type":"object"},"source_path":{"title":"Source Path","type":"string"},"job_id":{"anyOf":[{"type":"string"},{"type":"null"}],"default":null,"description":"Core job identifier when an operation enqueues work; poll jobs.status.get.v2 and read the resulting resource.","title":"Job Id"},"queued":{"default":false,"title":"Queued","type":"boolean"},"outcome_status":{"default":"partial","enum":["completed","partial","needs_input","awaiting_approval"],"title":"Outcome Status","type":"string"},"read_back_verified":{"default":false,"title":"Read Back Verified","type":"boolean"},"verification_message":{"anyOf":[{"type":"string"},{"type":"null"}],"default":null,"title":"Verification Message"}},"required":["title","data","limitations","source_path"],"title":"PublicAnalyticsOutcomesGetResultV2","type":"object"},"example":{"tool":"domain.intelligence.v2","arguments":{"params":{"action":"invoke","operation":"analytics.outcomes.get.v2","arguments":{},"operation_id":"00000000-0000-4000-8000-000000000003"}},"notice":"Fictional fixture IDs and example text. Resolve real IDs, use returned preview tokens and approve exact side effects before execution. Input validation is not proof of provider readiness or a successful business outcome."},"workflow_steps":[],"approval_policy":null,"idempotency_policy":"caller_operation","gateway_credit_code":null,"identity":"Workspace, actor and consent come from OAuth; do not supply identity fields.","retry":"Keep the same operation and operation_id when retrying identical work. Reconcile an uncertain result before new work; never replay an old V1 write under a new V2 ID.","completion":"Check status, execution_state, error_code, output and evidence/resource references. Queued work is not complete: poll jobs.status.get.v2 in domain.workspace.v2. For read-back verification require read_back_verified=true where returned; reconcile failures without creating another object.","result_envelope":{"status":"completed | partial | cancelled | failed","execution_state":"terminal | queued | reconciliation_required","output":"Completed results validate against output_schema; partial/reconciliation results can contain incomplete evidence and must not be treated as completion.","billing":"gateway_credits_spent, downstream_settlement, job_id; pending downstream settlement is not a final cost","references":"run_id, invocation_id, resource_refs, evidence_refs"},"documentation":"https://www.hivekind.ai/docs/mcp/intelligence#analytics-outcomes-get-v2"},{"operation":"analytics.overview.get.v2","domain":"intelligence","tool":"domain.intelligence.v2","title":"Revenue outcome overview","purpose":"Use the existing Core workflow: Revenue outcome overview. Aggregate KPIs; not a historical rep-by-tier cohort funnel.","side_effects":"Read only.","permission":"read","required_scopes":["accounts:read"],"requires_operation_id":false,"billing":"No gateway credit charge; reads saved workspace data without starting paid provider work.","required_resolved_fields":[],"next_call":{"tool":"domain.intelligence.v2","arguments":{"params":{"action":"describe","operation":"analytics.overview.get.v2"}}},"catalog_revision":"07a373e389289e05","when_not_to_use":"Do not infer unsupported history, attribution, or commitments from this response.","description":"Use when: Use the existing Core workflow: Revenue outcome overview. Aggregate KPIs; not a historical rep-by-tier cohort funnel. Returns/does: Read only. Do not use when: Do not infer unsupported history, attribution, or commitments from this response. Identity comes from OAuth. Resolve exact IDs; use typed enums and bounded limits. Billing: Gateway and downstream billing depend on the operation; check its preview/quote and returned billing.","input_schema":{"additionalProperties":false,"properties":{"period":{"default":"quarter","description":"Backend-supported reporting window. Quarter is 90 days, not fiscal-quarter history.","enum":["7d","30d","quarter"],"title":"Period","type":"string"}},"title":"McpAnalyticsOverviewGetInputV2","type":"object"},"output_schema":{"additionalProperties":false,"properties":{"title":{"title":"Title","type":"string"},"data":{"additionalProperties":true,"title":"Data","type":"object"},"limitations":{"title":"Limitations","type":"string"},"applied_parameters":{"additionalProperties":true,"title":"Applied Parameters","type":"object"},"source_path":{"title":"Source Path","type":"string"},"job_id":{"anyOf":[{"type":"string"},{"type":"null"}],"default":null,"description":"Core job identifier when an operation enqueues work; poll jobs.status.get.v2 and read the resulting resource.","title":"Job Id"},"queued":{"default":false,"title":"Queued","type":"boolean"},"outcome_status":{"default":"partial","enum":["completed","partial","needs_input","awaiting_approval"],"title":"Outcome Status","type":"string"},"read_back_verified":{"default":false,"title":"Read Back Verified","type":"boolean"},"verification_message":{"anyOf":[{"type":"string"},{"type":"null"}],"default":null,"title":"Verification Message"}},"required":["title","data","limitations","source_path"],"title":"AnalyticsResultV2","type":"object"},"example":{"tool":"domain.intelligence.v2","arguments":{"params":{"action":"invoke","operation":"analytics.overview.get.v2","arguments":{},"operation_id":"00000000-0000-4000-8000-000000000003"}},"notice":"Fictional fixture IDs and example text. Resolve real IDs, use returned preview tokens and approve exact side effects before execution. Input validation is not proof of provider readiness or a successful business outcome."},"workflow_steps":[],"approval_policy":null,"idempotency_policy":"caller_operation","gateway_credit_code":null,"identity":"Workspace, actor and consent come from OAuth; do not supply identity fields.","retry":"Keep the same operation and operation_id when retrying identical work. Reconcile an uncertain result before new work; never replay an old V1 write under a new V2 ID.","completion":"Check status, execution_state, error_code, output and evidence/resource references. Queued work is not complete: poll jobs.status.get.v2 in domain.workspace.v2. For read-back verification require read_back_verified=true where returned; reconcile failures without creating another object.","result_envelope":{"status":"completed | partial | cancelled | failed","execution_state":"terminal | queued | reconciliation_required","output":"Completed results validate against output_schema; partial/reconciliation results can contain incomplete evidence and must not be treated as completion.","billing":"gateway_credits_spent, downstream_settlement, job_id; pending downstream settlement is not a final cost","references":"run_id, invocation_id, resource_refs, evidence_refs"},"documentation":"https://www.hivekind.ai/docs/mcp/intelligence#analytics-overview-get-v2"},{"operation":"analytics.pipeline.compare.v2","domain":"intelligence","tool":"domain.intelligence.v2","title":"Pipeline snapshot comparison","purpose":"Use the existing Core workflow: Pipeline snapshot comparison. Compare available snapshots; not eight-quarter win/loss cohorts or a commitment baseline.","side_effects":"Read only.","permission":"read","required_scopes":["accounts:read"],"requires_operation_id":false,"billing":"No gateway credit charge; reads saved workspace data without starting paid provider work.","required_resolved_fields":[],"next_call":{"tool":"domain.intelligence.v2","arguments":{"params":{"action":"describe","operation":"analytics.pipeline.compare.v2"}}},"catalog_revision":"07a373e389289e05","when_not_to_use":"Do not infer unsupported history, attribution, or commitments from this response.","description":"Use when: Use the existing Core workflow: Pipeline snapshot comparison. Compare available snapshots; not eight-quarter win/loss cohorts or a commitment baseline. Returns/does: Read only. Do not use when: Do not infer unsupported history, attribution, or commitments from this response. Identity comes from OAuth. Resolve exact IDs; use typed enums and bounded limits. Billing: Gateway and downstream billing depend on the operation; check its preview/quote and returned billing.","input_schema":{"additionalProperties":false,"properties":{"comparison_days":{"default":90,"description":"Comparison days used by the analytics pipeline compare input v2 operation.","maximum":3650,"minimum":1,"title":"Comparison Days","type":"integer"},"current_snapshot_date":{"anyOf":[{"format":"date","type":"string"},{"type":"null"}],"default":null,"description":"Exact available snapshot date; requires previous_snapshot_date.","title":"Current Snapshot Date"},"previous_snapshot_date":{"anyOf":[{"format":"date","type":"string"},{"type":"null"}],"default":null,"description":"Earlier available snapshot date; requires current_snapshot_date.","title":"Previous Snapshot Date"}},"title":"McpAnalyticsPipelineCompareInputV2","type":"object"},"output_schema":{"additionalProperties":false,"properties":{"title":{"title":"Title","type":"string"},"data":{"additionalProperties":true,"title":"Data","type":"object"},"limitations":{"title":"Limitations","type":"string"},"applied_parameters":{"additionalProperties":true,"title":"Applied Parameters","type":"object"},"source_path":{"title":"Source Path","type":"string"},"job_id":{"anyOf":[{"type":"string"},{"type":"null"}],"default":null,"description":"Core job identifier when an operation enqueues work; poll jobs.status.get.v2 and read the resulting resource.","title":"Job Id"},"queued":{"default":false,"title":"Queued","type":"boolean"},"outcome_status":{"default":"partial","enum":["completed","partial","needs_input","awaiting_approval"],"title":"Outcome Status","type":"string"},"read_back_verified":{"default":false,"title":"Read Back Verified","type":"boolean"},"verification_message":{"anyOf":[{"type":"string"},{"type":"null"}],"default":null,"title":"Verification Message"}},"required":["title","data","limitations","source_path"],"title":"AnalyticsResultV2","type":"object"},"example":{"tool":"domain.intelligence.v2","arguments":{"params":{"action":"invoke","operation":"analytics.pipeline.compare.v2","arguments":{},"operation_id":"00000000-0000-4000-8000-000000000003"}},"notice":"Fictional fixture IDs and example text. Resolve real IDs, use returned preview tokens and approve exact side effects before execution. Input validation is not proof of provider readiness or a successful business outcome."},"workflow_steps":[],"approval_policy":null,"idempotency_policy":"caller_operation","gateway_credit_code":null,"identity":"Workspace, actor and consent come from OAuth; do not supply identity fields.","retry":"Keep the same operation and operation_id when retrying identical work. Reconcile an uncertain result before new work; never replay an old V1 write under a new V2 ID.","completion":"Check status, execution_state, error_code, output and evidence/resource references. Queued work is not complete: poll jobs.status.get.v2 in domain.workspace.v2. For read-back verification require read_back_verified=true where returned; reconcile failures without creating another object.","result_envelope":{"status":"completed | partial | cancelled | failed","execution_state":"terminal | queued | reconciliation_required","output":"Completed results validate against output_schema; partial/reconciliation results can contain incomplete evidence and must not be treated as completion.","billing":"gateway_credits_spent, downstream_settlement, job_id; pending downstream settlement is not a final cost","references":"run_id, invocation_id, resource_refs, evidence_refs"},"documentation":"https://www.hivekind.ai/docs/mcp/intelligence#analytics-pipeline-compare-v2"},{"operation":"analytics.pipeline.dates.get.v2","domain":"intelligence","tool":"domain.intelligence.v2","title":"Available pipeline snapshot dates","purpose":"Use the existing Core workflow: Available pipeline snapshot dates. Available snapshots and periods only; resolve exact comparison dates before requesting historical analysis.","side_effects":"Read only.","permission":"read","required_scopes":["accounts:read"],"requires_operation_id":false,"billing":"No gateway credit charge; reads saved workspace data without starting paid provider work.","required_resolved_fields":[],"next_call":{"tool":"domain.intelligence.v2","arguments":{"params":{"action":"describe","operation":"analytics.pipeline.dates.get.v2"}}},"catalog_revision":"07a373e389289e05","when_not_to_use":"Do not infer unsupported history, attribution, or commitments from this response.","description":"Use when: Use the existing Core workflow: Available pipeline snapshot dates. Available snapshots and periods only; resolve exact comparison dates before requesting historical analysis. Returns/does: Read only. Do not use when: Do not infer unsupported history, attribution, or commitments from this response. Identity comes from OAuth. Resolve exact IDs; use typed enums and bounded limits. Billing: Gateway and downstream billing depend on the operation; check its preview/quote and returned billing.","input_schema":{"additionalProperties":false,"properties":{},"title":"McpAnalyticsPipelineDatesGetInputV2","type":"object"},"output_schema":{"additionalProperties":false,"properties":{"title":{"title":"Title","type":"string"},"data":{"additionalProperties":true,"title":"Data","type":"object"},"limitations":{"title":"Limitations","type":"string"},"applied_parameters":{"additionalProperties":true,"title":"Applied Parameters","type":"object"},"source_path":{"title":"Source Path","type":"string"},"job_id":{"anyOf":[{"type":"string"},{"type":"null"}],"default":null,"description":"Core job identifier when an operation enqueues work; poll jobs.status.get.v2 and read the resulting resource.","title":"Job Id"},"queued":{"default":false,"title":"Queued","type":"boolean"},"outcome_status":{"default":"partial","enum":["completed","partial","needs_input","awaiting_approval"],"title":"Outcome Status","type":"string"},"read_back_verified":{"default":false,"title":"Read Back Verified","type":"boolean"},"verification_message":{"anyOf":[{"type":"string"},{"type":"null"}],"default":null,"title":"Verification Message"}},"required":["title","data","limitations","source_path"],"title":"AnalyticsResultV2","type":"object"},"example":{"tool":"domain.intelligence.v2","arguments":{"params":{"action":"invoke","operation":"analytics.pipeline.dates.get.v2","arguments":{},"operation_id":"00000000-0000-4000-8000-000000000003"}},"notice":"Fictional fixture IDs and example text. Resolve real IDs, use returned preview tokens and approve exact side effects before execution. Input validation is not proof of provider readiness or a successful business outcome."},"workflow_steps":[],"approval_policy":null,"idempotency_policy":"caller_operation","gateway_credit_code":null,"identity":"Workspace, actor and consent come from OAuth; do not supply identity fields.","retry":"Keep the same operation and operation_id when retrying identical work. Reconcile an uncertain result before new work; never replay an old V1 write under a new V2 ID.","completion":"Check status, execution_state, error_code, output and evidence/resource references. Queued work is not complete: poll jobs.status.get.v2 in domain.workspace.v2. For read-back verification require read_back_verified=true where returned; reconcile failures without creating another object.","result_envelope":{"status":"completed | partial | cancelled | failed","execution_state":"terminal | queued | reconciliation_required","output":"Completed results validate against output_schema; partial/reconciliation results can contain incomplete evidence and must not be treated as completion.","billing":"gateway_credits_spent, downstream_settlement, job_id; pending downstream settlement is not a final cost","references":"run_id, invocation_id, resource_refs, evidence_refs"},"documentation":"https://www.hivekind.ai/docs/mcp/intelligence#analytics-pipeline-dates-get-v2"},{"operation":"analytics.readiness.get.v2","domain":"intelligence","tool":"domain.intelligence.v2","title":"Pre-pipeline funnel and owner coverage","purpose":"Use the existing Core workflow: Pre-pipeline funnel and owner coverage. Current readiness and owner scorecard; not historical owner/tier conversion.","side_effects":"Read only.","permission":"read","required_scopes":["accounts:read"],"requires_operation_id":false,"billing":"No gateway credit charge; reads saved workspace data without starting paid provider work.","required_resolved_fields":[],"next_call":{"tool":"domain.intelligence.v2","arguments":{"params":{"action":"describe","operation":"analytics.readiness.get.v2"}}},"catalog_revision":"07a373e389289e05","when_not_to_use":"Do not infer unsupported history, attribution, or commitments from this response.","description":"Use when: Use the existing Core workflow: Pre-pipeline funnel and owner coverage. Current readiness and owner scorecard; not historical owner/tier conversion. Returns/does: Read only. Do not use when: Do not infer unsupported history, attribution, or commitments from this response. Identity comes from OAuth. Resolve exact IDs; use typed enums and bounded limits. Billing: Gateway and downstream billing depend on the operation; check its preview/quote and returned billing.","input_schema":{"additionalProperties":false,"properties":{"owner_id":{"anyOf":[{"format":"uuid","type":"string"},{"type":"null"}],"default":null,"description":"Existing workspace member UUID; omitted means workspace scope.","title":"Owner Id"},"owner_scope":{"default":"any","description":"Use mine for the authenticated actor; do not guess or send the actor identity. Cannot combine mine with owner_id.","enum":["any","mine"],"title":"Owner Scope","type":"string"}},"title":"McpPublicAnalyticsReadinessGetInputV2","type":"object"},"output_schema":{"additionalProperties":false,"description":"V2 result for analytics.readiness.get.v2; preserves the established validators.","properties":{"title":{"title":"Title","type":"string"},"data":{"additionalProperties":true,"title":"Data","type":"object"},"limitations":{"title":"Limitations","type":"string"},"applied_parameters":{"additionalProperties":true,"title":"Applied Parameters","type":"object"},"source_path":{"title":"Source Path","type":"string"},"job_id":{"anyOf":[{"type":"string"},{"type":"null"}],"default":null,"description":"Core job identifier when an operation enqueues work; poll jobs.status.get.v2 and read the resulting resource.","title":"Job Id"},"queued":{"default":false,"title":"Queued","type":"boolean"},"outcome_status":{"default":"partial","enum":["completed","partial","needs_input","awaiting_approval"],"title":"Outcome Status","type":"string"},"read_back_verified":{"default":false,"title":"Read Back Verified","type":"boolean"},"verification_message":{"anyOf":[{"type":"string"},{"type":"null"}],"default":null,"title":"Verification Message"}},"required":["title","data","limitations","source_path"],"title":"PublicAnalyticsReadinessGetResultV2","type":"object"},"example":{"tool":"domain.intelligence.v2","arguments":{"params":{"action":"invoke","operation":"analytics.readiness.get.v2","arguments":{},"operation_id":"00000000-0000-4000-8000-000000000003"}},"notice":"Fictional fixture IDs and example text. Resolve real IDs, use returned preview tokens and approve exact side effects before execution. Input validation is not proof of provider readiness or a successful business outcome."},"workflow_steps":[],"approval_policy":null,"idempotency_policy":"caller_operation","gateway_credit_code":null,"identity":"Workspace, actor and consent come from OAuth; do not supply identity fields.","retry":"Keep the same operation and operation_id when retrying identical work. Reconcile an uncertain result before new work; never replay an old V1 write under a new V2 ID.","completion":"Check status, execution_state, error_code, output and evidence/resource references. Queued work is not complete: poll jobs.status.get.v2 in domain.workspace.v2. For read-back verification require read_back_verified=true where returned; reconcile failures without creating another object.","result_envelope":{"status":"completed | partial | cancelled | failed","execution_state":"terminal | queued | reconciliation_required","output":"Completed results validate against output_schema; partial/reconciliation results can contain incomplete evidence and must not be treated as completion.","billing":"gateway_credits_spent, downstream_settlement, job_id; pending downstream settlement is not a final cost","references":"run_id, invocation_id, resource_refs, evidence_refs"},"documentation":"https://www.hivekind.ai/docs/mcp/intelligence#analytics-readiness-get-v2"},{"operation":"analytics.relationships.coverage.v2","domain":"intelligence","tool":"domain.intelligence.v2","title":"LinkedIn individual and team match coverage","purpose":"Use the existing Core workflow: LinkedIn individual and team match coverage. Consented LinkedIn match coverage only; not board/investor/advisor paths, relationship strength, or proof that an unmatched account is cold.","side_effects":"Read only.","permission":"read","required_scopes":["accounts:read"],"requires_operation_id":false,"billing":"No gateway credit charge; reads saved workspace data without starting paid provider work.","required_resolved_fields":[],"next_call":{"tool":"domain.intelligence.v2","arguments":{"params":{"action":"describe","operation":"analytics.relationships.coverage.v2"}}},"catalog_revision":"07a373e389289e05","when_not_to_use":"Do not infer unsupported history, attribution, or commitments from this response.","description":"Use when: Use the existing Core workflow: LinkedIn individual and team match coverage. Consented LinkedIn match coverage only; not board/investor/advisor paths, relationship strength, or proof that an unmatched account is cold. Returns/does: Read only. Do not use when: Do not infer unsupported history, attribution, or commitments from this response. Identity comes from OAuth. Resolve exact IDs; use typed enums and bounded limits. Billing: Gateway and downstream billing depend on the operation; check its preview/quote and returned billing.","input_schema":{"additionalProperties":false,"properties":{},"title":"McpPublicAnalyticsRelationshipsCoverageInputV2","type":"object"},"output_schema":{"additionalProperties":false,"description":"V2 result for analytics.relationships.coverage.v2; preserves the established validators.","properties":{"title":{"title":"Title","type":"string"},"data":{"additionalProperties":true,"title":"Data","type":"object"},"limitations":{"title":"Limitations","type":"string"},"applied_parameters":{"additionalProperties":true,"title":"Applied Parameters","type":"object"},"source_path":{"title":"Source Path","type":"string"},"job_id":{"anyOf":[{"type":"string"},{"type":"null"}],"default":null,"description":"Core job identifier when an operation enqueues work; poll jobs.status.get.v2 and read the resulting resource.","title":"Job Id"},"queued":{"default":false,"title":"Queued","type":"boolean"},"outcome_status":{"default":"partial","enum":["completed","partial","needs_input","awaiting_approval"],"title":"Outcome Status","type":"string"},"read_back_verified":{"default":false,"title":"Read Back Verified","type":"boolean"},"verification_message":{"anyOf":[{"type":"string"},{"type":"null"}],"default":null,"title":"Verification Message"}},"required":["title","data","limitations","source_path"],"title":"PublicAnalyticsRelationshipsCoverageResultV2","type":"object"},"example":{"tool":"domain.intelligence.v2","arguments":{"params":{"action":"invoke","operation":"analytics.relationships.coverage.v2","arguments":{},"operation_id":"00000000-0000-4000-8000-000000000003"}},"notice":"Fictional fixture IDs and example text. Resolve real IDs, use returned preview tokens and approve exact side effects before execution. Input validation is not proof of provider readiness or a successful business outcome."},"workflow_steps":[],"approval_policy":null,"idempotency_policy":"caller_operation","gateway_credit_code":null,"identity":"Workspace, actor and consent come from OAuth; do not supply identity fields.","retry":"Keep the same operation and operation_id when retrying identical work. Reconcile an uncertain result before new work; never replay an old V1 write under a new V2 ID.","completion":"Check status, execution_state, error_code, output and evidence/resource references. Queued work is not complete: poll jobs.status.get.v2 in domain.workspace.v2. For read-back verification require read_back_verified=true where returned; reconcile failures without creating another object.","result_envelope":{"status":"completed | partial | cancelled | failed","execution_state":"terminal | queued | reconciliation_required","output":"Completed results validate against output_schema; partial/reconciliation results can contain incomplete evidence and must not be treated as completion.","billing":"gateway_credits_spent, downstream_settlement, job_id; pending downstream settlement is not a final cost","references":"run_id, invocation_id, resource_refs, evidence_refs"},"documentation":"https://www.hivekind.ai/docs/mcp/intelligence#analytics-relationships-coverage-v2"},{"operation":"analytics.signals.geography.get.v2","domain":"intelligence","tool":"domain.intelligence.v2","title":"Signal geography and coverage","purpose":"Use the existing Core workflow: Signal geography and coverage. Recorded signals by geography; not collector completeness, urgency scoring, or a notification subscription.","side_effects":"Read only.","permission":"read","required_scopes":["accounts:read"],"requires_operation_id":false,"billing":"No gateway credit charge; reads saved workspace data without starting paid provider work.","required_resolved_fields":[],"next_call":{"tool":"domain.intelligence.v2","arguments":{"params":{"action":"describe","operation":"analytics.signals.geography.get.v2"}}},"catalog_revision":"07a373e389289e05","when_not_to_use":"Do not infer unsupported history, attribution, or commitments from this response.","description":"Use when: Use the existing Core workflow: Signal geography and coverage. Recorded signals by geography; not collector completeness, urgency scoring, or a notification subscription. Returns/does: Read only. Do not use when: Do not infer unsupported history, attribution, or commitments from this response. Identity comes from OAuth. Resolve exact IDs; use typed enums and bounded limits. Billing: Gateway and downstream billing depend on the operation; check its preview/quote and returned billing.","input_schema":{"additionalProperties":false,"properties":{"start_date":{"anyOf":[{"format":"date-time","type":"string"},{"type":"null"}],"default":null,"description":"Start date used by the analytics signals geography get input v2 operation.","title":"Start Date"},"end_date":{"anyOf":[{"format":"date-time","type":"string"},{"type":"null"}],"default":null,"description":"End date used by the analytics signals geography get input v2 operation.","title":"End Date"},"owner_id":{"default":[],"description":"Exact owner UUID returned by a Hivekind search, list, get, preview, or resource call.","items":{"format":"uuid","type":"string"},"maxItems":50,"title":"Owner Id","type":"array"},"region":{"default":[],"description":"Region used by the analytics signals geography get input v2 operation.","items":{"type":"string"},"maxItems":50,"title":"Region","type":"array"},"signal_type":{"default":[],"description":"Signal type used by the analytics signals geography get input v2 operation.","items":{"type":"string"},"maxItems":50,"title":"Signal Type","type":"array"},"icp_grade":{"default":[],"description":"Icp grade used by the analytics signals geography get input v2 operation.","items":{"type":"string"},"maxItems":8,"title":"Icp Grade","type":"array"},"granularity":{"default":"region","description":"Granularity used by the analytics signals geography get input v2 operation.","enum":["city","state","country","region"],"title":"Granularity","type":"string"},"signal_scope":{"default":"important","description":"Signal scope used by the analytics signals geography get input v2 operation.","enum":["important","all"],"title":"Signal Scope","type":"string"},"owner_scope":{"default":"any","description":"Use mine for the authenticated actor; do not guess or send the actor identity. Cannot combine mine with owner_id.","enum":["any","mine"],"title":"Owner Scope","type":"string"}},"title":"McpAnalyticsSignalsGeographyGetInputV2","type":"object"},"output_schema":{"additionalProperties":false,"properties":{"title":{"title":"Title","type":"string"},"data":{"additionalProperties":true,"title":"Data","type":"object"},"limitations":{"title":"Limitations","type":"string"},"applied_parameters":{"additionalProperties":true,"title":"Applied Parameters","type":"object"},"source_path":{"title":"Source Path","type":"string"},"job_id":{"anyOf":[{"type":"string"},{"type":"null"}],"default":null,"description":"Core job identifier when an operation enqueues work; poll jobs.status.get.v2 and read the resulting resource.","title":"Job Id"},"queued":{"default":false,"title":"Queued","type":"boolean"},"outcome_status":{"default":"partial","enum":["completed","partial","needs_input","awaiting_approval"],"title":"Outcome Status","type":"string"},"read_back_verified":{"default":false,"title":"Read Back Verified","type":"boolean"},"verification_message":{"anyOf":[{"type":"string"},{"type":"null"}],"default":null,"title":"Verification Message"}},"required":["title","data","limitations","source_path"],"title":"AnalyticsResultV2","type":"object"},"example":{"tool":"domain.intelligence.v2","arguments":{"params":{"action":"invoke","operation":"analytics.signals.geography.get.v2","arguments":{},"operation_id":"00000000-0000-4000-8000-000000000003"}},"notice":"Fictional fixture IDs and example text. Resolve real IDs, use returned preview tokens and approve exact side effects before execution. Input validation is not proof of provider readiness or a successful business outcome."},"workflow_steps":[],"approval_policy":null,"idempotency_policy":"caller_operation","gateway_credit_code":null,"identity":"Workspace, actor and consent come from OAuth; do not supply identity fields.","retry":"Keep the same operation and operation_id when retrying identical work. Reconcile an uncertain result before new work; never replay an old V1 write under a new V2 ID.","completion":"Check status, execution_state, error_code, output and evidence/resource references. Queued work is not complete: poll jobs.status.get.v2 in domain.workspace.v2. For read-back verification require read_back_verified=true where returned; reconcile failures without creating another object.","result_envelope":{"status":"completed | partial | cancelled | failed","execution_state":"terminal | queued | reconciliation_required","output":"Completed results validate against output_schema; partial/reconciliation results can contain incomplete evidence and must not be treated as completion.","billing":"gateway_credits_spent, downstream_settlement, job_id; pending downstream settlement is not a final cost","references":"run_id, invocation_id, resource_refs, evidence_refs"},"documentation":"https://www.hivekind.ai/docs/mcp/intelligence#analytics-signals-geography-get-v2"},{"operation":"analytics.tiers.get.v2","domain":"intelligence","tool":"domain.intelligence.v2","title":"Tier and ICP account coverage","purpose":"Use the existing Core workflow: Tier and ICP account coverage. Current tier/grade matrix and paginated list; no historical tier reassignment.","side_effects":"Read only.","permission":"read","required_scopes":["accounts:read"],"requires_operation_id":false,"billing":"No gateway credit charge; reads saved workspace data without starting paid provider work.","required_resolved_fields":[],"next_call":{"tool":"domain.intelligence.v2","arguments":{"params":{"action":"describe","operation":"analytics.tiers.get.v2"}}},"catalog_revision":"07a373e389289e05","when_not_to_use":"Do not infer unsupported history, attribution, or commitments from this response.","description":"Use when: Use the existing Core workflow: Tier and ICP account coverage. Current tier/grade matrix and paginated list; no historical tier reassignment. Returns/does: Read only. Do not use when: Do not infer unsupported history, attribution, or commitments from this response. Identity comes from OAuth. Resolve exact IDs; use typed enums and bounded limits. Billing: Gateway and downstream billing depend on the operation; check its preview/quote and returned billing.","input_schema":{"additionalProperties":false,"properties":{"owner_id":{"anyOf":[{"format":"uuid","type":"string"},{"type":"null"}],"default":null,"description":"Existing workspace member UUID; omitted means workspace scope.","title":"Owner Id"},"tier":{"anyOf":[{"maxLength":64,"type":"string"},{"type":"null"}],"default":null,"description":"Tier used by the public analytics tiers get input v2 operation.","title":"Tier"},"icp_grade":{"anyOf":[{"maxLength":32,"type":"string"},{"type":"null"}],"default":null,"description":"Icp grade used by the public analytics tiers get input v2 operation.","title":"Icp Grade"},"industry":{"anyOf":[{"maxLength":255,"type":"string"},{"type":"null"}],"default":null,"description":"Industry used by the public analytics tiers get input v2 operation.","title":"Industry"},"limit":{"default":100,"description":"Maximum number of records to return in this page.","maximum":500,"minimum":1,"title":"Limit","type":"integer"},"offset":{"default":0,"description":"Zero-based number of matching records to skip for pagination.","maximum":1000000,"minimum":0,"title":"Offset","type":"integer"},"view":{"default":"accounts","description":"View used by the public analytics tiers get input v2 operation.","enum":["accounts","contacts"],"title":"View","type":"string"},"owner_scope":{"default":"any","description":"Use mine for the authenticated actor; do not guess or send the actor identity. Cannot combine mine with owner_id.","enum":["any","mine"],"title":"Owner Scope","type":"string"}},"title":"McpPublicAnalyticsTiersGetInputV2","type":"object"},"output_schema":{"additionalProperties":false,"description":"V2 result for analytics.tiers.get.v2; preserves the established validators.","properties":{"title":{"title":"Title","type":"string"},"data":{"additionalProperties":true,"title":"Data","type":"object"},"limitations":{"title":"Limitations","type":"string"},"applied_parameters":{"additionalProperties":true,"title":"Applied Parameters","type":"object"},"source_path":{"title":"Source Path","type":"string"},"job_id":{"anyOf":[{"type":"string"},{"type":"null"}],"default":null,"description":"Core job identifier when an operation enqueues work; poll jobs.status.get.v2 and read the resulting resource.","title":"Job Id"},"queued":{"default":false,"title":"Queued","type":"boolean"},"outcome_status":{"default":"partial","enum":["completed","partial","needs_input","awaiting_approval"],"title":"Outcome Status","type":"string"},"read_back_verified":{"default":false,"title":"Read Back Verified","type":"boolean"},"verification_message":{"anyOf":[{"type":"string"},{"type":"null"}],"default":null,"title":"Verification Message"}},"required":["title","data","limitations","source_path"],"title":"PublicAnalyticsTiersGetResultV2","type":"object"},"example":{"tool":"domain.intelligence.v2","arguments":{"params":{"action":"invoke","operation":"analytics.tiers.get.v2","arguments":{},"operation_id":"00000000-0000-4000-8000-000000000003"}},"notice":"Fictional fixture IDs and example text. Resolve real IDs, use returned preview tokens and approve exact side effects before execution. Input validation is not proof of provider readiness or a successful business outcome."},"workflow_steps":[],"approval_policy":null,"idempotency_policy":"caller_operation","gateway_credit_code":null,"identity":"Workspace, actor and consent come from OAuth; do not supply identity fields.","retry":"Keep the same operation and operation_id when retrying identical work. Reconcile an uncertain result before new work; never replay an old V1 write under a new V2 ID.","completion":"Check status, execution_state, error_code, output and evidence/resource references. Queued work is not complete: poll jobs.status.get.v2 in domain.workspace.v2. For read-back verification require read_back_verified=true where returned; reconcile failures without creating another object.","result_envelope":{"status":"completed | partial | cancelled | failed","execution_state":"terminal | queued | reconciliation_required","output":"Completed results validate against output_schema; partial/reconciliation results can contain incomplete evidence and must not be treated as completion.","billing":"gateway_credits_spent, downstream_settlement, job_id; pending downstream settlement is not a final cost","references":"run_id, invocation_id, resource_refs, evidence_refs"},"documentation":"https://www.hivekind.ai/docs/mcp/intelligence#analytics-tiers-get-v2"},{"operation":"campaigns.accounts.reassign_owner.v2","domain":"campaign","tool":"domain.campaign.v2","title":"Reassign a campaign's account owners","purpose":"Hand a campaign's accounts to a new owner in bulk — all of them, a subset by account_ids, or only those owned by certain people via only_current_owner_ids. The campaign must be draft, paused or archived. Call with dry_run true (the default) first and show the user which accounts move, which are skipped and why, and the re-scoring cost; call again with dry_run false only after they confirm.","side_effects":"Changes Account owner only. Each moved account is re-scored in the background against the new owner's pinned rubric, which spends scoring credits (or its score is cleared if that owner has no rubric). Accounts also in another active campaign are skipped and the blocking campaign is named. Contacts, HiveLoops, drafts and queued LinkedIn or email steps are NOT reassigned: on resume they still send from the loop's existing sender.","permission":"execute","required_scopes":["actions:execute"],"requires_operation_id":true,"billing":"No gateway rate is configured. Check the Core workflow preview/quote for downstream charges and final settlement.","required_resolved_fields":[],"next_call":{"tool":"domain.campaign.v2","arguments":{"params":{"action":"describe","operation":"campaigns.accounts.reassign_owner.v2"}}},"catalog_revision":"07a373e389289e05","when_not_to_use":"Do not use this on an active campaign — it refuses; pause it with campaigns.pause.v2 first. Do not use it for accounts outside a campaign — that is accounts.update.v2. It does not change who sends a campaign's messages: that is the campaign owner, not the account owner.","description":"Use when: Hand a campaign's accounts to a new owner in bulk — all of them, a subset by account_ids, or only those owned by certain people via only_current_owner_ids. The campaign must be draft, paused or archived. Call with dry_run true (the default) first and show the user which accounts move, which are skipped and why, and the re-scoring cost; call again with dry_run false only after they confirm. Returns/does: Changes Account owner only. Each moved account is re-scored in the background against the new owner's pinned rubric, which spends scoring credits (or its score is cleared if that owner has no rubric). Accounts also in another active campaign are skipped and the blocking campaign is named. Contacts, HiveLoops, drafts and queued LinkedIn or email steps are NOT reassigned: on resume they still send from the loop's existing sender. Do not use when: Do not use this on an active campaign — it refuses; pause it with campaigns.pause.v2 first. Do not use it for accounts outside a campaign — that is accounts.update.v2. It does not change who sends a campaign's messages: that is the campaign owner, not the account owner. Identity comes from OAuth. Resolve exact IDs; use typed enums and bounded limits. Billing: Gateway and downstream billing depend on the operation; check its preview/quote and returned billing.","input_schema":{"additionalProperties":false,"properties":{"action_proposal_id":{"anyOf":[{"format":"uuid","type":"string"},{"type":"null"}],"default":null,"description":"Optional. Hivekind fills this from the MCP consent grant.","title":"Action Proposal Id"},"campaign_id":{"description":"The campaign whose accounts move.","format":"uuid","title":"Campaign Id","type":"string"},"new_owner_id":{"description":"Workspace member who becomes the owner.","format":"uuid","title":"New Owner Id","type":"string"},"account_ids":{"default":[],"description":"Only these of the campaign's accounts. Leave empty for all of them. Ids not in the campaign are reported as skipped.","items":{"format":"uuid","type":"string"},"maxItems":500,"title":"Account Ids","type":"array"},"only_current_owner_ids":{"default":[],"description":"Only move accounts currently owned by one of these users.","items":{"format":"uuid","type":"string"},"maxItems":100,"title":"Only Current Owner Ids","type":"array"},"dry_run":{"default":true,"description":"True (the default) previews which accounts would move, which are skipped and why, and the re-scoring cost, and writes nothing. Show the preview to the user before calling with false.","title":"Dry Run","type":"boolean"}},"required":["campaign_id","new_owner_id"],"title":"McpMcpPublicCampaignsAccountsReassignOwnerInputV2","type":"object"},"output_schema":{"$defs":{"CampaignAccountReassignOutcomeV1":{"additionalProperties":false,"properties":{"account_id":{"format":"uuid","title":"Account Id","type":"string"},"name":{"anyOf":[{"maxLength":255,"type":"string"},{"type":"null"}],"default":null,"title":"Name"},"web_url":{"anyOf":[{"maxLength":2048,"type":"string"},{"type":"null"}],"default":null,"description":"Browser link to this account in the Hivekind app. Use it verbatim whenever you link the record for a person, including inside note bodies; never build a link by hand or use a hivekind:// URI, which is an MCP resource handle, not a page. Null when the server has no app URL configured.","title":"Web Url"},"changed":{"description":"Moved, or on a dry run would move, to the new owner.","title":"Changed","type":"boolean"},"reason":{"anyOf":[{"maxLength":64,"type":"string"},{"type":"null"}],"default":null,"description":"Why it was skipped: not_in_campaign, owner_not_matched, in_active_campaign, no_change (already owned by the new owner), archived, not_found or update_failed. Null when changed.","title":"Reason"},"blocking_campaign":{"anyOf":[{"$ref":"#/$defs/ReassignBlockingCampaignV1"},{"type":"null"}],"default":null,"description":"The active campaign that blocked it, for in_active_campaign."},"owner_before_id":{"anyOf":[{"format":"uuid","type":"string"},{"type":"null"}],"default":null,"title":"Owner Before Id"},"owner_before_name":{"anyOf":[{"maxLength":255,"type":"string"},{"type":"null"}],"default":null,"title":"Owner Before Name"},"owner_after_id":{"anyOf":[{"format":"uuid","type":"string"},{"type":"null"}],"default":null,"title":"Owner After Id"},"owner_after_name":{"anyOf":[{"maxLength":255,"type":"string"},{"type":"null"}],"default":null,"title":"Owner After Name"},"consequences":{"default":[],"items":{"type":"string"},"maxItems":8,"title":"Consequences","type":"array"}},"required":["account_id","changed"],"title":"CampaignAccountReassignOutcomeV1","type":"object"},"ReassignBlockingCampaignV1":{"additionalProperties":false,"properties":{"campaign_id":{"format":"uuid","title":"Campaign Id","type":"string"},"name":{"anyOf":[{"maxLength":255,"type":"string"},{"type":"null"}],"default":null,"title":"Name"}},"required":["campaign_id"],"title":"ReassignBlockingCampaignV1","type":"object"}},"additionalProperties":false,"description":"V2 result for campaigns.accounts.reassign_owner.v2; preserves the established validators.","properties":{"campaign_id":{"format":"uuid","title":"Campaign Id","type":"string"},"campaign_name":{"anyOf":[{"maxLength":255,"type":"string"},{"type":"null"}],"default":null,"title":"Campaign Name"},"campaign_status":{"maxLength":64,"title":"Campaign Status","type":"string"},"new_owner_id":{"format":"uuid","title":"New Owner Id","type":"string"},"new_owner_name":{"anyOf":[{"maxLength":255,"type":"string"},{"type":"null"}],"default":null,"title":"New Owner Name"},"dry_run":{"title":"Dry Run","type":"boolean"},"changed":{"minimum":0,"title":"Changed","type":"integer"},"skipped":{"minimum":0,"title":"Skipped","type":"integer"},"results":{"default":[],"items":{"$ref":"#/$defs/CampaignAccountReassignOutcomeV1"},"maxItems":500,"title":"Results","type":"array"},"accounts_to_rescore":{"default":0,"minimum":0,"title":"Accounts To Rescore","type":"integer"},"estimated_credits":{"default":"0","maxLength":32,"title":"Estimated Credits","type":"string"},"warnings":{"default":[],"items":{"type":"string"},"maxItems":8,"title":"Warnings","type":"array"}},"required":["campaign_id","campaign_status","new_owner_id","dry_run","changed","skipped"],"title":"PublicCampaignsAccountsReassignOwnerResultV2","type":"object"},"example":{"tool":"domain.campaign.v2","arguments":{"params":{"action":"invoke","operation":"campaigns.accounts.reassign_owner.v2","arguments":{"campaign_id":"00000000-0000-4000-8000-000000000001","new_owner_id":"00000000-0000-4000-8000-000000000001"},"operation_id":"00000000-0000-4000-8000-000000000003"}},"notice":"Fictional fixture IDs and example text. Resolve real IDs, use returned preview tokens and approve exact side effects before execution. Input validation is not proof of provider readiness or a successful business outcome."},"workflow_steps":[],"approval_policy":"exact_scope_single_action","idempotency_policy":"approved_action_outbox","gateway_credit_code":null,"identity":"Workspace, actor and consent come from OAuth; do not supply identity fields.","retry":"Keep the same operation and operation_id when retrying identical work. Reconcile an uncertain result before new work; never replay an old V1 write under a new V2 ID.","completion":"Check status, execution_state, error_code, output and evidence/resource references. Queued work is not complete: poll jobs.status.get.v2 in domain.workspace.v2. For read-back verification require read_back_verified=true where returned; reconcile failures without creating another object.","result_envelope":{"status":"completed | partial | cancelled | failed","execution_state":"terminal | queued | reconciliation_required","output":"Completed results validate against output_schema; partial/reconciliation results can contain incomplete evidence and must not be treated as completion.","billing":"gateway_credits_spent, downstream_settlement, job_id; pending downstream settlement is not a final cost","references":"run_id, invocation_id, resource_refs, evidence_refs"},"documentation":"https://www.hivekind.ai/docs/mcp/campaign#campaigns-accounts-reassign_owner-v2"},{"operation":"campaigns.archive.v2","domain":"campaign","tool":"domain.campaign.v2","title":"Archive a campaign","purpose":"Archive a campaign you no longer need.","side_effects":"Archives the campaign.","permission":"execute","required_scopes":["actions:execute"],"requires_operation_id":true,"billing":"No gateway rate is configured. Check the Core workflow preview/quote for downstream charges and final settlement.","required_resolved_fields":[],"next_call":{"tool":"domain.campaign.v2","arguments":{"params":{"action":"describe","operation":"campaigns.archive.v2"}}},"catalog_revision":"07a373e389289e05","when_not_to_use":"Prefer pause if you may resume it.","description":"Use when: Archive a campaign you no longer need. Returns/does: Archives the campaign. Do not use when: Prefer pause if you may resume it. Identity comes from OAuth. Resolve exact IDs; use typed enums and bounded limits. Billing: Gateway and downstream billing depend on the operation; check its preview/quote and returned billing.","input_schema":{"additionalProperties":false,"properties":{"action_proposal_id":{"anyOf":[{"format":"uuid","type":"string"},{"type":"null"}],"default":null,"description":"Optional. Hivekind fills this from the MCP consent grant.","title":"Action Proposal Id"},"campaign_id":{"description":"Exact campaign UUID returned by a Hivekind search, list, get, preview, or resource call.","format":"uuid","title":"Campaign Id","type":"string"}},"required":["campaign_id"],"title":"McpMcpPublicCampaignsArchiveInputV2","type":"object"},"output_schema":{"additionalProperties":false,"description":"V2 result for campaigns.archive.v2; preserves the established validators.","properties":{"campaign_id":{"format":"uuid","title":"Campaign Id","type":"string"},"status":{"maxLength":64,"minLength":1,"title":"Status","type":"string"}},"required":["campaign_id","status"],"title":"PublicCampaignsArchiveResultV2","type":"object"},"example":{"tool":"domain.campaign.v2","arguments":{"params":{"action":"invoke","operation":"campaigns.archive.v2","arguments":{"campaign_id":"00000000-0000-4000-8000-000000000001"},"operation_id":"00000000-0000-4000-8000-000000000003"}},"notice":"Fictional fixture IDs and example text. Resolve real IDs, use returned preview tokens and approve exact side effects before execution. Input validation is not proof of provider readiness or a successful business outcome."},"workflow_steps":[],"approval_policy":"exact_scope_single_action","idempotency_policy":"approved_action_outbox","gateway_credit_code":null,"identity":"Workspace, actor and consent come from OAuth; do not supply identity fields.","retry":"Keep the same operation and operation_id when retrying identical work. Reconcile an uncertain result before new work; never replay an old V1 write under a new V2 ID.","completion":"Check status, execution_state, error_code, output and evidence/resource references. Queued work is not complete: poll jobs.status.get.v2 in domain.workspace.v2. For read-back verification require read_back_verified=true where returned; reconcile failures without creating another object.","result_envelope":{"status":"completed | partial | cancelled | failed","execution_state":"terminal | queued | reconciliation_required","output":"Completed results validate against output_schema; partial/reconciliation results can contain incomplete evidence and must not be treated as completion.","billing":"gateway_credits_spent, downstream_settlement, job_id; pending downstream settlement is not a final cost","references":"run_id, invocation_id, resource_refs, evidence_refs"},"documentation":"https://www.hivekind.ai/docs/mcp/campaign#campaigns-archive-v2"},{"operation":"campaigns.audience.add.v2","domain":"campaign","tool":"domain.campaign.v2","title":"Add campaign accounts","purpose":"Add accounts to an existing campaign, by account_ids or by account tags (every active account carrying them, up to 50).","side_effects":"Adds accounts to the campaign. Does not send.","permission":"execute","required_scopes":["actions:execute"],"requires_operation_id":true,"billing":"No gateway rate is configured. Check the Core workflow preview/quote for downstream charges and final settlement.","required_resolved_fields":[],"next_call":{"tool":"domain.campaign.v2","arguments":{"params":{"action":"describe","operation":"campaigns.audience.add.v2"}}},"catalog_revision":"07a373e389289e05","when_not_to_use":"For a new campaign, pass account_ids or icp_grade to campaigns.launch.v2 instead.","description":"Use when: Add accounts to an existing campaign, by account_ids or by account tags (every active account carrying them, up to 50). Returns/does: Adds accounts to the campaign. Does not send. Do not use when: For a new campaign, pass account_ids or icp_grade to campaigns.launch.v2 instead. Identity comes from OAuth. Resolve exact IDs; use typed enums and bounded limits. Billing: Gateway and downstream billing depend on the operation; check its preview/quote and returned billing.","input_schema":{"additionalProperties":false,"properties":{"tags":{"default":[],"description":"Select the audience by account tag instead of account_ids: every active account carrying these tags (see tags_match), matched case-insensitively. At most 50 accounts may match; narrow with accounts.search.v2 and pass account_ids when more do.","items":{"maxLength":64,"minLength":1,"type":"string"},"maxItems":10,"title":"Tags","type":"array"},"tags_match":{"default":"any","description":"any: accounts with at least one of tags. all: accounts with every one.","enum":["any","all"],"title":"Tags Match","type":"string"},"action_proposal_id":{"anyOf":[{"format":"uuid","type":"string"},{"type":"null"}],"default":null,"description":"Optional. Hivekind fills this from the MCP consent grant.","title":"Action Proposal Id"},"campaign_id":{"description":"Exact campaign UUID returned by a Hivekind search, list, get, preview, or resource call.","format":"uuid","title":"Campaign Id","type":"string"},"account_ids":{"default":[],"description":"Exact account UUIDs returned by a Hivekind search, list, get, preview, or resource call.","items":{"format":"uuid","type":"string"},"maxItems":50,"title":"Account Ids","type":"array"}},"required":["campaign_id"],"title":"McpMcpPublicCampaignsAudienceAddInputV2","type":"object"},"output_schema":{"additionalProperties":false,"description":"V2 result for campaigns.audience.add.v2; preserves the established validators.","properties":{"campaign_id":{"format":"uuid","title":"Campaign Id","type":"string"},"account_ids":{"default":[],"items":{"format":"uuid","type":"string"},"maxItems":50,"title":"Account Ids","type":"array"},"count":{"default":0,"maximum":50,"minimum":0,"title":"Count","type":"integer"}},"required":["campaign_id"],"title":"PublicCampaignsAudienceAddResultV2","type":"object"},"example":{"tool":"domain.campaign.v2","arguments":{"params":{"action":"invoke","operation":"campaigns.audience.add.v2","arguments":{"account_ids":["00000000-0000-4000-8000-000000000001"],"campaign_id":"00000000-0000-4000-8000-000000000001"},"operation_id":"00000000-0000-4000-8000-000000000003"}},"notice":"Fictional fixture IDs and example text. Resolve real IDs, use returned preview tokens and approve exact side effects before execution. Input validation is not proof of provider readiness or a successful business outcome."},"workflow_steps":[],"approval_policy":"exact_scope_single_action","idempotency_policy":"approved_action_outbox","gateway_credit_code":null,"identity":"Workspace, actor and consent come from OAuth; do not supply identity fields.","retry":"Keep the same operation and operation_id when retrying identical work. Reconcile an uncertain result before new work; never replay an old V1 write under a new V2 ID.","completion":"Check status, execution_state, error_code, output and evidence/resource references. Queued work is not complete: poll jobs.status.get.v2 in domain.workspace.v2. For read-back verification require read_back_verified=true where returned; reconcile failures without creating another object.","result_envelope":{"status":"completed | partial | cancelled | failed","execution_state":"terminal | queued | reconciliation_required","output":"Completed results validate against output_schema; partial/reconciliation results can contain incomplete evidence and must not be treated as completion.","billing":"gateway_credits_spent, downstream_settlement, job_id; pending downstream settlement is not a final cost","references":"run_id, invocation_id, resource_refs, evidence_refs"},"documentation":"https://www.hivekind.ai/docs/mcp/campaign#campaigns-audience-add-v2"},{"operation":"campaigns.audience.preview.v2","domain":"campaign","tool":"domain.campaign.v2","title":"Preview campaign audience","purpose":"Preview which accounts would be added to a campaign, given account_ids or an account tags selector (up to 50 accounts).","side_effects":"May change workspace state or start work; describe before invoking.","permission":"propose","required_scopes":["runs:create"],"requires_operation_id":true,"billing":"No gateway rate is configured. Check the Core workflow preview/quote for downstream charges and final settlement.","required_resolved_fields":[],"next_call":{"tool":"domain.campaign.v2","arguments":{"params":{"action":"describe","operation":"campaigns.audience.preview.v2"}}},"catalog_revision":"07a373e389289e05","when_not_to_use":"Do not use this to add accounts — that is campaigns.audience.add.v2. Prefer campaigns.launch.v2 for new campaigns.","description":"Use when: Preview which accounts would be added to a campaign, given account_ids or an account tags selector (up to 50 accounts). Returns/does: Changes workspace state or starts work; review the exact contract and approval requirements. Do not use when: Do not use this to add accounts — that is campaigns.audience.add.v2. Prefer campaigns.launch.v2 for new campaigns. Identity comes from OAuth. Resolve exact IDs; use typed enums and bounded limits. Billing: Gateway and downstream billing depend on the operation; check its preview/quote and returned billing.","input_schema":{"additionalProperties":false,"properties":{"tags":{"default":[],"description":"Select the audience by account tag instead of account_ids: every active account carrying these tags (see tags_match), matched case-insensitively. At most 50 accounts may match; narrow with accounts.search.v2 and pass account_ids when more do.","items":{"maxLength":64,"minLength":1,"type":"string"},"maxItems":10,"title":"Tags","type":"array"},"tags_match":{"default":"any","description":"any: accounts with at least one of tags. all: accounts with every one.","enum":["any","all"],"title":"Tags Match","type":"string"},"campaign_id":{"description":"Exact campaign UUID returned by a Hivekind search, list, get, preview, or resource call.","format":"uuid","title":"Campaign Id","type":"string"},"account_ids":{"default":[],"description":"Exact account UUIDs returned by a Hivekind search, list, get, preview, or resource call.","items":{"format":"uuid","type":"string"},"maxItems":50,"title":"Account Ids","type":"array"}},"required":["campaign_id"],"title":"McpPublicCampaignsAudiencePreviewInputV2","type":"object"},"output_schema":{"$defs":{"CampaignAudienceHeldContactV1":{"additionalProperties":false,"properties":{"contact_id":{"format":"uuid","title":"Contact Id","type":"string"},"name":{"maxLength":255,"minLength":1,"title":"Name","type":"string"},"reason":{"maxLength":128,"minLength":1,"title":"Reason","type":"string"}},"required":["contact_id","name","reason"],"title":"CampaignAudienceHeldContactV1","type":"object"},"CampaignAudiencePreviewAccountV1":{"additionalProperties":false,"properties":{"account_id":{"format":"uuid","title":"Account Id","type":"string"},"account_name":{"maxLength":255,"minLength":1,"title":"Account Name","type":"string"},"icp_grade":{"anyOf":[{"maxLength":32,"type":"string"},{"type":"null"}],"default":null,"title":"Icp Grade"},"conflict_campaign_name":{"anyOf":[{"maxLength":255,"type":"string"},{"type":"null"}],"default":null,"title":"Conflict Campaign Name"},"contacts_ready":{"default":0,"maximum":100000,"minimum":0,"title":"Contacts Ready","type":"integer"},"held_contacts":{"default":[],"items":{"$ref":"#/$defs/CampaignAudienceHeldContactV1"},"maxItems":20,"title":"Held Contacts","type":"array"}},"required":["account_id","account_name"],"title":"CampaignAudiencePreviewAccountV1","type":"object"}},"additionalProperties":false,"description":"V2 result for campaigns.audience.preview.v2; preserves the established validators.","properties":{"addable_account_ids":{"default":[],"items":{"format":"uuid","type":"string"},"maxItems":50,"title":"Addable Account Ids","type":"array"},"conflict_count":{"default":0,"maximum":100000,"minimum":0,"title":"Conflict Count","type":"integer"},"held_contact_count":{"default":0,"maximum":100000,"minimum":0,"title":"Held Contact Count","type":"integer"},"accounts":{"default":[],"items":{"$ref":"#/$defs/CampaignAudiencePreviewAccountV1"},"maxItems":50,"title":"Accounts","type":"array"}},"title":"PublicCampaignsAudiencePreviewResultV2","type":"object"},"example":{"tool":"domain.campaign.v2","arguments":{"params":{"action":"invoke","operation":"campaigns.audience.preview.v2","arguments":{"campaign_id":"00000000-0000-4000-8000-000000000001"},"operation_id":"00000000-0000-4000-8000-000000000003"}},"notice":"Fictional fixture IDs and example text. Resolve real IDs, use returned preview tokens and approve exact side effects before execution. Input validation is not proof of provider readiness or a successful business outcome."},"workflow_steps":[],"approval_policy":null,"idempotency_policy":"run_task_campaign_preview","gateway_credit_code":null,"identity":"Workspace, actor and consent come from OAuth; do not supply identity fields.","retry":"Keep the same operation and operation_id when retrying identical work. Reconcile an uncertain result before new work; never replay an old V1 write under a new V2 ID.","completion":"Check status, execution_state, error_code, output and evidence/resource references. Queued work is not complete: poll jobs.status.get.v2 in domain.workspace.v2. For read-back verification require read_back_verified=true where returned; reconcile failures without creating another object.","result_envelope":{"status":"completed | partial | cancelled | failed","execution_state":"terminal | queued | reconciliation_required","output":"Completed results validate against output_schema; partial/reconciliation results can contain incomplete evidence and must not be treated as completion.","billing":"gateway_credits_spent, downstream_settlement, job_id; pending downstream settlement is not a final cost","references":"run_id, invocation_id, resource_refs, evidence_refs"},"documentation":"https://www.hivekind.ai/docs/mcp/campaign#campaigns-audience-preview-v2"},{"operation":"campaigns.audience.remove.v2","domain":"campaign","tool":"domain.campaign.v2","title":"Remove campaign accounts","purpose":"Remove accounts from an existing campaign.","side_effects":"Removes accounts from the campaign.","permission":"execute","required_scopes":["actions:execute"],"requires_operation_id":true,"billing":"No gateway rate is configured. Check the Core workflow preview/quote for downstream charges and final settlement.","required_resolved_fields":[],"next_call":{"tool":"domain.campaign.v2","arguments":{"params":{"action":"describe","operation":"campaigns.audience.remove.v2"}}},"catalog_revision":"07a373e389289e05","when_not_to_use":"Do not use this to pause sending — that is campaigns.pause.v2 or hiveloops.pause.v2.","description":"Use when: Remove accounts from an existing campaign. Returns/does: Removes accounts from the campaign. Do not use when: Do not use this to pause sending — that is campaigns.pause.v2 or hiveloops.pause.v2. Identity comes from OAuth. Resolve exact IDs; use typed enums and bounded limits. Billing: Gateway and downstream billing depend on the operation; check its preview/quote and returned billing.","input_schema":{"additionalProperties":false,"properties":{"action_proposal_id":{"anyOf":[{"format":"uuid","type":"string"},{"type":"null"}],"default":null,"description":"Optional. Hivekind fills this from the MCP consent grant.","title":"Action Proposal Id"},"campaign_id":{"description":"Exact campaign UUID returned by a Hivekind search, list, get, preview, or resource call.","format":"uuid","title":"Campaign Id","type":"string"},"account_ids":{"description":"Exact account UUIDs returned by a Hivekind search, list, get, preview, or resource call.","items":{"format":"uuid","type":"string"},"maxItems":50,"minItems":1,"title":"Account Ids","type":"array"}},"required":["campaign_id","account_ids"],"title":"McpMcpPublicCampaignsAudienceRemoveInputV2","type":"object"},"output_schema":{"additionalProperties":false,"description":"V2 result for campaigns.audience.remove.v2; preserves the established validators.","properties":{"campaign_id":{"format":"uuid","title":"Campaign Id","type":"string"},"account_ids":{"default":[],"items":{"format":"uuid","type":"string"},"maxItems":50,"title":"Account Ids","type":"array"},"count":{"default":0,"maximum":50,"minimum":0,"title":"Count","type":"integer"}},"required":["campaign_id"],"title":"PublicCampaignsAudienceRemoveResultV2","type":"object"},"example":{"tool":"domain.campaign.v2","arguments":{"params":{"action":"invoke","operation":"campaigns.audience.remove.v2","arguments":{"account_ids":["00000000-0000-4000-8000-000000000001"],"campaign_id":"00000000-0000-4000-8000-000000000001"},"operation_id":"00000000-0000-4000-8000-000000000003"}},"notice":"Fictional fixture IDs and example text. Resolve real IDs, use returned preview tokens and approve exact side effects before execution. Input validation is not proof of provider readiness or a successful business outcome."},"workflow_steps":[],"approval_policy":"exact_scope_single_action","idempotency_policy":"approved_action_outbox","gateway_credit_code":null,"identity":"Workspace, actor and consent come from OAuth; do not supply identity fields.","retry":"Keep the same operation and operation_id when retrying identical work. Reconcile an uncertain result before new work; never replay an old V1 write under a new V2 ID.","completion":"Check status, execution_state, error_code, output and evidence/resource references. Queued work is not complete: poll jobs.status.get.v2 in domain.workspace.v2. For read-back verification require read_back_verified=true where returned; reconcile failures without creating another object.","result_envelope":{"status":"completed | partial | cancelled | failed","execution_state":"terminal | queued | reconciliation_required","output":"Completed results validate against output_schema; partial/reconciliation results can contain incomplete evidence and must not be treated as completion.","billing":"gateway_credits_spent, downstream_settlement, job_id; pending downstream settlement is not a final cost","references":"run_id, invocation_id, resource_refs, evidence_refs"},"documentation":"https://www.hivekind.ai/docs/mcp/campaign#campaigns-audience-remove-v2"},{"operation":"campaigns.create.preview.v2","domain":"campaign","tool":"domain.campaign.v2","title":"Preview a campaign draft","purpose":"Preview campaign fields without writing.","side_effects":"May change workspace state or start work; describe before invoking.","permission":"propose","required_scopes":["runs:create"],"requires_operation_id":true,"billing":"No gateway rate is configured. Check the Core workflow preview/quote for downstream charges and final settlement.","required_resolved_fields":[],"next_call":{"tool":"domain.campaign.v2","arguments":{"params":{"action":"describe","operation":"campaigns.create.preview.v2"}}},"catalog_revision":"07a373e389289e05","when_not_to_use":"To actually create and prepare outreach, use campaigns.launch.v2.","description":"Use when: Preview campaign fields without writing. Returns/does: Changes workspace state or starts work; review the exact contract and approval requirements. Do not use when: To actually create and prepare outreach, use campaigns.launch.v2. Identity comes from OAuth. Resolve exact IDs; use typed enums and bounded limits. Billing: Gateway and downstream billing depend on the operation; check its preview/quote and returned billing.","input_schema":{"additionalProperties":false,"properties":{"name":{"anyOf":[{"maxLength":255,"minLength":1,"type":"string"},{"type":"null"}],"default":null,"description":"Human-readable name for the record.","title":"Name"},"objective":{"anyOf":[{"maxLength":4000,"type":"string"},{"type":"null"}],"default":null,"description":"Plain-language outcome the user wants from this operation.","title":"Objective"},"icp_grade":{"anyOf":[{"maxLength":8,"minLength":1,"type":"string"},{"type":"null"}],"default":null,"description":"Icp grade used by the public campaigns create preview input v2 operation.","title":"Icp Grade"},"kind":{"anyOf":[{"enum":["always_on","signal_activated"],"type":"string"},{"type":"null"}],"default":null,"description":"Kind used by the public campaigns create preview input v2 operation.","title":"Kind"}},"title":"McpPublicCampaignsCreatePreviewInputV2","type":"object"},"output_schema":{"$defs":{"JsonValue":{}},"additionalProperties":false,"description":"V2 result for campaigns.create.preview.v2; preserves the established validators.","properties":{"name":{"maxLength":255,"minLength":1,"title":"Name","type":"string"},"objective":{"anyOf":[{"maxLength":4000,"type":"string"},{"type":"null"}],"default":null,"title":"Objective"},"kind":{"default":"always_on","enum":["always_on","signal_activated"],"title":"Kind","type":"string"},"suggested_account_ids":{"default":[],"items":{"format":"uuid","type":"string"},"maxItems":50,"title":"Suggested Account Ids","type":"array"},"suggested_buyer_role_ids":{"default":[],"items":{"format":"uuid","type":"string"},"maxItems":50,"title":"Suggested Buyer Role Ids","type":"array"},"suggested_signal_types":{"default":[],"items":{"type":"string"},"maxItems":20,"title":"Suggested Signal Types","type":"array"},"trigger_threshold":{"default":75,"maximum":100,"minimum":0,"title":"Trigger Threshold","type":"integer"},"suggested_playbook_id":{"anyOf":[{"format":"uuid","type":"string"},{"type":"null"}],"default":null,"title":"Suggested Playbook Id"},"playbook_handoff":{"anyOf":[{"additionalProperties":{"$ref":"#/$defs/JsonValue"},"type":"object"},{"type":"null"}],"default":null,"title":"Playbook Handoff"},"occupancy":{"default":[],"items":{"additionalProperties":{"$ref":"#/$defs/JsonValue"},"type":"object"},"maxItems":100,"title":"Occupancy","type":"array"},"monitor_share_notes":{"default":[],"items":{"type":"string"},"maxItems":50,"title":"Monitor Share Notes","type":"array"},"blockers":{"default":[],"items":{"type":"string"},"maxItems":20,"title":"Blockers","type":"array"},"warnings":{"default":[],"items":{"type":"string"},"maxItems":20,"title":"Warnings","type":"array"},"summary":{"maxLength":2000,"minLength":1,"title":"Summary","type":"string"},"executable":{"const":false,"default":false,"title":"Executable","type":"boolean"}},"required":["name","summary"],"title":"PublicCampaignsCreatePreviewResultV2","type":"object"},"example":{"tool":"domain.campaign.v2","arguments":{"params":{"action":"invoke","operation":"campaigns.create.preview.v2","arguments":{},"operation_id":"00000000-0000-4000-8000-000000000003"}},"notice":"Fictional fixture IDs and example text. Resolve real IDs, use returned preview tokens and approve exact side effects before execution. Input validation is not proof of provider readiness or a successful business outcome."},"workflow_steps":[],"approval_policy":null,"idempotency_policy":"run_task_campaign_preview","gateway_credit_code":null,"identity":"Workspace, actor and consent come from OAuth; do not supply identity fields.","retry":"Keep the same operation and operation_id when retrying identical work. Reconcile an uncertain result before new work; never replay an old V1 write under a new V2 ID.","completion":"Check status, execution_state, error_code, output and evidence/resource references. Queued work is not complete: poll jobs.status.get.v2 in domain.workspace.v2. For read-back verification require read_back_verified=true where returned; reconcile failures without creating another object.","result_envelope":{"status":"completed | partial | cancelled | failed","execution_state":"terminal | queued | reconciliation_required","output":"Completed results validate against output_schema; partial/reconciliation results can contain incomplete evidence and must not be treated as completion.","billing":"gateway_credits_spent, downstream_settlement, job_id; pending downstream settlement is not a final cost","references":"run_id, invocation_id, resource_refs, evidence_refs"},"documentation":"https://www.hivekind.ai/docs/mcp/campaign#campaigns-create-preview-v2"},{"operation":"campaigns.draft.create.v2","domain":"campaign","tool":"domain.campaign.v2","title":"Create a draft campaign","purpose":"Create a draft campaign only, without preparing a Hiveloop.","side_effects":"Creates a campaign record. Does not send.","permission":"execute","required_scopes":["actions:execute"],"requires_operation_id":true,"billing":"No gateway rate is configured. Check the Core workflow preview/quote for downstream charges and final settlement.","required_resolved_fields":[],"next_call":{"tool":"domain.campaign.v2","arguments":{"params":{"action":"describe","operation":"campaigns.draft.create.v2"}}},"catalog_revision":"07a373e389289e05","when_not_to_use":"Prefer campaigns.launch.v2, which also prepares the Hiveloop.","description":"Use when: Create a draft campaign only, without preparing a Hiveloop. Returns/does: Creates a campaign record. Does not send. Do not use when: Prefer campaigns.launch.v2, which also prepares the Hiveloop. Identity comes from OAuth. Resolve exact IDs; use typed enums and bounded limits. Billing: Gateway and downstream billing depend on the operation; check its preview/quote and returned billing.","input_schema":{"$defs":{"CampaignOccupancyResolutionV1":{"additionalProperties":false,"properties":{"account_ids":{"items":{"format":"uuid","type":"string"},"maxItems":50,"minItems":1,"title":"Account Ids","type":"array"},"action":{"default":"share","enum":["share","skip","remove_from_other","pause_other","archive_other"],"title":"Action","type":"string"},"occupying_campaign_id":{"anyOf":[{"format":"uuid","type":"string"},{"type":"null"}],"default":null,"title":"Occupying Campaign Id"},"confirmed":{"default":false,"title":"Confirmed","type":"boolean"}},"required":["account_ids"],"title":"CampaignOccupancyResolutionV1","type":"object"},"JsonValue":{}},"additionalProperties":false,"properties":{"action_proposal_id":{"anyOf":[{"format":"uuid","type":"string"},{"type":"null"}],"default":null,"description":"Optional. Hivekind fills this from the MCP consent grant.","title":"Action Proposal Id"},"name":{"description":"Human-readable name for the record.","maxLength":255,"minLength":1,"title":"Name","type":"string"},"description":{"anyOf":[{"maxLength":4000,"type":"string"},{"type":"null"}],"default":null,"description":"Human-readable description of the record or requested outcome.","title":"Description"},"kind":{"default":"always_on","description":"Kind used by the public campaigns draft create input v2 operation.","enum":["always_on","signal_activated"],"title":"Kind","type":"string"},"playbook_id":{"anyOf":[{"format":"uuid","type":"string"},{"type":"null"}],"default":null,"description":"Exact playbook UUID returned by a Hivekind search, list, get, preview, or resource call.","title":"Playbook Id"},"playbook_handoff":{"anyOf":[{"additionalProperties":{"$ref":"#/$defs/JsonValue"},"type":"object"},{"type":"null"}],"default":null,"description":"Playbook handoff used by the public campaigns draft create input v2 operation.","title":"Playbook Handoff"},"account_ids":{"default":[],"description":"Exact account UUIDs returned by a Hivekind search, list, get, preview, or resource call.","items":{"format":"uuid","type":"string"},"maxItems":50,"title":"Account Ids","type":"array"},"buyer_role_ids":{"default":[],"description":"Exact buyer role UUIDs returned by a Hivekind search, list, get, preview, or resource call.","items":{"format":"uuid","type":"string"},"maxItems":50,"title":"Buyer Role Ids","type":"array"},"signal_types":{"default":[],"description":"Signal types used by the public campaigns draft create input v2 operation.","items":{"type":"string"},"maxItems":20,"title":"Signal Types","type":"array"},"signal_type_ids":{"default":[],"description":"Exact signal type UUIDs returned by a Hivekind search, list, get, preview, or resource call.","items":{"format":"uuid","type":"string"},"maxItems":20,"title":"Signal Type Ids","type":"array"},"trigger_threshold":{"default":75,"description":"Trigger threshold used by the public campaigns draft create input v2 operation.","maximum":100,"minimum":0,"title":"Trigger Threshold","type":"integer"},"cadence":{"default":"weekly","description":"Cadence used by the public campaigns draft create input v2 operation.","maxLength":32,"minLength":1,"title":"Cadence","type":"string"},"product_id":{"anyOf":[{"format":"uuid","type":"string"},{"type":"null"}],"default":null,"description":"Exact product UUID returned by a Hivekind search, list, get, preview, or resource call.","title":"Product Id"},"messaging_id":{"anyOf":[{"format":"uuid","type":"string"},{"type":"null"}],"default":null,"description":"Exact messaging UUID returned by a Hivekind search, list, get, preview, or resource call.","title":"Messaging Id"},"occupancy_resolutions":{"default":[],"description":"Occupancy resolutions used by the public campaigns draft create input v2 operation.","items":{"$ref":"#/$defs/CampaignOccupancyResolutionV1"},"maxItems":100,"title":"Occupancy Resolutions","type":"array"}},"required":["name"],"title":"McpMcpPublicCampaignsDraftCreateInputV2","type":"object"},"output_schema":{"additionalProperties":false,"description":"V2 result for campaigns.draft.create.v2; preserves the established validators.","properties":{"campaign_id":{"format":"uuid","title":"Campaign Id","type":"string"},"name":{"maxLength":255,"minLength":1,"title":"Name","type":"string"},"status":{"default":"draft","enum":["draft","active"],"title":"Status","type":"string"}},"required":["campaign_id","name"],"title":"PublicCampaignsDraftCreateResultV2","type":"object"},"example":{"tool":"domain.campaign.v2","arguments":{"params":{"action":"invoke","operation":"campaigns.draft.create.v2","arguments":{"name":"Example name"},"operation_id":"00000000-0000-4000-8000-000000000003"}},"notice":"Fictional fixture IDs and example text. Resolve real IDs, use returned preview tokens and approve exact side effects before execution. Input validation is not proof of provider readiness or a successful business outcome."},"workflow_steps":[],"approval_policy":"exact_scope_single_action","idempotency_policy":"approved_action_outbox","gateway_credit_code":null,"identity":"Workspace, actor and consent come from OAuth; do not supply identity fields.","retry":"Keep the same operation and operation_id when retrying identical work. Reconcile an uncertain result before new work; never replay an old V1 write under a new V2 ID.","completion":"Check status, execution_state, error_code, output and evidence/resource references. Queued work is not complete: poll jobs.status.get.v2 in domain.workspace.v2. For read-back verification require read_back_verified=true where returned; reconcile failures without creating another object.","result_envelope":{"status":"completed | partial | cancelled | failed","execution_state":"terminal | queued | reconciliation_required","output":"Completed results validate against output_schema; partial/reconciliation results can contain incomplete evidence and must not be treated as completion.","billing":"gateway_credits_spent, downstream_settlement, job_id; pending downstream settlement is not a final cost","references":"run_id, invocation_id, resource_refs, evidence_refs"},"documentation":"https://www.hivekind.ai/docs/mcp/campaign#campaigns-draft-create-v2"},{"operation":"campaigns.get.v2","domain":"campaign","tool":"domain.campaign.v2","title":"Get campaign","purpose":"Load one campaign by id when resource reads are unavailable.","side_effects":"Reads current workspace state.","permission":"read","required_scopes":["runs:read"],"requires_operation_id":false,"billing":"No gateway credit charge; reads saved workspace data without starting paid provider work.","required_resolved_fields":[],"next_call":{"tool":"domain.campaign.v2","arguments":{"params":{"action":"describe","operation":"campaigns.get.v2"}}},"catalog_revision":"07a373e389289e05","when_not_to_use":"Prefer hivekind://campaign/{id}. Use campaigns.list.v2 if you do not have an id.","description":"Use when: Load one campaign by id when resource reads are unavailable. Returns/does: Reads the current authorized workspace state. Do not use when: Prefer hivekind://campaign/{id}. Use campaigns.list.v2 if you do not have an id. Identity comes from OAuth. Resolve exact IDs; use typed enums and bounded limits. Billing: Gateway and downstream billing depend on the operation; check its preview/quote and returned billing.","input_schema":{"additionalProperties":false,"properties":{"campaign_id":{"description":"Exact campaign UUID returned by a Hivekind search, list, get, preview, or resource call.","format":"uuid","title":"Campaign Id","type":"string"}},"required":["campaign_id"],"title":"McpPublicCampaignsGetInputV2","type":"object"},"output_schema":{"$defs":{"CampaignLoopSummaryV1":{"additionalProperties":false,"properties":{"loop_id":{"format":"uuid","title":"Loop Id","type":"string"},"name":{"maxLength":255,"minLength":1,"title":"Name","type":"string"},"status":{"maxLength":64,"minLength":1,"title":"Status","type":"string"},"source":{"anyOf":[{"maxLength":64,"type":"string"},{"type":"null"}],"default":null,"title":"Source"}},"required":["loop_id","name","status"],"title":"CampaignLoopSummaryV1","type":"object"}},"additionalProperties":false,"description":"V2 result for campaigns.get.v2; preserves the established validators.","properties":{"campaign_id":{"format":"uuid","title":"Campaign Id","type":"string"},"name":{"maxLength":255,"minLength":1,"title":"Name","type":"string"},"status":{"maxLength":64,"minLength":1,"title":"Status","type":"string"},"description":{"anyOf":[{"maxLength":4000,"type":"string"},{"type":"null"}],"default":null,"title":"Description"},"playbook_id":{"anyOf":[{"format":"uuid","type":"string"},{"type":"null"}],"default":null,"title":"Playbook Id"},"playbook_name":{"anyOf":[{"maxLength":255,"type":"string"},{"type":"null"}],"default":null,"title":"Playbook Name"},"account_count":{"default":0,"maximum":100000,"minimum":0,"title":"Account Count","type":"integer"},"has_signal_monitoring":{"default":false,"title":"Has Signal Monitoring","type":"boolean"},"blockers":{"default":[],"items":{"type":"string"},"maxItems":20,"title":"Blockers","type":"array"},"loops":{"default":[],"items":{"$ref":"#/$defs/CampaignLoopSummaryV1"},"maxItems":20,"title":"Loops","type":"array"}},"required":["campaign_id","name","status"],"title":"PublicCampaignsGetResultV2","type":"object"},"example":{"tool":"domain.campaign.v2","arguments":{"params":{"action":"invoke","operation":"campaigns.get.v2","arguments":{"campaign_id":"00000000-0000-4000-8000-000000000001"},"operation_id":"00000000-0000-4000-8000-000000000003"}},"notice":"Fictional fixture IDs and example text. Resolve real IDs, use returned preview tokens and approve exact side effects before execution. Input validation is not proof of provider readiness or a successful business outcome."},"workflow_steps":[],"approval_policy":null,"idempotency_policy":"read_only","gateway_credit_code":null,"identity":"Workspace, actor and consent come from OAuth; do not supply identity fields.","retry":"Keep the same operation and operation_id when retrying identical work. Reconcile an uncertain result before new work; never replay an old V1 write under a new V2 ID.","completion":"Check status, execution_state, error_code, output and evidence/resource references. Queued work is not complete: poll jobs.status.get.v2 in domain.workspace.v2. For read-back verification require read_back_verified=true where returned; reconcile failures without creating another object.","result_envelope":{"status":"completed | partial | cancelled | failed","execution_state":"terminal | queued | reconciliation_required","output":"Completed results validate against output_schema; partial/reconciliation results can contain incomplete evidence and must not be treated as completion.","billing":"gateway_credits_spent, downstream_settlement, job_id; pending downstream settlement is not a final cost","references":"run_id, invocation_id, resource_refs, evidence_refs"},"documentation":"https://www.hivekind.ai/docs/mcp/campaign#campaigns-get-v2"},{"operation":"campaigns.hiveloop.preflight.v2","domain":"campaign","tool":"domain.campaign.v2","title":"Preflight campaign outreach","purpose":"Check blockers before preparing a Hiveloop on an existing campaign.","side_effects":"May change workspace state or start work; describe before invoking.","permission":"propose","required_scopes":["runs:create"],"requires_operation_id":true,"billing":"No gateway rate is configured. Check the Core workflow preview/quote for downstream charges and final settlement.","required_resolved_fields":[],"next_call":{"tool":"domain.campaign.v2","arguments":{"params":{"action":"describe","operation":"campaigns.hiveloop.preflight.v2"}}},"catalog_revision":"07a373e389289e05","when_not_to_use":"campaigns.launch.v2 already runs preflight. Use this only for split-step control.","description":"Use when: Check blockers before preparing a Hiveloop on an existing campaign. Returns/does: Changes workspace state or starts work; review the exact contract and approval requirements. Do not use when: campaigns.launch.v2 already runs preflight. Use this only for split-step control. Identity comes from OAuth. Resolve exact IDs; use typed enums and bounded limits. Billing: Gateway and downstream billing depend on the operation; check its preview/quote and returned billing.","input_schema":{"additionalProperties":false,"properties":{"campaign_id":{"description":"Exact campaign UUID returned by a Hivekind search, list, get, preview, or resource call.","format":"uuid","title":"Campaign Id","type":"string"},"contact_ids":{"default":[],"description":"Exact contact UUIDs returned by a Hivekind search, list, get, preview, or resource call.","items":{"format":"uuid","type":"string"},"maxItems":100,"title":"Contact Ids","type":"array"}},"required":["campaign_id"],"title":"McpPublicCampaignsHiveloopPreflightInputV2","type":"object"},"output_schema":{"additionalProperties":false,"description":"V2 result for campaigns.hiveloop.preflight.v2; preserves the established validators.","properties":{"campaign_id":{"format":"uuid","title":"Campaign Id","type":"string"},"playbook_id":{"anyOf":[{"format":"uuid","type":"string"},{"type":"null"}],"default":null,"title":"Playbook Id"},"contact_count":{"default":0,"maximum":100000,"minimum":0,"title":"Contact Count","type":"integer"},"blockers":{"default":[],"items":{"type":"string"},"maxItems":20,"title":"Blockers","type":"array"},"outline":{"maxLength":2000,"minLength":1,"title":"Outline","type":"string"},"executable":{"const":false,"default":false,"title":"Executable","type":"boolean"}},"required":["campaign_id","outline"],"title":"PublicCampaignsHiveloopPreflightResultV2","type":"object"},"example":{"tool":"domain.campaign.v2","arguments":{"params":{"action":"invoke","operation":"campaigns.hiveloop.preflight.v2","arguments":{"campaign_id":"00000000-0000-4000-8000-000000000001"},"operation_id":"00000000-0000-4000-8000-000000000003"}},"notice":"Fictional fixture IDs and example text. Resolve real IDs, use returned preview tokens and approve exact side effects before execution. Input validation is not proof of provider readiness or a successful business outcome."},"workflow_steps":[],"approval_policy":"review_only_preflight_no_execution","idempotency_policy":"run_task_loop_preflight","gateway_credit_code":null,"identity":"Workspace, actor and consent come from OAuth; do not supply identity fields.","retry":"Keep the same operation and operation_id when retrying identical work. Reconcile an uncertain result before new work; never replay an old V1 write under a new V2 ID.","completion":"Check status, execution_state, error_code, output and evidence/resource references. Queued work is not complete: poll jobs.status.get.v2 in domain.workspace.v2. For read-back verification require read_back_verified=true where returned; reconcile failures without creating another object.","result_envelope":{"status":"completed | partial | cancelled | failed","execution_state":"terminal | queued | reconciliation_required","output":"Completed results validate against output_schema; partial/reconciliation results can contain incomplete evidence and must not be treated as completion.","billing":"gateway_credits_spent, downstream_settlement, job_id; pending downstream settlement is not a final cost","references":"run_id, invocation_id, resource_refs, evidence_refs"},"documentation":"https://www.hivekind.ai/docs/mcp/campaign#campaigns-hiveloop-preflight-v2"},{"operation":"campaigns.hiveloop.prepare.v2","domain":"campaign","tool":"domain.campaign.v2","title":"Prepare a campaign Hiveloop","purpose":"Create a draft Hiveloop from an existing campaign. Does not send.","side_effects":"Creates a draft Hiveloop. Does not send.","permission":"execute","required_scopes":["actions:execute"],"requires_operation_id":true,"billing":"No gateway rate is configured. Check the Core workflow preview/quote for downstream charges and final settlement.","required_resolved_fields":[],"next_call":{"tool":"domain.campaign.v2","arguments":{"params":{"action":"describe","operation":"campaigns.hiveloop.prepare.v2"}}},"catalog_revision":"07a373e389289e05","when_not_to_use":"Prefer campaigns.launch.v2 for new campaigns.","description":"Use when: Create a draft Hiveloop from an existing campaign. Does not send. Returns/does: Creates a draft Hiveloop. Does not send. Do not use when: Prefer campaigns.launch.v2 for new campaigns. Identity comes from OAuth. Resolve exact IDs; use typed enums and bounded limits. Billing: Gateway and downstream billing depend on the operation; check its preview/quote and returned billing.","input_schema":{"additionalProperties":false,"properties":{"action_proposal_id":{"anyOf":[{"format":"uuid","type":"string"},{"type":"null"}],"default":null,"description":"Optional. Hivekind fills this from the MCP consent grant.","title":"Action Proposal Id"},"campaign_id":{"description":"Exact campaign UUID returned by a Hivekind search, list, get, preview, or resource call.","format":"uuid","title":"Campaign Id","type":"string"},"contact_ids":{"default":[],"description":"Exact contact UUIDs returned by a Hivekind search, list, get, preview, or resource call.","items":{"format":"uuid","type":"string"},"maxItems":100,"title":"Contact Ids","type":"array"},"name":{"anyOf":[{"maxLength":255,"minLength":1,"type":"string"},{"type":"null"}],"default":null,"description":"Human-readable name for the record.","title":"Name"}},"required":["campaign_id"],"title":"McpMcpPublicCampaignsHiveloopPrepareInputV2","type":"object"},"output_schema":{"additionalProperties":false,"description":"V2 result for campaigns.hiveloop.prepare.v2; preserves the established validators.","properties":{"loop_id":{"format":"uuid","title":"Loop Id","type":"string"},"campaign_id":{"format":"uuid","title":"Campaign Id","type":"string"},"status":{"const":"draft","default":"draft","title":"Status","type":"string"},"name":{"maxLength":255,"minLength":1,"title":"Name","type":"string"}},"required":["loop_id","campaign_id","name"],"title":"PublicCampaignsHiveloopPrepareResultV2","type":"object"},"example":{"tool":"domain.campaign.v2","arguments":{"params":{"action":"invoke","operation":"campaigns.hiveloop.prepare.v2","arguments":{"campaign_id":"00000000-0000-4000-8000-000000000001"},"operation_id":"00000000-0000-4000-8000-000000000003"}},"notice":"Fictional fixture IDs and example text. Resolve real IDs, use returned preview tokens and approve exact side effects before execution. Input validation is not proof of provider readiness or a successful business outcome."},"workflow_steps":[],"approval_policy":"exact_scope_single_action","idempotency_policy":"approved_action_outbox","gateway_credit_code":null,"identity":"Workspace, actor and consent come from OAuth; do not supply identity fields.","retry":"Keep the same operation and operation_id when retrying identical work. Reconcile an uncertain result before new work; never replay an old V1 write under a new V2 ID.","completion":"Check status, execution_state, error_code, output and evidence/resource references. Queued work is not complete: poll jobs.status.get.v2 in domain.workspace.v2. For read-back verification require read_back_verified=true where returned; reconcile failures without creating another object.","result_envelope":{"status":"completed | partial | cancelled | failed","execution_state":"terminal | queued | reconciliation_required","output":"Completed results validate against output_schema; partial/reconciliation results can contain incomplete evidence and must not be treated as completion.","billing":"gateway_credits_spent, downstream_settlement, job_id; pending downstream settlement is not a final cost","references":"run_id, invocation_id, resource_refs, evidence_refs"},"documentation":"https://www.hivekind.ai/docs/mcp/campaign#campaigns-hiveloop-prepare-v2"},{"operation":"campaigns.launch.v2","domain":"campaign","tool":"domain.campaign.v2","title":"Launch a campaign","purpose":"Create a campaign, bind a playbook, add audience, prepare a Hiveloop, and queue drafts in one call. Does not send.","side_effects":"Creates a campaign and draft Hiveloop. Does not send.","permission":"execute","required_scopes":["actions:execute"],"requires_operation_id":true,"billing":"No gateway rate is configured. Check the Core workflow preview/quote for downstream charges and final settlement.","required_resolved_fields":[],"next_call":{"tool":"domain.campaign.v2","arguments":{"params":{"action":"describe","operation":"campaigns.launch.v2"}}},"catalog_revision":"07a373e389289e05","when_not_to_use":"Do not walk preview/create/audience/bind/preflight/prepare yourself. Do not call hiveloops.start.v2 from this tool — check sendability first.","description":"Use when: Create a campaign, bind a playbook, add audience, prepare a Hiveloop, and queue drafts in one call. Does not send. Returns/does: Creates a campaign and draft Hiveloop. Does not send. Do not use when: Do not walk preview/create/audience/bind/preflight/prepare yourself. Do not call hiveloops.start.v2 from this tool — check sendability first. Identity comes from OAuth. Resolve exact IDs; use typed enums and bounded limits. Billing: Gateway and downstream billing depend on the operation; check its preview/quote and returned billing.","input_schema":{"additionalProperties":false,"properties":{"name":{"description":"Human-readable name for the record.","maxLength":255,"minLength":1,"title":"Name","type":"string"},"playbook_id":{"description":"Exact playbook UUID returned by a Hivekind search, list, get, preview, or resource call.","format":"uuid","title":"Playbook Id","type":"string"},"account_ids":{"default":[],"description":"Exact account UUIDs returned by a Hivekind search, list, get, preview, or resource call.","items":{"format":"uuid","type":"string"},"maxItems":50,"title":"Account Ids","type":"array"},"icp_grade":{"anyOf":[{"enum":["A","B","C","D","E","F"],"type":"string"},{"type":"null"}],"default":null,"description":"Icp grade used by the public campaigns launch input v2 operation.","title":"Icp Grade"},"contact_ids":{"default":[],"description":"Exact contact UUIDs returned by a Hivekind search, list, get, preview, or resource call.","items":{"format":"uuid","type":"string"},"maxItems":100,"title":"Contact Ids","type":"array"},"signal_types":{"default":[],"description":"Signal types used by the public campaigns launch input v2 operation.","items":{"type":"string"},"maxItems":20,"title":"Signal Types","type":"array"}},"required":["name","playbook_id"],"title":"McpPublicCampaignsLaunchInputV2","type":"object"},"output_schema":{"$defs":{"LoopSendabilityGetResultV1":{"additionalProperties":false,"properties":{"loop_id":{"format":"uuid","title":"Loop Id","type":"string"},"status":{"maxLength":64,"minLength":1,"title":"Status","type":"string"},"ready":{"title":"Ready","type":"boolean"},"blockers":{"default":[],"items":{"type":"string"},"maxItems":20,"title":"Blockers","type":"array"}},"required":["loop_id","status","ready"],"title":"LoopSendabilityGetResultV1","type":"object"}},"additionalProperties":false,"description":"V2 result for campaigns.launch.v2; preserves the established validators.","properties":{"campaign_id":{"format":"uuid","title":"Campaign Id","type":"string"},"loop_id":{"anyOf":[{"format":"uuid","type":"string"},{"type":"null"}],"default":null,"title":"Loop Id"},"playbook_id":{"format":"uuid","title":"Playbook Id","type":"string"},"account_count":{"default":0,"maximum":50,"minimum":0,"title":"Account Count","type":"integer"},"sendability":{"anyOf":[{"$ref":"#/$defs/LoopSendabilityGetResultV1"},{"type":"null"}],"default":null},"blockers":{"default":[],"items":{"type":"string"},"maxItems":20,"title":"Blockers","type":"array"},"next_step":{"maxLength":500,"minLength":1,"title":"Next Step","type":"string"},"campaign_uri":{"maxLength":255,"minLength":1,"title":"Campaign Uri","type":"string"},"hiveloop_uri":{"anyOf":[{"maxLength":255,"type":"string"},{"type":"null"}],"default":null,"title":"Hiveloop Uri"}},"required":["campaign_id","playbook_id","next_step","campaign_uri"],"title":"PublicCampaignsLaunchResultV2","type":"object"},"example":{"tool":"domain.campaign.v2","arguments":{"params":{"action":"invoke","operation":"campaigns.launch.v2","arguments":{"name":"Example name","playbook_id":"00000000-0000-4000-8000-000000000001"},"operation_id":"00000000-0000-4000-8000-000000000003"}},"notice":"Fictional fixture IDs and example text. Resolve real IDs, use returned preview tokens and approve exact side effects before execution. Input validation is not proof of provider readiness or a successful business outcome."},"workflow_steps":[],"approval_policy":"exact_scope_single_action","idempotency_policy":"approved_action_outbox","gateway_credit_code":null,"identity":"Workspace, actor and consent come from OAuth; do not supply identity fields.","retry":"Keep the same operation and operation_id when retrying identical work. Reconcile an uncertain result before new work; never replay an old V1 write under a new V2 ID.","completion":"Check status, execution_state, error_code, output and evidence/resource references. Queued work is not complete: poll jobs.status.get.v2 in domain.workspace.v2. For read-back verification require read_back_verified=true where returned; reconcile failures without creating another object.","result_envelope":{"status":"completed | partial | cancelled | failed","execution_state":"terminal | queued | reconciliation_required","output":"Completed results validate against output_schema; partial/reconciliation results can contain incomplete evidence and must not be treated as completion.","billing":"gateway_credits_spent, downstream_settlement, job_id; pending downstream settlement is not a final cost","references":"run_id, invocation_id, resource_refs, evidence_refs"},"documentation":"https://www.hivekind.ai/docs/mcp/campaign#campaigns-launch-v2"},{"operation":"campaigns.linkedin_readiness.get.v2","domain":"campaign","tool":"domain.campaign.v2","title":"Get campaign LinkedIn readiness","purpose":"Check whether a campaign's playbook can run LinkedIn steps.","side_effects":"Reads current workspace state.","permission":"read","required_scopes":["runs:read"],"requires_operation_id":false,"billing":"No gateway credit charge; reads saved workspace data without starting paid provider work.","required_resolved_fields":[],"next_call":{"tool":"domain.campaign.v2","arguments":{"params":{"action":"describe","operation":"campaigns.linkedin_readiness.get.v2"}}},"catalog_revision":"07a373e389289e05","when_not_to_use":"Sendability after launch already includes LinkedIn blockers.","description":"Use when: Check whether a campaign's playbook can run LinkedIn steps. Returns/does: Reads the current authorized workspace state. Do not use when: Sendability after launch already includes LinkedIn blockers. Identity comes from OAuth. Resolve exact IDs; use typed enums and bounded limits. Billing: Gateway and downstream billing depend on the operation; check its preview/quote and returned billing.","input_schema":{"additionalProperties":false,"properties":{"campaign_id":{"description":"Exact campaign UUID returned by a Hivekind search, list, get, preview, or resource call.","format":"uuid","title":"Campaign Id","type":"string"}},"required":["campaign_id"],"title":"McpPublicCampaignsLinkedinReadinessGetInputV2","type":"object"},"output_schema":{"additionalProperties":false,"description":"V2 result for campaigns.linkedin_readiness.get.v2; preserves the established validators.","properties":{"requires_linkedin":{"title":"Requires Linkedin","type":"boolean"},"connected":{"title":"Connected","type":"boolean"},"can_activate":{"title":"Can Activate","type":"boolean"},"blockers":{"default":[],"items":{"type":"string"},"maxItems":20,"title":"Blockers","type":"array"}},"required":["requires_linkedin","connected","can_activate"],"title":"PublicCampaignsLinkedinReadinessGetResultV2","type":"object"},"example":{"tool":"domain.campaign.v2","arguments":{"params":{"action":"invoke","operation":"campaigns.linkedin_readiness.get.v2","arguments":{"campaign_id":"00000000-0000-4000-8000-000000000001"},"operation_id":"00000000-0000-4000-8000-000000000003"}},"notice":"Fictional fixture IDs and example text. Resolve real IDs, use returned preview tokens and approve exact side effects before execution. Input validation is not proof of provider readiness or a successful business outcome."},"workflow_steps":[],"approval_policy":null,"idempotency_policy":"read_only","gateway_credit_code":null,"identity":"Workspace, actor and consent come from OAuth; do not supply identity fields.","retry":"Keep the same operation and operation_id when retrying identical work. Reconcile an uncertain result before new work; never replay an old V1 write under a new V2 ID.","completion":"Check status, execution_state, error_code, output and evidence/resource references. Queued work is not complete: poll jobs.status.get.v2 in domain.workspace.v2. For read-back verification require read_back_verified=true where returned; reconcile failures without creating another object.","result_envelope":{"status":"completed | partial | cancelled | failed","execution_state":"terminal | queued | reconciliation_required","output":"Completed results validate against output_schema; partial/reconciliation results can contain incomplete evidence and must not be treated as completion.","billing":"gateway_credits_spent, downstream_settlement, job_id; pending downstream settlement is not a final cost","references":"run_id, invocation_id, resource_refs, evidence_refs"},"documentation":"https://www.hivekind.ai/docs/mcp/campaign#campaigns-linkedin_readiness-get-v2"},{"operation":"campaigns.list.v2","domain":"campaign","tool":"domain.campaign.v2","title":"List campaigns","purpose":"List campaigns in this workspace (status, playbook, audience size).","side_effects":"Reads current workspace state.","permission":"read","required_scopes":["runs:read"],"requires_operation_id":false,"billing":"No gateway credit charge; reads saved workspace data without starting paid provider work.","required_resolved_fields":[],"next_call":{"tool":"domain.campaign.v2","arguments":{"params":{"action":"describe","operation":"campaigns.list.v2"}}},"catalog_revision":"07a373e389289e05","when_not_to_use":"Do not use this to create a campaign — that is campaigns.launch.v2.","description":"Use when: List campaigns in this workspace (status, playbook, audience size). Returns/does: Reads the current authorized workspace state. Do not use when: Do not use this to create a campaign — that is campaigns.launch.v2. Identity comes from OAuth. Resolve exact IDs; use typed enums and bounded limits. Billing: Gateway and downstream billing depend on the operation; check its preview/quote and returned billing.","input_schema":{"additionalProperties":false,"properties":{"status":{"anyOf":[{"maxLength":32,"minLength":1,"type":"string"},{"type":"null"}],"default":null,"description":"Status used by the public campaigns list input v2 operation.","title":"Status"},"limit":{"default":25,"description":"Maximum number of records to return in this page.","maximum":50,"minimum":1,"title":"Limit","type":"integer"}},"title":"McpPublicCampaignsListInputV2","type":"object"},"output_schema":{"$defs":{"CampaignListItemV1":{"additionalProperties":false,"properties":{"campaign_id":{"format":"uuid","title":"Campaign Id","type":"string"},"name":{"maxLength":255,"minLength":1,"title":"Name","type":"string"},"status":{"maxLength":64,"minLength":1,"title":"Status","type":"string"},"playbook_id":{"anyOf":[{"format":"uuid","type":"string"},{"type":"null"}],"default":null,"title":"Playbook Id"},"playbook_name":{"anyOf":[{"maxLength":255,"type":"string"},{"type":"null"}],"default":null,"title":"Playbook Name"},"account_count":{"default":0,"maximum":100000,"minimum":0,"title":"Account Count","type":"integer"},"has_signal_monitoring":{"default":false,"title":"Has Signal Monitoring","type":"boolean"},"updated_at":{"anyOf":[{"format":"date-time","type":"string"},{"type":"null"}],"default":null,"title":"Updated At"}},"required":["campaign_id","name","status"],"title":"CampaignListItemV1","type":"object"}},"additionalProperties":false,"description":"V2 result for campaigns.list.v2; preserves the established validators.","properties":{"campaigns":{"default":[],"items":{"$ref":"#/$defs/CampaignListItemV1"},"maxItems":50,"title":"Campaigns","type":"array"}},"title":"PublicCampaignsListResultV2","type":"object"},"example":{"tool":"domain.campaign.v2","arguments":{"params":{"action":"invoke","operation":"campaigns.list.v2","arguments":{},"operation_id":"00000000-0000-4000-8000-000000000003"}},"notice":"Fictional fixture IDs and example text. Resolve real IDs, use returned preview tokens and approve exact side effects before execution. Input validation is not proof of provider readiness or a successful business outcome."},"workflow_steps":[],"approval_policy":null,"idempotency_policy":"read_only","gateway_credit_code":null,"identity":"Workspace, actor and consent come from OAuth; do not supply identity fields.","retry":"Keep the same operation and operation_id when retrying identical work. Reconcile an uncertain result before new work; never replay an old V1 write under a new V2 ID.","completion":"Check status, execution_state, error_code, output and evidence/resource references. Queued work is not complete: poll jobs.status.get.v2 in domain.workspace.v2. For read-back verification require read_back_verified=true where returned; reconcile failures without creating another object.","result_envelope":{"status":"completed | partial | cancelled | failed","execution_state":"terminal | queued | reconciliation_required","output":"Completed results validate against output_schema; partial/reconciliation results can contain incomplete evidence and must not be treated as completion.","billing":"gateway_credits_spent, downstream_settlement, job_id; pending downstream settlement is not a final cost","references":"run_id, invocation_id, resource_refs, evidence_refs"},"documentation":"https://www.hivekind.ai/docs/mcp/campaign#campaigns-list-v2"},{"operation":"campaigns.monitoring.preview.v2","domain":"campaign","tool":"domain.campaign.v2","title":"Preview campaign monitoring","purpose":"Preview signal monitoring for a campaign without writing.","side_effects":"May change workspace state or start work; describe before invoking.","permission":"propose","required_scopes":["runs:create"],"requires_operation_id":true,"billing":"No gateway rate is configured. Check the Core workflow preview/quote for downstream charges and final settlement.","required_resolved_fields":[],"next_call":{"tool":"domain.campaign.v2","arguments":{"params":{"action":"describe","operation":"campaigns.monitoring.preview.v2"}}},"catalog_revision":"07a373e389289e05","when_not_to_use":"Do not use this to update monitoring.","description":"Use when: Preview signal monitoring for a campaign without writing. Returns/does: Changes workspace state or starts work; review the exact contract and approval requirements. Do not use when: Do not use this to update monitoring. Identity comes from OAuth. Resolve exact IDs; use typed enums and bounded limits. Billing: Gateway and downstream billing depend on the operation; check its preview/quote and returned billing.","input_schema":{"additionalProperties":false,"properties":{"campaign_id":{"description":"Exact campaign UUID returned by a Hivekind search, list, get, preview, or resource call.","format":"uuid","title":"Campaign Id","type":"string"},"signal_types":{"default":[],"description":"Signal types used by the public campaigns monitoring preview input v2 operation.","items":{"type":"string"},"maxItems":20,"title":"Signal Types","type":"array"}},"required":["campaign_id"],"title":"McpPublicCampaignsMonitoringPreviewInputV2","type":"object"},"output_schema":{"additionalProperties":false,"description":"V2 result for campaigns.monitoring.preview.v2; preserves the established validators.","properties":{"campaign_id":{"format":"uuid","title":"Campaign Id","type":"string"},"desired_signal_types":{"default":[],"items":{"type":"string"},"maxItems":20,"title":"Desired Signal Types","type":"array"},"current_monitor_count":{"default":0,"maximum":100000,"minimum":0,"title":"Current Monitor Count","type":"integer"},"summary":{"maxLength":2000,"minLength":1,"title":"Summary","type":"string"},"executable":{"const":false,"default":false,"title":"Executable","type":"boolean"}},"required":["campaign_id","summary"],"title":"PublicCampaignsMonitoringPreviewResultV2","type":"object"},"example":{"tool":"domain.campaign.v2","arguments":{"params":{"action":"invoke","operation":"campaigns.monitoring.preview.v2","arguments":{"campaign_id":"00000000-0000-4000-8000-000000000001"},"operation_id":"00000000-0000-4000-8000-000000000003"}},"notice":"Fictional fixture IDs and example text. Resolve real IDs, use returned preview tokens and approve exact side effects before execution. Input validation is not proof of provider readiness or a successful business outcome."},"workflow_steps":[],"approval_policy":null,"idempotency_policy":"run_task_campaign_preview","gateway_credit_code":null,"identity":"Workspace, actor and consent come from OAuth; do not supply identity fields.","retry":"Keep the same operation and operation_id when retrying identical work. Reconcile an uncertain result before new work; never replay an old V1 write under a new V2 ID.","completion":"Check status, execution_state, error_code, output and evidence/resource references. Queued work is not complete: poll jobs.status.get.v2 in domain.workspace.v2. For read-back verification require read_back_verified=true where returned; reconcile failures without creating another object.","result_envelope":{"status":"completed | partial | cancelled | failed","execution_state":"terminal | queued | reconciliation_required","output":"Completed results validate against output_schema; partial/reconciliation results can contain incomplete evidence and must not be treated as completion.","billing":"gateway_credits_spent, downstream_settlement, job_id; pending downstream settlement is not a final cost","references":"run_id, invocation_id, resource_refs, evidence_refs"},"documentation":"https://www.hivekind.ai/docs/mcp/campaign#campaigns-monitoring-preview-v2"},{"operation":"campaigns.monitoring.set.v2","domain":"campaign","tool":"domain.campaign.v2","title":"Set campaign monitoring","purpose":"You have an exact campaign and approved signal types to monitor.","side_effects":"Updates monitoring configuration. Does not send.","permission":"execute","required_scopes":["actions:execute"],"requires_operation_id":true,"billing":"No gateway rate is configured. Check the Core workflow preview/quote for downstream charges and final settlement.","required_resolved_fields":[],"next_call":{"tool":"domain.campaign.v2","arguments":{"params":{"action":"describe","operation":"campaigns.monitoring.set.v2"}}},"catalog_revision":"07a373e389289e05","when_not_to_use":"You need to search recorded signals or create a campaign.","description":"Use when: You have an exact campaign and approved signal types to monitor. Returns/does: Updates monitoring configuration. Does not send. Do not use when: You need to search recorded signals or create a campaign. Identity comes from OAuth. Resolve exact IDs; use typed enums and bounded limits. Billing: Gateway and downstream billing depend on the operation; check its preview/quote and returned billing.","input_schema":{"additionalProperties":false,"properties":{"action_proposal_id":{"anyOf":[{"format":"uuid","type":"string"},{"type":"null"}],"default":null,"description":"Optional. Hivekind fills this from the MCP consent grant.","title":"Action Proposal Id"},"campaign_id":{"description":"Exact campaign UUID returned by a Hivekind search, list, get, preview, or resource call.","format":"uuid","title":"Campaign Id","type":"string"},"signal_types":{"default":[],"description":"Signal types used by the campaigns monitoring set input v2 operation.","items":{"type":"string"},"maxItems":20,"title":"Signal Types","type":"array"},"trigger_threshold":{"anyOf":[{"maximum":100,"minimum":1,"type":"integer"},{"type":"null"}],"default":null,"description":"Trigger threshold used by the campaigns monitoring set input v2 operation.","title":"Trigger Threshold"}},"required":["campaign_id"],"title":"McpMcpCampaignsMonitoringSetInputV2","type":"object"},"output_schema":{"additionalProperties":false,"properties":{"campaign_id":{"format":"uuid","title":"Campaign Id","type":"string"},"status":{"maxLength":64,"minLength":1,"title":"Status","type":"string"}},"required":["campaign_id","status"],"title":"CampaignsMutationResultV2","type":"object"},"example":{"tool":"domain.campaign.v2","arguments":{"params":{"action":"invoke","operation":"campaigns.monitoring.set.v2","arguments":{"campaign_id":"00000000-0000-4000-8000-000000000001"},"operation_id":"00000000-0000-4000-8000-000000000003"}},"notice":"Fictional fixture IDs and example text. Resolve real IDs, use returned preview tokens and approve exact side effects before execution. Input validation is not proof of provider readiness or a successful business outcome."},"workflow_steps":[],"approval_policy":"exact_scope_single_action","idempotency_policy":"approved_action_outbox","gateway_credit_code":null,"identity":"Workspace, actor and consent come from OAuth; do not supply identity fields.","retry":"Keep the same operation and operation_id when retrying identical work. Reconcile an uncertain result before new work; never replay an old V1 write under a new V2 ID.","completion":"Check status, execution_state, error_code, output and evidence/resource references. Queued work is not complete: poll jobs.status.get.v2 in domain.workspace.v2. For read-back verification require read_back_verified=true where returned; reconcile failures without creating another object.","result_envelope":{"status":"completed | partial | cancelled | failed","execution_state":"terminal | queued | reconciliation_required","output":"Completed results validate against output_schema; partial/reconciliation results can contain incomplete evidence and must not be treated as completion.","billing":"gateway_credits_spent, downstream_settlement, job_id; pending downstream settlement is not a final cost","references":"run_id, invocation_id, resource_refs, evidence_refs"},"documentation":"https://www.hivekind.ai/docs/mcp/campaign#campaigns-monitoring-set-v2"},{"operation":"campaigns.pause.v2","domain":"campaign","tool":"domain.campaign.v2","title":"Pause a campaign","purpose":"You approved pausing an exact campaign program so it stops creating new activations.","side_effects":"Pauses the campaign, cancels Parallel watches, and idles child Hiveloops. Existing provider state is reconciled by Core.","permission":"execute","required_scopes":["actions:execute"],"requires_operation_id":true,"billing":"No gateway rate is configured. Check the Core workflow preview/quote for downstream charges and final settlement.","required_resolved_fields":[],"next_call":{"tool":"domain.campaign.v2","arguments":{"params":{"action":"describe","operation":"campaigns.pause.v2"}}},"catalog_revision":"07a373e389289e05","when_not_to_use":"You intend to pause only one in-flight Hiveloop.","description":"Use when: You approved pausing an exact campaign program so it stops creating new activations. Returns/does: Pauses the campaign, cancels Parallel watches, and idles child Hiveloops. Existing provider state is reconciled by Core. Do not use when: You intend to pause only one in-flight Hiveloop. Identity comes from OAuth. Resolve exact IDs; use typed enums and bounded limits. Billing: Gateway and downstream billing depend on the operation; check its preview/quote and returned billing.","input_schema":{"additionalProperties":false,"properties":{"action_proposal_id":{"anyOf":[{"format":"uuid","type":"string"},{"type":"null"}],"default":null,"description":"Optional. Hivekind fills this from the MCP consent grant.","title":"Action Proposal Id"},"campaign_id":{"description":"Exact campaign UUID returned by a Hivekind search, list, get, preview, or resource call.","format":"uuid","title":"Campaign Id","type":"string"}},"required":["campaign_id"],"title":"McpMcpCampaignsPauseInputV2","type":"object"},"output_schema":{"additionalProperties":false,"properties":{"campaign_id":{"format":"uuid","title":"Campaign Id","type":"string"},"status":{"maxLength":64,"minLength":1,"title":"Status","type":"string"}},"required":["campaign_id","status"],"title":"CampaignsMutationResultV2","type":"object"},"example":{"tool":"domain.campaign.v2","arguments":{"params":{"action":"invoke","operation":"campaigns.pause.v2","arguments":{"campaign_id":"00000000-0000-4000-8000-000000000001"},"operation_id":"00000000-0000-4000-8000-000000000003"}},"notice":"Fictional fixture IDs and example text. Resolve real IDs, use returned preview tokens and approve exact side effects before execution. Input validation is not proof of provider readiness or a successful business outcome."},"workflow_steps":[],"approval_policy":"exact_scope_single_action","idempotency_policy":"approved_action_outbox","gateway_credit_code":null,"identity":"Workspace, actor and consent come from OAuth; do not supply identity fields.","retry":"Keep the same operation and operation_id when retrying identical work. Reconcile an uncertain result before new work; never replay an old V1 write under a new V2 ID.","completion":"Check status, execution_state, error_code, output and evidence/resource references. Queued work is not complete: poll jobs.status.get.v2 in domain.workspace.v2. For read-back verification require read_back_verified=true where returned; reconcile failures without creating another object.","result_envelope":{"status":"completed | partial | cancelled | failed","execution_state":"terminal | queued | reconciliation_required","output":"Completed results validate against output_schema; partial/reconciliation results can contain incomplete evidence and must not be treated as completion.","billing":"gateway_credits_spent, downstream_settlement, job_id; pending downstream settlement is not a final cost","references":"run_id, invocation_id, resource_refs, evidence_refs"},"documentation":"https://www.hivekind.ai/docs/mcp/campaign#campaigns-pause-v2"},{"operation":"campaigns.playbook.set.v2","domain":"campaign","tool":"domain.campaign.v2","title":"Set a campaign playbook","purpose":"You have exact campaign and playbook IDs and approved changing the campaign's bound content.","side_effects":"Changes the campaign's playbook. Does not generate drafts or send.","permission":"execute","required_scopes":["actions:execute"],"requires_operation_id":true,"billing":"No gateway rate is configured. Check the Core workflow preview/quote for downstream charges and final settlement.","required_resolved_fields":[],"next_call":{"tool":"domain.campaign.v2","arguments":{"params":{"action":"describe","operation":"campaigns.playbook.set.v2"}}},"catalog_revision":"07a373e389289e05","when_not_to_use":"You need to find playbooks or change the audience.","description":"Use when: You have exact campaign and playbook IDs and approved changing the campaign's bound content. Returns/does: Changes the campaign's playbook. Does not generate drafts or send. Do not use when: You need to find playbooks or change the audience. Identity comes from OAuth. Resolve exact IDs; use typed enums and bounded limits. Billing: Gateway and downstream billing depend on the operation; check its preview/quote and returned billing.","input_schema":{"additionalProperties":false,"properties":{"action_proposal_id":{"anyOf":[{"format":"uuid","type":"string"},{"type":"null"}],"default":null,"description":"Optional. Hivekind fills this from the MCP consent grant.","title":"Action Proposal Id"},"campaign_id":{"description":"Exact campaign UUID returned by a Hivekind search, list, get, preview, or resource call.","format":"uuid","title":"Campaign Id","type":"string"},"playbook_id":{"description":"Exact playbook UUID returned by a Hivekind search, list, get, preview, or resource call.","format":"uuid","title":"Playbook Id","type":"string"}},"required":["campaign_id","playbook_id"],"title":"McpMcpCampaignsPlaybookSetInputV2","type":"object"},"output_schema":{"additionalProperties":false,"properties":{"campaign_id":{"format":"uuid","title":"Campaign Id","type":"string"},"playbook_id":{"format":"uuid","title":"Playbook Id","type":"string"}},"required":["campaign_id","playbook_id"],"title":"CampaignsPlaybookSetResultV2","type":"object"},"example":{"tool":"domain.campaign.v2","arguments":{"params":{"action":"invoke","operation":"campaigns.playbook.set.v2","arguments":{"campaign_id":"00000000-0000-4000-8000-000000000001","playbook_id":"00000000-0000-4000-8000-000000000001"},"operation_id":"00000000-0000-4000-8000-000000000003"}},"notice":"Fictional fixture IDs and example text. Resolve real IDs, use returned preview tokens and approve exact side effects before execution. Input validation is not proof of provider readiness or a successful business outcome."},"workflow_steps":[],"approval_policy":"exact_scope_single_action","idempotency_policy":"approved_action_outbox","gateway_credit_code":null,"identity":"Workspace, actor and consent come from OAuth; do not supply identity fields.","retry":"Keep the same operation and operation_id when retrying identical work. Reconcile an uncertain result before new work; never replay an old V1 write under a new V2 ID.","completion":"Check status, execution_state, error_code, output and evidence/resource references. Queued work is not complete: poll jobs.status.get.v2 in domain.workspace.v2. For read-back verification require read_back_verified=true where returned; reconcile failures without creating another object.","result_envelope":{"status":"completed | partial | cancelled | failed","execution_state":"terminal | queued | reconciliation_required","output":"Completed results validate against output_schema; partial/reconciliation results can contain incomplete evidence and must not be treated as completion.","billing":"gateway_credits_spent, downstream_settlement, job_id; pending downstream settlement is not a final cost","references":"run_id, invocation_id, resource_refs, evidence_refs"},"documentation":"https://www.hivekind.ai/docs/mcp/campaign#campaigns-playbook-set-v2"},{"operation":"campaigns.resume.v2","domain":"campaign","tool":"domain.campaign.v2","title":"Resume a campaign","purpose":"Resume a paused campaign.","side_effects":"Resumes the campaign. Does not send by itself.","permission":"execute","required_scopes":["actions:execute"],"requires_operation_id":true,"billing":"No gateway rate is configured. Check the Core workflow preview/quote for downstream charges and final settlement.","required_resolved_fields":[],"next_call":{"tool":"domain.campaign.v2","arguments":{"params":{"action":"describe","operation":"campaigns.resume.v2"}}},"catalog_revision":"07a373e389289e05","when_not_to_use":"This does not start a Hiveloop. Use hiveloops.start.v2 when sendability is ready.","description":"Use when: Resume a paused campaign. Returns/does: Resumes the campaign. Does not send by itself. Do not use when: This does not start a Hiveloop. Use hiveloops.start.v2 when sendability is ready. Identity comes from OAuth. Resolve exact IDs; use typed enums and bounded limits. Billing: Gateway and downstream billing depend on the operation; check its preview/quote and returned billing.","input_schema":{"additionalProperties":false,"properties":{"action_proposal_id":{"anyOf":[{"format":"uuid","type":"string"},{"type":"null"}],"default":null,"description":"Optional. Hivekind fills this from the MCP consent grant.","title":"Action Proposal Id"},"campaign_id":{"description":"Exact campaign UUID returned by a Hivekind search, list, get, preview, or resource call.","format":"uuid","title":"Campaign Id","type":"string"}},"required":["campaign_id"],"title":"McpMcpCampaignsResumeInputV2","type":"object"},"output_schema":{"additionalProperties":false,"properties":{"campaign_id":{"format":"uuid","title":"Campaign Id","type":"string"},"status":{"maxLength":64,"minLength":1,"title":"Status","type":"string"}},"required":["campaign_id","status"],"title":"CampaignsMutationResultV2","type":"object"},"example":{"tool":"domain.campaign.v2","arguments":{"params":{"action":"invoke","operation":"campaigns.resume.v2","arguments":{"campaign_id":"00000000-0000-4000-8000-000000000001"},"operation_id":"00000000-0000-4000-8000-000000000003"}},"notice":"Fictional fixture IDs and example text. Resolve real IDs, use returned preview tokens and approve exact side effects before execution. Input validation is not proof of provider readiness or a successful business outcome."},"workflow_steps":[],"approval_policy":"exact_scope_single_action","idempotency_policy":"approved_action_outbox","gateway_credit_code":null,"identity":"Workspace, actor and consent come from OAuth; do not supply identity fields.","retry":"Keep the same operation and operation_id when retrying identical work. Reconcile an uncertain result before new work; never replay an old V1 write under a new V2 ID.","completion":"Check status, execution_state, error_code, output and evidence/resource references. Queued work is not complete: poll jobs.status.get.v2 in domain.workspace.v2. For read-back verification require read_back_verified=true where returned; reconcile failures without creating another object.","result_envelope":{"status":"completed | partial | cancelled | failed","execution_state":"terminal | queued | reconciliation_required","output":"Completed results validate against output_schema; partial/reconciliation results can contain incomplete evidence and must not be treated as completion.","billing":"gateway_credits_spent, downstream_settlement, job_id; pending downstream settlement is not a final cost","references":"run_id, invocation_id, resource_refs, evidence_refs"},"documentation":"https://www.hivekind.ai/docs/mcp/campaign#campaigns-resume-v2"},{"operation":"campaigns.signals.list.v2","domain":"campaign","tool":"domain.campaign.v2","title":"List campaign signals","purpose":"List signals already attached to a campaign.","side_effects":"Reads current workspace state.","permission":"read","required_scopes":["runs:read"],"requires_operation_id":false,"billing":"No gateway credit charge; reads saved workspace data without starting paid provider work.","required_resolved_fields":[],"next_call":{"tool":"domain.campaign.v2","arguments":{"params":{"action":"describe","operation":"campaigns.signals.list.v2"}}},"catalog_revision":"07a373e389289e05","when_not_to_use":"Do not use this to search workspace signals — that is signals.search.v2.","description":"Use when: List signals already attached to a campaign. Returns/does: Reads the current authorized workspace state. Do not use when: Do not use this to search workspace signals — that is signals.search.v2. Identity comes from OAuth. Resolve exact IDs; use typed enums and bounded limits. Billing: Gateway and downstream billing depend on the operation; check its preview/quote and returned billing.","input_schema":{"additionalProperties":false,"properties":{"campaign_id":{"description":"Exact campaign UUID returned by a Hivekind search, list, get, preview, or resource call.","format":"uuid","title":"Campaign Id","type":"string"},"limit":{"default":20,"description":"Maximum number of records to return in this page.","maximum":50,"minimum":1,"title":"Limit","type":"integer"}},"required":["campaign_id"],"title":"McpPublicCampaignsSignalsListInputV2","type":"object"},"output_schema":{"$defs":{"CampaignSignalItemV1":{"additionalProperties":false,"properties":{"event_id":{"format":"uuid","title":"Event Id","type":"string"},"title":{"maxLength":255,"minLength":1,"title":"Title","type":"string"},"account_name":{"maxLength":255,"minLength":1,"title":"Account Name","type":"string"},"action_taken":{"anyOf":[{"maxLength":128,"type":"string"},{"type":"null"}],"default":null,"title":"Action Taken"},"detected_at":{"anyOf":[{"format":"date-time","type":"string"},{"type":"null"}],"default":null,"title":"Detected At"}},"required":["event_id","title","account_name"],"title":"CampaignSignalItemV1","type":"object"}},"additionalProperties":false,"description":"V2 result for campaigns.signals.list.v2; preserves the established validators.","properties":{"signals":{"default":[],"items":{"$ref":"#/$defs/CampaignSignalItemV1"},"maxItems":50,"title":"Signals","type":"array"}},"title":"PublicCampaignsSignalsListResultV2","type":"object"},"example":{"tool":"domain.campaign.v2","arguments":{"params":{"action":"invoke","operation":"campaigns.signals.list.v2","arguments":{"campaign_id":"00000000-0000-4000-8000-000000000001"},"operation_id":"00000000-0000-4000-8000-000000000003"}},"notice":"Fictional fixture IDs and example text. Resolve real IDs, use returned preview tokens and approve exact side effects before execution. Input validation is not proof of provider readiness or a successful business outcome."},"workflow_steps":[],"approval_policy":null,"idempotency_policy":"read_only","gateway_credit_code":null,"identity":"Workspace, actor and consent come from OAuth; do not supply identity fields.","retry":"Keep the same operation and operation_id when retrying identical work. Reconcile an uncertain result before new work; never replay an old V1 write under a new V2 ID.","completion":"Check status, execution_state, error_code, output and evidence/resource references. Queued work is not complete: poll jobs.status.get.v2 in domain.workspace.v2. For read-back verification require read_back_verified=true where returned; reconcile failures without creating another object.","result_envelope":{"status":"completed | partial | cancelled | failed","execution_state":"terminal | queued | reconciliation_required","output":"Completed results validate against output_schema; partial/reconciliation results can contain incomplete evidence and must not be treated as completion.","billing":"gateway_credits_spent, downstream_settlement, job_id; pending downstream settlement is not a final cost","references":"run_id, invocation_id, resource_refs, evidence_refs"},"documentation":"https://www.hivekind.ai/docs/mcp/campaign#campaigns-signals-list-v2"},{"operation":"campaigns.summary.v2","domain":"campaign","tool":"domain.campaign.v2","title":"Campaigns summary","purpose":"Aggregate campaign counts and health.","side_effects":"Reads current workspace state.","permission":"read","required_scopes":["runs:read"],"requires_operation_id":false,"billing":"No gateway credit charge; reads saved workspace data without starting paid provider work.","required_resolved_fields":[],"next_call":{"tool":"domain.campaign.v2","arguments":{"params":{"action":"describe","operation":"campaigns.summary.v2"}}},"catalog_revision":"07a373e389289e05","when_not_to_use":"Do not use this when you need a specific campaign — read hivekind://campaign/{id} or campaigns.list.v2.","description":"Use when: Aggregate campaign counts and health. Returns/does: Reads the current authorized workspace state. Do not use when: Do not use this when you need a specific campaign — read hivekind://campaign/{id} or campaigns.list.v2. Identity comes from OAuth. Resolve exact IDs; use typed enums and bounded limits. Billing: Gateway and downstream billing depend on the operation; check its preview/quote and returned billing.","input_schema":{"additionalProperties":false,"properties":{"include_archived":{"default":false,"description":"Whether archived records should be included.","title":"Include Archived","type":"boolean"},"limit":{"default":20,"description":"Maximum number of records to return in this page.","maximum":100,"minimum":1,"title":"Limit","type":"integer"}},"title":"McpPublicCampaignsSummaryInputV2","type":"object"},"output_schema":{"$defs":{"CampaignSummaryV1":{"additionalProperties":false,"properties":{"campaign_id":{"format":"uuid","title":"Campaign Id","type":"string"},"name":{"maxLength":255,"minLength":1,"title":"Name","type":"string"},"status":{"maxLength":64,"minLength":1,"title":"Status","type":"string"},"mode":{"anyOf":[{"maxLength":64,"type":"string"},{"type":"null"}],"default":null,"title":"Mode"},"account_count":{"minimum":0,"title":"Account Count","type":"integer"},"loop_count":{"minimum":0,"title":"Loop Count","type":"integer"},"active_loop_count":{"minimum":0,"title":"Active Loop Count","type":"integer"},"updated_at":{"format":"date-time","title":"Updated At","type":"string"}},"required":["campaign_id","name","status","account_count","loop_count","active_loop_count","updated_at"],"title":"CampaignSummaryV1","type":"object"}},"additionalProperties":false,"description":"V2 result for campaigns.summary.v2; preserves the established validators.","properties":{"campaigns":{"default":[],"items":{"$ref":"#/$defs/CampaignSummaryV1"},"maxItems":100,"title":"Campaigns","type":"array"},"campaign_status_counts":{"additionalProperties":{"type":"integer"},"maxProperties":32,"title":"Campaign Status Counts","type":"object"},"loop_status_counts":{"additionalProperties":{"type":"integer"},"maxProperties":32,"title":"Loop Status Counts","type":"object"}},"title":"PublicCampaignsSummaryResultV2","type":"object"},"example":{"tool":"domain.campaign.v2","arguments":{"params":{"action":"invoke","operation":"campaigns.summary.v2","arguments":{},"operation_id":"00000000-0000-4000-8000-000000000003"}},"notice":"Fictional fixture IDs and example text. Resolve real IDs, use returned preview tokens and approve exact side effects before execution. Input validation is not proof of provider readiness or a successful business outcome."},"workflow_steps":[],"approval_policy":null,"idempotency_policy":"read_only","gateway_credit_code":null,"identity":"Workspace, actor and consent come from OAuth; do not supply identity fields.","retry":"Keep the same operation and operation_id when retrying identical work. Reconcile an uncertain result before new work; never replay an old V1 write under a new V2 ID.","completion":"Check status, execution_state, error_code, output and evidence/resource references. Queued work is not complete: poll jobs.status.get.v2 in domain.workspace.v2. For read-back verification require read_back_verified=true where returned; reconcile failures without creating another object.","result_envelope":{"status":"completed | partial | cancelled | failed","execution_state":"terminal | queued | reconciliation_required","output":"Completed results validate against output_schema; partial/reconciliation results can contain incomplete evidence and must not be treated as completion.","billing":"gateway_credits_spent, downstream_settlement, job_id; pending downstream settlement is not a final cost","references":"run_id, invocation_id, resource_refs, evidence_refs"},"documentation":"https://www.hivekind.ai/docs/mcp/campaign#campaigns-summary-v2"},{"operation":"campaigns.update.v2","domain":"campaign","tool":"domain.campaign.v2","title":"Update a campaign","purpose":"Rename or edit an existing campaign.","side_effects":"Updates campaign fields. Does not send.","permission":"execute","required_scopes":["actions:execute"],"requires_operation_id":true,"billing":"No gateway rate is configured. Check the Core workflow preview/quote for downstream charges and final settlement.","required_resolved_fields":[],"next_call":{"tool":"domain.campaign.v2","arguments":{"params":{"action":"describe","operation":"campaigns.update.v2"}}},"catalog_revision":"07a373e389289e05","when_not_to_use":"Do not use this to add audience or bind a playbook.","description":"Use when: Rename or edit an existing campaign. Returns/does: Updates campaign fields. Does not send. Do not use when: Do not use this to add audience or bind a playbook. Identity comes from OAuth. Resolve exact IDs; use typed enums and bounded limits. Billing: Gateway and downstream billing depend on the operation; check its preview/quote and returned billing.","input_schema":{"additionalProperties":false,"properties":{"action_proposal_id":{"anyOf":[{"format":"uuid","type":"string"},{"type":"null"}],"default":null,"description":"Optional. Hivekind fills this from the MCP consent grant.","title":"Action Proposal Id"},"campaign_id":{"description":"Exact campaign UUID returned by a Hivekind search, list, get, preview, or resource call.","format":"uuid","title":"Campaign Id","type":"string"},"name":{"anyOf":[{"maxLength":255,"minLength":1,"type":"string"},{"type":"null"}],"default":null,"description":"Human-readable name for the record.","title":"Name"},"description":{"anyOf":[{"maxLength":4000,"type":"string"},{"type":"null"}],"default":null,"description":"Human-readable description of the record or requested outcome.","title":"Description"},"expected_status":{"anyOf":[{"maxLength":32,"minLength":1,"type":"string"},{"type":"null"}],"default":null,"description":"Expected status used by the public campaigns update input v2 operation.","title":"Expected Status"}},"required":["campaign_id"],"title":"McpMcpPublicCampaignsUpdateInputV2","type":"object"},"output_schema":{"additionalProperties":false,"description":"V2 result for campaigns.update.v2; preserves the established validators.","properties":{"campaign_id":{"format":"uuid","title":"Campaign Id","type":"string"},"status":{"maxLength":64,"minLength":1,"title":"Status","type":"string"}},"required":["campaign_id","status"],"title":"PublicCampaignsUpdateResultV2","type":"object"},"example":{"tool":"domain.campaign.v2","arguments":{"params":{"action":"invoke","operation":"campaigns.update.v2","arguments":{"campaign_id":"00000000-0000-4000-8000-000000000001"},"operation_id":"00000000-0000-4000-8000-000000000003"}},"notice":"Fictional fixture IDs and example text. Resolve real IDs, use returned preview tokens and approve exact side effects before execution. Input validation is not proof of provider readiness or a successful business outcome."},"workflow_steps":[],"approval_policy":"exact_scope_single_action","idempotency_policy":"approved_action_outbox","gateway_credit_code":null,"identity":"Workspace, actor and consent come from OAuth; do not supply identity fields.","retry":"Keep the same operation and operation_id when retrying identical work. Reconcile an uncertain result before new work; never replay an old V1 write under a new V2 ID.","completion":"Check status, execution_state, error_code, output and evidence/resource references. Queued work is not complete: poll jobs.status.get.v2 in domain.workspace.v2. For read-back verification require read_back_verified=true where returned; reconcile failures without creating another object.","result_envelope":{"status":"completed | partial | cancelled | failed","execution_state":"terminal | queued | reconciliation_required","output":"Completed results validate against output_schema; partial/reconciliation results can contain incomplete evidence and must not be treated as completion.","billing":"gateway_credits_spent, downstream_settlement, job_id; pending downstream settlement is not a final cost","references":"run_id, invocation_id, resource_refs, evidence_refs"},"documentation":"https://www.hivekind.ai/docs/mcp/campaign#campaigns-update-v2"},{"operation":"connectors.health.v2","domain":"workspace","tool":"domain.workspace.v2","title":"Connector health","purpose":"Check whether HubSpot, Apollo, email, or LinkedIn connectors are connected.","side_effects":"Reads current workspace state.","permission":"read","required_scopes":["runs:read"],"requires_operation_id":false,"billing":"No gateway credit charge; reads saved workspace data without starting paid provider work.","required_resolved_fields":[],"next_call":{"tool":"domain.workspace.v2","arguments":{"params":{"action":"describe","operation":"connectors.health.v2"}}},"catalog_revision":"07a373e389289e05","when_not_to_use":"Do not use this for credit balance — that is workspace.status.get.v2.","description":"Use when: Check whether HubSpot, Apollo, email, or LinkedIn connectors are connected. Returns/does: Reads the current authorized workspace state. Do not use when: Do not use this for credit balance — that is workspace.status.get.v2. Identity comes from OAuth. Resolve exact IDs; use typed enums and bounded limits. Billing: Gateway and downstream billing depend on the operation; check its preview/quote and returned billing.","input_schema":{"additionalProperties":false,"properties":{"providers":{"default":[],"description":"Providers used by the public connectors health input v2 operation.","items":{"type":"string"},"maxItems":20,"title":"Providers","type":"array"}},"title":"McpPublicConnectorsHealthInputV2","type":"object"},"output_schema":{"$defs":{"ConnectorHealthV1":{"additionalProperties":false,"properties":{"connection_id":{"format":"uuid","title":"Connection Id","type":"string"},"provider":{"maxLength":40,"minLength":1,"title":"Provider","type":"string"},"status":{"enum":["connected","degraded","error","disconnected","unknown"],"title":"Status","type":"string"},"last_validated_at":{"anyOf":[{"format":"date-time","type":"string"},{"type":"null"}],"default":null,"title":"Last Validated At"},"last_successful_sync_at":{"anyOf":[{"format":"date-time","type":"string"},{"type":"null"}],"default":null,"title":"Last Successful Sync At"},"issue_summary":{"anyOf":[{"maxLength":500,"type":"string"},{"type":"null"}],"default":null,"title":"Issue Summary"}},"required":["connection_id","provider","status"],"title":"ConnectorHealthV1","type":"object"}},"additionalProperties":false,"description":"V2 result for connectors.health.v2; preserves the established validators.","properties":{"connectors":{"default":[],"items":{"$ref":"#/$defs/ConnectorHealthV1"},"maxItems":20,"title":"Connectors","type":"array"}},"title":"PublicConnectorsHealthResultV2","type":"object"},"example":{"tool":"domain.workspace.v2","arguments":{"params":{"action":"invoke","operation":"connectors.health.v2","arguments":{},"operation_id":"00000000-0000-4000-8000-000000000003"}},"notice":"Fictional fixture IDs and example text. Resolve real IDs, use returned preview tokens and approve exact side effects before execution. Input validation is not proof of provider readiness or a successful business outcome."},"workflow_steps":[],"approval_policy":null,"idempotency_policy":"read_only","gateway_credit_code":null,"identity":"Workspace, actor and consent come from OAuth; do not supply identity fields.","retry":"Keep the same operation and operation_id when retrying identical work. Reconcile an uncertain result before new work; never replay an old V1 write under a new V2 ID.","completion":"Check status, execution_state, error_code, output and evidence/resource references. Queued work is not complete: poll jobs.status.get.v2 in domain.workspace.v2. For read-back verification require read_back_verified=true where returned; reconcile failures without creating another object.","result_envelope":{"status":"completed | partial | cancelled | failed","execution_state":"terminal | queued | reconciliation_required","output":"Completed results validate against output_schema; partial/reconciliation results can contain incomplete evidence and must not be treated as completion.","billing":"gateway_credits_spent, downstream_settlement, job_id; pending downstream settlement is not a final cost","references":"run_id, invocation_id, resource_refs, evidence_refs"},"documentation":"https://www.hivekind.ai/docs/mcp/workspace#connectors-health-v2"},{"operation":"contacts.delete.v2","domain":"data-quality","tool":"domain.data_quality.v2","title":"Delete a contact","purpose":"Permanently remove a contact that should not be in the workspace — a wrong person, a bad import, a test record. Call it first with dry_run true (the default) and show the user what would go; call again with dry_run false only after they confirm.","side_effects":"Irreversible. Deletes the contact with its HiveLoop history, messages, drafts and notes. dry_run true (the default) previews the counts and writes nothing.","permission":"execute","required_scopes":["actions:execute"],"requires_operation_id":true,"billing":"No gateway rate is configured. Check the Core workflow preview/quote for downstream charges and final settlement.","required_resolved_fields":[],"next_call":{"tool":"domain.data_quality.v2","arguments":{"params":{"action":"describe","operation":"contacts.delete.v2"}}},"catalog_revision":"07a373e389289e05","when_not_to_use":"It refuses while the contact is in a running or paused HiveLoop; the result names the loop, so tell the user to remove them from it first rather than retrying.","description":"Use when: Permanently remove a contact that should not be in the workspace — a wrong person, a bad import, a test record. Call it first with dry_run true (the default) and show the user what would go; call again with dry_run false only after they confirm. Returns/does: Irreversible. Deletes the contact with its HiveLoop history, messages, drafts and notes. dry_run true (the default) previews the counts and writes nothing. Do not use when: It refuses while the contact is in a running or paused HiveLoop; the result names the loop, so tell the user to remove them from it first rather than retrying. Identity comes from OAuth. Resolve exact IDs; use typed enums and bounded limits. Billing: Gateway and downstream billing depend on the operation; check its preview/quote and returned billing.","input_schema":{"additionalProperties":false,"properties":{"action_proposal_id":{"anyOf":[{"format":"uuid","type":"string"},{"type":"null"}],"default":null,"description":"Optional. Hivekind fills this from the MCP consent grant.","title":"Action Proposal Id"},"contact_id":{"description":"Exact contact UUID returned by a Hivekind search, list, get, preview, or resource call.","format":"uuid","title":"Contact Id","type":"string"},"dry_run":{"default":true,"description":"True (the default) reports what would be deleted and writes nothing. Show that to the user, then call again with false.","title":"Dry Run","type":"boolean"}},"required":["contact_id"],"title":"McpMcpContactsDeleteInputV2","type":"object"},"output_schema":{"$defs":{"DeletionBlockerV1":{"additionalProperties":false,"properties":{"code":{"description":"live_hiveloop or channel_partner.","maxLength":64,"minLength":1,"title":"Code","type":"string"},"message":{"maxLength":1000,"minLength":1,"title":"Message","type":"string"},"loops":{"default":[],"description":"Names of the running or paused HiveLoops holding the record.","items":{"type":"string"},"maxItems":50,"title":"Loops","type":"array"}},"required":["code","message"],"title":"DeletionBlockerV1","type":"object"}},"additionalProperties":false,"properties":{"entity_type":{"enum":["account","contact"],"title":"Entity Type","type":"string"},"entity_id":{"maxLength":64,"minLength":1,"title":"Entity Id","type":"string"},"name":{"anyOf":[{"maxLength":255,"type":"string"},{"type":"null"}],"default":null,"title":"Name"},"dry_run":{"title":"Dry Run","type":"boolean"},"deleted":{"default":false,"title":"Deleted","type":"boolean"},"can_delete":{"title":"Can Delete","type":"boolean"},"blockers":{"default":[],"items":{"$ref":"#/$defs/DeletionBlockerV1"},"maxItems":8,"title":"Blockers","type":"array"},"will_delete":{"additionalProperties":{"type":"integer"},"description":"Counts of what goes with the record: loop_activations, messages, drafts, notes, and for an account also contacts, signal_monitors and campaign_memberships.","title":"Will Delete","type":"object"}},"required":["entity_type","entity_id","dry_run","can_delete"],"title":"ContactsDeleteResultV2","type":"object"},"example":{"tool":"domain.data_quality.v2","arguments":{"params":{"action":"invoke","operation":"contacts.delete.v2","arguments":{"contact_id":"00000000-0000-4000-8000-000000000001"},"operation_id":"00000000-0000-4000-8000-000000000003"}},"notice":"Fictional fixture IDs and example text. Resolve real IDs, use returned preview tokens and approve exact side effects before execution. Input validation is not proof of provider readiness or a successful business outcome."},"workflow_steps":[],"approval_policy":"exact_scope_single_action","idempotency_policy":"approved_action_outbox","gateway_credit_code":null,"identity":"Workspace, actor and consent come from OAuth; do not supply identity fields.","retry":"Keep the same operation and operation_id when retrying identical work. Reconcile an uncertain result before new work; never replay an old V1 write under a new V2 ID.","completion":"Check status, execution_state, error_code, output and evidence/resource references. Queued work is not complete: poll jobs.status.get.v2 in domain.workspace.v2. For read-back verification require read_back_verified=true where returned; reconcile failures without creating another object.","result_envelope":{"status":"completed | partial | cancelled | failed","execution_state":"terminal | queued | reconciliation_required","output":"Completed results validate against output_schema; partial/reconciliation results can contain incomplete evidence and must not be treated as completion.","billing":"gateway_credits_spent, downstream_settlement, job_id; pending downstream settlement is not a final cost","references":"run_id, invocation_id, resource_refs, evidence_refs"},"documentation":"https://www.hivekind.ai/docs/mcp/data-quality#contacts-delete-v2"},{"operation":"contacts.employment.preview.v2","domain":"data-quality","tool":"domain.data_quality.v2","title":"Preview employment verification","purpose":"You resolved exact contact or account IDs and need the billable lookup count before checking employment.","side_effects":"No lookups, contact changes, activation changes, or charges.","permission":"propose","required_scopes":["accounts:read"],"requires_operation_id":true,"billing":"Free. Reports the estimated verification charge.","required_resolved_fields":[],"next_call":{"tool":"domain.data_quality.v2","arguments":{"params":{"action":"describe","operation":"contacts.employment.preview.v2"}}},"catalog_revision":"07a373e389289e05","when_not_to_use":"You want to run verification or start outreach.","description":"Use when: You resolved exact contact or account IDs and need the billable lookup count before checking employment. Returns/does: No lookups, contact changes, activation changes, or charges. Do not use when: You want to run verification or start outreach. Identity comes from OAuth. Resolve exact IDs; use typed enums and bounded limits. Billing: Free. Reports the estimated verification charge.","input_schema":{"additionalProperties":false,"properties":{"contact_ids":{"default":[],"description":"Check exactly these contacts. Resolve the request to a concrete set first — contacts.search.v2, or the contacts on an account — then pass them here.","items":{"format":"uuid","type":"string"},"maxItems":1000,"title":"Contact Ids","type":"array"},"account_ids":{"default":[],"description":"Check every contact at these accounts. Expanded server-side, so the batch cap applies to the contacts this resolves to, not to the number of accounts named.","items":{"format":"uuid","type":"string"},"maxItems":200,"title":"Account Ids","type":"array"}},"title":"McpContactsEmploymentPreviewInputV2","type":"object"},"output_schema":{"additionalProperties":false,"properties":{"requested_contacts":{"minimum":0,"title":"Requested Contacts","type":"integer"},"would_check":{"description":"Contacts a lookup would actually be made for — the billable count.","minimum":0,"title":"Would Check","type":"integer"},"already_fresh":{"description":"Checked within the last 90 days; free and skipped.","minimum":0,"title":"Already Fresh","type":"integer"},"no_email":{"description":"No email address, so never eligible for a lookup.","minimum":0,"title":"No Email","type":"integer"},"not_found":{"description":"Named contact ids that do not exist in this workspace. Only meaningful when contact_ids was given.","minimum":0,"title":"Not Found","type":"integer"},"credits_per_contact":{"minimum":0,"title":"Credits Per Contact","type":"number"},"estimated_credits":{"minimum":0,"title":"Estimated Credits","type":"number"},"max_batch":{"minimum":1,"title":"Max Batch","type":"integer"}},"required":["requested_contacts","would_check","already_fresh","no_email","not_found","credits_per_contact","estimated_credits","max_batch"],"title":"ContactsEmploymentPreviewResultV2","type":"object"},"example":{"tool":"domain.data_quality.v2","arguments":{"params":{"action":"invoke","operation":"contacts.employment.preview.v2","arguments":{"contact_ids":["00000000-0000-4000-8000-000000000001"]},"operation_id":"00000000-0000-4000-8000-000000000003"}},"notice":"Fictional fixture IDs and example text. Resolve real IDs, use returned preview tokens and approve exact side effects before execution. Input validation is not proof of provider readiness or a successful business outcome."},"workflow_steps":[],"approval_policy":null,"idempotency_policy":"read_only","gateway_credit_code":null,"identity":"Workspace, actor and consent come from OAuth; do not supply identity fields.","retry":"Keep the same operation and operation_id when retrying identical work. Reconcile an uncertain result before new work; never replay an old V1 write under a new V2 ID.","completion":"Check status, execution_state, error_code, output and evidence/resource references. Queued work is not complete: poll jobs.status.get.v2 in domain.workspace.v2. For read-back verification require read_back_verified=true where returned; reconcile failures without creating another object.","result_envelope":{"status":"completed | partial | cancelled | failed","execution_state":"terminal | queued | reconciliation_required","output":"Completed results validate against output_schema; partial/reconciliation results can contain incomplete evidence and must not be treated as completion.","billing":"gateway_credits_spent, downstream_settlement, job_id; pending downstream settlement is not a final cost","references":"run_id, invocation_id, resource_refs, evidence_refs"},"documentation":"https://www.hivekind.ai/docs/mcp/data-quality#contacts-employment-preview-v2"},{"operation":"contacts.employment.start.v2","domain":"data-quality","tool":"domain.data_quality.v2","title":"Start employment verification","purpose":"You approved the exact contact/account scope returned by contacts.employment.preview.v2 and need current-employer checks.","side_effects":"Queues verification; confirmed departures pause activations, cancel unsent drafts, and enqueue employer refresh. It never sends outreach.","permission":"execute","required_scopes":["actions:execute"],"requires_operation_id":true,"billing":"One credit per fresh lookup completed; cached, missing-email, and failed lookups are free.","required_resolved_fields":[],"next_call":{"tool":"domain.data_quality.v2","arguments":{"params":{"action":"describe","operation":"contacts.employment.start.v2"}}},"catalog_revision":"07a373e389289e05","when_not_to_use":"You want to send outreach, or have not previewed the billable scope.","description":"Use when: You approved the exact contact/account scope returned by contacts.employment.preview.v2 and need current-employer checks. Returns/does: Queues verification; confirmed departures pause activations, cancel unsent drafts, and enqueue employer refresh. It never sends outreach. Do not use when: You want to send outreach, or have not previewed the billable scope. Identity comes from OAuth. Resolve exact IDs; use typed enums and bounded limits. Billing: One credit per fresh lookup completed; cached, missing-email, and failed lookups are free.","input_schema":{"additionalProperties":false,"properties":{"contact_ids":{"default":[],"description":"Check exactly these contacts. Resolve the request to a concrete set first — contacts.search.v2, or the contacts on an account — then pass them here.","items":{"format":"uuid","type":"string"},"maxItems":1000,"title":"Contact Ids","type":"array"},"account_ids":{"default":[],"description":"Check every contact at these accounts. Expanded server-side, so the batch cap applies to the contacts this resolves to, not to the number of accounts named.","items":{"format":"uuid","type":"string"},"maxItems":200,"title":"Account Ids","type":"array"},"action_proposal_id":{"anyOf":[{"format":"uuid","type":"string"},{"type":"null"}],"default":null,"description":"Optional. Hivekind fills this from the MCP consent grant.","title":"Action Proposal Id"}},"title":"McpMcpContactsEmploymentStartInputV2","type":"object"},"output_schema":{"additionalProperties":false,"properties":{"run_id":{"format":"uuid","title":"Run Id","type":"string"},"job_id":{"maxLength":64,"minLength":1,"title":"Job Id","type":"string"},"requested_contacts":{"minimum":0,"title":"Requested Contacts","type":"integer"},"would_check":{"minimum":0,"title":"Would Check","type":"integer"}},"required":["run_id","job_id","requested_contacts","would_check"],"title":"ContactsEmploymentStartResultV2","type":"object"},"example":{"tool":"domain.data_quality.v2","arguments":{"params":{"action":"invoke","operation":"contacts.employment.start.v2","arguments":{"contact_ids":["00000000-0000-4000-8000-000000000001"]},"operation_id":"00000000-0000-4000-8000-000000000003"}},"notice":"Fictional fixture IDs and example text. Resolve real IDs, use returned preview tokens and approve exact side effects before execution. Input validation is not proof of provider readiness or a successful business outcome."},"workflow_steps":[],"approval_policy":"exact_scope_single_action","idempotency_policy":"approved_action_outbox","gateway_credit_code":null,"identity":"Workspace, actor and consent come from OAuth; do not supply identity fields.","retry":"Keep the same operation and operation_id when retrying identical work. Reconcile an uncertain result before new work; never replay an old V1 write under a new V2 ID.","completion":"Check status, execution_state, error_code, output and evidence/resource references. Queued work is not complete: poll jobs.status.get.v2 in domain.workspace.v2. For read-back verification require read_back_verified=true where returned; reconcile failures without creating another object.","result_envelope":{"status":"completed | partial | cancelled | failed","execution_state":"terminal | queued | reconciliation_required","output":"Completed results validate against output_schema; partial/reconciliation results can contain incomplete evidence and must not be treated as completion.","billing":"gateway_credits_spent, downstream_settlement, job_id; pending downstream settlement is not a final cost","references":"run_id, invocation_id, resource_refs, evidence_refs"},"documentation":"https://www.hivekind.ai/docs/mcp/data-quality#contacts-employment-start-v2"},{"operation":"contacts.employment.status.get.v2","domain":"data-quality","tool":"domain.data_quality.v2","title":"Get employment verification status","purpose":"You have a verification run_id and need progress, departures, and updated-employer evidence.","side_effects":"Returns a bounded status result. Read only.","permission":"read","required_scopes":["accounts:read"],"requires_operation_id":false,"billing":"No gateway credit charge; reads saved workspace data without starting paid provider work.","required_resolved_fields":[],"next_call":{"tool":"domain.data_quality.v2","arguments":{"params":{"action":"describe","operation":"contacts.employment.status.get.v2"}}},"catalog_revision":"07a373e389289e05","when_not_to_use":"You need status for an import, discovery, or grading job.","description":"Use when: You have a verification run_id and need progress, departures, and updated-employer evidence. Returns/does: Returns a bounded status result. Read only. Do not use when: You need status for an import, discovery, or grading job. Identity comes from OAuth. Resolve exact IDs; use typed enums and bounded limits. Billing: Gateway and downstream billing depend on the operation; check its preview/quote and returned billing.","input_schema":{"additionalProperties":false,"properties":{"run_id":{"description":"Exact run UUID returned by a Hivekind search, list, get, preview, or resource call.","format":"uuid","title":"Run Id","type":"string"}},"required":["run_id"],"title":"McpContactsEmploymentStatusInputV2","type":"object"},"output_schema":{"$defs":{"DepartedContactV1":{"additionalProperties":false,"properties":{"contact_id":{"anyOf":[{"format":"uuid","type":"string"},{"type":"null"}],"default":null,"title":"Contact Id"},"contact_name":{"anyOf":[{"maxLength":255,"type":"string"},{"type":"null"}],"default":null,"title":"Contact Name"},"contact_email":{"anyOf":[{"maxLength":320,"type":"string"},{"type":"null"}],"default":null,"title":"Contact Email"},"reason":{"anyOf":[{"maxLength":64,"type":"string"},{"type":"null"}],"default":null,"title":"Reason"},"current_company":{"anyOf":[{"maxLength":255,"type":"string"},{"type":"null"}],"default":null,"description":"Where Exa says they work now, when it could tell.","title":"Current Company"}},"title":"DepartedContactV1","type":"object"}},"additionalProperties":false,"properties":{"run_id":{"format":"uuid","title":"Run Id","type":"string"},"status":{"enum":["pending","running","succeeded","failed"],"title":"Status","type":"string"},"requested_count":{"minimum":0,"title":"Requested Count","type":"integer"},"processed_count":{"minimum":0,"title":"Processed Count","type":"integer"},"passing_count":{"minimum":0,"title":"Passing Count","type":"integer"},"blocked_count":{"minimum":0,"title":"Blocked Count","type":"integer"},"unverified_count":{"description":"Contacts whose lookup never completed, so nothing was confirmed either way. These are NOT billed and are re-checked next time.","minimum":0,"title":"Unverified Count","type":"integer"},"blocked_contacts":{"default":[],"items":{"$ref":"#/$defs/DepartedContactV1"},"maxItems":200,"title":"Blocked Contacts","type":"array"},"error_message":{"anyOf":[{"maxLength":1000,"type":"string"},{"type":"null"}],"default":null,"title":"Error Message"},"started_at":{"anyOf":[{"format":"date-time","type":"string"},{"type":"null"}],"default":null,"title":"Started At"},"completed_at":{"anyOf":[{"format":"date-time","type":"string"},{"type":"null"}],"default":null,"title":"Completed At"}},"required":["run_id","status","requested_count","processed_count","passing_count","blocked_count","unverified_count"],"title":"ContactsEmploymentStatusResultV2","type":"object"},"example":{"tool":"domain.data_quality.v2","arguments":{"params":{"action":"invoke","operation":"contacts.employment.status.get.v2","arguments":{"run_id":"00000000-0000-4000-8000-000000000001"},"operation_id":"00000000-0000-4000-8000-000000000003"}},"notice":"Fictional fixture IDs and example text. Resolve real IDs, use returned preview tokens and approve exact side effects before execution. Input validation is not proof of provider readiness or a successful business outcome."},"workflow_steps":[],"approval_policy":null,"idempotency_policy":"read_only","gateway_credit_code":null,"identity":"Workspace, actor and consent come from OAuth; do not supply identity fields.","retry":"Keep the same operation and operation_id when retrying identical work. Reconcile an uncertain result before new work; never replay an old V1 write under a new V2 ID.","completion":"Check status, execution_state, error_code, output and evidence/resource references. Queued work is not complete: poll jobs.status.get.v2 in domain.workspace.v2. For read-back verification require read_back_verified=true where returned; reconcile failures without creating another object.","result_envelope":{"status":"completed | partial | cancelled | failed","execution_state":"terminal | queued | reconciliation_required","output":"Completed results validate against output_schema; partial/reconciliation results can contain incomplete evidence and must not be treated as completion.","billing":"gateway_credits_spent, downstream_settlement, job_id; pending downstream settlement is not a final cost","references":"run_id, invocation_id, resource_refs, evidence_refs"},"documentation":"https://www.hivekind.ai/docs/mcp/data-quality#contacts-employment-status-get-v2"},{"operation":"contacts.move.v2","domain":"data-quality","tool":"domain.data_quality.v2","title":"Move a contact to another account","purpose":"Re-file a contact that sits under the wrong company — a bad import, an old employer, a duplicate account that is not being merged. Resolve the contact_id and the target account_id first, and name both to the user before moving.","side_effects":"Changes only the contact's account. Messages, HiveLoop history, signals and LinkedIn relationship status stay with the contact; its own notes move to the new account's feed. No ICP re-score and no owner change. The move is recorded in the contact's move history with who made it. Reversible by moving it back.","permission":"execute","required_scopes":["actions:execute"],"requires_operation_id":true,"billing":"No gateway rate is configured. Check the Core workflow preview/quote for downstream charges and final settlement.","required_resolved_fields":[],"next_call":{"tool":"domain.data_quality.v2","arguments":{"params":{"action":"describe","operation":"contacts.move.v2"}}},"catalog_revision":"07a373e389289e05","when_not_to_use":"Do not use this to merge two accounts — that is accounts.merge.execute.v2, which moves every contact. Do not use it to edit the person's fields — that is contacts.update.v2. It refuses when the target already has the same person (same email or LinkedIn profile), when the target is archived, or while the contact is in a running or paused HiveLoop; the error says which, so tell the user rather than retrying.","description":"Use when: Re-file a contact that sits under the wrong company — a bad import, an old employer, a duplicate account that is not being merged. Resolve the contact_id and the target account_id first, and name both to the user before moving. Returns/does: Changes only the contact's account. Messages, HiveLoop history, signals and LinkedIn relationship status stay with the contact; its own notes move to the new account's feed. No ICP re-score and no owner change. The move is recorded in the contact's move history with who made it. Reversible by moving it back. Do not use when: Do not use this to merge two accounts — that is accounts.merge.execute.v2, which moves every contact. Do not use it to edit the person's fields — that is contacts.update.v2. It refuses when the target already has the same person (same email or LinkedIn profile), when the target is archived, or while the contact is in a running or paused HiveLoop; the error says which, so tell the user rather than retrying. Identity comes from OAuth. Resolve exact IDs; use typed enums and bounded limits. Billing: Gateway and downstream billing depend on the operation; check its preview/quote and returned billing.","input_schema":{"additionalProperties":false,"properties":{"action_proposal_id":{"anyOf":[{"format":"uuid","type":"string"},{"type":"null"}],"default":null,"description":"Optional. Hivekind fills this from the MCP consent grant.","title":"Action Proposal Id"},"contact_id":{"description":"Exact contact_id; resolve it with contacts.search.v2 first.","format":"uuid","title":"Contact Id","type":"string"},"target_account_id":{"description":"Exact account_id of the account to move the contact to; resolve it with accounts.search.v2 first.","format":"uuid","title":"Target Account Id","type":"string"},"reason":{"anyOf":[{"maxLength":500,"minLength":1,"type":"string"},{"type":"null"}],"default":null,"description":"Why the contact is being moved; kept in the contact's move history.","title":"Reason"}},"required":["contact_id","target_account_id"],"title":"McpMcpPublicContactsMoveInputV2","type":"object"},"output_schema":{"additionalProperties":false,"description":"V2 result for contacts.move.v2; preserves the established validators.","properties":{"contact_id":{"maxLength":64,"minLength":1,"title":"Contact Id","type":"string"},"name":{"anyOf":[{"maxLength":255,"type":"string"},{"type":"null"}],"default":null,"title":"Name"},"moved":{"description":"False when the contact was already on that account; nothing changed.","title":"Moved","type":"boolean"},"from_account_id":{"anyOf":[{"maxLength":64,"type":"string"},{"type":"null"}],"default":null,"title":"From Account Id"},"from_account_name":{"anyOf":[{"maxLength":255,"type":"string"},{"type":"null"}],"default":null,"title":"From Account Name"},"to_account_id":{"maxLength":64,"minLength":1,"title":"To Account Id","type":"string"},"to_account_name":{"anyOf":[{"maxLength":255,"type":"string"},{"type":"null"}],"default":null,"title":"To Account Name"},"notes_moved":{"default":0,"description":"The contact's own notes, now shown on the new account's feed.","minimum":0,"title":"Notes Moved","type":"integer"},"web_url":{"anyOf":[{"maxLength":2048,"type":"string"},{"type":"null"}],"default":null,"description":"Browser link to this contact in the Hivekind app. Use it verbatim whenever you link the record for a person, including inside note bodies; never build a link by hand or use a hivekind:// URI, which is an MCP resource handle, not a page. Null when the server has no app URL configured.","title":"Web Url"},"to_account_web_url":{"anyOf":[{"maxLength":2048,"type":"string"},{"type":"null"}],"default":null,"description":"Browser link to this account the contact now belongs to in the Hivekind app. Use it verbatim whenever you link the record for a person, including inside note bodies; never build a link by hand or use a hivekind:// URI, which is an MCP resource handle, not a page. Null when the server has no app URL configured.","title":"To Account Web Url"}},"required":["contact_id","moved","to_account_id"],"title":"PublicContactsMoveResultV2","type":"object"},"example":{"tool":"domain.data_quality.v2","arguments":{"params":{"action":"invoke","operation":"contacts.move.v2","arguments":{"contact_id":"00000000-0000-4000-8000-000000000001","target_account_id":"00000000-0000-4000-8000-000000000001"},"operation_id":"00000000-0000-4000-8000-000000000003"}},"notice":"Fictional fixture IDs and example text. Resolve real IDs, use returned preview tokens and approve exact side effects before execution. Input validation is not proof of provider readiness or a successful business outcome."},"workflow_steps":[],"approval_policy":"exact_scope_single_action","idempotency_policy":"approved_action_outbox","gateway_credit_code":null,"identity":"Workspace, actor and consent come from OAuth; do not supply identity fields.","retry":"Keep the same operation and operation_id when retrying identical work. Reconcile an uncertain result before new work; never replay an old V1 write under a new V2 ID.","completion":"Check status, execution_state, error_code, output and evidence/resource references. Queued work is not complete: poll jobs.status.get.v2 in domain.workspace.v2. For read-back verification require read_back_verified=true where returned; reconcile failures without creating another object.","result_envelope":{"status":"completed | partial | cancelled | failed","execution_state":"terminal | queued | reconciliation_required","output":"Completed results validate against output_schema; partial/reconciliation results can contain incomplete evidence and must not be treated as completion.","billing":"gateway_credits_spent, downstream_settlement, job_id; pending downstream settlement is not a final cost","references":"run_id, invocation_id, resource_refs, evidence_refs"},"documentation":"https://www.hivekind.ai/docs/mcp/data-quality#contacts-move-v2"},{"operation":"contacts.search.v2","domain":"accounts","tool":"domain.accounts.v2","title":"Search contacts","purpose":"You need stable contact IDs at one account or across a bounded workspace search, including LinkedIn-shaped audiences: who a teammate connected with in a date range (connected_after/before), exact profile-URL lookup (linkedin_urls), relationship state or owner, source, last-interaction recency, and exclude_suppressed / exclude_in_active_campaign. account_ids in the result feed campaigns.launch directly.","side_effects":"Returns a bounded contact page. Read only.","permission":"read","required_scopes":["accounts:read"],"requires_operation_id":false,"billing":"No gateway credit charge; reads saved workspace data without starting paid provider work.","required_resolved_fields":[],"next_call":{"tool":"domain.accounts.v2","arguments":{"params":{"action":"describe","operation":"contacts.search.v2"}}},"catalog_revision":"07a373e389289e05","when_not_to_use":"You need verified relationship evidence; call network.paths.get.v2 after resolving contacts.","description":"Use when: You need stable contact IDs at one account or across a bounded workspace search, including LinkedIn-shaped audiences: who a teammate connected with in a date range (connected_after/before), exact profile-URL lookup (linkedin_urls), relationship state or owner, source, last-interaction recency, and exclude_suppressed / exclude_in_active_campaign. account_ids in the result feed campaigns.launch directly. Returns/does: Returns a bounded contact page. Read only. Do not use when: You need verified relationship evidence; call network.paths.get.v2 after resolving contacts. Identity comes from OAuth. Resolve exact IDs; use typed enums and bounded limits. Billing: Gateway and downstream billing depend on the operation; check its preview/quote and returned billing.","input_schema":{"additionalProperties":false,"properties":{"query":{"default":"*","description":"Search text. Use a name, domain, title, or other identifying phrase relevant to this operation.","maxLength":255,"minLength":1,"title":"Query","type":"string"},"offset":{"default":0,"description":"Zero-based number of matching records to skip for pagination.","maximum":1000000,"minimum":0,"title":"Offset","type":"integer"},"account_id":{"anyOf":[{"format":"uuid","type":"string"},{"type":"null"}],"default":null,"description":"Exact account UUID returned by a Hivekind search, list, get, preview, or resource call.","title":"Account Id"},"buyer_role":{"anyOf":[{"maxLength":160,"minLength":1,"type":"string"},{"type":"null"}],"default":null,"description":"Buyer role used by the contacts search input v2 operation.","title":"Buyer Role"},"source_ids":{"default":[],"description":"Only contacts linked to any of these import sources (workshop, event, webinar or list badges).","items":{"format":"uuid","type":"string"},"maxItems":50,"title":"Source Ids","type":"array"},"limit":{"default":20,"description":"Maximum number of records to return in this page.","maximum":50,"minimum":1,"title":"Limit","type":"integer"},"sort_by":{"default":"updated_at","description":"updated_at (the default) lists the contacts added or changed most recently first; icp_score ranks by fit.","enum":["updated_at","icp_score","name"],"title":"Sort By","type":"string"},"sort_direction":{"default":"desc","description":"Sort direction used by the contacts search input v2 operation.","enum":["asc","desc"],"title":"Sort Direction","type":"string"},"linkedin_urls":{"default":[],"description":"Exact LinkedIn profile URLs to resolve to contacts (scheme, www, trailing slash and query string are ignored).","items":{"type":"string"},"maxItems":50,"title":"Linkedin Urls","type":"array"},"connected_after":{"anyOf":[{"format":"date","type":"string"},{"type":"null"}],"default":null,"description":"Only contacts a visible teammate connected with on LinkedIn on or after this UTC date.","title":"Connected After"},"connected_before":{"anyOf":[{"format":"date","type":"string"},{"type":"null"}],"default":null,"description":"Only contacts a visible teammate connected with on LinkedIn on or before this UTC date (inclusive).","title":"Connected Before"},"relationship_status":{"anyOf":[{"enum":["connected","invite_sent","none"],"type":"string"},{"type":"null"}],"default":null,"description":"connected = 1st-degree connection; invite_sent = our connection request is pending; none = neither.","title":"Relationship Status"},"relationship_owner_user_id":{"anyOf":[{"format":"uuid","type":"string"},{"type":"null"}],"default":null,"description":"Only contacts this team member is connected with on LinkedIn.","title":"Relationship Owner User Id"},"network_scope":{"default":"workspace_consented","description":"Whose LinkedIn connections count: only the caller's, or also teammates who consented to share their network.","enum":["self","workspace_consented"],"title":"Network Scope","type":"string"},"source":{"anyOf":[{"enum":["linkedin_sync","event_roster","apollo","hubspot"],"type":"string"},{"type":"null"}],"default":null,"description":"How the contact entered Hive Base.","title":"Source"},"last_interaction_after":{"anyOf":[{"format":"date","type":"string"},{"type":"null"}],"default":null,"description":"Only contacts whose last touch (sent message, signal or LinkedIn action) is on or after this UTC date.","title":"Last Interaction After"},"last_interaction_before":{"anyOf":[{"format":"date","type":"string"},{"type":"null"}],"default":null,"description":"Only contacts whose last touch is on or before this UTC date (inclusive); never-touched contacts are excluded.","title":"Last Interaction Before"},"never_interacted":{"default":false,"description":"Only contacts with no recorded touch of any kind.","title":"Never Interacted","type":"boolean"},"exclude_suppressed":{"default":false,"description":"Drop contacts with an active workspace-wide suppression (contact, email or domain).","title":"Exclude Suppressed","type":"boolean"},"exclude_in_active_campaign":{"default":false,"description":"Drop contacts currently enrolled in a live Hiveloop.","title":"Exclude In Active Campaign","type":"boolean"}},"title":"McpContactsSearchInputV2","type":"object"},"output_schema":{"$defs":{"ContactSummaryV1":{"additionalProperties":false,"properties":{"contact_id":{"format":"uuid","title":"Contact Id","type":"string"},"account_id":{"format":"uuid","title":"Account Id","type":"string"},"account_name":{"maxLength":255,"minLength":1,"title":"Account Name","type":"string"},"display_name":{"maxLength":255,"minLength":1,"title":"Display Name","type":"string"},"title":{"anyOf":[{"maxLength":255,"type":"string"},{"type":"null"}],"default":null,"title":"Title"},"buyer_role":{"anyOf":[{"maxLength":160,"type":"string"},{"type":"null"}],"default":null,"title":"Buyer Role"},"icp_score":{"anyOf":[{"maximum":100,"minimum":0,"type":"number"},{"pattern":"^(?!^[-+.]*$)[+-]?0*\\d*\\.?\\d*$","type":"string"},{"type":"null"}],"default":null,"title":"Icp Score"},"icp_grade":{"anyOf":[{"maxLength":32,"type":"string"},{"type":"null"}],"default":null,"title":"Icp Grade"},"has_email":{"title":"Has Email","type":"boolean"},"has_linkedin":{"title":"Has Linkedin","type":"boolean"},"linkedin_url":{"anyOf":[{"maxLength":1024,"type":"string"},{"type":"null"}],"default":null,"title":"Linkedin Url"},"relationship_status":{"anyOf":[{"enum":["connected","invite_sent","none"],"type":"string"},{"type":"null"}],"default":null,"title":"Relationship Status"},"connected_at":{"anyOf":[{"format":"date-time","type":"string"},{"type":"null"}],"default":null,"title":"Connected At"},"relationship_owner_user_id":{"anyOf":[{"format":"uuid","type":"string"},{"type":"null"}],"default":null,"title":"Relationship Owner User Id"},"relationship_owner_name":{"anyOf":[{"maxLength":255,"type":"string"},{"type":"null"}],"default":null,"title":"Relationship Owner Name"},"last_interaction_at":{"anyOf":[{"format":"date-time","type":"string"},{"type":"null"}],"default":null,"title":"Last Interaction At"},"source":{"anyOf":[{"enum":["linkedin_sync","event_roster","apollo","hubspot"],"type":"string"},{"type":"null"}],"default":null,"title":"Source"},"updated_at":{"anyOf":[{"format":"date-time","type":"string"},{"type":"null"}],"default":null,"description":"When the contact record last changed (UTC).","title":"Updated At"},"web_url":{"anyOf":[{"maxLength":2048,"type":"string"},{"type":"null"}],"default":null,"description":"Browser link to this contact in the Hivekind app. Use it verbatim whenever you link the record for a person, including inside note bodies; never build a link by hand or use a hivekind:// URI, which is an MCP resource handle, not a page. Null when the server has no app URL configured.","title":"Web Url"},"account_web_url":{"anyOf":[{"maxLength":2048,"type":"string"},{"type":"null"}],"default":null,"description":"Browser link to this contact's account in the Hivekind app. Use it verbatim whenever you link the record for a person, including inside note bodies; never build a link by hand or use a hivekind:// URI, which is an MCP resource handle, not a page. Null when the server has no app URL configured.","title":"Account Web Url"}},"required":["contact_id","account_id","account_name","display_name","has_email","has_linkedin"],"title":"ContactSummaryV1","type":"object"}},"additionalProperties":false,"properties":{"contacts":{"default":[],"items":{"$ref":"#/$defs/ContactSummaryV1"},"maxItems":50,"title":"Contacts","type":"array"},"account_ids":{"default":[],"description":"Distinct account IDs of this page's contacts, in page order; pass to campaigns.launch.v2 / campaigns.audience.add.v2.","items":{"format":"uuid","type":"string"},"maxItems":50,"title":"Account Ids","type":"array"},"unmatched_linkedin_urls":{"default":[],"description":"Requested LinkedIn URLs that match no active contact in the workspace (independent of the other filters).","items":{"type":"string"},"maxItems":50,"title":"Unmatched Linkedin Urls","type":"array"},"offset":{"default":0,"title":"Offset","type":"integer"},"has_more":{"default":false,"title":"Has More","type":"boolean"}},"title":"ContactsSearchResultV2","type":"object"},"example":{"tool":"domain.accounts.v2","arguments":{"params":{"action":"invoke","operation":"contacts.search.v2","arguments":{},"operation_id":"00000000-0000-4000-8000-000000000003"}},"notice":"Fictional fixture IDs and example text. Resolve real IDs, use returned preview tokens and approve exact side effects before execution. Input validation is not proof of provider readiness or a successful business outcome."},"workflow_steps":[],"approval_policy":null,"idempotency_policy":"read_only","gateway_credit_code":null,"identity":"Workspace, actor and consent come from OAuth; do not supply identity fields.","retry":"Keep the same operation and operation_id when retrying identical work. Reconcile an uncertain result before new work; never replay an old V1 write under a new V2 ID.","completion":"Check status, execution_state, error_code, output and evidence/resource references. Queued work is not complete: poll jobs.status.get.v2 in domain.workspace.v2. For read-back verification require read_back_verified=true where returned; reconcile failures without creating another object.","result_envelope":{"status":"completed | partial | cancelled | failed","execution_state":"terminal | queued | reconciliation_required","output":"Completed results validate against output_schema; partial/reconciliation results can contain incomplete evidence and must not be treated as completion.","billing":"gateway_credits_spent, downstream_settlement, job_id; pending downstream settlement is not a final cost","references":"run_id, invocation_id, resource_refs, evidence_refs"},"documentation":"https://www.hivekind.ai/docs/mcp/accounts#contacts-search-v2"},{"operation":"contacts.timeline.get.v2","domain":"accounts","tool":"domain.accounts.v2","title":"Entity timeline","purpose":"Recorded interactions and notes for one contact, or for a whole account with entity_type=account, newest first. Paginate with before=next_cursor.","side_effects":"Read only.","permission":"read","required_scopes":["accounts:read"],"requires_operation_id":false,"billing":"No gateway credit charge; reads saved workspace data without starting paid provider work.","required_resolved_fields":[],"next_call":{"tool":"domain.accounts.v2","arguments":{"params":{"action":"describe","operation":"contacts.timeline.get.v2"}}},"catalog_revision":"07a373e389289e05","when_not_to_use":"Do not infer inactivity from a truncated page, hidden content, or missing records; content is permission-gated.","description":"Use when: Recorded interactions and notes for one contact, or for a whole account with entity_type=account, newest first. Paginate with before=next_cursor. Returns/does: Read only. Do not use when: Do not infer inactivity from a truncated page, hidden content, or missing records; content is permission-gated. Identity comes from OAuth. Resolve exact IDs; use typed enums and bounded limits. Billing: Gateway and downstream billing depend on the operation; check its preview/quote and returned billing.","input_schema":{"additionalProperties":false,"properties":{"contact_id":{"anyOf":[{"format":"uuid","type":"string"},{"type":"null"}],"default":null,"description":"Exact contact UUID (shorthand for entity_type=contact).","title":"Contact Id"},"entity_type":{"default":"contact","description":"Whose feed: a contact or a whole account.","enum":["contact","account"],"title":"Entity Type","type":"string"},"entity_id":{"anyOf":[{"format":"uuid","type":"string"},{"type":"null"}],"default":null,"description":"Exact contact_id or account_id; resolve it before invoking.","title":"Entity Id"},"before":{"anyOf":[{"format":"date-time","type":"string"},{"type":"null"}],"default":null,"description":"Page backwards with the previous next_cursor.","title":"Before"},"channel":{"anyOf":[{"maxLength":32,"type":"string"},{"type":"null"}],"default":null,"description":"email, linkedin, data, note, ...","title":"Channel"},"limit":{"default":50,"description":"Maximum number of records to return in this page.","maximum":100,"minimum":1,"title":"Limit","type":"integer"},"include_notes":{"default":true,"description":"Mix human and agent notes into the feed.","title":"Include Notes","type":"boolean"},"author_type":{"anyOf":[{"enum":["user","agent"],"type":"string"},{"type":"null"}],"default":null,"description":"Only notes by people (user) or by agents (agent).","title":"Author Type"}},"title":"McpPublicContactsTimelineGetInputV2","type":"object"},"output_schema":{"additionalProperties":false,"description":"V2 result for contacts.timeline.get.v2; preserves the established validators.","properties":{"title":{"title":"Title","type":"string"},"data":{"additionalProperties":true,"title":"Data","type":"object"},"limitations":{"title":"Limitations","type":"string"},"applied_parameters":{"additionalProperties":true,"title":"Applied Parameters","type":"object"},"source_path":{"title":"Source Path","type":"string"},"job_id":{"anyOf":[{"type":"string"},{"type":"null"}],"default":null,"description":"Core job identifier when an operation enqueues work; poll jobs.status.get.v2 and read the resulting resource.","title":"Job Id"},"queued":{"default":false,"title":"Queued","type":"boolean"},"outcome_status":{"default":"partial","enum":["completed","partial","needs_input","awaiting_approval"],"title":"Outcome Status","type":"string"},"read_back_verified":{"default":false,"title":"Read Back Verified","type":"boolean"},"verification_message":{"anyOf":[{"type":"string"},{"type":"null"}],"default":null,"title":"Verification Message"}},"required":["title","data","limitations","source_path"],"title":"PublicContactsTimelineGetResultV2","type":"object"},"example":{"tool":"domain.accounts.v2","arguments":{"params":{"action":"invoke","operation":"contacts.timeline.get.v2","arguments":{"contact_id":"00000000-0000-4000-8000-000000000001"},"operation_id":"00000000-0000-4000-8000-000000000003"}},"notice":"Fictional fixture IDs and example text. Resolve real IDs, use returned preview tokens and approve exact side effects before execution. Input validation is not proof of provider readiness or a successful business outcome."},"workflow_steps":[],"approval_policy":null,"idempotency_policy":"caller_operation","gateway_credit_code":null,"identity":"Workspace, actor and consent come from OAuth; do not supply identity fields.","retry":"Keep the same operation and operation_id when retrying identical work. Reconcile an uncertain result before new work; never replay an old V1 write under a new V2 ID.","completion":"Check status, execution_state, error_code, output and evidence/resource references. Queued work is not complete: poll jobs.status.get.v2 in domain.workspace.v2. For read-back verification require read_back_verified=true where returned; reconcile failures without creating another object.","result_envelope":{"status":"completed | partial | cancelled | failed","execution_state":"terminal | queued | reconciliation_required","output":"Completed results validate against output_schema; partial/reconciliation results can contain incomplete evidence and must not be treated as completion.","billing":"gateway_credits_spent, downstream_settlement, job_id; pending downstream settlement is not a final cost","references":"run_id, invocation_id, resource_refs, evidence_refs"},"documentation":"https://www.hivekind.ai/docs/mcp/accounts#contacts-timeline-get-v2"},{"operation":"contacts.update.v2","domain":"data-quality","tool":"domain.data_quality.v2","title":"Edit contact fields","purpose":"Correct or fill in a contact's first or last name, title, email, phone or LinkedIn URL. Leave a field out to keep it; list it in clear_fields to empty it.","side_effects":"Writes only the fields passed. An email already held by another contact in the workspace is refused.","permission":"execute","required_scopes":["actions:execute"],"requires_operation_id":true,"billing":"No gateway rate is configured. Check the Core workflow preview/quote for downstream charges and final settlement.","required_resolved_fields":[],"next_call":{"tool":"domain.data_quality.v2","arguments":{"params":{"action":"describe","operation":"contacts.update.v2"}}},"catalog_revision":"07a373e389289e05","when_not_to_use":"Do not use this to change a buyer role — that comes from buyer-role classification (accounts.classify_buyers.v2). Do not use it to move a contact to a different company. Do not use it to verify whether someone still works somewhere — that is the employment tools.","description":"Use when: Correct or fill in a contact's first or last name, title, email, phone or LinkedIn URL. Leave a field out to keep it; list it in clear_fields to empty it. Returns/does: Writes only the fields passed. An email already held by another contact in the workspace is refused. Do not use when: Do not use this to change a buyer role — that comes from buyer-role classification (accounts.classify_buyers.v2). Do not use it to move a contact to a different company. Do not use it to verify whether someone still works somewhere — that is the employment tools. Identity comes from OAuth. Resolve exact IDs; use typed enums and bounded limits. Billing: Gateway and downstream billing depend on the operation; check its preview/quote and returned billing.","input_schema":{"$defs":{"ContactFieldUpdatesV1":{"additionalProperties":false,"description":"New values for the fields being changed. Omitted means \"leave alone\".","properties":{"first_name":{"anyOf":[{"maxLength":120,"minLength":1,"type":"string"},{"type":"null"}],"default":null,"title":"First Name"},"last_name":{"anyOf":[{"maxLength":120,"minLength":1,"type":"string"},{"type":"null"}],"default":null,"title":"Last Name"},"title":{"anyOf":[{"maxLength":255,"minLength":1,"type":"string"},{"type":"null"}],"default":null,"title":"Title"},"email":{"anyOf":[{"maxLength":320,"minLength":3,"pattern":"^[^@\\s]+@[^@\\s]+$","type":"string"},{"type":"null"}],"default":null,"description":"Must not already belong to another contact in the workspace.","title":"Email"},"phone":{"anyOf":[{"maxLength":64,"minLength":3,"type":"string"},{"type":"null"}],"default":null,"title":"Phone"},"linkedin_url":{"anyOf":[{"maxLength":512,"minLength":10,"pattern":"^https?://([a-z]{2,3}\\.)?linkedin\\.com/","type":"string"},{"type":"null"}],"default":null,"description":"The person's linkedin.com/in/... profile URL.","title":"Linkedin Url"}},"title":"ContactFieldUpdatesV1","type":"object"}},"additionalProperties":false,"properties":{"action_proposal_id":{"anyOf":[{"format":"uuid","type":"string"},{"type":"null"}],"default":null,"description":"Optional. Hivekind fills this from the MCP consent grant.","title":"Action Proposal Id"},"contact_id":{"description":"Exact contact UUID returned by a Hivekind search, list, get, preview, or resource call.","format":"uuid","title":"Contact Id","type":"string"},"updates":{"$ref":"#/$defs/ContactFieldUpdatesV1","description":"Fields to set. Leave a field out to keep its value."},"clear_fields":{"default":[],"description":"Fields to set back to empty. Leaving a field out of updates keeps it; only this clears it.","items":{"enum":["title","email","phone","linkedin_url"],"type":"string"},"maxItems":4,"title":"Clear Fields","type":"array"}},"required":["contact_id"],"title":"McpMcpContactsUpdateInputV2","type":"object"},"output_schema":{"additionalProperties":false,"properties":{"contact_id":{"maxLength":64,"minLength":1,"title":"Contact Id","type":"string"},"account_id":{"anyOf":[{"maxLength":64,"type":"string"},{"type":"null"}],"default":null,"title":"Account Id"},"name":{"anyOf":[{"maxLength":255,"type":"string"},{"type":"null"}],"default":null,"title":"Name"},"changed_fields":{"default":[],"items":{"type":"string"},"maxItems":16,"title":"Changed Fields","type":"array"},"web_url":{"anyOf":[{"maxLength":2048,"type":"string"},{"type":"null"}],"default":null,"description":"Browser link to this contact in the Hivekind app. Use it verbatim whenever you link the record for a person, including inside note bodies; never build a link by hand or use a hivekind:// URI, which is an MCP resource handle, not a page. Null when the server has no app URL configured.","title":"Web Url"}},"required":["contact_id"],"title":"ContactsUpdateResultV2","type":"object"},"example":{"tool":"domain.data_quality.v2","arguments":{"params":{"action":"invoke","operation":"contacts.update.v2","arguments":{"contact_id":"00000000-0000-4000-8000-000000000001","updates":{"first_name":"Example"}},"operation_id":"00000000-0000-4000-8000-000000000003"}},"notice":"Fictional fixture IDs and example text. Resolve real IDs, use returned preview tokens and approve exact side effects before execution. Input validation is not proof of provider readiness or a successful business outcome."},"workflow_steps":[],"approval_policy":"exact_scope_single_action","idempotency_policy":"approved_action_outbox","gateway_credit_code":null,"identity":"Workspace, actor and consent come from OAuth; do not supply identity fields.","retry":"Keep the same operation and operation_id when retrying identical work. Reconcile an uncertain result before new work; never replay an old V1 write under a new V2 ID.","completion":"Check status, execution_state, error_code, output and evidence/resource references. Queued work is not complete: poll jobs.status.get.v2 in domain.workspace.v2. For read-back verification require read_back_verified=true where returned; reconcile failures without creating another object.","result_envelope":{"status":"completed | partial | cancelled | failed","execution_state":"terminal | queued | reconciliation_required","output":"Completed results validate against output_schema; partial/reconciliation results can contain incomplete evidence and must not be treated as completion.","billing":"gateway_credits_spent, downstream_settlement, job_id; pending downstream settlement is not a final cost","references":"run_id, invocation_id, resource_refs, evidence_refs"},"documentation":"https://www.hivekind.ai/docs/mcp/data-quality#contacts-update-v2"},{"operation":"drafts.approve.v2","domain":"campaign","tool":"domain.campaign.v2","title":"Approve a Hiveloop draft","purpose":"Mark a draft approved. Still does not send.","side_effects":"Approves a draft. Does not send.","permission":"execute","required_scopes":["actions:execute"],"requires_operation_id":true,"billing":"No gateway rate is configured. Check the Core workflow preview/quote for downstream charges and final settlement.","required_resolved_fields":[],"next_call":{"tool":"domain.campaign.v2","arguments":{"params":{"action":"describe","operation":"drafts.approve.v2"}}},"catalog_revision":"07a373e389289e05","when_not_to_use":"Sending is hiveloops.start.v2 after sendability is ready.","description":"Use when: Mark a draft approved. Still does not send. Returns/does: Approves a draft. Does not send. Do not use when: Sending is hiveloops.start.v2 after sendability is ready. Identity comes from OAuth. Resolve exact IDs; use typed enums and bounded limits. Billing: Gateway and downstream billing depend on the operation; check its preview/quote and returned billing.","input_schema":{"additionalProperties":false,"properties":{"action_proposal_id":{"anyOf":[{"format":"uuid","type":"string"},{"type":"null"}],"default":null,"description":"Optional. Hivekind fills this from the MCP consent grant.","title":"Action Proposal Id"},"loop_id":{"description":"Exact loop UUID returned by a Hivekind search, list, get, preview, or resource call.","format":"uuid","title":"Loop Id","type":"string"},"draft_id":{"description":"Exact draft UUID returned by a Hivekind search, list, get, preview, or resource call.","format":"uuid","title":"Draft Id","type":"string"}},"required":["loop_id","draft_id"],"title":"McpMcpPublicDraftsApproveInputV2","type":"object"},"output_schema":{"additionalProperties":false,"description":"V2 result for drafts.approve.v2; preserves the established validators.","properties":{"draft_id":{"format":"uuid","title":"Draft Id","type":"string"},"loop_id":{"format":"uuid","title":"Loop Id","type":"string"},"contact_id":{"format":"uuid","title":"Contact Id","type":"string"},"node_id":{"maxLength":128,"minLength":1,"title":"Node Id","type":"string"},"channel":{"maxLength":64,"minLength":1,"title":"Channel","type":"string"},"subject":{"anyOf":[{"maxLength":1000,"type":"string"},{"type":"null"}],"default":null,"title":"Subject"},"content":{"default":"","maxLength":8000,"title":"Content","type":"string"},"status":{"maxLength":64,"minLength":1,"title":"Status","type":"string"}},"required":["draft_id","loop_id","contact_id","node_id","channel","status"],"title":"PublicDraftsApproveResultV2","type":"object"},"example":{"tool":"domain.campaign.v2","arguments":{"params":{"action":"invoke","operation":"drafts.approve.v2","arguments":{"draft_id":"00000000-0000-4000-8000-000000000001","loop_id":"00000000-0000-4000-8000-000000000001"},"operation_id":"00000000-0000-4000-8000-000000000003"}},"notice":"Fictional fixture IDs and example text. Resolve real IDs, use returned preview tokens and approve exact side effects before execution. Input validation is not proof of provider readiness or a successful business outcome."},"workflow_steps":[],"approval_policy":"exact_scope_single_action","idempotency_policy":"approved_action_outbox","gateway_credit_code":null,"identity":"Workspace, actor and consent come from OAuth; do not supply identity fields.","retry":"Keep the same operation and operation_id when retrying identical work. Reconcile an uncertain result before new work; never replay an old V1 write under a new V2 ID.","completion":"Check status, execution_state, error_code, output and evidence/resource references. Queued work is not complete: poll jobs.status.get.v2 in domain.workspace.v2. For read-back verification require read_back_verified=true where returned; reconcile failures without creating another object.","result_envelope":{"status":"completed | partial | cancelled | failed","execution_state":"terminal | queued | reconciliation_required","output":"Completed results validate against output_schema; partial/reconciliation results can contain incomplete evidence and must not be treated as completion.","billing":"gateway_credits_spent, downstream_settlement, job_id; pending downstream settlement is not a final cost","references":"run_id, invocation_id, resource_refs, evidence_refs"},"documentation":"https://www.hivekind.ai/docs/mcp/campaign#drafts-approve-v2"},{"operation":"drafts.generate.v2","domain":"campaign","tool":"domain.campaign.v2","title":"Generate Hiveloop drafts","purpose":"Queue draft generation for a Hiveloop. Does not send.","side_effects":"Queues draft generation. Does not send.","permission":"execute","required_scopes":["actions:execute"],"requires_operation_id":true,"billing":"No gateway rate is configured. Check the Core workflow preview/quote for downstream charges and final settlement.","required_resolved_fields":[],"next_call":{"tool":"domain.campaign.v2","arguments":{"params":{"action":"describe","operation":"drafts.generate.v2"}}},"catalog_revision":"07a373e389289e05","when_not_to_use":"campaigns.launch.v2 already queues drafts. Use this only to regenerate.","description":"Use when: Queue draft generation for a Hiveloop. Does not send. Returns/does: Queues draft generation. Does not send. Do not use when: campaigns.launch.v2 already queues drafts. Use this only to regenerate. Identity comes from OAuth. Resolve exact IDs; use typed enums and bounded limits. Billing: Gateway and downstream billing depend on the operation; check its preview/quote and returned billing.","input_schema":{"additionalProperties":false,"properties":{"action_proposal_id":{"anyOf":[{"format":"uuid","type":"string"},{"type":"null"}],"default":null,"description":"Optional. Hivekind fills this from the MCP consent grant.","title":"Action Proposal Id"},"loop_id":{"description":"Exact loop UUID returned by a Hivekind search, list, get, preview, or resource call.","format":"uuid","title":"Loop Id","type":"string"},"node_id":{"anyOf":[{"maxLength":128,"type":"string"},{"type":"null"}],"default":null,"description":"Exact node UUID returned by a Hivekind search, list, get, preview, or resource call.","title":"Node Id"}},"required":["loop_id"],"title":"McpMcpPublicDraftsGenerateInputV2","type":"object"},"output_schema":{"additionalProperties":false,"description":"V2 result for drafts.generate.v2; preserves the established validators.","properties":{"loop_id":{"format":"uuid","title":"Loop Id","type":"string"},"status":{"maxLength":64,"minLength":1,"title":"Status","type":"string"},"started":{"title":"Started","type":"boolean"}},"required":["loop_id","status","started"],"title":"PublicDraftsGenerateResultV2","type":"object"},"example":{"tool":"domain.campaign.v2","arguments":{"params":{"action":"invoke","operation":"drafts.generate.v2","arguments":{"loop_id":"00000000-0000-4000-8000-000000000001"},"operation_id":"00000000-0000-4000-8000-000000000003"}},"notice":"Fictional fixture IDs and example text. Resolve real IDs, use returned preview tokens and approve exact side effects before execution. Input validation is not proof of provider readiness or a successful business outcome."},"workflow_steps":[],"approval_policy":"exact_scope_single_action","idempotency_policy":"approved_action_outbox","gateway_credit_code":null,"identity":"Workspace, actor and consent come from OAuth; do not supply identity fields.","retry":"Keep the same operation and operation_id when retrying identical work. Reconcile an uncertain result before new work; never replay an old V1 write under a new V2 ID.","completion":"Check status, execution_state, error_code, output and evidence/resource references. Queued work is not complete: poll jobs.status.get.v2 in domain.workspace.v2. For read-back verification require read_back_verified=true where returned; reconcile failures without creating another object.","result_envelope":{"status":"completed | partial | cancelled | failed","execution_state":"terminal | queued | reconciliation_required","output":"Completed results validate against output_schema; partial/reconciliation results can contain incomplete evidence and must not be treated as completion.","billing":"gateway_credits_spent, downstream_settlement, job_id; pending downstream settlement is not a final cost","references":"run_id, invocation_id, resource_refs, evidence_refs"},"documentation":"https://www.hivekind.ai/docs/mcp/campaign#drafts-generate-v2"},{"operation":"drafts.get.v2","domain":"campaign","tool":"domain.campaign.v2","title":"Get a Hiveloop draft","purpose":"Load one draft's copy.","side_effects":"Reads current workspace state.","permission":"read","required_scopes":["runs:read"],"requires_operation_id":false,"billing":"No gateway credit charge; reads saved workspace data without starting paid provider work.","required_resolved_fields":[],"next_call":{"tool":"domain.campaign.v2","arguments":{"params":{"action":"describe","operation":"drafts.get.v2"}}},"catalog_revision":"07a373e389289e05","when_not_to_use":"Do not use this to list drafts.","description":"Use when: Load one draft's copy. Returns/does: Reads the current authorized workspace state. Do not use when: Do not use this to list drafts. Identity comes from OAuth. Resolve exact IDs; use typed enums and bounded limits. Billing: Gateway and downstream billing depend on the operation; check its preview/quote and returned billing.","input_schema":{"additionalProperties":false,"properties":{"loop_id":{"description":"Exact loop UUID returned by a Hivekind search, list, get, preview, or resource call.","format":"uuid","title":"Loop Id","type":"string"},"draft_id":{"description":"Exact draft UUID returned by a Hivekind search, list, get, preview, or resource call.","format":"uuid","title":"Draft Id","type":"string"}},"required":["loop_id","draft_id"],"title":"McpPublicDraftsGetInputV2","type":"object"},"output_schema":{"additionalProperties":false,"description":"V2 result for drafts.get.v2; preserves the established validators.","properties":{"draft_id":{"format":"uuid","title":"Draft Id","type":"string"},"loop_id":{"format":"uuid","title":"Loop Id","type":"string"},"contact_id":{"format":"uuid","title":"Contact Id","type":"string"},"node_id":{"maxLength":128,"minLength":1,"title":"Node Id","type":"string"},"channel":{"maxLength":64,"minLength":1,"title":"Channel","type":"string"},"subject":{"anyOf":[{"maxLength":1000,"type":"string"},{"type":"null"}],"default":null,"title":"Subject"},"content":{"default":"","maxLength":8000,"title":"Content","type":"string"},"status":{"maxLength":64,"minLength":1,"title":"Status","type":"string"}},"required":["draft_id","loop_id","contact_id","node_id","channel","status"],"title":"PublicDraftsGetResultV2","type":"object"},"example":{"tool":"domain.campaign.v2","arguments":{"params":{"action":"invoke","operation":"drafts.get.v2","arguments":{"draft_id":"00000000-0000-4000-8000-000000000001","loop_id":"00000000-0000-4000-8000-000000000001"},"operation_id":"00000000-0000-4000-8000-000000000003"}},"notice":"Fictional fixture IDs and example text. Resolve real IDs, use returned preview tokens and approve exact side effects before execution. Input validation is not proof of provider readiness or a successful business outcome."},"workflow_steps":[],"approval_policy":null,"idempotency_policy":"read_only","gateway_credit_code":null,"identity":"Workspace, actor and consent come from OAuth; do not supply identity fields.","retry":"Keep the same operation and operation_id when retrying identical work. Reconcile an uncertain result before new work; never replay an old V1 write under a new V2 ID.","completion":"Check status, execution_state, error_code, output and evidence/resource references. Queued work is not complete: poll jobs.status.get.v2 in domain.workspace.v2. For read-back verification require read_back_verified=true where returned; reconcile failures without creating another object.","result_envelope":{"status":"completed | partial | cancelled | failed","execution_state":"terminal | queued | reconciliation_required","output":"Completed results validate against output_schema; partial/reconciliation results can contain incomplete evidence and must not be treated as completion.","billing":"gateway_credits_spent, downstream_settlement, job_id; pending downstream settlement is not a final cost","references":"run_id, invocation_id, resource_refs, evidence_refs"},"documentation":"https://www.hivekind.ai/docs/mcp/campaign#drafts-get-v2"},{"operation":"drafts.list.v2","domain":"campaign","tool":"domain.campaign.v2","title":"List Hiveloop drafts","purpose":"List message drafts on a Hiveloop.","side_effects":"Reads current workspace state.","permission":"read","required_scopes":["runs:read"],"requires_operation_id":false,"billing":"No gateway credit charge; reads saved workspace data without starting paid provider work.","required_resolved_fields":[],"next_call":{"tool":"domain.campaign.v2","arguments":{"params":{"action":"describe","operation":"drafts.list.v2"}}},"catalog_revision":"07a373e389289e05","when_not_to_use":"Do not use this to generate drafts — that is drafts.generate.v2.","description":"Use when: List message drafts on a Hiveloop. Returns/does: Reads the current authorized workspace state. Do not use when: Do not use this to generate drafts — that is drafts.generate.v2. Identity comes from OAuth. Resolve exact IDs; use typed enums and bounded limits. Billing: Gateway and downstream billing depend on the operation; check its preview/quote and returned billing.","input_schema":{"additionalProperties":false,"properties":{"loop_id":{"description":"Exact loop UUID returned by a Hivekind search, list, get, preview, or resource call.","format":"uuid","title":"Loop Id","type":"string"},"contact_id":{"anyOf":[{"format":"uuid","type":"string"},{"type":"null"}],"default":null,"description":"Exact contact UUID returned by a Hivekind search, list, get, preview, or resource call.","title":"Contact Id"},"node_id":{"anyOf":[{"maxLength":128,"type":"string"},{"type":"null"}],"default":null,"description":"Exact node UUID returned by a Hivekind search, list, get, preview, or resource call.","title":"Node Id"},"limit":{"default":30,"description":"Maximum number of records to return in this page.","maximum":100,"minimum":1,"title":"Limit","type":"integer"}},"required":["loop_id"],"title":"McpPublicDraftsListInputV2","type":"object"},"output_schema":{"$defs":{"DraftSummaryV1":{"additionalProperties":false,"properties":{"draft_id":{"format":"uuid","title":"Draft Id","type":"string"},"loop_id":{"format":"uuid","title":"Loop Id","type":"string"},"contact_id":{"format":"uuid","title":"Contact Id","type":"string"},"node_id":{"maxLength":128,"minLength":1,"title":"Node Id","type":"string"},"channel":{"maxLength":64,"minLength":1,"title":"Channel","type":"string"},"subject":{"anyOf":[{"maxLength":1000,"type":"string"},{"type":"null"}],"default":null,"title":"Subject"},"status":{"maxLength":64,"minLength":1,"title":"Status","type":"string"}},"required":["draft_id","loop_id","contact_id","node_id","channel","status"],"title":"DraftSummaryV1","type":"object"}},"additionalProperties":false,"description":"V2 result for drafts.list.v2; preserves the established validators.","properties":{"drafts":{"default":[],"items":{"$ref":"#/$defs/DraftSummaryV1"},"maxItems":100,"title":"Drafts","type":"array"}},"title":"PublicDraftsListResultV2","type":"object"},"example":{"tool":"domain.campaign.v2","arguments":{"params":{"action":"invoke","operation":"drafts.list.v2","arguments":{"loop_id":"00000000-0000-4000-8000-000000000001"},"operation_id":"00000000-0000-4000-8000-000000000003"}},"notice":"Fictional fixture IDs and example text. Resolve real IDs, use returned preview tokens and approve exact side effects before execution. Input validation is not proof of provider readiness or a successful business outcome."},"workflow_steps":[],"approval_policy":null,"idempotency_policy":"read_only","gateway_credit_code":null,"identity":"Workspace, actor and consent come from OAuth; do not supply identity fields.","retry":"Keep the same operation and operation_id when retrying identical work. Reconcile an uncertain result before new work; never replay an old V1 write under a new V2 ID.","completion":"Check status, execution_state, error_code, output and evidence/resource references. Queued work is not complete: poll jobs.status.get.v2 in domain.workspace.v2. For read-back verification require read_back_verified=true where returned; reconcile failures without creating another object.","result_envelope":{"status":"completed | partial | cancelled | failed","execution_state":"terminal | queued | reconciliation_required","output":"Completed results validate against output_schema; partial/reconciliation results can contain incomplete evidence and must not be treated as completion.","billing":"gateway_credits_spent, downstream_settlement, job_id; pending downstream settlement is not a final cost","references":"run_id, invocation_id, resource_refs, evidence_refs"},"documentation":"https://www.hivekind.ai/docs/mcp/campaign#drafts-list-v2"},{"operation":"drafts.update.v2","domain":"campaign","tool":"domain.campaign.v2","title":"Update a Hiveloop draft","purpose":"Edit draft subject/body.","side_effects":"Updates draft copy. Does not send.","permission":"execute","required_scopes":["actions:execute"],"requires_operation_id":true,"billing":"No gateway rate is configured. Check the Core workflow preview/quote for downstream charges and final settlement.","required_resolved_fields":[],"next_call":{"tool":"domain.campaign.v2","arguments":{"params":{"action":"describe","operation":"drafts.update.v2"}}},"catalog_revision":"07a373e389289e05","when_not_to_use":"Do not use this to approve or send.","description":"Use when: Edit draft subject/body. Returns/does: Updates draft copy. Does not send. Do not use when: Do not use this to approve or send. Identity comes from OAuth. Resolve exact IDs; use typed enums and bounded limits. Billing: Gateway and downstream billing depend on the operation; check its preview/quote and returned billing.","input_schema":{"additionalProperties":false,"properties":{"action_proposal_id":{"anyOf":[{"format":"uuid","type":"string"},{"type":"null"}],"default":null,"description":"Optional. Hivekind fills this from the MCP consent grant.","title":"Action Proposal Id"},"loop_id":{"description":"Exact loop UUID returned by a Hivekind search, list, get, preview, or resource call.","format":"uuid","title":"Loop Id","type":"string"},"draft_id":{"description":"Exact draft UUID returned by a Hivekind search, list, get, preview, or resource call.","format":"uuid","title":"Draft Id","type":"string"},"subject":{"anyOf":[{"maxLength":1000,"type":"string"},{"type":"null"}],"default":null,"description":"Subject used by the public drafts update input v2 operation.","title":"Subject"},"content":{"anyOf":[{"maxLength":8000,"type":"string"},{"type":"null"}],"default":null,"description":"Content used by the public drafts update input v2 operation.","title":"Content"}},"required":["loop_id","draft_id"],"title":"McpMcpPublicDraftsUpdateInputV2","type":"object"},"output_schema":{"additionalProperties":false,"description":"V2 result for drafts.update.v2; preserves the established validators.","properties":{"draft_id":{"format":"uuid","title":"Draft Id","type":"string"},"loop_id":{"format":"uuid","title":"Loop Id","type":"string"},"contact_id":{"format":"uuid","title":"Contact Id","type":"string"},"node_id":{"maxLength":128,"minLength":1,"title":"Node Id","type":"string"},"channel":{"maxLength":64,"minLength":1,"title":"Channel","type":"string"},"subject":{"anyOf":[{"maxLength":1000,"type":"string"},{"type":"null"}],"default":null,"title":"Subject"},"content":{"default":"","maxLength":8000,"title":"Content","type":"string"},"status":{"maxLength":64,"minLength":1,"title":"Status","type":"string"}},"required":["draft_id","loop_id","contact_id","node_id","channel","status"],"title":"PublicDraftsUpdateResultV2","type":"object"},"example":{"tool":"domain.campaign.v2","arguments":{"params":{"action":"invoke","operation":"drafts.update.v2","arguments":{"draft_id":"00000000-0000-4000-8000-000000000001","loop_id":"00000000-0000-4000-8000-000000000001"},"operation_id":"00000000-0000-4000-8000-000000000003"}},"notice":"Fictional fixture IDs and example text. Resolve real IDs, use returned preview tokens and approve exact side effects before execution. Input validation is not proof of provider readiness or a successful business outcome."},"workflow_steps":[],"approval_policy":"exact_scope_single_action","idempotency_policy":"approved_action_outbox","gateway_credit_code":null,"identity":"Workspace, actor and consent come from OAuth; do not supply identity fields.","retry":"Keep the same operation and operation_id when retrying identical work. Reconcile an uncertain result before new work; never replay an old V1 write under a new V2 ID.","completion":"Check status, execution_state, error_code, output and evidence/resource references. Queued work is not complete: poll jobs.status.get.v2 in domain.workspace.v2. For read-back verification require read_back_verified=true where returned; reconcile failures without creating another object.","result_envelope":{"status":"completed | partial | cancelled | failed","execution_state":"terminal | queued | reconciliation_required","output":"Completed results validate against output_schema; partial/reconciliation results can contain incomplete evidence and must not be treated as completion.","billing":"gateway_credits_spent, downstream_settlement, job_id; pending downstream settlement is not a final cost","references":"run_id, invocation_id, resource_refs, evidence_refs"},"documentation":"https://www.hivekind.ai/docs/mcp/campaign#drafts-update-v2"},{"operation":"events.assignments.confirm.v2","domain":"events","tool":"domain.events.v2","title":"Confirm event roster assignments","purpose":"Use the existing Core workflow: Confirm event roster assignments. Confirms existing suggestions and fills ownership for unowned accounts. Read the exact event preview first.","side_effects":"Confirms existing suggestions and fills ownership for unowned accounts. Read the exact event preview first.","permission":"execute","required_scopes":["actions:execute"],"requires_operation_id":true,"billing":"No gateway rate is configured. Check the Core workflow preview/quote for downstream charges and final settlement.","required_resolved_fields":[],"next_call":{"tool":"domain.events.v2","arguments":{"params":{"action":"describe","operation":"events.assignments.confirm.v2"}}},"catalog_revision":"07a373e389289e05","when_not_to_use":"Do not infer unsupported history, attribution, or commitments from this response.","description":"Use when: Use the existing Core workflow: Confirm event roster assignments. Confirms existing suggestions and fills ownership for unowned accounts. Read the exact event preview first. Returns/does: Confirms existing suggestions and fills ownership for unowned accounts. Read the exact event preview first. Do not use when: Do not infer unsupported history, attribution, or commitments from this response. Identity comes from OAuth. Resolve exact IDs; use typed enums and bounded limits. Billing: Gateway and downstream billing depend on the operation; check its preview/quote and returned billing.","input_schema":{"additionalProperties":false,"properties":{"event_id":{"description":"Exact existing resource UUID; resolve it before invoking.","format":"uuid","title":"Event Id","type":"string"},"action_proposal_id":{"anyOf":[{"format":"uuid","type":"string"},{"type":"null"}],"default":null,"description":"Optional. Hivekind fills this from the MCP consent grant.","title":"Action Proposal Id"}},"required":["event_id"],"title":"McpMcpPublicEventsAssignmentsConfirmInputV2","type":"object"},"output_schema":{"additionalProperties":false,"description":"V2 result for events.assignments.confirm.v2; preserves the established validators.","properties":{"title":{"title":"Title","type":"string"},"data":{"additionalProperties":true,"title":"Data","type":"object"},"limitations":{"title":"Limitations","type":"string"},"applied_parameters":{"additionalProperties":true,"title":"Applied Parameters","type":"object"},"source_path":{"title":"Source Path","type":"string"},"job_id":{"anyOf":[{"type":"string"},{"type":"null"}],"default":null,"description":"Core job identifier when an operation enqueues work; poll jobs.status.get.v2 and read the resulting resource.","title":"Job Id"},"queued":{"default":false,"title":"Queued","type":"boolean"},"outcome_status":{"default":"partial","enum":["completed","partial","needs_input","awaiting_approval"],"title":"Outcome Status","type":"string"},"read_back_verified":{"default":false,"title":"Read Back Verified","type":"boolean"},"verification_message":{"anyOf":[{"type":"string"},{"type":"null"}],"default":null,"title":"Verification Message"}},"required":["title","data","limitations","source_path"],"title":"PublicEventsAssignmentsConfirmResultV2","type":"object"},"example":{"tool":"domain.events.v2","arguments":{"params":{"action":"invoke","operation":"events.assignments.confirm.v2","arguments":{"event_id":"00000000-0000-4000-8000-000000000001"},"operation_id":"00000000-0000-4000-8000-000000000003"}},"notice":"Fictional fixture IDs and example text. Resolve real IDs, use returned preview tokens and approve exact side effects before execution. Input validation is not proof of provider readiness or a successful business outcome."},"workflow_steps":[],"approval_policy":"exact_scope_single_action","idempotency_policy":"caller_operation","gateway_credit_code":null,"identity":"Workspace, actor and consent come from OAuth; do not supply identity fields.","retry":"Keep the same operation and operation_id when retrying identical work. Reconcile an uncertain result before new work; never replay an old V1 write under a new V2 ID.","completion":"Check status, execution_state, error_code, output and evidence/resource references. Queued work is not complete: poll jobs.status.get.v2 in domain.workspace.v2. For read-back verification require read_back_verified=true where returned; reconcile failures without creating another object.","result_envelope":{"status":"completed | partial | cancelled | failed","execution_state":"terminal | queued | reconciliation_required","output":"Completed results validate against output_schema; partial/reconciliation results can contain incomplete evidence and must not be treated as completion.","billing":"gateway_credits_spent, downstream_settlement, job_id; pending downstream settlement is not a final cost","references":"run_id, invocation_id, resource_refs, evidence_refs"},"documentation":"https://www.hivekind.ai/docs/mcp/events#events-assignments-confirm-v2"},{"operation":"events.assignments.get.v2","domain":"events","tool":"domain.events.v2","title":"Event roster assignments","purpose":"Use the existing Core workflow: Event roster assignments. Event-roster scope only; not arbitrary account/territory optimization.","side_effects":"Read only.","permission":"read","required_scopes":["accounts:read"],"requires_operation_id":false,"billing":"No gateway credit charge; reads saved workspace data without starting paid provider work.","required_resolved_fields":[],"next_call":{"tool":"domain.events.v2","arguments":{"params":{"action":"describe","operation":"events.assignments.get.v2"}}},"catalog_revision":"07a373e389289e05","when_not_to_use":"Do not infer unsupported history, attribution, or commitments from this response.","description":"Use when: Use the existing Core workflow: Event roster assignments. Event-roster scope only; not arbitrary account/territory optimization. Returns/does: Read only. Do not use when: Do not infer unsupported history, attribution, or commitments from this response. Identity comes from OAuth. Resolve exact IDs; use typed enums and bounded limits. Billing: Gateway and downstream billing depend on the operation; check its preview/quote and returned billing.","input_schema":{"additionalProperties":false,"properties":{"event_id":{"description":"Exact existing resource UUID; resolve it before invoking.","format":"uuid","title":"Event Id","type":"string"}},"required":["event_id"],"title":"McpPublicEventsAssignmentsGetInputV2","type":"object"},"output_schema":{"additionalProperties":false,"description":"V2 result for events.assignments.get.v2; preserves the established validators.","properties":{"title":{"title":"Title","type":"string"},"data":{"additionalProperties":true,"title":"Data","type":"object"},"limitations":{"title":"Limitations","type":"string"},"applied_parameters":{"additionalProperties":true,"title":"Applied Parameters","type":"object"},"source_path":{"title":"Source Path","type":"string"},"job_id":{"anyOf":[{"type":"string"},{"type":"null"}],"default":null,"description":"Core job identifier when an operation enqueues work; poll jobs.status.get.v2 and read the resulting resource.","title":"Job Id"},"queued":{"default":false,"title":"Queued","type":"boolean"},"outcome_status":{"default":"partial","enum":["completed","partial","needs_input","awaiting_approval"],"title":"Outcome Status","type":"string"},"read_back_verified":{"default":false,"title":"Read Back Verified","type":"boolean"},"verification_message":{"anyOf":[{"type":"string"},{"type":"null"}],"default":null,"title":"Verification Message"}},"required":["title","data","limitations","source_path"],"title":"PublicEventsAssignmentsGetResultV2","type":"object"},"example":{"tool":"domain.events.v2","arguments":{"params":{"action":"invoke","operation":"events.assignments.get.v2","arguments":{"event_id":"00000000-0000-4000-8000-000000000001"},"operation_id":"00000000-0000-4000-8000-000000000003"}},"notice":"Fictional fixture IDs and example text. Resolve real IDs, use returned preview tokens and approve exact side effects before execution. Input validation is not proof of provider readiness or a successful business outcome."},"workflow_steps":[],"approval_policy":null,"idempotency_policy":"caller_operation","gateway_credit_code":null,"identity":"Workspace, actor and consent come from OAuth; do not supply identity fields.","retry":"Keep the same operation and operation_id when retrying identical work. Reconcile an uncertain result before new work; never replay an old V1 write under a new V2 ID.","completion":"Check status, execution_state, error_code, output and evidence/resource references. Queued work is not complete: poll jobs.status.get.v2 in domain.workspace.v2. For read-back verification require read_back_verified=true where returned; reconcile failures without creating another object.","result_envelope":{"status":"completed | partial | cancelled | failed","execution_state":"terminal | queued | reconciliation_required","output":"Completed results validate against output_schema; partial/reconciliation results can contain incomplete evidence and must not be treated as completion.","billing":"gateway_credits_spent, downstream_settlement, job_id; pending downstream settlement is not a final cost","references":"run_id, invocation_id, resource_refs, evidence_refs"},"documentation":"https://www.hivekind.ai/docs/mcp/events#events-assignments-get-v2"},{"operation":"events.assignments.preview.v2","domain":"events","tool":"domain.events.v2","title":"Suggest event roster assignments","purpose":"Use the existing Core workflow: Suggest event roster assignments. Persists suggested event assignments. This preview is a write; it does not confirm ownership.","side_effects":"Persists suggested event assignments. This preview is a write; it does not confirm ownership.","permission":"execute","required_scopes":["actions:execute"],"requires_operation_id":true,"billing":"No gateway rate is configured. Check the Core workflow preview/quote for downstream charges and final settlement.","required_resolved_fields":[],"next_call":{"tool":"domain.events.v2","arguments":{"params":{"action":"describe","operation":"events.assignments.preview.v2"}}},"catalog_revision":"07a373e389289e05","when_not_to_use":"Do not infer unsupported history, attribution, or commitments from this response.","description":"Use when: Use the existing Core workflow: Suggest event roster assignments. Persists suggested event assignments. This preview is a write; it does not confirm ownership. Returns/does: Persists suggested event assignments. This preview is a write; it does not confirm ownership. Do not use when: Do not infer unsupported history, attribution, or commitments from this response. Identity comes from OAuth. Resolve exact IDs; use typed enums and bounded limits. Billing: Gateway and downstream billing depend on the operation; check its preview/quote and returned billing.","input_schema":{"additionalProperties":false,"properties":{"event_id":{"description":"Exact existing resource UUID; resolve it before invoking.","format":"uuid","title":"Event Id","type":"string"},"strategy":{"default":"territory","description":"Strategy used by the public events assignments preview input v2 operation.","enum":["territory","round_robin","manual"],"title":"Strategy","type":"string"},"tiers":{"anyOf":[{"items":{"type":"string"},"maxItems":8,"type":"array"},{"type":"null"}],"default":null,"description":"Tiers used by the public events assignments preview input v2 operation.","title":"Tiers"},"ae_user_ids":{"anyOf":[{"items":{"format":"uuid","type":"string"},"maxItems":100,"type":"array"},{"type":"null"}],"default":null,"description":"Exact ae user UUIDs returned by a Hivekind search, list, get, preview, or resource call.","title":"Ae User Ids"},"action_proposal_id":{"anyOf":[{"format":"uuid","type":"string"},{"type":"null"}],"default":null,"description":"Optional. Hivekind fills this from the MCP consent grant.","title":"Action Proposal Id"}},"required":["event_id"],"title":"McpMcpPublicEventsAssignmentsPreviewInputV2","type":"object"},"output_schema":{"additionalProperties":false,"description":"V2 result for events.assignments.preview.v2; preserves the established validators.","properties":{"title":{"title":"Title","type":"string"},"data":{"additionalProperties":true,"title":"Data","type":"object"},"limitations":{"title":"Limitations","type":"string"},"applied_parameters":{"additionalProperties":true,"title":"Applied Parameters","type":"object"},"source_path":{"title":"Source Path","type":"string"},"job_id":{"anyOf":[{"type":"string"},{"type":"null"}],"default":null,"description":"Core job identifier when an operation enqueues work; poll jobs.status.get.v2 and read the resulting resource.","title":"Job Id"},"queued":{"default":false,"title":"Queued","type":"boolean"},"outcome_status":{"default":"partial","enum":["completed","partial","needs_input","awaiting_approval"],"title":"Outcome Status","type":"string"},"read_back_verified":{"default":false,"title":"Read Back Verified","type":"boolean"},"verification_message":{"anyOf":[{"type":"string"},{"type":"null"}],"default":null,"title":"Verification Message"}},"required":["title","data","limitations","source_path"],"title":"PublicEventsAssignmentsPreviewResultV2","type":"object"},"example":{"tool":"domain.events.v2","arguments":{"params":{"action":"invoke","operation":"events.assignments.preview.v2","arguments":{"event_id":"00000000-0000-4000-8000-000000000001"},"operation_id":"00000000-0000-4000-8000-000000000003"}},"notice":"Fictional fixture IDs and example text. Resolve real IDs, use returned preview tokens and approve exact side effects before execution. Input validation is not proof of provider readiness or a successful business outcome."},"workflow_steps":[],"approval_policy":"exact_scope_single_action","idempotency_policy":"caller_operation","gateway_credit_code":null,"identity":"Workspace, actor and consent come from OAuth; do not supply identity fields.","retry":"Keep the same operation and operation_id when retrying identical work. Reconcile an uncertain result before new work; never replay an old V1 write under a new V2 ID.","completion":"Check status, execution_state, error_code, output and evidence/resource references. Queued work is not complete: poll jobs.status.get.v2 in domain.workspace.v2. For read-back verification require read_back_verified=true where returned; reconcile failures without creating another object.","result_envelope":{"status":"completed | partial | cancelled | failed","execution_state":"terminal | queued | reconciliation_required","output":"Completed results validate against output_schema; partial/reconciliation results can contain incomplete evidence and must not be treated as completion.","billing":"gateway_credits_spent, downstream_settlement, job_id; pending downstream settlement is not a final cost","references":"run_id, invocation_id, resource_refs, evidence_refs"},"documentation":"https://www.hivekind.ai/docs/mcp/events#events-assignments-preview-v2"},{"operation":"events.attendance.list.v2","domain":"events","tool":"domain.events.v2","title":"Where an account or contact was last seen","purpose":"Ask an account or a contact which events it has appeared at and when, with the RSVP and check-in state the organizer exported.","side_effects":"Reads current workspace state.","permission":"read","required_scopes":["accounts:read"],"requires_operation_id":false,"billing":"No gateway credit charge; reads saved workspace data without starting paid provider work.","required_resolved_fields":[],"next_call":{"tool":"domain.events.v2","arguments":{"params":{"action":"describe","operation":"events.attendance.list.v2"}}},"catalog_revision":"07a373e389289e05","when_not_to_use":"Do not use this to read one event's guest list — that is events.roster.get.v2.","description":"Use when: Ask an account or a contact which events it has appeared at and when, with the RSVP and check-in state the organizer exported. Returns/does: Reads the current authorized workspace state. Do not use when: Do not use this to read one event's guest list — that is events.roster.get.v2. Identity comes from OAuth. Resolve exact IDs; use typed enums and bounded limits. Billing: Gateway and downstream billing depend on the operation; check its preview/quote and returned billing.","input_schema":{"additionalProperties":false,"properties":{"account_id":{"anyOf":[{"format":"uuid","type":"string"},{"type":"null"}],"default":null,"description":"Exact account UUID returned by a Hivekind search, list, get, preview, or resource call.","title":"Account Id"},"contact_id":{"anyOf":[{"format":"uuid","type":"string"},{"type":"null"}],"default":null,"description":"Exact contact UUID returned by a Hivekind search, list, get, preview, or resource call.","title":"Contact Id"},"limit":{"default":25,"description":"Maximum number of records to return in this page.","maximum":200,"minimum":1,"title":"Limit","type":"integer"}},"title":"McpPublicEventsAttendanceListInputV2","type":"object"},"output_schema":{"$defs":{"EventAppearanceV1":{"additionalProperties":false,"description":"One sighting on one roster.","properties":{"event_id":{"format":"uuid","title":"Event Id","type":"string"},"event_name":{"maxLength":500,"title":"Event Name","type":"string"},"event_type":{"anyOf":[{"maxLength":64,"type":"string"},{"type":"null"}],"default":null,"title":"Event Type"},"start_date":{"anyOf":[{"format":"date","type":"string"},{"type":"null"}],"default":null,"title":"Start Date"},"location_city":{"anyOf":[{"maxLength":255,"type":"string"},{"type":"null"}],"default":null,"title":"Location City"},"location_country":{"anyOf":[{"maxLength":255,"type":"string"},{"type":"null"}],"default":null,"title":"Location Country"},"venue":{"anyOf":[{"maxLength":255,"type":"string"},{"type":"null"}],"default":null,"title":"Venue"},"url":{"anyOf":[{"maxLength":1000,"type":"string"},{"type":"null"}],"default":null,"title":"Url"},"event_participant_id":{"format":"uuid","title":"Event Participant Id","type":"string"},"role":{"maxLength":32,"title":"Role","type":"string"},"person_name":{"anyOf":[{"maxLength":255,"type":"string"},{"type":"null"}],"default":null,"title":"Person Name"},"person_title":{"anyOf":[{"maxLength":255,"type":"string"},{"type":"null"}],"default":null,"title":"Person Title"},"company_name":{"anyOf":[{"maxLength":255,"type":"string"},{"type":"null"}],"default":null,"title":"Company Name"},"rsvp_status":{"anyOf":[{"maxLength":64,"type":"string"},{"type":"null"}],"default":null,"description":"Approval/RSVP state as the organizer's export spelled it.","title":"Rsvp Status"},"checked_in":{"anyOf":[{"type":"boolean"},{"type":"null"}],"default":null,"description":"True/False when the roster spoke to attendance, null when it had no check-in column at all — null and false are different answers.","title":"Checked In"},"role_attributes":{"additionalProperties":{"$ref":"#/$defs/JsonValue"},"description":"The untouched source bucket: ticket, revenue stage, order.","title":"Role Attributes","type":"object"},"match_method":{"default":"resolution","enum":["resolution","domain","email"],"title":"Match Method","type":"string"},"seen_on":{"anyOf":[{"format":"date","type":"string"},{"type":"null"}],"default":null,"title":"Seen On"}},"required":["event_id","event_name","event_participant_id","role"],"title":"EventAppearanceV1","type":"object"},"JsonValue":{}},"additionalProperties":false,"description":"V2 result for events.attendance.list.v2; preserves the established validators.","properties":{"event_count":{"default":0,"minimum":0,"title":"Event Count","type":"integer"},"appearance_count":{"default":0,"minimum":0,"title":"Appearance Count","type":"integer"},"last_seen_on":{"anyOf":[{"format":"date","type":"string"},{"type":"null"}],"default":null,"title":"Last Seen On"},"last_event_id":{"anyOf":[{"format":"uuid","type":"string"},{"type":"null"}],"default":null,"title":"Last Event Id"},"last_event_name":{"anyOf":[{"maxLength":500,"type":"string"},{"type":"null"}],"default":null,"title":"Last Event Name"},"last_event_location":{"anyOf":[{"maxLength":512,"type":"string"},{"type":"null"}],"default":null,"title":"Last Event Location"},"appearances":{"default":[],"items":{"$ref":"#/$defs/EventAppearanceV1"},"maxItems":200,"title":"Appearances","type":"array"}},"title":"PublicEventsAttendanceListResultV2","type":"object"},"example":{"tool":"domain.events.v2","arguments":{"params":{"action":"invoke","operation":"events.attendance.list.v2","arguments":{"account_id":"00000000-0000-4000-8000-000000000001"},"operation_id":"00000000-0000-4000-8000-000000000003"}},"notice":"Fictional fixture IDs and example text. Resolve real IDs, use returned preview tokens and approve exact side effects before execution. Input validation is not proof of provider readiness or a successful business outcome."},"workflow_steps":[],"approval_policy":null,"idempotency_policy":"read_only","gateway_credit_code":null,"identity":"Workspace, actor and consent come from OAuth; do not supply identity fields.","retry":"Keep the same operation and operation_id when retrying identical work. Reconcile an uncertain result before new work; never replay an old V1 write under a new V2 ID.","completion":"Check status, execution_state, error_code, output and evidence/resource references. Queued work is not complete: poll jobs.status.get.v2 in domain.workspace.v2. For read-back verification require read_back_verified=true where returned; reconcile failures without creating another object.","result_envelope":{"status":"completed | partial | cancelled | failed","execution_state":"terminal | queued | reconciliation_required","output":"Completed results validate against output_schema; partial/reconciliation results can contain incomplete evidence and must not be treated as completion.","billing":"gateway_credits_spent, downstream_settlement, job_id; pending downstream settlement is not a final cost","references":"run_id, invocation_id, resource_refs, evidence_refs"},"documentation":"https://www.hivekind.ai/docs/mcp/events#events-attendance-list-v2"},{"operation":"events.enrich.v2","domain":"events","tool":"domain.events.v2","title":"Enrich event attendees","purpose":"Reveal contact details for named roster rows, usually the A/B tier from events.roster.get.v2.","side_effects":"Calls the enrichment vendor. Billing happens when a contact is promoted, not here.","permission":"execute","required_scopes":["actions:execute"],"requires_operation_id":true,"billing":"No gateway rate is configured. Check the Core workflow preview/quote for downstream charges and final settlement.","required_resolved_fields":[],"next_call":{"tool":"domain.events.v2","arguments":{"params":{"action":"describe","operation":"events.enrich.v2"}}},"catalog_revision":"07a373e389289e05","when_not_to_use":"Do not use this to find an attendee's colleagues; this only enriches the people who were there.","description":"Use when: Reveal contact details for named roster rows, usually the A/B tier from events.roster.get.v2. Returns/does: Calls the enrichment vendor. Billing happens when a contact is promoted, not here. Do not use when: Do not use this to find an attendee's colleagues; this only enriches the people who were there. Identity comes from OAuth. Resolve exact IDs; use typed enums and bounded limits. Billing: Gateway and downstream billing depend on the operation; check its preview/quote and returned billing.","input_schema":{"additionalProperties":false,"properties":{"action_proposal_id":{"anyOf":[{"format":"uuid","type":"string"},{"type":"null"}],"default":null,"description":"Optional. Hivekind fills this from the MCP consent grant.","title":"Action Proposal Id"},"event_id":{"description":"Exact event UUID returned by a Hivekind search, list, get, preview, or resource call.","format":"uuid","title":"Event Id","type":"string"},"participant_ids":{"default":[],"description":"Rows to enrich. Omit to enrich the whole roster — usually you want the A/B tier from events.roster.get.v2 with min_grade='B'.","items":{"format":"uuid","type":"string"},"maxItems":500,"title":"Participant Ids","type":"array"},"force":{"default":false,"description":"Re-enrich rows that already have a result.","title":"Force","type":"boolean"}},"required":["event_id"],"title":"McpMcpPublicEventsEnrichInputV2","type":"object"},"output_schema":{"additionalProperties":false,"description":"V2 result for events.enrich.v2; preserves the established validators.","properties":{"event_id":{"format":"uuid","title":"Event Id","type":"string"},"run_id":{"format":"uuid","title":"Run Id","type":"string"},"status":{"maxLength":32,"minLength":1,"title":"Status","type":"string"},"requested":{"default":0,"minimum":0,"title":"Requested","type":"integer"}},"required":["event_id","run_id","status"],"title":"PublicEventsEnrichResultV2","type":"object"},"example":{"tool":"domain.events.v2","arguments":{"params":{"action":"invoke","operation":"events.enrich.v2","arguments":{"event_id":"00000000-0000-4000-8000-000000000001"},"operation_id":"00000000-0000-4000-8000-000000000003"}},"notice":"Fictional fixture IDs and example text. Resolve real IDs, use returned preview tokens and approve exact side effects before execution. Input validation is not proof of provider readiness or a successful business outcome."},"workflow_steps":[],"approval_policy":"exact_scope_single_action","idempotency_policy":"approved_action_outbox","gateway_credit_code":null,"identity":"Workspace, actor and consent come from OAuth; do not supply identity fields.","retry":"Keep the same operation and operation_id when retrying identical work. Reconcile an uncertain result before new work; never replay an old V1 write under a new V2 ID.","completion":"Check status, execution_state, error_code, output and evidence/resource references. Queued work is not complete: poll jobs.status.get.v2 in domain.workspace.v2. For read-back verification require read_back_verified=true where returned; reconcile failures without creating another object.","result_envelope":{"status":"completed | partial | cancelled | failed","execution_state":"terminal | queued | reconciliation_required","output":"Completed results validate against output_schema; partial/reconciliation results can contain incomplete evidence and must not be treated as completion.","billing":"gateway_credits_spent, downstream_settlement, job_id; pending downstream settlement is not a final cost","references":"run_id, invocation_id, resource_refs, evidence_refs"},"documentation":"https://www.hivekind.ai/docs/mcp/events#events-enrich-v2"},{"operation":"events.enrichment_status.get.v2","domain":"events","tool":"domain.events.v2","title":"Event enrichment status","purpose":"Check how far a roster enrichment run has got, including how many rows the vendor could not match.","side_effects":"Reads current workspace state.","permission":"read","required_scopes":["accounts:read"],"requires_operation_id":false,"billing":"No gateway credit charge; reads saved workspace data without starting paid provider work.","required_resolved_fields":[],"next_call":{"tool":"domain.events.v2","arguments":{"params":{"action":"describe","operation":"events.enrichment_status.get.v2"}}},"catalog_revision":"07a373e389289e05","when_not_to_use":"Do not use this to poll grading — that is events.scoring_status.get.v2.","description":"Use when: Check how far a roster enrichment run has got, including how many rows the vendor could not match. Returns/does: Reads the current authorized workspace state. Do not use when: Do not use this to poll grading — that is events.scoring_status.get.v2. Identity comes from OAuth. Resolve exact IDs; use typed enums and bounded limits. Billing: Gateway and downstream billing depend on the operation; check its preview/quote and returned billing.","input_schema":{"additionalProperties":false,"properties":{"event_id":{"description":"Exact event UUID returned by a Hivekind search, list, get, preview, or resource call.","format":"uuid","title":"Event Id","type":"string"}},"required":["event_id"],"title":"McpPublicEventsEnrichmentStatusGetInputV2","type":"object"},"output_schema":{"additionalProperties":false,"description":"V2 result for events.enrichment_status.get.v2; preserves the established validators.","properties":{"run_id":{"anyOf":[{"format":"uuid","type":"string"},{"type":"null"}],"default":null,"title":"Run Id"},"status":{"anyOf":[{"maxLength":32,"type":"string"},{"type":"null"}],"default":null,"title":"Status"},"trigger":{"anyOf":[{"maxLength":32,"type":"string"},{"type":"null"}],"default":null,"title":"Trigger"},"requested":{"default":0,"minimum":0,"title":"Requested","type":"integer"},"processed":{"default":0,"minimum":0,"title":"Processed","type":"integer"},"cached_reuse":{"default":0,"minimum":0,"title":"Cached Reuse","type":"integer"},"enriched":{"default":0,"minimum":0,"title":"Enriched","type":"integer"},"no_match":{"default":0,"minimum":0,"title":"No Match","type":"integer"},"failed":{"default":0,"minimum":0,"title":"Failed","type":"integer"},"error_message":{"anyOf":[{"maxLength":2000,"type":"string"},{"type":"null"}],"default":null,"title":"Error Message"},"total_roster":{"default":0,"minimum":0,"title":"Total Roster","type":"integer"},"total_enriched":{"default":0,"minimum":0,"title":"Total Enriched","type":"integer"},"total_stale":{"default":0,"minimum":0,"title":"Total Stale","type":"integer"}},"title":"PublicEventsEnrichmentStatusGetResultV2","type":"object"},"example":{"tool":"domain.events.v2","arguments":{"params":{"action":"invoke","operation":"events.enrichment_status.get.v2","arguments":{"event_id":"00000000-0000-4000-8000-000000000001"},"operation_id":"00000000-0000-4000-8000-000000000003"}},"notice":"Fictional fixture IDs and example text. Resolve real IDs, use returned preview tokens and approve exact side effects before execution. Input validation is not proof of provider readiness or a successful business outcome."},"workflow_steps":[],"approval_policy":null,"idempotency_policy":"read_only","gateway_credit_code":null,"identity":"Workspace, actor and consent come from OAuth; do not supply identity fields.","retry":"Keep the same operation and operation_id when retrying identical work. Reconcile an uncertain result before new work; never replay an old V1 write under a new V2 ID.","completion":"Check status, execution_state, error_code, output and evidence/resource references. Queued work is not complete: poll jobs.status.get.v2 in domain.workspace.v2. For read-back verification require read_back_verified=true where returned; reconcile failures without creating another object.","result_envelope":{"status":"completed | partial | cancelled | failed","execution_state":"terminal | queued | reconciliation_required","output":"Completed results validate against output_schema; partial/reconciliation results can contain incomplete evidence and must not be treated as completion.","billing":"gateway_credits_spent, downstream_settlement, job_id; pending downstream settlement is not a final cost","references":"run_id, invocation_id, resource_refs, evidence_refs"},"documentation":"https://www.hivekind.ai/docs/mcp/events#events-enrichment_status-get-v2"},{"operation":"events.import.preview.v2","domain":"events","tool":"domain.events.v2","title":"Preview an event roster import","purpose":"Show what a guest list would land as in Hive Events before writing anything: column mapping, row counts, and which companies and people already exist. Send the file whole; the response's column_policy names any columns that look like source-system noise, and nothing is left out unless you send that choice back as exclude_columns.","side_effects":"Writes nothing. Returns an import_token that events.import.start.v2 commits as-is -- the exact rows and columns shown here.","permission":"propose","required_scopes":["runs:create"],"requires_operation_id":true,"billing":"No gateway rate is configured. Check the Core workflow preview/quote for downstream charges and final settlement.","required_resolved_fields":[],"next_call":{"tool":"domain.events.v2","arguments":{"params":{"action":"describe","operation":"events.import.preview.v2"}}},"catalog_revision":"07a373e389289e05","when_not_to_use":"Do not use this for people not tied to an event — that is prospects.import.preview.v2 — or for a company-only list, which is accounts.import.preview.v2.","description":"Use when: Show what a guest list would land as in Hive Events before writing anything: column mapping, row counts, and which companies and people already exist. Send the file whole; the response's column_policy names any columns that look like source-system noise, and nothing is left out unless you send that choice back as exclude_columns. Returns/does: Writes nothing. Returns an import_token that events.import.start.v2 commits as-is -- the exact rows and columns shown here. Do not use when: Do not use this for people not tied to an event — that is prospects.import.preview.v2 — or for a company-only list, which is accounts.import.preview.v2. Identity comes from OAuth. Resolve exact IDs; use typed enums and bounded limits. Billing: Gateway and downstream billing depend on the operation; check its preview/quote and returned billing.","input_schema":{"$defs":{"EventParticipantInputV1":{"additionalProperties":false,"description":"One roster row. Role defaults to attendee, which is what guest lists are.","properties":{"role":{"default":"attendee","enum":["speaker","sponsor","exhibitor","attendee","organizer","panelist","host"],"title":"Role","type":"string"},"person_name":{"anyOf":[{"maxLength":255,"type":"string"},{"type":"null"}],"default":null,"title":"Person Name"},"person_email":{"anyOf":[{"maxLength":320,"type":"string"},{"type":"null"}],"default":null,"title":"Person Email"},"person_title":{"anyOf":[{"maxLength":255,"type":"string"},{"type":"null"}],"default":null,"title":"Person Title"},"person_linkedin":{"anyOf":[{"maxLength":500,"type":"string"},{"type":"null"}],"default":null,"title":"Person Linkedin"},"company_name":{"anyOf":[{"maxLength":255,"type":"string"},{"type":"null"}],"default":null,"title":"Company Name"},"company_domain":{"anyOf":[{"maxLength":255,"type":"string"},{"type":"null"}],"default":null,"title":"Company Domain"},"role_attributes":{"additionalProperties":{"$ref":"#/$defs/JsonValue"},"description":"Event metadata to preserve verbatim: rsvp_status, checked_in, waitlisted, ticket_type, registered_at.","title":"Role Attributes","type":"object"}},"title":"EventParticipantInputV1","type":"object"},"JsonValue":{}},"additionalProperties":false,"properties":{"csv_text":{"anyOf":[{"type":"string"},{"type":"null"}],"default":null,"description":"Verbatim contents of a CSV the caller holds. Send the file exactly as it is: never retype values, reorder or drop rows, summarise, or leave columns out. The server maps arbitrary column layouts itself, and the preview reports which columns it reads as source-system noise, and why, in column_policy. Decide there with the user -- not here.","title":"Csv Text"},"exclude_columns":{"default":[],"description":"Source columns to leave out, after the user agreed to it. Leave empty on a first preview. Naming a column the server protects, or one that is mapped to a canonical field, fails the whole call.","items":{"type":"string"},"maxItems":200,"title":"Exclude Columns","type":"array"},"keep_columns":{"default":[],"description":"Source columns to retain whatever the server makes of them. Use it when the user says a column matters. Outranks exclude_columns.","items":{"type":"string"},"maxItems":200,"title":"Keep Columns","type":"array"},"tags":{"anyOf":[{"items":{"maxLength":64,"minLength":1,"type":"string"},"maxItems":10,"type":"array"},{"type":"null"}],"default":null,"description":"Account tags (1-64 characters each, at most 10) added to every account this import creates or matches -- existing accounts get the tag and nothing else on them changes. Matched case-insensitively against existing tags; resolve them with accounts.tags.list.v2 first. The preview's import_token locks these in: omit tags on the commit to reuse them, and a different list is refused. Separate from the source badge.","title":"Tags"},"event_name":{"description":"Event name used by the public events import preview input v2 operation.","maxLength":500,"minLength":1,"title":"Event Name","type":"string"},"event_date":{"anyOf":[{"format":"date","type":"string"},{"type":"null"}],"default":null,"description":"Event date used by the public events import preview input v2 operation.","title":"Event Date"},"event_type":{"anyOf":[{"maxLength":64,"type":"string"},{"type":"null"}],"default":null,"description":"Event type used by the public events import preview input v2 operation.","title":"Event Type"},"location_city":{"anyOf":[{"maxLength":255,"type":"string"},{"type":"null"}],"default":null,"description":"Location city used by the public events import preview input v2 operation.","title":"Location City"},"location_country":{"anyOf":[{"maxLength":255,"type":"string"},{"type":"null"}],"default":null,"description":"Location country used by the public events import preview input v2 operation.","title":"Location Country"},"venue":{"anyOf":[{"maxLength":255,"type":"string"},{"type":"null"}],"default":null,"description":"Venue used by the public events import preview input v2 operation.","title":"Venue"},"url":{"anyOf":[{"maxLength":1000,"type":"string"},{"type":"null"}],"default":null,"description":"Url used by the public events import preview input v2 operation.","title":"Url"},"target_event_id":{"anyOf":[{"format":"uuid","type":"string"},{"type":"null"}],"default":null,"description":"Append the roster to this existing event instead of creating one. The event metadata fields are ignored when set.","title":"Target Event Id"},"visibility":{"default":"private","description":"Visibility used by the public events import preview input v2 operation.","enum":["private","shared"],"title":"Visibility","type":"string"},"participants":{"default":[],"description":"Participants used by the public events import preview input v2 operation.","items":{"$ref":"#/$defs/EventParticipantInputV1"},"maxItems":2000,"title":"Participants","type":"array"}},"required":["event_name"],"title":"McpPublicEventsImportPreviewInputV2","type":"object"},"output_schema":{"$defs":{"ExcludedColumnV1":{"additionalProperties":false,"description":"One source column the server left out, or proposes leaving out.","properties":{"column":{"maxLength":255,"title":"Column","type":"string"},"reason":{"enum":["empty_column","opaque_source_id","payment_metadata","source_system_link","caller_selected"],"title":"Reason","type":"string"},"detail":{"default":"","maxLength":500,"title":"Detail","type":"string"}},"required":["column","reason"],"title":"ExcludedColumnV1","type":"object"},"ImportColumnPolicyV1":{"additionalProperties":false,"description":"What the server made of the file's columns.\n\n``applied`` is the field that matters. False -- the default for any preview\nthat was not given a selection -- means ``excluded_columns`` is a proposal\nand every column was still imported. Show it to the user, take their answer,\nand send it back as ``exclude_columns`` if they agree. Never act on it alone.","properties":{"version":{"default":1,"title":"Version","type":"integer"},"applied":{"default":false,"title":"Applied","type":"boolean"},"retained_columns":{"default":[],"items":{"type":"string"},"title":"Retained Columns","type":"array"},"excluded_columns":{"default":[],"items":{"$ref":"#/$defs/ExcludedColumnV1"},"title":"Excluded Columns","type":"array"}},"title":"ImportColumnPolicyV1","type":"object"},"ImportRowErrorV1":{"additionalProperties":false,"description":"One row the parser could not use. Row numbers are 1-based and header-aware.","properties":{"row":{"minimum":1,"title":"Row","type":"integer"},"reason":{"maxLength":500,"minLength":1,"title":"Reason","type":"string"}},"required":["row","reason"],"title":"ImportRowErrorV1","type":"object"},"JsonValue":{}},"additionalProperties":false,"description":"V2 result for events.import.preview.v2; preserves the established validators.","properties":{"import_token":{"anyOf":[{"maxLength":255,"type":"string"},{"type":"null"}],"default":null,"description":"Pass to the matching commit tool to reuse exactly these rows. Null when no cache backend was reachable -- resend the data instead.","title":"Import Token"},"rows_parsed":{"default":0,"minimum":0,"title":"Rows Parsed","type":"integer"},"rows_skipped":{"default":0,"minimum":0,"title":"Rows Skipped","type":"integer"},"used_llm":{"default":false,"title":"Used Llm","type":"boolean"},"column_policy":{"anyOf":[{"$ref":"#/$defs/ImportColumnPolicyV1"},{"type":"null"}],"default":null,"description":"What the server made of the file's columns. When applied is false this is a proposal only and nothing was left out."},"column_mapping":{"additionalProperties":{"type":"string"},"title":"Column Mapping","type":"object"},"parse_errors":{"default":[],"items":{"$ref":"#/$defs/ImportRowErrorV1"},"maxItems":50,"title":"Parse Errors","type":"array"},"matches_existing_accounts":{"default":0,"minimum":0,"title":"Matches Existing Accounts","type":"integer"},"matches_existing_contacts":{"default":0,"minimum":0,"title":"Matches Existing Contacts","type":"integer"},"new_companies":{"default":0,"minimum":0,"title":"New Companies","type":"integer"},"sample_rows":{"default":[],"items":{"additionalProperties":{"$ref":"#/$defs/JsonValue"},"type":"object"},"maxItems":5,"title":"Sample Rows","type":"array"},"tags":{"default":[],"description":"Account tags the import_token is locked to.","items":{"type":"string"},"title":"Tags","type":"array"},"accounts_to_tag":{"default":0,"description":"Accounts the commit would tag: matches_existing_accounts plus new_companies. Zero when no tags were given.","minimum":0,"title":"Accounts To Tag","type":"integer"}},"title":"PublicEventsImportPreviewResultV2","type":"object"},"example":{"tool":"domain.events.v2","arguments":{"params":{"action":"invoke","operation":"events.import.preview.v2","arguments":{"event_name":"Example event name","participants":[{"company_name":"Example company","person_email":"person@example.com","person_name":"Example Person"}]},"operation_id":"00000000-0000-4000-8000-000000000003"}},"notice":"Fictional fixture IDs and example text. Resolve real IDs, use returned preview tokens and approve exact side effects before execution. Input validation is not proof of provider readiness or a successful business outcome."},"workflow_steps":[],"approval_policy":null,"idempotency_policy":"run_task_import_preview","gateway_credit_code":null,"identity":"Workspace, actor and consent come from OAuth; do not supply identity fields.","retry":"Keep the same operation and operation_id when retrying identical work. Reconcile an uncertain result before new work; never replay an old V1 write under a new V2 ID.","completion":"Check status, execution_state, error_code, output and evidence/resource references. Queued work is not complete: poll jobs.status.get.v2 in domain.workspace.v2. For read-back verification require read_back_verified=true where returned; reconcile failures without creating another object.","result_envelope":{"status":"completed | partial | cancelled | failed","execution_state":"terminal | queued | reconciliation_required","output":"Completed results validate against output_schema; partial/reconciliation results can contain incomplete evidence and must not be treated as completion.","billing":"gateway_credits_spent, downstream_settlement, job_id; pending downstream settlement is not a final cost","references":"run_id, invocation_id, resource_refs, evidence_refs"},"documentation":"https://www.hivekind.ai/docs/mcp/events#events-import-preview-v2"},{"operation":"events.import.start.v2","domain":"events","tool":"domain.events.v2","title":"Import an event roster","purpose":"Land a guest list in Hive Events. Attendees are matched to existing accounts and contacts or created as new ones, and badged with the event's source; ICP scoring is a separate step (events.score.v2). Pass the import_token from the preview to commit exactly the rows and columns that were shown; sending data or column choices alongside a token is refused.","side_effects":"Creates an event and its participants. Attendees are matched or created as accounts and contacts in the background and badged with the event's source (record_source_id). Pass source.kind (workshop, event or webinar) to set the badge kind. Scores, enriches and sends nothing.","permission":"execute","required_scopes":["actions:execute"],"requires_operation_id":true,"billing":"No gateway rate is configured. Check the Core workflow preview/quote for downstream charges and final settlement.","required_resolved_fields":[],"next_call":{"tool":"domain.events.v2","arguments":{"params":{"action":"describe","operation":"events.import.start.v2"}}},"catalog_revision":"07a373e389289e05","when_not_to_use":"Do not use this for people not tied to an event — that is prospects.import.start.v2. Only source.kind is read here; source name and details are ignored (the badge is named after the event).","description":"Use when: Land a guest list in Hive Events. Attendees are matched to existing accounts and contacts or created as new ones, and badged with the event's source; ICP scoring is a separate step (events.score.v2). Pass the import_token from the preview to commit exactly the rows and columns that were shown; sending data or column choices alongside a token is refused. Returns/does: Creates an event and its participants. Attendees are matched or created as accounts and contacts in the background and badged with the event's source (record_source_id). Pass source.kind (workshop, event or webinar) to set the badge kind. Scores, enriches and sends nothing. Do not use when: Do not use this for people not tied to an event — that is prospects.import.start.v2. Only source.kind is read here; source name and details are ignored (the badge is named after the event). Identity comes from OAuth. Resolve exact IDs; use typed enums and bounded limits. Billing: Gateway and downstream billing depend on the operation; check its preview/quote and returned billing.","input_schema":{"$defs":{"EventParticipantInputV1":{"additionalProperties":false,"description":"One roster row. Role defaults to attendee, which is what guest lists are.","properties":{"role":{"default":"attendee","enum":["speaker","sponsor","exhibitor","attendee","organizer","panelist","host"],"title":"Role","type":"string"},"person_name":{"anyOf":[{"maxLength":255,"type":"string"},{"type":"null"}],"default":null,"title":"Person Name"},"person_email":{"anyOf":[{"maxLength":320,"type":"string"},{"type":"null"}],"default":null,"title":"Person Email"},"person_title":{"anyOf":[{"maxLength":255,"type":"string"},{"type":"null"}],"default":null,"title":"Person Title"},"person_linkedin":{"anyOf":[{"maxLength":500,"type":"string"},{"type":"null"}],"default":null,"title":"Person Linkedin"},"company_name":{"anyOf":[{"maxLength":255,"type":"string"},{"type":"null"}],"default":null,"title":"Company Name"},"company_domain":{"anyOf":[{"maxLength":255,"type":"string"},{"type":"null"}],"default":null,"title":"Company Domain"},"role_attributes":{"additionalProperties":{"$ref":"#/$defs/JsonValue"},"description":"Event metadata to preserve verbatim: rsvp_status, checked_in, waitlisted, ticket_type, registered_at.","title":"Role Attributes","type":"object"}},"title":"EventParticipantInputV1","type":"object"},"ImportSourceInputV1":{"additionalProperties":false,"description":"Where this list came from. Every record the import creates or matches is badged with it.","properties":{"source_id":{"anyOf":[{"format":"uuid","type":"string"},{"type":"null"}],"default":null,"description":"Add to an existing source instead of creating one.","title":"Source Id"},"name":{"anyOf":[{"maxLength":255,"type":"string"},{"type":"null"}],"default":null,"description":"New source name, e.g. 'AI for CFOs workshop'. Omit to name it after the file.","title":"Name"},"kind":{"default":"list","enum":["workshop","event","webinar","list","other"],"title":"Kind","type":"string"},"occurred_on":{"anyOf":[{"format":"date","type":"string"},{"type":"null"}],"default":null,"title":"Occurred On"},"details":{"additionalProperties":{"anyOf":[{"type":"string"},{"type":"integer"},{"type":"number"},{"type":"boolean"},{"type":"null"}]},"description":"Location, host, link, notes. Flat: at most 20 keys (each up to 64 characters), values are text up to 1000 characters, numbers, booleans or null. No nested objects or lists.","title":"Details","type":"object"}},"title":"ImportSourceInputV1","type":"object"},"JsonValue":{}},"additionalProperties":false,"properties":{"csv_text":{"anyOf":[{"type":"string"},{"type":"null"}],"default":null,"description":"Verbatim contents of a CSV the caller holds. Send the file exactly as it is: never retype values, reorder or drop rows, summarise, or leave columns out. The server maps arbitrary column layouts itself, and the preview reports which columns it reads as source-system noise, and why, in column_policy. Decide there with the user -- not here.","title":"Csv Text"},"exclude_columns":{"default":[],"description":"Source columns to leave out, after the user agreed to it. Leave empty on a first preview. Naming a column the server protects, or one that is mapped to a canonical field, fails the whole call.","items":{"type":"string"},"maxItems":200,"title":"Exclude Columns","type":"array"},"keep_columns":{"default":[],"description":"Source columns to retain whatever the server makes of them. Use it when the user says a column matters. Outranks exclude_columns.","items":{"type":"string"},"maxItems":200,"title":"Keep Columns","type":"array"},"tags":{"anyOf":[{"items":{"maxLength":64,"minLength":1,"type":"string"},"maxItems":10,"type":"array"},{"type":"null"}],"default":null,"description":"Account tags (1-64 characters each, at most 10) added to every account this import creates or matches -- existing accounts get the tag and nothing else on them changes. Matched case-insensitively against existing tags; resolve them with accounts.tags.list.v2 first. The preview's import_token locks these in: omit tags on the commit to reuse them, and a different list is refused. Separate from the source badge.","title":"Tags"},"event_name":{"description":"Event name used by the public events import start input v2 operation.","maxLength":500,"minLength":1,"title":"Event Name","type":"string"},"event_date":{"anyOf":[{"format":"date","type":"string"},{"type":"null"}],"default":null,"description":"Event date used by the public events import start input v2 operation.","title":"Event Date"},"event_type":{"anyOf":[{"maxLength":64,"type":"string"},{"type":"null"}],"default":null,"description":"Event type used by the public events import start input v2 operation.","title":"Event Type"},"location_city":{"anyOf":[{"maxLength":255,"type":"string"},{"type":"null"}],"default":null,"description":"Location city used by the public events import start input v2 operation.","title":"Location City"},"location_country":{"anyOf":[{"maxLength":255,"type":"string"},{"type":"null"}],"default":null,"description":"Location country used by the public events import start input v2 operation.","title":"Location Country"},"venue":{"anyOf":[{"maxLength":255,"type":"string"},{"type":"null"}],"default":null,"description":"Venue used by the public events import start input v2 operation.","title":"Venue"},"url":{"anyOf":[{"maxLength":1000,"type":"string"},{"type":"null"}],"default":null,"description":"Url used by the public events import start input v2 operation.","title":"Url"},"target_event_id":{"anyOf":[{"format":"uuid","type":"string"},{"type":"null"}],"default":null,"description":"Append the roster to this existing event instead of creating one. The event metadata fields are ignored when set.","title":"Target Event Id"},"visibility":{"default":"private","description":"Visibility used by the public events import start input v2 operation.","enum":["private","shared"],"title":"Visibility","type":"string"},"participants":{"default":[],"description":"Participants used by the public events import start input v2 operation.","items":{"$ref":"#/$defs/EventParticipantInputV1"},"maxItems":2000,"title":"Participants","type":"array"},"source":{"anyOf":[{"$ref":"#/$defs/ImportSourceInputV1"},{"type":"null"}],"default":null,"description":"Label this list so every account and contact it creates or matches is badged with where it came from (workshop, event, webinar, list). For events only `kind` is used (workshop, event or webinar): the event itself is the source."},"action_proposal_id":{"anyOf":[{"format":"uuid","type":"string"},{"type":"null"}],"default":null,"description":"Optional. Hivekind fills this from the MCP consent grant.","title":"Action Proposal Id"},"import_token":{"anyOf":[{"maxLength":255,"type":"string"},{"type":"null"}],"default":null,"description":"Token from the matching preview. Reuses the exact rows that were previewed and skips re-normalising them.","title":"Import Token"},"auto_enrich":{"anyOf":[{"type":"boolean"},{"type":"null"}],"default":null,"description":"When true, once this roster is graded the A/B tier is enriched and imported into Hive Base automatically. This spends Apollo credits and is off unless asked for. Leave unset to keep the workspace's existing choice. Grading still has to be started with events.score.v2 — importing alone never enriches anything.","title":"Auto Enrich"}},"required":["event_name"],"title":"McpMcpPublicEventsImportStartInputV2","type":"object"},"output_schema":{"$defs":{"ImportRowErrorV1":{"additionalProperties":false,"description":"One row the parser could not use. Row numbers are 1-based and header-aware.","properties":{"row":{"minimum":1,"title":"Row","type":"integer"},"reason":{"maxLength":500,"minLength":1,"title":"Reason","type":"string"}},"required":["row","reason"],"title":"ImportRowErrorV1","type":"object"}},"additionalProperties":false,"description":"V2 result for events.import.start.v2; preserves the established validators.","properties":{"event_id":{"format":"uuid","title":"Event Id","type":"string"},"source_event_id":{"maxLength":500,"minLength":1,"title":"Source Event Id","type":"string"},"visibility":{"default":"private","enum":["private","shared"],"title":"Visibility","type":"string"},"rows_parsed":{"default":0,"minimum":0,"title":"Rows Parsed","type":"integer"},"rows_skipped":{"default":0,"minimum":0,"title":"Rows Skipped","type":"integer"},"participants_inserted":{"default":0,"minimum":0,"title":"Participants Inserted","type":"integer"},"participants_updated":{"default":0,"minimum":0,"title":"Participants Updated","type":"integer"},"parse_errors":{"default":[],"items":{"$ref":"#/$defs/ImportRowErrorV1"},"maxItems":50,"title":"Parse Errors","type":"array"},"record_source_id":{"anyOf":[{"format":"uuid","type":"string"},{"type":"null"}],"default":null,"description":"Id of the source badge attached to the accounts and contacts this roster creates.","title":"Record Source Id"},"tags":{"default":[],"description":"Account tags added to every account this import created or matched.","items":{"type":"string"},"title":"Tags","type":"array"}},"required":["event_id","source_event_id"],"title":"PublicEventsImportStartResultV2","type":"object"},"example":{"tool":"domain.events.v2","arguments":{"params":{"action":"invoke","operation":"events.import.start.v2","arguments":{"event_name":"Example event name","import_token":"use-the-exact-token-from-the-approved-preview"},"operation_id":"00000000-0000-4000-8000-000000000003"}},"notice":"Fictional fixture IDs and example text. Resolve real IDs, use returned preview tokens and approve exact side effects before execution. Input validation is not proof of provider readiness or a successful business outcome."},"workflow_steps":[],"approval_policy":"exact_scope_single_action","idempotency_policy":"approved_action_outbox","gateway_credit_code":null,"identity":"Workspace, actor and consent come from OAuth; do not supply identity fields.","retry":"Keep the same operation and operation_id when retrying identical work. Reconcile an uncertain result before new work; never replay an old V1 write under a new V2 ID.","completion":"Check status, execution_state, error_code, output and evidence/resource references. Queued work is not complete: poll jobs.status.get.v2 in domain.workspace.v2. For read-back verification require read_back_verified=true where returned; reconcile failures without creating another object.","result_envelope":{"status":"completed | partial | cancelled | failed","execution_state":"terminal | queued | reconciliation_required","output":"Completed results validate against output_schema; partial/reconciliation results can contain incomplete evidence and must not be treated as completion.","billing":"gateway_credits_spent, downstream_settlement, job_id; pending downstream settlement is not a final cost","references":"run_id, invocation_id, resource_refs, evidence_refs"},"documentation":"https://www.hivekind.ai/docs/mcp/events#events-import-start-v2"},{"operation":"events.participant.discover_contacts.v2","domain":"events","tool":"domain.events.v2","title":"Discover contacts at an attendee's company","purpose":"Find other people at an attendee's company when you already have a reason to widen beyond the person who attended.","side_effects":"Queues a vendor search that creates contacts and meters enrichment per contact created.","permission":"execute","required_scopes":["actions:execute"],"requires_operation_id":true,"billing":"No gateway rate is configured. Check the Core workflow preview/quote for downstream charges and final settlement.","required_resolved_fields":[],"next_call":{"tool":"domain.events.v2","arguments":{"params":{"action":"describe","operation":"events.participant.discover_contacts.v2"}}},"catalog_revision":"07a373e389289e05","when_not_to_use":"Do not reach for this on a fresh roster. The attendee is the warm lead; their colleagues are not, and this bills per person revealed.","description":"Use when: Find other people at an attendee's company when you already have a reason to widen beyond the person who attended. Returns/does: Queues a vendor search that creates contacts and meters enrichment per contact created. Do not use when: Do not reach for this on a fresh roster. The attendee is the warm lead; their colleagues are not, and this bills per person revealed. Identity comes from OAuth. Resolve exact IDs; use typed enums and bounded limits. Billing: Gateway and downstream billing depend on the operation; check its preview/quote and returned billing.","input_schema":{"additionalProperties":false,"properties":{"action_proposal_id":{"anyOf":[{"format":"uuid","type":"string"},{"type":"null"}],"default":null,"description":"Optional. Hivekind fills this from the MCP consent grant.","title":"Action Proposal Id"},"event_id":{"description":"Exact event UUID returned by a Hivekind search, list, get, preview, or resource call.","format":"uuid","title":"Event Id","type":"string"},"event_participant_id":{"description":"Exact event participant UUID returned by a Hivekind search, list, get, preview, or resource call.","format":"uuid","title":"Event Participant Id","type":"string"},"titles":{"default":[],"description":"Job titles to look for. Omit to use the workspace's config.","items":{"type":"string"},"maxItems":25,"title":"Titles","type":"array"},"per_page":{"anyOf":[{"maximum":100,"minimum":1,"type":"integer"},{"type":"null"}],"default":null,"description":"Per page used by the public events participant discover contacts input v2 operation.","title":"Per Page"}},"required":["event_id","event_participant_id"],"title":"McpMcpPublicEventsParticipantDiscoverContactsInputV2","type":"object"},"output_schema":{"additionalProperties":false,"description":"V2 result for events.participant.discover_contacts.v2; preserves the established validators.","properties":{"job_id":{"maxLength":255,"minLength":1,"title":"Job Id","type":"string"},"account_id":{"format":"uuid","title":"Account Id","type":"string"},"account_created":{"default":false,"title":"Account Created","type":"boolean"}},"required":["job_id","account_id"],"title":"PublicEventsParticipantDiscoverContactsResultV2","type":"object"},"example":{"tool":"domain.events.v2","arguments":{"params":{"action":"invoke","operation":"events.participant.discover_contacts.v2","arguments":{"event_id":"00000000-0000-4000-8000-000000000001","event_participant_id":"00000000-0000-4000-8000-000000000001"},"operation_id":"00000000-0000-4000-8000-000000000003"}},"notice":"Fictional fixture IDs and example text. Resolve real IDs, use returned preview tokens and approve exact side effects before execution. Input validation is not proof of provider readiness or a successful business outcome."},"workflow_steps":[],"approval_policy":"exact_scope_single_action","idempotency_policy":"approved_action_outbox","gateway_credit_code":null,"identity":"Workspace, actor and consent come from OAuth; do not supply identity fields.","retry":"Keep the same operation and operation_id when retrying identical work. Reconcile an uncertain result before new work; never replay an old V1 write under a new V2 ID.","completion":"Check status, execution_state, error_code, output and evidence/resource references. Queued work is not complete: poll jobs.status.get.v2 in domain.workspace.v2. For read-back verification require read_back_verified=true where returned; reconcile failures without creating another object.","result_envelope":{"status":"completed | partial | cancelled | failed","execution_state":"terminal | queued | reconciliation_required","output":"Completed results validate against output_schema; partial/reconciliation results can contain incomplete evidence and must not be treated as completion.","billing":"gateway_credits_spent, downstream_settlement, job_id; pending downstream settlement is not a final cost","references":"run_id, invocation_id, resource_refs, evidence_refs"},"documentation":"https://www.hivekind.ai/docs/mcp/events#events-participant-discover_contacts-v2"},{"operation":"events.participant.promote.v2","domain":"events","tool":"domain.events.v2","title":"Promote an attendee into Hive Base","purpose":"Turn one roster row into a real account and contact once you have decided to pursue them.","side_effects":"Creates or reuses an account and contact. Meters enrichment only when vendor data was used.","permission":"execute","required_scopes":["actions:execute"],"requires_operation_id":true,"billing":"No gateway rate is configured. Check the Core workflow preview/quote for downstream charges and final settlement.","required_resolved_fields":[],"next_call":{"tool":"domain.events.v2","arguments":{"params":{"action":"describe","operation":"events.participant.promote.v2"}}},"catalog_revision":"07a373e389289e05","when_not_to_use":"Do not use this to import a whole roster; stage that with events.import.start.v2 and promote what grades well.","description":"Use when: Turn one roster row into a real account and contact once you have decided to pursue them. Returns/does: Creates or reuses an account and contact. Meters enrichment only when vendor data was used. Do not use when: Do not use this to import a whole roster; stage that with events.import.start.v2 and promote what grades well. Identity comes from OAuth. Resolve exact IDs; use typed enums and bounded limits. Billing: Gateway and downstream billing depend on the operation; check its preview/quote and returned billing.","input_schema":{"additionalProperties":false,"properties":{"action_proposal_id":{"anyOf":[{"format":"uuid","type":"string"},{"type":"null"}],"default":null,"description":"Optional. Hivekind fills this from the MCP consent grant.","title":"Action Proposal Id"},"event_id":{"description":"Exact event UUID returned by a Hivekind search, list, get, preview, or resource call.","format":"uuid","title":"Event Id","type":"string"},"event_participant_id":{"description":"Exact event participant UUID returned by a Hivekind search, list, get, preview, or resource call.","format":"uuid","title":"Event Participant Id","type":"string"}},"required":["event_id","event_participant_id"],"title":"McpMcpPublicEventsParticipantPromoteInputV2","type":"object"},"output_schema":{"additionalProperties":false,"description":"V2 result for events.participant.promote.v2; preserves the established validators.","properties":{"account_id":{"format":"uuid","title":"Account Id","type":"string"},"contact_id":{"format":"uuid","title":"Contact Id","type":"string"},"account_created":{"default":false,"title":"Account Created","type":"boolean"},"contact_created":{"default":false,"title":"Contact Created","type":"boolean"}},"required":["account_id","contact_id"],"title":"PublicEventsParticipantPromoteResultV2","type":"object"},"example":{"tool":"domain.events.v2","arguments":{"params":{"action":"invoke","operation":"events.participant.promote.v2","arguments":{"event_id":"00000000-0000-4000-8000-000000000001","event_participant_id":"00000000-0000-4000-8000-000000000001"},"operation_id":"00000000-0000-4000-8000-000000000003"}},"notice":"Fictional fixture IDs and example text. Resolve real IDs, use returned preview tokens and approve exact side effects before execution. Input validation is not proof of provider readiness or a successful business outcome."},"workflow_steps":[],"approval_policy":"exact_scope_single_action","idempotency_policy":"approved_action_outbox","gateway_credit_code":null,"identity":"Workspace, actor and consent come from OAuth; do not supply identity fields.","retry":"Keep the same operation and operation_id when retrying identical work. Reconcile an uncertain result before new work; never replay an old V1 write under a new V2 ID.","completion":"Check status, execution_state, error_code, output and evidence/resource references. Queued work is not complete: poll jobs.status.get.v2 in domain.workspace.v2. For read-back verification require read_back_verified=true where returned; reconcile failures without creating another object.","result_envelope":{"status":"completed | partial | cancelled | failed","execution_state":"terminal | queued | reconciliation_required","output":"Completed results validate against output_schema; partial/reconciliation results can contain incomplete evidence and must not be treated as completion.","billing":"gateway_credits_spent, downstream_settlement, job_id; pending downstream settlement is not a final cost","references":"run_id, invocation_id, resource_refs, evidence_refs"},"documentation":"https://www.hivekind.ai/docs/mcp/events#events-participant-promote-v2"},{"operation":"events.roster.get.v2","domain":"events","tool":"domain.events.v2","title":"List an event roster","purpose":"Read who was on an event's guest list, with their ICP grade once scored. Filter with min_grade='B' for the tier worth enriching.","side_effects":"Reads current workspace state.","permission":"read","required_scopes":["accounts:read"],"requires_operation_id":false,"billing":"No gateway credit charge; reads saved workspace data without starting paid provider work.","required_resolved_fields":[],"next_call":{"tool":"domain.events.v2","arguments":{"params":{"action":"describe","operation":"events.roster.get.v2"}}},"catalog_revision":"07a373e389289e05","when_not_to_use":"Do not use this to find events — that is events.search.v2.","description":"Use when: Read who was on an event's guest list, with their ICP grade once scored. Filter with min_grade='B' for the tier worth enriching. Returns/does: Reads the current authorized workspace state. Do not use when: Do not use this to find events — that is events.search.v2. Identity comes from OAuth. Resolve exact IDs; use typed enums and bounded limits. Billing: Gateway and downstream billing depend on the operation; check its preview/quote and returned billing.","input_schema":{"additionalProperties":false,"properties":{"event_id":{"description":"Exact event UUID returned by a Hivekind search, list, get, preview, or resource call.","format":"uuid","title":"Event Id","type":"string"},"role":{"anyOf":[{"enum":["speaker","sponsor","exhibitor","attendee","organizer","panelist","host"],"type":"string"},{"type":"null"}],"default":null,"description":"Role used by the events roster get input v2 operation.","title":"Role"},"min_grade":{"anyOf":[{"enum":["A","B","C","D","E","F"],"type":"string"},{"type":"null"}],"default":null,"description":"Only rows graded at or above this ICP grade. Pass 'B' for the A/B tier worth enriching. Unresolved and unscored rows are excluded.","title":"Min Grade"},"offset":{"default":0,"description":"Zero-based number of matching records to skip for pagination.","maximum":1000000,"minimum":0,"title":"Offset","type":"integer"},"limit":{"default":50,"description":"Maximum number of records to return in this page.","maximum":200,"minimum":1,"title":"Limit","type":"integer"}},"required":["event_id"],"title":"McpEventsRosterGetInputV2","type":"object"},"output_schema":{"$defs":{"EventRosterItemV1":{"additionalProperties":false,"description":"One roster row with everything needed to decide whether to promote it.","properties":{"event_participant_id":{"format":"uuid","title":"Event Participant Id","type":"string"},"role":{"maxLength":32,"minLength":1,"title":"Role","type":"string"},"person_name":{"anyOf":[{"maxLength":255,"type":"string"},{"type":"null"}],"default":null,"title":"Person Name"},"person_email":{"anyOf":[{"maxLength":320,"type":"string"},{"type":"null"}],"default":null,"title":"Person Email"},"person_title":{"anyOf":[{"maxLength":255,"type":"string"},{"type":"null"}],"default":null,"title":"Person Title"},"person_linkedin":{"anyOf":[{"maxLength":500,"type":"string"},{"type":"null"}],"default":null,"title":"Person Linkedin"},"company_name":{"anyOf":[{"maxLength":255,"type":"string"},{"type":"null"}],"default":null,"title":"Company Name"},"company_domain":{"anyOf":[{"maxLength":255,"type":"string"},{"type":"null"}],"default":null,"title":"Company Domain"},"role_attributes":{"additionalProperties":{"$ref":"#/$defs/JsonValue"},"description":"Event metadata preserved from the source: RSVP, check-in, ticket.","title":"Role Attributes","type":"object"},"account_grade":{"anyOf":[{"maxLength":2,"type":"string"},{"type":"null"}],"default":null,"title":"Account Grade"},"account_score":{"anyOf":[{"maximum":100,"minimum":0,"type":"integer"},{"type":"null"}],"default":null,"title":"Account Score"},"person_grade":{"anyOf":[{"maxLength":2,"type":"string"},{"type":"null"}],"default":null,"title":"Person Grade"},"person_score":{"anyOf":[{"maximum":100,"minimum":0,"type":"integer"},{"type":"null"}],"default":null,"title":"Person Score"},"composite_score":{"anyOf":[{"maximum":100,"minimum":0,"type":"number"},{"type":"null"}],"default":null,"title":"Composite Score"},"resolution_status":{"anyOf":[{"maxLength":32,"type":"string"},{"type":"null"}],"default":null,"title":"Resolution Status"},"account_id":{"anyOf":[{"format":"uuid","type":"string"},{"type":"null"}],"default":null,"title":"Account Id"},"contact_id":{"anyOf":[{"format":"uuid","type":"string"},{"type":"null"}],"default":null,"title":"Contact Id"},"enrichment_status":{"anyOf":[{"maxLength":32,"type":"string"},{"type":"null"}],"default":null,"description":"null when never enriched; 'success' rows can be promoted.","title":"Enrichment Status"},"is_materialized":{"default":false,"title":"Is Materialized","type":"boolean"},"is_competitor":{"default":false,"description":"Competitors carry no grade or account link by design.","title":"Is Competitor","type":"boolean"},"in_active_loop":{"default":false,"description":"Promoting this interrupts and branches a running Hiveloop.","title":"In Active Loop","type":"boolean"}},"required":["event_participant_id","role"],"title":"EventRosterItemV1","type":"object"},"JsonValue":{}},"additionalProperties":false,"properties":{"items":{"default":[],"items":{"$ref":"#/$defs/EventRosterItemV1"},"maxItems":200,"title":"Items","type":"array"},"total":{"default":0,"minimum":0,"title":"Total","type":"integer"},"offset":{"default":0,"minimum":0,"title":"Offset","type":"integer"},"limit":{"default":50,"maximum":200,"minimum":1,"title":"Limit","type":"integer"}},"title":"EventsRosterGetResultV2","type":"object"},"example":{"tool":"domain.events.v2","arguments":{"params":{"action":"invoke","operation":"events.roster.get.v2","arguments":{"event_id":"00000000-0000-4000-8000-000000000001"},"operation_id":"00000000-0000-4000-8000-000000000003"}},"notice":"Fictional fixture IDs and example text. Resolve real IDs, use returned preview tokens and approve exact side effects before execution. Input validation is not proof of provider readiness or a successful business outcome."},"workflow_steps":[],"approval_policy":null,"idempotency_policy":"read_only","gateway_credit_code":null,"identity":"Workspace, actor and consent come from OAuth; do not supply identity fields.","retry":"Keep the same operation and operation_id when retrying identical work. Reconcile an uncertain result before new work; never replay an old V1 write under a new V2 ID.","completion":"Check status, execution_state, error_code, output and evidence/resource references. Queued work is not complete: poll jobs.status.get.v2 in domain.workspace.v2. For read-back verification require read_back_verified=true where returned; reconcile failures without creating another object.","result_envelope":{"status":"completed | partial | cancelled | failed","execution_state":"terminal | queued | reconciliation_required","output":"Completed results validate against output_schema; partial/reconciliation results can contain incomplete evidence and must not be treated as completion.","billing":"gateway_credits_spent, downstream_settlement, job_id; pending downstream settlement is not a final cost","references":"run_id, invocation_id, resource_refs, evidence_refs"},"documentation":"https://www.hivekind.ai/docs/mcp/events#events-roster-get-v2"},{"operation":"events.score.v2","domain":"events","tool":"domain.events.v2","title":"Grade an event roster","purpose":"Grade a staged roster against the workspace ICP so you can see which attendees are worth pursuing.","side_effects":"Resolves the roster into Hive Base first, creating candidate accounts and contacts, then meters scoring per account and per contact.","permission":"execute","required_scopes":["actions:execute"],"requires_operation_id":true,"billing":"No gateway rate is configured. Check the Core workflow preview/quote for downstream charges and final settlement.","required_resolved_fields":[],"next_call":{"tool":"domain.events.v2","arguments":{"params":{"action":"describe","operation":"events.score.v2"}}},"catalog_revision":"07a373e389289e05","when_not_to_use":"Do not use this to grade accounts generally — that is icp.grading.start.v2 with a scope.","description":"Use when: Grade a staged roster against the workspace ICP so you can see which attendees are worth pursuing. Returns/does: Resolves the roster into Hive Base first, creating candidate accounts and contacts, then meters scoring per account and per contact. Do not use when: Do not use this to grade accounts generally — that is icp.grading.start.v2 with a scope. Identity comes from OAuth. Resolve exact IDs; use typed enums and bounded limits. Billing: Gateway and downstream billing depend on the operation; check its preview/quote and returned billing.","input_schema":{"additionalProperties":false,"properties":{"action_proposal_id":{"anyOf":[{"format":"uuid","type":"string"},{"type":"null"}],"default":null,"description":"Optional. Hivekind fills this from the MCP consent grant.","title":"Action Proposal Id"},"event_id":{"description":"Exact event UUID returned by a Hivekind search, list, get, preview, or resource call.","format":"uuid","title":"Event Id","type":"string"},"score_all_roles":{"default":false,"description":"Include plain attendees. Off by default because it costs more.","title":"Score All Roles","type":"boolean"},"persons_per_company_cap":{"default":3,"description":"Persons per company cap used by the public events score input v2 operation.","maximum":20,"minimum":1,"title":"Persons Per Company Cap","type":"integer"},"event_participant_ids":{"default":[],"description":"Restrict scoring to these rows. Omit to score the roster.","items":{"format":"uuid","type":"string"},"maxItems":500,"title":"Event Participant Ids","type":"array"}},"required":["event_id"],"title":"McpMcpPublicEventsScoreInputV2","type":"object"},"output_schema":{"additionalProperties":false,"description":"V2 result for events.score.v2; preserves the established validators.","properties":{"rubric_id":{"format":"uuid","title":"Rubric Id","type":"string"},"accounts_to_score":{"default":0,"minimum":0,"title":"Accounts To Score","type":"integer"},"persons_to_score":{"default":0,"minimum":0,"title":"Persons To Score","type":"integer"},"account_chunks_dispatched":{"default":0,"minimum":0,"title":"Account Chunks Dispatched","type":"integer"},"person_chunks_dispatched":{"default":0,"minimum":0,"title":"Person Chunks Dispatched","type":"integer"},"persona_scoring_skipped":{"default":false,"title":"Persona Scoring Skipped","type":"boolean"},"persona_scoring_skip_reason":{"anyOf":[{"maxLength":500,"type":"string"},{"type":"null"}],"default":null,"title":"Persona Scoring Skip Reason"},"unresolved_participants":{"default":0,"minimum":0,"title":"Unresolved Participants","type":"integer"}},"required":["rubric_id"],"title":"PublicEventsScoreResultV2","type":"object"},"example":{"tool":"domain.events.v2","arguments":{"params":{"action":"invoke","operation":"events.score.v2","arguments":{"event_id":"00000000-0000-4000-8000-000000000001"},"operation_id":"00000000-0000-4000-8000-000000000003"}},"notice":"Fictional fixture IDs and example text. Resolve real IDs, use returned preview tokens and approve exact side effects before execution. Input validation is not proof of provider readiness or a successful business outcome."},"workflow_steps":[],"approval_policy":"exact_scope_single_action","idempotency_policy":"approved_action_outbox","gateway_credit_code":null,"identity":"Workspace, actor and consent come from OAuth; do not supply identity fields.","retry":"Keep the same operation and operation_id when retrying identical work. Reconcile an uncertain result before new work; never replay an old V1 write under a new V2 ID.","completion":"Check status, execution_state, error_code, output and evidence/resource references. Queued work is not complete: poll jobs.status.get.v2 in domain.workspace.v2. For read-back verification require read_back_verified=true where returned; reconcile failures without creating another object.","result_envelope":{"status":"completed | partial | cancelled | failed","execution_state":"terminal | queued | reconciliation_required","output":"Completed results validate against output_schema; partial/reconciliation results can contain incomplete evidence and must not be treated as completion.","billing":"gateway_credits_spent, downstream_settlement, job_id; pending downstream settlement is not a final cost","references":"run_id, invocation_id, resource_refs, evidence_refs"},"documentation":"https://www.hivekind.ai/docs/mcp/events#events-score-v2"},{"operation":"events.scoring_status.get.v2","domain":"events","tool":"domain.events.v2","title":"Event grading status","purpose":"Check how far a roster grading run has got and the grade spread so far.","side_effects":"Reads current workspace state.","permission":"read","required_scopes":["accounts:read"],"requires_operation_id":false,"billing":"No gateway credit charge; reads saved workspace data without starting paid provider work.","required_resolved_fields":[],"next_call":{"tool":"domain.events.v2","arguments":{"params":{"action":"describe","operation":"events.scoring_status.get.v2"}}},"catalog_revision":"07a373e389289e05","when_not_to_use":"Do not use this to poll an import — that is jobs.status.get.v2.","description":"Use when: Check how far a roster grading run has got and the grade spread so far. Returns/does: Reads the current authorized workspace state. Do not use when: Do not use this to poll an import — that is jobs.status.get.v2. Identity comes from OAuth. Resolve exact IDs; use typed enums and bounded limits. Billing: Gateway and downstream billing depend on the operation; check its preview/quote and returned billing.","input_schema":{"additionalProperties":false,"properties":{"event_id":{"description":"Exact event UUID returned by a Hivekind search, list, get, preview, or resource call.","format":"uuid","title":"Event Id","type":"string"}},"required":["event_id"],"title":"McpPublicEventsScoringStatusGetInputV2","type":"object"},"output_schema":{"additionalProperties":false,"description":"V2 result for events.scoring_status.get.v2; preserves the established validators.","properties":{"grade_counts":{"additionalProperties":{"type":"integer"},"description":"Account grades only — A, B, C, D and unscored.","title":"Grade Counts","type":"object"},"total_resolved":{"default":0,"minimum":0,"title":"Total Resolved","type":"integer"},"total_accounts":{"default":0,"minimum":0,"title":"Total Accounts","type":"integer"},"total_contacts":{"default":0,"minimum":0,"title":"Total Contacts","type":"integer"},"in_progress_runs":{"default":0,"minimum":0,"title":"In Progress Runs","type":"integer"},"completed_runs":{"default":0,"minimum":0,"title":"Completed Runs","type":"integer"},"failed_runs":{"default":0,"minimum":0,"title":"Failed Runs","type":"integer"},"last_run_at":{"anyOf":[{"maxLength":64,"type":"string"},{"type":"null"}],"default":null,"title":"Last Run At"}},"title":"PublicEventsScoringStatusGetResultV2","type":"object"},"example":{"tool":"domain.events.v2","arguments":{"params":{"action":"invoke","operation":"events.scoring_status.get.v2","arguments":{"event_id":"00000000-0000-4000-8000-000000000001"},"operation_id":"00000000-0000-4000-8000-000000000003"}},"notice":"Fictional fixture IDs and example text. Resolve real IDs, use returned preview tokens and approve exact side effects before execution. Input validation is not proof of provider readiness or a successful business outcome."},"workflow_steps":[],"approval_policy":null,"idempotency_policy":"read_only","gateway_credit_code":null,"identity":"Workspace, actor and consent come from OAuth; do not supply identity fields.","retry":"Keep the same operation and operation_id when retrying identical work. Reconcile an uncertain result before new work; never replay an old V1 write under a new V2 ID.","completion":"Check status, execution_state, error_code, output and evidence/resource references. Queued work is not complete: poll jobs.status.get.v2 in domain.workspace.v2. For read-back verification require read_back_verified=true where returned; reconcile failures without creating another object.","result_envelope":{"status":"completed | partial | cancelled | failed","execution_state":"terminal | queued | reconciliation_required","output":"Completed results validate against output_schema; partial/reconciliation results can contain incomplete evidence and must not be treated as completion.","billing":"gateway_credits_spent, downstream_settlement, job_id; pending downstream settlement is not a final cost","references":"run_id, invocation_id, resource_refs, evidence_refs"},"documentation":"https://www.hivekind.ai/docs/mcp/events#events-scoring_status-get-v2"},{"operation":"events.search.v2","domain":"events","tool":"domain.events.v2","title":"List events","purpose":"Find events staged in Hive Events, with roster counts, so you can pick one to work.","side_effects":"Reads current workspace state.","permission":"read","required_scopes":["accounts:read"],"requires_operation_id":false,"billing":"No gateway credit charge; reads saved workspace data without starting paid provider work.","required_resolved_fields":[],"next_call":{"tool":"domain.events.v2","arguments":{"params":{"action":"describe","operation":"events.search.v2"}}},"catalog_revision":"07a373e389289e05","when_not_to_use":"Do not use this to read who was there — that is events.roster.get.v2.","description":"Use when: Find events staged in Hive Events, with roster counts, so you can pick one to work. Returns/does: Reads the current authorized workspace state. Do not use when: Do not use this to read who was there — that is events.roster.get.v2. Identity comes from OAuth. Resolve exact IDs; use typed enums and bounded limits. Billing: Gateway and downstream billing depend on the operation; check its preview/quote and returned billing.","input_schema":{"additionalProperties":false,"properties":{"upcoming_only":{"default":false,"description":"Upcoming only used by the events search input v2 operation.","title":"Upcoming Only","type":"boolean"},"main_only":{"default":false,"description":"Exclude side events.","title":"Main Only","type":"boolean"},"offset":{"default":0,"description":"Zero-based number of matching records to skip for pagination.","maximum":1000000,"minimum":0,"title":"Offset","type":"integer"},"limit":{"default":25,"description":"Maximum number of records to return in this page.","maximum":200,"minimum":1,"title":"Limit","type":"integer"}},"title":"McpEventsSearchInputV2","type":"object"},"output_schema":{"$defs":{"EventSummaryV1":{"additionalProperties":false,"properties":{"event_id":{"format":"uuid","title":"Event Id","type":"string"},"name":{"maxLength":500,"minLength":1,"title":"Name","type":"string"},"start_date":{"anyOf":[{"format":"date","type":"string"},{"type":"null"}],"default":null,"title":"Start Date"},"end_date":{"anyOf":[{"format":"date","type":"string"},{"type":"null"}],"default":null,"title":"End Date"},"location_city":{"anyOf":[{"maxLength":255,"type":"string"},{"type":"null"}],"default":null,"title":"Location City"},"location_country":{"anyOf":[{"maxLength":255,"type":"string"},{"type":"null"}],"default":null,"title":"Location Country"},"venue":{"anyOf":[{"maxLength":255,"type":"string"},{"type":"null"}],"default":null,"title":"Venue"},"url":{"anyOf":[{"maxLength":1000,"type":"string"},{"type":"null"}],"default":null,"title":"Url"},"event_type":{"anyOf":[{"maxLength":64,"type":"string"},{"type":"null"}],"default":null,"title":"Event Type"},"role_counts":{"additionalProperties":{"type":"integer"},"title":"Role Counts","type":"object"},"side_event_count":{"default":0,"minimum":0,"title":"Side Event Count","type":"integer"}},"required":["event_id","name"],"title":"EventSummaryV1","type":"object"}},"additionalProperties":false,"properties":{"events":{"default":[],"items":{"$ref":"#/$defs/EventSummaryV1"},"maxItems":200,"title":"Events","type":"array"}},"title":"EventsSearchResultV2","type":"object"},"example":{"tool":"domain.events.v2","arguments":{"params":{"action":"invoke","operation":"events.search.v2","arguments":{},"operation_id":"00000000-0000-4000-8000-000000000003"}},"notice":"Fictional fixture IDs and example text. Resolve real IDs, use returned preview tokens and approve exact side effects before execution. Input validation is not proof of provider readiness or a successful business outcome."},"workflow_steps":[],"approval_policy":null,"idempotency_policy":"read_only","gateway_credit_code":null,"identity":"Workspace, actor and consent come from OAuth; do not supply identity fields.","retry":"Keep the same operation and operation_id when retrying identical work. Reconcile an uncertain result before new work; never replay an old V1 write under a new V2 ID.","completion":"Check status, execution_state, error_code, output and evidence/resource references. Queued work is not complete: poll jobs.status.get.v2 in domain.workspace.v2. For read-back verification require read_back_verified=true where returned; reconcile failures without creating another object.","result_envelope":{"status":"completed | partial | cancelled | failed","execution_state":"terminal | queued | reconciliation_required","output":"Completed results validate against output_schema; partial/reconciliation results can contain incomplete evidence and must not be treated as completion.","billing":"gateway_credits_spent, downstream_settlement, job_id; pending downstream settlement is not a final cost","references":"run_id, invocation_id, resource_refs, evidence_refs"},"documentation":"https://www.hivekind.ai/docs/mcp/events#events-search-v2"},{"operation":"evidence.get.v2","domain":"workspace","tool":"domain.workspace.v2","title":"Get stored evidence","purpose":"You have evidence references from a Hivekind result and need their stored findings.","side_effects":"Returns permitted immutable evidence revisions. Read only.","permission":"read","required_scopes":["runs:read"],"requires_operation_id":false,"billing":"No gateway credit charge; reads saved workspace data without starting paid provider work.","required_resolved_fields":[],"next_call":{"tool":"domain.workspace.v2","arguments":{"params":{"action":"describe","operation":"evidence.get.v2"}}},"catalog_revision":"07a373e389289e05","when_not_to_use":"You need fresh paid account research.","description":"Use when: You have evidence references from a Hivekind result and need their stored findings. Returns/does: Returns permitted immutable evidence revisions. Read only. Do not use when: You need fresh paid account research. Identity comes from OAuth. Resolve exact IDs; use typed enums and bounded limits. Billing: Gateway and downstream billing depend on the operation; check its preview/quote and returned billing.","input_schema":{"additionalProperties":false,"properties":{"evidence_refs":{"description":"Evidence refs used by the evidence get input v2 operation.","items":{"format":"uuid","type":"string"},"maxItems":20,"minItems":1,"title":"Evidence Refs","type":"array"}},"required":["evidence_refs"],"title":"McpEvidenceGetInputV2","type":"object"},"output_schema":{"$defs":{"EvidenceFindingV1":{"additionalProperties":false,"properties":{"claim":{"maxLength":2000,"minLength":1,"title":"Claim","type":"string"},"source_url":{"anyOf":[{"format":"uri","maxLength":2083,"minLength":1,"type":"string"},{"type":"null"}],"default":null,"title":"Source Url"},"source_label":{"maxLength":255,"minLength":1,"title":"Source Label","type":"string"},"observed_at":{"anyOf":[{"maxLength":64,"type":"string"},{"type":"null"}],"default":null,"title":"Observed At"}},"required":["claim","source_label"],"title":"EvidenceFindingV1","type":"object"},"EvidenceRecordV1":{"additionalProperties":false,"properties":{"evidence_ref":{"format":"uuid","title":"Evidence Ref","type":"string"},"revision":{"minimum":1,"title":"Revision","type":"integer"},"summary":{"default":"","maxLength":4000,"title":"Summary","type":"string"},"findings":{"default":[],"items":{"$ref":"#/$defs/EvidenceFindingV1"},"maxItems":50,"title":"Findings","type":"array"},"content_hash":{"maxLength":64,"minLength":64,"pattern":"^[a-f0-9]{64}$","title":"Content Hash","type":"string"}},"required":["evidence_ref","revision","content_hash"],"title":"EvidenceRecordV1","type":"object"}},"additionalProperties":false,"properties":{"evidence":{"default":[],"items":{"$ref":"#/$defs/EvidenceRecordV1"},"title":"Evidence","type":"array"},"missing_refs":{"default":[],"items":{"format":"uuid","type":"string"},"title":"Missing Refs","type":"array"}},"title":"EvidenceGetResultV2","type":"object"},"example":{"tool":"domain.workspace.v2","arguments":{"params":{"action":"invoke","operation":"evidence.get.v2","arguments":{"evidence_refs":["00000000-0000-4000-8000-000000000001"]},"operation_id":"00000000-0000-4000-8000-000000000003"}},"notice":"Fictional fixture IDs and example text. Resolve real IDs, use returned preview tokens and approve exact side effects before execution. Input validation is not proof of provider readiness or a successful business outcome."},"workflow_steps":[],"approval_policy":null,"idempotency_policy":"read_only","gateway_credit_code":null,"identity":"Workspace, actor and consent come from OAuth; do not supply identity fields.","retry":"Keep the same operation and operation_id when retrying identical work. Reconcile an uncertain result before new work; never replay an old V1 write under a new V2 ID.","completion":"Check status, execution_state, error_code, output and evidence/resource references. Queued work is not complete: poll jobs.status.get.v2 in domain.workspace.v2. For read-back verification require read_back_verified=true where returned; reconcile failures without creating another object.","result_envelope":{"status":"completed | partial | cancelled | failed","execution_state":"terminal | queued | reconciliation_required","output":"Completed results validate against output_schema; partial/reconciliation results can contain incomplete evidence and must not be treated as completion.","billing":"gateway_credits_spent, downstream_settlement, job_id; pending downstream settlement is not a final cost","references":"run_id, invocation_id, resource_refs, evidence_refs"},"documentation":"https://www.hivekind.ai/docs/mcp/workspace#evidence-get-v2"},{"operation":"hiveloops.activation.preview.v2","domain":"campaign","tool":"domain.campaign.v2","title":"Preview loop activation","purpose":"Preview activating a Hiveloop without sending.","side_effects":"May change workspace state or start work; describe before invoking.","permission":"propose","required_scopes":["runs:read"],"requires_operation_id":true,"billing":"No gateway rate is configured. Check the Core workflow preview/quote for downstream charges and final settlement.","required_resolved_fields":[],"next_call":{"tool":"domain.campaign.v2","arguments":{"params":{"action":"describe","operation":"hiveloops.activation.preview.v2"}}},"catalog_revision":"07a373e389289e05","when_not_to_use":"Do not use this to start sending — that is hiveloops.start.v2 after sendability is ready.","description":"Use when: Preview activating a Hiveloop without sending. Returns/does: Changes workspace state or starts work; review the exact contract and approval requirements. Do not use when: Do not use this to start sending — that is hiveloops.start.v2 after sendability is ready. Identity comes from OAuth. Resolve exact IDs; use typed enums and bounded limits. Billing: Gateway and downstream billing depend on the operation; check its preview/quote and returned billing.","input_schema":{"additionalProperties":false,"properties":{"loop_id":{"description":"Exact loop UUID returned by a Hivekind search, list, get, preview, or resource call.","format":"uuid","title":"Loop Id","type":"string"}},"required":["loop_id"],"title":"McpPublicHiveloopsActivationPreviewInputV2","type":"object"},"output_schema":{"$defs":{"LoopActivationPreviewV1":{"additionalProperties":false,"description":"A non-executable preflight for a consequential campaign activation.","properties":{"schema_version":{"const":"1","default":"1","title":"Schema Version","type":"string"},"loop_id":{"format":"uuid","title":"Loop Id","type":"string"},"name":{"maxLength":255,"minLength":1,"title":"Name","type":"string"},"current_status":{"maxLength":64,"minLength":1,"title":"Current Status","type":"string"},"proposed_status":{"const":"active","default":"active","title":"Proposed Status","type":"string"},"step_count":{"maximum":500,"minimum":0,"title":"Step Count","type":"integer"},"target_account_count":{"minimum":0,"title":"Target Account Count","type":"integer"},"active_activation_count":{"minimum":0,"title":"Active Activation Count","type":"integer"},"blockers":{"default":[],"items":{"type":"string"},"maxItems":10,"title":"Blockers","type":"array"},"warnings":{"default":[],"items":{"type":"string"},"maxItems":10,"title":"Warnings","type":"array"},"exact_approval_required":{"const":true,"default":true,"title":"Exact Approval Required","type":"boolean"},"executable":{"const":false,"default":false,"title":"Executable","type":"boolean"}},"required":["loop_id","name","current_status","step_count","target_account_count","active_activation_count"],"title":"LoopActivationPreviewV1","type":"object"}},"additionalProperties":false,"description":"V2 result for hiveloops.activation.preview.v2; preserves the established validators.","properties":{"preview":{"$ref":"#/$defs/LoopActivationPreviewV1"}},"required":["preview"],"title":"PublicHiveloopsActivationPreviewResultV2","type":"object"},"example":{"tool":"domain.campaign.v2","arguments":{"params":{"action":"invoke","operation":"hiveloops.activation.preview.v2","arguments":{"loop_id":"00000000-0000-4000-8000-000000000001"},"operation_id":"00000000-0000-4000-8000-000000000003"}},"notice":"Fictional fixture IDs and example text. Resolve real IDs, use returned preview tokens and approve exact side effects before execution. Input validation is not proof of provider readiness or a successful business outcome."},"workflow_steps":[],"approval_policy":"review_only_preflight_no_execution","idempotency_policy":"run_task_loop_preflight","gateway_credit_code":null,"identity":"Workspace, actor and consent come from OAuth; do not supply identity fields.","retry":"Keep the same operation and operation_id when retrying identical work. Reconcile an uncertain result before new work; never replay an old V1 write under a new V2 ID.","completion":"Check status, execution_state, error_code, output and evidence/resource references. Queued work is not complete: poll jobs.status.get.v2 in domain.workspace.v2. For read-back verification require read_back_verified=true where returned; reconcile failures without creating another object.","result_envelope":{"status":"completed | partial | cancelled | failed","execution_state":"terminal | queued | reconciliation_required","output":"Completed results validate against output_schema; partial/reconciliation results can contain incomplete evidence and must not be treated as completion.","billing":"gateway_credits_spent, downstream_settlement, job_id; pending downstream settlement is not a final cost","references":"run_id, invocation_id, resource_refs, evidence_refs"},"documentation":"https://www.hivekind.ai/docs/mcp/campaign#hiveloops-activation-preview-v2"},{"operation":"hiveloops.auto_draft.approve.v2","domain":"campaign","tool":"domain.campaign.v2","title":"Approve an auto-draft Hiveloop","purpose":"Approve a signal auto-draft Hiveloop. Still requires hiveloops.start.v2 to send.","side_effects":"Approves auto-draft. Does not send until start.","permission":"execute","required_scopes":["actions:execute"],"requires_operation_id":true,"billing":"No gateway rate is configured. Check the Core workflow preview/quote for downstream charges and final settlement.","required_resolved_fields":[],"next_call":{"tool":"domain.campaign.v2","arguments":{"params":{"action":"describe","operation":"hiveloops.auto_draft.approve.v2"}}},"catalog_revision":"07a373e389289e05","when_not_to_use":"Do not use this as a substitute for hiveloops.start.v2.","description":"Use when: Approve a signal auto-draft Hiveloop. Still requires hiveloops.start.v2 to send. Returns/does: Approves auto-draft. Does not send until start. Do not use when: Do not use this as a substitute for hiveloops.start.v2. Identity comes from OAuth. Resolve exact IDs; use typed enums and bounded limits. Billing: Gateway and downstream billing depend on the operation; check its preview/quote and returned billing.","input_schema":{"additionalProperties":false,"properties":{"action_proposal_id":{"anyOf":[{"format":"uuid","type":"string"},{"type":"null"}],"default":null,"description":"Optional. Hivekind fills this from the MCP consent grant.","title":"Action Proposal Id"},"loop_id":{"description":"Exact loop UUID returned by a Hivekind search, list, get, preview, or resource call.","format":"uuid","title":"Loop Id","type":"string"}},"required":["loop_id"],"title":"McpMcpPublicHiveloopsAutoDraftApproveInputV2","type":"object"},"output_schema":{"additionalProperties":false,"description":"V2 result for hiveloops.auto_draft.approve.v2; preserves the established validators.","properties":{"loop_id":{"format":"uuid","title":"Loop Id","type":"string"},"status":{"maxLength":64,"minLength":1,"title":"Status","type":"string"},"started":{"title":"Started","type":"boolean"}},"required":["loop_id","status","started"],"title":"PublicHiveloopsAutoDraftApproveResultV2","type":"object"},"example":{"tool":"domain.campaign.v2","arguments":{"params":{"action":"invoke","operation":"hiveloops.auto_draft.approve.v2","arguments":{"loop_id":"00000000-0000-4000-8000-000000000001"},"operation_id":"00000000-0000-4000-8000-000000000003"}},"notice":"Fictional fixture IDs and example text. Resolve real IDs, use returned preview tokens and approve exact side effects before execution. Input validation is not proof of provider readiness or a successful business outcome."},"workflow_steps":[],"approval_policy":"exact_scope_single_action","idempotency_policy":"approved_action_outbox","gateway_credit_code":null,"identity":"Workspace, actor and consent come from OAuth; do not supply identity fields.","retry":"Keep the same operation and operation_id when retrying identical work. Reconcile an uncertain result before new work; never replay an old V1 write under a new V2 ID.","completion":"Check status, execution_state, error_code, output and evidence/resource references. Queued work is not complete: poll jobs.status.get.v2 in domain.workspace.v2. For read-back verification require read_back_verified=true where returned; reconcile failures without creating another object.","result_envelope":{"status":"completed | partial | cancelled | failed","execution_state":"terminal | queued | reconciliation_required","output":"Completed results validate against output_schema; partial/reconciliation results can contain incomplete evidence and must not be treated as completion.","billing":"gateway_credits_spent, downstream_settlement, job_id; pending downstream settlement is not a final cost","references":"run_id, invocation_id, resource_refs, evidence_refs"},"documentation":"https://www.hivekind.ai/docs/mcp/campaign#hiveloops-auto_draft-approve-v2"},{"operation":"hiveloops.draft.create.v2","domain":"campaign","tool":"domain.campaign.v2","title":"Create a draft loop","purpose":"Create a draft Hiveloop without a campaign launch.","side_effects":"Creates a draft Hiveloop. Does not send.","permission":"execute","required_scopes":["actions:execute"],"requires_operation_id":true,"billing":"No gateway rate is configured. Check the Core workflow preview/quote for downstream charges and final settlement.","required_resolved_fields":[],"next_call":{"tool":"domain.campaign.v2","arguments":{"params":{"action":"describe","operation":"hiveloops.draft.create.v2"}}},"catalog_revision":"07a373e389289e05","when_not_to_use":"Prefer campaigns.launch.v2, which creates the campaign and Hiveloop together.","description":"Use when: Create a draft Hiveloop without a campaign launch. Returns/does: Creates a draft Hiveloop. Does not send. Do not use when: Prefer campaigns.launch.v2, which creates the campaign and Hiveloop together. Identity comes from OAuth. Resolve exact IDs; use typed enums and bounded limits. Billing: Gateway and downstream billing depend on the operation; check its preview/quote and returned billing.","input_schema":{"$defs":{"LoopProposalV1":{"additionalProperties":false,"properties":{"proposal_id":{"format":"uuid","title":"Proposal Id","type":"string"},"name":{"maxLength":255,"minLength":1,"title":"Name","type":"string"},"objective":{"maxLength":2000,"minLength":1,"title":"Objective","type":"string"},"target_personas":{"items":{"type":"string"},"title":"Target Personas","type":"array"},"tone":{"maxLength":64,"minLength":1,"title":"Tone","type":"string"},"template_id":{"anyOf":[{"format":"uuid","type":"string"},{"type":"null"}],"default":null,"title":"Template Id"},"steps":{"items":{"$ref":"#/$defs/LoopStepProposalV1"},"maxItems":6,"minItems":1,"title":"Steps","type":"array"},"requires_review":{"const":true,"default":true,"title":"Requires Review","type":"boolean"},"executed":{"const":false,"default":false,"title":"Executed","type":"boolean"}},"required":["proposal_id","name","objective","target_personas","tone","steps"],"title":"LoopProposalV1","type":"object"},"LoopStepProposalV1":{"additionalProperties":false,"properties":{"sequence":{"maximum":20,"minimum":1,"title":"Sequence","type":"integer"},"channel":{"maxLength":64,"minLength":1,"title":"Channel","type":"string"},"purpose":{"maxLength":500,"minLength":1,"title":"Purpose","type":"string"},"delay_days":{"maximum":90,"minimum":0,"title":"Delay Days","type":"integer"}},"required":["sequence","channel","purpose","delay_days"],"title":"LoopStepProposalV1","type":"object"}},"additionalProperties":false,"properties":{"action_proposal_id":{"anyOf":[{"format":"uuid","type":"string"},{"type":"null"}],"default":null,"description":"Optional. Hivekind fills this from the MCP consent grant.","title":"Action Proposal Id"},"loop_proposal":{"$ref":"#/$defs/LoopProposalV1","description":"Loop proposal used by the public hiveloops draft create input v2 operation."}},"required":["loop_proposal"],"title":"McpMcpPublicHiveloopsDraftCreateInputV2","type":"object"},"output_schema":{"additionalProperties":false,"description":"V2 result for hiveloops.draft.create.v2; preserves the established validators.","properties":{"loop_id":{"format":"uuid","title":"Loop Id","type":"string"},"status":{"const":"draft","default":"draft","title":"Status","type":"string"},"name":{"maxLength":255,"minLength":1,"title":"Name","type":"string"},"reversible":{"const":true,"default":true,"title":"Reversible","type":"boolean"}},"required":["loop_id","name"],"title":"PublicHiveloopsDraftCreateResultV2","type":"object"},"example":{"tool":"domain.campaign.v2","arguments":{"params":{"action":"invoke","operation":"hiveloops.draft.create.v2","arguments":{"loop_proposal":{"name":"Example name","objective":"Example objective","proposal_id":"00000000-0000-4000-8000-000000000001","steps":[{"channel":"Example channel","delay_days":1,"purpose":"Example purpose","sequence":1}],"target_personas":["Example target personas"],"tone":"Example tone"}},"operation_id":"00000000-0000-4000-8000-000000000003"}},"notice":"Fictional fixture IDs and example text. Resolve real IDs, use returned preview tokens and approve exact side effects before execution. Input validation is not proof of provider readiness or a successful business outcome."},"workflow_steps":[],"approval_policy":"exact_scope_single_action","idempotency_policy":"approved_action_outbox","gateway_credit_code":null,"identity":"Workspace, actor and consent come from OAuth; do not supply identity fields.","retry":"Keep the same operation and operation_id when retrying identical work. Reconcile an uncertain result before new work; never replay an old V1 write under a new V2 ID.","completion":"Check status, execution_state, error_code, output and evidence/resource references. Queued work is not complete: poll jobs.status.get.v2 in domain.workspace.v2. For read-back verification require read_back_verified=true where returned; reconcile failures without creating another object.","result_envelope":{"status":"completed | partial | cancelled | failed","execution_state":"terminal | queued | reconciliation_required","output":"Completed results validate against output_schema; partial/reconciliation results can contain incomplete evidence and must not be treated as completion.","billing":"gateway_credits_spent, downstream_settlement, job_id; pending downstream settlement is not a final cost","references":"run_id, invocation_id, resource_refs, evidence_refs"},"documentation":"https://www.hivekind.ai/docs/mcp/campaign#hiveloops-draft-create-v2"},{"operation":"hiveloops.pause.v2","domain":"campaign","tool":"domain.campaign.v2","title":"Pause a Hiveloop","purpose":"Pause sending on one in-flight Hiveloop.","side_effects":"Stops sending on that Hiveloop.","permission":"execute","required_scopes":["actions:execute"],"requires_operation_id":true,"billing":"No gateway rate is configured. Check the Core workflow preview/quote for downstream charges and final settlement.","required_resolved_fields":[],"next_call":{"tool":"domain.campaign.v2","arguments":{"params":{"action":"describe","operation":"hiveloops.pause.v2"}}},"catalog_revision":"07a373e389289e05","when_not_to_use":"To pause the whole campaign program, use campaigns.pause.v2.","description":"Use when: Pause sending on one in-flight Hiveloop. Returns/does: Stops sending on that Hiveloop. Do not use when: To pause the whole campaign program, use campaigns.pause.v2. Identity comes from OAuth. Resolve exact IDs; use typed enums and bounded limits. Billing: Gateway and downstream billing depend on the operation; check its preview/quote and returned billing.","input_schema":{"additionalProperties":false,"properties":{"action_proposal_id":{"anyOf":[{"format":"uuid","type":"string"},{"type":"null"}],"default":null,"description":"Optional. Hivekind fills this from the MCP consent grant.","title":"Action Proposal Id"},"loop_id":{"description":"Exact loop UUID returned by a Hivekind search, list, get, preview, or resource call.","format":"uuid","title":"Loop Id","type":"string"},"expected_status":{"const":"active","default":"active","description":"Expected status used by the public hiveloops pause input v2 operation.","title":"Expected Status","type":"string"}},"required":["loop_id"],"title":"McpMcpPublicHiveloopsPauseInputV2","type":"object"},"output_schema":{"additionalProperties":false,"description":"V2 result for hiveloops.pause.v2; preserves the established validators.","properties":{"loop_id":{"format":"uuid","title":"Loop Id","type":"string"},"name":{"maxLength":255,"minLength":1,"title":"Name","type":"string"},"previous_status":{"const":"active","default":"active","title":"Previous Status","type":"string"},"status":{"const":"paused","default":"paused","title":"Status","type":"string"}},"required":["loop_id","name"],"title":"PublicHiveloopsPauseResultV2","type":"object"},"example":{"tool":"domain.campaign.v2","arguments":{"params":{"action":"invoke","operation":"hiveloops.pause.v2","arguments":{"loop_id":"00000000-0000-4000-8000-000000000001"},"operation_id":"00000000-0000-4000-8000-000000000003"}},"notice":"Fictional fixture IDs and example text. Resolve real IDs, use returned preview tokens and approve exact side effects before execution. Input validation is not proof of provider readiness or a successful business outcome."},"workflow_steps":[],"approval_policy":"exact_scope_single_action","idempotency_policy":"approved_action_outbox","gateway_credit_code":null,"identity":"Workspace, actor and consent come from OAuth; do not supply identity fields.","retry":"Keep the same operation and operation_id when retrying identical work. Reconcile an uncertain result before new work; never replay an old V1 write under a new V2 ID.","completion":"Check status, execution_state, error_code, output and evidence/resource references. Queued work is not complete: poll jobs.status.get.v2 in domain.workspace.v2. For read-back verification require read_back_verified=true where returned; reconcile failures without creating another object.","result_envelope":{"status":"completed | partial | cancelled | failed","execution_state":"terminal | queued | reconciliation_required","output":"Completed results validate against output_schema; partial/reconciliation results can contain incomplete evidence and must not be treated as completion.","billing":"gateway_credits_spent, downstream_settlement, job_id; pending downstream settlement is not a final cost","references":"run_id, invocation_id, resource_refs, evidence_refs"},"documentation":"https://www.hivekind.ai/docs/mcp/campaign#hiveloops-pause-v2"},{"operation":"hiveloops.propose.v2","domain":"campaign","tool":"domain.campaign.v2","title":"Propose a loop","purpose":"Preview a Hiveloop proposal without creating it.","side_effects":"May change workspace state or start work; describe before invoking.","permission":"propose","required_scopes":["runs:create"],"requires_operation_id":true,"billing":"No gateway rate is configured. Check the Core workflow preview/quote for downstream charges and final settlement.","required_resolved_fields":[],"next_call":{"tool":"domain.campaign.v2","arguments":{"params":{"action":"describe","operation":"hiveloops.propose.v2"}}},"catalog_revision":"07a373e389289e05","when_not_to_use":"To create and prepare outreach, use campaigns.launch.v2 instead of this plus many follow-up tools.","description":"Use when: Preview a Hiveloop proposal without creating it. Returns/does: Changes workspace state or starts work; review the exact contract and approval requirements. Do not use when: To create and prepare outreach, use campaigns.launch.v2 instead of this plus many follow-up tools. Identity comes from OAuth. Resolve exact IDs; use typed enums and bounded limits. Billing: Gateway and downstream billing depend on the operation; check its preview/quote and returned billing.","input_schema":{"additionalProperties":false,"properties":{"objective":{"description":"Plain-language outcome the user wants from this operation.","maxLength":2000,"minLength":1,"title":"Objective","type":"string"},"target_personas":{"description":"Target personas used by the public hiveloops propose input v2 operation.","items":{"type":"string"},"maxItems":10,"minItems":1,"title":"Target Personas","type":"array"},"tone":{"default":"professional","description":"Tone used by the public hiveloops propose input v2 operation.","maxLength":64,"minLength":1,"title":"Tone","type":"string"},"template_id":{"anyOf":[{"format":"uuid","type":"string"},{"type":"null"}],"default":null,"description":"Exact template UUID returned by a Hivekind search, list, get, preview, or resource call.","title":"Template Id"},"maximum_touchpoints":{"default":3,"description":"Maximum touchpoints used to bound matching records.","maximum":6,"minimum":1,"title":"Maximum Touchpoints","type":"integer"},"route_key":{"anyOf":[{"pattern":"^[a-z][a-z0-9_.-]{2,127}$","type":"string"},{"type":"null"}],"default":null,"description":"Route key used by the public hiveloops propose input v2 operation.","title":"Route Key"},"channels":{"default":[],"description":"Channels used by the public hiveloops propose input v2 operation.","items":{"type":"string"},"maxItems":3,"title":"Channels","type":"array"}},"required":["objective","target_personas"],"title":"McpPublicHiveloopsProposeInputV2","type":"object"},"output_schema":{"$defs":{"LoopProposalV1":{"additionalProperties":false,"properties":{"proposal_id":{"format":"uuid","title":"Proposal Id","type":"string"},"name":{"maxLength":255,"minLength":1,"title":"Name","type":"string"},"objective":{"maxLength":2000,"minLength":1,"title":"Objective","type":"string"},"target_personas":{"items":{"type":"string"},"title":"Target Personas","type":"array"},"tone":{"maxLength":64,"minLength":1,"title":"Tone","type":"string"},"template_id":{"anyOf":[{"format":"uuid","type":"string"},{"type":"null"}],"default":null,"title":"Template Id"},"steps":{"items":{"$ref":"#/$defs/LoopStepProposalV1"},"maxItems":6,"minItems":1,"title":"Steps","type":"array"},"requires_review":{"const":true,"default":true,"title":"Requires Review","type":"boolean"},"executed":{"const":false,"default":false,"title":"Executed","type":"boolean"}},"required":["proposal_id","name","objective","target_personas","tone","steps"],"title":"LoopProposalV1","type":"object"},"LoopStepProposalV1":{"additionalProperties":false,"properties":{"sequence":{"maximum":20,"minimum":1,"title":"Sequence","type":"integer"},"channel":{"maxLength":64,"minLength":1,"title":"Channel","type":"string"},"purpose":{"maxLength":500,"minLength":1,"title":"Purpose","type":"string"},"delay_days":{"maximum":90,"minimum":0,"title":"Delay Days","type":"integer"}},"required":["sequence","channel","purpose","delay_days"],"title":"LoopStepProposalV1","type":"object"}},"additionalProperties":false,"description":"V2 result for hiveloops.propose.v2; preserves the established validators.","properties":{"proposal":{"$ref":"#/$defs/LoopProposalV1"}},"required":["proposal"],"title":"PublicHiveloopsProposeResultV2","type":"object"},"example":{"tool":"domain.campaign.v2","arguments":{"params":{"action":"invoke","operation":"hiveloops.propose.v2","arguments":{"objective":"Example objective","target_personas":["Example target personas"]},"operation_id":"00000000-0000-4000-8000-000000000003"}},"notice":"Fictional fixture IDs and example text. Resolve real IDs, use returned preview tokens and approve exact side effects before execution. Input validation is not proof of provider readiness or a successful business outcome."},"workflow_steps":[],"approval_policy":null,"idempotency_policy":"run_task_proposal","gateway_credit_code":null,"identity":"Workspace, actor and consent come from OAuth; do not supply identity fields.","retry":"Keep the same operation and operation_id when retrying identical work. Reconcile an uncertain result before new work; never replay an old V1 write under a new V2 ID.","completion":"Check status, execution_state, error_code, output and evidence/resource references. Queued work is not complete: poll jobs.status.get.v2 in domain.workspace.v2. For read-back verification require read_back_verified=true where returned; reconcile failures without creating another object.","result_envelope":{"status":"completed | partial | cancelled | failed","execution_state":"terminal | queued | reconciliation_required","output":"Completed results validate against output_schema; partial/reconciliation results can contain incomplete evidence and must not be treated as completion.","billing":"gateway_credits_spent, downstream_settlement, job_id; pending downstream settlement is not a final cost","references":"run_id, invocation_id, resource_refs, evidence_refs"},"documentation":"https://www.hivekind.ai/docs/mcp/campaign#hiveloops-propose-v2"},{"operation":"hiveloops.resume.v2","domain":"campaign","tool":"domain.campaign.v2","title":"Resume a Hiveloop","purpose":"Resume a paused Hiveloop.","side_effects":"Resumes the Hiveloop.","permission":"execute","required_scopes":["actions:execute"],"requires_operation_id":true,"billing":"No gateway rate is configured. Check the Core workflow preview/quote for downstream charges and final settlement.","required_resolved_fields":[],"next_call":{"tool":"domain.campaign.v2","arguments":{"params":{"action":"describe","operation":"hiveloops.resume.v2"}}},"catalog_revision":"07a373e389289e05","when_not_to_use":"Use campaigns.resume.v2 to resume the parent campaign.","description":"Use when: Resume a paused Hiveloop. Returns/does: Resumes the Hiveloop. Do not use when: Use campaigns.resume.v2 to resume the parent campaign. Identity comes from OAuth. Resolve exact IDs; use typed enums and bounded limits. Billing: Gateway and downstream billing depend on the operation; check its preview/quote and returned billing.","input_schema":{"additionalProperties":false,"properties":{"action_proposal_id":{"anyOf":[{"format":"uuid","type":"string"},{"type":"null"}],"default":null,"description":"Optional. Hivekind fills this from the MCP consent grant.","title":"Action Proposal Id"},"loop_id":{"description":"Exact loop UUID returned by a Hivekind search, list, get, preview, or resource call.","format":"uuid","title":"Loop Id","type":"string"},"expected_status":{"const":"paused","default":"paused","description":"Expected status used by the public hiveloops resume input v2 operation.","title":"Expected Status","type":"string"}},"required":["loop_id"],"title":"McpMcpPublicHiveloopsResumeInputV2","type":"object"},"output_schema":{"additionalProperties":false,"description":"V2 result for hiveloops.resume.v2; preserves the established validators.","properties":{"loop_id":{"format":"uuid","title":"Loop Id","type":"string"},"name":{"maxLength":255,"minLength":1,"title":"Name","type":"string"},"status":{"maxLength":64,"minLength":1,"title":"Status","type":"string"}},"required":["loop_id","name","status"],"title":"PublicHiveloopsResumeResultV2","type":"object"},"example":{"tool":"domain.campaign.v2","arguments":{"params":{"action":"invoke","operation":"hiveloops.resume.v2","arguments":{"loop_id":"00000000-0000-4000-8000-000000000001"},"operation_id":"00000000-0000-4000-8000-000000000003"}},"notice":"Fictional fixture IDs and example text. Resolve real IDs, use returned preview tokens and approve exact side effects before execution. Input validation is not proof of provider readiness or a successful business outcome."},"workflow_steps":[],"approval_policy":"exact_scope_single_action","idempotency_policy":"approved_action_outbox","gateway_credit_code":null,"identity":"Workspace, actor and consent come from OAuth; do not supply identity fields.","retry":"Keep the same operation and operation_id when retrying identical work. Reconcile an uncertain result before new work; never replay an old V1 write under a new V2 ID.","completion":"Check status, execution_state, error_code, output and evidence/resource references. Queued work is not complete: poll jobs.status.get.v2 in domain.workspace.v2. For read-back verification require read_back_verified=true where returned; reconcile failures without creating another object.","result_envelope":{"status":"completed | partial | cancelled | failed","execution_state":"terminal | queued | reconciliation_required","output":"Completed results validate against output_schema; partial/reconciliation results can contain incomplete evidence and must not be treated as completion.","billing":"gateway_credits_spent, downstream_settlement, job_id; pending downstream settlement is not a final cost","references":"run_id, invocation_id, resource_refs, evidence_refs"},"documentation":"https://www.hivekind.ai/docs/mcp/campaign#hiveloops-resume-v2"},{"operation":"hiveloops.sendability.get.v2","domain":"campaign","tool":"domain.campaign.v2","title":"Get Hiveloop sendability","purpose":"You have an exact Hiveloop ID and need readiness blockers immediately before starting or resuming sends.","side_effects":"Returns current readiness and blockers. Read only.","permission":"read","required_scopes":["runs:read"],"requires_operation_id":false,"billing":"No gateway credit charge; reads saved workspace data without starting paid provider work.","required_resolved_fields":[],"next_call":{"tool":"domain.campaign.v2","arguments":{"params":{"action":"describe","operation":"hiveloops.sendability.get.v2"}}},"catalog_revision":"07a373e389289e05","when_not_to_use":"You need general campaign status or want to bypass a blocker.","description":"Use when: You have an exact Hiveloop ID and need readiness blockers immediately before starting or resuming sends. Returns/does: Returns current readiness and blockers. Read only. Do not use when: You need general campaign status or want to bypass a blocker. Identity comes from OAuth. Resolve exact IDs; use typed enums and bounded limits. Billing: Gateway and downstream billing depend on the operation; check its preview/quote and returned billing.","input_schema":{"additionalProperties":false,"properties":{"loop_id":{"description":"Exact loop UUID returned by a Hivekind search, list, get, preview, or resource call.","format":"uuid","title":"Loop Id","type":"string"}},"required":["loop_id"],"title":"McpHiveloopsSendabilityGetInputV2","type":"object"},"output_schema":{"additionalProperties":false,"properties":{"loop_id":{"format":"uuid","title":"Loop Id","type":"string"},"status":{"maxLength":64,"minLength":1,"title":"Status","type":"string"},"ready":{"title":"Ready","type":"boolean"},"blockers":{"default":[],"items":{"type":"string"},"maxItems":20,"title":"Blockers","type":"array"}},"required":["loop_id","status","ready"],"title":"HiveloopsSendabilityGetResultV2","type":"object"},"example":{"tool":"domain.campaign.v2","arguments":{"params":{"action":"invoke","operation":"hiveloops.sendability.get.v2","arguments":{"loop_id":"00000000-0000-4000-8000-000000000001"},"operation_id":"00000000-0000-4000-8000-000000000003"}},"notice":"Fictional fixture IDs and example text. Resolve real IDs, use returned preview tokens and approve exact side effects before execution. Input validation is not proof of provider readiness or a successful business outcome."},"workflow_steps":[],"approval_policy":null,"idempotency_policy":"read_only","gateway_credit_code":null,"identity":"Workspace, actor and consent come from OAuth; do not supply identity fields.","retry":"Keep the same operation and operation_id when retrying identical work. Reconcile an uncertain result before new work; never replay an old V1 write under a new V2 ID.","completion":"Check status, execution_state, error_code, output and evidence/resource references. Queued work is not complete: poll jobs.status.get.v2 in domain.workspace.v2. For read-back verification require read_back_verified=true where returned; reconcile failures without creating another object.","result_envelope":{"status":"completed | partial | cancelled | failed","execution_state":"terminal | queued | reconciliation_required","output":"Completed results validate against output_schema; partial/reconciliation results can contain incomplete evidence and must not be treated as completion.","billing":"gateway_credits_spent, downstream_settlement, job_id; pending downstream settlement is not a final cost","references":"run_id, invocation_id, resource_refs, evidence_refs"},"documentation":"https://www.hivekind.ai/docs/mcp/campaign#hiveloops-sendability-get-v2"},{"operation":"hiveloops.start.v2","domain":"campaign","tool":"domain.campaign.v2","title":"Start a Hiveloop","purpose":"The exact Hiveloop is sendable and the user explicitly approved starting provider sends.","side_effects":"Starts outbound sending as the user. This provider action cannot be unsent.","permission":"execute","required_scopes":["actions:execute"],"requires_operation_id":true,"billing":"No gateway rate is configured. Check the Core workflow preview/quote for downstream charges and final settlement.","required_resolved_fields":[],"next_call":{"tool":"domain.campaign.v2","arguments":{"params":{"action":"describe","operation":"hiveloops.start.v2"}}},"catalog_revision":"07a373e389289e05","when_not_to_use":"Sendability is unknown or blocked, or you only want drafts, previews, or scheduling.","description":"Use when: The exact Hiveloop is sendable and the user explicitly approved starting provider sends. Returns/does: Starts outbound sending as the user. This provider action cannot be unsent. Do not use when: Sendability is unknown or blocked, or you only want drafts, previews, or scheduling. Identity comes from OAuth. Resolve exact IDs; use typed enums and bounded limits. Billing: Gateway and downstream billing depend on the operation; check its preview/quote and returned billing.","input_schema":{"additionalProperties":false,"properties":{"action_proposal_id":{"anyOf":[{"format":"uuid","type":"string"},{"type":"null"}],"default":null,"description":"Optional. Hivekind fills this from the MCP consent grant.","title":"Action Proposal Id"},"loop_id":{"description":"Exact loop UUID returned by a Hivekind search, list, get, preview, or resource call.","format":"uuid","title":"Loop Id","type":"string"},"contact_ids":{"default":[],"description":"Exact contact UUIDs returned by a Hivekind search, list, get, preview, or resource call.","items":{"format":"uuid","type":"string"},"maxItems":200,"title":"Contact Ids","type":"array"}},"required":["loop_id"],"title":"McpMcpHiveloopsStartInputV2","type":"object"},"output_schema":{"additionalProperties":false,"properties":{"loop_id":{"format":"uuid","title":"Loop Id","type":"string"},"status":{"maxLength":64,"minLength":1,"title":"Status","type":"string"},"started":{"title":"Started","type":"boolean"}},"required":["loop_id","status","started"],"title":"HiveloopsStartResultV2","type":"object"},"example":{"tool":"domain.campaign.v2","arguments":{"params":{"action":"invoke","operation":"hiveloops.start.v2","arguments":{"loop_id":"00000000-0000-4000-8000-000000000001"},"operation_id":"00000000-0000-4000-8000-000000000003"}},"notice":"Fictional fixture IDs and example text. Resolve real IDs, use returned preview tokens and approve exact side effects before execution. Input validation is not proof of provider readiness or a successful business outcome."},"workflow_steps":[],"approval_policy":"exact_scope_single_action","idempotency_policy":"approved_action_outbox","gateway_credit_code":null,"identity":"Workspace, actor and consent come from OAuth; do not supply identity fields.","retry":"Keep the same operation and operation_id when retrying identical work. Reconcile an uncertain result before new work; never replay an old V1 write under a new V2 ID.","completion":"Check status, execution_state, error_code, output and evidence/resource references. Queued work is not complete: poll jobs.status.get.v2 in domain.workspace.v2. For read-back verification require read_back_verified=true where returned; reconcile failures without creating another object.","result_envelope":{"status":"completed | partial | cancelled | failed","execution_state":"terminal | queued | reconciliation_required","output":"Completed results validate against output_schema; partial/reconciliation results can contain incomplete evidence and must not be treated as completion.","billing":"gateway_credits_spent, downstream_settlement, job_id; pending downstream settlement is not a final cost","references":"run_id, invocation_id, resource_refs, evidence_refs"},"documentation":"https://www.hivekind.ai/docs/mcp/campaign#hiveloops-start-v2"},{"operation":"hiveloops.status.get.v2","domain":"campaign","tool":"domain.campaign.v2","title":"Get Hiveloop status","purpose":"Load one Hiveloop by id when resource reads are unavailable.","side_effects":"Reads current workspace state.","permission":"read","required_scopes":["runs:read"],"requires_operation_id":false,"billing":"No gateway credit charge; reads saved workspace data without starting paid provider work.","required_resolved_fields":[],"next_call":{"tool":"domain.campaign.v2","arguments":{"params":{"action":"describe","operation":"hiveloops.status.get.v2"}}},"catalog_revision":"07a373e389289e05","when_not_to_use":"Prefer hivekind://hiveloop/{id}. Use hiveloops.sendability.get.v2 to know if it can send.","description":"Use when: Load one Hiveloop by id when resource reads are unavailable. Returns/does: Reads the current authorized workspace state. Do not use when: Prefer hivekind://hiveloop/{id}. Use hiveloops.sendability.get.v2 to know if it can send. Identity comes from OAuth. Resolve exact IDs; use typed enums and bounded limits. Billing: Gateway and downstream billing depend on the operation; check its preview/quote and returned billing.","input_schema":{"additionalProperties":false,"properties":{"loop_id":{"description":"Exact loop UUID returned by a Hivekind search, list, get, preview, or resource call.","format":"uuid","title":"Loop Id","type":"string"}},"required":["loop_id"],"title":"McpPublicHiveloopsStatusGetInputV2","type":"object"},"output_schema":{"$defs":{"LoopStatusSnapshotV1":{"additionalProperties":false,"properties":{"loop_id":{"format":"uuid","title":"Loop Id","type":"string"},"name":{"maxLength":255,"minLength":1,"title":"Name","type":"string"},"status":{"maxLength":64,"minLength":1,"title":"Status","type":"string"}},"required":["loop_id","name","status"],"title":"LoopStatusSnapshotV1","type":"object"}},"additionalProperties":false,"description":"V2 result for hiveloops.status.get.v2; preserves the established validators.","properties":{"loop":{"$ref":"#/$defs/LoopStatusSnapshotV1"}},"required":["loop"],"title":"PublicHiveloopsStatusGetResultV2","type":"object"},"example":{"tool":"domain.campaign.v2","arguments":{"params":{"action":"invoke","operation":"hiveloops.status.get.v2","arguments":{"loop_id":"00000000-0000-4000-8000-000000000001"},"operation_id":"00000000-0000-4000-8000-000000000003"}},"notice":"Fictional fixture IDs and example text. Resolve real IDs, use returned preview tokens and approve exact side effects before execution. Input validation is not proof of provider readiness or a successful business outcome."},"workflow_steps":[],"approval_policy":null,"idempotency_policy":"read_only","gateway_credit_code":null,"identity":"Workspace, actor and consent come from OAuth; do not supply identity fields.","retry":"Keep the same operation and operation_id when retrying identical work. Reconcile an uncertain result before new work; never replay an old V1 write under a new V2 ID.","completion":"Check status, execution_state, error_code, output and evidence/resource references. Queued work is not complete: poll jobs.status.get.v2 in domain.workspace.v2. For read-back verification require read_back_verified=true where returned; reconcile failures without creating another object.","result_envelope":{"status":"completed | partial | cancelled | failed","execution_state":"terminal | queued | reconciliation_required","output":"Completed results validate against output_schema; partial/reconciliation results can contain incomplete evidence and must not be treated as completion.","billing":"gateway_credits_spent, downstream_settlement, job_id; pending downstream settlement is not a final cost","references":"run_id, invocation_id, resource_refs, evidence_refs"},"documentation":"https://www.hivekind.ai/docs/mcp/campaign#hiveloops-status-get-v2"},{"operation":"hiveloops.timeline.get.v2","domain":"campaign","tool":"domain.campaign.v2","title":"Loop and contact touch timeline","purpose":"Use the existing Core workflow: Loop and contact touch timeline. Existing loop timeline; not all campaigns and rep activity joined across an account.","side_effects":"Read only.","permission":"read","required_scopes":["accounts:read"],"requires_operation_id":false,"billing":"No gateway credit charge; reads saved workspace data without starting paid provider work.","required_resolved_fields":[],"next_call":{"tool":"domain.campaign.v2","arguments":{"params":{"action":"describe","operation":"hiveloops.timeline.get.v2"}}},"catalog_revision":"07a373e389289e05","when_not_to_use":"Do not infer unsupported history, attribution, or commitments from this response.","description":"Use when: Use the existing Core workflow: Loop and contact touch timeline. Existing loop timeline; not all campaigns and rep activity joined across an account. Returns/does: Read only. Do not use when: Do not infer unsupported history, attribution, or commitments from this response. Identity comes from OAuth. Resolve exact IDs; use typed enums and bounded limits. Billing: Gateway and downstream billing depend on the operation; check its preview/quote and returned billing.","input_schema":{"additionalProperties":false,"properties":{"loop_id":{"description":"Exact existing resource UUID; resolve it before invoking.","format":"uuid","title":"Loop Id","type":"string"},"contact_id":{"anyOf":[{"format":"uuid","type":"string"},{"type":"null"}],"default":null,"description":"Exact contact UUID returned by a Hivekind search, list, get, preview, or resource call.","title":"Contact Id"},"limit":{"default":50,"description":"Maximum number of records to return in this page.","maximum":500,"minimum":1,"title":"Limit","type":"integer"}},"required":["loop_id"],"title":"McpPublicHiveloopsTimelineGetInputV2","type":"object"},"output_schema":{"additionalProperties":false,"description":"V2 result for hiveloops.timeline.get.v2; preserves the established validators.","properties":{"title":{"title":"Title","type":"string"},"data":{"additionalProperties":true,"title":"Data","type":"object"},"limitations":{"title":"Limitations","type":"string"},"applied_parameters":{"additionalProperties":true,"title":"Applied Parameters","type":"object"},"source_path":{"title":"Source Path","type":"string"},"job_id":{"anyOf":[{"type":"string"},{"type":"null"}],"default":null,"description":"Core job identifier when an operation enqueues work; poll jobs.status.get.v2 and read the resulting resource.","title":"Job Id"},"queued":{"default":false,"title":"Queued","type":"boolean"},"outcome_status":{"default":"partial","enum":["completed","partial","needs_input","awaiting_approval"],"title":"Outcome Status","type":"string"},"read_back_verified":{"default":false,"title":"Read Back Verified","type":"boolean"},"verification_message":{"anyOf":[{"type":"string"},{"type":"null"}],"default":null,"title":"Verification Message"}},"required":["title","data","limitations","source_path"],"title":"PublicHiveloopsTimelineGetResultV2","type":"object"},"example":{"tool":"domain.campaign.v2","arguments":{"params":{"action":"invoke","operation":"hiveloops.timeline.get.v2","arguments":{"loop_id":"00000000-0000-4000-8000-000000000001"},"operation_id":"00000000-0000-4000-8000-000000000003"}},"notice":"Fictional fixture IDs and example text. Resolve real IDs, use returned preview tokens and approve exact side effects before execution. Input validation is not proof of provider readiness or a successful business outcome."},"workflow_steps":[],"approval_policy":null,"idempotency_policy":"caller_operation","gateway_credit_code":null,"identity":"Workspace, actor and consent come from OAuth; do not supply identity fields.","retry":"Keep the same operation and operation_id when retrying identical work. Reconcile an uncertain result before new work; never replay an old V1 write under a new V2 ID.","completion":"Check status, execution_state, error_code, output and evidence/resource references. Queued work is not complete: poll jobs.status.get.v2 in domain.workspace.v2. For read-back verification require read_back_verified=true where returned; reconcile failures without creating another object.","result_envelope":{"status":"completed | partial | cancelled | failed","execution_state":"terminal | queued | reconciliation_required","output":"Completed results validate against output_schema; partial/reconciliation results can contain incomplete evidence and must not be treated as completion.","billing":"gateway_credits_spent, downstream_settlement, job_id; pending downstream settlement is not a final cost","references":"run_id, invocation_id, resource_refs, evidence_refs"},"documentation":"https://www.hivekind.ai/docs/mcp/campaign#hiveloops-timeline-get-v2"},{"operation":"icp.account.breakdown.get.v2","domain":"intelligence","tool":"domain.intelligence.v2","title":"Account score evidence and rubric","purpose":"Use the existing Core workflow: Account score evidence and rubric. Existing score breakdown and the rubric actually used, not new evaluation.","side_effects":"Read only.","permission":"read","required_scopes":["accounts:read"],"requires_operation_id":false,"billing":"No gateway credit charge; reads saved workspace data without starting paid provider work.","required_resolved_fields":[],"next_call":{"tool":"domain.intelligence.v2","arguments":{"params":{"action":"describe","operation":"icp.account.breakdown.get.v2"}}},"catalog_revision":"07a373e389289e05","when_not_to_use":"Do not infer unsupported history, attribution, or commitments from this response.","description":"Use when: Use the existing Core workflow: Account score evidence and rubric. Existing score breakdown and the rubric actually used, not new evaluation. Returns/does: Read only. Do not use when: Do not infer unsupported history, attribution, or commitments from this response. Identity comes from OAuth. Resolve exact IDs; use typed enums and bounded limits. Billing: Gateway and downstream billing depend on the operation; check its preview/quote and returned billing.","input_schema":{"additionalProperties":false,"properties":{"account_id":{"description":"Exact existing resource UUID; resolve it before invoking.","format":"uuid","title":"Account Id","type":"string"}},"required":["account_id"],"title":"McpPublicIcpAccountBreakdownGetInputV2","type":"object"},"output_schema":{"additionalProperties":false,"description":"V2 result for icp.account.breakdown.get.v2; preserves the established validators.","properties":{"title":{"title":"Title","type":"string"},"data":{"additionalProperties":true,"title":"Data","type":"object"},"limitations":{"title":"Limitations","type":"string"},"applied_parameters":{"additionalProperties":true,"title":"Applied Parameters","type":"object"},"source_path":{"title":"Source Path","type":"string"},"job_id":{"anyOf":[{"type":"string"},{"type":"null"}],"default":null,"description":"Core job identifier when an operation enqueues work; poll jobs.status.get.v2 and read the resulting resource.","title":"Job Id"},"queued":{"default":false,"title":"Queued","type":"boolean"},"outcome_status":{"default":"partial","enum":["completed","partial","needs_input","awaiting_approval"],"title":"Outcome Status","type":"string"},"read_back_verified":{"default":false,"title":"Read Back Verified","type":"boolean"},"verification_message":{"anyOf":[{"type":"string"},{"type":"null"}],"default":null,"title":"Verification Message"}},"required":["title","data","limitations","source_path"],"title":"PublicIcpAccountBreakdownGetResultV2","type":"object"},"example":{"tool":"domain.intelligence.v2","arguments":{"params":{"action":"invoke","operation":"icp.account.breakdown.get.v2","arguments":{"account_id":"00000000-0000-4000-8000-000000000001"},"operation_id":"00000000-0000-4000-8000-000000000003"}},"notice":"Fictional fixture IDs and example text. Resolve real IDs, use returned preview tokens and approve exact side effects before execution. Input validation is not proof of provider readiness or a successful business outcome."},"workflow_steps":[],"approval_policy":null,"idempotency_policy":"caller_operation","gateway_credit_code":null,"identity":"Workspace, actor and consent come from OAuth; do not supply identity fields.","retry":"Keep the same operation and operation_id when retrying identical work. Reconcile an uncertain result before new work; never replay an old V1 write under a new V2 ID.","completion":"Check status, execution_state, error_code, output and evidence/resource references. Queued work is not complete: poll jobs.status.get.v2 in domain.workspace.v2. For read-back verification require read_back_verified=true where returned; reconcile failures without creating another object.","result_envelope":{"status":"completed | partial | cancelled | failed","execution_state":"terminal | queued | reconciliation_required","output":"Completed results validate against output_schema; partial/reconciliation results can contain incomplete evidence and must not be treated as completion.","billing":"gateway_credits_spent, downstream_settlement, job_id; pending downstream settlement is not a final cost","references":"run_id, invocation_id, resource_refs, evidence_refs"},"documentation":"https://www.hivekind.ai/docs/mcp/intelligence#icp-account-breakdown-get-v2"},{"operation":"icp.account.history.get.v2","domain":"intelligence","tool":"domain.intelligence.v2","title":"Account score and rubric version history","purpose":"Use the existing Core workflow: Account score and rubric version history. Existing per-run score history; not historical win/loss cohort attribution.","side_effects":"Read only.","permission":"read","required_scopes":["accounts:read"],"requires_operation_id":false,"billing":"No gateway credit charge; reads saved workspace data without starting paid provider work.","required_resolved_fields":[],"next_call":{"tool":"domain.intelligence.v2","arguments":{"params":{"action":"describe","operation":"icp.account.history.get.v2"}}},"catalog_revision":"07a373e389289e05","when_not_to_use":"Do not infer unsupported history, attribution, or commitments from this response.","description":"Use when: Use the existing Core workflow: Account score and rubric version history. Existing per-run score history; not historical win/loss cohort attribution. Returns/does: Read only. Do not use when: Do not infer unsupported history, attribution, or commitments from this response. Identity comes from OAuth. Resolve exact IDs; use typed enums and bounded limits. Billing: Gateway and downstream billing depend on the operation; check its preview/quote and returned billing.","input_schema":{"additionalProperties":false,"properties":{"account_id":{"description":"Exact existing resource UUID; resolve it before invoking.","format":"uuid","title":"Account Id","type":"string"}},"required":["account_id"],"title":"McpPublicIcpAccountHistoryGetInputV2","type":"object"},"output_schema":{"additionalProperties":false,"description":"V2 result for icp.account.history.get.v2; preserves the established validators.","properties":{"title":{"title":"Title","type":"string"},"data":{"additionalProperties":true,"title":"Data","type":"object"},"limitations":{"title":"Limitations","type":"string"},"applied_parameters":{"additionalProperties":true,"title":"Applied Parameters","type":"object"},"source_path":{"title":"Source Path","type":"string"},"job_id":{"anyOf":[{"type":"string"},{"type":"null"}],"default":null,"description":"Core job identifier when an operation enqueues work; poll jobs.status.get.v2 and read the resulting resource.","title":"Job Id"},"queued":{"default":false,"title":"Queued","type":"boolean"},"outcome_status":{"default":"partial","enum":["completed","partial","needs_input","awaiting_approval"],"title":"Outcome Status","type":"string"},"read_back_verified":{"default":false,"title":"Read Back Verified","type":"boolean"},"verification_message":{"anyOf":[{"type":"string"},{"type":"null"}],"default":null,"title":"Verification Message"}},"required":["title","data","limitations","source_path"],"title":"PublicIcpAccountHistoryGetResultV2","type":"object"},"example":{"tool":"domain.intelligence.v2","arguments":{"params":{"action":"invoke","operation":"icp.account.history.get.v2","arguments":{"account_id":"00000000-0000-4000-8000-000000000001"},"operation_id":"00000000-0000-4000-8000-000000000003"}},"notice":"Fictional fixture IDs and example text. Resolve real IDs, use returned preview tokens and approve exact side effects before execution. Input validation is not proof of provider readiness or a successful business outcome."},"workflow_steps":[],"approval_policy":null,"idempotency_policy":"caller_operation","gateway_credit_code":null,"identity":"Workspace, actor and consent come from OAuth; do not supply identity fields.","retry":"Keep the same operation and operation_id when retrying identical work. Reconcile an uncertain result before new work; never replay an old V1 write under a new V2 ID.","completion":"Check status, execution_state, error_code, output and evidence/resource references. Queued work is not complete: poll jobs.status.get.v2 in domain.workspace.v2. For read-back verification require read_back_verified=true where returned; reconcile failures without creating another object.","result_envelope":{"status":"completed | partial | cancelled | failed","execution_state":"terminal | queued | reconciliation_required","output":"Completed results validate against output_schema; partial/reconciliation results can contain incomplete evidence and must not be treated as completion.","billing":"gateway_credits_spent, downstream_settlement, job_id; pending downstream settlement is not a final cost","references":"run_id, invocation_id, resource_refs, evidence_refs"},"documentation":"https://www.hivekind.ai/docs/mcp/intelligence#icp-account-history-get-v2"},{"operation":"icp.clients.suggest.v2","domain":"intelligence","tool":"domain.intelligence.v2","title":"Propose client-fit rubric changes","purpose":"Use the existing Core workflow: Propose client-fit rubric changes. Model proposal only; does not persist or rescore. Not a historical holdout experiment.","side_effects":"Model proposal only; does not persist or rescore. Not a historical holdout experiment.","permission":"execute","required_scopes":["actions:execute"],"requires_operation_id":true,"billing":"No gateway rate is configured. Check the Core workflow preview/quote for downstream charges and final settlement.","required_resolved_fields":[],"next_call":{"tool":"domain.intelligence.v2","arguments":{"params":{"action":"describe","operation":"icp.clients.suggest.v2"}}},"catalog_revision":"07a373e389289e05","when_not_to_use":"Do not infer unsupported history, attribution, or commitments from this response.","description":"Use when: Use the existing Core workflow: Propose client-fit rubric changes. Model proposal only; does not persist or rescore. Not a historical holdout experiment. Returns/does: Model proposal only; does not persist or rescore. Not a historical holdout experiment. Do not use when: Do not infer unsupported history, attribution, or commitments from this response. Identity comes from OAuth. Resolve exact IDs; use typed enums and bounded limits. Billing: Gateway and downstream billing depend on the operation; check its preview/quote and returned billing.","input_schema":{"additionalProperties":false,"properties":{"rubric_id":{"description":"Exact existing resource UUID; resolve it before invoking.","format":"uuid","title":"Rubric Id","type":"string"},"action_proposal_id":{"anyOf":[{"format":"uuid","type":"string"},{"type":"null"}],"default":null,"description":"Optional. Hivekind fills this from the MCP consent grant.","title":"Action Proposal Id"}},"required":["rubric_id"],"title":"McpMcpPublicIcpClientsSuggestInputV2","type":"object"},"output_schema":{"additionalProperties":false,"description":"V2 result for icp.clients.suggest.v2; preserves the established validators.","properties":{"title":{"title":"Title","type":"string"},"data":{"additionalProperties":true,"title":"Data","type":"object"},"limitations":{"title":"Limitations","type":"string"},"applied_parameters":{"additionalProperties":true,"title":"Applied Parameters","type":"object"},"source_path":{"title":"Source Path","type":"string"},"job_id":{"anyOf":[{"type":"string"},{"type":"null"}],"default":null,"description":"Core job identifier when an operation enqueues work; poll jobs.status.get.v2 and read the resulting resource.","title":"Job Id"},"queued":{"default":false,"title":"Queued","type":"boolean"},"outcome_status":{"default":"partial","enum":["completed","partial","needs_input","awaiting_approval"],"title":"Outcome Status","type":"string"},"read_back_verified":{"default":false,"title":"Read Back Verified","type":"boolean"},"verification_message":{"anyOf":[{"type":"string"},{"type":"null"}],"default":null,"title":"Verification Message"}},"required":["title","data","limitations","source_path"],"title":"PublicIcpClientsSuggestResultV2","type":"object"},"example":{"tool":"domain.intelligence.v2","arguments":{"params":{"action":"invoke","operation":"icp.clients.suggest.v2","arguments":{"rubric_id":"00000000-0000-4000-8000-000000000001"},"operation_id":"00000000-0000-4000-8000-000000000003"}},"notice":"Fictional fixture IDs and example text. Resolve real IDs, use returned preview tokens and approve exact side effects before execution. Input validation is not proof of provider readiness or a successful business outcome."},"workflow_steps":[],"approval_policy":"exact_scope_single_action","idempotency_policy":"caller_operation","gateway_credit_code":null,"identity":"Workspace, actor and consent come from OAuth; do not supply identity fields.","retry":"Keep the same operation and operation_id when retrying identical work. Reconcile an uncertain result before new work; never replay an old V1 write under a new V2 ID.","completion":"Check status, execution_state, error_code, output and evidence/resource references. Queued work is not complete: poll jobs.status.get.v2 in domain.workspace.v2. For read-back verification require read_back_verified=true where returned; reconcile failures without creating another object.","result_envelope":{"status":"completed | partial | cancelled | failed","execution_state":"terminal | queued | reconciliation_required","output":"Completed results validate against output_schema; partial/reconciliation results can contain incomplete evidence and must not be treated as completion.","billing":"gateway_credits_spent, downstream_settlement, job_id; pending downstream settlement is not a final cost","references":"run_id, invocation_id, resource_refs, evidence_refs"},"documentation":"https://www.hivekind.ai/docs/mcp/intelligence#icp-clients-suggest-v2"},{"operation":"icp.clients.validation.get.v2","domain":"intelligence","tool":"domain.intelligence.v2","title":"Client fit validation","purpose":"Use the existing Core workflow: Client fit validation. Current/prior clients owned by rubric assignees; not closed-won/lost deal history.","side_effects":"Read only.","permission":"read","required_scopes":["accounts:read"],"requires_operation_id":false,"billing":"No gateway credit charge; reads saved workspace data without starting paid provider work.","required_resolved_fields":[],"next_call":{"tool":"domain.intelligence.v2","arguments":{"params":{"action":"describe","operation":"icp.clients.validation.get.v2"}}},"catalog_revision":"07a373e389289e05","when_not_to_use":"Do not infer unsupported history, attribution, or commitments from this response.","description":"Use when: Use the existing Core workflow: Client fit validation. Current/prior clients owned by rubric assignees; not closed-won/lost deal history. Returns/does: Read only. Do not use when: Do not infer unsupported history, attribution, or commitments from this response. Identity comes from OAuth. Resolve exact IDs; use typed enums and bounded limits. Billing: Gateway and downstream billing depend on the operation; check its preview/quote and returned billing.","input_schema":{"additionalProperties":false,"properties":{"rubric_id":{"description":"Exact existing resource UUID; resolve it before invoking.","format":"uuid","title":"Rubric Id","type":"string"}},"required":["rubric_id"],"title":"McpPublicIcpClientsValidationGetInputV2","type":"object"},"output_schema":{"additionalProperties":false,"description":"V2 result for icp.clients.validation.get.v2; preserves the established validators.","properties":{"title":{"title":"Title","type":"string"},"data":{"additionalProperties":true,"title":"Data","type":"object"},"limitations":{"title":"Limitations","type":"string"},"applied_parameters":{"additionalProperties":true,"title":"Applied Parameters","type":"object"},"source_path":{"title":"Source Path","type":"string"},"job_id":{"anyOf":[{"type":"string"},{"type":"null"}],"default":null,"description":"Core job identifier when an operation enqueues work; poll jobs.status.get.v2 and read the resulting resource.","title":"Job Id"},"queued":{"default":false,"title":"Queued","type":"boolean"},"outcome_status":{"default":"partial","enum":["completed","partial","needs_input","awaiting_approval"],"title":"Outcome Status","type":"string"},"read_back_verified":{"default":false,"title":"Read Back Verified","type":"boolean"},"verification_message":{"anyOf":[{"type":"string"},{"type":"null"}],"default":null,"title":"Verification Message"}},"required":["title","data","limitations","source_path"],"title":"PublicIcpClientsValidationGetResultV2","type":"object"},"example":{"tool":"domain.intelligence.v2","arguments":{"params":{"action":"invoke","operation":"icp.clients.validation.get.v2","arguments":{"rubric_id":"00000000-0000-4000-8000-000000000001"},"operation_id":"00000000-0000-4000-8000-000000000003"}},"notice":"Fictional fixture IDs and example text. Resolve real IDs, use returned preview tokens and approve exact side effects before execution. Input validation is not proof of provider readiness or a successful business outcome."},"workflow_steps":[],"approval_policy":null,"idempotency_policy":"caller_operation","gateway_credit_code":null,"identity":"Workspace, actor and consent come from OAuth; do not supply identity fields.","retry":"Keep the same operation and operation_id when retrying identical work. Reconcile an uncertain result before new work; never replay an old V1 write under a new V2 ID.","completion":"Check status, execution_state, error_code, output and evidence/resource references. Queued work is not complete: poll jobs.status.get.v2 in domain.workspace.v2. For read-back verification require read_back_verified=true where returned; reconcile failures without creating another object.","result_envelope":{"status":"completed | partial | cancelled | failed","execution_state":"terminal | queued | reconciliation_required","output":"Completed results validate against output_schema; partial/reconciliation results can contain incomplete evidence and must not be treated as completion.","billing":"gateway_credits_spent, downstream_settlement, job_id; pending downstream settlement is not a final cost","references":"run_id, invocation_id, resource_refs, evidence_refs"},"documentation":"https://www.hivekind.ai/docs/mcp/intelligence#icp-clients-validation-get-v2"},{"operation":"icp.crm.suggest.v2","domain":"intelligence","tool":"domain.intelligence.v2","title":"Propose CRM-evidence rubric dimensions","purpose":"Use the existing Core workflow: Propose CRM-evidence rubric dimensions. Requires connected CRM and built won-customer profile. Does not persist or claim signal causality.","side_effects":"Requires connected CRM and built won-customer profile. Does not persist or claim signal causality.","permission":"execute","required_scopes":["actions:execute"],"requires_operation_id":true,"billing":"No gateway rate is configured. Check the Core workflow preview/quote for downstream charges and final settlement.","required_resolved_fields":[],"next_call":{"tool":"domain.intelligence.v2","arguments":{"params":{"action":"describe","operation":"icp.crm.suggest.v2"}}},"catalog_revision":"07a373e389289e05","when_not_to_use":"Do not infer unsupported history, attribution, or commitments from this response.","description":"Use when: Use the existing Core workflow: Propose CRM-evidence rubric dimensions. Requires connected CRM and built won-customer profile. Does not persist or claim signal causality. Returns/does: Requires connected CRM and built won-customer profile. Does not persist or claim signal causality. Do not use when: Do not infer unsupported history, attribution, or commitments from this response. Identity comes from OAuth. Resolve exact IDs; use typed enums and bounded limits. Billing: Gateway and downstream billing depend on the operation; check its preview/quote and returned billing.","input_schema":{"additionalProperties":false,"properties":{"rubric_id":{"description":"Exact existing resource UUID; resolve it before invoking.","format":"uuid","title":"Rubric Id","type":"string"},"action_proposal_id":{"anyOf":[{"format":"uuid","type":"string"},{"type":"null"}],"default":null,"description":"Optional. Hivekind fills this from the MCP consent grant.","title":"Action Proposal Id"}},"required":["rubric_id"],"title":"McpMcpPublicIcpCrmSuggestInputV2","type":"object"},"output_schema":{"additionalProperties":false,"description":"V2 result for icp.crm.suggest.v2; preserves the established validators.","properties":{"title":{"title":"Title","type":"string"},"data":{"additionalProperties":true,"title":"Data","type":"object"},"limitations":{"title":"Limitations","type":"string"},"applied_parameters":{"additionalProperties":true,"title":"Applied Parameters","type":"object"},"source_path":{"title":"Source Path","type":"string"},"job_id":{"anyOf":[{"type":"string"},{"type":"null"}],"default":null,"description":"Core job identifier when an operation enqueues work; poll jobs.status.get.v2 and read the resulting resource.","title":"Job Id"},"queued":{"default":false,"title":"Queued","type":"boolean"},"outcome_status":{"default":"partial","enum":["completed","partial","needs_input","awaiting_approval"],"title":"Outcome Status","type":"string"},"read_back_verified":{"default":false,"title":"Read Back Verified","type":"boolean"},"verification_message":{"anyOf":[{"type":"string"},{"type":"null"}],"default":null,"title":"Verification Message"}},"required":["title","data","limitations","source_path"],"title":"PublicIcpCrmSuggestResultV2","type":"object"},"example":{"tool":"domain.intelligence.v2","arguments":{"params":{"action":"invoke","operation":"icp.crm.suggest.v2","arguments":{"rubric_id":"00000000-0000-4000-8000-000000000001"},"operation_id":"00000000-0000-4000-8000-000000000003"}},"notice":"Fictional fixture IDs and example text. Resolve real IDs, use returned preview tokens and approve exact side effects before execution. Input validation is not proof of provider readiness or a successful business outcome."},"workflow_steps":[],"approval_policy":"exact_scope_single_action","idempotency_policy":"caller_operation","gateway_credit_code":null,"identity":"Workspace, actor and consent come from OAuth; do not supply identity fields.","retry":"Keep the same operation and operation_id when retrying identical work. Reconcile an uncertain result before new work; never replay an old V1 write under a new V2 ID.","completion":"Check status, execution_state, error_code, output and evidence/resource references. Queued work is not complete: poll jobs.status.get.v2 in domain.workspace.v2. For read-back verification require read_back_verified=true where returned; reconcile failures without creating another object.","result_envelope":{"status":"completed | partial | cancelled | failed","execution_state":"terminal | queued | reconciliation_required","output":"Completed results validate against output_schema; partial/reconciliation results can contain incomplete evidence and must not be treated as completion.","billing":"gateway_credits_spent, downstream_settlement, job_id; pending downstream settlement is not a final cost","references":"run_id, invocation_id, resource_refs, evidence_refs"},"documentation":"https://www.hivekind.ai/docs/mcp/intelligence#icp-crm-suggest-v2"},{"operation":"icp.get.v2","domain":"intelligence","tool":"domain.intelligence.v2","title":"Get ICP rubric","purpose":"Read the workspace ICP rubric the user already approved.","side_effects":"Reads current workspace state.","permission":"read","required_scopes":["icp:read"],"requires_operation_id":false,"billing":"No gateway credit charge; reads saved workspace data without starting paid provider work.","required_resolved_fields":[],"next_call":{"tool":"domain.intelligence.v2","arguments":{"params":{"action":"describe","operation":"icp.get.v2"}}},"catalog_revision":"07a373e389289e05","when_not_to_use":"Do not use this to score an account — that is icp.score.get.v2.","description":"Use when: Read the workspace ICP rubric the user already approved. Returns/does: Reads the current authorized workspace state. Do not use when: Do not use this to score an account — that is icp.score.get.v2. Identity comes from OAuth. Resolve exact IDs; use typed enums and bounded limits. Billing: Gateway and downstream billing depend on the operation; check its preview/quote and returned billing.","input_schema":{"additionalProperties":false,"properties":{"rubric_id":{"anyOf":[{"format":"uuid","type":"string"},{"type":"null"}],"default":null,"description":"Exact rubric UUID returned by a Hivekind search, list, get, preview, or resource call.","title":"Rubric Id"}},"title":"McpPublicIcpGetInputV2","type":"object"},"output_schema":{"$defs":{"IcpDimensionV1":{"additionalProperties":false,"properties":{"name":{"maxLength":160,"minLength":1,"title":"Name","type":"string"},"description":{"anyOf":[{"maxLength":2000,"type":"string"},{"type":"null"}],"default":null,"title":"Description"},"weight":{"anyOf":[{"maximum":100,"minimum":0,"type":"number"},{"type":"null"}],"default":null,"title":"Weight"}},"required":["name"],"title":"IcpDimensionV1","type":"object"},"IcpRubricSnapshotV1":{"additionalProperties":false,"properties":{"rubric_id":{"format":"uuid","title":"Rubric Id","type":"string"},"name":{"maxLength":160,"minLength":1,"title":"Name","type":"string"},"version_number":{"minimum":1,"title":"Version Number","type":"integer"},"version_label":{"anyOf":[{"maxLength":255,"type":"string"},{"type":"null"}],"default":null,"title":"Version Label"},"summary":{"anyOf":[{"maxLength":4000,"type":"string"},{"type":"null"}],"default":null,"title":"Summary"},"dimensions":{"default":[],"items":{"$ref":"#/$defs/IcpDimensionV1"},"maxItems":50,"title":"Dimensions","type":"array"},"disqualifiers":{"default":[],"items":{"type":"string"},"maxItems":50,"title":"Disqualifiers","type":"array"}},"required":["rubric_id","name","version_number"],"title":"IcpRubricSnapshotV1","type":"object"}},"additionalProperties":false,"description":"V2 result for icp.get.v2; preserves the established validators.","properties":{"rubric":{"anyOf":[{"$ref":"#/$defs/IcpRubricSnapshotV1"},{"type":"null"}],"default":null}},"title":"PublicIcpGetResultV2","type":"object"},"example":{"tool":"domain.intelligence.v2","arguments":{"params":{"action":"invoke","operation":"icp.get.v2","arguments":{},"operation_id":"00000000-0000-4000-8000-000000000003"}},"notice":"Fictional fixture IDs and example text. Resolve real IDs, use returned preview tokens and approve exact side effects before execution. Input validation is not proof of provider readiness or a successful business outcome."},"workflow_steps":[],"approval_policy":null,"idempotency_policy":"read_only","gateway_credit_code":null,"identity":"Workspace, actor and consent come from OAuth; do not supply identity fields.","retry":"Keep the same operation and operation_id when retrying identical work. Reconcile an uncertain result before new work; never replay an old V1 write under a new V2 ID.","completion":"Check status, execution_state, error_code, output and evidence/resource references. Queued work is not complete: poll jobs.status.get.v2 in domain.workspace.v2. For read-back verification require read_back_verified=true where returned; reconcile failures without creating another object.","result_envelope":{"status":"completed | partial | cancelled | failed","execution_state":"terminal | queued | reconciliation_required","output":"Completed results validate against output_schema; partial/reconciliation results can contain incomplete evidence and must not be treated as completion.","billing":"gateway_credits_spent, downstream_settlement, job_id; pending downstream settlement is not a final cost","references":"run_id, invocation_id, resource_refs, evidence_refs"},"documentation":"https://www.hivekind.ai/docs/mcp/intelligence#icp-get-v2"},{"operation":"icp.grading.preview.v2","domain":"intelligence","tool":"domain.intelligence.v2","title":"Preview an ICP grading run","purpose":"Count what a grading scope would cover and what it would cost, before spending anything.","side_effects":"Writes nothing and grades nothing. Deliberately not credit-gated: a workspace out of credits is the one that needs the number.","permission":"propose","required_scopes":["scoring:run"],"requires_operation_id":true,"billing":"No gateway rate is configured. Check the Core workflow preview/quote for downstream charges and final settlement.","required_resolved_fields":[],"next_call":{"tool":"domain.intelligence.v2","arguments":{"params":{"action":"describe","operation":"icp.grading.preview.v2"}}},"catalog_revision":"07a373e389289e05","when_not_to_use":"Do not use this to grade — that is icp.grading.start.v2.","description":"Use when: Count what a grading scope would cover and what it would cost, before spending anything. Returns/does: Writes nothing and grades nothing. Deliberately not credit-gated: a workspace out of credits is the one that needs the number. Do not use when: Do not use this to grade — that is icp.grading.start.v2. Identity comes from OAuth. Resolve exact IDs; use typed enums and bounded limits. Billing: Gateway and downstream billing depend on the operation; check its preview/quote and returned billing.","input_schema":{"additionalProperties":false,"properties":{"rubric_id":{"anyOf":[{"format":"uuid","type":"string"},{"type":"null"}],"default":null,"description":"Grade against this rubric and everyone assigned to it. Omit to use the calling user's own pinned rubric and only their accounts. Setting it does not change what any user has pinned.","title":"Rubric Id"},"account_ids":{"default":[],"description":"Grade exactly these accounts. Resolve the request to a concrete set first — accounts.search.v2, an event roster, or the account_ids an import returns — then pass them here. This is the right answer whenever the user means a particular set rather than a rule. It narrows: archived and scoring-exempt accounts stay excluded even if listed.","items":{"format":"uuid","type":"string"},"maxItems":500,"title":"Account Ids","type":"array"},"only_unscored":{"default":false,"description":"Skip accounts already scored under the TARGET RUBRIC. Rubric-relative and workspace-wide, so after importing a handful of accounts this still selects every other account nobody has scored under that rubric. For 'what I just added', pass account_ids.","title":"Only Unscored","type":"boolean"},"never_scored":{"default":false,"description":"No grade under any rubric. Usually what 'unscored' means.","title":"Never Scored","type":"boolean"},"industries":{"default":[],"description":"Industries used by the icp grading preview input v2 operation.","items":{"type":"string"},"maxItems":50,"title":"Industries","type":"array"},"regions":{"default":[],"description":"Regions used by the icp grading preview input v2 operation.","items":{"type":"string"},"maxItems":50,"title":"Regions","type":"array"},"account_types":{"default":[],"description":"Prospect, Client, Partner and so on. Competitor and Self are never scored, so asking for them returns nothing.","items":{"type":"string"},"maxItems":16,"title":"Account Types","type":"array"},"icp_grades":{"default":[],"description":"Icp grades used by the icp grading preview input v2 operation.","items":{"type":"string"},"maxItems":8,"title":"Icp Grades","type":"array"},"owner_ids":{"default":[],"description":"Account owners. Use icp.scope.facets.v2 to resolve names to ids.","items":{"format":"uuid","type":"string"},"maxItems":50,"title":"Owner Ids","type":"array"},"minimum_icp_score":{"anyOf":[{"maximum":100,"minimum":0,"type":"number"},{"type":"null"}],"default":null,"description":"Minimum icp score used to bound matching records.","title":"Minimum Icp Score"},"maximum_icp_score":{"anyOf":[{"maximum":100,"minimum":0,"type":"number"},{"type":"null"}],"default":null,"description":"Maximum icp score used to bound matching records.","title":"Maximum Icp Score"},"minimum_employee_count":{"anyOf":[{"maximum":10000000,"minimum":0,"type":"integer"},{"type":"null"}],"default":null,"description":"Minimum employee count used to bound matching records.","title":"Minimum Employee Count"},"maximum_employee_count":{"anyOf":[{"maximum":10000000,"minimum":0,"type":"integer"},{"type":"null"}],"default":null,"description":"Maximum employee count used to bound matching records.","title":"Maximum Employee Count"},"contact_count_min":{"anyOf":[{"maximum":100000,"minimum":0,"type":"integer"},{"type":"null"}],"default":null,"description":"Contact count min used by the icp grading preview input v2 operation.","title":"Contact Count Min"},"contact_count_max":{"anyOf":[{"maximum":100000,"minimum":0,"type":"integer"},{"type":"null"}],"default":null,"description":"Contact count max used by the icp grading preview input v2 operation.","title":"Contact Count Max"},"created_since":{"anyOf":[{"format":"date-time","type":"string"},{"type":"null"}],"default":null,"description":"Accounts added on or after this instant.","title":"Created Since"},"created_before":{"anyOf":[{"format":"date-time","type":"string"},{"type":"null"}],"default":null,"description":"Created before used by the icp grading preview input v2 operation.","title":"Created Before"},"not_scored_since":{"anyOf":[{"format":"date-time","type":"string"},{"type":"null"}],"default":null,"description":"Only accounts with no score recorded since this instant. Never-scored accounts count as stale.","title":"Not Scored Since"}},"title":"McpIcpGradingPreviewInputV2","type":"object"},"output_schema":{"additionalProperties":false,"properties":{"rubric_id":{"anyOf":[{"format":"uuid","type":"string"},{"type":"null"}],"default":null,"title":"Rubric Id"},"total_in_scope":{"default":0,"minimum":0,"title":"Total In Scope","type":"integer"},"would_score":{"default":0,"description":"What the run will actually grade.","minimum":0,"title":"Would Score","type":"integer"},"already_scored":{"default":0,"minimum":0,"title":"Already Scored","type":"integer"},"skipped_no_rubric":{"default":0,"description":"Matched the filters but their owner has no rubric pinned, so the dispatcher would drop them.","minimum":0,"title":"Skipped No Rubric","type":"integer"},"credits_per_account":{"default":0,"minimum":0,"title":"Credits Per Account","type":"number"},"estimated_credits":{"default":0,"minimum":0,"title":"Estimated Credits","type":"number"},"credit_balance":{"anyOf":[{"type":"number"},{"type":"null"}],"default":null,"title":"Credit Balance"},"sufficient_credits":{"default":true,"title":"Sufficient Credits","type":"boolean"},"requested_account_ids":{"default":0,"description":"How many ids the caller asked for.","minimum":0,"title":"Requested Account Ids","type":"integer"},"excluded_not_active":{"default":0,"description":"Requested but archived or candidate.","minimum":0,"title":"Excluded Not Active","type":"integer"},"excluded_exempt_type":{"default":0,"description":"Requested but Competitor, Self or Partner.","minimum":0,"title":"Excluded Exempt Type","type":"integer"},"excluded_other_owner":{"default":0,"description":"Requested but owned by someone outside the rubric's assignees. Name that owner in owner_ids, or grade against their rubric.","minimum":0,"title":"Excluded Other Owner","type":"integer"},"excluded_not_found":{"default":0,"description":"Requested but not an account in this workspace.","minimum":0,"title":"Excluded Not Found","type":"integer"}},"title":"IcpGradingPreviewResultV2","type":"object"},"example":{"tool":"domain.intelligence.v2","arguments":{"params":{"action":"invoke","operation":"icp.grading.preview.v2","arguments":{},"operation_id":"00000000-0000-4000-8000-000000000003"}},"notice":"Fictional fixture IDs and example text. Resolve real IDs, use returned preview tokens and approve exact side effects before execution. Input validation is not proof of provider readiness or a successful business outcome."},"workflow_steps":[],"approval_policy":null,"idempotency_policy":"run_task_icp_scope_preview","gateway_credit_code":null,"identity":"Workspace, actor and consent come from OAuth; do not supply identity fields.","retry":"Keep the same operation and operation_id when retrying identical work. Reconcile an uncertain result before new work; never replay an old V1 write under a new V2 ID.","completion":"Check status, execution_state, error_code, output and evidence/resource references. Queued work is not complete: poll jobs.status.get.v2 in domain.workspace.v2. For read-back verification require read_back_verified=true where returned; reconcile failures without creating another object.","result_envelope":{"status":"completed | partial | cancelled | failed","execution_state":"terminal | queued | reconciliation_required","output":"Completed results validate against output_schema; partial/reconciliation results can contain incomplete evidence and must not be treated as completion.","billing":"gateway_credits_spent, downstream_settlement, job_id; pending downstream settlement is not a final cost","references":"run_id, invocation_id, resource_refs, evidence_refs"},"documentation":"https://www.hivekind.ai/docs/mcp/intelligence#icp-grading-preview-v2"},{"operation":"icp.grading.start.v2","domain":"intelligence","tool":"domain.intelligence.v2","title":"Start ICP grading","purpose":"You approved the exact account scope and cost returned by icp.grading.preview.v2 and want fresh asynchronous grading.","side_effects":"Queues metered grading. Poll jobs.status.get.v2 with the returned job_id.","permission":"execute","required_scopes":["actions:execute"],"requires_operation_id":true,"billing":"No gateway rate is configured. Check the Core workflow preview/quote for downstream charges and final settlement.","required_resolved_fields":[],"next_call":{"tool":"domain.intelligence.v2","arguments":{"params":{"action":"describe","operation":"icp.grading.start.v2"}}},"catalog_revision":"07a373e389289e05","when_not_to_use":"You only need existing audited scores; use icp.scores.get.v2.","description":"Use when: You approved the exact account scope and cost returned by icp.grading.preview.v2 and want fresh asynchronous grading. Returns/does: Queues metered grading. Poll jobs.status.get.v2 with the returned job_id. Do not use when: You only need existing audited scores; use icp.scores.get.v2. Identity comes from OAuth. Resolve exact IDs; use typed enums and bounded limits. Billing: Gateway and downstream billing depend on the operation; check its preview/quote and returned billing.","input_schema":{"additionalProperties":false,"properties":{"rubric_id":{"anyOf":[{"format":"uuid","type":"string"},{"type":"null"}],"default":null,"description":"Grade against this rubric and everyone assigned to it. Omit to use the calling user's own pinned rubric and only their accounts. Setting it does not change what any user has pinned.","title":"Rubric Id"},"account_ids":{"default":[],"description":"Grade exactly these accounts. Resolve the request to a concrete set first — accounts.search.v2, an event roster, or the account_ids an import returns — then pass them here. This is the right answer whenever the user means a particular set rather than a rule. It narrows: archived and scoring-exempt accounts stay excluded even if listed.","items":{"format":"uuid","type":"string"},"maxItems":500,"title":"Account Ids","type":"array"},"only_unscored":{"default":false,"description":"Skip accounts already scored under the TARGET RUBRIC. Rubric-relative and workspace-wide, so after importing a handful of accounts this still selects every other account nobody has scored under that rubric. For 'what I just added', pass account_ids.","title":"Only Unscored","type":"boolean"},"never_scored":{"default":false,"description":"No grade under any rubric. Usually what 'unscored' means.","title":"Never Scored","type":"boolean"},"industries":{"default":[],"description":"Industries used by the icp grading start input v2 operation.","items":{"type":"string"},"maxItems":50,"title":"Industries","type":"array"},"regions":{"default":[],"description":"Regions used by the icp grading start input v2 operation.","items":{"type":"string"},"maxItems":50,"title":"Regions","type":"array"},"account_types":{"default":[],"description":"Prospect, Client, Partner and so on. Competitor and Self are never scored, so asking for them returns nothing.","items":{"type":"string"},"maxItems":16,"title":"Account Types","type":"array"},"icp_grades":{"default":[],"description":"Icp grades used by the icp grading start input v2 operation.","items":{"type":"string"},"maxItems":8,"title":"Icp Grades","type":"array"},"owner_ids":{"default":[],"description":"Account owners. Use icp.scope.facets.v2 to resolve names to ids.","items":{"format":"uuid","type":"string"},"maxItems":50,"title":"Owner Ids","type":"array"},"minimum_icp_score":{"anyOf":[{"maximum":100,"minimum":0,"type":"number"},{"type":"null"}],"default":null,"description":"Minimum icp score used to bound matching records.","title":"Minimum Icp Score"},"maximum_icp_score":{"anyOf":[{"maximum":100,"minimum":0,"type":"number"},{"type":"null"}],"default":null,"description":"Maximum icp score used to bound matching records.","title":"Maximum Icp Score"},"minimum_employee_count":{"anyOf":[{"maximum":10000000,"minimum":0,"type":"integer"},{"type":"null"}],"default":null,"description":"Minimum employee count used to bound matching records.","title":"Minimum Employee Count"},"maximum_employee_count":{"anyOf":[{"maximum":10000000,"minimum":0,"type":"integer"},{"type":"null"}],"default":null,"description":"Maximum employee count used to bound matching records.","title":"Maximum Employee Count"},"contact_count_min":{"anyOf":[{"maximum":100000,"minimum":0,"type":"integer"},{"type":"null"}],"default":null,"description":"Contact count min used by the icp grading start input v2 operation.","title":"Contact Count Min"},"contact_count_max":{"anyOf":[{"maximum":100000,"minimum":0,"type":"integer"},{"type":"null"}],"default":null,"description":"Contact count max used by the icp grading start input v2 operation.","title":"Contact Count Max"},"created_since":{"anyOf":[{"format":"date-time","type":"string"},{"type":"null"}],"default":null,"description":"Accounts added on or after this instant.","title":"Created Since"},"created_before":{"anyOf":[{"format":"date-time","type":"string"},{"type":"null"}],"default":null,"description":"Created before used by the icp grading start input v2 operation.","title":"Created Before"},"not_scored_since":{"anyOf":[{"format":"date-time","type":"string"},{"type":"null"}],"default":null,"description":"Only accounts with no score recorded since this instant. Never-scored accounts count as stale.","title":"Not Scored Since"},"action_proposal_id":{"anyOf":[{"format":"uuid","type":"string"},{"type":"null"}],"default":null,"description":"Optional. Hivekind fills this from the MCP consent grant.","title":"Action Proposal Id"}},"title":"McpMcpIcpGradingStartInputV2","type":"object"},"output_schema":{"additionalProperties":false,"properties":{"job_id":{"anyOf":[{"format":"uuid","type":"string"},{"type":"null"}],"default":null,"title":"Job Id"},"rubric_id":{"anyOf":[{"format":"uuid","type":"string"},{"type":"null"}],"default":null,"title":"Rubric Id"},"account_count":{"default":0,"description":"Accounts dispatched for grading.","minimum":0,"title":"Account Count","type":"integer"},"queued":{"default":true,"title":"Queued","type":"boolean"}},"title":"IcpGradingStartResultV2","type":"object"},"example":{"tool":"domain.intelligence.v2","arguments":{"params":{"action":"invoke","operation":"icp.grading.start.v2","arguments":{},"operation_id":"00000000-0000-4000-8000-000000000003"}},"notice":"Fictional fixture IDs and example text. Resolve real IDs, use returned preview tokens and approve exact side effects before execution. Input validation is not proof of provider readiness or a successful business outcome."},"workflow_steps":[],"approval_policy":"exact_scope_single_action","idempotency_policy":"approved_action_outbox","gateway_credit_code":null,"identity":"Workspace, actor and consent come from OAuth; do not supply identity fields.","retry":"Keep the same operation and operation_id when retrying identical work. Reconcile an uncertain result before new work; never replay an old V1 write under a new V2 ID.","completion":"Check status, execution_state, error_code, output and evidence/resource references. Queued work is not complete: poll jobs.status.get.v2 in domain.workspace.v2. For read-back verification require read_back_verified=true where returned; reconcile failures without creating another object.","result_envelope":{"status":"completed | partial | cancelled | failed","execution_state":"terminal | queued | reconciliation_required","output":"Completed results validate against output_schema; partial/reconciliation results can contain incomplete evidence and must not be treated as completion.","billing":"gateway_credits_spent, downstream_settlement, job_id; pending downstream settlement is not a final cost","references":"run_id, invocation_id, resource_refs, evidence_refs"},"documentation":"https://www.hivekind.ai/docs/mcp/intelligence#icp-grading-start-v2"},{"operation":"icp.rubric.details.get.v2","domain":"intelligence","tool":"domain.intelligence.v2","title":"Full grading rubric","purpose":"Use the existing Core workflow: Full grading rubric. Existing workspace rubric and provenance; read only.","side_effects":"Read only.","permission":"read","required_scopes":["accounts:read"],"requires_operation_id":false,"billing":"No gateway credit charge; reads saved workspace data without starting paid provider work.","required_resolved_fields":[],"next_call":{"tool":"domain.intelligence.v2","arguments":{"params":{"action":"describe","operation":"icp.rubric.details.get.v2"}}},"catalog_revision":"07a373e389289e05","when_not_to_use":"Do not infer unsupported history, attribution, or commitments from this response.","description":"Use when: Use the existing Core workflow: Full grading rubric. Existing workspace rubric and provenance; read only. Returns/does: Read only. Do not use when: Do not infer unsupported history, attribution, or commitments from this response. Identity comes from OAuth. Resolve exact IDs; use typed enums and bounded limits. Billing: Gateway and downstream billing depend on the operation; check its preview/quote and returned billing.","input_schema":{"additionalProperties":false,"properties":{"rubric_id":{"description":"Exact existing resource UUID; resolve it before invoking.","format":"uuid","title":"Rubric Id","type":"string"}},"required":["rubric_id"],"title":"McpPublicIcpRubricDetailsGetInputV2","type":"object"},"output_schema":{"additionalProperties":false,"description":"V2 result for icp.rubric.details.get.v2; preserves the established validators.","properties":{"title":{"title":"Title","type":"string"},"data":{"additionalProperties":true,"title":"Data","type":"object"},"limitations":{"title":"Limitations","type":"string"},"applied_parameters":{"additionalProperties":true,"title":"Applied Parameters","type":"object"},"source_path":{"title":"Source Path","type":"string"},"job_id":{"anyOf":[{"type":"string"},{"type":"null"}],"default":null,"description":"Core job identifier when an operation enqueues work; poll jobs.status.get.v2 and read the resulting resource.","title":"Job Id"},"queued":{"default":false,"title":"Queued","type":"boolean"},"outcome_status":{"default":"partial","enum":["completed","partial","needs_input","awaiting_approval"],"title":"Outcome Status","type":"string"},"read_back_verified":{"default":false,"title":"Read Back Verified","type":"boolean"},"verification_message":{"anyOf":[{"type":"string"},{"type":"null"}],"default":null,"title":"Verification Message"}},"required":["title","data","limitations","source_path"],"title":"PublicIcpRubricDetailsGetResultV2","type":"object"},"example":{"tool":"domain.intelligence.v2","arguments":{"params":{"action":"invoke","operation":"icp.rubric.details.get.v2","arguments":{"rubric_id":"00000000-0000-4000-8000-000000000001"},"operation_id":"00000000-0000-4000-8000-000000000003"}},"notice":"Fictional fixture IDs and example text. Resolve real IDs, use returned preview tokens and approve exact side effects before execution. Input validation is not proof of provider readiness or a successful business outcome."},"workflow_steps":[],"approval_policy":null,"idempotency_policy":"caller_operation","gateway_credit_code":null,"identity":"Workspace, actor and consent come from OAuth; do not supply identity fields.","retry":"Keep the same operation and operation_id when retrying identical work. Reconcile an uncertain result before new work; never replay an old V1 write under a new V2 ID.","completion":"Check status, execution_state, error_code, output and evidence/resource references. Queued work is not complete: poll jobs.status.get.v2 in domain.workspace.v2. For read-back verification require read_back_verified=true where returned; reconcile failures without creating another object.","result_envelope":{"status":"completed | partial | cancelled | failed","execution_state":"terminal | queued | reconciliation_required","output":"Completed results validate against output_schema; partial/reconciliation results can contain incomplete evidence and must not be treated as completion.","billing":"gateway_credits_spent, downstream_settlement, job_id; pending downstream settlement is not a final cost","references":"run_id, invocation_id, resource_refs, evidence_refs"},"documentation":"https://www.hivekind.ai/docs/mcp/intelligence#icp-rubric-details-get-v2"},{"operation":"icp.rubric.pin.v2","domain":"intelligence","tool":"domain.intelligence.v2","title":"Select active grading rubric","purpose":"Use the existing Core workflow: Select active grading rubric. Changes only the calling user’s active rubric; does not score accounts.","side_effects":"Changes only the calling user’s active rubric; does not score accounts.","permission":"execute","required_scopes":["actions:execute"],"requires_operation_id":true,"billing":"No gateway rate is configured. Check the Core workflow preview/quote for downstream charges and final settlement.","required_resolved_fields":[],"next_call":{"tool":"domain.intelligence.v2","arguments":{"params":{"action":"describe","operation":"icp.rubric.pin.v2"}}},"catalog_revision":"07a373e389289e05","when_not_to_use":"Do not infer unsupported history, attribution, or commitments from this response.","description":"Use when: Use the existing Core workflow: Select active grading rubric. Changes only the calling user’s active rubric; does not score accounts. Returns/does: Changes only the calling user’s active rubric; does not score accounts. Do not use when: Do not infer unsupported history, attribution, or commitments from this response. Identity comes from OAuth. Resolve exact IDs; use typed enums and bounded limits. Billing: Gateway and downstream billing depend on the operation; check its preview/quote and returned billing.","input_schema":{"additionalProperties":false,"properties":{"rubric_id":{"description":"Exact existing resource UUID; resolve it before invoking.","format":"uuid","title":"Rubric Id","type":"string"},"action_proposal_id":{"anyOf":[{"format":"uuid","type":"string"},{"type":"null"}],"default":null,"description":"Optional. Hivekind fills this from the MCP consent grant.","title":"Action Proposal Id"}},"required":["rubric_id"],"title":"McpMcpPublicIcpRubricPinInputV2","type":"object"},"output_schema":{"additionalProperties":false,"description":"V2 result for icp.rubric.pin.v2; preserves the established validators.","properties":{"title":{"title":"Title","type":"string"},"data":{"additionalProperties":true,"title":"Data","type":"object"},"limitations":{"title":"Limitations","type":"string"},"applied_parameters":{"additionalProperties":true,"title":"Applied Parameters","type":"object"},"source_path":{"title":"Source Path","type":"string"},"job_id":{"anyOf":[{"type":"string"},{"type":"null"}],"default":null,"description":"Core job identifier when an operation enqueues work; poll jobs.status.get.v2 and read the resulting resource.","title":"Job Id"},"queued":{"default":false,"title":"Queued","type":"boolean"},"outcome_status":{"default":"partial","enum":["completed","partial","needs_input","awaiting_approval"],"title":"Outcome Status","type":"string"},"read_back_verified":{"default":false,"title":"Read Back Verified","type":"boolean"},"verification_message":{"anyOf":[{"type":"string"},{"type":"null"}],"default":null,"title":"Verification Message"}},"required":["title","data","limitations","source_path"],"title":"PublicIcpRubricPinResultV2","type":"object"},"example":{"tool":"domain.intelligence.v2","arguments":{"params":{"action":"invoke","operation":"icp.rubric.pin.v2","arguments":{"rubric_id":"00000000-0000-4000-8000-000000000001"},"operation_id":"00000000-0000-4000-8000-000000000003"}},"notice":"Fictional fixture IDs and example text. Resolve real IDs, use returned preview tokens and approve exact side effects before execution. Input validation is not proof of provider readiness or a successful business outcome."},"workflow_steps":[],"approval_policy":"exact_scope_single_action","idempotency_policy":"caller_operation","gateway_credit_code":null,"identity":"Workspace, actor and consent come from OAuth; do not supply identity fields.","retry":"Keep the same operation and operation_id when retrying identical work. Reconcile an uncertain result before new work; never replay an old V1 write under a new V2 ID.","completion":"Check status, execution_state, error_code, output and evidence/resource references. Queued work is not complete: poll jobs.status.get.v2 in domain.workspace.v2. For read-back verification require read_back_verified=true where returned; reconcile failures without creating another object.","result_envelope":{"status":"completed | partial | cancelled | failed","execution_state":"terminal | queued | reconciliation_required","output":"Completed results validate against output_schema; partial/reconciliation results can contain incomplete evidence and must not be treated as completion.","billing":"gateway_credits_spent, downstream_settlement, job_id; pending downstream settlement is not a final cost","references":"run_id, invocation_id, resource_refs, evidence_refs"},"documentation":"https://www.hivekind.ai/docs/mcp/intelligence#icp-rubric-pin-v2"},{"operation":"icp.rubrics.list.v2","domain":"intelligence","tool":"domain.intelligence.v2","title":"List ICP rubrics","purpose":"You need stable rubric IDs and the signed-in user's active rubric before previewing grading or discovery.","side_effects":"Returns bounded rubric summaries. Read only.","permission":"read","required_scopes":["icp:read"],"requires_operation_id":false,"billing":"No gateway credit charge; reads saved workspace data without starting paid provider work.","required_resolved_fields":[],"next_call":{"tool":"domain.intelligence.v2","arguments":{"params":{"action":"describe","operation":"icp.rubrics.list.v2"}}},"catalog_revision":"07a373e389289e05","when_not_to_use":"You need saved scores for exact accounts; use icp.scores.get.v2.","description":"Use when: You need stable rubric IDs and the signed-in user's active rubric before previewing grading or discovery. Returns/does: Returns bounded rubric summaries. Read only. Do not use when: You need saved scores for exact accounts; use icp.scores.get.v2. Identity comes from OAuth. Resolve exact IDs; use typed enums and bounded limits. Billing: Gateway and downstream billing depend on the operation; check its preview/quote and returned billing.","input_schema":{"additionalProperties":false,"properties":{"scope":{"default":"user","description":"Assigned rubrics or all rubrics visible in this workspace.","enum":["user","workspace"],"title":"Scope","type":"string"},"limit":{"default":25,"description":"Maximum number of records to return in this page.","maximum":100,"minimum":1,"title":"Limit","type":"integer"}},"title":"McpIcpRubricsListInputV2","type":"object"},"output_schema":{"$defs":{"IcpRubricSummaryV1":{"additionalProperties":false,"properties":{"rubric_id":{"format":"uuid","title":"Rubric Id","type":"string"},"name":{"maxLength":255,"minLength":1,"title":"Name","type":"string"},"version_number":{"default":1,"minimum":0,"title":"Version Number","type":"integer"},"version_label":{"anyOf":[{"maxLength":128,"type":"string"},{"type":"null"}],"default":null,"title":"Version Label"},"is_active_for_you":{"default":false,"description":"True when the calling user has this rubric pinned.","title":"Is Active For You","type":"boolean"},"assignee_count":{"default":0,"description":"Workspace members grading against it.","minimum":0,"title":"Assignee Count","type":"integer"},"dimensions":{"default":0,"minimum":0,"title":"Dimensions","type":"integer"},"disqualifiers":{"default":0,"minimum":0,"title":"Disqualifiers","type":"integer"},"tiers":{"default":0,"minimum":0,"title":"Tiers","type":"integer"},"created_at":{"anyOf":[{"format":"date-time","type":"string"},{"type":"null"}],"default":null,"title":"Created At"}},"required":["rubric_id","name"],"title":"IcpRubricSummaryV1","type":"object"}},"additionalProperties":false,"properties":{"rubrics":{"default":[],"items":{"$ref":"#/$defs/IcpRubricSummaryV1"},"maxItems":100,"title":"Rubrics","type":"array"}},"title":"IcpRubricsListResultV2","type":"object"},"example":{"tool":"domain.intelligence.v2","arguments":{"params":{"action":"invoke","operation":"icp.rubrics.list.v2","arguments":{},"operation_id":"00000000-0000-4000-8000-000000000003"}},"notice":"Fictional fixture IDs and example text. Resolve real IDs, use returned preview tokens and approve exact side effects before execution. Input validation is not proof of provider readiness or a successful business outcome."},"workflow_steps":[],"approval_policy":null,"idempotency_policy":"read_only","gateway_credit_code":null,"identity":"Workspace, actor and consent come from OAuth; do not supply identity fields.","retry":"Keep the same operation and operation_id when retrying identical work. Reconcile an uncertain result before new work; never replay an old V1 write under a new V2 ID.","completion":"Check status, execution_state, error_code, output and evidence/resource references. Queued work is not complete: poll jobs.status.get.v2 in domain.workspace.v2. For read-back verification require read_back_verified=true where returned; reconcile failures without creating another object.","result_envelope":{"status":"completed | partial | cancelled | failed","execution_state":"terminal | queued | reconciliation_required","output":"Completed results validate against output_schema; partial/reconciliation results can contain incomplete evidence and must not be treated as completion.","billing":"gateway_credits_spent, downstream_settlement, job_id; pending downstream settlement is not a final cost","references":"run_id, invocation_id, resource_refs, evidence_refs"},"documentation":"https://www.hivekind.ai/docs/mcp/intelligence#icp-rubrics-list-v2"},{"operation":"icp.scope.facets.v2","domain":"intelligence","tool":"domain.intelligence.v2","title":"ICP scope facets","purpose":"List the industries, owners and grades that actually have accounts behind them, so a grading scope cannot be built from values that match nothing.","side_effects":"Reads current workspace state.","permission":"read","required_scopes":["icp:read"],"requires_operation_id":false,"billing":"No gateway credit charge; reads saved workspace data without starting paid provider work.","required_resolved_fields":[],"next_call":{"tool":"domain.intelligence.v2","arguments":{"params":{"action":"describe","operation":"icp.scope.facets.v2"}}},"catalog_revision":"07a373e389289e05","when_not_to_use":"Do not use this to count what a scope would grade — that is icp.grading.preview.v2.","description":"Use when: List the industries, owners and grades that actually have accounts behind them, so a grading scope cannot be built from values that match nothing. Returns/does: Reads the current authorized workspace state. Do not use when: Do not use this to count what a scope would grade — that is icp.grading.preview.v2. Identity comes from OAuth. Resolve exact IDs; use typed enums and bounded limits. Billing: Gateway and downstream billing depend on the operation; check its preview/quote and returned billing.","input_schema":{"additionalProperties":false,"properties":{"rubric_id":{"anyOf":[{"format":"uuid","type":"string"},{"type":"null"}],"default":null,"description":"Exact rubric UUID returned by a Hivekind search, list, get, preview, or resource call.","title":"Rubric Id"},"only_unscored":{"default":false,"description":"Only unscored used by the public icp scope facets input v2 operation.","title":"Only Unscored","type":"boolean"}},"title":"McpPublicIcpScopeFacetsInputV2","type":"object"},"output_schema":{"$defs":{"IcpScopeOwnerV1":{"additionalProperties":false,"properties":{"user_id":{"format":"uuid","title":"User Id","type":"string"},"name":{"maxLength":255,"minLength":1,"title":"Name","type":"string"}},"required":["user_id","name"],"title":"IcpScopeOwnerV1","type":"object"}},"additionalProperties":false,"description":"V2 result for icp.scope.facets.v2; preserves the established validators.","properties":{"industries":{"default":[],"items":{"type":"string"},"maxItems":500,"title":"Industries","type":"array"},"icp_grades":{"default":[],"items":{"type":"string"},"maxItems":8,"title":"Icp Grades","type":"array"},"owners":{"default":[],"items":{"$ref":"#/$defs/IcpScopeOwnerV1"},"maxItems":200,"title":"Owners","type":"array"}},"title":"PublicIcpScopeFacetsResultV2","type":"object"},"example":{"tool":"domain.intelligence.v2","arguments":{"params":{"action":"invoke","operation":"icp.scope.facets.v2","arguments":{},"operation_id":"00000000-0000-4000-8000-000000000003"}},"notice":"Fictional fixture IDs and example text. Resolve real IDs, use returned preview tokens and approve exact side effects before execution. Input validation is not proof of provider readiness or a successful business outcome."},"workflow_steps":[],"approval_policy":null,"idempotency_policy":"read_only","gateway_credit_code":null,"identity":"Workspace, actor and consent come from OAuth; do not supply identity fields.","retry":"Keep the same operation and operation_id when retrying identical work. Reconcile an uncertain result before new work; never replay an old V1 write under a new V2 ID.","completion":"Check status, execution_state, error_code, output and evidence/resource references. Queued work is not complete: poll jobs.status.get.v2 in domain.workspace.v2. For read-back verification require read_back_verified=true where returned; reconcile failures without creating another object.","result_envelope":{"status":"completed | partial | cancelled | failed","execution_state":"terminal | queued | reconciliation_required","output":"Completed results validate against output_schema; partial/reconciliation results can contain incomplete evidence and must not be treated as completion.","billing":"gateway_credits_spent, downstream_settlement, job_id; pending downstream settlement is not a final cost","references":"run_id, invocation_id, resource_refs, evidence_refs"},"documentation":"https://www.hivekind.ai/docs/mcp/intelligence#icp-scope-facets-v2"},{"operation":"icp.score.get.v2","domain":"intelligence","tool":"domain.intelligence.v2","title":"Read audited ICP score","purpose":"Read the latest audited score for your active rubric, with no new scoring or charge. A matched rubric disqualifier pins the grade to the lowest tier whatever the score, reported as disqualified and disqualification_reason. Use icp.grading.preview.v2 followed by icp.grading.start.v2 for fresh evaluation.","side_effects":"Reads current workspace state.","permission":"read","required_scopes":["accounts:read","icp:read","scoring:run"],"requires_operation_id":false,"billing":"No gateway credit charge; reads saved workspace data without starting paid provider work.","required_resolved_fields":[],"next_call":{"tool":"domain.intelligence.v2","arguments":{"params":{"action":"describe","operation":"icp.score.get.v2"}}},"catalog_revision":"07a373e389289e05","when_not_to_use":"Do not use this to read the rubric — that is icp.get.v2.","description":"Use when: Read the latest audited score for your active rubric, with no new scoring or charge. A matched rubric disqualifier pins the grade to the lowest tier whatever the score, reported as disqualified and disqualification_reason. Use icp.grading.preview.v2 followed by icp.grading.start.v2 for fresh evaluation. Returns/does: Reads the current authorized workspace state. Do not use when: Do not use this to read the rubric — that is icp.get.v2. Identity comes from OAuth. Resolve exact IDs; use typed enums and bounded limits. Billing: Gateway and downstream billing depend on the operation; check its preview/quote and returned billing.","input_schema":{"$defs":{"EvidenceFindingV1":{"additionalProperties":false,"properties":{"claim":{"maxLength":2000,"minLength":1,"title":"Claim","type":"string"},"source_url":{"anyOf":[{"format":"uri","maxLength":2083,"minLength":1,"type":"string"},{"type":"null"}],"default":null,"title":"Source Url"},"source_label":{"maxLength":255,"minLength":1,"title":"Source Label","type":"string"},"observed_at":{"anyOf":[{"maxLength":64,"type":"string"},{"type":"null"}],"default":null,"title":"Observed At"}},"required":["claim","source_label"],"title":"EvidenceFindingV1","type":"object"}},"additionalProperties":false,"properties":{"account_id":{"description":"Exact account UUID returned by a Hivekind search, list, get, preview, or resource call.","format":"uuid","title":"Account Id","type":"string"},"research_summary":{"default":"Read existing audited score.","description":"Legacy context; not used to calculate a score. Fresh evaluation uses the grading workflow.","maxLength":4000,"minLength":1,"title":"Research Summary","type":"string"},"evidence":{"default":[],"description":"Evidence used by the public icp score get input v2 operation.","items":{"$ref":"#/$defs/EvidenceFindingV1"},"title":"Evidence","type":"array"}},"required":["account_id"],"title":"McpPublicIcpScoreGetInputV2","type":"object"},"output_schema":{"additionalProperties":false,"description":"V2 result for icp.score.get.v2; preserves the established validators.","properties":{"account_id":{"format":"uuid","title":"Account Id","type":"string"},"score":{"maximum":100,"minimum":0,"title":"Score","type":"integer"},"grade":{"maxLength":32,"minLength":1,"title":"Grade","type":"string"},"rationale_summary":{"maxLength":2000,"minLength":1,"title":"Rationale Summary","type":"string"},"confidence":{"maximum":1,"minimum":0,"title":"Confidence","type":"number"},"rubric_id":{"anyOf":[{"format":"uuid","type":"string"},{"type":"null"}],"default":null,"title":"Rubric Id"},"score_id":{"anyOf":[{"format":"uuid","type":"string"},{"type":"null"}],"default":null,"title":"Score Id"},"scored_at":{"anyOf":[{"type":"string"},{"type":"null"}],"default":null,"title":"Scored At"},"provenance":{"default":"audited_snapshot","title":"Provenance","type":"string"},"disqualified":{"default":false,"description":"True when a rubric disqualifier matched. The grade is then the rubric's lowest tier regardless of the score.","title":"Disqualified","type":"boolean"},"disqualification_reason":{"anyOf":[{"maxLength":500,"type":"string"},{"type":"null"}],"default":null,"description":"Which disqualifier matched and why, when disqualified is true.","title":"Disqualification Reason"}},"required":["account_id","score","grade","rationale_summary","confidence"],"title":"PublicIcpScoreGetResultV2","type":"object"},"example":{"tool":"domain.intelligence.v2","arguments":{"params":{"action":"invoke","operation":"icp.score.get.v2","arguments":{"account_id":"00000000-0000-4000-8000-000000000001"},"operation_id":"00000000-0000-4000-8000-000000000003"}},"notice":"Fictional fixture IDs and example text. Resolve real IDs, use returned preview tokens and approve exact side effects before execution. Input validation is not proof of provider readiness or a successful business outcome."},"workflow_steps":[],"approval_policy":null,"idempotency_policy":"run_task_account_rubric","gateway_credit_code":null,"identity":"Workspace, actor and consent come from OAuth; do not supply identity fields.","retry":"Keep the same operation and operation_id when retrying identical work. Reconcile an uncertain result before new work; never replay an old V1 write under a new V2 ID.","completion":"Check status, execution_state, error_code, output and evidence/resource references. Queued work is not complete: poll jobs.status.get.v2 in domain.workspace.v2. For read-back verification require read_back_verified=true where returned; reconcile failures without creating another object.","result_envelope":{"status":"completed | partial | cancelled | failed","execution_state":"terminal | queued | reconciliation_required","output":"Completed results validate against output_schema; partial/reconciliation results can contain incomplete evidence and must not be treated as completion.","billing":"gateway_credits_spent, downstream_settlement, job_id; pending downstream settlement is not a final cost","references":"run_id, invocation_id, resource_refs, evidence_refs"},"documentation":"https://www.hivekind.ai/docs/mcp/intelligence#icp-score-get-v2"},{"operation":"icp.scores.get.v2","domain":"intelligence","tool":"domain.intelligence.v2","title":"Get saved ICP scores","purpose":"You have exact account IDs and need audited scores for the signed-in actor's active rubric.","side_effects":"Returns scored, unscored, or no-active-rubric state per account. Read only.","permission":"read","required_scopes":["accounts:read","icp:read"],"requires_operation_id":false,"billing":"No gateway credit charge; reads saved workspace data without starting paid provider work.","required_resolved_fields":[],"next_call":{"tool":"domain.intelligence.v2","arguments":{"params":{"action":"describe","operation":"icp.scores.get.v2"}}},"catalog_revision":"07a373e389289e05","when_not_to_use":"You need fresh grading; use the Intelligence grading preview and start tools.","description":"Use when: You have exact account IDs and need audited scores for the signed-in actor's active rubric. Returns/does: Returns scored, unscored, or no-active-rubric state per account. Read only. Do not use when: You need fresh grading; use the Intelligence grading preview and start tools. Identity comes from OAuth. Resolve exact IDs; use typed enums and bounded limits. Billing: Gateway and downstream billing depend on the operation; check its preview/quote and returned billing.","input_schema":{"additionalProperties":false,"properties":{"account_ids":{"description":"Exact account UUIDs whose saved audited scores should be read.","items":{"format":"uuid","type":"string"},"maxItems":100,"minItems":1,"title":"Account Ids","type":"array"}},"required":["account_ids"],"title":"McpIcpScoresGetInputV2","type":"object"},"output_schema":{"$defs":{"IcpScoreSnapshotV2":{"additionalProperties":false,"properties":{"account_id":{"format":"uuid","title":"Account Id","type":"string"},"account_name":{"maxLength":255,"minLength":1,"title":"Account Name","type":"string"},"score_state":{"enum":["scored","unscored","no_active_rubric"],"title":"Score State","type":"string"},"score":{"anyOf":[{"maximum":100,"minimum":0,"type":"integer"},{"type":"null"}],"default":null,"title":"Score"},"grade":{"anyOf":[{"maxLength":32,"type":"string"},{"type":"null"}],"default":null,"title":"Grade"},"rubric_id":{"anyOf":[{"format":"uuid","type":"string"},{"type":"null"}],"default":null,"title":"Rubric Id"},"rubric_name":{"anyOf":[{"maxLength":160,"type":"string"},{"type":"null"}],"default":null,"title":"Rubric Name"},"rubric_version":{"anyOf":[{"minimum":1,"type":"integer"},{"type":"null"}],"default":null,"title":"Rubric Version"},"score_id":{"anyOf":[{"format":"uuid","type":"string"},{"type":"null"}],"default":null,"title":"Score Id"},"scored_at":{"anyOf":[{"format":"date-time","type":"string"},{"type":"null"}],"default":null,"title":"Scored At"},"breakdown":{"additionalProperties":true,"title":"Breakdown","type":"object"}},"required":["account_id","account_name","score_state"],"title":"IcpScoreSnapshotV2","type":"object"}},"additionalProperties":false,"properties":{"scores":{"default":[],"items":{"$ref":"#/$defs/IcpScoreSnapshotV2"},"maxItems":100,"title":"Scores","type":"array"},"missing_account_ids":{"default":[],"items":{"format":"uuid","type":"string"},"maxItems":100,"title":"Missing Account Ids","type":"array"}},"title":"IcpScoresGetResultV2","type":"object"},"example":{"tool":"domain.intelligence.v2","arguments":{"params":{"action":"invoke","operation":"icp.scores.get.v2","arguments":{"account_ids":["00000000-0000-4000-8000-000000000001"]},"operation_id":"00000000-0000-4000-8000-000000000003"}},"notice":"Fictional fixture IDs and example text. Resolve real IDs, use returned preview tokens and approve exact side effects before execution. Input validation is not proof of provider readiness or a successful business outcome."},"workflow_steps":[],"approval_policy":null,"idempotency_policy":"read_only","gateway_credit_code":null,"identity":"Workspace, actor and consent come from OAuth; do not supply identity fields.","retry":"Keep the same operation and operation_id when retrying identical work. Reconcile an uncertain result before new work; never replay an old V1 write under a new V2 ID.","completion":"Check status, execution_state, error_code, output and evidence/resource references. Queued work is not complete: poll jobs.status.get.v2 in domain.workspace.v2. For read-back verification require read_back_verified=true where returned; reconcile failures without creating another object.","result_envelope":{"status":"completed | partial | cancelled | failed","execution_state":"terminal | queued | reconciliation_required","output":"Completed results validate against output_schema; partial/reconciliation results can contain incomplete evidence and must not be treated as completion.","billing":"gateway_credits_spent, downstream_settlement, job_id; pending downstream settlement is not a final cost","references":"run_id, invocation_id, resource_refs, evidence_refs"},"documentation":"https://www.hivekind.ai/docs/mcp/intelligence#icp-scores-get-v2"},{"operation":"inbox.item.get.v2","domain":"inbox","tool":"domain.inbox.v2","title":"Get inbox item","purpose":"Load one inbox item by item_key from inbox.search.v2.","side_effects":"Reads current workspace state.","permission":"read","required_scopes":["runs:read"],"requires_operation_id":false,"billing":"No gateway credit charge; reads saved workspace data without starting paid provider work.","required_resolved_fields":[],"next_call":{"tool":"domain.inbox.v2","arguments":{"params":{"action":"describe","operation":"inbox.item.get.v2"}}},"catalog_revision":"07a373e389289e05","when_not_to_use":"Prefer hivekind://inbox/{item_key}. Do not use this to list items.","description":"Use when: Load one inbox item by item_key from inbox.search.v2. Returns/does: Reads the current authorized workspace state. Do not use when: Prefer hivekind://inbox/{item_key}. Do not use this to list items. Identity comes from OAuth. Resolve exact IDs; use typed enums and bounded limits. Billing: Gateway and downstream billing depend on the operation; check its preview/quote and returned billing.","input_schema":{"additionalProperties":false,"properties":{"item_key":{"description":"Item key used by the public inbox item get input v2 operation.","maxLength":320,"minLength":3,"pattern":"^(agent_request|reply_thread|signal):[0-9a-fA-F-]{36}$","title":"Item Key","type":"string"}},"required":["item_key"],"title":"McpPublicInboxItemGetInputV2","type":"object"},"output_schema":{"$defs":{"UnifiedInboxSummaryV1":{"additionalProperties":false,"properties":{"item_key":{"maxLength":320,"minLength":1,"title":"Item Key","type":"string"},"source_type":{"enum":["agent_request","reply_thread","signal"],"title":"Source Type","type":"string"},"title":{"maxLength":500,"minLength":1,"title":"Title","type":"string"},"preview":{"anyOf":[{"maxLength":2000,"type":"string"},{"type":"null"}],"default":null,"title":"Preview"},"account_name":{"anyOf":[{"maxLength":255,"type":"string"},{"type":"null"}],"default":null,"title":"Account Name"},"occurred_at":{"format":"date-time","title":"Occurred At","type":"string"},"unread":{"title":"Unread","type":"boolean"},"important":{"title":"Important","type":"boolean"},"status":{"anyOf":[{"maxLength":64,"type":"string"},{"type":"null"}],"default":null,"title":"Status"},"resource_refs":{"default":[],"items":{"type":"string"},"title":"Resource Refs","type":"array"},"untrusted_content":{"const":true,"default":true,"title":"Untrusted Content","type":"boolean"}},"required":["item_key","source_type","title","occurred_at","unread","important"],"title":"UnifiedInboxSummaryV1","type":"object"}},"additionalProperties":false,"description":"V2 result for inbox.item.get.v2; preserves the established validators.","properties":{"item":{"$ref":"#/$defs/UnifiedInboxSummaryV1"},"context":{"additionalProperties":{"anyOf":[{"type":"string"},{"type":"integer"},{"type":"number"},{"type":"boolean"},{"type":"null"}]},"title":"Context","type":"object"}},"required":["item"],"title":"PublicInboxItemGetResultV2","type":"object"},"example":{"tool":"domain.inbox.v2","arguments":{"params":{"action":"invoke","operation":"inbox.item.get.v2","arguments":{"item_key":"reply_thread:00000000-0000-4000-8000-000000000001"},"operation_id":"00000000-0000-4000-8000-000000000003"}},"notice":"Fictional fixture IDs and example text. Resolve real IDs, use returned preview tokens and approve exact side effects before execution. Input validation is not proof of provider readiness or a successful business outcome."},"workflow_steps":[],"approval_policy":null,"idempotency_policy":"read_only","gateway_credit_code":null,"identity":"Workspace, actor and consent come from OAuth; do not supply identity fields.","retry":"Keep the same operation and operation_id when retrying identical work. Reconcile an uncertain result before new work; never replay an old V1 write under a new V2 ID.","completion":"Check status, execution_state, error_code, output and evidence/resource references. Queued work is not complete: poll jobs.status.get.v2 in domain.workspace.v2. For read-back verification require read_back_verified=true where returned; reconcile failures without creating another object.","result_envelope":{"status":"completed | partial | cancelled | failed","execution_state":"terminal | queued | reconciliation_required","output":"Completed results validate against output_schema; partial/reconciliation results can contain incomplete evidence and must not be treated as completion.","billing":"gateway_credits_spent, downstream_settlement, job_id; pending downstream settlement is not a final cost","references":"run_id, invocation_id, resource_refs, evidence_refs"},"documentation":"https://www.hivekind.ai/docs/mcp/inbox#inbox-item-get-v2"},{"operation":"inbox.search.v2","domain":"inbox","tool":"domain.inbox.v2","title":"Search inbox work","purpose":"You need to find bounded unread, important, or matching inbox items.","side_effects":"Returns summaries and resource references. Read only.","permission":"read","required_scopes":["runs:read"],"requires_operation_id":false,"billing":"No gateway credit charge; reads saved workspace data without starting paid provider work.","required_resolved_fields":[],"next_call":{"tool":"domain.inbox.v2","arguments":{"params":{"action":"describe","operation":"inbox.search.v2"}}},"catalog_revision":"07a373e389289e05","when_not_to_use":"You already have an item key and need its permitted thread context.","description":"Use when: You need to find bounded unread, important, or matching inbox items. Returns/does: Returns summaries and resource references. Read only. Do not use when: You already have an item key and need its permitted thread context. Identity comes from OAuth. Resolve exact IDs; use typed enums and bounded limits. Billing: Gateway and downstream billing depend on the operation; check its preview/quote and returned billing.","input_schema":{"additionalProperties":false,"properties":{"query":{"anyOf":[{"maxLength":200,"type":"string"},{"type":"null"}],"default":null,"description":"Search text. Use a name, domain, title, or other identifying phrase relevant to this operation.","title":"Query"},"source_type":{"anyOf":[{"enum":["agent_request","reply_thread","signal"],"type":"string"},{"type":"null"}],"default":null,"description":"Source type used by the inbox search input v2 operation.","title":"Source Type"},"important_only":{"default":false,"description":"Important only used by the inbox search input v2 operation.","title":"Important Only","type":"boolean"},"unread_only":{"default":false,"description":"Unread only used by the inbox search input v2 operation.","title":"Unread Only","type":"boolean"},"limit":{"default":50,"description":"Maximum number of records to return in this page.","maximum":100,"minimum":1,"title":"Limit","type":"integer"}},"title":"McpInboxSearchInputV2","type":"object"},"output_schema":{"$defs":{"UnifiedInboxSummaryV1":{"additionalProperties":false,"properties":{"item_key":{"maxLength":320,"minLength":1,"title":"Item Key","type":"string"},"source_type":{"enum":["agent_request","reply_thread","signal"],"title":"Source Type","type":"string"},"title":{"maxLength":500,"minLength":1,"title":"Title","type":"string"},"preview":{"anyOf":[{"maxLength":2000,"type":"string"},{"type":"null"}],"default":null,"title":"Preview"},"account_name":{"anyOf":[{"maxLength":255,"type":"string"},{"type":"null"}],"default":null,"title":"Account Name"},"occurred_at":{"format":"date-time","title":"Occurred At","type":"string"},"unread":{"title":"Unread","type":"boolean"},"important":{"title":"Important","type":"boolean"},"status":{"anyOf":[{"maxLength":64,"type":"string"},{"type":"null"}],"default":null,"title":"Status"},"resource_refs":{"default":[],"items":{"type":"string"},"title":"Resource Refs","type":"array"},"untrusted_content":{"const":true,"default":true,"title":"Untrusted Content","type":"boolean"}},"required":["item_key","source_type","title","occurred_at","unread","important"],"title":"UnifiedInboxSummaryV1","type":"object"}},"additionalProperties":false,"properties":{"items":{"default":[],"items":{"$ref":"#/$defs/UnifiedInboxSummaryV1"},"title":"Items","type":"array"},"truncated":{"default":false,"title":"Truncated","type":"boolean"}},"title":"InboxSearchResultV2","type":"object"},"example":{"tool":"domain.inbox.v2","arguments":{"params":{"action":"invoke","operation":"inbox.search.v2","arguments":{},"operation_id":"00000000-0000-4000-8000-000000000003"}},"notice":"Fictional fixture IDs and example text. Resolve real IDs, use returned preview tokens and approve exact side effects before execution. Input validation is not proof of provider readiness or a successful business outcome."},"workflow_steps":[],"approval_policy":null,"idempotency_policy":"read_only","gateway_credit_code":null,"identity":"Workspace, actor and consent come from OAuth; do not supply identity fields.","retry":"Keep the same operation and operation_id when retrying identical work. Reconcile an uncertain result before new work; never replay an old V1 write under a new V2 ID.","completion":"Check status, execution_state, error_code, output and evidence/resource references. Queued work is not complete: poll jobs.status.get.v2 in domain.workspace.v2. For read-back verification require read_back_verified=true where returned; reconcile failures without creating another object.","result_envelope":{"status":"completed | partial | cancelled | failed","execution_state":"terminal | queued | reconciliation_required","output":"Completed results validate against output_schema; partial/reconciliation results can contain incomplete evidence and must not be treated as completion.","billing":"gateway_credits_spent, downstream_settlement, job_id; pending downstream settlement is not a final cost","references":"run_id, invocation_id, resource_refs, evidence_refs"},"documentation":"https://www.hivekind.ai/docs/mcp/inbox#inbox-search-v2"},{"operation":"inbox.state.set.v2","domain":"inbox","tool":"domain.inbox.v2","title":"Update inbox state","purpose":"Mark an inbox item read, done, or similar.","side_effects":"Changes inbox item state for the signed-in user.","permission":"execute","required_scopes":["actions:execute"],"requires_operation_id":true,"billing":"No gateway rate is configured. Check the Core workflow preview/quote for downstream charges and final settlement.","required_resolved_fields":[],"next_call":{"tool":"domain.inbox.v2","arguments":{"params":{"action":"describe","operation":"inbox.state.set.v2"}}},"catalog_revision":"07a373e389289e05","when_not_to_use":"Do not use this to send a reply — that is replies.send.v2.","description":"Use when: Mark an inbox item read, done, or similar. Returns/does: Changes inbox item state for the signed-in user. Do not use when: Do not use this to send a reply — that is replies.send.v2. Identity comes from OAuth. Resolve exact IDs; use typed enums and bounded limits. Billing: Gateway and downstream billing depend on the operation; check its preview/quote and returned billing.","input_schema":{"additionalProperties":false,"properties":{"action_proposal_id":{"anyOf":[{"format":"uuid","type":"string"},{"type":"null"}],"default":null,"description":"Optional. Hivekind fills this from the MCP consent grant.","title":"Action Proposal Id"},"item_key":{"description":"Item key used by the inbox state set input v2 operation.","maxLength":320,"minLength":3,"pattern":"^(agent_request|reply_thread|signal):[0-9a-fA-F-]{36}$","title":"Item Key","type":"string"},"expected_revision":{"anyOf":[{"minimum":1,"type":"integer"},{"type":"null"}],"default":null,"description":"Expected revision used by the inbox state set input v2 operation.","title":"Expected Revision"},"is_important":{"anyOf":[{"type":"boolean"},{"type":"null"}],"default":null,"description":"Whether to apply is important for this operation.","title":"Is Important"},"manually_unread":{"anyOf":[{"type":"boolean"},{"type":"null"}],"default":null,"description":"Manually unread used by the inbox state set input v2 operation.","title":"Manually Unread"},"snoozed_until":{"anyOf":[{"format":"date-time","type":"string"},{"type":"null"}],"default":null,"description":"Snoozed until used by the inbox state set input v2 operation.","title":"Snoozed Until"},"source_version":{"anyOf":[{"maxLength":255,"minLength":1,"type":"string"},{"type":"null"}],"default":null,"description":"Source version used by the inbox state set input v2 operation.","title":"Source Version"},"clear_snooze":{"default":false,"description":"Clear snooze used by the inbox state set input v2 operation.","title":"Clear Snooze","type":"boolean"},"dismissed":{"anyOf":[{"type":"boolean"},{"type":"null"}],"default":null,"description":"Dismissed used by the inbox state set input v2 operation.","title":"Dismissed"}},"required":["item_key"],"title":"McpMcpInboxStateSetInputV2","type":"object"},"output_schema":{"additionalProperties":false,"properties":{"item_key":{"maxLength":320,"minLength":3,"title":"Item Key","type":"string"},"revision":{"minimum":1,"title":"Revision","type":"integer"},"is_important":{"title":"Is Important","type":"boolean"},"manually_unread":{"title":"Manually Unread","type":"boolean"},"snoozed_until":{"anyOf":[{"format":"date-time","type":"string"},{"type":"null"}],"default":null,"title":"Snoozed Until"},"dismissed_at":{"anyOf":[{"format":"date-time","type":"string"},{"type":"null"}],"default":null,"title":"Dismissed At"}},"required":["item_key","revision","is_important","manually_unread"],"title":"InboxStateSetResultV2","type":"object"},"example":{"tool":"domain.inbox.v2","arguments":{"params":{"action":"invoke","operation":"inbox.state.set.v2","arguments":{"is_important":true,"item_key":"reply_thread:00000000-0000-4000-8000-000000000001"},"operation_id":"00000000-0000-4000-8000-000000000003"}},"notice":"Fictional fixture IDs and example text. Resolve real IDs, use returned preview tokens and approve exact side effects before execution. Input validation is not proof of provider readiness or a successful business outcome."},"workflow_steps":[],"approval_policy":"exact_scope_single_action","idempotency_policy":"approved_action_outbox","gateway_credit_code":null,"identity":"Workspace, actor and consent come from OAuth; do not supply identity fields.","retry":"Keep the same operation and operation_id when retrying identical work. Reconcile an uncertain result before new work; never replay an old V1 write under a new V2 ID.","completion":"Check status, execution_state, error_code, output and evidence/resource references. Queued work is not complete: poll jobs.status.get.v2 in domain.workspace.v2. For read-back verification require read_back_verified=true where returned; reconcile failures without creating another object.","result_envelope":{"status":"completed | partial | cancelled | failed","execution_state":"terminal | queued | reconciliation_required","output":"Completed results validate against output_schema; partial/reconciliation results can contain incomplete evidence and must not be treated as completion.","billing":"gateway_credits_spent, downstream_settlement, job_id; pending downstream settlement is not a final cost","references":"run_id, invocation_id, resource_refs, evidence_refs"},"documentation":"https://www.hivekind.ai/docs/mcp/inbox#inbox-state-set-v2"},{"operation":"inbox.thread.v2","domain":"inbox","tool":"domain.inbox.v2","title":"Get inbox thread","purpose":"Load the email/LinkedIn thread for one contact when you already have contact_id.","side_effects":"Reads current workspace state.","permission":"read","required_scopes":["runs:read"],"requires_operation_id":false,"billing":"No gateway credit charge; reads saved workspace data without starting paid provider work.","required_resolved_fields":[],"next_call":{"tool":"domain.inbox.v2","arguments":{"params":{"action":"describe","operation":"inbox.thread.v2"}}},"catalog_revision":"07a373e389289e05","when_not_to_use":"Prefer hivekind://inbox/{item_key} after inbox.search.v2 if you only have an inbox item.","description":"Use when: Load the email/LinkedIn thread for one contact when you already have contact_id. Returns/does: Reads the current authorized workspace state. Do not use when: Prefer hivekind://inbox/{item_key} after inbox.search.v2 if you only have an inbox item. Identity comes from OAuth. Resolve exact IDs; use typed enums and bounded limits. Billing: Gateway and downstream billing depend on the operation; check its preview/quote and returned billing.","input_schema":{"additionalProperties":false,"properties":{"contact_id":{"description":"Exact contact UUID returned by a Hivekind search, list, get, preview, or resource call.","format":"uuid","title":"Contact Id","type":"string"},"limit":{"default":50,"description":"Maximum number of records to return in this page.","maximum":100,"minimum":1,"title":"Limit","type":"integer"}},"required":["contact_id"],"title":"McpPublicInboxThreadInputV2","type":"object"},"output_schema":{"$defs":{"ConversationEntryV1":{"additionalProperties":false,"properties":{"entry_id":{"format":"uuid","title":"Entry Id","type":"string"},"direction":{"enum":["inbound","outbound","draft"],"title":"Direction","type":"string"},"channel":{"maxLength":64,"minLength":1,"title":"Channel","type":"string"},"subject":{"anyOf":[{"maxLength":1000,"type":"string"},{"type":"null"}],"default":null,"title":"Subject"},"content":{"default":"","maxLength":8000,"title":"Content","type":"string"},"occurred_at":{"format":"date-time","title":"Occurred At","type":"string"},"status":{"anyOf":[{"maxLength":64,"type":"string"},{"type":"null"}],"default":null,"title":"Status"},"intent":{"anyOf":[{"maxLength":128,"type":"string"},{"type":"null"}],"default":null,"title":"Intent"},"sentiment":{"anyOf":[{"maxLength":128,"type":"string"},{"type":"null"}],"default":null,"title":"Sentiment"},"untrusted_content":{"const":true,"default":true,"title":"Untrusted Content","type":"boolean"}},"required":["entry_id","direction","channel","occurred_at"],"title":"ConversationEntryV1","type":"object"}},"additionalProperties":false,"description":"V2 result for inbox.thread.v2; preserves the established validators.","properties":{"contact_id":{"format":"uuid","title":"Contact Id","type":"string"},"contact_name":{"maxLength":255,"minLength":1,"title":"Contact Name","type":"string"},"contact_email":{"anyOf":[{"maxLength":320,"type":"string"},{"type":"null"}],"default":null,"title":"Contact Email"},"account_id":{"format":"uuid","title":"Account Id","type":"string"},"account_name":{"maxLength":255,"minLength":1,"title":"Account Name","type":"string"},"messages":{"default":[],"items":{"$ref":"#/$defs/ConversationEntryV1"},"title":"Messages","type":"array"},"truncated":{"default":false,"title":"Truncated","type":"boolean"}},"required":["contact_id","contact_name","account_id","account_name"],"title":"PublicInboxThreadResultV2","type":"object"},"example":{"tool":"domain.inbox.v2","arguments":{"params":{"action":"invoke","operation":"inbox.thread.v2","arguments":{"contact_id":"00000000-0000-4000-8000-000000000001"},"operation_id":"00000000-0000-4000-8000-000000000003"}},"notice":"Fictional fixture IDs and example text. Resolve real IDs, use returned preview tokens and approve exact side effects before execution. Input validation is not proof of provider readiness or a successful business outcome."},"workflow_steps":[],"approval_policy":null,"idempotency_policy":"read_only","gateway_credit_code":null,"identity":"Workspace, actor and consent come from OAuth; do not supply identity fields.","retry":"Keep the same operation and operation_id when retrying identical work. Reconcile an uncertain result before new work; never replay an old V1 write under a new V2 ID.","completion":"Check status, execution_state, error_code, output and evidence/resource references. Queued work is not complete: poll jobs.status.get.v2 in domain.workspace.v2. For read-back verification require read_back_verified=true where returned; reconcile failures without creating another object.","result_envelope":{"status":"completed | partial | cancelled | failed","execution_state":"terminal | queued | reconciliation_required","output":"Completed results validate against output_schema; partial/reconciliation results can contain incomplete evidence and must not be treated as completion.","billing":"gateway_credits_spent, downstream_settlement, job_id; pending downstream settlement is not a final cost","references":"run_id, invocation_id, resource_refs, evidence_refs"},"documentation":"https://www.hivekind.ai/docs/mcp/inbox#inbox-thread-v2"},{"operation":"industry.scouts.create.v2","domain":"signals","tool":"domain.signals.v2","title":"Create an industry scout","purpose":"The user approved a market monitor with Library Signal Type IDs and a defined scope.","side_effects":"Creates a workspace monitor and may start provider collection and credit usage.","permission":"execute","required_scopes":["actions:execute"],"requires_operation_id":true,"billing":"No gateway rate is configured. Check the Core workflow preview/quote for downstream charges and final settlement.","required_resolved_fields":[],"next_call":{"tool":"domain.signals.v2","arguments":{"params":{"action":"describe","operation":"industry.scouts.create.v2"}}},"catalog_revision":"07a373e389289e05","when_not_to_use":"The signal types have not been resolved from the Library.","description":"Use when: The user approved a market monitor with Library Signal Type IDs and a defined scope. Returns/does: Creates a workspace monitor and may start provider collection and credit usage. Do not use when: The signal types have not been resolved from the Library. Identity comes from OAuth. Resolve exact IDs; use typed enums and bounded limits. Billing: Gateway and downstream billing depend on the operation; check its preview/quote and returned billing.","input_schema":{"$defs":{"IndustryScoutGeographyV2":{"additionalProperties":false,"properties":{"kind":{"enum":["continent","country","region"],"title":"Kind","type":"string"},"code":{"maxLength":64,"minLength":1,"title":"Code","type":"string"},"label":{"maxLength":120,"minLength":1,"title":"Label","type":"string"}},"required":["kind","code","label"],"title":"IndustryScoutGeographyV2","type":"object"},"IndustryScoutRuleV2":{"additionalProperties":false,"properties":{"rule":{"maxLength":1000,"minLength":1,"title":"Rule","type":"string"},"weight":{"default":1,"minimum":0,"title":"Weight","type":"number"}},"required":["rule"],"title":"IndustryScoutRuleV2","type":"object"}},"additionalProperties":false,"properties":{"signal_type_ids":{"description":"Library Signal Type IDs to monitor.","items":{"format":"uuid","type":"string"},"minItems":1,"title":"Signal Type Ids","type":"array"},"name":{"anyOf":[{"maxLength":160,"type":"string"},{"type":"null"}],"default":null,"description":"Human-readable name for the record.","title":"Name"},"industry":{"anyOf":[{"maxLength":200,"type":"string"},{"type":"null"}],"default":null,"description":"Industry used by the industry scout create input v2 operation.","title":"Industry"},"geography":{"default":[],"description":"Geography used by the industry scout create input v2 operation.","items":{"$ref":"#/$defs/IndustryScoutGeographyV2"},"title":"Geography","type":"array"},"cadence":{"anyOf":[{"enum":["hourly","daily","every_3_days","weekly","every_two_weeks"],"type":"string"},{"type":"null"}],"default":null,"description":"Cadence used by the industry scout create input v2 operation.","title":"Cadence"},"auto_enrich_contacts":{"default":true,"description":"Auto enrich contacts used by the industry scout create input v2 operation.","title":"Auto Enrich Contacts","type":"boolean"},"trigger_rules":{"additionalProperties":{"items":{"$ref":"#/$defs/IndustryScoutRuleV2"},"type":"array"},"description":"Trigger rules used by the industry scout create input v2 operation.","title":"Trigger Rules","type":"object"},"trigger_threshold":{"default":70,"description":"Trigger threshold used by the industry scout create input v2 operation.","maximum":100,"minimum":0,"title":"Trigger Threshold","type":"integer"},"action_proposal_id":{"anyOf":[{"format":"uuid","type":"string"},{"type":"null"}],"default":null,"description":"Optional. Hivekind fills this from the MCP consent grant.","title":"Action Proposal Id"}},"required":["signal_type_ids"],"title":"McpMcpIndustryScoutCreateInputV2","type":"object"},"output_schema":{"additionalProperties":true,"properties":{"scout_id":{"format":"uuid","title":"Scout Id","type":"string"},"name":{"anyOf":[{"type":"string"},{"type":"null"}],"default":null,"title":"Name"},"industry":{"anyOf":[{"type":"string"},{"type":"null"}],"default":null,"title":"Industry"},"status":{"title":"Status","type":"string"},"cadence":{"title":"Cadence","type":"string"},"signal_type_bindings":{"items":{"additionalProperties":true,"type":"object"},"title":"Signal Type Bindings","type":"array"},"geography":{"items":{"additionalProperties":true,"type":"object"},"title":"Geography","type":"array"},"trigger_threshold":{"default":70,"title":"Trigger Threshold","type":"integer"},"discovered_count":{"default":0,"title":"Discovered Count","type":"integer"}},"required":["scout_id","status","cadence"],"title":"IndustryScoutRecordV2","type":"object"},"example":{"tool":"domain.signals.v2","arguments":{"params":{"action":"invoke","operation":"industry.scouts.create.v2","arguments":{"signal_type_ids":["00000000-0000-4000-8000-000000000001"]},"operation_id":"00000000-0000-4000-8000-000000000003"}},"notice":"Fictional fixture IDs and example text. Resolve real IDs, use returned preview tokens and approve exact side effects before execution. Input validation is not proof of provider readiness or a successful business outcome."},"workflow_steps":[],"approval_policy":"exact_scope_single_action","idempotency_policy":"approved_action_outbox","gateway_credit_code":null,"identity":"Workspace, actor and consent come from OAuth; do not supply identity fields.","retry":"Keep the same operation and operation_id when retrying identical work. Reconcile an uncertain result before new work; never replay an old V1 write under a new V2 ID.","completion":"Check status, execution_state, error_code, output and evidence/resource references. Queued work is not complete: poll jobs.status.get.v2 in domain.workspace.v2. For read-back verification require read_back_verified=true where returned; reconcile failures without creating another object.","result_envelope":{"status":"completed | partial | cancelled | failed","execution_state":"terminal | queued | reconciliation_required","output":"Completed results validate against output_schema; partial/reconciliation results can contain incomplete evidence and must not be treated as completion.","billing":"gateway_credits_spent, downstream_settlement, job_id; pending downstream settlement is not a final cost","references":"run_id, invocation_id, resource_refs, evidence_refs"},"documentation":"https://www.hivekind.ai/docs/mcp/signals#industry-scouts-create-v2"},{"operation":"industry.scouts.delete.v2","domain":"signals","tool":"domain.signals.v2","title":"Delete an industry scout","purpose":"The user explicitly approved permanent removal of an exact scout and its discoveries.","side_effects":"Permanently removes the scout and its discoveries. Linked accounts remain.","permission":"execute","required_scopes":["actions:execute"],"requires_operation_id":true,"billing":"No gateway rate is configured. Check the Core workflow preview/quote for downstream charges and final settlement.","required_resolved_fields":[],"next_call":{"tool":"domain.signals.v2","arguments":{"params":{"action":"describe","operation":"industry.scouts.delete.v2"}}},"catalog_revision":"07a373e389289e05","when_not_to_use":"The user only wants to stop collection; update status to paused instead.","description":"Use when: The user explicitly approved permanent removal of an exact scout and its discoveries. Returns/does: Permanently removes the scout and its discoveries. Linked accounts remain. Do not use when: The user only wants to stop collection; update status to paused instead. Identity comes from OAuth. Resolve exact IDs; use typed enums and bounded limits. Billing: Gateway and downstream billing depend on the operation; check its preview/quote and returned billing.","input_schema":{"additionalProperties":false,"properties":{"scout_id":{"description":"Exact scout UUID returned by a Hivekind search, list, get, preview, or resource call.","format":"uuid","title":"Scout Id","type":"string"},"action_proposal_id":{"anyOf":[{"format":"uuid","type":"string"},{"type":"null"}],"default":null,"description":"Optional. Hivekind fills this from the MCP consent grant.","title":"Action Proposal Id"}},"required":["scout_id"],"title":"McpMcpIndustryScoutDeleteInputV2","type":"object"},"output_schema":{"properties":{"scout_id":{"format":"uuid","title":"Scout Id","type":"string"},"deleted":{"title":"Deleted","type":"boolean"}},"required":["scout_id","deleted"],"title":"IndustryScoutDeleteResultV2","type":"object"},"example":{"tool":"domain.signals.v2","arguments":{"params":{"action":"invoke","operation":"industry.scouts.delete.v2","arguments":{"scout_id":"00000000-0000-4000-8000-000000000001"},"operation_id":"00000000-0000-4000-8000-000000000003"}},"notice":"Fictional fixture IDs and example text. Resolve real IDs, use returned preview tokens and approve exact side effects before execution. Input validation is not proof of provider readiness or a successful business outcome."},"workflow_steps":[],"approval_policy":"exact_scope_single_action","idempotency_policy":"approved_action_outbox","gateway_credit_code":null,"identity":"Workspace, actor and consent come from OAuth; do not supply identity fields.","retry":"Keep the same operation and operation_id when retrying identical work. Reconcile an uncertain result before new work; never replay an old V1 write under a new V2 ID.","completion":"Check status, execution_state, error_code, output and evidence/resource references. Queued work is not complete: poll jobs.status.get.v2 in domain.workspace.v2. For read-back verification require read_back_verified=true where returned; reconcile failures without creating another object.","result_envelope":{"status":"completed | partial | cancelled | failed","execution_state":"terminal | queued | reconciliation_required","output":"Completed results validate against output_schema; partial/reconciliation results can contain incomplete evidence and must not be treated as completion.","billing":"gateway_credits_spent, downstream_settlement, job_id; pending downstream settlement is not a final cost","references":"run_id, invocation_id, resource_refs, evidence_refs"},"documentation":"https://www.hivekind.ai/docs/mcp/signals#industry-scouts-delete-v2"},{"operation":"industry.scouts.get.v2","domain":"signals","tool":"domain.signals.v2","title":"Get an industry scout","purpose":"Read one scout's exact signal types, scope, cadence, threshold, and status.","side_effects":"Reads current workspace state.","permission":"read","required_scopes":["accounts:read"],"requires_operation_id":false,"billing":"No gateway credit charge; reads saved workspace data without starting paid provider work.","required_resolved_fields":[],"next_call":{"tool":"domain.signals.v2","arguments":{"params":{"action":"describe","operation":"industry.scouts.get.v2"}}},"catalog_revision":"07a373e389289e05","when_not_to_use":"You have not resolved its scout_id; list scouts first.","description":"Use when: Read one scout's exact signal types, scope, cadence, threshold, and status. Returns/does: Reads the current authorized workspace state. Do not use when: You have not resolved its scout_id; list scouts first. Identity comes from OAuth. Resolve exact IDs; use typed enums and bounded limits. Billing: Gateway and downstream billing depend on the operation; check its preview/quote and returned billing.","input_schema":{"additionalProperties":false,"properties":{"scout_id":{"description":"Exact scout UUID returned by a Hivekind search, list, get, preview, or resource call.","format":"uuid","title":"Scout Id","type":"string"}},"required":["scout_id"],"title":"McpIndustryScoutGetInputV2","type":"object"},"output_schema":{"additionalProperties":true,"properties":{"scout_id":{"format":"uuid","title":"Scout Id","type":"string"},"name":{"anyOf":[{"type":"string"},{"type":"null"}],"default":null,"title":"Name"},"industry":{"anyOf":[{"type":"string"},{"type":"null"}],"default":null,"title":"Industry"},"status":{"title":"Status","type":"string"},"cadence":{"title":"Cadence","type":"string"},"signal_type_bindings":{"items":{"additionalProperties":true,"type":"object"},"title":"Signal Type Bindings","type":"array"},"geography":{"items":{"additionalProperties":true,"type":"object"},"title":"Geography","type":"array"},"trigger_threshold":{"default":70,"title":"Trigger Threshold","type":"integer"},"discovered_count":{"default":0,"title":"Discovered Count","type":"integer"}},"required":["scout_id","status","cadence"],"title":"IndustryScoutRecordV2","type":"object"},"example":{"tool":"domain.signals.v2","arguments":{"params":{"action":"invoke","operation":"industry.scouts.get.v2","arguments":{"scout_id":"00000000-0000-4000-8000-000000000001"},"operation_id":"00000000-0000-4000-8000-000000000003"}},"notice":"Fictional fixture IDs and example text. Resolve real IDs, use returned preview tokens and approve exact side effects before execution. Input validation is not proof of provider readiness or a successful business outcome."},"workflow_steps":[],"approval_policy":null,"idempotency_policy":"read_only","gateway_credit_code":null,"identity":"Workspace, actor and consent come from OAuth; do not supply identity fields.","retry":"Keep the same operation and operation_id when retrying identical work. Reconcile an uncertain result before new work; never replay an old V1 write under a new V2 ID.","completion":"Check status, execution_state, error_code, output and evidence/resource references. Queued work is not complete: poll jobs.status.get.v2 in domain.workspace.v2. For read-back verification require read_back_verified=true where returned; reconcile failures without creating another object.","result_envelope":{"status":"completed | partial | cancelled | failed","execution_state":"terminal | queued | reconciliation_required","output":"Completed results validate against output_schema; partial/reconciliation results can contain incomplete evidence and must not be treated as completion.","billing":"gateway_credits_spent, downstream_settlement, job_id; pending downstream settlement is not a final cost","references":"run_id, invocation_id, resource_refs, evidence_refs"},"documentation":"https://www.hivekind.ai/docs/mcp/signals#industry-scouts-get-v2"},{"operation":"industry.scouts.list.v2","domain":"signals","tool":"domain.signals.v2","title":"List industry scouts","purpose":"Find workspace-wide market monitors and their configuration before selecting one.","side_effects":"Reads current workspace state.","permission":"read","required_scopes":["accounts:read"],"requires_operation_id":false,"billing":"No gateway credit charge; reads saved workspace data without starting paid provider work.","required_resolved_fields":[],"next_call":{"tool":"domain.signals.v2","arguments":{"params":{"action":"describe","operation":"industry.scouts.list.v2"}}},"catalog_revision":"07a373e389289e05","when_not_to_use":"You need recorded findings; use industry.signals.list.v2.","description":"Use when: Find workspace-wide market monitors and their configuration before selecting one. Returns/does: Reads the current authorized workspace state. Do not use when: You need recorded findings; use industry.signals.list.v2. Identity comes from OAuth. Resolve exact IDs; use typed enums and bounded limits. Billing: Gateway and downstream billing depend on the operation; check its preview/quote and returned billing.","input_schema":{"additionalProperties":false,"properties":{},"title":"McpIndustryScoutsListInputV2","type":"object"},"output_schema":{"$defs":{"IndustryScoutRecordV2":{"additionalProperties":true,"properties":{"scout_id":{"format":"uuid","title":"Scout Id","type":"string"},"name":{"anyOf":[{"type":"string"},{"type":"null"}],"default":null,"title":"Name"},"industry":{"anyOf":[{"type":"string"},{"type":"null"}],"default":null,"title":"Industry"},"status":{"title":"Status","type":"string"},"cadence":{"title":"Cadence","type":"string"},"signal_type_bindings":{"items":{"additionalProperties":true,"type":"object"},"title":"Signal Type Bindings","type":"array"},"geography":{"items":{"additionalProperties":true,"type":"object"},"title":"Geography","type":"array"},"trigger_threshold":{"default":70,"title":"Trigger Threshold","type":"integer"},"discovered_count":{"default":0,"title":"Discovered Count","type":"integer"}},"required":["scout_id","status","cadence"],"title":"IndustryScoutRecordV2","type":"object"}},"properties":{"scouts":{"items":{"$ref":"#/$defs/IndustryScoutRecordV2"},"title":"Scouts","type":"array"},"total":{"title":"Total","type":"integer"}},"required":["scouts","total"],"title":"IndustryScoutsListResultV2","type":"object"},"example":{"tool":"domain.signals.v2","arguments":{"params":{"action":"invoke","operation":"industry.scouts.list.v2","arguments":{},"operation_id":"00000000-0000-4000-8000-000000000003"}},"notice":"Fictional fixture IDs and example text. Resolve real IDs, use returned preview tokens and approve exact side effects before execution. Input validation is not proof of provider readiness or a successful business outcome."},"workflow_steps":[],"approval_policy":null,"idempotency_policy":"read_only","gateway_credit_code":null,"identity":"Workspace, actor and consent come from OAuth; do not supply identity fields.","retry":"Keep the same operation and operation_id when retrying identical work. Reconcile an uncertain result before new work; never replay an old V1 write under a new V2 ID.","completion":"Check status, execution_state, error_code, output and evidence/resource references. Queued work is not complete: poll jobs.status.get.v2 in domain.workspace.v2. For read-back verification require read_back_verified=true where returned; reconcile failures without creating another object.","result_envelope":{"status":"completed | partial | cancelled | failed","execution_state":"terminal | queued | reconciliation_required","output":"Completed results validate against output_schema; partial/reconciliation results can contain incomplete evidence and must not be treated as completion.","billing":"gateway_credits_spent, downstream_settlement, job_id; pending downstream settlement is not a final cost","references":"run_id, invocation_id, resource_refs, evidence_refs"},"documentation":"https://www.hivekind.ai/docs/mcp/signals#industry-scouts-list-v2"},{"operation":"industry.scouts.update.v2","domain":"signals","tool":"domain.signals.v2","title":"Update or pause an industry scout","purpose":"The user approved changing an exact scout, including its cadence, types, threshold, or active/paused status.","side_effects":"Changes the live monitor; resuming may start provider collection and credit usage.","permission":"execute","required_scopes":["actions:execute"],"requires_operation_id":true,"billing":"No gateway rate is configured. Check the Core workflow preview/quote for downstream charges and final settlement.","required_resolved_fields":[],"next_call":{"tool":"domain.signals.v2","arguments":{"params":{"action":"describe","operation":"industry.scouts.update.v2"}}},"catalog_revision":"07a373e389289e05","when_not_to_use":"You have not read the current scout or resolved its ID.","description":"Use when: The user approved changing an exact scout, including its cadence, types, threshold, or active/paused status. Returns/does: Changes the live monitor; resuming may start provider collection and credit usage. Do not use when: You have not read the current scout or resolved its ID. Identity comes from OAuth. Resolve exact IDs; use typed enums and bounded limits. Billing: Gateway and downstream billing depend on the operation; check its preview/quote and returned billing.","input_schema":{"$defs":{"IndustryScoutGeographyV2":{"additionalProperties":false,"properties":{"kind":{"enum":["continent","country","region"],"title":"Kind","type":"string"},"code":{"maxLength":64,"minLength":1,"title":"Code","type":"string"},"label":{"maxLength":120,"minLength":1,"title":"Label","type":"string"}},"required":["kind","code","label"],"title":"IndustryScoutGeographyV2","type":"object"},"IndustryScoutRuleV2":{"additionalProperties":false,"properties":{"rule":{"maxLength":1000,"minLength":1,"title":"Rule","type":"string"},"weight":{"default":1,"minimum":0,"title":"Weight","type":"number"}},"required":["rule"],"title":"IndustryScoutRuleV2","type":"object"}},"additionalProperties":false,"properties":{"scout_id":{"description":"Exact scout UUID returned by a Hivekind search, list, get, preview, or resource call.","format":"uuid","title":"Scout Id","type":"string"},"name":{"anyOf":[{"maxLength":160,"type":"string"},{"type":"null"}],"default":null,"description":"Human-readable name for the record.","title":"Name"},"industry":{"anyOf":[{"maxLength":200,"type":"string"},{"type":"null"}],"default":null,"description":"Industry used by the industry scout update input v2 operation.","title":"Industry"},"geography":{"anyOf":[{"items":{"$ref":"#/$defs/IndustryScoutGeographyV2"},"type":"array"},{"type":"null"}],"default":null,"description":"Geography used by the industry scout update input v2 operation.","title":"Geography"},"signal_type_ids":{"anyOf":[{"items":{"format":"uuid","type":"string"},"type":"array"},{"type":"null"}],"default":null,"description":"Exact signal type UUIDs returned by a Hivekind search, list, get, preview, or resource call.","title":"Signal Type Ids"},"cadence":{"anyOf":[{"enum":["hourly","daily","every_3_days","weekly","every_two_weeks"],"type":"string"},{"type":"null"}],"default":null,"description":"Cadence used by the industry scout update input v2 operation.","title":"Cadence"},"status":{"anyOf":[{"enum":["active","paused"],"type":"string"},{"type":"null"}],"default":null,"description":"Status used by the industry scout update input v2 operation.","title":"Status"},"auto_enrich_contacts":{"anyOf":[{"type":"boolean"},{"type":"null"}],"default":null,"description":"Auto enrich contacts used by the industry scout update input v2 operation.","title":"Auto Enrich Contacts"},"trigger_rules":{"anyOf":[{"additionalProperties":{"items":{"$ref":"#/$defs/IndustryScoutRuleV2"},"type":"array"},"type":"object"},{"type":"null"}],"default":null,"description":"Trigger rules used by the industry scout update input v2 operation.","title":"Trigger Rules"},"trigger_threshold":{"anyOf":[{"maximum":100,"minimum":0,"type":"integer"},{"type":"null"}],"default":null,"description":"Trigger threshold used by the industry scout update input v2 operation.","title":"Trigger Threshold"},"action_proposal_id":{"anyOf":[{"format":"uuid","type":"string"},{"type":"null"}],"default":null,"description":"Optional. Hivekind fills this from the MCP consent grant.","title":"Action Proposal Id"}},"required":["scout_id"],"title":"McpMcpIndustryScoutUpdateInputV2","type":"object"},"output_schema":{"additionalProperties":true,"properties":{"scout_id":{"format":"uuid","title":"Scout Id","type":"string"},"name":{"anyOf":[{"type":"string"},{"type":"null"}],"default":null,"title":"Name"},"industry":{"anyOf":[{"type":"string"},{"type":"null"}],"default":null,"title":"Industry"},"status":{"title":"Status","type":"string"},"cadence":{"title":"Cadence","type":"string"},"signal_type_bindings":{"items":{"additionalProperties":true,"type":"object"},"title":"Signal Type Bindings","type":"array"},"geography":{"items":{"additionalProperties":true,"type":"object"},"title":"Geography","type":"array"},"trigger_threshold":{"default":70,"title":"Trigger Threshold","type":"integer"},"discovered_count":{"default":0,"title":"Discovered Count","type":"integer"}},"required":["scout_id","status","cadence"],"title":"IndustryScoutRecordV2","type":"object"},"example":{"tool":"domain.signals.v2","arguments":{"params":{"action":"invoke","operation":"industry.scouts.update.v2","arguments":{"scout_id":"00000000-0000-4000-8000-000000000001"},"operation_id":"00000000-0000-4000-8000-000000000003"}},"notice":"Fictional fixture IDs and example text. Resolve real IDs, use returned preview tokens and approve exact side effects before execution. Input validation is not proof of provider readiness or a successful business outcome."},"workflow_steps":[],"approval_policy":"exact_scope_single_action","idempotency_policy":"approved_action_outbox","gateway_credit_code":null,"identity":"Workspace, actor and consent come from OAuth; do not supply identity fields.","retry":"Keep the same operation and operation_id when retrying identical work. Reconcile an uncertain result before new work; never replay an old V1 write under a new V2 ID.","completion":"Check status, execution_state, error_code, output and evidence/resource references. Queued work is not complete: poll jobs.status.get.v2 in domain.workspace.v2. For read-back verification require read_back_verified=true where returned; reconcile failures without creating another object.","result_envelope":{"status":"completed | partial | cancelled | failed","execution_state":"terminal | queued | reconciliation_required","output":"Completed results validate against output_schema; partial/reconciliation results can contain incomplete evidence and must not be treated as completion.","billing":"gateway_credits_spent, downstream_settlement, job_id; pending downstream settlement is not a final cost","references":"run_id, invocation_id, resource_refs, evidence_refs"},"documentation":"https://www.hivekind.ai/docs/mcp/signals#industry-scouts-update-v2"},{"operation":"industry.signals.get.v2","domain":"signals","tool":"domain.signals.v2","title":"Get an industry signal","purpose":"Read one discovery with its company, score, account resolution, source evidence, and outreach angle.","side_effects":"Reads current workspace state.","permission":"read","required_scopes":["accounts:read"],"requires_operation_id":false,"billing":"No gateway credit charge; reads saved workspace data without starting paid provider work.","required_resolved_fields":[],"next_call":{"tool":"domain.signals.v2","arguments":{"params":{"action":"describe","operation":"industry.signals.get.v2"}}},"catalog_revision":"07a373e389289e05","when_not_to_use":"You have not resolved its discovery_id; list discoveries first.","description":"Use when: Read one discovery with its company, score, account resolution, source evidence, and outreach angle. Returns/does: Reads the current authorized workspace state. Do not use when: You have not resolved its discovery_id; list discoveries first. Identity comes from OAuth. Resolve exact IDs; use typed enums and bounded limits. Billing: Gateway and downstream billing depend on the operation; check its preview/quote and returned billing.","input_schema":{"additionalProperties":false,"properties":{"discovery_id":{"description":"Exact discovery UUID returned by a Hivekind search, list, get, preview, or resource call.","format":"uuid","title":"Discovery Id","type":"string"}},"required":["discovery_id"],"title":"McpIndustrySignalGetInputV2","type":"object"},"output_schema":{"$defs":{"IndustryDiscoveryRecordV2":{"additionalProperties":true,"properties":{"discovery_id":{"format":"uuid","title":"Discovery Id","type":"string"},"scout_id":{"format":"uuid","title":"Scout Id","type":"string"},"company_name":{"anyOf":[{"type":"string"},{"type":"null"}],"default":null,"title":"Company Name"},"company_domain":{"anyOf":[{"type":"string"},{"type":"null"}],"default":null,"title":"Company Domain"},"account_id":{"anyOf":[{"format":"uuid","type":"string"},{"type":"null"}],"default":null,"title":"Account Id"},"signal_title":{"anyOf":[{"type":"string"},{"type":"null"}],"default":null,"title":"Signal Title"},"signal_summary":{"anyOf":[{"type":"string"},{"type":"null"}],"default":null,"title":"Signal Summary"},"signal_type":{"anyOf":[{"type":"string"},{"type":"null"}],"default":null,"title":"Signal Type"},"trigger_score":{"anyOf":[{"type":"integer"},{"type":"null"}],"default":null,"title":"Trigger Score"},"icp_score":{"anyOf":[{"type":"integer"},{"type":"null"}],"default":null,"title":"Icp Score"},"account_resolution":{"anyOf":[{"type":"string"},{"type":"null"}],"default":null,"title":"Account Resolution"},"pipeline_state":{"title":"Pipeline State","type":"string"},"state":{"title":"State","type":"string"},"discovered_at":{"format":"date-time","title":"Discovered At","type":"string"},"source_urls":{"items":{"type":"string"},"title":"Source Urls","type":"array"}},"required":["discovery_id","scout_id","pipeline_state","state","discovered_at"],"title":"IndustryDiscoveryRecordV2","type":"object"},"IndustryScoutRecordV2":{"additionalProperties":true,"properties":{"scout_id":{"format":"uuid","title":"Scout Id","type":"string"},"name":{"anyOf":[{"type":"string"},{"type":"null"}],"default":null,"title":"Name"},"industry":{"anyOf":[{"type":"string"},{"type":"null"}],"default":null,"title":"Industry"},"status":{"title":"Status","type":"string"},"cadence":{"title":"Cadence","type":"string"},"signal_type_bindings":{"items":{"additionalProperties":true,"type":"object"},"title":"Signal Type Bindings","type":"array"},"geography":{"items":{"additionalProperties":true,"type":"object"},"title":"Geography","type":"array"},"trigger_threshold":{"default":70,"title":"Trigger Threshold","type":"integer"},"discovered_count":{"default":0,"title":"Discovered Count","type":"integer"}},"required":["scout_id","status","cadence"],"title":"IndustryScoutRecordV2","type":"object"}},"properties":{"signal":{"$ref":"#/$defs/IndustryDiscoveryRecordV2"},"scout":{"$ref":"#/$defs/IndustryScoutRecordV2"},"account_name":{"anyOf":[{"type":"string"},{"type":"null"}],"default":null,"title":"Account Name"},"account_domain":{"anyOf":[{"type":"string"},{"type":"null"}],"default":null,"title":"Account Domain"},"account_archived":{"default":false,"title":"Account Archived","type":"boolean"},"trigger_threshold":{"title":"Trigger Threshold","type":"integer"},"bucket":{"title":"Bucket","type":"string"}},"required":["signal","scout","trigger_threshold","bucket"],"title":"IndustrySignalGetResultV2","type":"object"},"example":{"tool":"domain.signals.v2","arguments":{"params":{"action":"invoke","operation":"industry.signals.get.v2","arguments":{"discovery_id":"00000000-0000-4000-8000-000000000001"},"operation_id":"00000000-0000-4000-8000-000000000003"}},"notice":"Fictional fixture IDs and example text. Resolve real IDs, use returned preview tokens and approve exact side effects before execution. Input validation is not proof of provider readiness or a successful business outcome."},"workflow_steps":[],"approval_policy":null,"idempotency_policy":"read_only","gateway_credit_code":null,"identity":"Workspace, actor and consent come from OAuth; do not supply identity fields.","retry":"Keep the same operation and operation_id when retrying identical work. Reconcile an uncertain result before new work; never replay an old V1 write under a new V2 ID.","completion":"Check status, execution_state, error_code, output and evidence/resource references. Queued work is not complete: poll jobs.status.get.v2 in domain.workspace.v2. For read-back verification require read_back_verified=true where returned; reconcile failures without creating another object.","result_envelope":{"status":"completed | partial | cancelled | failed","execution_state":"terminal | queued | reconciliation_required","output":"Completed results validate against output_schema; partial/reconciliation results can contain incomplete evidence and must not be treated as completion.","billing":"gateway_credits_spent, downstream_settlement, job_id; pending downstream settlement is not a final cost","references":"run_id, invocation_id, resource_refs, evidence_refs"},"documentation":"https://www.hivekind.ai/docs/mcp/signals#industry-signals-get-v2"},{"operation":"industry.signals.list.v2","domain":"signals","tool":"domain.signals.v2","title":"List industry discoveries","purpose":"Review companies and signals found by one scout or across the workspace.","side_effects":"Reads current workspace state.","permission":"read","required_scopes":["accounts:read"],"requires_operation_id":false,"billing":"No gateway credit charge; reads saved workspace data without starting paid provider work.","required_resolved_fields":[],"next_call":{"tool":"domain.signals.v2","arguments":{"params":{"action":"describe","operation":"industry.signals.list.v2"}}},"catalog_revision":"07a373e389289e05","when_not_to_use":"You need monitor configuration; list or get the scout instead.","description":"Use when: Review companies and signals found by one scout or across the workspace. Returns/does: Reads the current authorized workspace state. Do not use when: You need monitor configuration; list or get the scout instead. Identity comes from OAuth. Resolve exact IDs; use typed enums and bounded limits. Billing: Gateway and downstream billing depend on the operation; check its preview/quote and returned billing.","input_schema":{"additionalProperties":false,"properties":{"scout_id":{"anyOf":[{"format":"uuid","type":"string"},{"type":"null"}],"default":null,"description":"Limit results to one scout; omit for all workspace scouts.","title":"Scout Id"},"limit":{"default":50,"description":"Maximum number of records to return in this page.","maximum":100,"minimum":1,"title":"Limit","type":"integer"}},"title":"McpIndustrySignalsListInputV2","type":"object"},"output_schema":{"$defs":{"IndustryDiscoveryRecordV2":{"additionalProperties":true,"properties":{"discovery_id":{"format":"uuid","title":"Discovery Id","type":"string"},"scout_id":{"format":"uuid","title":"Scout Id","type":"string"},"company_name":{"anyOf":[{"type":"string"},{"type":"null"}],"default":null,"title":"Company Name"},"company_domain":{"anyOf":[{"type":"string"},{"type":"null"}],"default":null,"title":"Company Domain"},"account_id":{"anyOf":[{"format":"uuid","type":"string"},{"type":"null"}],"default":null,"title":"Account Id"},"signal_title":{"anyOf":[{"type":"string"},{"type":"null"}],"default":null,"title":"Signal Title"},"signal_summary":{"anyOf":[{"type":"string"},{"type":"null"}],"default":null,"title":"Signal Summary"},"signal_type":{"anyOf":[{"type":"string"},{"type":"null"}],"default":null,"title":"Signal Type"},"trigger_score":{"anyOf":[{"type":"integer"},{"type":"null"}],"default":null,"title":"Trigger Score"},"icp_score":{"anyOf":[{"type":"integer"},{"type":"null"}],"default":null,"title":"Icp Score"},"account_resolution":{"anyOf":[{"type":"string"},{"type":"null"}],"default":null,"title":"Account Resolution"},"pipeline_state":{"title":"Pipeline State","type":"string"},"state":{"title":"State","type":"string"},"discovered_at":{"format":"date-time","title":"Discovered At","type":"string"},"source_urls":{"items":{"type":"string"},"title":"Source Urls","type":"array"}},"required":["discovery_id","scout_id","pipeline_state","state","discovered_at"],"title":"IndustryDiscoveryRecordV2","type":"object"}},"properties":{"companies":{"items":{"$ref":"#/$defs/IndustryDiscoveryRecordV2"},"title":"Companies","type":"array"},"total":{"title":"Total","type":"integer"}},"required":["companies","total"],"title":"IndustrySignalsListResultV2","type":"object"},"example":{"tool":"domain.signals.v2","arguments":{"params":{"action":"invoke","operation":"industry.signals.list.v2","arguments":{},"operation_id":"00000000-0000-4000-8000-000000000003"}},"notice":"Fictional fixture IDs and example text. Resolve real IDs, use returned preview tokens and approve exact side effects before execution. Input validation is not proof of provider readiness or a successful business outcome."},"workflow_steps":[],"approval_policy":null,"idempotency_policy":"read_only","gateway_credit_code":null,"identity":"Workspace, actor and consent come from OAuth; do not supply identity fields.","retry":"Keep the same operation and operation_id when retrying identical work. Reconcile an uncertain result before new work; never replay an old V1 write under a new V2 ID.","completion":"Check status, execution_state, error_code, output and evidence/resource references. Queued work is not complete: poll jobs.status.get.v2 in domain.workspace.v2. For read-back verification require read_back_verified=true where returned; reconcile failures without creating another object.","result_envelope":{"status":"completed | partial | cancelled | failed","execution_state":"terminal | queued | reconciliation_required","output":"Completed results validate against output_schema; partial/reconciliation results can contain incomplete evidence and must not be treated as completion.","billing":"gateway_credits_spent, downstream_settlement, job_id; pending downstream settlement is not a final cost","references":"run_id, invocation_id, resource_refs, evidence_refs"},"documentation":"https://www.hivekind.ai/docs/mcp/signals#industry-signals-list-v2"},{"operation":"jobs.status.get.v2","domain":"workspace","tool":"domain.workspace.v2","title":"Job status","purpose":"You have a job_id returned by a prior import, grading, enrichment, research, generation, or provider action.","side_effects":"Returns normalized progress and result references. Read only.","permission":"read","required_scopes":["runs:read"],"requires_operation_id":false,"billing":"No gateway credit charge; reads saved workspace data without starting paid provider work.","required_resolved_fields":[],"next_call":{"tool":"domain.workspace.v2","arguments":{"params":{"action":"describe","operation":"jobs.status.get.v2"}}},"catalog_revision":"07a373e389289e05","when_not_to_use":"You need to start work or do not yet have a job_id.","description":"Use when: You have a job_id returned by a prior import, grading, enrichment, research, generation, or provider action. Returns/does: Returns normalized progress and result references. Read only. Do not use when: You need to start work or do not yet have a job_id. Identity comes from OAuth. Resolve exact IDs; use typed enums and bounded limits. Billing: Gateway and downstream billing depend on the operation; check its preview/quote and returned billing.","input_schema":{"additionalProperties":false,"properties":{"job_id":{"description":"Exact job UUID returned by a Hivekind search, list, get, preview, or resource call.","maxLength":255,"minLength":1,"title":"Job Id","type":"string"}},"required":["job_id"],"title":"McpJobsStatusGetInputV2","type":"object"},"output_schema":{"additionalProperties":false,"properties":{"job_id":{"maxLength":255,"minLength":1,"title":"Job Id","type":"string"},"status":{"maxLength":32,"minLength":1,"title":"Status","type":"string"},"percentage":{"default":0,"maximum":100,"minimum":0,"title":"Percentage","type":"number"},"message":{"anyOf":[{"maxLength":2000,"type":"string"},{"type":"null"}],"default":null,"title":"Message"},"accounts_created":{"default":0,"minimum":0,"title":"Accounts Created","type":"integer"},"accounts_updated":{"default":0,"minimum":0,"title":"Accounts Updated","type":"integer"},"account_ids":{"default":[],"description":"Accounts a finished company import created. Pass them to icp.grading.start.v2 to grade exactly those.","items":{"format":"uuid","type":"string"},"maxItems":500,"title":"Account Ids","type":"array"},"succeeded":{"default":0,"description":"Accounts graded successfully (ICP runs).","minimum":0,"title":"Succeeded","type":"integer"},"failed":{"default":0,"description":"Accounts that errored (ICP runs).","minimum":0,"title":"Failed","type":"integer"},"errors":{"default":[],"items":{"type":"string"},"maxItems":50,"title":"Errors","type":"array"}},"required":["job_id","status"],"title":"JobsStatusGetResultV2","type":"object"},"example":{"tool":"domain.workspace.v2","arguments":{"params":{"action":"invoke","operation":"jobs.status.get.v2","arguments":{"job_id":"00000000-0000-4000-8000-000000000001"},"operation_id":"00000000-0000-4000-8000-000000000003"}},"notice":"Fictional fixture IDs and example text. Resolve real IDs, use returned preview tokens and approve exact side effects before execution. Input validation is not proof of provider readiness or a successful business outcome."},"workflow_steps":[],"approval_policy":null,"idempotency_policy":"read_only","gateway_credit_code":null,"identity":"Workspace, actor and consent come from OAuth; do not supply identity fields.","retry":"Keep the same operation and operation_id when retrying identical work. Reconcile an uncertain result before new work; never replay an old V1 write under a new V2 ID.","completion":"Check status, execution_state, error_code, output and evidence/resource references. Queued work is not complete: poll jobs.status.get.v2 in domain.workspace.v2. For read-back verification require read_back_verified=true where returned; reconcile failures without creating another object.","result_envelope":{"status":"completed | partial | cancelled | failed","execution_state":"terminal | queued | reconciliation_required","output":"Completed results validate against output_schema; partial/reconciliation results can contain incomplete evidence and must not be treated as completion.","billing":"gateway_credits_spent, downstream_settlement, job_id; pending downstream settlement is not a final cost","references":"run_id, invocation_id, resource_refs, evidence_refs"},"documentation":"https://www.hivekind.ai/docs/mcp/workspace#jobs-status-get-v2"},{"operation":"library.buying_role.upsert.v2","domain":"content","tool":"domain.content.v2","title":"Upsert a buying role","purpose":"Create or update one purchase role (Champion, Economic Buyer, or a custom role).","side_effects":"Creates or updates a buying role. Does not send.","permission":"execute","required_scopes":["actions:execute"],"requires_operation_id":true,"billing":"No gateway rate is configured. Check the Core workflow preview/quote for downstream charges and final settlement.","required_resolved_fields":[],"next_call":{"tool":"domain.content.v2","arguments":{"params":{"action":"describe","operation":"library.buying_role.upsert.v2"}}},"catalog_revision":"07a373e389289e05","when_not_to_use":"To seed a full methodology set, use library.committee.seed.v2.","description":"Use when: Create or update one purchase role (Champion, Economic Buyer, or a custom role). Returns/does: Creates or updates a buying role. Does not send. Do not use when: To seed a full methodology set, use library.committee.seed.v2. Identity comes from OAuth. Resolve exact IDs; use typed enums and bounded limits. Billing: Gateway and downstream billing depend on the operation; check its preview/quote and returned billing.","input_schema":{"additionalProperties":false,"properties":{"buying_role_id":{"anyOf":[{"format":"uuid","type":"string"},{"type":"null"}],"default":null,"description":"Exact buying role UUID returned by a Hivekind search, list, get, preview, or resource call.","title":"Buying Role Id"},"name":{"anyOf":[{"maxLength":160,"minLength":1,"type":"string"},{"type":"null"}],"default":null,"description":"Human-readable name for the record.","title":"Name"},"description":{"anyOf":[{"maxLength":4000,"type":"string"},{"type":"null"}],"default":null,"description":"Human-readable description of the record or requested outcome.","title":"Description"},"is_optional":{"default":false,"description":"Whether to apply is optional for this operation.","title":"Is Optional","type":"boolean"},"sort_order":{"anyOf":[{"maximum":1000,"minimum":0,"type":"integer"},{"type":"null"}],"default":null,"description":"Sort order used by the public library buying role upsert input v2 operation.","title":"Sort Order"}},"title":"McpPublicLibraryBuyingRoleUpsertInputV2","type":"object"},"output_schema":{"additionalProperties":false,"description":"V2 result for library.buying_role.upsert.v2; preserves the established validators.","properties":{"resource_id":{"format":"uuid","title":"Resource Id","type":"string"},"entity_type":{"enum":["workspace","messaging","product","offer","competitor","signal_type","persona","buying_role","icp_rubric","client","proof_point","brand","landing_template","gtm_assessment"],"title":"Entity Type","type":"string"},"name":{"maxLength":255,"minLength":1,"title":"Name","type":"string"},"version_number":{"anyOf":[{"minimum":1,"type":"integer"},{"type":"null"}],"default":null,"title":"Version Number"},"created":{"default":false,"title":"Created","type":"boolean"},"resource_uri":{"maxLength":255,"minLength":1,"title":"Resource Uri","type":"string"},"next_step":{"maxLength":500,"minLength":1,"title":"Next Step","type":"string"}},"required":["resource_id","entity_type","name","resource_uri","next_step"],"title":"PublicLibraryBuyingRoleUpsertResultV2","type":"object"},"example":{"tool":"domain.content.v2","arguments":{"params":{"action":"invoke","operation":"library.buying_role.upsert.v2","arguments":{"description":"Example approved workspace context","name":"Example buying role"},"operation_id":"00000000-0000-4000-8000-000000000003"}},"notice":"Fictional fixture IDs and example text. Resolve real IDs, use returned preview tokens and approve exact side effects before execution. Input validation is not proof of provider readiness or a successful business outcome."},"workflow_steps":[],"approval_policy":"exact_scope_single_action","idempotency_policy":"approved_action_outbox","gateway_credit_code":null,"identity":"Workspace, actor and consent come from OAuth; do not supply identity fields.","retry":"Keep the same operation and operation_id when retrying identical work. Reconcile an uncertain result before new work; never replay an old V1 write under a new V2 ID.","completion":"Check status, execution_state, error_code, output and evidence/resource references. Queued work is not complete: poll jobs.status.get.v2 in domain.workspace.v2. For read-back verification require read_back_verified=true where returned; reconcile failures without creating another object.","result_envelope":{"status":"completed | partial | cancelled | failed","execution_state":"terminal | queued | reconciliation_required","output":"Completed results validate against output_schema; partial/reconciliation results can contain incomplete evidence and must not be treated as completion.","billing":"gateway_credits_spent, downstream_settlement, job_id; pending downstream settlement is not a final cost","references":"run_id, invocation_id, resource_refs, evidence_refs"},"documentation":"https://www.hivekind.ai/docs/mcp/content#library-buying_role-upsert-v2"},{"operation":"library.committee.seed.v2","domain":"content","tool":"domain.content.v2","title":"Seed buying roles","purpose":"Seed purchase roles from a sales methodology (MEDDICC, BANT, and others). Idempotent.","side_effects":"Creates or updates buying-role rows. Does not send.","permission":"execute","required_scopes":["actions:execute"],"requires_operation_id":true,"billing":"No gateway rate is configured. Check the Core workflow preview/quote for downstream charges and final settlement.","required_resolved_fields":[],"next_call":{"tool":"domain.content.v2","arguments":{"params":{"action":"describe","operation":"library.committee.seed.v2"}}},"catalog_revision":"07a373e389289e05","when_not_to_use":"Do not use this to create a persona — that is library.persona.upsert.v2.","description":"Use when: Seed purchase roles from a sales methodology (MEDDICC, BANT, and others). Idempotent. Returns/does: Creates or updates buying-role rows. Does not send. Do not use when: Do not use this to create a persona — that is library.persona.upsert.v2. Identity comes from OAuth. Resolve exact IDs; use typed enums and bounded limits. Billing: Gateway and downstream billing depend on the operation; check its preview/quote and returned billing.","input_schema":{"additionalProperties":false,"properties":{"methodology":{"description":"Methodology used by the public library committee seed input v2 operation.","enum":["Standard","MEDDICC","SPIN","Challenger Sale","BANT","Miller Heiman"],"title":"Methodology","type":"string"}},"required":["methodology"],"title":"McpPublicLibraryCommitteeSeedInputV2","type":"object"},"output_schema":{"$defs":{"LibraryBuyingRoleSummaryV1":{"additionalProperties":false,"properties":{"buying_role_id":{"format":"uuid","title":"Buying Role Id","type":"string"},"name":{"maxLength":160,"minLength":1,"title":"Name","type":"string"},"description":{"anyOf":[{"maxLength":4000,"type":"string"},{"type":"null"}],"default":null,"title":"Description"},"methodology":{"anyOf":[{"maxLength":64,"type":"string"},{"type":"null"}],"default":null,"title":"Methodology"},"is_optional":{"default":false,"title":"Is Optional","type":"boolean"},"resource_uri":{"maxLength":255,"minLength":1,"title":"Resource Uri","type":"string"}},"required":["buying_role_id","name","resource_uri"],"title":"LibraryBuyingRoleSummaryV1","type":"object"}},"additionalProperties":false,"description":"V2 result for library.committee.seed.v2; preserves the established validators.","properties":{"methodology":{"enum":["Standard","MEDDICC","SPIN","Challenger Sale","BANT","Miller Heiman"],"title":"Methodology","type":"string"},"roles":{"default":[],"items":{"$ref":"#/$defs/LibraryBuyingRoleSummaryV1"},"maxItems":30,"title":"Roles","type":"array"},"next_step":{"maxLength":500,"minLength":1,"title":"Next Step","type":"string"}},"required":["methodology","next_step"],"title":"PublicLibraryCommitteeSeedResultV2","type":"object"},"example":{"tool":"domain.content.v2","arguments":{"params":{"action":"invoke","operation":"library.committee.seed.v2","arguments":{"methodology":"Standard"},"operation_id":"00000000-0000-4000-8000-000000000003"}},"notice":"Fictional fixture IDs and example text. Resolve real IDs, use returned preview tokens and approve exact side effects before execution. Input validation is not proof of provider readiness or a successful business outcome."},"workflow_steps":[],"approval_policy":"exact_scope_single_action","idempotency_policy":"approved_action_outbox","gateway_credit_code":null,"identity":"Workspace, actor and consent come from OAuth; do not supply identity fields.","retry":"Keep the same operation and operation_id when retrying identical work. Reconcile an uncertain result before new work; never replay an old V1 write under a new V2 ID.","completion":"Check status, execution_state, error_code, output and evidence/resource references. Queued work is not complete: poll jobs.status.get.v2 in domain.workspace.v2. For read-back verification require read_back_verified=true where returned; reconcile failures without creating another object.","result_envelope":{"status":"completed | partial | cancelled | failed","execution_state":"terminal | queued | reconciliation_required","output":"Completed results validate against output_schema; partial/reconciliation results can contain incomplete evidence and must not be treated as completion.","billing":"gateway_credits_spent, downstream_settlement, job_id; pending downstream settlement is not a final cost","references":"run_id, invocation_id, resource_refs, evidence_refs"},"documentation":"https://www.hivekind.ai/docs/mcp/content#library-committee-seed-v2"},{"operation":"library.icp.propose.v2","domain":"content","tool":"domain.content.v2","title":"Propose an ICP rubric","purpose":"Draft an ICP rubric from a description. Does not persist and does not consume credits.","side_effects":"May change workspace state or start work; describe before invoking.","permission":"propose","required_scopes":["icp:read","runs:create"],"requires_operation_id":true,"billing":"No gateway rate is configured. Check the Core workflow preview/quote for downstream charges and final settlement.","required_resolved_fields":[],"next_call":{"tool":"domain.content.v2","arguments":{"params":{"action":"describe","operation":"library.icp.propose.v2"}}},"catalog_revision":"07a373e389289e05","when_not_to_use":"Do not use this to score accounts — that is icp.score.get.v2. Do not save until the user confirms library.icp.save.v2.","description":"Use when: Draft an ICP rubric from a description. Does not persist and does not consume credits. Returns/does: Changes workspace state or starts work; review the exact contract and approval requirements. Do not use when: Do not use this to score accounts — that is icp.score.get.v2. Do not save until the user confirms library.icp.save.v2. Identity comes from OAuth. Resolve exact IDs; use typed enums and bounded limits. Billing: Gateway and downstream billing depend on the operation; check its preview/quote and returned billing.","input_schema":{"$defs":{"JsonValue":{}},"additionalProperties":false,"properties":{"description":{"description":"Human-readable description of the record or requested outcome.","maxLength":8000,"minLength":1,"title":"Description","type":"string"},"current_rubric":{"anyOf":[{"additionalProperties":{"$ref":"#/$defs/JsonValue"},"type":"object"},{"type":"null"}],"default":null,"description":"Current rubric used by the public library icp propose input v2 operation.","title":"Current Rubric"},"regenerate_section":{"anyOf":[{"enum":["dimensions","tiers","disqualifiers","extracted_fields","persona_dimensions"],"type":"string"},{"type":"null"}],"default":null,"description":"Regenerate section used by the public library icp propose input v2 operation.","title":"Regenerate Section"}},"required":["description"],"title":"McpPublicLibraryIcpProposeInputV2","type":"object"},"output_schema":{"$defs":{"JsonValue":{}},"additionalProperties":false,"description":"V2 result for library.icp.propose.v2; preserves the established validators.","properties":{"rubric_json":{"additionalProperties":{"$ref":"#/$defs/JsonValue"},"title":"Rubric Json","type":"object"},"next_step":{"maxLength":500,"minLength":1,"title":"Next Step","type":"string"}},"required":["next_step"],"title":"PublicLibraryIcpProposeResultV2","type":"object"},"example":{"tool":"domain.content.v2","arguments":{"params":{"action":"invoke","operation":"library.icp.propose.v2","arguments":{"description":"Example description"},"operation_id":"00000000-0000-4000-8000-000000000003"}},"notice":"Fictional fixture IDs and example text. Resolve real IDs, use returned preview tokens and approve exact side effects before execution. Input validation is not proof of provider readiness or a successful business outcome."},"workflow_steps":[],"approval_policy":null,"idempotency_policy":"run_task_proposal","gateway_credit_code":null,"identity":"Workspace, actor and consent come from OAuth; do not supply identity fields.","retry":"Keep the same operation and operation_id when retrying identical work. Reconcile an uncertain result before new work; never replay an old V1 write under a new V2 ID.","completion":"Check status, execution_state, error_code, output and evidence/resource references. Queued work is not complete: poll jobs.status.get.v2 in domain.workspace.v2. For read-back verification require read_back_verified=true where returned; reconcile failures without creating another object.","result_envelope":{"status":"completed | partial | cancelled | failed","execution_state":"terminal | queued | reconciliation_required","output":"Completed results validate against output_schema; partial/reconciliation results can contain incomplete evidence and must not be treated as completion.","billing":"gateway_credits_spent, downstream_settlement, job_id; pending downstream settlement is not a final cost","references":"run_id, invocation_id, resource_refs, evidence_refs"},"documentation":"https://www.hivekind.ai/docs/mcp/content#library-icp-propose-v2"},{"operation":"library.icp.save.v2","domain":"content","tool":"domain.content.v2","title":"Save an ICP rubric","purpose":"Persist a proposed or edited ICP rubric and optionally activate it for the signed-in user.","side_effects":"Saves an ICP rubric version. Does not send. Does not score accounts.","permission":"execute","required_scopes":["actions:execute","icp:read"],"requires_operation_id":true,"billing":"No gateway rate is configured. Check the Core workflow preview/quote for downstream charges and final settlement.","required_resolved_fields":[],"next_call":{"tool":"domain.content.v2","arguments":{"params":{"action":"describe","operation":"library.icp.save.v2"}}},"catalog_revision":"07a373e389289e05","when_not_to_use":"Do not use this to score accounts. Propose first with library.icp.propose.v2. Fresh grading uses icp.grading.preview.v2 then icp.grading.start.v2; icp.score.get.v2 reads an audited score for free.","description":"Use when: Persist a proposed or edited ICP rubric and optionally activate it for the signed-in user. Returns/does: Saves an ICP rubric version. Does not send. Does not score accounts. Do not use when: Do not use this to score accounts. Propose first with library.icp.propose.v2. Fresh grading uses icp.grading.preview.v2 then icp.grading.start.v2; icp.score.get.v2 reads an audited score for free. Identity comes from OAuth. Resolve exact IDs; use typed enums and bounded limits. Billing: Gateway and downstream billing depend on the operation; check its preview/quote and returned billing.","input_schema":{"$defs":{"JsonValue":{}},"additionalProperties":false,"properties":{"name":{"description":"Human-readable name for the record.","maxLength":160,"minLength":1,"title":"Name","type":"string"},"description":{"default":"","description":"Human-readable description of the record or requested outcome.","maxLength":8000,"title":"Description","type":"string"},"rubric_json":{"additionalProperties":{"$ref":"#/$defs/JsonValue"},"description":"Rubric json used by the public library icp save input v2 operation.","title":"Rubric Json","type":"object"},"activate":{"default":true,"description":"Activate used by the public library icp save input v2 operation.","title":"Activate","type":"boolean"}},"required":["name","rubric_json"],"title":"McpPublicLibraryIcpSaveInputV2","type":"object"},"output_schema":{"additionalProperties":false,"description":"V2 result for library.icp.save.v2; preserves the established validators.","properties":{"resource_id":{"format":"uuid","title":"Resource Id","type":"string"},"entity_type":{"enum":["workspace","messaging","product","offer","competitor","signal_type","persona","buying_role","icp_rubric","client","proof_point","brand","landing_template","gtm_assessment"],"title":"Entity Type","type":"string"},"name":{"maxLength":255,"minLength":1,"title":"Name","type":"string"},"version_number":{"anyOf":[{"minimum":1,"type":"integer"},{"type":"null"}],"default":null,"title":"Version Number"},"created":{"default":false,"title":"Created","type":"boolean"},"resource_uri":{"maxLength":255,"minLength":1,"title":"Resource Uri","type":"string"},"next_step":{"maxLength":500,"minLength":1,"title":"Next Step","type":"string"}},"required":["resource_id","entity_type","name","resource_uri","next_step"],"title":"PublicLibraryIcpSaveResultV2","type":"object"},"example":{"tool":"domain.content.v2","arguments":{"params":{"action":"invoke","operation":"library.icp.save.v2","arguments":{"name":"Example name","rubric_json":{}},"operation_id":"00000000-0000-4000-8000-000000000003"}},"notice":"Fictional fixture IDs and example text. Resolve real IDs, use returned preview tokens and approve exact side effects before execution. Input validation is not proof of provider readiness or a successful business outcome."},"workflow_steps":[],"approval_policy":"exact_scope_single_action","idempotency_policy":"approved_action_outbox","gateway_credit_code":null,"identity":"Workspace, actor and consent come from OAuth; do not supply identity fields.","retry":"Keep the same operation and operation_id when retrying identical work. Reconcile an uncertain result before new work; never replay an old V1 write under a new V2 ID.","completion":"Check status, execution_state, error_code, output and evidence/resource references. Queued work is not complete: poll jobs.status.get.v2 in domain.workspace.v2. For read-back verification require read_back_verified=true where returned; reconcile failures without creating another object.","result_envelope":{"status":"completed | partial | cancelled | failed","execution_state":"terminal | queued | reconciliation_required","output":"Completed results validate against output_schema; partial/reconciliation results can contain incomplete evidence and must not be treated as completion.","billing":"gateway_credits_spent, downstream_settlement, job_id; pending downstream settlement is not a final cost","references":"run_id, invocation_id, resource_refs, evidence_refs"},"documentation":"https://www.hivekind.ai/docs/mcp/content#library-icp-save-v2"},{"operation":"library.messaging.upsert.v2","domain":"content","tool":"domain.content.v2","title":"Upsert messaging","purpose":"Create or version positioning, voice, and do/don't-say. Can mark a default narrative.","side_effects":"Creates or versions a messaging record. Does not send.","permission":"execute","required_scopes":["actions:execute"],"requires_operation_id":true,"billing":"No gateway rate is configured. Check the Core workflow preview/quote for downstream charges and final settlement.","required_resolved_fields":[],"next_call":{"tool":"domain.content.v2","arguments":{"params":{"action":"describe","operation":"library.messaging.upsert.v2"}}},"catalog_revision":"07a373e389289e05","when_not_to_use":"Do not use this to launch a campaign or send mail.","description":"Use when: Create or version positioning, voice, and do/don't-say. Can mark a default narrative. Returns/does: Creates or versions a messaging record. Does not send. Do not use when: Do not use this to launch a campaign or send mail. Identity comes from OAuth. Resolve exact IDs; use typed enums and bounded limits. Billing: Gateway and downstream billing depend on the operation; check its preview/quote and returned billing.","input_schema":{"$defs":{"JsonValue":{}},"additionalProperties":false,"properties":{"messaging_id":{"anyOf":[{"format":"uuid","type":"string"},{"type":"null"}],"default":null,"description":"Exact messaging UUID returned by a Hivekind search, list, get, preview, or resource call.","title":"Messaging Id"},"name":{"anyOf":[{"maxLength":160,"minLength":1,"type":"string"},{"type":"null"}],"default":null,"description":"Human-readable name for the record.","title":"Name"},"is_default":{"default":false,"description":"Whether to apply is default for this operation.","title":"Is Default","type":"boolean"},"positioning_statement":{"anyOf":[{"maxLength":4000,"type":"string"},{"type":"null"}],"default":null,"description":"Positioning statement used by the public library messaging upsert input v2 operation.","title":"Positioning Statement"},"value_proposition":{"anyOf":[{"maxLength":4000,"type":"string"},{"type":"null"}],"default":null,"description":"Value proposition used by the public library messaging upsert input v2 operation.","title":"Value Proposition"},"voice_attributes":{"anyOf":[{"additionalProperties":{"$ref":"#/$defs/JsonValue"},"type":"object"},{"type":"null"}],"default":null,"description":"Voice attributes used by the public library messaging upsert input v2 operation.","title":"Voice Attributes"},"do_say":{"anyOf":[{"items":{"type":"string"},"maxItems":30,"type":"array"},{"type":"null"}],"default":null,"description":"Do say used by the public library messaging upsert input v2 operation.","title":"Do Say"},"dont_say":{"anyOf":[{"items":{"type":"string"},"maxItems":30,"type":"array"},{"type":"null"}],"default":null,"description":"Dont say used by the public library messaging upsert input v2 operation.","title":"Dont Say"},"channel_guidelines":{"anyOf":[{"additionalProperties":{"$ref":"#/$defs/JsonValue"},"type":"object"},{"type":"null"}],"default":null,"description":"Channel guidelines used by the public library messaging upsert input v2 operation.","title":"Channel Guidelines"},"pain_point":{"anyOf":[{"maxLength":4000,"type":"string"},{"type":"null"}],"default":null,"description":"Pain point used by the public library messaging upsert input v2 operation.","title":"Pain Point"},"ideal_customer_fit":{"anyOf":[{"maxLength":4000,"type":"string"},{"type":"null"}],"default":null,"description":"Ideal customer fit used by the public library messaging upsert input v2 operation.","title":"Ideal Customer Fit"},"key_benefits":{"anyOf":[{"items":{"type":"string"},"maxItems":30,"type":"array"},{"type":"null"}],"default":null,"description":"Key benefits used by the public library messaging upsert input v2 operation.","title":"Key Benefits"},"proof_points":{"anyOf":[{"items":{"additionalProperties":{"$ref":"#/$defs/JsonValue"},"type":"object"},"maxItems":20,"type":"array"},{"type":"null"}],"default":null,"description":"Proof points used by the public library messaging upsert input v2 operation.","title":"Proof Points"},"objection_handlers":{"anyOf":[{"items":{"additionalProperties":{"$ref":"#/$defs/JsonValue"},"type":"object"},"maxItems":20,"type":"array"},{"type":"null"}],"default":null,"description":"Objection handlers used by the public library messaging upsert input v2 operation.","title":"Objection Handlers"},"case_studies":{"anyOf":[{"items":{"additionalProperties":{"$ref":"#/$defs/JsonValue"},"type":"object"},"maxItems":20,"type":"array"},{"type":"null"}],"default":null,"description":"Case studies used by the public library messaging upsert input v2 operation.","title":"Case Studies"},"version_label":{"anyOf":[{"maxLength":255,"type":"string"},{"type":"null"}],"default":null,"description":"Version label used by the public library messaging upsert input v2 operation.","title":"Version Label"}},"title":"McpPublicLibraryMessagingUpsertInputV2","type":"object"},"output_schema":{"additionalProperties":false,"description":"V2 result for library.messaging.upsert.v2; preserves the established validators.","properties":{"resource_id":{"format":"uuid","title":"Resource Id","type":"string"},"entity_type":{"enum":["workspace","messaging","product","offer","competitor","signal_type","persona","buying_role","icp_rubric","client","proof_point","brand","landing_template","gtm_assessment"],"title":"Entity Type","type":"string"},"name":{"maxLength":255,"minLength":1,"title":"Name","type":"string"},"version_number":{"anyOf":[{"minimum":1,"type":"integer"},{"type":"null"}],"default":null,"title":"Version Number"},"created":{"default":false,"title":"Created","type":"boolean"},"resource_uri":{"maxLength":255,"minLength":1,"title":"Resource Uri","type":"string"},"next_step":{"maxLength":500,"minLength":1,"title":"Next Step","type":"string"}},"required":["resource_id","entity_type","name","resource_uri","next_step"],"title":"PublicLibraryMessagingUpsertResultV2","type":"object"},"example":{"tool":"domain.content.v2","arguments":{"params":{"action":"invoke","operation":"library.messaging.upsert.v2","arguments":{"name":"Example messaging","positioning_statement":"Example approved positioning"},"operation_id":"00000000-0000-4000-8000-000000000003"}},"notice":"Fictional fixture IDs and example text. Resolve real IDs, use returned preview tokens and approve exact side effects before execution. Input validation is not proof of provider readiness or a successful business outcome."},"workflow_steps":[],"approval_policy":"exact_scope_single_action","idempotency_policy":"approved_action_outbox","gateway_credit_code":null,"identity":"Workspace, actor and consent come from OAuth; do not supply identity fields.","retry":"Keep the same operation and operation_id when retrying identical work. Reconcile an uncertain result before new work; never replay an old V1 write under a new V2 ID.","completion":"Check status, execution_state, error_code, output and evidence/resource references. Queued work is not complete: poll jobs.status.get.v2 in domain.workspace.v2. For read-back verification require read_back_verified=true where returned; reconcile failures without creating another object.","result_envelope":{"status":"completed | partial | cancelled | failed","execution_state":"terminal | queued | reconciliation_required","output":"Completed results validate against output_schema; partial/reconciliation results can contain incomplete evidence and must not be treated as completion.","billing":"gateway_credits_spent, downstream_settlement, job_id; pending downstream settlement is not a final cost","references":"run_id, invocation_id, resource_refs, evidence_refs"},"documentation":"https://www.hivekind.ai/docs/mcp/content#library-messaging-upsert-v2"},{"operation":"library.persona.upsert.v2","domain":"content","tool":"domain.content.v2","title":"Upsert a persona","purpose":"Create or version a job-title persona with titles, JTBD, and buying_role_ids.","side_effects":"Creates or versions a persona. Does not send.","permission":"execute","required_scopes":["actions:execute"],"requires_operation_id":true,"billing":"No gateway rate is configured. Check the Core workflow preview/quote for downstream charges and final settlement.","required_resolved_fields":[],"next_call":{"tool":"domain.content.v2","arguments":{"params":{"action":"describe","operation":"library.persona.upsert.v2"}}},"catalog_revision":"07a373e389289e05","when_not_to_use":"Do not confuse personas with purchase roles. Use contact_titles when searching contacts.","description":"Use when: Create or version a job-title persona with titles, JTBD, and buying_role_ids. Returns/does: Creates or versions a persona. Does not send. Do not use when: Do not confuse personas with purchase roles. Use contact_titles when searching contacts. Identity comes from OAuth. Resolve exact IDs; use typed enums and bounded limits. Billing: Gateway and downstream billing depend on the operation; check its preview/quote and returned billing.","input_schema":{"$defs":{"JsonValue":{}},"additionalProperties":false,"properties":{"persona_id":{"anyOf":[{"format":"uuid","type":"string"},{"type":"null"}],"default":null,"description":"Exact persona UUID returned by a Hivekind search, list, get, preview, or resource call.","title":"Persona Id"},"name":{"anyOf":[{"maxLength":160,"minLength":1,"type":"string"},{"type":"null"}],"default":null,"description":"Human-readable name for the record.","title":"Name"},"description":{"anyOf":[{"maxLength":8000,"type":"string"},{"type":"null"}],"default":null,"description":"Human-readable description of the record or requested outcome.","title":"Description"},"responsibilities":{"anyOf":[{"maxLength":8000,"type":"string"},{"type":"null"}],"default":null,"description":"Responsibilities used by the public library persona upsert input v2 operation.","title":"Responsibilities"},"contact_titles":{"anyOf":[{"items":{"type":"string"},"maxItems":40,"type":"array"},{"type":"null"}],"default":null,"description":"Contact titles used by the public library persona upsert input v2 operation.","title":"Contact Titles"},"objectives_jtbd":{"anyOf":[{"items":{"type":"string"},"maxItems":30,"type":"array"},{"type":"null"}],"default":null,"description":"Objectives jtbd used by the public library persona upsert input v2 operation.","title":"Objectives Jtbd"},"pain_points":{"anyOf":[{"items":{"additionalProperties":{"$ref":"#/$defs/JsonValue"},"type":"object"},"maxItems":20,"type":"array"},{"type":"null"}],"default":null,"description":"Pain points used by the public library persona upsert input v2 operation.","title":"Pain Points"},"goals":{"anyOf":[{"items":{"type":"string"},"maxItems":30,"type":"array"},{"type":"null"}],"default":null,"description":"Goals used by the public library persona upsert input v2 operation.","title":"Goals"},"preferred_channels":{"anyOf":[{"items":{"type":"string"},"maxItems":10,"type":"array"},{"type":"null"}],"default":null,"description":"Preferred channels used by the public library persona upsert input v2 operation.","title":"Preferred Channels"},"objections":{"anyOf":[{"items":{"additionalProperties":{"$ref":"#/$defs/JsonValue"},"type":"object"},"maxItems":20,"type":"array"},{"type":"null"}],"default":null,"description":"Objections used by the public library persona upsert input v2 operation.","title":"Objections"},"buying_role_ids":{"anyOf":[{"items":{"format":"uuid","type":"string"},"maxItems":20,"type":"array"},{"type":"null"}],"default":null,"description":"Exact buying role UUIDs returned by a Hivekind search, list, get, preview, or resource call.","title":"Buying Role Ids"},"version_label":{"anyOf":[{"maxLength":255,"type":"string"},{"type":"null"}],"default":null,"description":"Version label used by the public library persona upsert input v2 operation.","title":"Version Label"}},"title":"McpPublicLibraryPersonaUpsertInputV2","type":"object"},"output_schema":{"additionalProperties":false,"description":"V2 result for library.persona.upsert.v2; preserves the established validators.","properties":{"resource_id":{"format":"uuid","title":"Resource Id","type":"string"},"entity_type":{"enum":["workspace","messaging","product","offer","competitor","signal_type","persona","buying_role","icp_rubric","client","proof_point","brand","landing_template","gtm_assessment"],"title":"Entity Type","type":"string"},"name":{"maxLength":255,"minLength":1,"title":"Name","type":"string"},"version_number":{"anyOf":[{"minimum":1,"type":"integer"},{"type":"null"}],"default":null,"title":"Version Number"},"created":{"default":false,"title":"Created","type":"boolean"},"resource_uri":{"maxLength":255,"minLength":1,"title":"Resource Uri","type":"string"},"next_step":{"maxLength":500,"minLength":1,"title":"Next Step","type":"string"}},"required":["resource_id","entity_type","name","resource_uri","next_step"],"title":"PublicLibraryPersonaUpsertResultV2","type":"object"},"example":{"tool":"domain.content.v2","arguments":{"params":{"action":"invoke","operation":"library.persona.upsert.v2","arguments":{"description":"Example approved workspace context","name":"Example persona"},"operation_id":"00000000-0000-4000-8000-000000000003"}},"notice":"Fictional fixture IDs and example text. Resolve real IDs, use returned preview tokens and approve exact side effects before execution. Input validation is not proof of provider readiness or a successful business outcome."},"workflow_steps":[],"approval_policy":"exact_scope_single_action","idempotency_policy":"approved_action_outbox","gateway_credit_code":null,"identity":"Workspace, actor and consent come from OAuth; do not supply identity fields.","retry":"Keep the same operation and operation_id when retrying identical work. Reconcile an uncertain result before new work; never replay an old V1 write under a new V2 ID.","completion":"Check status, execution_state, error_code, output and evidence/resource references. Queued work is not complete: poll jobs.status.get.v2 in domain.workspace.v2. For read-back verification require read_back_verified=true where returned; reconcile failures without creating another object.","result_envelope":{"status":"completed | partial | cancelled | failed","execution_state":"terminal | queued | reconciliation_required","output":"Completed results validate against output_schema; partial/reconciliation results can contain incomplete evidence and must not be treated as completion.","billing":"gateway_credits_spent, downstream_settlement, job_id; pending downstream settlement is not a final cost","references":"run_id, invocation_id, resource_refs, evidence_refs"},"documentation":"https://www.hivekind.ai/docs/mcp/content#library-persona-upsert-v2"},{"operation":"library.product.upsert.v2","domain":"content","tool":"domain.content.v2","title":"Upsert product","purpose":"Create or version what the workspace sells.","side_effects":"Creates or versions a product record. Does not send.","permission":"execute","required_scopes":["actions:execute"],"requires_operation_id":true,"billing":"No gateway rate is configured. Check the Core workflow preview/quote for downstream charges and final settlement.","required_resolved_fields":[],"next_call":{"tool":"domain.content.v2","arguments":{"params":{"action":"describe","operation":"library.product.upsert.v2"}}},"catalog_revision":"07a373e389289e05","when_not_to_use":"Do not use this to set ICP or launch outreach.","description":"Use when: Create or version what the workspace sells. Returns/does: Creates or versions a product record. Does not send. Do not use when: Do not use this to set ICP or launch outreach. Identity comes from OAuth. Resolve exact IDs; use typed enums and bounded limits. Billing: Gateway and downstream billing depend on the operation; check its preview/quote and returned billing.","input_schema":{"additionalProperties":false,"properties":{"product_id":{"anyOf":[{"format":"uuid","type":"string"},{"type":"null"}],"default":null,"description":"Exact product UUID returned by a Hivekind search, list, get, preview, or resource call.","title":"Product Id"},"name":{"anyOf":[{"maxLength":160,"minLength":1,"type":"string"},{"type":"null"}],"default":null,"description":"Human-readable name for the record.","title":"Name"},"description":{"anyOf":[{"maxLength":8000,"type":"string"},{"type":"null"}],"default":null,"description":"Human-readable description of the record or requested outcome.","title":"Description"},"kind":{"anyOf":[{"enum":["product","service"],"type":"string"},{"type":"null"}],"default":null,"description":"Kind used by the public library product upsert input v2 operation.","title":"Kind"},"ideal_for":{"anyOf":[{"maxLength":4000,"type":"string"},{"type":"null"}],"default":null,"description":"Ideal for used by the public library product upsert input v2 operation.","title":"Ideal For"},"use_cases":{"anyOf":[{"items":{"type":"string"},"maxItems":30,"type":"array"},{"type":"null"}],"default":null,"description":"Use cases used by the public library product upsert input v2 operation.","title":"Use Cases"},"key_features":{"anyOf":[{"items":{"type":"string"},"maxItems":30,"type":"array"},{"type":"null"}],"default":null,"description":"Key features used by the public library product upsert input v2 operation.","title":"Key Features"},"differentiators":{"anyOf":[{"items":{"type":"string"},"maxItems":30,"type":"array"},{"type":"null"}],"default":null,"description":"Differentiators used by the public library product upsert input v2 operation.","title":"Differentiators"},"pricing_model":{"anyOf":[{"enum":["subscription","per_seat","usage","one_time","custom"],"type":"string"},{"type":"null"}],"default":null,"description":"Pricing model used by the public library product upsert input v2 operation.","title":"Pricing Model"},"url":{"anyOf":[{"maxLength":2000,"type":"string"},{"type":"null"}],"default":null,"description":"Url used by the public library product upsert input v2 operation.","title":"Url"},"version_label":{"anyOf":[{"maxLength":255,"type":"string"},{"type":"null"}],"default":null,"description":"Version label used by the public library product upsert input v2 operation.","title":"Version Label"}},"title":"McpPublicLibraryProductUpsertInputV2","type":"object"},"output_schema":{"additionalProperties":false,"description":"V2 result for library.product.upsert.v2; preserves the established validators.","properties":{"resource_id":{"format":"uuid","title":"Resource Id","type":"string"},"entity_type":{"enum":["workspace","messaging","product","offer","competitor","signal_type","persona","buying_role","icp_rubric","client","proof_point","brand","landing_template","gtm_assessment"],"title":"Entity Type","type":"string"},"name":{"maxLength":255,"minLength":1,"title":"Name","type":"string"},"version_number":{"anyOf":[{"minimum":1,"type":"integer"},{"type":"null"}],"default":null,"title":"Version Number"},"created":{"default":false,"title":"Created","type":"boolean"},"resource_uri":{"maxLength":255,"minLength":1,"title":"Resource Uri","type":"string"},"next_step":{"maxLength":500,"minLength":1,"title":"Next Step","type":"string"}},"required":["resource_id","entity_type","name","resource_uri","next_step"],"title":"PublicLibraryProductUpsertResultV2","type":"object"},"example":{"tool":"domain.content.v2","arguments":{"params":{"action":"invoke","operation":"library.product.upsert.v2","arguments":{"description":"Example approved workspace context","name":"Example product"},"operation_id":"00000000-0000-4000-8000-000000000003"}},"notice":"Fictional fixture IDs and example text. Resolve real IDs, use returned preview tokens and approve exact side effects before execution. Input validation is not proof of provider readiness or a successful business outcome."},"workflow_steps":[],"approval_policy":"exact_scope_single_action","idempotency_policy":"approved_action_outbox","gateway_credit_code":null,"identity":"Workspace, actor and consent come from OAuth; do not supply identity fields.","retry":"Keep the same operation and operation_id when retrying identical work. Reconcile an uncertain result before new work; never replay an old V1 write under a new V2 ID.","completion":"Check status, execution_state, error_code, output and evidence/resource references. Queued work is not complete: poll jobs.status.get.v2 in domain.workspace.v2. For read-back verification require read_back_verified=true where returned; reconcile failures without creating another object.","result_envelope":{"status":"completed | partial | cancelled | failed","execution_state":"terminal | queued | reconciliation_required","output":"Completed results validate against output_schema; partial/reconciliation results can contain incomplete evidence and must not be treated as completion.","billing":"gateway_credits_spent, downstream_settlement, job_id; pending downstream settlement is not a final cost","references":"run_id, invocation_id, resource_refs, evidence_refs"},"documentation":"https://www.hivekind.ai/docs/mcp/content#library-product-upsert-v2"},{"operation":"library.records.search.v2","domain":"content","tool":"domain.content.v2","title":"List library records","purpose":"List one Library entity type (ids, names, versions) so you can open hivekind://library/{entity}/{id}.","side_effects":"Reads current workspace state.","permission":"read","required_scopes":["runs:read"],"requires_operation_id":false,"billing":"No gateway credit charge; reads saved workspace data without starting paid provider work.","required_resolved_fields":[],"next_call":{"tool":"domain.content.v2","arguments":{"params":{"action":"describe","operation":"library.records.search.v2"}}},"catalog_revision":"07a373e389289e05","when_not_to_use":"Use library.status.get.v2 for completion, not a dump of every facet.","description":"Use when: List one Library entity type (ids, names, versions) so you can open hivekind://library/{entity}/{id}. Returns/does: Reads the current authorized workspace state. Do not use when: Use library.status.get.v2 for completion, not a dump of every facet. Identity comes from OAuth. Resolve exact IDs; use typed enums and bounded limits. Billing: Gateway and downstream billing depend on the operation; check its preview/quote and returned billing.","input_schema":{"additionalProperties":false,"properties":{"entity_type":{"description":"Entity type used by the library records search input v2 operation.","enum":["workspace","messaging","product","offer","competitor","signal_type","persona","buying_role","icp_rubric","client","proof_point","brand","landing_template","gtm_assessment"],"title":"Entity Type","type":"string"},"query":{"default":"*","description":"Search text. Use a name, domain, title, or other identifying phrase relevant to this operation.","maxLength":255,"minLength":1,"title":"Query","type":"string"},"limit":{"default":20,"description":"Maximum number of records to return in this page.","maximum":30,"minimum":1,"title":"Limit","type":"integer"}},"required":["entity_type"],"title":"McpLibraryRecordsSearchInputV2","type":"object"},"output_schema":{"$defs":{"LibraryListItemV1":{"additionalProperties":false,"properties":{"resource_id":{"format":"uuid","title":"Resource Id","type":"string"},"entity_type":{"enum":["workspace","messaging","product","offer","competitor","signal_type","persona","buying_role","icp_rubric","client","proof_point","brand","landing_template","gtm_assessment"],"title":"Entity Type","type":"string"},"name":{"maxLength":255,"minLength":1,"title":"Name","type":"string"},"summary":{"default":"","maxLength":4000,"title":"Summary","type":"string"},"version_number":{"anyOf":[{"minimum":1,"type":"integer"},{"type":"null"}],"default":null,"title":"Version Number"},"is_default":{"default":false,"title":"Is Default","type":"boolean"},"resource_uri":{"maxLength":255,"minLength":1,"title":"Resource Uri","type":"string"}},"required":["resource_id","entity_type","name","resource_uri"],"title":"LibraryListItemV1","type":"object"}},"additionalProperties":false,"properties":{"items":{"default":[],"items":{"$ref":"#/$defs/LibraryListItemV1"},"maxItems":30,"title":"Items","type":"array"}},"title":"LibraryRecordsSearchResultV2","type":"object"},"example":{"tool":"domain.content.v2","arguments":{"params":{"action":"invoke","operation":"library.records.search.v2","arguments":{"entity_type":"workspace"},"operation_id":"00000000-0000-4000-8000-000000000003"}},"notice":"Fictional fixture IDs and example text. Resolve real IDs, use returned preview tokens and approve exact side effects before execution. Input validation is not proof of provider readiness or a successful business outcome."},"workflow_steps":[],"approval_policy":null,"idempotency_policy":"read_only","gateway_credit_code":null,"identity":"Workspace, actor and consent come from OAuth; do not supply identity fields.","retry":"Keep the same operation and operation_id when retrying identical work. Reconcile an uncertain result before new work; never replay an old V1 write under a new V2 ID.","completion":"Check status, execution_state, error_code, output and evidence/resource references. Queued work is not complete: poll jobs.status.get.v2 in domain.workspace.v2. For read-back verification require read_back_verified=true where returned; reconcile failures without creating another object.","result_envelope":{"status":"completed | partial | cancelled | failed","execution_state":"terminal | queued | reconciliation_required","output":"Completed results validate against output_schema; partial/reconciliation results can contain incomplete evidence and must not be treated as completion.","billing":"gateway_credits_spent, downstream_settlement, job_id; pending downstream settlement is not a final cost","references":"run_id, invocation_id, resource_refs, evidence_refs"},"documentation":"https://www.hivekind.ai/docs/mcp/content#library-records-search-v2"},{"operation":"library.resolve_context.v2","domain":"content","tool":"domain.content.v2","title":"Resolve library context","purpose":"Pull approved Library records (messaging, product, ICP, personas, buying roles, signal types, and other facets) for writing or targeting.","side_effects":"Reads current workspace state.","permission":"read","required_scopes":["runs:read"],"requires_operation_id":false,"billing":"No gateway credit charge; reads saved workspace data without starting paid provider work.","required_resolved_fields":[],"next_call":{"tool":"domain.content.v2","arguments":{"params":{"action":"describe","operation":"library.resolve_context.v2"}}},"catalog_revision":"07a373e389289e05","when_not_to_use":"Do not use this to list playbooks — that is playbooks.search.v2. Do not use this to search live why-now events — that is signals.search.v2.","description":"Use when: Pull approved Library records (messaging, product, ICP, personas, buying roles, signal types, and other facets) for writing or targeting. Returns/does: Reads the current authorized workspace state. Do not use when: Do not use this to list playbooks — that is playbooks.search.v2. Do not use this to search live why-now events — that is signals.search.v2. Identity comes from OAuth. Resolve exact IDs; use typed enums and bounded limits. Billing: Gateway and downstream billing depend on the operation; check its preview/quote and returned billing.","input_schema":{"additionalProperties":false,"properties":{"query":{"default":"*","description":"Search text. Use a name, domain, title, or other identifying phrase relevant to this operation.","maxLength":255,"minLength":1,"title":"Query","type":"string"},"entity_types":{"default":["messaging","product","offer","icp_rubric","persona","buying_role","signal_type"],"description":"Entity types used by the public library resolve context input v2 operation.","items":{"enum":["workspace","messaging","product","offer","competitor","signal_type","persona","buying_role","icp_rubric","client","proof_point","brand","landing_template","gtm_assessment"],"type":"string"},"title":"Entity Types","type":"array"},"resource_ids":{"default":[],"description":"Exact resource UUIDs returned by a Hivekind search, list, get, preview, or resource call.","items":{"format":"uuid","type":"string"},"maxItems":30,"title":"Resource Ids","type":"array"},"limit":{"default":10,"description":"Maximum number of records to return in this page.","maximum":30,"minimum":1,"title":"Limit","type":"integer"}},"title":"McpPublicLibraryResolveContextInputV2","type":"object"},"output_schema":{"$defs":{"JsonValue":{},"LibraryContextItemV1":{"additionalProperties":false,"properties":{"resource_id":{"format":"uuid","title":"Resource Id","type":"string"},"entity_type":{"enum":["workspace","messaging","product","offer","competitor","signal_type","persona","buying_role","icp_rubric","client","proof_point","brand","landing_template","gtm_assessment"],"title":"Entity Type","type":"string"},"name":{"maxLength":255,"minLength":1,"title":"Name","type":"string"},"summary":{"default":"","maxLength":4000,"title":"Summary","type":"string"},"highlights":{"default":[],"items":{"type":"string"},"maxItems":20,"title":"Highlights","type":"array"},"version_number":{"anyOf":[{"minimum":1,"type":"integer"},{"type":"null"}],"default":null,"title":"Version Number"},"is_default":{"default":false,"title":"Is Default","type":"boolean"},"editable_fields":{"additionalProperties":{"$ref":"#/$defs/JsonValue"},"title":"Editable Fields","type":"object"},"allowed_operations":{"default":["replace"],"items":{"enum":["add","replace"],"type":"string"},"title":"Allowed Operations","type":"array"}},"required":["resource_id","entity_type","name"],"title":"LibraryContextItemV1","type":"object"}},"additionalProperties":false,"description":"V2 result for library.resolve_context.v2; preserves the established validators.","properties":{"items":{"default":[],"items":{"$ref":"#/$defs/LibraryContextItemV1"},"title":"Items","type":"array"}},"title":"PublicLibraryResolveContextResultV2","type":"object"},"example":{"tool":"domain.content.v2","arguments":{"params":{"action":"invoke","operation":"library.resolve_context.v2","arguments":{},"operation_id":"00000000-0000-4000-8000-000000000003"}},"notice":"Fictional fixture IDs and example text. Resolve real IDs, use returned preview tokens and approve exact side effects before execution. Input validation is not proof of provider readiness or a successful business outcome."},"workflow_steps":[],"approval_policy":null,"idempotency_policy":"read_only","gateway_credit_code":null,"identity":"Workspace, actor and consent come from OAuth; do not supply identity fields.","retry":"Keep the same operation and operation_id when retrying identical work. Reconcile an uncertain result before new work; never replay an old V1 write under a new V2 ID.","completion":"Check status, execution_state, error_code, output and evidence/resource references. Queued work is not complete: poll jobs.status.get.v2 in domain.workspace.v2. For read-back verification require read_back_verified=true where returned; reconcile failures without creating another object.","result_envelope":{"status":"completed | partial | cancelled | failed","execution_state":"terminal | queued | reconciliation_required","output":"Completed results validate against output_schema; partial/reconciliation results can contain incomplete evidence and must not be treated as completion.","billing":"gateway_credits_spent, downstream_settlement, job_id; pending downstream settlement is not a final cost","references":"run_id, invocation_id, resource_refs, evidence_refs"},"documentation":"https://www.hivekind.ai/docs/mcp/content#library-resolve_context-v2"},{"operation":"library.signal_type.propose.v2","domain":"content","tool":"domain.content.v2","title":"Propose a signal type","purpose":"Draft a why-now signal-type definition from a seed. Does not persist and does not consume credits.","side_effects":"May change workspace state or start work; describe before invoking.","permission":"propose","required_scopes":["runs:create"],"requires_operation_id":true,"billing":"No gateway rate is configured. Check the Core workflow preview/quote for downstream charges and final settlement.","required_resolved_fields":[],"next_call":{"tool":"domain.content.v2","arguments":{"params":{"action":"describe","operation":"library.signal_type.propose.v2"}}},"catalog_revision":"07a373e389289e05","when_not_to_use":"Do not use this to search live events — that is signals.search.v2. Save with library.signal_type.save.v2 after the user confirms.","description":"Use when: Draft a why-now signal-type definition from a seed. Does not persist and does not consume credits. Returns/does: Changes workspace state or starts work; review the exact contract and approval requirements. Do not use when: Do not use this to search live events — that is signals.search.v2. Save with library.signal_type.save.v2 after the user confirms. Identity comes from OAuth. Resolve exact IDs; use typed enums and bounded limits. Billing: Gateway and downstream billing depend on the operation; check its preview/quote and returned billing.","input_schema":{"additionalProperties":false,"properties":{"name":{"description":"Human-readable name for the record.","maxLength":160,"minLength":1,"title":"Name","type":"string"},"seed_description":{"description":"Seed description used by the public library signal type propose input v2 operation.","maxLength":4000,"minLength":1,"title":"Seed Description","type":"string"},"industry_hint":{"anyOf":[{"maxLength":255,"type":"string"},{"type":"null"}],"default":null,"description":"Industry hint used by the public library signal type propose input v2 operation.","title":"Industry Hint"}},"required":["name","seed_description"],"title":"McpPublicLibrarySignalTypeProposeInputV2","type":"object"},"output_schema":{"$defs":{"JsonValue":{}},"additionalProperties":false,"description":"V2 result for library.signal_type.propose.v2; preserves the established validators.","properties":{"name":{"maxLength":160,"minLength":1,"title":"Name","type":"string"},"display_name":{"maxLength":160,"minLength":1,"title":"Display Name","type":"string"},"description":{"default":"","maxLength":8000,"title":"Description","type":"string"},"relevance":{"default":"","maxLength":8000,"title":"Relevance","type":"string"},"messaging_guidance":{"default":"","maxLength":8000,"title":"Messaging Guidance","type":"string"},"detection_config":{"anyOf":[{"additionalProperties":{"$ref":"#/$defs/JsonValue"},"type":"object"},{"type":"null"}],"default":null,"title":"Detection Config"},"next_step":{"maxLength":500,"minLength":1,"title":"Next Step","type":"string"}},"required":["name","display_name","next_step"],"title":"PublicLibrarySignalTypeProposeResultV2","type":"object"},"example":{"tool":"domain.content.v2","arguments":{"params":{"action":"invoke","operation":"library.signal_type.propose.v2","arguments":{"name":"Example name","seed_description":"Example seed description"},"operation_id":"00000000-0000-4000-8000-000000000003"}},"notice":"Fictional fixture IDs and example text. Resolve real IDs, use returned preview tokens and approve exact side effects before execution. Input validation is not proof of provider readiness or a successful business outcome."},"workflow_steps":[],"approval_policy":null,"idempotency_policy":"run_task_proposal","gateway_credit_code":null,"identity":"Workspace, actor and consent come from OAuth; do not supply identity fields.","retry":"Keep the same operation and operation_id when retrying identical work. Reconcile an uncertain result before new work; never replay an old V1 write under a new V2 ID.","completion":"Check status, execution_state, error_code, output and evidence/resource references. Queued work is not complete: poll jobs.status.get.v2 in domain.workspace.v2. For read-back verification require read_back_verified=true where returned; reconcile failures without creating another object.","result_envelope":{"status":"completed | partial | cancelled | failed","execution_state":"terminal | queued | reconciliation_required","output":"Completed results validate against output_schema; partial/reconciliation results can contain incomplete evidence and must not be treated as completion.","billing":"gateway_credits_spent, downstream_settlement, job_id; pending downstream settlement is not a final cost","references":"run_id, invocation_id, resource_refs, evidence_refs"},"documentation":"https://www.hivekind.ai/docs/mcp/content#library-signal_type-propose-v2"},{"operation":"library.signal_type.save.v2","domain":"content","tool":"domain.content.v2","title":"Save a signal type","purpose":"Create or version a Library signal-type definition to pass into campaigns.launch.v2.","side_effects":"Creates or versions a signal type. Does not send.","permission":"execute","required_scopes":["actions:execute"],"requires_operation_id":true,"billing":"No gateway rate is configured. Check the Core workflow preview/quote for downstream charges and final settlement.","required_resolved_fields":[],"next_call":{"tool":"domain.content.v2","arguments":{"params":{"action":"describe","operation":"library.signal_type.save.v2"}}},"catalog_revision":"07a373e389289e05","when_not_to_use":"Do not use this to search live signals. Propose first unless the user already supplied the definition.","description":"Use when: Create or version a Library signal-type definition to pass into campaigns.launch.v2. Returns/does: Creates or versions a signal type. Does not send. Do not use when: Do not use this to search live signals. Propose first unless the user already supplied the definition. Identity comes from OAuth. Resolve exact IDs; use typed enums and bounded limits. Billing: Gateway and downstream billing depend on the operation; check its preview/quote and returned billing.","input_schema":{"$defs":{"JsonValue":{}},"additionalProperties":false,"properties":{"signal_type_id":{"anyOf":[{"format":"uuid","type":"string"},{"type":"null"}],"default":null,"description":"Exact signal type UUID returned by a Hivekind search, list, get, preview, or resource call.","title":"Signal Type Id"},"name":{"anyOf":[{"maxLength":160,"minLength":1,"type":"string"},{"type":"null"}],"default":null,"description":"Human-readable name for the record.","title":"Name"},"display_name":{"anyOf":[{"maxLength":160,"minLength":1,"type":"string"},{"type":"null"}],"default":null,"description":"Display name used by the public library signal type save input v2 operation.","title":"Display Name"},"description":{"anyOf":[{"maxLength":8000,"type":"string"},{"type":"null"}],"default":null,"description":"Human-readable description of the record or requested outcome.","title":"Description"},"relevance":{"anyOf":[{"maxLength":8000,"type":"string"},{"type":"null"}],"default":null,"description":"Relevance used by the public library signal type save input v2 operation.","title":"Relevance"},"messaging_guidance":{"anyOf":[{"maxLength":8000,"type":"string"},{"type":"null"}],"default":null,"description":"Messaging guidance used by the public library signal type save input v2 operation.","title":"Messaging Guidance"},"detection_config":{"anyOf":[{"additionalProperties":{"$ref":"#/$defs/JsonValue"},"type":"object"},{"type":"null"}],"default":null,"description":"Detection config used by the public library signal type save input v2 operation.","title":"Detection Config"},"version_label":{"anyOf":[{"maxLength":255,"type":"string"},{"type":"null"}],"default":null,"description":"Version label used by the public library signal type save input v2 operation.","title":"Version Label"}},"title":"McpPublicLibrarySignalTypeSaveInputV2","type":"object"},"output_schema":{"additionalProperties":false,"description":"V2 result for library.signal_type.save.v2; preserves the established validators.","properties":{"resource_id":{"format":"uuid","title":"Resource Id","type":"string"},"entity_type":{"enum":["workspace","messaging","product","offer","competitor","signal_type","persona","buying_role","icp_rubric","client","proof_point","brand","landing_template","gtm_assessment"],"title":"Entity Type","type":"string"},"name":{"maxLength":255,"minLength":1,"title":"Name","type":"string"},"version_number":{"anyOf":[{"minimum":1,"type":"integer"},{"type":"null"}],"default":null,"title":"Version Number"},"created":{"default":false,"title":"Created","type":"boolean"},"resource_uri":{"maxLength":255,"minLength":1,"title":"Resource Uri","type":"string"},"next_step":{"maxLength":500,"minLength":1,"title":"Next Step","type":"string"}},"required":["resource_id","entity_type","name","resource_uri","next_step"],"title":"PublicLibrarySignalTypeSaveResultV2","type":"object"},"example":{"tool":"domain.content.v2","arguments":{"params":{"action":"invoke","operation":"library.signal_type.save.v2","arguments":{"description":"A verified hiring announcement","display_name":"Example hiring","messaging_guidance":"Reference the source without claiming buying intent","name":"example_hiring","relevance":"Hiring may indicate an active budget"},"operation_id":"00000000-0000-4000-8000-000000000003"}},"notice":"Fictional fixture IDs and example text. Resolve real IDs, use returned preview tokens and approve exact side effects before execution. Input validation is not proof of provider readiness or a successful business outcome."},"workflow_steps":[],"approval_policy":"exact_scope_single_action","idempotency_policy":"approved_action_outbox","gateway_credit_code":null,"identity":"Workspace, actor and consent come from OAuth; do not supply identity fields.","retry":"Keep the same operation and operation_id when retrying identical work. Reconcile an uncertain result before new work; never replay an old V1 write under a new V2 ID.","completion":"Check status, execution_state, error_code, output and evidence/resource references. Queued work is not complete: poll jobs.status.get.v2 in domain.workspace.v2. For read-back verification require read_back_verified=true where returned; reconcile failures without creating another object.","result_envelope":{"status":"completed | partial | cancelled | failed","execution_state":"terminal | queued | reconciliation_required","output":"Completed results validate against output_schema; partial/reconciliation results can contain incomplete evidence and must not be treated as completion.","billing":"gateway_credits_spent, downstream_settlement, job_id; pending downstream settlement is not a final cost","references":"run_id, invocation_id, resource_refs, evidence_refs"},"documentation":"https://www.hivekind.ai/docs/mcp/content#library-signal_type-save-v2"},{"operation":"library.status.get.v2","domain":"content","tool":"domain.content.v2","title":"Library status","purpose":"You need to know which approved GTM context facets are complete before research, writing, or targeting.","side_effects":"Returns completion, missing facets, and the next setup step. Read only.","permission":"read","required_scopes":["runs:read"],"requires_operation_id":false,"billing":"No gateway credit charge; reads saved workspace data without starting paid provider work.","required_resolved_fields":[],"next_call":{"tool":"domain.content.v2","arguments":{"params":{"action":"describe","operation":"library.status.get.v2"}}},"catalog_revision":"07a373e389289e05","when_not_to_use":"You need to search or edit a specific Library record.","description":"Use when: You need to know which approved GTM context facets are complete before research, writing, or targeting. Returns/does: Returns completion, missing facets, and the next setup step. Read only. Do not use when: You need to search or edit a specific Library record. Identity comes from OAuth. Resolve exact IDs; use typed enums and bounded limits. Billing: Gateway and downstream billing depend on the operation; check its preview/quote and returned billing.","input_schema":{"additionalProperties":false,"properties":{},"title":"McpLibraryStatusGetInputV2","type":"object"},"output_schema":{"$defs":{"LibraryEntityStatV1":{"additionalProperties":false,"properties":{"entity_type":{"maxLength":64,"minLength":1,"title":"Entity Type","type":"string"},"count":{"maximum":100000,"minimum":0,"title":"Count","type":"integer"},"last_updated":{"anyOf":[{"format":"date-time","type":"string"},{"type":"null"}],"default":null,"title":"Last Updated"},"available":{"default":true,"title":"Available","type":"boolean"},"is_complete":{"default":false,"title":"Is Complete","type":"boolean"},"is_required":{"default":true,"title":"Is Required","type":"boolean"},"completion_hint":{"anyOf":[{"maxLength":400,"type":"string"},{"type":"null"}],"default":null,"title":"Completion Hint"}},"required":["entity_type","count"],"title":"LibraryEntityStatV1","type":"object"},"LibraryFacetV1":{"additionalProperties":false,"properties":{"facet_id":{"enum":["foundation","targeting","assets","assessment"],"title":"Facet Id","type":"string"},"label":{"maxLength":64,"minLength":1,"title":"Label","type":"string"},"count":{"default":0,"maximum":100000,"minimum":0,"title":"Count","type":"integer"},"completion_percent":{"default":0,"maximum":100,"minimum":0,"title":"Completion Percent","type":"integer"},"attention_count":{"default":0,"maximum":100,"minimum":0,"title":"Attention Count","type":"integer"},"status":{"maxLength":80,"minLength":1,"title":"Status","type":"string"},"last_updated":{"anyOf":[{"format":"date-time","type":"string"},{"type":"null"}],"default":null,"title":"Last Updated"},"available":{"default":true,"title":"Available","type":"boolean"},"locked_reason":{"anyOf":[{"maxLength":400,"type":"string"},{"type":"null"}],"default":null,"title":"Locked Reason"},"latest_resource_id":{"anyOf":[{"maxLength":64,"type":"string"},{"type":"null"}],"default":null,"title":"Latest Resource Id"}},"required":["facet_id","label","status"],"title":"LibraryFacetV1","type":"object"}},"additionalProperties":false,"properties":{"completion_percent":{"maximum":100,"minimum":0,"title":"Completion Percent","type":"integer"},"items":{"default":[],"items":{"$ref":"#/$defs/LibraryEntityStatV1"},"maxItems":20,"title":"Items","type":"array"},"facets":{"default":[],"items":{"$ref":"#/$defs/LibraryFacetV1"},"maxItems":8,"title":"Facets","type":"array"},"missing":{"default":[],"items":{"type":"string"},"maxItems":20,"title":"Missing","type":"array"},"resource_uri":{"maxLength":255,"minLength":1,"title":"Resource Uri","type":"string"},"next_step":{"maxLength":500,"minLength":1,"title":"Next Step","type":"string"}},"required":["completion_percent","resource_uri","next_step"],"title":"LibraryStatusGetResultV2","type":"object"},"example":{"tool":"domain.content.v2","arguments":{"params":{"action":"invoke","operation":"library.status.get.v2","arguments":{},"operation_id":"00000000-0000-4000-8000-000000000003"}},"notice":"Fictional fixture IDs and example text. Resolve real IDs, use returned preview tokens and approve exact side effects before execution. Input validation is not proof of provider readiness or a successful business outcome."},"workflow_steps":[],"approval_policy":null,"idempotency_policy":"read_only","gateway_credit_code":null,"identity":"Workspace, actor and consent come from OAuth; do not supply identity fields.","retry":"Keep the same operation and operation_id when retrying identical work. Reconcile an uncertain result before new work; never replay an old V1 write under a new V2 ID.","completion":"Check status, execution_state, error_code, output and evidence/resource references. Queued work is not complete: poll jobs.status.get.v2 in domain.workspace.v2. For read-back verification require read_back_verified=true where returned; reconcile failures without creating another object.","result_envelope":{"status":"completed | partial | cancelled | failed","execution_state":"terminal | queued | reconciliation_required","output":"Completed results validate against output_schema; partial/reconciliation results can contain incomplete evidence and must not be treated as completion.","billing":"gateway_credits_spent, downstream_settlement, job_id; pending downstream settlement is not a final cost","references":"run_id, invocation_id, resource_refs, evidence_refs"},"documentation":"https://www.hivekind.ai/docs/mcp/content#library-status-get-v2"},{"operation":"linkedin.account.get.v2","domain":"network","tool":"domain.network.v2","title":"Get LinkedIn account","purpose":"Read the signed-in user's connected LinkedIn account.","side_effects":"Reads current workspace state.","permission":"read","required_scopes":["runs:read"],"requires_operation_id":false,"billing":"No gateway credit charge; reads saved workspace data without starting paid provider work.","required_resolved_fields":[],"next_call":{"tool":"domain.network.v2","arguments":{"params":{"action":"describe","operation":"linkedin.account.get.v2"}}},"catalog_revision":"07a373e389289e05","when_not_to_use":"Do not use this to schedule LinkedIn actions.","description":"Use when: Read the signed-in user's connected LinkedIn account. Returns/does: Reads the current authorized workspace state. Do not use when: Do not use this to schedule LinkedIn actions. Identity comes from OAuth. Resolve exact IDs; use typed enums and bounded limits. Billing: Gateway and downstream billing depend on the operation; check its preview/quote and returned billing.","input_schema":{"additionalProperties":false,"properties":{},"title":"McpPublicLinkedinAccountGetInputV2","type":"object"},"output_schema":{"additionalProperties":false,"description":"V2 result for linkedin.account.get.v2; preserves the established validators.","properties":{"connection":{"additionalProperties":true,"title":"Connection","type":"object"}},"required":["connection"],"title":"PublicLinkedinAccountGetResultV2","type":"object"},"example":{"tool":"domain.network.v2","arguments":{"params":{"action":"invoke","operation":"linkedin.account.get.v2","arguments":{},"operation_id":"00000000-0000-4000-8000-000000000003"}},"notice":"Fictional fixture IDs and example text. Resolve real IDs, use returned preview tokens and approve exact side effects before execution. Input validation is not proof of provider readiness or a successful business outcome."},"workflow_steps":[],"approval_policy":null,"idempotency_policy":"read_only","gateway_credit_code":null,"identity":"Workspace, actor and consent come from OAuth; do not supply identity fields.","retry":"Keep the same operation and operation_id when retrying identical work. Reconcile an uncertain result before new work; never replay an old V1 write under a new V2 ID.","completion":"Check status, execution_state, error_code, output and evidence/resource references. Queued work is not complete: poll jobs.status.get.v2 in domain.workspace.v2. For read-back verification require read_back_verified=true where returned; reconcile failures without creating another object.","result_envelope":{"status":"completed | partial | cancelled | failed","execution_state":"terminal | queued | reconciliation_required","output":"Completed results validate against output_schema; partial/reconciliation results can contain incomplete evidence and must not be treated as completion.","billing":"gateway_credits_spent, downstream_settlement, job_id; pending downstream settlement is not a final cost","references":"run_id, invocation_id, resource_refs, evidence_refs"},"documentation":"https://www.hivekind.ai/docs/mcp/network#linkedin-account-get-v2"},{"operation":"linkedin.action.preview.v2","domain":"network","tool":"domain.network.v2","title":"Preview LinkedIn action","purpose":"Preview a LinkedIn connection or message without sending.","side_effects":"May change workspace state or start work; describe before invoking.","permission":"propose","required_scopes":["runs:read"],"requires_operation_id":true,"billing":"No gateway rate is configured. Check the Core workflow preview/quote for downstream charges and final settlement.","required_resolved_fields":[],"next_call":{"tool":"domain.network.v2","arguments":{"params":{"action":"describe","operation":"linkedin.action.preview.v2"}}},"catalog_revision":"07a373e389289e05","when_not_to_use":"Do not use this to schedule the action — that is linkedin.action.schedule.v2.","description":"Use when: Preview a LinkedIn connection or message without sending. Returns/does: Changes workspace state or starts work; review the exact contract and approval requirements. Do not use when: Do not use this to schedule the action — that is linkedin.action.schedule.v2. Identity comes from OAuth. Resolve exact IDs; use typed enums and bounded limits. Billing: Gateway and downstream billing depend on the operation; check its preview/quote and returned billing.","input_schema":{"additionalProperties":false,"properties":{"contact_id":{"description":"Exact contact UUID returned by a Hivekind search, list, get, preview, or resource call.","format":"uuid","title":"Contact Id","type":"string"},"action_type":{"description":"Action type used by the linked in action preview input v2 operation.","enum":["profile_visit","post_reaction","connection_request","message","inmail"],"title":"Action Type","type":"string"}},"required":["contact_id","action_type"],"title":"McpLinkedInActionPreviewInputV2","type":"object"},"output_schema":{"additionalProperties":false,"properties":{"contact_id":{"format":"uuid","title":"Contact Id","type":"string"},"action_type":{"enum":["profile_visit","post_reaction","connection_request","message","inmail"],"title":"Action Type","type":"string"},"eligible":{"title":"Eligible","type":"boolean"},"blockers":{"default":[],"items":{"type":"string"},"title":"Blockers","type":"array"},"relationship_status":{"default":"unknown","title":"Relationship Status","type":"string"},"next_available_at":{"anyOf":[{"type":"string"},{"type":"null"}],"default":null,"title":"Next Available At"}},"required":["contact_id","action_type","eligible"],"title":"LinkedInActionPreviewResultV2","type":"object"},"example":{"tool":"domain.network.v2","arguments":{"params":{"action":"invoke","operation":"linkedin.action.preview.v2","arguments":{"action_type":"profile_visit","contact_id":"00000000-0000-4000-8000-000000000001"},"operation_id":"00000000-0000-4000-8000-000000000003"}},"notice":"Fictional fixture IDs and example text. Resolve real IDs, use returned preview tokens and approve exact side effects before execution. Input validation is not proof of provider readiness or a successful business outcome."},"workflow_steps":[],"approval_policy":null,"idempotency_policy":"run_task_contact_action","gateway_credit_code":null,"identity":"Workspace, actor and consent come from OAuth; do not supply identity fields.","retry":"Keep the same operation and operation_id when retrying identical work. Reconcile an uncertain result before new work; never replay an old V1 write under a new V2 ID.","completion":"Check status, execution_state, error_code, output and evidence/resource references. Queued work is not complete: poll jobs.status.get.v2 in domain.workspace.v2. For read-back verification require read_back_verified=true where returned; reconcile failures without creating another object.","result_envelope":{"status":"completed | partial | cancelled | failed","execution_state":"terminal | queued | reconciliation_required","output":"Completed results validate against output_schema; partial/reconciliation results can contain incomplete evidence and must not be treated as completion.","billing":"gateway_credits_spent, downstream_settlement, job_id; pending downstream settlement is not a final cost","references":"run_id, invocation_id, resource_refs, evidence_refs"},"documentation":"https://www.hivekind.ai/docs/mcp/network#linkedin-action-preview-v2"},{"operation":"linkedin.action.schedule.v2","domain":"network","tool":"domain.network.v2","title":"Schedule a LinkedIn action","purpose":"You approved the exact account, action type, target, and timing returned by linkedin.action.preview.v2.","side_effects":"Queues one consented LinkedIn action as the signed-in member. It does not create a campaign.","permission":"execute","required_scopes":["actions:execute"],"requires_operation_id":true,"billing":"No gateway rate is configured. Check the Core workflow preview/quote for downstream charges and final settlement.","required_resolved_fields":[],"next_call":{"tool":"domain.network.v2","arguments":{"params":{"action":"describe","operation":"linkedin.action.schedule.v2"}}},"catalog_revision":"07a373e389289e05","when_not_to_use":"You need a multi-contact campaign or have not previewed the provider action.","description":"Use when: You approved the exact account, action type, target, and timing returned by linkedin.action.preview.v2. Returns/does: Queues one consented LinkedIn action as the signed-in member. It does not create a campaign. Do not use when: You need a multi-contact campaign or have not previewed the provider action. Identity comes from OAuth. Resolve exact IDs; use typed enums and bounded limits. Billing: Gateway and downstream billing depend on the operation; check its preview/quote and returned billing.","input_schema":{"additionalProperties":false,"properties":{"action_proposal_id":{"description":"Exact action proposal UUID returned by a Hivekind search, list, get, preview, or resource call.","format":"uuid","title":"Action Proposal Id","type":"string"}},"required":["action_proposal_id"],"title":"McpLinkedInActionScheduleInputV2","type":"object"},"output_schema":{"additionalProperties":false,"properties":{"execution_id":{"format":"uuid","title":"Execution Id","type":"string"},"action_type":{"enum":["profile_visit","post_reaction","connection_request","message","inmail"],"title":"Action Type","type":"string"},"status":{"title":"Status","type":"string"},"scheduled_for":{"title":"Scheduled For","type":"string"},"delayed":{"default":false,"title":"Delayed","type":"boolean"}},"required":["execution_id","action_type","status","scheduled_for"],"title":"LinkedInActionScheduleResultV2","type":"object"},"example":{"tool":"domain.network.v2","arguments":{"params":{"action":"invoke","operation":"linkedin.action.schedule.v2","arguments":{"action_proposal_id":"00000000-0000-4000-8000-000000000001"},"operation_id":"00000000-0000-4000-8000-000000000003"}},"notice":"Fictional fixture IDs and example text. Resolve real IDs, use returned preview tokens and approve exact side effects before execution. Input validation is not proof of provider readiness or a successful business outcome."},"workflow_steps":[],"approval_policy":"exact_scope_single_action","idempotency_policy":"approved_action_outbox_and_shared_quota_ledger","gateway_credit_code":null,"identity":"Workspace, actor and consent come from OAuth; do not supply identity fields.","retry":"Keep the same operation and operation_id when retrying identical work. Reconcile an uncertain result before new work; never replay an old V1 write under a new V2 ID.","completion":"Check status, execution_state, error_code, output and evidence/resource references. Queued work is not complete: poll jobs.status.get.v2 in domain.workspace.v2. For read-back verification require read_back_verified=true where returned; reconcile failures without creating another object.","result_envelope":{"status":"completed | partial | cancelled | failed","execution_state":"terminal | queued | reconciliation_required","output":"Completed results validate against output_schema; partial/reconciliation results can contain incomplete evidence and must not be treated as completion.","billing":"gateway_credits_spent, downstream_settlement, job_id; pending downstream settlement is not a final cost","references":"run_id, invocation_id, resource_refs, evidence_refs"},"documentation":"https://www.hivekind.ai/docs/mcp/network#linkedin-action-schedule-v2"},{"operation":"linkedin.capacity.get.v2","domain":"network","tool":"domain.network.v2","title":"Get LinkedIn capacity","purpose":"Read remaining LinkedIn send/connection capacity for you.","side_effects":"Reads current workspace state.","permission":"read","required_scopes":["runs:read"],"requires_operation_id":false,"billing":"No gateway credit charge; reads saved workspace data without starting paid provider work.","required_resolved_fields":[],"next_call":{"tool":"domain.network.v2","arguments":{"params":{"action":"describe","operation":"linkedin.capacity.get.v2"}}},"catalog_revision":"07a373e389289e05","when_not_to_use":"Do not use this as a substitute for hiveloops.sendability.get.v2.","description":"Use when: Read remaining LinkedIn send/connection capacity for you. Returns/does: Reads the current authorized workspace state. Do not use when: Do not use this as a substitute for hiveloops.sendability.get.v2. Identity comes from OAuth. Resolve exact IDs; use typed enums and bounded limits. Billing: Gateway and downstream billing depend on the operation; check its preview/quote and returned billing.","input_schema":{"additionalProperties":false,"properties":{"action_type":{"anyOf":[{"enum":["profile_visit","post_reaction","connection_request","message","inmail"],"type":"string"},{"type":"null"}],"default":null,"description":"Action type used by the public linkedin capacity get input v2 operation.","title":"Action Type"}},"title":"McpPublicLinkedinCapacityGetInputV2","type":"object"},"output_schema":{"additionalProperties":false,"description":"V2 result for linkedin.capacity.get.v2; preserves the established validators.","properties":{"capacity":{"additionalProperties":true,"title":"Capacity","type":"object"}},"required":["capacity"],"title":"PublicLinkedinCapacityGetResultV2","type":"object"},"example":{"tool":"domain.network.v2","arguments":{"params":{"action":"invoke","operation":"linkedin.capacity.get.v2","arguments":{},"operation_id":"00000000-0000-4000-8000-000000000003"}},"notice":"Fictional fixture IDs and example text. Resolve real IDs, use returned preview tokens and approve exact side effects before execution. Input validation is not proof of provider readiness or a successful business outcome."},"workflow_steps":[],"approval_policy":null,"idempotency_policy":"read_only","gateway_credit_code":null,"identity":"Workspace, actor and consent come from OAuth; do not supply identity fields.","retry":"Keep the same operation and operation_id when retrying identical work. Reconcile an uncertain result before new work; never replay an old V1 write under a new V2 ID.","completion":"Check status, execution_state, error_code, output and evidence/resource references. Queued work is not complete: poll jobs.status.get.v2 in domain.workspace.v2. For read-back verification require read_back_verified=true where returned; reconcile failures without creating another object.","result_envelope":{"status":"completed | partial | cancelled | failed","execution_state":"terminal | queued | reconciliation_required","output":"Completed results validate against output_schema; partial/reconciliation results can contain incomplete evidence and must not be treated as completion.","billing":"gateway_credits_spent, downstream_settlement, job_id; pending downstream settlement is not a final cost","references":"run_id, invocation_id, resource_refs, evidence_refs"},"documentation":"https://www.hivekind.ai/docs/mcp/network#linkedin-capacity-get-v2"},{"operation":"linkedin.playbook.validate.v2","domain":"content","tool":"domain.content.v2","title":"Validate LinkedIn playbook","purpose":"Validate LinkedIn steps in a playbook flow before saving.","side_effects":"May change workspace state or start work; describe before invoking.","permission":"propose","required_scopes":["runs:read"],"requires_operation_id":true,"billing":"No gateway rate is configured. Check the Core workflow preview/quote for downstream charges and final settlement.","required_resolved_fields":[],"next_call":{"tool":"domain.content.v2","arguments":{"params":{"action":"describe","operation":"linkedin.playbook.validate.v2"}}},"catalog_revision":"07a373e389289e05","when_not_to_use":"Do not use this to launch a campaign.","description":"Use when: Validate LinkedIn steps in a playbook flow before saving. Returns/does: Changes workspace state or starts work; review the exact contract and approval requirements. Do not use when: Do not use this to launch a campaign. Identity comes from OAuth. Resolve exact IDs; use typed enums and bounded limits. Billing: Gateway and downstream billing depend on the operation; check its preview/quote and returned billing.","input_schema":{"additionalProperties":false,"properties":{"flow_definition":{"additionalProperties":true,"description":"Flow definition used by the public linkedin playbook validate input v2 operation.","title":"Flow Definition","type":"object"}},"required":["flow_definition"],"title":"McpPublicLinkedinPlaybookValidateInputV2","type":"object"},"output_schema":{"additionalProperties":false,"description":"V2 result for linkedin.playbook.validate.v2; preserves the established validators.","properties":{"valid":{"title":"Valid","type":"boolean"},"requires_linkedin":{"title":"Requires Linkedin","type":"boolean"},"required_products":{"default":[],"items":{"type":"string"},"title":"Required Products","type":"array"},"errors":{"default":[],"items":{"type":"string"},"title":"Errors","type":"array"},"warnings":{"default":[],"items":{"type":"string"},"title":"Warnings","type":"array"}},"required":["valid","requires_linkedin"],"title":"PublicLinkedinPlaybookValidateResultV2","type":"object"},"example":{"tool":"domain.content.v2","arguments":{"params":{"action":"invoke","operation":"linkedin.playbook.validate.v2","arguments":{"flow_definition":{}},"operation_id":"00000000-0000-4000-8000-000000000003"}},"notice":"Fictional fixture IDs and example text. Resolve real IDs, use returned preview tokens and approve exact side effects before execution. Input validation is not proof of provider readiness or a successful business outcome."},"workflow_steps":[],"approval_policy":null,"idempotency_policy":"run_task_flow_hash","gateway_credit_code":null,"identity":"Workspace, actor and consent come from OAuth; do not supply identity fields.","retry":"Keep the same operation and operation_id when retrying identical work. Reconcile an uncertain result before new work; never replay an old V1 write under a new V2 ID.","completion":"Check status, execution_state, error_code, output and evidence/resource references. Queued work is not complete: poll jobs.status.get.v2 in domain.workspace.v2. For read-back verification require read_back_verified=true where returned; reconcile failures without creating another object.","result_envelope":{"status":"completed | partial | cancelled | failed","execution_state":"terminal | queued | reconciliation_required","output":"Completed results validate against output_schema; partial/reconciliation results can contain incomplete evidence and must not be treated as completion.","billing":"gateway_credits_spent, downstream_settlement, job_id; pending downstream settlement is not a final cost","references":"run_id, invocation_id, resource_refs, evidence_refs"},"documentation":"https://www.hivekind.ai/docs/mcp/content#linkedin-playbook-validate-v2"},{"operation":"linkedin.relationships.get.v2","domain":"network","tool":"domain.network.v2","title":"Get LinkedIn relationships","purpose":"Read consented LinkedIn relationship state for a contact.","side_effects":"Reads current workspace state.","permission":"read","required_scopes":["runs:read"],"requires_operation_id":false,"billing":"No gateway credit charge; reads saved workspace data without starting paid provider work.","required_resolved_fields":[],"next_call":{"tool":"domain.network.v2","arguments":{"params":{"action":"describe","operation":"linkedin.relationships.get.v2"}}},"catalog_revision":"07a373e389289e05","when_not_to_use":"Do not use this to send a connection request.","description":"Use when: Read consented LinkedIn relationship state for a contact. Returns/does: Reads the current authorized workspace state. Do not use when: Do not use this to send a connection request. Identity comes from OAuth. Resolve exact IDs; use typed enums and bounded limits. Billing: Gateway and downstream billing depend on the operation; check its preview/quote and returned billing.","input_schema":{"additionalProperties":false,"properties":{"contact_ids":{"description":"Exact contact UUIDs returned by a Hivekind search, list, get, preview, or resource call.","items":{"format":"uuid","type":"string"},"maxItems":100,"minItems":1,"title":"Contact Ids","type":"array"}},"required":["contact_ids"],"title":"McpPublicLinkedinRelationshipsGetInputV2","type":"object"},"output_schema":{"additionalProperties":false,"description":"V2 result for linkedin.relationships.get.v2; preserves the established validators.","properties":{"relationships":{"default":[],"items":{"additionalProperties":true,"type":"object"},"title":"Relationships","type":"array"}},"title":"PublicLinkedinRelationshipsGetResultV2","type":"object"},"example":{"tool":"domain.network.v2","arguments":{"params":{"action":"invoke","operation":"linkedin.relationships.get.v2","arguments":{"contact_ids":["00000000-0000-4000-8000-000000000001"]},"operation_id":"00000000-0000-4000-8000-000000000003"}},"notice":"Fictional fixture IDs and example text. Resolve real IDs, use returned preview tokens and approve exact side effects before execution. Input validation is not proof of provider readiness or a successful business outcome."},"workflow_steps":[],"approval_policy":null,"idempotency_policy":"read_only","gateway_credit_code":null,"identity":"Workspace, actor and consent come from OAuth; do not supply identity fields.","retry":"Keep the same operation and operation_id when retrying identical work. Reconcile an uncertain result before new work; never replay an old V1 write under a new V2 ID.","completion":"Check status, execution_state, error_code, output and evidence/resource references. Queued work is not complete: poll jobs.status.get.v2 in domain.workspace.v2. For read-back verification require read_back_verified=true where returned; reconcile failures without creating another object.","result_envelope":{"status":"completed | partial | cancelled | failed","execution_state":"terminal | queued | reconciliation_required","output":"Completed results validate against output_schema; partial/reconciliation results can contain incomplete evidence and must not be treated as completion.","billing":"gateway_credits_spent, downstream_settlement, job_id; pending downstream settlement is not a final cost","references":"run_id, invocation_id, resource_refs, evidence_refs"},"documentation":"https://www.hivekind.ai/docs/mcp/network#linkedin-relationships-get-v2"},{"operation":"memory.accepted.list.v2","domain":"workspace","tool":"domain.workspace.v2","title":"List accepted memory","purpose":"List workspace memory the user has accepted.","side_effects":"Reads current workspace state.","permission":"read","required_scopes":["runs:read"],"requires_operation_id":false,"billing":"No gateway credit charge; reads saved workspace data without starting paid provider work.","required_resolved_fields":[],"next_call":{"tool":"domain.workspace.v2","arguments":{"params":{"action":"describe","operation":"memory.accepted.list.v2"}}},"catalog_revision":"07a373e389289e05","when_not_to_use":"Do not use this as a substitute for ICP or playbook content.","description":"Use when: List workspace memory the user has accepted. Returns/does: Reads the current authorized workspace state. Do not use when: Do not use this as a substitute for ICP or playbook content. Identity comes from OAuth. Resolve exact IDs; use typed enums and bounded limits. Billing: Gateway and downstream billing depend on the operation; check its preview/quote and returned billing.","input_schema":{"additionalProperties":false,"properties":{"scope_refs":{"default":[],"description":"Scope refs used by the public memory accepted list input v2 operation.","items":{"type":"string"},"maxItems":20,"title":"Scope Refs","type":"array"},"memory_keys":{"default":[],"description":"Memory keys used by the public memory accepted list input v2 operation.","items":{"type":"string"},"maxItems":50,"title":"Memory Keys","type":"array"},"limit":{"default":25,"description":"Maximum number of records to return in this page.","maximum":100,"minimum":1,"title":"Limit","type":"integer"}},"title":"McpPublicMemoryAcceptedListInputV2","type":"object"},"output_schema":{"$defs":{"AcceptedMemoryV1":{"additionalProperties":false,"properties":{"schema_version":{"const":"1","default":"1","title":"Schema Version","type":"string"},"memory_id":{"format":"uuid","title":"Memory Id","type":"string"},"workspace_id":{"format":"uuid","title":"Workspace Id","type":"string"},"scope_type":{"$ref":"#/$defs/MemoryScope"},"scope_id":{"anyOf":[{"format":"uuid","type":"string"},{"type":"null"}],"default":null,"title":"Scope Id"},"memory_key":{"title":"Memory Key","type":"string"},"value":{"additionalProperties":true,"title":"Value","type":"object"},"provenance":{"items":{"type":"string"},"title":"Provenance","type":"array"},"owner_actor_id":{"format":"uuid","title":"Owner Actor Id","type":"string"},"source_proposal_id":{"format":"uuid","title":"Source Proposal Id","type":"string"},"version":{"minimum":1,"title":"Version","type":"integer"},"created_at":{"format":"date-time","title":"Created At","type":"string"},"updated_at":{"format":"date-time","title":"Updated At","type":"string"}},"required":["memory_id","workspace_id","scope_type","memory_key","value","provenance","owner_actor_id","source_proposal_id","version","created_at","updated_at"],"title":"AcceptedMemoryV1","type":"object"},"MemoryScope":{"enum":["workspace","playbook","account","contact"],"title":"MemoryScope","type":"string"}},"additionalProperties":false,"description":"V2 result for memory.accepted.list.v2; preserves the established validators.","properties":{"memories":{"default":[],"items":{"$ref":"#/$defs/AcceptedMemoryV1"},"maxItems":100,"title":"Memories","type":"array"}},"title":"PublicMemoryAcceptedListResultV2","type":"object"},"example":{"tool":"domain.workspace.v2","arguments":{"params":{"action":"invoke","operation":"memory.accepted.list.v2","arguments":{},"operation_id":"00000000-0000-4000-8000-000000000003"}},"notice":"Fictional fixture IDs and example text. Resolve real IDs, use returned preview tokens and approve exact side effects before execution. Input validation is not proof of provider readiness or a successful business outcome."},"workflow_steps":[],"approval_policy":null,"idempotency_policy":"read_only","gateway_credit_code":null,"identity":"Workspace, actor and consent come from OAuth; do not supply identity fields.","retry":"Keep the same operation and operation_id when retrying identical work. Reconcile an uncertain result before new work; never replay an old V1 write under a new V2 ID.","completion":"Check status, execution_state, error_code, output and evidence/resource references. Queued work is not complete: poll jobs.status.get.v2 in domain.workspace.v2. For read-back verification require read_back_verified=true where returned; reconcile failures without creating another object.","result_envelope":{"status":"completed | partial | cancelled | failed","execution_state":"terminal | queued | reconciliation_required","output":"Completed results validate against output_schema; partial/reconciliation results can contain incomplete evidence and must not be treated as completion.","billing":"gateway_credits_spent, downstream_settlement, job_id; pending downstream settlement is not a final cost","references":"run_id, invocation_id, resource_refs, evidence_refs"},"documentation":"https://www.hivekind.ai/docs/mcp/workspace#memory-accepted-list-v2"},{"operation":"messages.context.v2","domain":"inbox","tool":"domain.inbox.v2","title":"Get message context","purpose":"Load recent messages for a contact when writing a reply.","side_effects":"Reads current workspace state.","permission":"read","required_scopes":["runs:read"],"requires_operation_id":false,"billing":"No gateway credit charge; reads saved workspace data without starting paid provider work.","required_resolved_fields":[],"next_call":{"tool":"domain.inbox.v2","arguments":{"params":{"action":"describe","operation":"messages.context.v2"}}},"catalog_revision":"07a373e389289e05","when_not_to_use":"Prefer hivekind://inbox/{item_key} or inbox.thread.v2.","description":"Use when: Load recent messages for a contact when writing a reply. Returns/does: Reads the current authorized workspace state. Do not use when: Prefer hivekind://inbox/{item_key} or inbox.thread.v2. Identity comes from OAuth. Resolve exact IDs; use typed enums and bounded limits. Billing: Gateway and downstream billing depend on the operation; check its preview/quote and returned billing.","input_schema":{"additionalProperties":false,"properties":{"loop_id":{"description":"Exact loop UUID returned by a Hivekind search, list, get, preview, or resource call.","format":"uuid","title":"Loop Id","type":"string"},"contact_id":{"description":"Exact contact UUID returned by a Hivekind search, list, get, preview, or resource call.","format":"uuid","title":"Contact Id","type":"string"},"limit":{"default":20,"description":"Maximum number of records to return in this page.","maximum":50,"minimum":1,"title":"Limit","type":"integer"}},"required":["loop_id","contact_id"],"title":"McpPublicMessagesContextInputV2","type":"object"},"output_schema":{"$defs":{"ConversationEntryV1":{"additionalProperties":false,"properties":{"entry_id":{"format":"uuid","title":"Entry Id","type":"string"},"direction":{"enum":["inbound","outbound","draft"],"title":"Direction","type":"string"},"channel":{"maxLength":64,"minLength":1,"title":"Channel","type":"string"},"subject":{"anyOf":[{"maxLength":1000,"type":"string"},{"type":"null"}],"default":null,"title":"Subject"},"content":{"default":"","maxLength":8000,"title":"Content","type":"string"},"occurred_at":{"format":"date-time","title":"Occurred At","type":"string"},"status":{"anyOf":[{"maxLength":64,"type":"string"},{"type":"null"}],"default":null,"title":"Status"},"intent":{"anyOf":[{"maxLength":128,"type":"string"},{"type":"null"}],"default":null,"title":"Intent"},"sentiment":{"anyOf":[{"maxLength":128,"type":"string"},{"type":"null"}],"default":null,"title":"Sentiment"},"untrusted_content":{"const":true,"default":true,"title":"Untrusted Content","type":"boolean"}},"required":["entry_id","direction","channel","occurred_at"],"title":"ConversationEntryV1","type":"object"}},"additionalProperties":false,"description":"V2 result for messages.context.v2; preserves the established validators.","properties":{"loop_id":{"format":"uuid","title":"Loop Id","type":"string"},"contact_id":{"format":"uuid","title":"Contact Id","type":"string"},"messages":{"default":[],"items":{"$ref":"#/$defs/ConversationEntryV1"},"title":"Messages","type":"array"},"latest_intent":{"anyOf":[{"maxLength":128,"type":"string"},{"type":"null"}],"default":null,"title":"Latest Intent"},"latest_sentiment":{"anyOf":[{"maxLength":128,"type":"string"},{"type":"null"}],"default":null,"title":"Latest Sentiment"},"truncated":{"default":false,"title":"Truncated","type":"boolean"}},"required":["loop_id","contact_id"],"title":"PublicMessagesContextResultV2","type":"object"},"example":{"tool":"domain.inbox.v2","arguments":{"params":{"action":"invoke","operation":"messages.context.v2","arguments":{"contact_id":"00000000-0000-4000-8000-000000000001","loop_id":"00000000-0000-4000-8000-000000000001"},"operation_id":"00000000-0000-4000-8000-000000000003"}},"notice":"Fictional fixture IDs and example text. Resolve real IDs, use returned preview tokens and approve exact side effects before execution. Input validation is not proof of provider readiness or a successful business outcome."},"workflow_steps":[],"approval_policy":null,"idempotency_policy":"read_only","gateway_credit_code":null,"identity":"Workspace, actor and consent come from OAuth; do not supply identity fields.","retry":"Keep the same operation and operation_id when retrying identical work. Reconcile an uncertain result before new work; never replay an old V1 write under a new V2 ID.","completion":"Check status, execution_state, error_code, output and evidence/resource references. Queued work is not complete: poll jobs.status.get.v2 in domain.workspace.v2. For read-back verification require read_back_verified=true where returned; reconcile failures without creating another object.","result_envelope":{"status":"completed | partial | cancelled | failed","execution_state":"terminal | queued | reconciliation_required","output":"Completed results validate against output_schema; partial/reconciliation results can contain incomplete evidence and must not be treated as completion.","billing":"gateway_credits_spent, downstream_settlement, job_id; pending downstream settlement is not a final cost","references":"run_id, invocation_id, resource_refs, evidence_refs"},"documentation":"https://www.hivekind.ai/docs/mcp/inbox#messages-context-v2"},{"operation":"network.account.access.get.v2","domain":"network","tool":"domain.network.v2","title":"Get unified account network access","purpose":"You have one exact account_id and need explainable LinkedIn-member and Channel Partner paths, including excluded Partner routes.","side_effects":"Returns provider-neutral strength, usable source counts, route evidence, and exclusion reasons. Read only.","permission":"read","required_scopes":["accounts:read"],"requires_operation_id":false,"billing":"No gateway credit charge; reads saved workspace data without starting paid provider work.","required_resolved_fields":[],"next_call":{"tool":"domain.network.v2","arguments":{"params":{"action":"describe","operation":"network.account.access.get.v2"}}},"catalog_revision":"07a373e389289e05","when_not_to_use":"You need to rank a broad LinkedIn-only audience; use targets.preview.v2.","description":"Use when: You have one exact account_id and need explainable LinkedIn-member and Channel Partner paths, including excluded Partner routes. Returns/does: Returns provider-neutral strength, usable source counts, route evidence, and exclusion reasons. Read only. Do not use when: You need to rank a broad LinkedIn-only audience; use targets.preview.v2. Identity comes from OAuth. Resolve exact IDs; use typed enums and bounded limits. Billing: Gateway and downstream billing depend on the operation; check its preview/quote and returned billing.","input_schema":{"additionalProperties":false,"properties":{"account_id":{"description":"Exact target Account UUID returned by accounts.search.v2.","format":"uuid","title":"Account Id","type":"string"}},"required":["account_id"],"title":"McpNetworkAccountAccessGetInputV2","type":"object"},"output_schema":{"additionalProperties":false,"description":"Explain every currently usable and excluded route to one Account.","properties":{"account_id":{"format":"uuid","title":"Account Id","type":"string"},"network_strength":{"maximum":3,"minimum":0,"title":"Network Strength","type":"integer"},"independent_source_count":{"minimum":0,"title":"Independent Source Count","type":"integer"},"linkedin_member_count":{"minimum":0,"title":"Linkedin Member Count","type":"integer"},"partner_count":{"minimum":0,"title":"Partner Count","type":"integer"},"has_linkedin_route":{"title":"Has Linkedin Route","type":"boolean"},"has_partner_route":{"title":"Has Partner Route","type":"boolean"},"linkedin_members":{"default":[],"items":{"additionalProperties":true,"type":"object"},"title":"Linkedin Members","type":"array"},"partner_routes":{"default":[],"items":{"additionalProperties":true,"type":"object"},"title":"Partner Routes","type":"array"},"excluded_partner_routes":{"default":[],"items":{"additionalProperties":true,"type":"object"},"title":"Excluded Partner Routes","type":"array"},"partner_network_accounts":{"default":[],"items":{"additionalProperties":true,"type":"object"},"title":"Partner Network Accounts","type":"array"}},"required":["account_id","network_strength","independent_source_count","linkedin_member_count","partner_count","has_linkedin_route","has_partner_route"],"title":"NetworkAccountAccessGetResultV2","type":"object"},"example":{"tool":"domain.network.v2","arguments":{"params":{"action":"invoke","operation":"network.account.access.get.v2","arguments":{"account_id":"00000000-0000-4000-8000-000000000001"},"operation_id":"00000000-0000-4000-8000-000000000003"}},"notice":"Fictional fixture IDs and example text. Resolve real IDs, use returned preview tokens and approve exact side effects before execution. Input validation is not proof of provider readiness or a successful business outcome."},"workflow_steps":[],"approval_policy":null,"idempotency_policy":"read_only","gateway_credit_code":null,"identity":"Workspace, actor and consent come from OAuth; do not supply identity fields.","retry":"Keep the same operation and operation_id when retrying identical work. Reconcile an uncertain result before new work; never replay an old V1 write under a new V2 ID.","completion":"Check status, execution_state, error_code, output and evidence/resource references. Queued work is not complete: poll jobs.status.get.v2 in domain.workspace.v2. For read-back verification require read_back_verified=true where returned; reconcile failures without creating another object.","result_envelope":{"status":"completed | partial | cancelled | failed","execution_state":"terminal | queued | reconciliation_required","output":"Completed results validate against output_schema; partial/reconciliation results can contain incomplete evidence and must not be treated as completion.","billing":"gateway_credits_spent, downstream_settlement, job_id; pending downstream settlement is not a final cost","references":"run_id, invocation_id, resource_refs, evidence_refs"},"documentation":"https://www.hivekind.ai/docs/mcp/network#network-account-access-get-v2"},{"operation":"network.paths.get.v2","domain":"network","tool":"domain.network.v2","title":"Get LinkedIn network paths","purpose":"You have exact contact IDs and need current verified self or consented teammate relationship evidence.","side_effects":"Returns explicit connected, syncing, not-shared, missing-contact, or unknown states. Read only; unknown never means cold.","permission":"read","required_scopes":["accounts:read"],"requires_operation_id":false,"billing":"No gateway credit charge; reads saved workspace data without starting paid provider work.","required_resolved_fields":[],"next_call":{"tool":"domain.network.v2","arguments":{"params":{"action":"describe","operation":"network.paths.get.v2"}}},"catalog_revision":"07a373e389289e05","when_not_to_use":"You need to discover and rank a broad account audience; use targets.preview.v2.","description":"Use when: You have exact contact IDs and need current verified self or consented teammate relationship evidence. Returns/does: Returns explicit connected, syncing, not-shared, missing-contact, or unknown states. Read only; unknown never means cold. Do not use when: You need to discover and rank a broad account audience; use targets.preview.v2. Identity comes from OAuth. Resolve exact IDs; use typed enums and bounded limits. Billing: Gateway and downstream billing depend on the operation; check its preview/quote and returned billing.","input_schema":{"additionalProperties":false,"properties":{"contact_ids":{"description":"Exact contact UUIDs returned by contacts.search.v2 or targets.preview.v2.","items":{"format":"uuid","type":"string"},"maxItems":200,"minItems":1,"title":"Contact Ids","type":"array"},"network_scope":{"default":"workspace_consented","description":"self reads only the signed-in member's network; workspace_consented also includes teammate paths whose owners currently share them.","enum":["self","workspace_consented"],"title":"Network Scope","type":"string"}},"required":["contact_ids"],"title":"McpNetworkPathsGetInputV2","type":"object"},"output_schema":{"$defs":{"ContactNetworkPathsV2":{"additionalProperties":false,"properties":{"contact_id":{"format":"uuid","title":"Contact Id","type":"string"},"relationship_state":{"enum":["connected","no_matching_contact","syncing","not_shared","unknown"],"title":"Relationship State","type":"string"},"network_scope":{"enum":["self","workspace_consented"],"title":"Network Scope","type":"string"},"paths":{"default":[],"items":{"$ref":"#/$defs/NetworkPathEvidenceV2"},"maxItems":50,"title":"Paths","type":"array"},"reason_code":{"maxLength":64,"minLength":1,"title":"Reason Code","type":"string"}},"required":["contact_id","relationship_state","network_scope","reason_code"],"title":"ContactNetworkPathsV2","type":"object"},"NetworkCoverageV2":{"additionalProperties":false,"properties":{"network_scope":{"enum":["self","workspace_consented"],"title":"Network Scope","type":"string"},"sync_state":{"enum":["synced","syncing","degraded","not_connected","unknown"],"title":"Sync State","type":"string"},"requested_contacts":{"maximum":200,"minimum":0,"title":"Requested Contacts","type":"integer"},"matched_contacts":{"maximum":200,"minimum":0,"title":"Matched Contacts","type":"integer"},"visible_paths":{"minimum":0,"title":"Visible Paths","type":"integer"},"last_synced_at":{"anyOf":[{"format":"date-time","type":"string"},{"type":"null"}],"default":null,"title":"Last Synced At"},"limitations":{"default":[],"items":{"type":"string"},"maxItems":10,"title":"Limitations","type":"array"}},"required":["network_scope","sync_state","requested_contacts","matched_contacts","visible_paths"],"title":"NetworkCoverageV2","type":"object"},"NetworkPathEvidenceV2":{"additionalProperties":false,"properties":{"relationship_id":{"format":"uuid","title":"Relationship Id","type":"string"},"contact_id":{"format":"uuid","title":"Contact Id","type":"string"},"relationship_state":{"enum":["connected","no_matching_contact","syncing","not_shared","unknown"],"title":"Relationship State","type":"string"},"path_type":{"enum":["first_degree","second_degree","introduction","none"],"title":"Path Type","type":"string"},"network_scope":{"enum":["self","workspace_consented"],"title":"Network Scope","type":"string"},"match_method":{"enum":["provider_member_id_exact","linkedin_url_exact","approved_identity_match","unknown"],"title":"Match Method","type":"string"},"degree":{"anyOf":[{"maximum":3,"minimum":1,"type":"integer"},{"type":"null"}],"default":null,"title":"Degree"},"member_user_id":{"anyOf":[{"format":"uuid","type":"string"},{"type":"null"}],"default":null,"title":"Member User Id"},"member_name":{"anyOf":[{"maxLength":255,"type":"string"},{"type":"null"}],"default":null,"title":"Member Name"},"is_self":{"default":false,"title":"Is Self","type":"boolean"},"freshness_at":{"format":"date-time","title":"Freshness At","type":"string"},"selected_sender_reachable":{"title":"Selected Sender Reachable","type":"boolean"},"evidence_refs":{"default":[],"items":{"type":"string"},"maxItems":10,"title":"Evidence Refs","type":"array"}},"required":["relationship_id","contact_id","relationship_state","path_type","network_scope","match_method","freshness_at","selected_sender_reachable"],"title":"NetworkPathEvidenceV2","type":"object"}},"additionalProperties":false,"properties":{"relationships":{"default":[],"items":{"$ref":"#/$defs/ContactNetworkPathsV2"},"maxItems":200,"title":"Relationships","type":"array"},"coverage":{"$ref":"#/$defs/NetworkCoverageV2"}},"required":["coverage"],"title":"NetworkPathsGetResultV2","type":"object"},"example":{"tool":"domain.network.v2","arguments":{"params":{"action":"invoke","operation":"network.paths.get.v2","arguments":{"contact_ids":["00000000-0000-4000-8000-000000000001"]},"operation_id":"00000000-0000-4000-8000-000000000003"}},"notice":"Fictional fixture IDs and example text. Resolve real IDs, use returned preview tokens and approve exact side effects before execution. Input validation is not proof of provider readiness or a successful business outcome."},"workflow_steps":[],"approval_policy":null,"idempotency_policy":"read_only","gateway_credit_code":null,"identity":"Workspace, actor and consent come from OAuth; do not supply identity fields.","retry":"Keep the same operation and operation_id when retrying identical work. Reconcile an uncertain result before new work; never replay an old V1 write under a new V2 ID.","completion":"Check status, execution_state, error_code, output and evidence/resource references. Queued work is not complete: poll jobs.status.get.v2 in domain.workspace.v2. For read-back verification require read_back_verified=true where returned; reconcile failures without creating another object.","result_envelope":{"status":"completed | partial | cancelled | failed","execution_state":"terminal | queued | reconciliation_required","output":"Completed results validate against output_schema; partial/reconciliation results can contain incomplete evidence and must not be treated as completion.","billing":"gateway_credits_spent, downstream_settlement, job_id; pending downstream settlement is not a final cost","references":"run_id, invocation_id, resource_refs, evidence_refs"},"documentation":"https://www.hivekind.ai/docs/mcp/network#network-paths-get-v2"},{"operation":"notes.create.v2","domain":"accounts","tool":"domain.accounts.v2","title":"Add a note to an account or contact","purpose":"Record what was learned about an account or a person — a meeting debrief, a call summary, a fact the user told you. Resolve the exact account_id or contact_id first. To link another record in the body, paste its web_url from a search result. To correct or extend a note a person wrote, reply to it with in_reply_to_note_id; you cannot edit it.","side_effects":"Creates a workspace-visible note authored as an agent on the user's behalf. Idempotent on operation_id; an identical recent note by the same principal is returned instead of duplicated. Agents have a daily ceiling per user.","permission":"execute","required_scopes":["actions:execute"],"requires_operation_id":true,"billing":"No gateway rate is configured. Check the Core workflow preview/quote for downstream charges and final settlement.","required_resolved_fields":["entity_id"],"next_call":{"tool":"domain.accounts.v2","arguments":{"params":{"action":"describe","operation":"notes.create.v2"}}},"catalog_revision":"07a373e389289e05","when_not_to_use":"Do not use this for outreach copy (drafts and playbooks), for signals, or to restate data already on the record.","description":"Use when: Record what was learned about an account or a person — a meeting debrief, a call summary, a fact the user told you. Resolve the exact account_id or contact_id first. To link another record in the body, paste its web_url from a search result. To correct or extend a note a person wrote, reply to it with in_reply_to_note_id; you cannot edit it. Returns/does: Creates a workspace-visible note authored as an agent on the user's behalf. Idempotent on operation_id; an identical recent note by the same principal is returned instead of duplicated. Agents have a daily ceiling per user. Do not use when: Do not use this for outreach copy (drafts and playbooks), for signals, or to restate data already on the record. Identity comes from OAuth. Resolve exact IDs; use typed enums and bounded limits. Billing: Gateway and downstream billing depend on the operation; check its preview/quote and returned billing.","input_schema":{"additionalProperties":false,"properties":{"action_proposal_id":{"anyOf":[{"format":"uuid","type":"string"},{"type":"null"}],"default":null,"description":"Optional. Hivekind fills this from the MCP consent grant.","title":"Action Proposal Id"},"entity_type":{"description":"What the note is on: account or contact.","enum":["account","contact"],"title":"Entity Type","type":"string"},"entity_id":{"description":"Exact existing account_id or contact_id; resolve it with accounts.search.v2 or contacts.search.v2 first.","format":"uuid","title":"Entity Id","type":"string"},"body":{"description":"Markdown. Say what was learned, not what the model guessed; attribute anything a person told you. To link another account or contact, use the web_url from accounts.search.v2 / contacts.search.v2 verbatim (https://.../accounts/{id} or /contacts/{id}); never hand-build a hivekind:// link.","maxLength":1048576,"minLength":1,"title":"Body","type":"string"},"occurred_at":{"anyOf":[{"format":"date-time","type":"string"},{"type":"null"}],"default":null,"description":"When the thing being recorded happened (a meeting, a call). Defaults to now.","title":"Occurred At"},"in_reply_to_note_id":{"anyOf":[{"format":"uuid","type":"string"},{"type":"null"}],"default":null,"description":"Append to an existing note on the same entity. This is how an agent corrects or extends a person's note, which it may not edit.","title":"In Reply To Note Id"},"mentions":{"default":[],"description":"Workspace member user ids the note is for.","items":{"format":"uuid","type":"string"},"maxItems":50,"title":"Mentions","type":"array"},"operation_id":{"anyOf":[{"maxLength":128,"type":"string"},{"type":"null"}],"default":null,"description":"Your own idempotency key. Retrying with the same id returns the same note instead of a duplicate.","title":"Operation Id"}},"required":["entity_type","entity_id","body"],"title":"McpMcpPublicNotesCreateInputV2","type":"object"},"output_schema":{"$defs":{"NoteAuthorV1":{"additionalProperties":false,"properties":{"author_type":{"enum":["user","agent"],"title":"Author Type","type":"string"},"author_id":{"description":"The user for a person; the agent run for an agent.","maxLength":64,"title":"Author Id","type":"string"},"display_name":{"maxLength":255,"title":"Display Name","type":"string"},"on_behalf_of_user_id":{"anyOf":[{"maxLength":64,"type":"string"},{"type":"null"}],"default":null,"title":"On Behalf Of User Id"},"on_behalf_of_name":{"anyOf":[{"maxLength":255,"type":"string"},{"type":"null"}],"default":null,"title":"On Behalf Of Name"},"source":{"maxLength":32,"title":"Source","type":"string"}},"required":["author_type","author_id","display_name","source"],"title":"NoteAuthorV1","type":"object"},"NoteV1":{"additionalProperties":false,"properties":{"note_id":{"maxLength":64,"title":"Note Id","type":"string"},"entity_type":{"enum":["account","contact"],"title":"Entity Type","type":"string"},"entity_id":{"maxLength":64,"title":"Entity Id","type":"string"},"account_id":{"maxLength":64,"title":"Account Id","type":"string"},"body":{"maxLength":1048576,"title":"Body","type":"string"},"author":{"$ref":"#/$defs/NoteAuthorV1"},"occurred_at":{"format":"date-time","title":"Occurred At","type":"string"},"created_at":{"format":"date-time","title":"Created At","type":"string"},"updated_at":{"format":"date-time","title":"Updated At","type":"string"},"revision":{"minimum":1,"title":"Revision","type":"integer"},"in_reply_to_note_id":{"anyOf":[{"maxLength":64,"type":"string"},{"type":"null"}],"default":null,"title":"In Reply To Note Id"},"mentions":{"default":[],"items":{"type":"string"},"maxItems":50,"title":"Mentions","type":"array"},"last_edited_by_type":{"anyOf":[{"enum":["user","agent"],"type":"string"},{"type":"null"}],"default":null,"title":"Last Edited By Type"},"can_modify":{"default":false,"description":"Whether the calling principal may edit or delete this note. False on a person's note for an agent.","title":"Can Modify","type":"boolean"},"related_entity_type":{"anyOf":[{"enum":["account","contact"],"type":"string"},{"type":"null"}],"default":null,"description":"Set when the note is on the parent account (contact feed) or on a contact (account feed).","title":"Related Entity Type"},"related_entity_id":{"anyOf":[{"maxLength":64,"type":"string"},{"type":"null"}],"default":null,"title":"Related Entity Id"},"related_entity_name":{"anyOf":[{"maxLength":255,"type":"string"},{"type":"null"}],"default":null,"title":"Related Entity Name"},"web_url":{"anyOf":[{"maxLength":2048,"type":"string"},{"type":"null"}],"default":null,"description":"Browser link to this note's account or contact (entity_type / entity_id) in the Hivekind app. Use it verbatim whenever you link the record for a person, including inside note bodies; never build a link by hand or use a hivekind:// URI, which is an MCP resource handle, not a page. Null when the server has no app URL configured.","title":"Web Url"}},"required":["note_id","entity_type","entity_id","account_id","body","author","occurred_at","created_at","updated_at","revision"],"title":"NoteV1","type":"object"}},"additionalProperties":false,"description":"V2 result for notes.create.v2; preserves the established validators.","properties":{"note":{"$ref":"#/$defs/NoteV1"},"created":{"default":true,"title":"Created","type":"boolean"},"deduplicated":{"default":false,"description":"True when an identical recent note was returned instead of a new one.","title":"Deduplicated","type":"boolean"},"message":{"anyOf":[{"maxLength":500,"type":"string"},{"type":"null"}],"default":null,"title":"Message"}},"required":["note"],"title":"PublicNotesCreateResultV2","type":"object"},"example":{"tool":"domain.accounts.v2","arguments":{"params":{"action":"invoke","operation":"notes.create.v2","arguments":{"body":"Example body","entity_id":"00000000-0000-4000-8000-000000000001","entity_type":"account"},"operation_id":"00000000-0000-4000-8000-000000000003"}},"notice":"Fictional fixture IDs and example text. Resolve real IDs, use returned preview tokens and approve exact side effects before execution. Input validation is not proof of provider readiness or a successful business outcome."},"workflow_steps":[],"approval_policy":"exact_scope_single_action","idempotency_policy":"approved_action_outbox","gateway_credit_code":null,"identity":"Workspace, actor and consent come from OAuth; do not supply identity fields.","retry":"Keep the same operation and operation_id when retrying identical work. Reconcile an uncertain result before new work; never replay an old V1 write under a new V2 ID.","completion":"Check status, execution_state, error_code, output and evidence/resource references. Queued work is not complete: poll jobs.status.get.v2 in domain.workspace.v2. For read-back verification require read_back_verified=true where returned; reconcile failures without creating another object.","result_envelope":{"status":"completed | partial | cancelled | failed","execution_state":"terminal | queued | reconciliation_required","output":"Completed results validate against output_schema; partial/reconciliation results can contain incomplete evidence and must not be treated as completion.","billing":"gateway_credits_spent, downstream_settlement, job_id; pending downstream settlement is not a final cost","references":"run_id, invocation_id, resource_refs, evidence_refs"},"documentation":"https://www.hivekind.ai/docs/mcp/accounts#notes-create-v2"},{"operation":"notes.delete.v2","domain":"accounts","tool":"domain.accounts.v2","title":"Delete a note","purpose":"Remove a note an agent wrote, for example after it was superseded.","side_effects":"Soft-deletes the note; it leaves every feed but stays in the audit trail.","permission":"execute","required_scopes":["actions:execute"],"requires_operation_id":true,"billing":"No gateway rate is configured. Check the Core workflow preview/quote for downstream charges and final settlement.","required_resolved_fields":["note_id"],"next_call":{"tool":"domain.accounts.v2","arguments":{"params":{"action":"describe","operation":"notes.delete.v2"}}},"catalog_revision":"07a373e389289e05","when_not_to_use":"Never on a person's note; it is refused. Do not delete to \"edit\" — use notes.update.v2.","description":"Use when: Remove a note an agent wrote, for example after it was superseded. Returns/does: Soft-deletes the note; it leaves every feed but stays in the audit trail. Do not use when: Never on a person's note; it is refused. Do not delete to \"edit\" — use notes.update.v2. Identity comes from OAuth. Resolve exact IDs; use typed enums and bounded limits. Billing: Gateway and downstream billing depend on the operation; check its preview/quote and returned billing.","input_schema":{"additionalProperties":false,"properties":{"action_proposal_id":{"anyOf":[{"format":"uuid","type":"string"},{"type":"null"}],"default":null,"description":"Optional. Hivekind fills this from the MCP consent grant.","title":"Action Proposal Id"},"note_id":{"description":"Exact note id.","format":"uuid","title":"Note Id","type":"string"}},"required":["note_id"],"title":"McpMcpPublicNotesDeleteInputV2","type":"object"},"output_schema":{"additionalProperties":false,"description":"V2 result for notes.delete.v2; preserves the established validators.","properties":{"note_id":{"maxLength":64,"title":"Note Id","type":"string"},"deleted":{"default":true,"title":"Deleted","type":"boolean"}},"required":["note_id"],"title":"PublicNotesDeleteResultV2","type":"object"},"example":{"tool":"domain.accounts.v2","arguments":{"params":{"action":"invoke","operation":"notes.delete.v2","arguments":{"note_id":"00000000-0000-4000-8000-000000000001"},"operation_id":"00000000-0000-4000-8000-000000000003"}},"notice":"Fictional fixture IDs and example text. Resolve real IDs, use returned preview tokens and approve exact side effects before execution. Input validation is not proof of provider readiness or a successful business outcome."},"workflow_steps":[],"approval_policy":"exact_scope_single_action","idempotency_policy":"approved_action_outbox","gateway_credit_code":null,"identity":"Workspace, actor and consent come from OAuth; do not supply identity fields.","retry":"Keep the same operation and operation_id when retrying identical work. Reconcile an uncertain result before new work; never replay an old V1 write under a new V2 ID.","completion":"Check status, execution_state, error_code, output and evidence/resource references. Queued work is not complete: poll jobs.status.get.v2 in domain.workspace.v2. For read-back verification require read_back_verified=true where returned; reconcile failures without creating another object.","result_envelope":{"status":"completed | partial | cancelled | failed","execution_state":"terminal | queued | reconciliation_required","output":"Completed results validate against output_schema; partial/reconciliation results can contain incomplete evidence and must not be treated as completion.","billing":"gateway_credits_spent, downstream_settlement, job_id; pending downstream settlement is not a final cost","references":"run_id, invocation_id, resource_refs, evidence_refs"},"documentation":"https://www.hivekind.ai/docs/mcp/accounts#notes-delete-v2"},{"operation":"notes.list.v2","domain":"accounts","tool":"domain.accounts.v2","title":"List notes on an account or contact","purpose":"Read what people and agents have recorded on an entity, with full bodies and the revision you need to edit. Filter author_type=user to see only what people wrote.","side_effects":"Read only.","permission":"read","required_scopes":["accounts:read"],"requires_operation_id":false,"billing":"No gateway credit charge; reads saved workspace data without starting paid provider work.","required_resolved_fields":["entity_id"],"next_call":{"tool":"domain.accounts.v2","arguments":{"params":{"action":"describe","operation":"notes.list.v2"}}},"catalog_revision":"07a373e389289e05","when_not_to_use":"You need the mixed feed of sends, replies and notes together — that is contacts.timeline.get.v2.","description":"Use when: Read what people and agents have recorded on an entity, with full bodies and the revision you need to edit. Filter author_type=user to see only what people wrote. Returns/does: Read only. Do not use when: You need the mixed feed of sends, replies and notes together — that is contacts.timeline.get.v2. Identity comes from OAuth. Resolve exact IDs; use typed enums and bounded limits. Billing: Gateway and downstream billing depend on the operation; check its preview/quote and returned billing.","input_schema":{"additionalProperties":false,"properties":{"entity_type":{"description":"What the note is on: account or contact.","enum":["account","contact"],"title":"Entity Type","type":"string"},"entity_id":{"description":"Exact existing account_id or contact_id; resolve it with accounts.search.v2 or contacts.search.v2 first.","format":"uuid","title":"Entity Id","type":"string"},"limit":{"default":50,"description":"Maximum number of records to return in this page.","maximum":100,"minimum":1,"title":"Limit","type":"integer"},"before":{"anyOf":[{"format":"date-time","type":"string"},{"type":"null"}],"default":null,"description":"Page backwards: notes that occurred before this time. Use next_cursor.","title":"Before"},"author_type":{"anyOf":[{"enum":["user","agent"],"type":"string"},{"type":"null"}],"default":null,"description":"Only notes by people (user) or by agents (agent).","title":"Author Type"},"include_related":{"default":true,"description":"Also return the account's notes on a contact feed, and contacts' notes on an account feed.","title":"Include Related","type":"boolean"}},"required":["entity_type","entity_id"],"title":"McpPublicNotesListInputV2","type":"object"},"output_schema":{"$defs":{"NoteAuthorV1":{"additionalProperties":false,"properties":{"author_type":{"enum":["user","agent"],"title":"Author Type","type":"string"},"author_id":{"description":"The user for a person; the agent run for an agent.","maxLength":64,"title":"Author Id","type":"string"},"display_name":{"maxLength":255,"title":"Display Name","type":"string"},"on_behalf_of_user_id":{"anyOf":[{"maxLength":64,"type":"string"},{"type":"null"}],"default":null,"title":"On Behalf Of User Id"},"on_behalf_of_name":{"anyOf":[{"maxLength":255,"type":"string"},{"type":"null"}],"default":null,"title":"On Behalf Of Name"},"source":{"maxLength":32,"title":"Source","type":"string"}},"required":["author_type","author_id","display_name","source"],"title":"NoteAuthorV1","type":"object"},"NoteV1":{"additionalProperties":false,"properties":{"note_id":{"maxLength":64,"title":"Note Id","type":"string"},"entity_type":{"enum":["account","contact"],"title":"Entity Type","type":"string"},"entity_id":{"maxLength":64,"title":"Entity Id","type":"string"},"account_id":{"maxLength":64,"title":"Account Id","type":"string"},"body":{"maxLength":1048576,"title":"Body","type":"string"},"author":{"$ref":"#/$defs/NoteAuthorV1"},"occurred_at":{"format":"date-time","title":"Occurred At","type":"string"},"created_at":{"format":"date-time","title":"Created At","type":"string"},"updated_at":{"format":"date-time","title":"Updated At","type":"string"},"revision":{"minimum":1,"title":"Revision","type":"integer"},"in_reply_to_note_id":{"anyOf":[{"maxLength":64,"type":"string"},{"type":"null"}],"default":null,"title":"In Reply To Note Id"},"mentions":{"default":[],"items":{"type":"string"},"maxItems":50,"title":"Mentions","type":"array"},"last_edited_by_type":{"anyOf":[{"enum":["user","agent"],"type":"string"},{"type":"null"}],"default":null,"title":"Last Edited By Type"},"can_modify":{"default":false,"description":"Whether the calling principal may edit or delete this note. False on a person's note for an agent.","title":"Can Modify","type":"boolean"},"related_entity_type":{"anyOf":[{"enum":["account","contact"],"type":"string"},{"type":"null"}],"default":null,"description":"Set when the note is on the parent account (contact feed) or on a contact (account feed).","title":"Related Entity Type"},"related_entity_id":{"anyOf":[{"maxLength":64,"type":"string"},{"type":"null"}],"default":null,"title":"Related Entity Id"},"related_entity_name":{"anyOf":[{"maxLength":255,"type":"string"},{"type":"null"}],"default":null,"title":"Related Entity Name"},"web_url":{"anyOf":[{"maxLength":2048,"type":"string"},{"type":"null"}],"default":null,"description":"Browser link to this note's account or contact (entity_type / entity_id) in the Hivekind app. Use it verbatim whenever you link the record for a person, including inside note bodies; never build a link by hand or use a hivekind:// URI, which is an MCP resource handle, not a page. Null when the server has no app URL configured.","title":"Web Url"}},"required":["note_id","entity_type","entity_id","account_id","body","author","occurred_at","created_at","updated_at","revision"],"title":"NoteV1","type":"object"}},"additionalProperties":false,"description":"V2 result for notes.list.v2; preserves the established validators.","properties":{"entity_type":{"enum":["account","contact"],"title":"Entity Type","type":"string"},"entity_id":{"maxLength":64,"title":"Entity Id","type":"string"},"notes":{"default":[],"items":{"$ref":"#/$defs/NoteV1"},"maxItems":100,"title":"Notes","type":"array"},"next_cursor":{"anyOf":[{"maxLength":64,"type":"string"},{"type":"null"}],"default":null,"title":"Next Cursor"},"total":{"default":0,"minimum":0,"title":"Total","type":"integer"}},"required":["entity_type","entity_id"],"title":"PublicNotesListResultV2","type":"object"},"example":{"tool":"domain.accounts.v2","arguments":{"params":{"action":"invoke","operation":"notes.list.v2","arguments":{"entity_id":"00000000-0000-4000-8000-000000000001","entity_type":"account"},"operation_id":"00000000-0000-4000-8000-000000000003"}},"notice":"Fictional fixture IDs and example text. Resolve real IDs, use returned preview tokens and approve exact side effects before execution. Input validation is not proof of provider readiness or a successful business outcome."},"workflow_steps":[],"approval_policy":null,"idempotency_policy":"read_only","gateway_credit_code":null,"identity":"Workspace, actor and consent come from OAuth; do not supply identity fields.","retry":"Keep the same operation and operation_id when retrying identical work. Reconcile an uncertain result before new work; never replay an old V1 write under a new V2 ID.","completion":"Check status, execution_state, error_code, output and evidence/resource references. Queued work is not complete: poll jobs.status.get.v2 in domain.workspace.v2. For read-back verification require read_back_verified=true where returned; reconcile failures without creating another object.","result_envelope":{"status":"completed | partial | cancelled | failed","execution_state":"terminal | queued | reconciliation_required","output":"Completed results validate against output_schema; partial/reconciliation results can contain incomplete evidence and must not be treated as completion.","billing":"gateway_credits_spent, downstream_settlement, job_id; pending downstream settlement is not a final cost","references":"run_id, invocation_id, resource_refs, evidence_refs"},"documentation":"https://www.hivekind.ai/docs/mcp/accounts#notes-list-v2"},{"operation":"notes.update.v2","domain":"accounts","tool":"domain.accounts.v2","title":"Edit a note","purpose":"Replace the body of a note an agent wrote. Read it with notes.list.v2 first and pass its revision as if_revision.","side_effects":"Bumps the note's revision and banks the previous body. Reversible by editing again.","permission":"execute","required_scopes":["actions:execute"],"requires_operation_id":true,"billing":"No gateway rate is configured. Check the Core workflow preview/quote for downstream charges and final settlement.","required_resolved_fields":["note_id"],"next_call":{"tool":"domain.accounts.v2","arguments":{"params":{"action":"describe","operation":"notes.update.v2"}}},"catalog_revision":"07a373e389289e05","when_not_to_use":"Never on a person's note — that is refused with agent_cannot_edit_user_note; reply with notes.create.v2 instead. Do not retry a revision_conflict without re-reading.","description":"Use when: Replace the body of a note an agent wrote. Read it with notes.list.v2 first and pass its revision as if_revision. Returns/does: Bumps the note's revision and banks the previous body. Reversible by editing again. Do not use when: Never on a person's note — that is refused with agent_cannot_edit_user_note; reply with notes.create.v2 instead. Do not retry a revision_conflict without re-reading. Identity comes from OAuth. Resolve exact IDs; use typed enums and bounded limits. Billing: Gateway and downstream billing depend on the operation; check its preview/quote and returned billing.","input_schema":{"additionalProperties":false,"properties":{"action_proposal_id":{"anyOf":[{"format":"uuid","type":"string"},{"type":"null"}],"default":null,"description":"Optional. Hivekind fills this from the MCP consent grant.","title":"Action Proposal Id"},"note_id":{"description":"Exact note id from notes.list.v2 or a prior create.","format":"uuid","title":"Note Id","type":"string"},"body":{"description":"The full replacement body.","maxLength":1048576,"minLength":1,"title":"Body","type":"string"},"if_revision":{"description":"The revision you read. A mismatch is refused with the current revision; re-read and retry.","minimum":1,"title":"If Revision","type":"integer"}},"required":["note_id","body","if_revision"],"title":"McpMcpPublicNotesUpdateInputV2","type":"object"},"output_schema":{"$defs":{"NoteAuthorV1":{"additionalProperties":false,"properties":{"author_type":{"enum":["user","agent"],"title":"Author Type","type":"string"},"author_id":{"description":"The user for a person; the agent run for an agent.","maxLength":64,"title":"Author Id","type":"string"},"display_name":{"maxLength":255,"title":"Display Name","type":"string"},"on_behalf_of_user_id":{"anyOf":[{"maxLength":64,"type":"string"},{"type":"null"}],"default":null,"title":"On Behalf Of User Id"},"on_behalf_of_name":{"anyOf":[{"maxLength":255,"type":"string"},{"type":"null"}],"default":null,"title":"On Behalf Of Name"},"source":{"maxLength":32,"title":"Source","type":"string"}},"required":["author_type","author_id","display_name","source"],"title":"NoteAuthorV1","type":"object"},"NoteV1":{"additionalProperties":false,"properties":{"note_id":{"maxLength":64,"title":"Note Id","type":"string"},"entity_type":{"enum":["account","contact"],"title":"Entity Type","type":"string"},"entity_id":{"maxLength":64,"title":"Entity Id","type":"string"},"account_id":{"maxLength":64,"title":"Account Id","type":"string"},"body":{"maxLength":1048576,"title":"Body","type":"string"},"author":{"$ref":"#/$defs/NoteAuthorV1"},"occurred_at":{"format":"date-time","title":"Occurred At","type":"string"},"created_at":{"format":"date-time","title":"Created At","type":"string"},"updated_at":{"format":"date-time","title":"Updated At","type":"string"},"revision":{"minimum":1,"title":"Revision","type":"integer"},"in_reply_to_note_id":{"anyOf":[{"maxLength":64,"type":"string"},{"type":"null"}],"default":null,"title":"In Reply To Note Id"},"mentions":{"default":[],"items":{"type":"string"},"maxItems":50,"title":"Mentions","type":"array"},"last_edited_by_type":{"anyOf":[{"enum":["user","agent"],"type":"string"},{"type":"null"}],"default":null,"title":"Last Edited By Type"},"can_modify":{"default":false,"description":"Whether the calling principal may edit or delete this note. False on a person's note for an agent.","title":"Can Modify","type":"boolean"},"related_entity_type":{"anyOf":[{"enum":["account","contact"],"type":"string"},{"type":"null"}],"default":null,"description":"Set when the note is on the parent account (contact feed) or on a contact (account feed).","title":"Related Entity Type"},"related_entity_id":{"anyOf":[{"maxLength":64,"type":"string"},{"type":"null"}],"default":null,"title":"Related Entity Id"},"related_entity_name":{"anyOf":[{"maxLength":255,"type":"string"},{"type":"null"}],"default":null,"title":"Related Entity Name"},"web_url":{"anyOf":[{"maxLength":2048,"type":"string"},{"type":"null"}],"default":null,"description":"Browser link to this note's account or contact (entity_type / entity_id) in the Hivekind app. Use it verbatim whenever you link the record for a person, including inside note bodies; never build a link by hand or use a hivekind:// URI, which is an MCP resource handle, not a page. Null when the server has no app URL configured.","title":"Web Url"}},"required":["note_id","entity_type","entity_id","account_id","body","author","occurred_at","created_at","updated_at","revision"],"title":"NoteV1","type":"object"}},"additionalProperties":false,"description":"V2 result for notes.update.v2; preserves the established validators.","properties":{"note":{"$ref":"#/$defs/NoteV1"},"created":{"default":true,"title":"Created","type":"boolean"},"deduplicated":{"default":false,"description":"True when an identical recent note was returned instead of a new one.","title":"Deduplicated","type":"boolean"},"message":{"anyOf":[{"maxLength":500,"type":"string"},{"type":"null"}],"default":null,"title":"Message"}},"required":["note"],"title":"PublicNotesUpdateResultV2","type":"object"},"example":{"tool":"domain.accounts.v2","arguments":{"params":{"action":"invoke","operation":"notes.update.v2","arguments":{"body":"Example body","if_revision":1,"note_id":"00000000-0000-4000-8000-000000000001"},"operation_id":"00000000-0000-4000-8000-000000000003"}},"notice":"Fictional fixture IDs and example text. Resolve real IDs, use returned preview tokens and approve exact side effects before execution. Input validation is not proof of provider readiness or a successful business outcome."},"workflow_steps":[],"approval_policy":"exact_scope_single_action","idempotency_policy":"approved_action_outbox","gateway_credit_code":null,"identity":"Workspace, actor and consent come from OAuth; do not supply identity fields.","retry":"Keep the same operation and operation_id when retrying identical work. Reconcile an uncertain result before new work; never replay an old V1 write under a new V2 ID.","completion":"Check status, execution_state, error_code, output and evidence/resource references. Queued work is not complete: poll jobs.status.get.v2 in domain.workspace.v2. For read-back verification require read_back_verified=true where returned; reconcile failures without creating another object.","result_envelope":{"status":"completed | partial | cancelled | failed","execution_state":"terminal | queued | reconciliation_required","output":"Completed results validate against output_schema; partial/reconciliation results can contain incomplete evidence and must not be treated as completion.","billing":"gateway_credits_spent, downstream_settlement, job_id; pending downstream settlement is not a final cost","references":"run_id, invocation_id, resource_refs, evidence_refs"},"documentation":"https://www.hivekind.ai/docs/mcp/accounts#notes-update-v2"},{"operation":"pages.analytics.get.v2","domain":"pages","tool":"domain.pages.v2","title":"HivePages account engagement","purpose":"Use the existing Core workflow: HivePages account engagement. Page engagement only; no program spend or cross-channel attribution.","side_effects":"Read only.","permission":"read","required_scopes":["accounts:read"],"requires_operation_id":false,"billing":"No gateway credit charge; reads saved workspace data without starting paid provider work.","required_resolved_fields":[],"next_call":{"tool":"domain.pages.v2","arguments":{"params":{"action":"describe","operation":"pages.analytics.get.v2"}}},"catalog_revision":"07a373e389289e05","when_not_to_use":"Do not infer unsupported history, attribution, or commitments from this response.","description":"Use when: Use the existing Core workflow: HivePages account engagement. Page engagement only; no program spend or cross-channel attribution. Returns/does: Read only. Do not use when: Do not infer unsupported history, attribution, or commitments from this response. Identity comes from OAuth. Resolve exact IDs; use typed enums and bounded limits. Billing: Gateway and downstream billing depend on the operation; check its preview/quote and returned billing.","input_schema":{"additionalProperties":false,"properties":{"engagement":{"default":"all","description":"Engagement used by the pages analytics get input v2 operation.","enum":["all","engaged","clickers"],"title":"Engagement","type":"string"}},"title":"McpPagesAnalyticsGetInputV2","type":"object"},"output_schema":{"additionalProperties":false,"properties":{"title":{"title":"Title","type":"string"},"data":{"additionalProperties":true,"title":"Data","type":"object"},"limitations":{"title":"Limitations","type":"string"},"applied_parameters":{"additionalProperties":true,"title":"Applied Parameters","type":"object"},"source_path":{"title":"Source Path","type":"string"},"job_id":{"anyOf":[{"type":"string"},{"type":"null"}],"default":null,"description":"Core job identifier when an operation enqueues work; poll jobs.status.get.v2 and read the resulting resource.","title":"Job Id"},"queued":{"default":false,"title":"Queued","type":"boolean"},"outcome_status":{"default":"partial","enum":["completed","partial","needs_input","awaiting_approval"],"title":"Outcome Status","type":"string"},"read_back_verified":{"default":false,"title":"Read Back Verified","type":"boolean"},"verification_message":{"anyOf":[{"type":"string"},{"type":"null"}],"default":null,"title":"Verification Message"}},"required":["title","data","limitations","source_path"],"title":"PagesAnalyticsGetResultV2","type":"object"},"example":{"tool":"domain.pages.v2","arguments":{"params":{"action":"invoke","operation":"pages.analytics.get.v2","arguments":{},"operation_id":"00000000-0000-4000-8000-000000000003"}},"notice":"Fictional fixture IDs and example text. Resolve real IDs, use returned preview tokens and approve exact side effects before execution. Input validation is not proof of provider readiness or a successful business outcome."},"workflow_steps":[],"approval_policy":null,"idempotency_policy":"caller_operation","gateway_credit_code":null,"identity":"Workspace, actor and consent come from OAuth; do not supply identity fields.","retry":"Keep the same operation and operation_id when retrying identical work. Reconcile an uncertain result before new work; never replay an old V1 write under a new V2 ID.","completion":"Check status, execution_state, error_code, output and evidence/resource references. Queued work is not complete: poll jobs.status.get.v2 in domain.workspace.v2. For read-back verification require read_back_verified=true where returned; reconcile failures without creating another object.","result_envelope":{"status":"completed | partial | cancelled | failed","execution_state":"terminal | queued | reconciliation_required","output":"Completed results validate against output_schema; partial/reconciliation results can contain incomplete evidence and must not be treated as completion.","billing":"gateway_credits_spent, downstream_settlement, job_id; pending downstream settlement is not a final cost","references":"run_id, invocation_id, resource_refs, evidence_refs"},"documentation":"https://www.hivekind.ai/docs/mcp/pages#pages-analytics-get-v2"},{"operation":"pages.draft.create.v2","domain":"pages","tool":"domain.pages.v2","title":"Create account HivePage draft","purpose":"Use the existing Core workflow: Create account HivePage draft. Creates a page using an existing/default template. Does not generate or publish page content; no account-plan task system.","side_effects":"Creates a page using an existing/default template. Does not generate or publish page content; no account-plan task system.","permission":"execute","required_scopes":["actions:execute"],"requires_operation_id":true,"billing":"No gateway rate is configured. Check the Core workflow preview/quote for downstream charges and final settlement.","required_resolved_fields":[],"next_call":{"tool":"domain.pages.v2","arguments":{"params":{"action":"describe","operation":"pages.draft.create.v2"}}},"catalog_revision":"07a373e389289e05","when_not_to_use":"Do not infer unsupported history, attribution, or commitments from this response.","description":"Use when: Use the existing Core workflow: Create account HivePage draft. Creates a page using an existing/default template. Does not generate or publish page content; no account-plan task system. Returns/does: Creates a page using an existing/default template. Does not generate or publish page content; no account-plan task system. Do not use when: Do not infer unsupported history, attribution, or commitments from this response. Identity comes from OAuth. Resolve exact IDs; use typed enums and bounded limits. Billing: Gateway and downstream billing depend on the operation; check its preview/quote and returned billing.","input_schema":{"$defs":{"RevenuePageBriefV1":{"additionalProperties":false,"properties":{"goal":{"anyOf":[{"maxLength":4000,"type":"string"},{"type":"null"}],"default":null,"title":"Goal"},"target_persona":{"anyOf":[{"maxLength":2000,"type":"string"},{"type":"null"}],"default":null,"title":"Target Persona"},"key_messages":{"default":[],"items":{"type":"string"},"maxItems":30,"title":"Key Messages","type":"array"},"offer_hook":{"anyOf":[{"maxLength":4000,"type":"string"},{"type":"null"}],"default":null,"title":"Offer Hook"},"cta_type":{"anyOf":[{"maxLength":255,"type":"string"},{"type":"null"}],"default":null,"title":"Cta Type"},"cta_href":{"anyOf":[{"maxLength":2000,"type":"string"},{"type":"null"}],"default":null,"title":"Cta Href"},"tone":{"anyOf":[{"maxLength":255,"type":"string"},{"type":"null"}],"default":null,"title":"Tone"}},"title":"RevenuePageBriefV1","type":"object"}},"additionalProperties":false,"properties":{"account_id":{"description":"Exact existing resource UUID; resolve it before invoking.","format":"uuid","title":"Account Id","type":"string"},"name":{"anyOf":[{"maxLength":255,"type":"string"},{"type":"null"}],"default":null,"description":"Human-readable name for the record.","title":"Name"},"template_id":{"anyOf":[{"format":"uuid","type":"string"},{"type":"null"}],"default":null,"description":"Exact template UUID returned by a Hivekind search, list, get, preview, or resource call.","title":"Template Id"},"brief":{"anyOf":[{"$ref":"#/$defs/RevenuePageBriefV1"},{"type":"null"}],"default":null,"description":"Brief used by the pages draft create input v2 operation."},"action_proposal_id":{"anyOf":[{"format":"uuid","type":"string"},{"type":"null"}],"default":null,"description":"Optional. Hivekind fills this from the MCP consent grant.","title":"Action Proposal Id"}},"required":["account_id"],"title":"McpMcpPagesDraftCreateInputV2","type":"object"},"output_schema":{"additionalProperties":false,"properties":{"title":{"title":"Title","type":"string"},"data":{"additionalProperties":true,"title":"Data","type":"object"},"limitations":{"title":"Limitations","type":"string"},"applied_parameters":{"additionalProperties":true,"title":"Applied Parameters","type":"object"},"source_path":{"title":"Source Path","type":"string"},"job_id":{"anyOf":[{"type":"string"},{"type":"null"}],"default":null,"description":"Core job identifier when an operation enqueues work; poll jobs.status.get.v2 and read the resulting resource.","title":"Job Id"},"queued":{"default":false,"title":"Queued","type":"boolean"},"outcome_status":{"default":"partial","enum":["completed","partial","needs_input","awaiting_approval"],"title":"Outcome Status","type":"string"},"read_back_verified":{"default":false,"title":"Read Back Verified","type":"boolean"},"verification_message":{"anyOf":[{"type":"string"},{"type":"null"}],"default":null,"title":"Verification Message"}},"required":["title","data","limitations","source_path"],"title":"PagesMutationResultV2","type":"object"},"example":{"tool":"domain.pages.v2","arguments":{"params":{"action":"invoke","operation":"pages.draft.create.v2","arguments":{"account_id":"00000000-0000-4000-8000-000000000001"},"operation_id":"00000000-0000-4000-8000-000000000003"}},"notice":"Fictional fixture IDs and example text. Resolve real IDs, use returned preview tokens and approve exact side effects before execution. Input validation is not proof of provider readiness or a successful business outcome."},"workflow_steps":[],"approval_policy":"exact_scope_single_action","idempotency_policy":"caller_operation","gateway_credit_code":null,"identity":"Workspace, actor and consent come from OAuth; do not supply identity fields.","retry":"Keep the same operation and operation_id when retrying identical work. Reconcile an uncertain result before new work; never replay an old V1 write under a new V2 ID.","completion":"Check status, execution_state, error_code, output and evidence/resource references. Queued work is not complete: poll jobs.status.get.v2 in domain.workspace.v2. For read-back verification require read_back_verified=true where returned; reconcile failures without creating another object.","result_envelope":{"status":"completed | partial | cancelled | failed","execution_state":"terminal | queued | reconciliation_required","output":"Completed results validate against output_schema; partial/reconciliation results can contain incomplete evidence and must not be treated as completion.","billing":"gateway_credits_spent, downstream_settlement, job_id; pending downstream settlement is not a final cost","references":"run_id, invocation_id, resource_refs, evidence_refs"},"documentation":"https://www.hivekind.ai/docs/mcp/pages#pages-draft-create-v2"},{"operation":"pages.draft.update.v2","domain":"pages","tool":"domain.pages.v2","title":"Update source-grounded HivePage brief","purpose":"Use the existing Core workflow: Update source-grounded HivePage brief. Updates the existing page brief. Does not generate content or publish; never invent customer conversations.","side_effects":"Updates the existing page brief. Does not generate content or publish; never invent customer conversations.","permission":"execute","required_scopes":["actions:execute"],"requires_operation_id":true,"billing":"No gateway rate is configured. Check the Core workflow preview/quote for downstream charges and final settlement.","required_resolved_fields":[],"next_call":{"tool":"domain.pages.v2","arguments":{"params":{"action":"describe","operation":"pages.draft.update.v2"}}},"catalog_revision":"07a373e389289e05","when_not_to_use":"Do not infer unsupported history, attribution, or commitments from this response.","description":"Use when: Use the existing Core workflow: Update source-grounded HivePage brief. Updates the existing page brief. Does not generate content or publish; never invent customer conversations. Returns/does: Updates the existing page brief. Does not generate content or publish; never invent customer conversations. Do not use when: Do not infer unsupported history, attribution, or commitments from this response. Identity comes from OAuth. Resolve exact IDs; use typed enums and bounded limits. Billing: Gateway and downstream billing depend on the operation; check its preview/quote and returned billing.","input_schema":{"$defs":{"RevenuePageBriefV1":{"additionalProperties":false,"properties":{"goal":{"anyOf":[{"maxLength":4000,"type":"string"},{"type":"null"}],"default":null,"title":"Goal"},"target_persona":{"anyOf":[{"maxLength":2000,"type":"string"},{"type":"null"}],"default":null,"title":"Target Persona"},"key_messages":{"default":[],"items":{"type":"string"},"maxItems":30,"title":"Key Messages","type":"array"},"offer_hook":{"anyOf":[{"maxLength":4000,"type":"string"},{"type":"null"}],"default":null,"title":"Offer Hook"},"cta_type":{"anyOf":[{"maxLength":255,"type":"string"},{"type":"null"}],"default":null,"title":"Cta Type"},"cta_href":{"anyOf":[{"maxLength":2000,"type":"string"},{"type":"null"}],"default":null,"title":"Cta Href"},"tone":{"anyOf":[{"maxLength":255,"type":"string"},{"type":"null"}],"default":null,"title":"Tone"}},"title":"RevenuePageBriefV1","type":"object"}},"additionalProperties":false,"properties":{"landing_page_id":{"description":"Exact existing resource UUID; resolve it before invoking.","format":"uuid","title":"Landing Page Id","type":"string"},"brief":{"$ref":"#/$defs/RevenuePageBriefV1","description":"Only user-approved source-grounded messages, proposal, and next step."},"action_proposal_id":{"anyOf":[{"format":"uuid","type":"string"},{"type":"null"}],"default":null,"description":"Optional. Hivekind fills this from the MCP consent grant.","title":"Action Proposal Id"}},"required":["landing_page_id","brief"],"title":"McpMcpPagesDraftUpdateInputV2","type":"object"},"output_schema":{"additionalProperties":false,"properties":{"title":{"title":"Title","type":"string"},"data":{"additionalProperties":true,"title":"Data","type":"object"},"limitations":{"title":"Limitations","type":"string"},"applied_parameters":{"additionalProperties":true,"title":"Applied Parameters","type":"object"},"source_path":{"title":"Source Path","type":"string"},"job_id":{"anyOf":[{"type":"string"},{"type":"null"}],"default":null,"description":"Core job identifier when an operation enqueues work; poll jobs.status.get.v2 and read the resulting resource.","title":"Job Id"},"queued":{"default":false,"title":"Queued","type":"boolean"},"outcome_status":{"default":"partial","enum":["completed","partial","needs_input","awaiting_approval"],"title":"Outcome Status","type":"string"},"read_back_verified":{"default":false,"title":"Read Back Verified","type":"boolean"},"verification_message":{"anyOf":[{"type":"string"},{"type":"null"}],"default":null,"title":"Verification Message"}},"required":["title","data","limitations","source_path"],"title":"PagesMutationResultV2","type":"object"},"example":{"tool":"domain.pages.v2","arguments":{"params":{"action":"invoke","operation":"pages.draft.update.v2","arguments":{"brief":{},"landing_page_id":"00000000-0000-4000-8000-000000000001"},"operation_id":"00000000-0000-4000-8000-000000000003"}},"notice":"Fictional fixture IDs and example text. Resolve real IDs, use returned preview tokens and approve exact side effects before execution. Input validation is not proof of provider readiness or a successful business outcome."},"workflow_steps":[],"approval_policy":"exact_scope_single_action","idempotency_policy":"caller_operation","gateway_credit_code":null,"identity":"Workspace, actor and consent come from OAuth; do not supply identity fields.","retry":"Keep the same operation and operation_id when retrying identical work. Reconcile an uncertain result before new work; never replay an old V1 write under a new V2 ID.","completion":"Check status, execution_state, error_code, output and evidence/resource references. Queued work is not complete: poll jobs.status.get.v2 in domain.workspace.v2. For read-back verification require read_back_verified=true where returned; reconcile failures without creating another object.","result_envelope":{"status":"completed | partial | cancelled | failed","execution_state":"terminal | queued | reconciliation_required","output":"Completed results validate against output_schema; partial/reconciliation results can contain incomplete evidence and must not be treated as completion.","billing":"gateway_credits_spent, downstream_settlement, job_id; pending downstream settlement is not a final cost","references":"run_id, invocation_id, resource_refs, evidence_refs"},"documentation":"https://www.hivekind.ai/docs/mcp/pages#pages-draft-update-v2"},{"operation":"pages.generate.v2","domain":"pages","tool":"domain.pages.v2","title":"Generate and publish HivePage","purpose":"Use the existing Core workflow: Generate and publish HivePage. Paid Core job generates, renders and PUBLISHES to S3. Requires explicit publication approval. Does not bypass readiness or overwrite manual edits. Poll jobs.status.get.v2 for job progress and pages.get.v2 for the resulting page.","side_effects":"Paid Core job generates, renders and PUBLISHES to S3. Requires explicit publication approval. Does not bypass readiness or overwrite manual edits. Poll jobs.status.get.v2 for job progress and pages.get.v2 for the resulting page.","permission":"execute","required_scopes":["actions:execute"],"requires_operation_id":true,"billing":"No gateway rate is configured. Check the Core workflow preview/quote for downstream charges and final settlement.","required_resolved_fields":[],"next_call":{"tool":"domain.pages.v2","arguments":{"params":{"action":"describe","operation":"pages.generate.v2"}}},"catalog_revision":"07a373e389289e05","when_not_to_use":"Do not infer unsupported history, attribution, or commitments from this response.","description":"Use when: Use the existing Core workflow: Generate and publish HivePage. Paid Core job generates, renders and PUBLISHES to S3. Requires explicit publication approval. Does not bypass readiness or overwrite manual edits. Poll jobs.status.get.v2 for job progress and pages.get.v2 for the resulting page. Returns/does: Paid Core job generates, renders and PUBLISHES to S3. Requires explicit publication approval. Does not bypass readiness or overwrite manual edits. Poll jobs.status.get.v2 for job progress and pages.get.v2 for the resulting page. Do not use when: Do not infer unsupported history, attribution, or commitments from this response. Identity comes from OAuth. Resolve exact IDs; use typed enums and bounded limits. Billing: Gateway and downstream billing depend on the operation; check its preview/quote and returned billing.","input_schema":{"additionalProperties":false,"properties":{"landing_page_id":{"description":"Exact existing resource UUID; resolve it before invoking.","format":"uuid","title":"Landing Page Id","type":"string"},"action_proposal_id":{"anyOf":[{"format":"uuid","type":"string"},{"type":"null"}],"default":null,"description":"Optional. Hivekind fills this from the MCP consent grant.","title":"Action Proposal Id"}},"required":["landing_page_id"],"title":"McpMcpPublicPagesGenerateInputV2","type":"object"},"output_schema":{"additionalProperties":false,"description":"V2 result for pages.generate.v2; preserves the established validators.","properties":{"title":{"title":"Title","type":"string"},"data":{"additionalProperties":true,"title":"Data","type":"object"},"limitations":{"title":"Limitations","type":"string"},"applied_parameters":{"additionalProperties":true,"title":"Applied Parameters","type":"object"},"source_path":{"title":"Source Path","type":"string"},"job_id":{"anyOf":[{"type":"string"},{"type":"null"}],"default":null,"description":"Core job identifier when an operation enqueues work; poll jobs.status.get.v2 and read the resulting resource.","title":"Job Id"},"queued":{"default":false,"title":"Queued","type":"boolean"},"outcome_status":{"default":"partial","enum":["completed","partial","needs_input","awaiting_approval"],"title":"Outcome Status","type":"string"},"read_back_verified":{"default":false,"title":"Read Back Verified","type":"boolean"},"verification_message":{"anyOf":[{"type":"string"},{"type":"null"}],"default":null,"title":"Verification Message"}},"required":["title","data","limitations","source_path"],"title":"PublicPagesGenerateResultV2","type":"object"},"example":{"tool":"domain.pages.v2","arguments":{"params":{"action":"invoke","operation":"pages.generate.v2","arguments":{"landing_page_id":"00000000-0000-4000-8000-000000000001"},"operation_id":"00000000-0000-4000-8000-000000000003"}},"notice":"Fictional fixture IDs and example text. Resolve real IDs, use returned preview tokens and approve exact side effects before execution. Input validation is not proof of provider readiness or a successful business outcome."},"workflow_steps":[],"approval_policy":"exact_scope_single_action","idempotency_policy":"caller_operation","gateway_credit_code":null,"identity":"Workspace, actor and consent come from OAuth; do not supply identity fields.","retry":"Keep the same operation and operation_id when retrying identical work. Reconcile an uncertain result before new work; never replay an old V1 write under a new V2 ID.","completion":"Check status, execution_state, error_code, output and evidence/resource references. Queued work is not complete: poll jobs.status.get.v2 in domain.workspace.v2. For read-back verification require read_back_verified=true where returned; reconcile failures without creating another object.","result_envelope":{"status":"completed | partial | cancelled | failed","execution_state":"terminal | queued | reconciliation_required","output":"Completed results validate against output_schema; partial/reconciliation results can contain incomplete evidence and must not be treated as completion.","billing":"gateway_credits_spent, downstream_settlement, job_id; pending downstream settlement is not a final cost","references":"run_id, invocation_id, resource_refs, evidence_refs"},"documentation":"https://www.hivekind.ai/docs/mcp/pages#pages-generate-v2"},{"operation":"pages.get.v2","domain":"pages","tool":"domain.pages.v2","title":"HivePage content and generation status","purpose":"Use the existing Core workflow: HivePage content and generation status. Existing account page, including generation status. Poll this after page generation.","side_effects":"Read only.","permission":"read","required_scopes":["accounts:read"],"requires_operation_id":false,"billing":"No gateway credit charge; reads saved workspace data without starting paid provider work.","required_resolved_fields":[],"next_call":{"tool":"domain.pages.v2","arguments":{"params":{"action":"describe","operation":"pages.get.v2"}}},"catalog_revision":"07a373e389289e05","when_not_to_use":"Do not infer unsupported history, attribution, or commitments from this response.","description":"Use when: Use the existing Core workflow: HivePage content and generation status. Existing account page, including generation status. Poll this after page generation. Returns/does: Read only. Do not use when: Do not infer unsupported history, attribution, or commitments from this response. Identity comes from OAuth. Resolve exact IDs; use typed enums and bounded limits. Billing: Gateway and downstream billing depend on the operation; check its preview/quote and returned billing.","input_schema":{"additionalProperties":false,"properties":{"landing_page_id":{"description":"Exact existing resource UUID; resolve it before invoking.","format":"uuid","title":"Landing Page Id","type":"string"}},"required":["landing_page_id"],"title":"McpPublicPagesGetInputV2","type":"object"},"output_schema":{"additionalProperties":false,"description":"V2 result for pages.get.v2; preserves the established validators.","properties":{"title":{"title":"Title","type":"string"},"data":{"additionalProperties":true,"title":"Data","type":"object"},"limitations":{"title":"Limitations","type":"string"},"applied_parameters":{"additionalProperties":true,"title":"Applied Parameters","type":"object"},"source_path":{"title":"Source Path","type":"string"},"job_id":{"anyOf":[{"type":"string"},{"type":"null"}],"default":null,"description":"Core job identifier when an operation enqueues work; poll jobs.status.get.v2 and read the resulting resource.","title":"Job Id"},"queued":{"default":false,"title":"Queued","type":"boolean"},"outcome_status":{"default":"partial","enum":["completed","partial","needs_input","awaiting_approval"],"title":"Outcome Status","type":"string"},"read_back_verified":{"default":false,"title":"Read Back Verified","type":"boolean"},"verification_message":{"anyOf":[{"type":"string"},{"type":"null"}],"default":null,"title":"Verification Message"}},"required":["title","data","limitations","source_path"],"title":"PublicPagesGetResultV2","type":"object"},"example":{"tool":"domain.pages.v2","arguments":{"params":{"action":"invoke","operation":"pages.get.v2","arguments":{"landing_page_id":"00000000-0000-4000-8000-000000000001"},"operation_id":"00000000-0000-4000-8000-000000000003"}},"notice":"Fictional fixture IDs and example text. Resolve real IDs, use returned preview tokens and approve exact side effects before execution. Input validation is not proof of provider readiness or a successful business outcome."},"workflow_steps":[],"approval_policy":null,"idempotency_policy":"caller_operation","gateway_credit_code":null,"identity":"Workspace, actor and consent come from OAuth; do not supply identity fields.","retry":"Keep the same operation and operation_id when retrying identical work. Reconcile an uncertain result before new work; never replay an old V1 write under a new V2 ID.","completion":"Check status, execution_state, error_code, output and evidence/resource references. Queued work is not complete: poll jobs.status.get.v2 in domain.workspace.v2. For read-back verification require read_back_verified=true where returned; reconcile failures without creating another object.","result_envelope":{"status":"completed | partial | cancelled | failed","execution_state":"terminal | queued | reconciliation_required","output":"Completed results validate against output_schema; partial/reconciliation results can contain incomplete evidence and must not be treated as completion.","billing":"gateway_credits_spent, downstream_settlement, job_id; pending downstream settlement is not a final cost","references":"run_id, invocation_id, resource_refs, evidence_refs"},"documentation":"https://www.hivekind.ai/docs/mcp/pages#pages-get-v2"},{"operation":"pages.list.v2","domain":"pages","tool":"domain.pages.v2","title":"Existing account HivePages","purpose":"Use the existing Core workflow: Existing account HivePages. Existing account pages, not a durable account-plan or task system.","side_effects":"Read only.","permission":"read","required_scopes":["accounts:read"],"requires_operation_id":false,"billing":"No gateway credit charge; reads saved workspace data without starting paid provider work.","required_resolved_fields":[],"next_call":{"tool":"domain.pages.v2","arguments":{"params":{"action":"describe","operation":"pages.list.v2"}}},"catalog_revision":"07a373e389289e05","when_not_to_use":"Do not infer unsupported history, attribution, or commitments from this response.","description":"Use when: Use the existing Core workflow: Existing account HivePages. Existing account pages, not a durable account-plan or task system. Returns/does: Read only. Do not use when: Do not infer unsupported history, attribution, or commitments from this response. Identity comes from OAuth. Resolve exact IDs; use typed enums and bounded limits. Billing: Gateway and downstream billing depend on the operation; check its preview/quote and returned billing.","input_schema":{"additionalProperties":false,"properties":{"account_id":{"anyOf":[{"format":"uuid","type":"string"},{"type":"null"}],"default":null,"description":"Exact account UUID returned by a Hivekind search, list, get, preview, or resource call.","title":"Account Id"},"search":{"anyOf":[{"maxLength":255,"type":"string"},{"type":"null"}],"default":null,"description":"Search used by the public pages list input v2 operation.","title":"Search"}},"title":"McpPublicPagesListInputV2","type":"object"},"output_schema":{"additionalProperties":false,"description":"V2 result for pages.list.v2; preserves the established validators.","properties":{"title":{"title":"Title","type":"string"},"data":{"additionalProperties":true,"title":"Data","type":"object"},"limitations":{"title":"Limitations","type":"string"},"applied_parameters":{"additionalProperties":true,"title":"Applied Parameters","type":"object"},"source_path":{"title":"Source Path","type":"string"},"job_id":{"anyOf":[{"type":"string"},{"type":"null"}],"default":null,"description":"Core job identifier when an operation enqueues work; poll jobs.status.get.v2 and read the resulting resource.","title":"Job Id"},"queued":{"default":false,"title":"Queued","type":"boolean"},"outcome_status":{"default":"partial","enum":["completed","partial","needs_input","awaiting_approval"],"title":"Outcome Status","type":"string"},"read_back_verified":{"default":false,"title":"Read Back Verified","type":"boolean"},"verification_message":{"anyOf":[{"type":"string"},{"type":"null"}],"default":null,"title":"Verification Message"}},"required":["title","data","limitations","source_path"],"title":"PublicPagesListResultV2","type":"object"},"example":{"tool":"domain.pages.v2","arguments":{"params":{"action":"invoke","operation":"pages.list.v2","arguments":{},"operation_id":"00000000-0000-4000-8000-000000000003"}},"notice":"Fictional fixture IDs and example text. Resolve real IDs, use returned preview tokens and approve exact side effects before execution. Input validation is not proof of provider readiness or a successful business outcome."},"workflow_steps":[],"approval_policy":null,"idempotency_policy":"caller_operation","gateway_credit_code":null,"identity":"Workspace, actor and consent come from OAuth; do not supply identity fields.","retry":"Keep the same operation and operation_id when retrying identical work. Reconcile an uncertain result before new work; never replay an old V1 write under a new V2 ID.","completion":"Check status, execution_state, error_code, output and evidence/resource references. Queued work is not complete: poll jobs.status.get.v2 in domain.workspace.v2. For read-back verification require read_back_verified=true where returned; reconcile failures without creating another object.","result_envelope":{"status":"completed | partial | cancelled | failed","execution_state":"terminal | queued | reconciliation_required","output":"Completed results validate against output_schema; partial/reconciliation results can contain incomplete evidence and must not be treated as completion.","billing":"gateway_credits_spent, downstream_settlement, job_id; pending downstream settlement is not a final cost","references":"run_id, invocation_id, resource_refs, evidence_refs"},"documentation":"https://www.hivekind.ai/docs/mcp/pages#pages-list-v2"},{"operation":"pages.templates.list.v2","domain":"pages","tool":"domain.pages.v2","title":"Existing HivePage templates","purpose":"Use the existing Core workflow: Existing HivePage templates. Read existing templates before draft creation. Selecting an existing template avoids automatic first-use template design.","side_effects":"Read only.","permission":"read","required_scopes":["accounts:read"],"requires_operation_id":false,"billing":"No gateway credit charge; reads saved workspace data without starting paid provider work.","required_resolved_fields":[],"next_call":{"tool":"domain.pages.v2","arguments":{"params":{"action":"describe","operation":"pages.templates.list.v2"}}},"catalog_revision":"07a373e389289e05","when_not_to_use":"Do not infer unsupported history, attribution, or commitments from this response.","description":"Use when: Use the existing Core workflow: Existing HivePage templates. Read existing templates before draft creation. Selecting an existing template avoids automatic first-use template design. Returns/does: Read only. Do not use when: Do not infer unsupported history, attribution, or commitments from this response. Identity comes from OAuth. Resolve exact IDs; use typed enums and bounded limits. Billing: Gateway and downstream billing depend on the operation; check its preview/quote and returned billing.","input_schema":{"additionalProperties":false,"properties":{},"title":"McpPublicPagesTemplatesListInputV2","type":"object"},"output_schema":{"additionalProperties":false,"description":"V2 result for pages.templates.list.v2; preserves the established validators.","properties":{"title":{"title":"Title","type":"string"},"data":{"additionalProperties":true,"title":"Data","type":"object"},"limitations":{"title":"Limitations","type":"string"},"applied_parameters":{"additionalProperties":true,"title":"Applied Parameters","type":"object"},"source_path":{"title":"Source Path","type":"string"},"job_id":{"anyOf":[{"type":"string"},{"type":"null"}],"default":null,"description":"Core job identifier when an operation enqueues work; poll jobs.status.get.v2 and read the resulting resource.","title":"Job Id"},"queued":{"default":false,"title":"Queued","type":"boolean"},"outcome_status":{"default":"partial","enum":["completed","partial","needs_input","awaiting_approval"],"title":"Outcome Status","type":"string"},"read_back_verified":{"default":false,"title":"Read Back Verified","type":"boolean"},"verification_message":{"anyOf":[{"type":"string"},{"type":"null"}],"default":null,"title":"Verification Message"}},"required":["title","data","limitations","source_path"],"title":"PublicPagesTemplatesListResultV2","type":"object"},"example":{"tool":"domain.pages.v2","arguments":{"params":{"action":"invoke","operation":"pages.templates.list.v2","arguments":{},"operation_id":"00000000-0000-4000-8000-000000000003"}},"notice":"Fictional fixture IDs and example text. Resolve real IDs, use returned preview tokens and approve exact side effects before execution. Input validation is not proof of provider readiness or a successful business outcome."},"workflow_steps":[],"approval_policy":null,"idempotency_policy":"caller_operation","gateway_credit_code":null,"identity":"Workspace, actor and consent come from OAuth; do not supply identity fields.","retry":"Keep the same operation and operation_id when retrying identical work. Reconcile an uncertain result before new work; never replay an old V1 write under a new V2 ID.","completion":"Check status, execution_state, error_code, output and evidence/resource references. Queued work is not complete: poll jobs.status.get.v2 in domain.workspace.v2. For read-back verification require read_back_verified=true where returned; reconcile failures without creating another object.","result_envelope":{"status":"completed | partial | cancelled | failed","execution_state":"terminal | queued | reconciliation_required","output":"Completed results validate against output_schema; partial/reconciliation results can contain incomplete evidence and must not be treated as completion.","billing":"gateway_credits_spent, downstream_settlement, job_id; pending downstream settlement is not a final cost","references":"run_id, invocation_id, resource_refs, evidence_refs"},"documentation":"https://www.hivekind.ai/docs/mcp/pages#pages-templates-list-v2"},{"operation":"partners.archive.v2","domain":"partners","tool":"domain.partners.v2","title":"Archive a Channel Partner","purpose":"The user explicitly approved archiving one exact Partner after reviewing its network-account impact.","side_effects":"Archives the Partner version chain and linked Partner Account; its network routes stop contributing to access. Destructive.","permission":"execute","required_scopes":["actions:execute"],"requires_operation_id":true,"billing":"No gateway rate is configured. Check the Core workflow preview/quote for downstream charges and final settlement.","required_resolved_fields":[],"next_call":{"tool":"domain.partners.v2","arguments":{"params":{"action":"describe","operation":"partners.archive.v2"}}},"catalog_revision":"07a373e389289e05","when_not_to_use":"You intend only to deactivate one route; use partners.network.route.set.v2 with an appropriate relationship status.","description":"Use when: The user explicitly approved archiving one exact Partner after reviewing its network-account impact. Returns/does: Archives the Partner version chain and linked Partner Account; its network routes stop contributing to access. Destructive. Do not use when: You intend only to deactivate one route; use partners.network.route.set.v2 with an appropriate relationship status. Identity comes from OAuth. Resolve exact IDs; use typed enums and bounded limits. Billing: Gateway and downstream billing depend on the operation; check its preview/quote and returned billing.","input_schema":{"additionalProperties":false,"properties":{"partner_id":{"description":"Exact Partner UUID returned by partners.list.v2.","format":"uuid","title":"Partner Id","type":"string"},"reason":{"anyOf":[{"maxLength":2000,"type":"string"},{"type":"null"}],"default":null,"description":"Reason used by the partner archive input v2 operation.","title":"Reason"},"action_proposal_id":{"anyOf":[{"format":"uuid","type":"string"},{"type":"null"}],"default":null,"description":"Optional. Hivekind fills this from the MCP consent grant.","title":"Action Proposal Id"}},"required":["partner_id"],"title":"McpMcpPartnerArchiveInputV2","type":"object"},"output_schema":{"additionalProperties":false,"properties":{"partner_id":{"format":"uuid","title":"Partner Id","type":"string"},"workspace_id":{"format":"uuid","title":"Workspace Id","type":"string"},"account_id":{"format":"uuid","title":"Account Id","type":"string"},"name":{"maxLength":160,"minLength":1,"title":"Name","type":"string"},"domain":{"anyOf":[{"maxLength":255,"type":"string"},{"type":"null"}],"default":null,"title":"Domain"},"description":{"anyOf":[{"type":"string"},{"type":"null"}],"default":null,"title":"Description"},"partner_type":{"const":"Channel","default":"Channel","title":"Partner Type","type":"string"},"status":{"enum":["Active","Inactive"],"title":"Status","type":"string"},"owner_id":{"anyOf":[{"format":"uuid","type":"string"},{"type":"null"}],"default":null,"title":"Owner Id"},"owner_name":{"anyOf":[{"maxLength":255,"type":"string"},{"type":"null"}],"default":null,"title":"Owner Name"},"network_account_count":{"default":0,"minimum":0,"title":"Network Account Count","type":"integer"},"version_number":{"minimum":1,"title":"Version Number","type":"integer"},"version_label":{"anyOf":[{"type":"string"},{"type":"null"}],"default":null,"title":"Version Label"},"archived_at":{"anyOf":[{"format":"date-time","type":"string"},{"type":"null"}],"default":null,"title":"Archived At"},"archived_by":{"anyOf":[{"format":"uuid","type":"string"},{"type":"null"}],"default":null,"title":"Archived By"},"created_at":{"format":"date-time","title":"Created At","type":"string"},"updated_at":{"format":"date-time","title":"Updated At","type":"string"}},"required":["partner_id","workspace_id","account_id","name","status","version_number","created_at","updated_at"],"title":"PartnerArchiveResultV2","type":"object"},"example":{"tool":"domain.partners.v2","arguments":{"params":{"action":"invoke","operation":"partners.archive.v2","arguments":{"partner_id":"00000000-0000-4000-8000-000000000001"},"operation_id":"00000000-0000-4000-8000-000000000003"}},"notice":"Fictional fixture IDs and example text. Resolve real IDs, use returned preview tokens and approve exact side effects before execution. Input validation is not proof of provider readiness or a successful business outcome."},"workflow_steps":[],"approval_policy":"exact_scope_single_action","idempotency_policy":"approved_action_outbox","gateway_credit_code":null,"identity":"Workspace, actor and consent come from OAuth; do not supply identity fields.","retry":"Keep the same operation and operation_id when retrying identical work. Reconcile an uncertain result before new work; never replay an old V1 write under a new V2 ID.","completion":"Check status, execution_state, error_code, output and evidence/resource references. Queued work is not complete: poll jobs.status.get.v2 in domain.workspace.v2. For read-back verification require read_back_verified=true where returned; reconcile failures without creating another object.","result_envelope":{"status":"completed | partial | cancelled | failed","execution_state":"terminal | queued | reconciliation_required","output":"Completed results validate against output_schema; partial/reconciliation results can contain incomplete evidence and must not be treated as completion.","billing":"gateway_credits_spent, downstream_settlement, job_id; pending downstream settlement is not a final cost","references":"run_id, invocation_id, resource_refs, evidence_refs"},"documentation":"https://www.hivekind.ai/docs/mcp/partners#partners-archive-v2"},{"operation":"partners.get.v2","domain":"partners","tool":"domain.partners.v2","title":"Get a Channel Partner","purpose":"You have an exact partner_id and need its current metadata and network-account count.","side_effects":"Returns one workspace-scoped Partner record. Read only.","permission":"read","required_scopes":["accounts:read"],"requires_operation_id":false,"billing":"No gateway credit charge; reads saved workspace data without starting paid provider work.","required_resolved_fields":[],"next_call":{"tool":"domain.partners.v2","arguments":{"params":{"action":"describe","operation":"partners.get.v2"}}},"catalog_revision":"07a373e389289e05","when_not_to_use":"You need all Channel Partners or do not yet have a partner_id; use partners.list.v2.","description":"Use when: You have an exact partner_id and need its current metadata and network-account count. Returns/does: Returns one workspace-scoped Partner record. Read only. Do not use when: You need all Channel Partners or do not yet have a partner_id; use partners.list.v2. Identity comes from OAuth. Resolve exact IDs; use typed enums and bounded limits. Billing: Gateway and downstream billing depend on the operation; check its preview/quote and returned billing.","input_schema":{"additionalProperties":false,"properties":{"partner_id":{"description":"Exact Partner UUID returned by partners.list.v2.","format":"uuid","title":"Partner Id","type":"string"}},"required":["partner_id"],"title":"McpPartnerGetInputV2","type":"object"},"output_schema":{"additionalProperties":false,"properties":{"partner_id":{"format":"uuid","title":"Partner Id","type":"string"},"workspace_id":{"format":"uuid","title":"Workspace Id","type":"string"},"account_id":{"format":"uuid","title":"Account Id","type":"string"},"name":{"maxLength":160,"minLength":1,"title":"Name","type":"string"},"domain":{"anyOf":[{"maxLength":255,"type":"string"},{"type":"null"}],"default":null,"title":"Domain"},"description":{"anyOf":[{"type":"string"},{"type":"null"}],"default":null,"title":"Description"},"partner_type":{"const":"Channel","default":"Channel","title":"Partner Type","type":"string"},"status":{"enum":["Active","Inactive"],"title":"Status","type":"string"},"owner_id":{"anyOf":[{"format":"uuid","type":"string"},{"type":"null"}],"default":null,"title":"Owner Id"},"owner_name":{"anyOf":[{"maxLength":255,"type":"string"},{"type":"null"}],"default":null,"title":"Owner Name"},"network_account_count":{"default":0,"minimum":0,"title":"Network Account Count","type":"integer"},"version_number":{"minimum":1,"title":"Version Number","type":"integer"},"version_label":{"anyOf":[{"type":"string"},{"type":"null"}],"default":null,"title":"Version Label"},"archived_at":{"anyOf":[{"format":"date-time","type":"string"},{"type":"null"}],"default":null,"title":"Archived At"},"archived_by":{"anyOf":[{"format":"uuid","type":"string"},{"type":"null"}],"default":null,"title":"Archived By"},"created_at":{"format":"date-time","title":"Created At","type":"string"},"updated_at":{"format":"date-time","title":"Updated At","type":"string"}},"required":["partner_id","workspace_id","account_id","name","status","version_number","created_at","updated_at"],"title":"PartnerGetResultV2","type":"object"},"example":{"tool":"domain.partners.v2","arguments":{"params":{"action":"invoke","operation":"partners.get.v2","arguments":{"partner_id":"00000000-0000-4000-8000-000000000001"},"operation_id":"00000000-0000-4000-8000-000000000003"}},"notice":"Fictional fixture IDs and example text. Resolve real IDs, use returned preview tokens and approve exact side effects before execution. Input validation is not proof of provider readiness or a successful business outcome."},"workflow_steps":[],"approval_policy":null,"idempotency_policy":"read_only","gateway_credit_code":null,"identity":"Workspace, actor and consent come from OAuth; do not supply identity fields.","retry":"Keep the same operation and operation_id when retrying identical work. Reconcile an uncertain result before new work; never replay an old V1 write under a new V2 ID.","completion":"Check status, execution_state, error_code, output and evidence/resource references. Queued work is not complete: poll jobs.status.get.v2 in domain.workspace.v2. For read-back verification require read_back_verified=true where returned; reconcile failures without creating another object.","result_envelope":{"status":"completed | partial | cancelled | failed","execution_state":"terminal | queued | reconciliation_required","output":"Completed results validate against output_schema; partial/reconciliation results can contain incomplete evidence and must not be treated as completion.","billing":"gateway_credits_spent, downstream_settlement, job_id; pending downstream settlement is not a final cost","references":"run_id, invocation_id, resource_refs, evidence_refs"},"documentation":"https://www.hivekind.ai/docs/mcp/partners#partners-get-v2"},{"operation":"partners.list.v2","domain":"partners","tool":"domain.partners.v2","title":"List Channel Partners","purpose":"You need the current active Library version and stable IDs of the workspace's Channel Partners.","side_effects":"Returns current Partner records and their network-account counts. Read only.","permission":"read","required_scopes":["accounts:read"],"requires_operation_id":false,"billing":"No gateway credit charge; reads saved workspace data without starting paid provider work.","required_resolved_fields":[],"next_call":{"tool":"domain.partners.v2","arguments":{"params":{"action":"describe","operation":"partners.list.v2"}}},"catalog_revision":"07a373e389289e05","when_not_to_use":"You already have one exact partner_id; use partners.get.v2.","description":"Use when: You need the current active Library version and stable IDs of the workspace's Channel Partners. Returns/does: Returns current Partner records and their network-account counts. Read only. Do not use when: You already have one exact partner_id; use partners.get.v2. Identity comes from OAuth. Resolve exact IDs; use typed enums and bounded limits. Billing: Gateway and downstream billing depend on the operation; check its preview/quote and returned billing.","input_schema":{"additionalProperties":false,"properties":{},"title":"McpPartnersListInputV2","type":"object"},"output_schema":{"$defs":{"PartnerRecordV2":{"additionalProperties":false,"properties":{"partner_id":{"format":"uuid","title":"Partner Id","type":"string"},"workspace_id":{"format":"uuid","title":"Workspace Id","type":"string"},"account_id":{"format":"uuid","title":"Account Id","type":"string"},"name":{"maxLength":160,"minLength":1,"title":"Name","type":"string"},"domain":{"anyOf":[{"maxLength":255,"type":"string"},{"type":"null"}],"default":null,"title":"Domain"},"description":{"anyOf":[{"type":"string"},{"type":"null"}],"default":null,"title":"Description"},"partner_type":{"const":"Channel","default":"Channel","title":"Partner Type","type":"string"},"status":{"enum":["Active","Inactive"],"title":"Status","type":"string"},"owner_id":{"anyOf":[{"format":"uuid","type":"string"},{"type":"null"}],"default":null,"title":"Owner Id"},"owner_name":{"anyOf":[{"maxLength":255,"type":"string"},{"type":"null"}],"default":null,"title":"Owner Name"},"network_account_count":{"default":0,"minimum":0,"title":"Network Account Count","type":"integer"},"version_number":{"minimum":1,"title":"Version Number","type":"integer"},"version_label":{"anyOf":[{"type":"string"},{"type":"null"}],"default":null,"title":"Version Label"},"archived_at":{"anyOf":[{"format":"date-time","type":"string"},{"type":"null"}],"default":null,"title":"Archived At"},"archived_by":{"anyOf":[{"format":"uuid","type":"string"},{"type":"null"}],"default":null,"title":"Archived By"},"created_at":{"format":"date-time","title":"Created At","type":"string"},"updated_at":{"format":"date-time","title":"Updated At","type":"string"}},"required":["partner_id","workspace_id","account_id","name","status","version_number","created_at","updated_at"],"title":"PartnerRecordV2","type":"object"}},"additionalProperties":false,"properties":{"items":{"default":[],"items":{"$ref":"#/$defs/PartnerRecordV2"},"maxItems":500,"title":"Items","type":"array"}},"title":"PartnersListResultV2","type":"object"},"example":{"tool":"domain.partners.v2","arguments":{"params":{"action":"invoke","operation":"partners.list.v2","arguments":{},"operation_id":"00000000-0000-4000-8000-000000000003"}},"notice":"Fictional fixture IDs and example text. Resolve real IDs, use returned preview tokens and approve exact side effects before execution. Input validation is not proof of provider readiness or a successful business outcome."},"workflow_steps":[],"approval_policy":null,"idempotency_policy":"read_only","gateway_credit_code":null,"identity":"Workspace, actor and consent come from OAuth; do not supply identity fields.","retry":"Keep the same operation and operation_id when retrying identical work. Reconcile an uncertain result before new work; never replay an old V1 write under a new V2 ID.","completion":"Check status, execution_state, error_code, output and evidence/resource references. Queued work is not complete: poll jobs.status.get.v2 in domain.workspace.v2. For read-back verification require read_back_verified=true where returned; reconcile failures without creating another object.","result_envelope":{"status":"completed | partial | cancelled | failed","execution_state":"terminal | queued | reconciliation_required","output":"Completed results validate against output_schema; partial/reconciliation results can contain incomplete evidence and must not be treated as completion.","billing":"gateway_credits_spent, downstream_settlement, job_id; pending downstream settlement is not a final cost","references":"run_id, invocation_id, resource_refs, evidence_refs"},"documentation":"https://www.hivekind.ai/docs/mcp/partners#partners-list-v2"},{"operation":"partners.network.accounts.get.v2","domain":"partners","tool":"domain.partners.v2","title":"Get a Partner's network accounts","purpose":"You have an exact partner_id and need every target Account route supplied by that Partner, including stale or unusable route states.","side_effects":"Returns Partner-to-account route states and freshness. Read only.","permission":"read","required_scopes":["accounts:read"],"requires_operation_id":false,"billing":"No gateway credit charge; reads saved workspace data without starting paid provider work.","required_resolved_fields":[],"next_call":{"tool":"domain.partners.v2","arguments":{"params":{"action":"describe","operation":"partners.network.accounts.get.v2"}}},"catalog_revision":"07a373e389289e05","when_not_to_use":"You need all access sources for one target Account; use network.account.access.get.v2.","description":"Use when: You have an exact partner_id and need every target Account route supplied by that Partner, including stale or unusable route states. Returns/does: Returns Partner-to-account route states and freshness. Read only. Do not use when: You need all access sources for one target Account; use network.account.access.get.v2. Identity comes from OAuth. Resolve exact IDs; use typed enums and bounded limits. Billing: Gateway and downstream billing depend on the operation; check its preview/quote and returned billing.","input_schema":{"additionalProperties":false,"properties":{"partner_id":{"description":"Exact Partner UUID returned by partners.list.v2.","format":"uuid","title":"Partner Id","type":"string"}},"required":["partner_id"],"title":"McpPartnerNetworkAccountsGetInputV2","type":"object"},"output_schema":{"$defs":{"PartnerNetworkAccountV2":{"additionalProperties":false,"properties":{"route_id":{"format":"uuid","title":"Route Id","type":"string"},"account_id":{"format":"uuid","title":"Account Id","type":"string"},"name":{"maxLength":255,"minLength":1,"title":"Name","type":"string"},"domain":{"anyOf":[{"maxLength":255,"type":"string"},{"type":"null"}],"default":null,"title":"Domain"},"account_type":{"anyOf":[{"maxLength":64,"type":"string"},{"type":"null"}],"default":null,"title":"Account Type"},"relationship_status":{"enum":["confirmed","sourced","stale","revoked","unavailable"],"title":"Relationship Status","type":"string"},"introduction_status":{"enum":["not_requested","requested","introduced","declined","unavailable"],"title":"Introduction Status","type":"string"},"last_confirmed_at":{"anyOf":[{"format":"date-time","type":"string"},{"type":"null"}],"default":null,"title":"Last Confirmed At"},"stale_after_at":{"anyOf":[{"format":"date-time","type":"string"},{"type":"null"}],"default":null,"title":"Stale After At"},"network_strength":{"anyOf":[{"maximum":3,"minimum":0,"type":"integer"},{"type":"null"}],"default":null,"title":"Network Strength"}},"required":["route_id","account_id","name","relationship_status","introduction_status"],"title":"PartnerNetworkAccountV2","type":"object"}},"additionalProperties":false,"properties":{"items":{"default":[],"items":{"$ref":"#/$defs/PartnerNetworkAccountV2"},"maxItems":5000,"title":"Items","type":"array"}},"title":"PartnerNetworkAccountsGetResultV2","type":"object"},"example":{"tool":"domain.partners.v2","arguments":{"params":{"action":"invoke","operation":"partners.network.accounts.get.v2","arguments":{"partner_id":"00000000-0000-4000-8000-000000000001"},"operation_id":"00000000-0000-4000-8000-000000000003"}},"notice":"Fictional fixture IDs and example text. Resolve real IDs, use returned preview tokens and approve exact side effects before execution. Input validation is not proof of provider readiness or a successful business outcome."},"workflow_steps":[],"approval_policy":null,"idempotency_policy":"read_only","gateway_credit_code":null,"identity":"Workspace, actor and consent come from OAuth; do not supply identity fields.","retry":"Keep the same operation and operation_id when retrying identical work. Reconcile an uncertain result before new work; never replay an old V1 write under a new V2 ID.","completion":"Check status, execution_state, error_code, output and evidence/resource references. Queued work is not complete: poll jobs.status.get.v2 in domain.workspace.v2. For read-back verification require read_back_verified=true where returned; reconcile failures without creating another object.","result_envelope":{"status":"completed | partial | cancelled | failed","execution_state":"terminal | queued | reconciliation_required","output":"Completed results validate against output_schema; partial/reconciliation results can contain incomplete evidence and must not be treated as completion.","billing":"gateway_credits_spent, downstream_settlement, job_id; pending downstream settlement is not a final cost","references":"run_id, invocation_id, resource_refs, evidence_refs"},"documentation":"https://www.hivekind.ai/docs/mcp/partners#partners-network-accounts-get-v2"},{"operation":"partners.network.import.preview.v2","domain":"partners","tool":"domain.partners.v2","title":"Preview a Partner network import","purpose":"You have a CSV or structured company list supplied by an exact Channel Partner and need dedupe, mapping, and new-versus-existing counts before adding routes.","side_effects":"Stages and previews the complete company list without creating Accounts or Partner routes. Returns an import token for the matching start tool.","permission":"propose","required_scopes":["runs:create"],"requires_operation_id":true,"billing":"No gateway rate is configured. Check the Core workflow preview/quote for downstream charges and final settlement.","required_resolved_fields":["partner_account_id"],"next_call":{"tool":"domain.partners.v2","arguments":{"params":{"action":"describe","operation":"partners.network.import.preview.v2"}}},"catalog_revision":"07a373e389289e05","when_not_to_use":"You are setting one known account route; use partners.network.route.set.v2.","description":"Use when: You have a CSV or structured company list supplied by an exact Channel Partner and need dedupe, mapping, and new-versus-existing counts before adding routes. Returns/does: Stages and previews the complete company list without creating Accounts or Partner routes. Returns an import token for the matching start tool. Do not use when: You are setting one known account route; use partners.network.route.set.v2. Identity comes from OAuth. Resolve exact IDs; use typed enums and bounded limits. Billing: Gateway and downstream billing depend on the operation; check its preview/quote and returned billing.","input_schema":{"$defs":{"CompanyInputV1":{"additionalProperties":false,"description":"Fields mirror the account CSV importer's canonical columns exactly, so a\nstructured row and an uploaded file take the same path with no remapping.","properties":{"name":{"maxLength":255,"minLength":1,"title":"Name","type":"string"},"domain":{"anyOf":[{"maxLength":255,"type":"string"},{"type":"null"}],"default":null,"title":"Domain"},"industry":{"anyOf":[{"maxLength":255,"type":"string"},{"type":"null"}],"default":null,"title":"Industry"},"city":{"anyOf":[{"maxLength":255,"type":"string"},{"type":"null"}],"default":null,"title":"City"},"country":{"anyOf":[{"maxLength":255,"type":"string"},{"type":"null"}],"default":null,"title":"Country"},"employee_count":{"anyOf":[{"maximum":10000000,"minimum":0,"type":"integer"},{"type":"null"}],"default":null,"title":"Employee Count"},"annual_revenue":{"anyOf":[{"maxLength":64,"type":"string"},{"type":"null"}],"default":null,"title":"Annual Revenue"},"account_type":{"anyOf":[{"maxLength":64,"type":"string"},{"type":"null"}],"default":null,"title":"Account Type"},"account_tier":{"anyOf":[{"maxLength":64,"type":"string"},{"type":"null"}],"default":null,"title":"Account Tier"},"owner_email":{"anyOf":[{"maxLength":320,"type":"string"},{"type":"null"}],"default":null,"title":"Owner Email"}},"required":["name"],"title":"CompanyInputV1","type":"object"}},"additionalProperties":false,"properties":{"csv_text":{"anyOf":[{"type":"string"},{"type":"null"}],"default":null,"description":"Verbatim contents of a CSV the caller holds. Send the file exactly as it is: never retype values, reorder or drop rows, summarise, or leave columns out. The server maps arbitrary column layouts itself, and the preview reports which columns it reads as source-system noise, and why, in column_policy. Decide there with the user -- not here.","title":"Csv Text"},"exclude_columns":{"default":[],"description":"Source columns to leave out, after the user agreed to it. Leave empty on a first preview. Naming a column the server protects, or one that is mapped to a canonical field, fails the whole call.","items":{"type":"string"},"maxItems":200,"title":"Exclude Columns","type":"array"},"keep_columns":{"default":[],"description":"Source columns to retain whatever the server makes of them. Use it when the user says a column matters. Outranks exclude_columns.","items":{"type":"string"},"maxItems":200,"title":"Keep Columns","type":"array"},"tags":{"anyOf":[{"items":{"maxLength":64,"minLength":1,"type":"string"},"maxItems":10,"type":"array"},{"type":"null"}],"default":null,"description":"Account tags (1-64 characters each, at most 10) added to every account this import creates or matches -- existing accounts get the tag and nothing else on them changes. Matched case-insensitively against existing tags; resolve them with accounts.tags.list.v2 first. The preview's import_token locks these in: omit tags on the commit to reuse them, and a different list is refused. Separate from the source badge.","title":"Tags"},"companies":{"default":[],"description":"Companies used by the partner network import preview input v2 operation.","items":{"$ref":"#/$defs/CompanyInputV1"},"maxItems":2000,"title":"Companies","type":"array"},"partner_account_id":{"anyOf":[{"format":"uuid","type":"string"},{"type":"null"}],"default":null,"description":"Exact active Channel Partner Account whose network supplied these companies. When set, existing Accounts are preserved and routes are attached instead of reclassifying them.","title":"Partner Account Id"},"partner_relationship_status":{"anyOf":[{"enum":["confirmed","sourced"],"type":"string"},{"type":"null"}],"default":null,"description":"Required with partner_account_id. Confirmed means the Partner attests a usable relationship; sourced stays visible but adds no strength.","title":"Partner Relationship Status"}},"title":"McpPartnerNetworkImportPreviewInputV2","type":"object"},"output_schema":{"$defs":{"ExcludedColumnV1":{"additionalProperties":false,"description":"One source column the server left out, or proposes leaving out.","properties":{"column":{"maxLength":255,"title":"Column","type":"string"},"reason":{"enum":["empty_column","opaque_source_id","payment_metadata","source_system_link","caller_selected"],"title":"Reason","type":"string"},"detail":{"default":"","maxLength":500,"title":"Detail","type":"string"}},"required":["column","reason"],"title":"ExcludedColumnV1","type":"object"},"ImportColumnPolicyV1":{"additionalProperties":false,"description":"What the server made of the file's columns.\n\n``applied`` is the field that matters. False -- the default for any preview\nthat was not given a selection -- means ``excluded_columns`` is a proposal\nand every column was still imported. Show it to the user, take their answer,\nand send it back as ``exclude_columns`` if they agree. Never act on it alone.","properties":{"version":{"default":1,"title":"Version","type":"integer"},"applied":{"default":false,"title":"Applied","type":"boolean"},"retained_columns":{"default":[],"items":{"type":"string"},"title":"Retained Columns","type":"array"},"excluded_columns":{"default":[],"items":{"$ref":"#/$defs/ExcludedColumnV1"},"title":"Excluded Columns","type":"array"}},"title":"ImportColumnPolicyV1","type":"object"},"JsonValue":{}},"additionalProperties":false,"properties":{"column_policy":{"anyOf":[{"$ref":"#/$defs/ImportColumnPolicyV1"},{"type":"null"}],"default":null,"description":"What the server made of the file's columns. When applied is false this is a proposal only and nothing was left out."},"import_token":{"anyOf":[{"maxLength":255,"type":"string"},{"type":"null"}],"default":null,"description":"Pass to the matching commit tool to reuse exactly these rows. Null when no cache backend was reachable -- resend the data instead.","title":"Import Token"},"rows_parsed":{"default":0,"minimum":0,"title":"Rows Parsed","type":"integer"},"column_mapping":{"additionalProperties":{"type":"string"},"title":"Column Mapping","type":"object"},"matches_existing_accounts":{"default":0,"minimum":0,"title":"Matches Existing Accounts","type":"integer"},"new_companies":{"default":0,"minimum":0,"title":"New Companies","type":"integer"},"sample_rows":{"default":[],"items":{"additionalProperties":{"$ref":"#/$defs/JsonValue"},"type":"object"},"maxItems":5,"title":"Sample Rows","type":"array"},"tags":{"default":[],"description":"Account tags the import_token is locked to.","items":{"type":"string"},"title":"Tags","type":"array"},"accounts_to_tag":{"default":0,"description":"Accounts the commit would tag: matches_existing_accounts plus new_companies. Zero when no tags were given.","minimum":0,"title":"Accounts To Tag","type":"integer"}},"title":"PartnerNetworkImportPreviewResultV2","type":"object"},"example":{"tool":"domain.partners.v2","arguments":{"params":{"action":"invoke","operation":"partners.network.import.preview.v2","arguments":{"companies":[{"domain":"example.com","name":"Example company"}],"partner_account_id":"00000000-0000-4000-8000-000000000001","partner_relationship_status":"confirmed"},"operation_id":"00000000-0000-4000-8000-000000000003"}},"notice":"Fictional fixture IDs and example text. Resolve real IDs, use returned preview tokens and approve exact side effects before execution. Input validation is not proof of provider readiness or a successful business outcome."},"workflow_steps":["partners.network.import.preview.v2","partners.network.import.start.v2","jobs.status.get.v2","partners.network.accounts.get.v2"],"approval_policy":null,"idempotency_policy":"run_task_import_preview","gateway_credit_code":null,"identity":"Workspace, actor and consent come from OAuth; do not supply identity fields.","retry":"Keep the same operation and operation_id when retrying identical work. Reconcile an uncertain result before new work; never replay an old V1 write under a new V2 ID.","completion":"Check status, execution_state, error_code, output and evidence/resource references. Queued work is not complete: poll jobs.status.get.v2 in domain.workspace.v2. For read-back verification require read_back_verified=true where returned; reconcile failures without creating another object.","result_envelope":{"status":"completed | partial | cancelled | failed","execution_state":"terminal | queued | reconciliation_required","output":"Completed results validate against output_schema; partial/reconciliation results can contain incomplete evidence and must not be treated as completion.","billing":"gateway_credits_spent, downstream_settlement, job_id; pending downstream settlement is not a final cost","references":"run_id, invocation_id, resource_refs, evidence_refs"},"documentation":"https://www.hivekind.ai/docs/mcp/partners#partners-network-import-preview-v2"},{"operation":"partners.network.import.start.v2","domain":"partners","tool":"domain.partners.v2","title":"Start a Partner network import","purpose":"The user approved the exact previewed company list, Partner Account, and confirmed-or-sourced relationship state.","side_effects":"Queues creation of missing Prospect Accounts and attaches routes to existing Accounts without overwriting them. Poll jobs.status.get.v2; nothing is sent or auto-scored.","permission":"execute","required_scopes":["actions:execute"],"requires_operation_id":true,"billing":"No gateway rate is configured. Check the Core workflow preview/quote for downstream charges and final settlement.","required_resolved_fields":["partner_account_id","import_token"],"next_call":{"tool":"domain.partners.v2","arguments":{"params":{"action":"describe","operation":"partners.network.import.start.v2"}}},"catalog_revision":"07a373e389289e05","when_not_to_use":"You have not previewed the list or need to create the Partner first with partners.save.v2.","description":"Use when: The user approved the exact previewed company list, Partner Account, and confirmed-or-sourced relationship state. Returns/does: Queues creation of missing Prospect Accounts and attaches routes to existing Accounts without overwriting them. Poll jobs.status.get.v2; nothing is sent or auto-scored. Do not use when: You have not previewed the list or need to create the Partner first with partners.save.v2. Identity comes from OAuth. Resolve exact IDs; use typed enums and bounded limits. Billing: Gateway and downstream billing depend on the operation; check its preview/quote and returned billing.","input_schema":{"$defs":{"CompanyInputV1":{"additionalProperties":false,"description":"Fields mirror the account CSV importer's canonical columns exactly, so a\nstructured row and an uploaded file take the same path with no remapping.","properties":{"name":{"maxLength":255,"minLength":1,"title":"Name","type":"string"},"domain":{"anyOf":[{"maxLength":255,"type":"string"},{"type":"null"}],"default":null,"title":"Domain"},"industry":{"anyOf":[{"maxLength":255,"type":"string"},{"type":"null"}],"default":null,"title":"Industry"},"city":{"anyOf":[{"maxLength":255,"type":"string"},{"type":"null"}],"default":null,"title":"City"},"country":{"anyOf":[{"maxLength":255,"type":"string"},{"type":"null"}],"default":null,"title":"Country"},"employee_count":{"anyOf":[{"maximum":10000000,"minimum":0,"type":"integer"},{"type":"null"}],"default":null,"title":"Employee Count"},"annual_revenue":{"anyOf":[{"maxLength":64,"type":"string"},{"type":"null"}],"default":null,"title":"Annual Revenue"},"account_type":{"anyOf":[{"maxLength":64,"type":"string"},{"type":"null"}],"default":null,"title":"Account Type"},"account_tier":{"anyOf":[{"maxLength":64,"type":"string"},{"type":"null"}],"default":null,"title":"Account Tier"},"owner_email":{"anyOf":[{"maxLength":320,"type":"string"},{"type":"null"}],"default":null,"title":"Owner Email"}},"required":["name"],"title":"CompanyInputV1","type":"object"},"ImportSourceInputV1":{"additionalProperties":false,"description":"Where this list came from. Every record the import creates or matches is badged with it.","properties":{"source_id":{"anyOf":[{"format":"uuid","type":"string"},{"type":"null"}],"default":null,"description":"Add to an existing source instead of creating one.","title":"Source Id"},"name":{"anyOf":[{"maxLength":255,"type":"string"},{"type":"null"}],"default":null,"description":"New source name, e.g. 'AI for CFOs workshop'. Omit to name it after the file.","title":"Name"},"kind":{"default":"list","enum":["workshop","event","webinar","list","other"],"title":"Kind","type":"string"},"occurred_on":{"anyOf":[{"format":"date","type":"string"},{"type":"null"}],"default":null,"title":"Occurred On"},"details":{"additionalProperties":{"anyOf":[{"type":"string"},{"type":"integer"},{"type":"number"},{"type":"boolean"},{"type":"null"}]},"description":"Location, host, link, notes. Flat: at most 20 keys (each up to 64 characters), values are text up to 1000 characters, numbers, booleans or null. No nested objects or lists.","title":"Details","type":"object"}},"title":"ImportSourceInputV1","type":"object"}},"additionalProperties":false,"properties":{"csv_text":{"anyOf":[{"type":"string"},{"type":"null"}],"default":null,"description":"Verbatim contents of a CSV the caller holds. Send the file exactly as it is: never retype values, reorder or drop rows, summarise, or leave columns out. The server maps arbitrary column layouts itself, and the preview reports which columns it reads as source-system noise, and why, in column_policy. Decide there with the user -- not here.","title":"Csv Text"},"exclude_columns":{"default":[],"description":"Source columns to leave out, after the user agreed to it. Leave empty on a first preview. Naming a column the server protects, or one that is mapped to a canonical field, fails the whole call.","items":{"type":"string"},"maxItems":200,"title":"Exclude Columns","type":"array"},"keep_columns":{"default":[],"description":"Source columns to retain whatever the server makes of them. Use it when the user says a column matters. Outranks exclude_columns.","items":{"type":"string"},"maxItems":200,"title":"Keep Columns","type":"array"},"tags":{"anyOf":[{"items":{"maxLength":64,"minLength":1,"type":"string"},"maxItems":10,"type":"array"},{"type":"null"}],"default":null,"description":"Account tags (1-64 characters each, at most 10) added to every account this import creates or matches -- existing accounts get the tag and nothing else on them changes. Matched case-insensitively against existing tags; resolve them with accounts.tags.list.v2 first. The preview's import_token locks these in: omit tags on the commit to reuse them, and a different list is refused. Separate from the source badge.","title":"Tags"},"companies":{"default":[],"description":"Companies used by the partner network import start input v2 operation.","items":{"$ref":"#/$defs/CompanyInputV1"},"maxItems":2000,"title":"Companies","type":"array"},"partner_account_id":{"anyOf":[{"format":"uuid","type":"string"},{"type":"null"}],"default":null,"description":"Exact active Channel Partner Account whose network supplied these companies. When set, existing Accounts are preserved and routes are attached instead of reclassifying them.","title":"Partner Account Id"},"partner_relationship_status":{"anyOf":[{"enum":["confirmed","sourced"],"type":"string"},{"type":"null"}],"default":null,"description":"Required with partner_account_id. Confirmed means the Partner attests a usable relationship; sourced stays visible but adds no strength.","title":"Partner Relationship Status"},"source":{"anyOf":[{"$ref":"#/$defs/ImportSourceInputV1"},{"type":"null"}],"default":null,"description":"Label this list so every account and contact it creates or matches is badged with where it came from (workshop, event, webinar, list). The id comes back as source_id on the result."},"action_proposal_id":{"anyOf":[{"format":"uuid","type":"string"},{"type":"null"}],"default":null,"description":"Optional. Hivekind fills this from the MCP consent grant.","title":"Action Proposal Id"},"import_token":{"anyOf":[{"maxLength":255,"type":"string"},{"type":"null"}],"default":null,"description":"Import token used by the partner network import start input v2 operation.","title":"Import Token"}},"title":"McpMcpPartnerNetworkImportStartInputV2","type":"object"},"output_schema":{"additionalProperties":false,"properties":{"job_id":{"maxLength":255,"minLength":1,"title":"Job Id","type":"string"},"status":{"default":"queued","maxLength":32,"minLength":1,"title":"Status","type":"string"},"queued":{"default":true,"title":"Queued","type":"boolean"},"rows_parsed":{"default":0,"minimum":0,"title":"Rows Parsed","type":"integer"},"source_id":{"anyOf":[{"format":"uuid","type":"string"},{"type":"null"}],"default":null,"description":"Source the imported records are badged with.","title":"Source Id"},"tags":{"default":[],"description":"Account tags added to every account this import created or matched.","items":{"type":"string"},"title":"Tags","type":"array"}},"required":["job_id"],"title":"PartnerNetworkImportStartResultV2","type":"object"},"example":{"tool":"domain.partners.v2","arguments":{"params":{"action":"invoke","operation":"partners.network.import.start.v2","arguments":{"import_token":"use-the-exact-token-from-the-approved-preview","partner_account_id":"00000000-0000-4000-8000-000000000001","partner_relationship_status":"confirmed"},"operation_id":"00000000-0000-4000-8000-000000000003"}},"notice":"Fictional fixture IDs and example text. Resolve real IDs, use returned preview tokens and approve exact side effects before execution. Input validation is not proof of provider readiness or a successful business outcome."},"workflow_steps":["partners.network.import.start.v2","jobs.status.get.v2","partners.network.accounts.get.v2"],"approval_policy":"exact_scope_single_action","idempotency_policy":"approved_action_outbox","gateway_credit_code":null,"identity":"Workspace, actor and consent come from OAuth; do not supply identity fields.","retry":"Keep the same operation and operation_id when retrying identical work. Reconcile an uncertain result before new work; never replay an old V1 write under a new V2 ID.","completion":"Check status, execution_state, error_code, output and evidence/resource references. Queued work is not complete: poll jobs.status.get.v2 in domain.workspace.v2. For read-back verification require read_back_verified=true where returned; reconcile failures without creating another object.","result_envelope":{"status":"completed | partial | cancelled | failed","execution_state":"terminal | queued | reconciliation_required","output":"Completed results validate against output_schema; partial/reconciliation results can contain incomplete evidence and must not be treated as completion.","billing":"gateway_credits_spent, downstream_settlement, job_id; pending downstream settlement is not a final cost","references":"run_id, invocation_id, resource_refs, evidence_refs"},"documentation":"https://www.hivekind.ai/docs/mcp/partners#partners-network-import-start-v2"},{"operation":"partners.network.route.set.v2","domain":"partners","tool":"domain.partners.v2","title":"Set a Channel Partner route","purpose":"The user approved creating or updating one exact Partner-to-target-Account relationship and its introduction state.","side_effects":"Upserts one route. Revoked or unavailable states deactivate it; a confirmed route cannot be silently downgraded to sourced.","permission":"execute","required_scopes":["actions:execute"],"requires_operation_id":true,"billing":"No gateway rate is configured. Check the Core workflow preview/quote for downstream charges and final settlement.","required_resolved_fields":["partner_id","target_account_id"],"next_call":{"tool":"domain.partners.v2","arguments":{"params":{"action":"describe","operation":"partners.network.route.set.v2"}}},"catalog_revision":"07a373e389289e05","when_not_to_use":"You have not resolved both IDs or only need to inspect existing access.","description":"Use when: The user approved creating or updating one exact Partner-to-target-Account relationship and its introduction state. Returns/does: Upserts one route. Revoked or unavailable states deactivate it; a confirmed route cannot be silently downgraded to sourced. Do not use when: You have not resolved both IDs or only need to inspect existing access. Identity comes from OAuth. Resolve exact IDs; use typed enums and bounded limits. Billing: Gateway and downstream billing depend on the operation; check its preview/quote and returned billing.","input_schema":{"additionalProperties":false,"properties":{"partner_id":{"description":"Exact active Partner UUID returned by partners.list.v2.","format":"uuid","title":"Partner Id","type":"string"},"target_account_id":{"description":"Exact target Account UUID returned by accounts.search.v2.","format":"uuid","title":"Target Account Id","type":"string"},"relationship_status":{"description":"Relationship status used by the partner network route set input v2 operation.","enum":["confirmed","sourced","stale","revoked","unavailable"],"title":"Relationship Status","type":"string"},"introduction_status":{"default":"not_requested","description":"Introduction status used by the partner network route set input v2 operation.","enum":["not_requested","requested","introduced","declined","unavailable"],"title":"Introduction Status","type":"string"},"last_confirmed_at":{"anyOf":[{"format":"date-time","type":"string"},{"type":"null"}],"default":null,"description":"Last confirmed at timestamp in the format accepted by the schema.","title":"Last Confirmed At"},"stale_after_at":{"anyOf":[{"format":"date-time","type":"string"},{"type":"null"}],"default":null,"description":"Stale after at timestamp in the format accepted by the schema.","title":"Stale After At"},"source_reference":{"anyOf":[{"maxLength":500,"type":"string"},{"type":"null"}],"default":null,"description":"Source reference used by the partner network route set input v2 operation.","title":"Source Reference"},"notes":{"anyOf":[{"maxLength":4000,"type":"string"},{"type":"null"}],"default":null,"description":"Notes used by the partner network route set input v2 operation.","title":"Notes"},"contact_ids":{"default":[],"description":"Optional contacts belonging to the Partner Account who support this route.","items":{"format":"uuid","type":"string"},"maxItems":200,"title":"Contact Ids","type":"array"},"action_proposal_id":{"anyOf":[{"format":"uuid","type":"string"},{"type":"null"}],"default":null,"description":"Optional. Hivekind fills this from the MCP consent grant.","title":"Action Proposal Id"}},"required":["partner_id","target_account_id","relationship_status"],"title":"McpMcpPartnerNetworkRouteSetInputV2","type":"object"},"output_schema":{"additionalProperties":false,"properties":{"route_id":{"format":"uuid","title":"Route Id","type":"string"},"account_id":{"format":"uuid","title":"Account Id","type":"string"},"name":{"maxLength":255,"minLength":1,"title":"Name","type":"string"},"domain":{"anyOf":[{"maxLength":255,"type":"string"},{"type":"null"}],"default":null,"title":"Domain"},"account_type":{"anyOf":[{"maxLength":64,"type":"string"},{"type":"null"}],"default":null,"title":"Account Type"},"relationship_status":{"enum":["confirmed","sourced","stale","revoked","unavailable"],"title":"Relationship Status","type":"string"},"introduction_status":{"enum":["not_requested","requested","introduced","declined","unavailable"],"title":"Introduction Status","type":"string"},"last_confirmed_at":{"anyOf":[{"format":"date-time","type":"string"},{"type":"null"}],"default":null,"title":"Last Confirmed At"},"stale_after_at":{"anyOf":[{"format":"date-time","type":"string"},{"type":"null"}],"default":null,"title":"Stale After At"},"network_strength":{"anyOf":[{"maximum":3,"minimum":0,"type":"integer"},{"type":"null"}],"default":null,"title":"Network Strength"}},"required":["route_id","account_id","name","relationship_status","introduction_status"],"title":"PartnerNetworkRouteSetResultV2","type":"object"},"example":{"tool":"domain.partners.v2","arguments":{"params":{"action":"invoke","operation":"partners.network.route.set.v2","arguments":{"partner_id":"00000000-0000-4000-8000-000000000001","relationship_status":"confirmed","target_account_id":"00000000-0000-4000-8000-000000000001"},"operation_id":"00000000-0000-4000-8000-000000000003"}},"notice":"Fictional fixture IDs and example text. Resolve real IDs, use returned preview tokens and approve exact side effects before execution. Input validation is not proof of provider readiness or a successful business outcome."},"workflow_steps":[],"approval_policy":"exact_scope_single_action","idempotency_policy":"approved_action_outbox","gateway_credit_code":null,"identity":"Workspace, actor and consent come from OAuth; do not supply identity fields.","retry":"Keep the same operation and operation_id when retrying identical work. Reconcile an uncertain result before new work; never replay an old V1 write under a new V2 ID.","completion":"Check status, execution_state, error_code, output and evidence/resource references. Queued work is not complete: poll jobs.status.get.v2 in domain.workspace.v2. For read-back verification require read_back_verified=true where returned; reconcile failures without creating another object.","result_envelope":{"status":"completed | partial | cancelled | failed","execution_state":"terminal | queued | reconciliation_required","output":"Completed results validate against output_schema; partial/reconciliation results can contain incomplete evidence and must not be treated as completion.","billing":"gateway_credits_spent, downstream_settlement, job_id; pending downstream settlement is not a final cost","references":"run_id, invocation_id, resource_refs, evidence_refs"},"documentation":"https://www.hivekind.ai/docs/mcp/partners#partners-network-route-set-v2"},{"operation":"partners.save.v2","domain":"partners","tool":"domain.partners.v2","title":"Create or update a Channel Partner","purpose":"The user approved creating one Channel Partner or versioning the mutable fields of an exact existing Partner.","side_effects":"Creates a Partner plus its linked Partner Account, or creates a new version of an existing Partner. Does not add network routes.","permission":"execute","required_scopes":["actions:execute"],"requires_operation_id":true,"billing":"No gateway rate is configured. Check the Core workflow preview/quote for downstream charges and final settlement.","required_resolved_fields":[],"next_call":{"tool":"domain.partners.v2","arguments":{"params":{"action":"describe","operation":"partners.save.v2"}}},"catalog_revision":"07a373e389289e05","when_not_to_use":"You only need to inspect Partners, archive one, or set an account route.","description":"Use when: The user approved creating one Channel Partner or versioning the mutable fields of an exact existing Partner. Returns/does: Creates a Partner plus its linked Partner Account, or creates a new version of an existing Partner. Does not add network routes. Do not use when: You only need to inspect Partners, archive one, or set an account route. Identity comes from OAuth. Resolve exact IDs; use typed enums and bounded limits. Billing: Gateway and downstream billing depend on the operation; check its preview/quote and returned billing.","input_schema":{"additionalProperties":false,"properties":{"partner_id":{"anyOf":[{"format":"uuid","type":"string"},{"type":"null"}],"default":null,"description":"Existing Partner UUID to update; omit only when creating a new Partner.","title":"Partner Id"},"name":{"anyOf":[{"maxLength":160,"minLength":1,"type":"string"},{"type":"null"}],"default":null,"description":"Required for create; immutable and therefore omitted for update.","title":"Name"},"domain":{"anyOf":[{"maxLength":255,"type":"string"},{"type":"null"}],"default":null,"description":"Optional domain for create; immutable and therefore omitted for update.","title":"Domain"},"description":{"anyOf":[{"type":"string"},{"type":"null"}],"default":null,"description":"Human-readable description of the record or requested outcome.","title":"Description"},"status":{"anyOf":[{"enum":["Active","Inactive"],"type":"string"},{"type":"null"}],"default":null,"description":"Status used by the partner save input v2 operation.","title":"Status"},"owner_id":{"anyOf":[{"format":"uuid","type":"string"},{"type":"null"}],"default":null,"description":"Exact owner UUID returned by a Hivekind search, list, get, preview, or resource call.","title":"Owner Id"},"clear_owner":{"default":false,"description":"Clear owner used by the partner save input v2 operation.","title":"Clear Owner","type":"boolean"},"version_label":{"anyOf":[{"maxLength":255,"type":"string"},{"type":"null"}],"default":null,"description":"Version label used by the partner save input v2 operation.","title":"Version Label"},"action_proposal_id":{"anyOf":[{"format":"uuid","type":"string"},{"type":"null"}],"default":null,"description":"Optional. Hivekind fills this from the MCP consent grant.","title":"Action Proposal Id"}},"title":"McpMcpPartnerSaveInputV2","type":"object"},"output_schema":{"additionalProperties":false,"properties":{"partner_id":{"format":"uuid","title":"Partner Id","type":"string"},"workspace_id":{"format":"uuid","title":"Workspace Id","type":"string"},"account_id":{"format":"uuid","title":"Account Id","type":"string"},"name":{"maxLength":160,"minLength":1,"title":"Name","type":"string"},"domain":{"anyOf":[{"maxLength":255,"type":"string"},{"type":"null"}],"default":null,"title":"Domain"},"description":{"anyOf":[{"type":"string"},{"type":"null"}],"default":null,"title":"Description"},"partner_type":{"const":"Channel","default":"Channel","title":"Partner Type","type":"string"},"status":{"enum":["Active","Inactive"],"title":"Status","type":"string"},"owner_id":{"anyOf":[{"format":"uuid","type":"string"},{"type":"null"}],"default":null,"title":"Owner Id"},"owner_name":{"anyOf":[{"maxLength":255,"type":"string"},{"type":"null"}],"default":null,"title":"Owner Name"},"network_account_count":{"default":0,"minimum":0,"title":"Network Account Count","type":"integer"},"version_number":{"minimum":1,"title":"Version Number","type":"integer"},"version_label":{"anyOf":[{"type":"string"},{"type":"null"}],"default":null,"title":"Version Label"},"archived_at":{"anyOf":[{"format":"date-time","type":"string"},{"type":"null"}],"default":null,"title":"Archived At"},"archived_by":{"anyOf":[{"format":"uuid","type":"string"},{"type":"null"}],"default":null,"title":"Archived By"},"created_at":{"format":"date-time","title":"Created At","type":"string"},"updated_at":{"format":"date-time","title":"Updated At","type":"string"}},"required":["partner_id","workspace_id","account_id","name","status","version_number","created_at","updated_at"],"title":"PartnerSaveResultV2","type":"object"},"example":{"tool":"domain.partners.v2","arguments":{"params":{"action":"invoke","operation":"partners.save.v2","arguments":{"name":"Example Partner"},"operation_id":"00000000-0000-4000-8000-000000000003"}},"notice":"Fictional fixture IDs and example text. Resolve real IDs, use returned preview tokens and approve exact side effects before execution. Input validation is not proof of provider readiness or a successful business outcome."},"workflow_steps":["partners.save.v2","partners.network.import.preview.v2","partners.network.import.start.v2","jobs.status.get.v2","partners.network.accounts.get.v2"],"approval_policy":"exact_scope_single_action","idempotency_policy":"approved_action_outbox","gateway_credit_code":null,"identity":"Workspace, actor and consent come from OAuth; do not supply identity fields.","retry":"Keep the same operation and operation_id when retrying identical work. Reconcile an uncertain result before new work; never replay an old V1 write under a new V2 ID.","completion":"Check status, execution_state, error_code, output and evidence/resource references. Queued work is not complete: poll jobs.status.get.v2 in domain.workspace.v2. For read-back verification require read_back_verified=true where returned; reconcile failures without creating another object.","result_envelope":{"status":"completed | partial | cancelled | failed","execution_state":"terminal | queued | reconciliation_required","output":"Completed results validate against output_schema; partial/reconciliation results can contain incomplete evidence and must not be treated as completion.","billing":"gateway_credits_spent, downstream_settlement, job_id; pending downstream settlement is not a final cost","references":"run_id, invocation_id, resource_refs, evidence_refs"},"documentation":"https://www.hivekind.ai/docs/mcp/partners#partners-save-v2"},{"operation":"pipeline.summary.v2","domain":"intelligence","tool":"domain.intelligence.v2","title":"Pipeline summary","purpose":"CRO snapshot of pipeline stages and counts.","side_effects":"Reads current workspace state.","permission":"read","required_scopes":["runs:read"],"requires_operation_id":false,"billing":"No gateway credit charge; reads saved workspace data without starting paid provider work.","required_resolved_fields":[],"next_call":{"tool":"domain.intelligence.v2","arguments":{"params":{"action":"describe","operation":"pipeline.summary.v2"}}},"catalog_revision":"07a373e389289e05","when_not_to_use":"Do not use this to list campaigns — that is campaigns.list.v2.","description":"Use when: CRO snapshot of pipeline stages and counts. Returns/does: Reads the current authorized workspace state. Do not use when: Do not use this to list campaigns — that is campaigns.list.v2. Identity comes from OAuth. Resolve exact IDs; use typed enums and bounded limits. Billing: Gateway and downstream billing depend on the operation; check its preview/quote and returned billing.","input_schema":{"additionalProperties":false,"properties":{"lookback_days":{"default":90,"description":"Number of calendar days before today to include.","maximum":730,"minimum":1,"title":"Lookback Days","type":"integer"},"maximum_opportunities":{"default":1000,"description":"Maximum opportunities used to bound matching records.","maximum":5000,"minimum":1,"title":"Maximum Opportunities","type":"integer"}},"title":"McpPublicPipelineSummaryInputV2","type":"object"},"output_schema":{"$defs":{"PipelineStageSummaryV1":{"additionalProperties":false,"properties":{"stage":{"maxLength":255,"minLength":1,"title":"Stage","type":"string"},"opportunity_count":{"minimum":0,"title":"Opportunity Count","type":"integer"},"total_value":{"anyOf":[{"minimum":0,"type":"number"},{"pattern":"^(?!^[-+.]*$)[+-]?0*\\d*\\.?\\d*$","type":"string"},{"type":"null"}],"default":null,"description":"Absent when currencies are mixed or unknown; never an unconverted sum.","title":"Total Value"},"won_count":{"minimum":0,"title":"Won Count","type":"integer"},"values_by_currency":{"additionalProperties":{"anyOf":[{"type":"number"},{"pattern":"^(?!^[-+.]*$)[+-]?0*\\d*\\.?\\d*$","type":"string"}]},"title":"Values By Currency","type":"object"}},"required":["stage","opportunity_count","won_count"],"title":"PipelineStageSummaryV1","type":"object"}},"additionalProperties":false,"description":"V2 result for pipeline.summary.v2; preserves the established validators.","properties":{"opportunity_count":{"minimum":0,"title":"Opportunity Count","type":"integer"},"total_value":{"anyOf":[{"minimum":0,"type":"number"},{"pattern":"^(?!^[-+.]*$)[+-]?0*\\d*\\.?\\d*$","type":"string"},{"type":"null"}],"default":null,"description":"Absent when currencies are mixed or unknown; never an unconverted sum.","title":"Total Value"},"currency":{"anyOf":[{"maxLength":32,"type":"string"},{"type":"null"}],"default":null,"title":"Currency"},"latest_snapshot_at":{"anyOf":[{"format":"date-time","type":"string"},{"type":"null"}],"default":null,"title":"Latest Snapshot At"},"stages":{"default":[],"items":{"$ref":"#/$defs/PipelineStageSummaryV1"},"maxItems":100,"title":"Stages","type":"array"},"truncated":{"default":false,"title":"Truncated","type":"boolean"},"values_by_currency":{"additionalProperties":{"anyOf":[{"type":"number"},{"pattern":"^(?!^[-+.]*$)[+-]?0*\\d*\\.?\\d*$","type":"string"}]},"title":"Values By Currency","type":"object"}},"required":["opportunity_count"],"title":"PublicPipelineSummaryResultV2","type":"object"},"example":{"tool":"domain.intelligence.v2","arguments":{"params":{"action":"invoke","operation":"pipeline.summary.v2","arguments":{},"operation_id":"00000000-0000-4000-8000-000000000003"}},"notice":"Fictional fixture IDs and example text. Resolve real IDs, use returned preview tokens and approve exact side effects before execution. Input validation is not proof of provider readiness or a successful business outcome."},"workflow_steps":[],"approval_policy":null,"idempotency_policy":"read_only","gateway_credit_code":null,"identity":"Workspace, actor and consent come from OAuth; do not supply identity fields.","retry":"Keep the same operation and operation_id when retrying identical work. Reconcile an uncertain result before new work; never replay an old V1 write under a new V2 ID.","completion":"Check status, execution_state, error_code, output and evidence/resource references. Queued work is not complete: poll jobs.status.get.v2 in domain.workspace.v2. For read-back verification require read_back_verified=true where returned; reconcile failures without creating another object.","result_envelope":{"status":"completed | partial | cancelled | failed","execution_state":"terminal | queued | reconciliation_required","output":"Completed results validate against output_schema; partial/reconciliation results can contain incomplete evidence and must not be treated as completion.","billing":"gateway_credits_spent, downstream_settlement, job_id; pending downstream settlement is not a final cost","references":"run_id, invocation_id, resource_refs, evidence_refs"},"documentation":"https://www.hivekind.ai/docs/mcp/intelligence#pipeline-summary-v2"},{"operation":"playbooks.archive.v2","domain":"content","tool":"domain.content.v2","title":"Archive a playbook","purpose":"Archive a playbook you no longer need.","side_effects":"Archives the playbook.","permission":"execute","required_scopes":["actions:execute"],"requires_operation_id":true,"billing":"No gateway rate is configured. Check the Core workflow preview/quote for downstream charges and final settlement.","required_resolved_fields":[],"next_call":{"tool":"domain.content.v2","arguments":{"params":{"action":"describe","operation":"playbooks.archive.v2"}}},"catalog_revision":"07a373e389289e05","when_not_to_use":"Do not use this to pause a campaign.","description":"Use when: Archive a playbook you no longer need. Returns/does: Archives the playbook. Do not use when: Do not use this to pause a campaign. Identity comes from OAuth. Resolve exact IDs; use typed enums and bounded limits. Billing: Gateway and downstream billing depend on the operation; check its preview/quote and returned billing.","input_schema":{"additionalProperties":false,"properties":{"action_proposal_id":{"anyOf":[{"format":"uuid","type":"string"},{"type":"null"}],"default":null,"description":"Optional. Hivekind fills this from the MCP consent grant.","title":"Action Proposal Id"},"template_id":{"description":"Exact template UUID returned by a Hivekind search, list, get, preview, or resource call.","format":"uuid","title":"Template Id","type":"string"}},"required":["template_id"],"title":"McpMcpPublicPlaybooksArchiveInputV2","type":"object"},"output_schema":{"additionalProperties":false,"description":"V2 result for playbooks.archive.v2; preserves the established validators.","properties":{"template_id":{"format":"uuid","title":"Template Id","type":"string"},"name":{"maxLength":255,"minLength":1,"title":"Name","type":"string"}},"required":["template_id","name"],"title":"PublicPlaybooksArchiveResultV2","type":"object"},"example":{"tool":"domain.content.v2","arguments":{"params":{"action":"invoke","operation":"playbooks.archive.v2","arguments":{"template_id":"00000000-0000-4000-8000-000000000001"},"operation_id":"00000000-0000-4000-8000-000000000003"}},"notice":"Fictional fixture IDs and example text. Resolve real IDs, use returned preview tokens and approve exact side effects before execution. Input validation is not proof of provider readiness or a successful business outcome."},"workflow_steps":[],"approval_policy":"exact_scope_single_action","idempotency_policy":"approved_action_outbox","gateway_credit_code":null,"identity":"Workspace, actor and consent come from OAuth; do not supply identity fields.","retry":"Keep the same operation and operation_id when retrying identical work. Reconcile an uncertain result before new work; never replay an old V1 write under a new V2 ID.","completion":"Check status, execution_state, error_code, output and evidence/resource references. Queued work is not complete: poll jobs.status.get.v2 in domain.workspace.v2. For read-back verification require read_back_verified=true where returned; reconcile failures without creating another object.","result_envelope":{"status":"completed | partial | cancelled | failed","execution_state":"terminal | queued | reconciliation_required","output":"Completed results validate against output_schema; partial/reconciliation results can contain incomplete evidence and must not be treated as completion.","billing":"gateway_credits_spent, downstream_settlement, job_id; pending downstream settlement is not a final cost","references":"run_id, invocation_id, resource_refs, evidence_refs"},"documentation":"https://www.hivekind.ai/docs/mcp/content#playbooks-archive-v2"},{"operation":"playbooks.create.v2","domain":"content","tool":"domain.content.v2","title":"Create a playbook","purpose":"Save a new playbook/sequence.","side_effects":"Creates a playbook. Does not send.","permission":"execute","required_scopes":["actions:execute"],"requires_operation_id":true,"billing":"No gateway rate is configured. Check the Core workflow preview/quote for downstream charges and final settlement.","required_resolved_fields":[],"next_call":{"tool":"domain.content.v2","arguments":{"params":{"action":"describe","operation":"playbooks.create.v2"}}},"catalog_revision":"07a373e389289e05","when_not_to_use":"Playbook authoring is usually done in the Hivekind app. To launch, list an existing playbook instead.","description":"Use when: Save a new playbook/sequence. Returns/does: Creates a playbook. Does not send. Do not use when: Playbook authoring is usually done in the Hivekind app. To launch, list an existing playbook instead. Identity comes from OAuth. Resolve exact IDs; use typed enums and bounded limits. Billing: Gateway and downstream billing depend on the operation; check its preview/quote and returned billing.","input_schema":{"$defs":{"JsonValue":{}},"additionalProperties":false,"properties":{"action_proposal_id":{"anyOf":[{"format":"uuid","type":"string"},{"type":"null"}],"default":null,"description":"Optional. Hivekind fills this from the MCP consent grant.","title":"Action Proposal Id"},"name":{"description":"Human-readable name for the record.","maxLength":255,"minLength":1,"title":"Name","type":"string"},"description":{"anyOf":[{"maxLength":2000,"type":"string"},{"type":"null"}],"default":null,"description":"Human-readable description of the record or requested outcome.","title":"Description"},"flow_definition":{"additionalProperties":{"$ref":"#/$defs/JsonValue"},"description":"Flow definition used by the public playbooks create input v2 operation.","title":"Flow Definition","type":"object"}},"required":["name","flow_definition"],"title":"McpMcpPublicPlaybooksCreateInputV2","type":"object"},"output_schema":{"additionalProperties":false,"description":"V2 result for playbooks.create.v2; preserves the established validators.","properties":{"template_id":{"format":"uuid","title":"Template Id","type":"string"},"name":{"maxLength":255,"minLength":1,"title":"Name","type":"string"}},"required":["template_id","name"],"title":"PublicPlaybooksCreateResultV2","type":"object"},"example":{"tool":"domain.content.v2","arguments":{"params":{"action":"invoke","operation":"playbooks.create.v2","arguments":{"flow_definition":{},"name":"Example name"},"operation_id":"00000000-0000-4000-8000-000000000003"}},"notice":"Fictional fixture IDs and example text. Resolve real IDs, use returned preview tokens and approve exact side effects before execution. Input validation is not proof of provider readiness or a successful business outcome."},"workflow_steps":[],"approval_policy":"exact_scope_single_action","idempotency_policy":"approved_action_outbox","gateway_credit_code":null,"identity":"Workspace, actor and consent come from OAuth; do not supply identity fields.","retry":"Keep the same operation and operation_id when retrying identical work. Reconcile an uncertain result before new work; never replay an old V1 write under a new V2 ID.","completion":"Check status, execution_state, error_code, output and evidence/resource references. Queued work is not complete: poll jobs.status.get.v2 in domain.workspace.v2. For read-back verification require read_back_verified=true where returned; reconcile failures without creating another object.","result_envelope":{"status":"completed | partial | cancelled | failed","execution_state":"terminal | queued | reconciliation_required","output":"Completed results validate against output_schema; partial/reconciliation results can contain incomplete evidence and must not be treated as completion.","billing":"gateway_credits_spent, downstream_settlement, job_id; pending downstream settlement is not a final cost","references":"run_id, invocation_id, resource_refs, evidence_refs"},"documentation":"https://www.hivekind.ai/docs/mcp/content#playbooks-create-v2"},{"operation":"playbooks.duplicate.v2","domain":"content","tool":"domain.content.v2","title":"Duplicate a playbook","purpose":"Copy a playbook.","side_effects":"Creates a playbook copy.","permission":"execute","required_scopes":["actions:execute"],"requires_operation_id":true,"billing":"No gateway rate is configured. Check the Core workflow preview/quote for downstream charges and final settlement.","required_resolved_fields":[],"next_call":{"tool":"domain.content.v2","arguments":{"params":{"action":"describe","operation":"playbooks.duplicate.v2"}}},"catalog_revision":"07a373e389289e05","when_not_to_use":"Do not use this to launch a campaign.","description":"Use when: Copy a playbook. Returns/does: Creates a playbook copy. Do not use when: Do not use this to launch a campaign. Identity comes from OAuth. Resolve exact IDs; use typed enums and bounded limits. Billing: Gateway and downstream billing depend on the operation; check its preview/quote and returned billing.","input_schema":{"additionalProperties":false,"properties":{"action_proposal_id":{"anyOf":[{"format":"uuid","type":"string"},{"type":"null"}],"default":null,"description":"Optional. Hivekind fills this from the MCP consent grant.","title":"Action Proposal Id"},"template_id":{"description":"Exact template UUID returned by a Hivekind search, list, get, preview, or resource call.","format":"uuid","title":"Template Id","type":"string"},"name":{"anyOf":[{"maxLength":255,"minLength":1,"type":"string"},{"type":"null"}],"default":null,"description":"Human-readable name for the record.","title":"Name"}},"required":["template_id"],"title":"McpMcpPublicPlaybooksDuplicateInputV2","type":"object"},"output_schema":{"additionalProperties":false,"description":"V2 result for playbooks.duplicate.v2; preserves the established validators.","properties":{"template_id":{"format":"uuid","title":"Template Id","type":"string"},"name":{"maxLength":255,"minLength":1,"title":"Name","type":"string"}},"required":["template_id","name"],"title":"PublicPlaybooksDuplicateResultV2","type":"object"},"example":{"tool":"domain.content.v2","arguments":{"params":{"action":"invoke","operation":"playbooks.duplicate.v2","arguments":{"template_id":"00000000-0000-4000-8000-000000000001"},"operation_id":"00000000-0000-4000-8000-000000000003"}},"notice":"Fictional fixture IDs and example text. Resolve real IDs, use returned preview tokens and approve exact side effects before execution. Input validation is not proof of provider readiness or a successful business outcome."},"workflow_steps":[],"approval_policy":"exact_scope_single_action","idempotency_policy":"approved_action_outbox","gateway_credit_code":null,"identity":"Workspace, actor and consent come from OAuth; do not supply identity fields.","retry":"Keep the same operation and operation_id when retrying identical work. Reconcile an uncertain result before new work; never replay an old V1 write under a new V2 ID.","completion":"Check status, execution_state, error_code, output and evidence/resource references. Queued work is not complete: poll jobs.status.get.v2 in domain.workspace.v2. For read-back verification require read_back_verified=true where returned; reconcile failures without creating another object.","result_envelope":{"status":"completed | partial | cancelled | failed","execution_state":"terminal | queued | reconciliation_required","output":"Completed results validate against output_schema; partial/reconciliation results can contain incomplete evidence and must not be treated as completion.","billing":"gateway_credits_spent, downstream_settlement, job_id; pending downstream settlement is not a final cost","references":"run_id, invocation_id, resource_refs, evidence_refs"},"documentation":"https://www.hivekind.ai/docs/mcp/content#playbooks-duplicate-v2"},{"operation":"playbooks.get.v2","domain":"content","tool":"domain.content.v2","title":"Get a playbook","purpose":"Load one playbook by id when resource reads are unavailable.","side_effects":"Reads current workspace state.","permission":"read","required_scopes":["runs:read"],"requires_operation_id":false,"billing":"No gateway credit charge; reads saved workspace data without starting paid provider work.","required_resolved_fields":[],"next_call":{"tool":"domain.content.v2","arguments":{"params":{"action":"describe","operation":"playbooks.get.v2"}}},"catalog_revision":"07a373e389289e05","when_not_to_use":"Prefer hivekind://playbook/{id}. Use playbooks.search.v2 to find ids.","description":"Use when: Load one playbook by id when resource reads are unavailable. Returns/does: Reads the current authorized workspace state. Do not use when: Prefer hivekind://playbook/{id}. Use playbooks.search.v2 to find ids. Identity comes from OAuth. Resolve exact IDs; use typed enums and bounded limits. Billing: Gateway and downstream billing depend on the operation; check its preview/quote and returned billing.","input_schema":{"additionalProperties":false,"properties":{"template_id":{"description":"Exact template UUID returned by a Hivekind search, list, get, preview, or resource call.","format":"uuid","title":"Template Id","type":"string"}},"required":["template_id"],"title":"McpPublicPlaybooksGetInputV2","type":"object"},"output_schema":{"$defs":{"JsonValue":{}},"additionalProperties":false,"description":"V2 result for playbooks.get.v2; preserves the established validators.","properties":{"template_id":{"format":"uuid","title":"Template Id","type":"string"},"name":{"maxLength":255,"minLength":1,"title":"Name","type":"string"},"description":{"anyOf":[{"maxLength":2000,"type":"string"},{"type":"null"}],"default":null,"title":"Description"},"node_count":{"default":0,"maximum":500,"minimum":0,"title":"Node Count","type":"integer"},"channels":{"default":[],"items":{"type":"string"},"maxItems":20,"title":"Channels","type":"array"},"sequence_valid":{"title":"Sequence Valid","type":"boolean"},"linkedin_valid":{"title":"Linkedin Valid","type":"boolean"},"flow_definition":{"additionalProperties":{"$ref":"#/$defs/JsonValue"},"title":"Flow Definition","type":"object"},"updated_at":{"anyOf":[{"format":"date-time","type":"string"},{"type":"null"}],"default":null,"title":"Updated At"}},"required":["template_id","name","sequence_valid","linkedin_valid"],"title":"PublicPlaybooksGetResultV2","type":"object"},"example":{"tool":"domain.content.v2","arguments":{"params":{"action":"invoke","operation":"playbooks.get.v2","arguments":{"template_id":"00000000-0000-4000-8000-000000000001"},"operation_id":"00000000-0000-4000-8000-000000000003"}},"notice":"Fictional fixture IDs and example text. Resolve real IDs, use returned preview tokens and approve exact side effects before execution. Input validation is not proof of provider readiness or a successful business outcome."},"workflow_steps":[],"approval_policy":null,"idempotency_policy":"read_only","gateway_credit_code":null,"identity":"Workspace, actor and consent come from OAuth; do not supply identity fields.","retry":"Keep the same operation and operation_id when retrying identical work. Reconcile an uncertain result before new work; never replay an old V1 write under a new V2 ID.","completion":"Check status, execution_state, error_code, output and evidence/resource references. Queued work is not complete: poll jobs.status.get.v2 in domain.workspace.v2. For read-back verification require read_back_verified=true where returned; reconcile failures without creating another object.","result_envelope":{"status":"completed | partial | cancelled | failed","execution_state":"terminal | queued | reconciliation_required","output":"Completed results validate against output_schema; partial/reconciliation results can contain incomplete evidence and must not be treated as completion.","billing":"gateway_credits_spent, downstream_settlement, job_id; pending downstream settlement is not a final cost","references":"run_id, invocation_id, resource_refs, evidence_refs"},"documentation":"https://www.hivekind.ai/docs/mcp/content#playbooks-get-v2"},{"operation":"playbooks.propose.v2","domain":"content","tool":"domain.content.v2","title":"Propose a playbook","purpose":"Draft a playbook flow from a brief without saving.","side_effects":"May change workspace state or start work; describe before invoking.","permission":"propose","required_scopes":["runs:create"],"requires_operation_id":true,"billing":"No gateway rate is configured. Check the Core workflow preview/quote for downstream charges and final settlement.","required_resolved_fields":[],"next_call":{"tool":"domain.content.v2","arguments":{"params":{"action":"describe","operation":"playbooks.propose.v2"}}},"catalog_revision":"07a373e389289e05","when_not_to_use":"Do not use this to launch a campaign.","description":"Use when: Draft a playbook flow from a brief without saving. Returns/does: Changes workspace state or starts work; review the exact contract and approval requirements. Do not use when: Do not use this to launch a campaign. Identity comes from OAuth. Resolve exact IDs; use typed enums and bounded limits. Billing: Gateway and downstream billing depend on the operation; check its preview/quote and returned billing.","input_schema":{"additionalProperties":false,"properties":{"name":{"anyOf":[{"maxLength":255,"minLength":1,"type":"string"},{"type":"null"}],"default":null,"description":"Human-readable name for the record.","title":"Name"},"brief":{"description":"Brief used by the playbooks propose input v2 operation.","maxLength":4000,"minLength":1,"title":"Brief","type":"string"},"include_linkedin":{"default":true,"description":"Whether to apply include linkedin for this operation.","title":"Include Linkedin","type":"boolean"},"template_id":{"anyOf":[{"format":"uuid","type":"string"},{"type":"null"}],"default":null,"description":"Exact template UUID returned by a Hivekind search, list, get, preview, or resource call.","title":"Template Id"}},"required":["brief"],"title":"McpPlaybooksProposeInputV2","type":"object"},"output_schema":{"$defs":{"JsonValue":{}},"additionalProperties":false,"properties":{"name":{"maxLength":255,"minLength":1,"title":"Name","type":"string"},"summary":{"maxLength":2000,"minLength":1,"title":"Summary","type":"string"},"flow_definition":{"additionalProperties":{"$ref":"#/$defs/JsonValue"},"title":"Flow Definition","type":"object"},"sequence_valid":{"title":"Sequence Valid","type":"boolean"},"executable":{"const":false,"default":false,"title":"Executable","type":"boolean"}},"required":["name","summary","flow_definition","sequence_valid"],"title":"PlaybooksProposeResultV2","type":"object"},"example":{"tool":"domain.content.v2","arguments":{"params":{"action":"invoke","operation":"playbooks.propose.v2","arguments":{"brief":"Example brief"},"operation_id":"00000000-0000-4000-8000-000000000003"}},"notice":"Fictional fixture IDs and example text. Resolve real IDs, use returned preview tokens and approve exact side effects before execution. Input validation is not proof of provider readiness or a successful business outcome."},"workflow_steps":[],"approval_policy":null,"idempotency_policy":"run_task_proposal","gateway_credit_code":null,"identity":"Workspace, actor and consent come from OAuth; do not supply identity fields.","retry":"Keep the same operation and operation_id when retrying identical work. Reconcile an uncertain result before new work; never replay an old V1 write under a new V2 ID.","completion":"Check status, execution_state, error_code, output and evidence/resource references. Queued work is not complete: poll jobs.status.get.v2 in domain.workspace.v2. For read-back verification require read_back_verified=true where returned; reconcile failures without creating another object.","result_envelope":{"status":"completed | partial | cancelled | failed","execution_state":"terminal | queued | reconciliation_required","output":"Completed results validate against output_schema; partial/reconciliation results can contain incomplete evidence and must not be treated as completion.","billing":"gateway_credits_spent, downstream_settlement, job_id; pending downstream settlement is not a final cost","references":"run_id, invocation_id, resource_refs, evidence_refs"},"documentation":"https://www.hivekind.ai/docs/mcp/content#playbooks-propose-v2"},{"operation":"playbooks.search.v2","domain":"content","tool":"domain.content.v2","title":"Search playbooks","purpose":"You need stable existing playbook IDs before configuring a campaign or drafting content.","side_effects":"Returns a bounded playbook list. Read only.","permission":"read","required_scopes":["runs:read"],"requires_operation_id":false,"billing":"No gateway credit charge; reads saved workspace data without starting paid provider work.","required_resolved_fields":[],"next_call":{"tool":"domain.content.v2","arguments":{"params":{"action":"describe","operation":"playbooks.search.v2"}}},"catalog_revision":"07a373e389289e05","when_not_to_use":"You need to propose a new playbook; use playbooks.propose.v2.","description":"Use when: You need stable existing playbook IDs before configuring a campaign or drafting content. Returns/does: Returns a bounded playbook list. Read only. Do not use when: You need to propose a new playbook; use playbooks.propose.v2. Identity comes from OAuth. Resolve exact IDs; use typed enums and bounded limits. Billing: Gateway and downstream billing depend on the operation; check its preview/quote and returned billing.","input_schema":{"additionalProperties":false,"properties":{"query":{"anyOf":[{"maxLength":255,"minLength":1,"type":"string"},{"type":"null"}],"default":null,"description":"Search text. Use a name, domain, title, or other identifying phrase relevant to this operation.","title":"Query"},"category":{"anyOf":[{"maxLength":160,"minLength":1,"type":"string"},{"type":"null"}],"default":null,"description":"Category used by the playbooks search input v2 operation.","title":"Category"},"include_system_templates":{"default":false,"description":"Whether to apply include system templates for this operation.","title":"Include System Templates","type":"boolean"},"limit":{"default":20,"description":"Maximum number of records to return in this page.","maximum":50,"minimum":1,"title":"Limit","type":"integer"}},"title":"McpPlaybooksSearchInputV2","type":"object"},"output_schema":{"$defs":{"TemplateSummaryV1":{"additionalProperties":false,"properties":{"template_id":{"format":"uuid","title":"Template Id","type":"string"},"name":{"maxLength":255,"minLength":1,"title":"Name","type":"string"},"description":{"anyOf":[{"maxLength":2000,"type":"string"},{"type":"null"}],"default":null,"title":"Description"},"category":{"anyOf":[{"maxLength":160,"type":"string"},{"type":"null"}],"default":null,"title":"Category"},"playbook_category":{"anyOf":[{"maxLength":160,"type":"string"},{"type":"null"}],"default":null,"title":"Playbook Category"},"tags":{"default":[],"items":{"type":"string"},"maxItems":30,"title":"Tags","type":"array"},"channels":{"default":[],"items":{"type":"string"},"maxItems":20,"title":"Channels","type":"array"},"node_count":{"default":0,"maximum":500,"minimum":0,"title":"Node Count","type":"integer"},"is_system_template":{"default":false,"title":"Is System Template","type":"boolean"}},"required":["template_id","name"],"title":"TemplateSummaryV1","type":"object"}},"additionalProperties":false,"properties":{"templates":{"default":[],"items":{"$ref":"#/$defs/TemplateSummaryV1"},"title":"Templates","type":"array"}},"title":"PlaybooksSearchResultV2","type":"object"},"example":{"tool":"domain.content.v2","arguments":{"params":{"action":"invoke","operation":"playbooks.search.v2","arguments":{},"operation_id":"00000000-0000-4000-8000-000000000003"}},"notice":"Fictional fixture IDs and example text. Resolve real IDs, use returned preview tokens and approve exact side effects before execution. Input validation is not proof of provider readiness or a successful business outcome."},"workflow_steps":[],"approval_policy":null,"idempotency_policy":"read_only","gateway_credit_code":null,"identity":"Workspace, actor and consent come from OAuth; do not supply identity fields.","retry":"Keep the same operation and operation_id when retrying identical work. Reconcile an uncertain result before new work; never replay an old V1 write under a new V2 ID.","completion":"Check status, execution_state, error_code, output and evidence/resource references. Queued work is not complete: poll jobs.status.get.v2 in domain.workspace.v2. For read-back verification require read_back_verified=true where returned; reconcile failures without creating another object.","result_envelope":{"status":"completed | partial | cancelled | failed","execution_state":"terminal | queued | reconciliation_required","output":"Completed results validate against output_schema; partial/reconciliation results can contain incomplete evidence and must not be treated as completion.","billing":"gateway_credits_spent, downstream_settlement, job_id; pending downstream settlement is not a final cost","references":"run_id, invocation_id, resource_refs, evidence_refs"},"documentation":"https://www.hivekind.ai/docs/mcp/content#playbooks-search-v2"},{"operation":"playbooks.update.v2","domain":"content","tool":"domain.content.v2","title":"Update a playbook","purpose":"Edit an existing playbook flow.","side_effects":"Updates playbook definition.","permission":"execute","required_scopes":["actions:execute"],"requires_operation_id":true,"billing":"No gateway rate is configured. Check the Core workflow preview/quote for downstream charges and final settlement.","required_resolved_fields":[],"next_call":{"tool":"domain.content.v2","arguments":{"params":{"action":"describe","operation":"playbooks.update.v2"}}},"catalog_revision":"07a373e389289e05","when_not_to_use":"Do not use this to bind a playbook to a campaign.","description":"Use when: Edit an existing playbook flow. Returns/does: Updates playbook definition. Do not use when: Do not use this to bind a playbook to a campaign. Identity comes from OAuth. Resolve exact IDs; use typed enums and bounded limits. Billing: Gateway and downstream billing depend on the operation; check its preview/quote and returned billing.","input_schema":{"$defs":{"JsonValue":{}},"additionalProperties":false,"properties":{"action_proposal_id":{"anyOf":[{"format":"uuid","type":"string"},{"type":"null"}],"default":null,"description":"Optional. Hivekind fills this from the MCP consent grant.","title":"Action Proposal Id"},"template_id":{"description":"Exact template UUID returned by a Hivekind search, list, get, preview, or resource call.","format":"uuid","title":"Template Id","type":"string"},"name":{"anyOf":[{"maxLength":255,"minLength":1,"type":"string"},{"type":"null"}],"default":null,"description":"Human-readable name for the record.","title":"Name"},"description":{"anyOf":[{"maxLength":2000,"type":"string"},{"type":"null"}],"default":null,"description":"Human-readable description of the record or requested outcome.","title":"Description"},"flow_definition":{"anyOf":[{"additionalProperties":{"$ref":"#/$defs/JsonValue"},"type":"object"},{"type":"null"}],"default":null,"description":"Flow definition used by the public playbooks update input v2 operation.","title":"Flow Definition"},"expected_updated_at":{"anyOf":[{"format":"date-time","type":"string"},{"type":"null"}],"default":null,"description":"Expected updated at timestamp in the format accepted by the schema.","title":"Expected Updated At"}},"required":["template_id"],"title":"McpMcpPublicPlaybooksUpdateInputV2","type":"object"},"output_schema":{"additionalProperties":false,"description":"V2 result for playbooks.update.v2; preserves the established validators.","properties":{"template_id":{"format":"uuid","title":"Template Id","type":"string"},"name":{"maxLength":255,"minLength":1,"title":"Name","type":"string"}},"required":["template_id","name"],"title":"PublicPlaybooksUpdateResultV2","type":"object"},"example":{"tool":"domain.content.v2","arguments":{"params":{"action":"invoke","operation":"playbooks.update.v2","arguments":{"template_id":"00000000-0000-4000-8000-000000000001"},"operation_id":"00000000-0000-4000-8000-000000000003"}},"notice":"Fictional fixture IDs and example text. Resolve real IDs, use returned preview tokens and approve exact side effects before execution. Input validation is not proof of provider readiness or a successful business outcome."},"workflow_steps":[],"approval_policy":"exact_scope_single_action","idempotency_policy":"approved_action_outbox","gateway_credit_code":null,"identity":"Workspace, actor and consent come from OAuth; do not supply identity fields.","retry":"Keep the same operation and operation_id when retrying identical work. Reconcile an uncertain result before new work; never replay an old V1 write under a new V2 ID.","completion":"Check status, execution_state, error_code, output and evidence/resource references. Queued work is not complete: poll jobs.status.get.v2 in domain.workspace.v2. For read-back verification require read_back_verified=true where returned; reconcile failures without creating another object.","result_envelope":{"status":"completed | partial | cancelled | failed","execution_state":"terminal | queued | reconciliation_required","output":"Completed results validate against output_schema; partial/reconciliation results can contain incomplete evidence and must not be treated as completion.","billing":"gateway_credits_spent, downstream_settlement, job_id; pending downstream settlement is not a final cost","references":"run_id, invocation_id, resource_refs, evidence_refs"},"documentation":"https://www.hivekind.ai/docs/mcp/content#playbooks-update-v2"},{"operation":"prospects.import.preview.v2","domain":"accounts","tool":"domain.accounts.v2","title":"Preview a prospect import","purpose":"Show what a list of people would land as in Hive Base, including which accounts already exist and which would be created. Send the file whole; the response's column_policy names any columns that look like source-system noise.","side_effects":"Writes nothing. Returns an import_token that prospects.import.start.v2 can commit.","permission":"propose","required_scopes":["runs:create"],"requires_operation_id":true,"billing":"No gateway rate is configured. Check the Core workflow preview/quote for downstream charges and final settlement.","required_resolved_fields":[],"next_call":{"tool":"domain.accounts.v2","arguments":{"params":{"action":"describe","operation":"prospects.import.preview.v2"}}},"catalog_revision":"07a373e389289e05","when_not_to_use":"Do not use this for an event guest list — stage that with events.import.preview.v2.","description":"Use when: Show what a list of people would land as in Hive Base, including which accounts already exist and which would be created. Send the file whole; the response's column_policy names any columns that look like source-system noise. Returns/does: Writes nothing. Returns an import_token that prospects.import.start.v2 can commit. Do not use when: Do not use this for an event guest list — stage that with events.import.preview.v2. Identity comes from OAuth. Resolve exact IDs; use typed enums and bounded limits. Billing: Gateway and downstream billing depend on the operation; check its preview/quote and returned billing.","input_schema":{"$defs":{"ProspectContactInputV1":{"additionalProperties":false,"properties":{"first_name":{"anyOf":[{"maxLength":255,"type":"string"},{"type":"null"}],"default":null,"title":"First Name"},"last_name":{"anyOf":[{"maxLength":255,"type":"string"},{"type":"null"}],"default":null,"title":"Last Name"},"email":{"anyOf":[{"maxLength":320,"type":"string"},{"type":"null"}],"default":null,"title":"Email"},"title":{"anyOf":[{"maxLength":255,"type":"string"},{"type":"null"}],"default":null,"title":"Title"},"linkedin_url":{"anyOf":[{"maxLength":500,"type":"string"},{"type":"null"}],"default":null,"title":"Linkedin Url"},"phone":{"anyOf":[{"maxLength":64,"type":"string"},{"type":"null"}],"default":null,"title":"Phone"},"company_name":{"anyOf":[{"maxLength":255,"type":"string"},{"type":"null"}],"default":null,"title":"Company Name"},"company_domain":{"anyOf":[{"maxLength":255,"type":"string"},{"type":"null"}],"default":null,"title":"Company Domain"},"owner_email":{"anyOf":[{"maxLength":320,"type":"string"},{"type":"null"}],"default":null,"description":"Workspace member who should own the contact's account.","title":"Owner Email"}},"title":"ProspectContactInputV1","type":"object"}},"additionalProperties":false,"properties":{"csv_text":{"anyOf":[{"type":"string"},{"type":"null"}],"default":null,"description":"Verbatim contents of a CSV the caller holds. Send the file exactly as it is: never retype values, reorder or drop rows, summarise, or leave columns out. The server maps arbitrary column layouts itself, and the preview reports which columns it reads as source-system noise, and why, in column_policy. Decide there with the user -- not here.","title":"Csv Text"},"exclude_columns":{"default":[],"description":"Source columns to leave out, after the user agreed to it. Leave empty on a first preview. Naming a column the server protects, or one that is mapped to a canonical field, fails the whole call.","items":{"type":"string"},"maxItems":200,"title":"Exclude Columns","type":"array"},"keep_columns":{"default":[],"description":"Source columns to retain whatever the server makes of them. Use it when the user says a column matters. Outranks exclude_columns.","items":{"type":"string"},"maxItems":200,"title":"Keep Columns","type":"array"},"tags":{"anyOf":[{"items":{"maxLength":64,"minLength":1,"type":"string"},"maxItems":10,"type":"array"},{"type":"null"}],"default":null,"description":"Account tags (1-64 characters each, at most 10) added to every account this import creates or matches -- existing accounts get the tag and nothing else on them changes. Matched case-insensitively against existing tags; resolve them with accounts.tags.list.v2 first. The preview's import_token locks these in: omit tags on the commit to reuse them, and a different list is refused. Separate from the source badge.","title":"Tags"},"contacts":{"default":[],"description":"Contacts used by the public prospects import preview input v2 operation.","items":{"$ref":"#/$defs/ProspectContactInputV1"},"maxItems":2000,"title":"Contacts","type":"array"},"assign_to_user_id":{"anyOf":[{"format":"uuid","type":"string"},{"type":"null"}],"default":null,"description":"Fallback owner for rows that carry no owner of their own.","title":"Assign To User Id"},"overwrite_conflicting_owners":{"default":false,"description":"Overwrite conflicting owners used by the public prospects import preview input v2 operation.","title":"Overwrite Conflicting Owners","type":"boolean"}},"title":"McpPublicProspectsImportPreviewInputV2","type":"object"},"output_schema":{"$defs":{"ExcludedColumnV1":{"additionalProperties":false,"description":"One source column the server left out, or proposes leaving out.","properties":{"column":{"maxLength":255,"title":"Column","type":"string"},"reason":{"enum":["empty_column","opaque_source_id","payment_metadata","source_system_link","caller_selected"],"title":"Reason","type":"string"},"detail":{"default":"","maxLength":500,"title":"Detail","type":"string"}},"required":["column","reason"],"title":"ExcludedColumnV1","type":"object"},"ImportColumnPolicyV1":{"additionalProperties":false,"description":"What the server made of the file's columns.\n\n``applied`` is the field that matters. False -- the default for any preview\nthat was not given a selection -- means ``excluded_columns`` is a proposal\nand every column was still imported. Show it to the user, take their answer,\nand send it back as ``exclude_columns`` if they agree. Never act on it alone.","properties":{"version":{"default":1,"title":"Version","type":"integer"},"applied":{"default":false,"title":"Applied","type":"boolean"},"retained_columns":{"default":[],"items":{"type":"string"},"title":"Retained Columns","type":"array"},"excluded_columns":{"default":[],"items":{"$ref":"#/$defs/ExcludedColumnV1"},"title":"Excluded Columns","type":"array"}},"title":"ImportColumnPolicyV1","type":"object"},"ImportRowErrorV1":{"additionalProperties":false,"description":"One row the parser could not use. Row numbers are 1-based and header-aware.","properties":{"row":{"minimum":1,"title":"Row","type":"integer"},"reason":{"maxLength":500,"minLength":1,"title":"Reason","type":"string"}},"required":["row","reason"],"title":"ImportRowErrorV1","type":"object"},"JsonValue":{}},"additionalProperties":false,"description":"V2 result for prospects.import.preview.v2; preserves the established validators.","properties":{"column_policy":{"anyOf":[{"$ref":"#/$defs/ImportColumnPolicyV1"},{"type":"null"}],"default":null,"description":"What the server made of the file's columns. When applied is false this is a proposal only and nothing was left out."},"import_token":{"anyOf":[{"maxLength":255,"type":"string"},{"type":"null"}],"default":null,"description":"Pass to the matching commit tool to reuse exactly these rows. Null when no cache backend was reachable -- resend the data instead.","title":"Import Token"},"rows_parsed":{"default":0,"minimum":0,"title":"Rows Parsed","type":"integer"},"rows_skipped":{"default":0,"minimum":0,"title":"Rows Skipped","type":"integer"},"rows_without_person":{"default":0,"description":"Company-only rows. They are skipped here -- import them with accounts.import.preview.v2 instead.","minimum":0,"title":"Rows Without Person","type":"integer"},"column_mapping":{"additionalProperties":{"type":"string"},"title":"Column Mapping","type":"object"},"parse_errors":{"default":[],"items":{"$ref":"#/$defs/ImportRowErrorV1"},"maxItems":50,"title":"Parse Errors","type":"array"},"matches_existing_accounts":{"default":0,"minimum":0,"title":"Matches Existing Accounts","type":"integer"},"matches_existing_contacts":{"default":0,"minimum":0,"title":"Matches Existing Contacts","type":"integer"},"new_companies":{"default":0,"minimum":0,"title":"New Companies","type":"integer"},"owners_to_assign":{"default":0,"minimum":0,"title":"Owners To Assign","type":"integer"},"owner_conflicts":{"default":0,"minimum":0,"title":"Owner Conflicts","type":"integer"},"sample_rows":{"default":[],"items":{"additionalProperties":{"$ref":"#/$defs/JsonValue"},"type":"object"},"maxItems":5,"title":"Sample Rows","type":"array"},"tags":{"default":[],"description":"Account tags the import_token is locked to.","items":{"type":"string"},"title":"Tags","type":"array"},"accounts_to_tag":{"default":0,"description":"Accounts the commit would tag: matches_existing_accounts plus new_companies. Zero when no tags were given.","minimum":0,"title":"Accounts To Tag","type":"integer"}},"title":"PublicProspectsImportPreviewResultV2","type":"object"},"example":{"tool":"domain.accounts.v2","arguments":{"params":{"action":"invoke","operation":"prospects.import.preview.v2","arguments":{"contacts":[{"company_domain":"example.com","company_name":"Example company","email":"person@example.com","first_name":"Example","last_name":"Person"}]},"operation_id":"00000000-0000-4000-8000-000000000003"}},"notice":"Fictional fixture IDs and example text. Resolve real IDs, use returned preview tokens and approve exact side effects before execution. Input validation is not proof of provider readiness or a successful business outcome."},"workflow_steps":[],"approval_policy":null,"idempotency_policy":"run_task_import_preview","gateway_credit_code":null,"identity":"Workspace, actor and consent come from OAuth; do not supply identity fields.","retry":"Keep the same operation and operation_id when retrying identical work. Reconcile an uncertain result before new work; never replay an old V1 write under a new V2 ID.","completion":"Check status, execution_state, error_code, output and evidence/resource references. Queued work is not complete: poll jobs.status.get.v2 in domain.workspace.v2. For read-back verification require read_back_verified=true where returned; reconcile failures without creating another object.","result_envelope":{"status":"completed | partial | cancelled | failed","execution_state":"terminal | queued | reconciliation_required","output":"Completed results validate against output_schema; partial/reconciliation results can contain incomplete evidence and must not be treated as completion.","billing":"gateway_credits_spent, downstream_settlement, job_id; pending downstream settlement is not a final cost","references":"run_id, invocation_id, resource_refs, evidence_refs"},"documentation":"https://www.hivekind.ai/docs/mcp/accounts#prospects-import-preview-v2"},{"operation":"prospects.import.start.v2","domain":"accounts","tool":"domain.accounts.v2","title":"Import prospects","purpose":"Create contacts in Hive Base, auto-creating their accounts. For loose prospects that belong to no event. To commit a preview, send only import_token (with action_proposal_id): a commit with import_token takes no contacts and no csv_text, because the token already carries the previewed rows. Without a token, send contacts or csv_text directly.","side_effects":"Creates contacts and accounts, badged with the import source when you pass source (name, kind workshop/event/webinar/list/other; the id comes back as source_id). Sends nothing. Returns created_contact_ids, updated_contact_ids, matched_account_ids (every account the contacts sit on, existing included) and account_ids (only the new accounts).","permission":"execute","required_scopes":["actions:execute"],"requires_operation_id":true,"billing":"No gateway rate is configured. Check the Core workflow preview/quote for downstream charges and final settlement.","required_resolved_fields":[],"next_call":{"tool":"domain.accounts.v2","arguments":{"params":{"action":"describe","operation":"prospects.import.start.v2"}}},"catalog_revision":"07a373e389289e05","when_not_to_use":"Do not use this for a company-only list with no people — that is accounts.import.start.v2.","description":"Use when: Create contacts in Hive Base, auto-creating their accounts. For loose prospects that belong to no event. To commit a preview, send only import_token (with action_proposal_id): a commit with import_token takes no contacts and no csv_text, because the token already carries the previewed rows. Without a token, send contacts or csv_text directly. Returns/does: Creates contacts and accounts, badged with the import source when you pass source (name, kind workshop/event/webinar/list/other; the id comes back as source_id). Sends nothing. Returns created_contact_ids, updated_contact_ids, matched_account_ids (every account the contacts sit on, existing included) and account_ids (only the new accounts). Do not use when: Do not use this for a company-only list with no people — that is accounts.import.start.v2. Identity comes from OAuth. Resolve exact IDs; use typed enums and bounded limits. Billing: Gateway and downstream billing depend on the operation; check its preview/quote and returned billing.","input_schema":{"$defs":{"ImportSourceInputV1":{"additionalProperties":false,"description":"Where this list came from. Every record the import creates or matches is badged with it.","properties":{"source_id":{"anyOf":[{"format":"uuid","type":"string"},{"type":"null"}],"default":null,"description":"Add to an existing source instead of creating one.","title":"Source Id"},"name":{"anyOf":[{"maxLength":255,"type":"string"},{"type":"null"}],"default":null,"description":"New source name, e.g. 'AI for CFOs workshop'. Omit to name it after the file.","title":"Name"},"kind":{"default":"list","enum":["workshop","event","webinar","list","other"],"title":"Kind","type":"string"},"occurred_on":{"anyOf":[{"format":"date","type":"string"},{"type":"null"}],"default":null,"title":"Occurred On"},"details":{"additionalProperties":{"anyOf":[{"type":"string"},{"type":"integer"},{"type":"number"},{"type":"boolean"},{"type":"null"}]},"description":"Location, host, link, notes. Flat: at most 20 keys (each up to 64 characters), values are text up to 1000 characters, numbers, booleans or null. No nested objects or lists.","title":"Details","type":"object"}},"title":"ImportSourceInputV1","type":"object"},"ProspectContactInputV1":{"additionalProperties":false,"properties":{"first_name":{"anyOf":[{"maxLength":255,"type":"string"},{"type":"null"}],"default":null,"title":"First Name"},"last_name":{"anyOf":[{"maxLength":255,"type":"string"},{"type":"null"}],"default":null,"title":"Last Name"},"email":{"anyOf":[{"maxLength":320,"type":"string"},{"type":"null"}],"default":null,"title":"Email"},"title":{"anyOf":[{"maxLength":255,"type":"string"},{"type":"null"}],"default":null,"title":"Title"},"linkedin_url":{"anyOf":[{"maxLength":500,"type":"string"},{"type":"null"}],"default":null,"title":"Linkedin Url"},"phone":{"anyOf":[{"maxLength":64,"type":"string"},{"type":"null"}],"default":null,"title":"Phone"},"company_name":{"anyOf":[{"maxLength":255,"type":"string"},{"type":"null"}],"default":null,"title":"Company Name"},"company_domain":{"anyOf":[{"maxLength":255,"type":"string"},{"type":"null"}],"default":null,"title":"Company Domain"},"owner_email":{"anyOf":[{"maxLength":320,"type":"string"},{"type":"null"}],"default":null,"description":"Workspace member who should own the contact's account.","title":"Owner Email"}},"title":"ProspectContactInputV1","type":"object"}},"additionalProperties":false,"properties":{"csv_text":{"anyOf":[{"type":"string"},{"type":"null"}],"default":null,"description":"Verbatim contents of a CSV the caller holds. Send the file exactly as it is: never retype values, reorder or drop rows, summarise, or leave columns out. The server maps arbitrary column layouts itself, and the preview reports which columns it reads as source-system noise, and why, in column_policy. Decide there with the user -- not here.","title":"Csv Text"},"exclude_columns":{"default":[],"description":"Source columns to leave out, after the user agreed to it. Leave empty on a first preview. Naming a column the server protects, or one that is mapped to a canonical field, fails the whole call.","items":{"type":"string"},"maxItems":200,"title":"Exclude Columns","type":"array"},"keep_columns":{"default":[],"description":"Source columns to retain whatever the server makes of them. Use it when the user says a column matters. Outranks exclude_columns.","items":{"type":"string"},"maxItems":200,"title":"Keep Columns","type":"array"},"tags":{"anyOf":[{"items":{"maxLength":64,"minLength":1,"type":"string"},"maxItems":10,"type":"array"},{"type":"null"}],"default":null,"description":"Account tags (1-64 characters each, at most 10) added to every account this import creates or matches -- existing accounts get the tag and nothing else on them changes. Matched case-insensitively against existing tags; resolve them with accounts.tags.list.v2 first. The preview's import_token locks these in: omit tags on the commit to reuse them, and a different list is refused. Separate from the source badge.","title":"Tags"},"contacts":{"default":[],"description":"Contacts used by the public prospects import start input v2 operation.","items":{"$ref":"#/$defs/ProspectContactInputV1"},"maxItems":2000,"title":"Contacts","type":"array"},"assign_to_user_id":{"anyOf":[{"format":"uuid","type":"string"},{"type":"null"}],"default":null,"description":"Fallback owner for rows that carry no owner of their own.","title":"Assign To User Id"},"overwrite_conflicting_owners":{"default":false,"description":"Overwrite conflicting owners used by the public prospects import start input v2 operation.","title":"Overwrite Conflicting Owners","type":"boolean"},"source":{"anyOf":[{"$ref":"#/$defs/ImportSourceInputV1"},{"type":"null"}],"default":null,"description":"Label this list so every account and contact it creates or matches is badged with where it came from (workshop, event, webinar, list). The id comes back as source_id on the result."},"action_proposal_id":{"anyOf":[{"format":"uuid","type":"string"},{"type":"null"}],"default":null,"description":"Optional. Hivekind fills this from the MCP consent grant.","title":"Action Proposal Id"},"import_token":{"anyOf":[{"maxLength":255,"type":"string"},{"type":"null"}],"default":null,"description":"Import token used by the public prospects import start input v2 operation.","title":"Import Token"}},"title":"McpMcpPublicProspectsImportStartInputV2","type":"object"},"output_schema":{"additionalProperties":false,"description":"V2 result for prospects.import.start.v2; preserves the established validators.","properties":{"source_id":{"anyOf":[{"format":"uuid","type":"string"},{"type":"null"}],"default":null,"description":"Source the imported records were badged with.","title":"Source Id"},"contacts_created":{"default":0,"minimum":0,"title":"Contacts Created","type":"integer"},"contacts_updated":{"default":0,"minimum":0,"title":"Contacts Updated","type":"integer"},"contacts_skipped":{"default":0,"minimum":0,"title":"Contacts Skipped","type":"integer"},"accounts_created":{"default":0,"minimum":0,"title":"Accounts Created","type":"integer"},"account_ids":{"default":[],"description":"Accounts this import created. Pass them to icp.grading.start.v2 as account_ids to grade exactly what was just added, rather than approximating with only_unscored.","items":{"format":"uuid","type":"string"},"maxItems":500,"title":"Account Ids","type":"array"},"created_contact_ids":{"default":[],"description":"Contacts this import created, in row order.","items":{"format":"uuid","type":"string"},"maxItems":200,"title":"Created Contact Ids","type":"array"},"updated_contact_ids":{"default":[],"description":"Existing contacts this import updated in place, in row order. A contact matched by email stays on its own account.","items":{"format":"uuid","type":"string"},"maxItems":200,"title":"Updated Contact Ids","type":"array"},"matched_account_ids":{"default":[],"description":"Every account an imported contact now sits on, existing or newly created. account_ids is only the new ones.","items":{"format":"uuid","type":"string"},"maxItems":200,"title":"Matched Account Ids","type":"array"},"ids_truncated":{"default":false,"description":"True when a list above was cut at 200; page the rest with contacts.search.v2.","title":"Ids Truncated","type":"boolean"},"total_processed":{"default":0,"minimum":0,"title":"Total Processed","type":"integer"},"errors":{"default":[],"items":{"type":"string"},"maxItems":50,"title":"Errors","type":"array"},"tags":{"default":[],"description":"Account tags added to every account this import created or matched.","items":{"type":"string"},"title":"Tags","type":"array"}},"title":"PublicProspectsImportStartResultV2","type":"object"},"example":{"tool":"domain.accounts.v2","arguments":{"params":{"action":"invoke","operation":"prospects.import.start.v2","arguments":{"import_token":"use-the-exact-token-from-the-approved-preview"},"operation_id":"00000000-0000-4000-8000-000000000003"}},"notice":"Fictional fixture IDs and example text. Resolve real IDs, use returned preview tokens and approve exact side effects before execution. Input validation is not proof of provider readiness or a successful business outcome."},"workflow_steps":[],"approval_policy":"exact_scope_single_action","idempotency_policy":"approved_action_outbox","gateway_credit_code":null,"identity":"Workspace, actor and consent come from OAuth; do not supply identity fields.","retry":"Keep the same operation and operation_id when retrying identical work. Reconcile an uncertain result before new work; never replay an old V1 write under a new V2 ID.","completion":"Check status, execution_state, error_code, output and evidence/resource references. Queued work is not complete: poll jobs.status.get.v2 in domain.workspace.v2. For read-back verification require read_back_verified=true where returned; reconcile failures without creating another object.","result_envelope":{"status":"completed | partial | cancelled | failed","execution_state":"terminal | queued | reconciliation_required","output":"Completed results validate against output_schema; partial/reconciliation results can contain incomplete evidence and must not be treated as completion.","billing":"gateway_credits_spent, downstream_settlement, job_id; pending downstream settlement is not a final cost","references":"run_id, invocation_id, resource_refs, evidence_refs"},"documentation":"https://www.hivekind.ai/docs/mcp/accounts#prospects-import-start-v2"},{"operation":"relationships.batch.get.v2","domain":"network","tool":"domain.network.v2","title":"Consented contact relationship paths","purpose":"Use the existing Core workflow: Consented contact relationship paths. Core enforces contact workspace membership and network consent. Resolve account contacts first; unknown paths are not cold. No board/investor graph.","side_effects":"Read only.","permission":"read","required_scopes":["accounts:read"],"requires_operation_id":false,"billing":"No gateway credit charge; reads saved workspace data without starting paid provider work.","required_resolved_fields":[],"next_call":{"tool":"domain.network.v2","arguments":{"params":{"action":"describe","operation":"relationships.batch.get.v2"}}},"catalog_revision":"07a373e389289e05","when_not_to_use":"Do not infer unsupported history, attribution, or commitments from this response.","description":"Use when: Use the existing Core workflow: Consented contact relationship paths. Core enforces contact workspace membership and network consent. Resolve account contacts first; unknown paths are not cold. No board/investor graph. Returns/does: Read only. Do not use when: Do not infer unsupported history, attribution, or commitments from this response. Identity comes from OAuth. Resolve exact IDs; use typed enums and bounded limits. Billing: Gateway and downstream billing depend on the operation; check its preview/quote and returned billing.","input_schema":{"additionalProperties":false,"properties":{"contact_ids":{"description":"Exact contact UUIDs returned by a Hivekind search, list, get, preview, or resource call.","items":{"format":"uuid","type":"string"},"maxItems":200,"minItems":1,"title":"Contact Ids","type":"array"}},"required":["contact_ids"],"title":"McpPublicRelationshipsBatchGetInputV2","type":"object"},"output_schema":{"additionalProperties":false,"description":"V2 result for relationships.batch.get.v2; preserves the established validators.","properties":{"title":{"title":"Title","type":"string"},"data":{"additionalProperties":true,"title":"Data","type":"object"},"limitations":{"title":"Limitations","type":"string"},"applied_parameters":{"additionalProperties":true,"title":"Applied Parameters","type":"object"},"source_path":{"title":"Source Path","type":"string"},"job_id":{"anyOf":[{"type":"string"},{"type":"null"}],"default":null,"description":"Core job identifier when an operation enqueues work; poll jobs.status.get.v2 and read the resulting resource.","title":"Job Id"},"queued":{"default":false,"title":"Queued","type":"boolean"},"outcome_status":{"default":"partial","enum":["completed","partial","needs_input","awaiting_approval"],"title":"Outcome Status","type":"string"},"read_back_verified":{"default":false,"title":"Read Back Verified","type":"boolean"},"verification_message":{"anyOf":[{"type":"string"},{"type":"null"}],"default":null,"title":"Verification Message"}},"required":["title","data","limitations","source_path"],"title":"PublicRelationshipsBatchGetResultV2","type":"object"},"example":{"tool":"domain.network.v2","arguments":{"params":{"action":"invoke","operation":"relationships.batch.get.v2","arguments":{"contact_ids":["00000000-0000-4000-8000-000000000001"]},"operation_id":"00000000-0000-4000-8000-000000000003"}},"notice":"Fictional fixture IDs and example text. Resolve real IDs, use returned preview tokens and approve exact side effects before execution. Input validation is not proof of provider readiness or a successful business outcome."},"workflow_steps":[],"approval_policy":null,"idempotency_policy":"caller_operation","gateway_credit_code":null,"identity":"Workspace, actor and consent come from OAuth; do not supply identity fields.","retry":"Keep the same operation and operation_id when retrying identical work. Reconcile an uncertain result before new work; never replay an old V1 write under a new V2 ID.","completion":"Check status, execution_state, error_code, output and evidence/resource references. Queued work is not complete: poll jobs.status.get.v2 in domain.workspace.v2. For read-back verification require read_back_verified=true where returned; reconcile failures without creating another object.","result_envelope":{"status":"completed | partial | cancelled | failed","execution_state":"terminal | queued | reconciliation_required","output":"Completed results validate against output_schema; partial/reconciliation results can contain incomplete evidence and must not be treated as completion.","billing":"gateway_credits_spent, downstream_settlement, job_id; pending downstream settlement is not a final cost","references":"run_id, invocation_id, resource_refs, evidence_refs"},"documentation":"https://www.hivekind.ai/docs/mcp/network#relationships-batch-get-v2"},{"operation":"replies.send.v2","domain":"inbox","tool":"domain.inbox.v2","title":"Send a reply","purpose":"Send a reply as the signed-in user after you have thread context.","side_effects":"Sends a message as you. This cannot be undone.","permission":"execute","required_scopes":["actions:execute"],"requires_operation_id":true,"billing":"No gateway rate is configured. Check the Core workflow preview/quote for downstream charges and final settlement.","required_resolved_fields":[],"next_call":{"tool":"domain.inbox.v2","arguments":{"params":{"action":"describe","operation":"replies.send.v2"}}},"catalog_revision":"07a373e389289e05","when_not_to_use":"Do not use this to start a campaign or Hiveloop.","description":"Use when: Send a reply as the signed-in user after you have thread context. Returns/does: Sends a message as you. This cannot be undone. Do not use when: Do not use this to start a campaign or Hiveloop. Identity comes from OAuth. Resolve exact IDs; use typed enums and bounded limits. Billing: Gateway and downstream billing depend on the operation; check its preview/quote and returned billing.","input_schema":{"additionalProperties":false,"properties":{"action_proposal_id":{"anyOf":[{"format":"uuid","type":"string"},{"type":"null"}],"default":null,"description":"Optional. Hivekind fills this from the MCP consent grant.","title":"Action Proposal Id"},"contact_id":{"description":"Exact contact UUID returned by a Hivekind search, list, get, preview, or resource call.","format":"uuid","title":"Contact Id","type":"string"},"channel":{"description":"Supported outreach or signal channel. Phone outreach is not supported.","enum":["email","linkedin"],"title":"Channel","type":"string"},"body":{"description":"Body used by the replies send input v2 operation.","maxLength":8000,"minLength":1,"title":"Body","type":"string"},"subject":{"anyOf":[{"maxLength":240,"type":"string"},{"type":"null"}],"default":null,"description":"Subject used by the replies send input v2 operation.","title":"Subject"},"cc":{"default":[],"description":"Cc used by the replies send input v2 operation.","items":{"type":"string"},"maxItems":20,"title":"Cc","type":"array"}},"required":["contact_id","channel","body"],"title":"McpMcpRepliesSendInputV2","type":"object"},"output_schema":{"additionalProperties":false,"properties":{"dispatch_id":{"format":"uuid","title":"Dispatch Id","type":"string"},"contact_id":{"format":"uuid","title":"Contact Id","type":"string"},"channel":{"enum":["email","linkedin"],"title":"Channel","type":"string"},"status":{"const":"pending","default":"pending","title":"Status","type":"string"}},"required":["dispatch_id","contact_id","channel"],"title":"RepliesSendResultV2","type":"object"},"example":{"tool":"domain.inbox.v2","arguments":{"params":{"action":"invoke","operation":"replies.send.v2","arguments":{"body":"Example body","channel":"email","contact_id":"00000000-0000-4000-8000-000000000001"},"operation_id":"00000000-0000-4000-8000-000000000003"}},"notice":"Fictional fixture IDs and example text. Resolve real IDs, use returned preview tokens and approve exact side effects before execution. Input validation is not proof of provider readiness or a successful business outcome."},"workflow_steps":[],"approval_policy":"exact_scope_single_action","idempotency_policy":"approved_action_outbox_and_reply_dispatch","gateway_credit_code":null,"identity":"Workspace, actor and consent come from OAuth; do not supply identity fields.","retry":"Keep the same operation and operation_id when retrying identical work. Reconcile an uncertain result before new work; never replay an old V1 write under a new V2 ID.","completion":"Check status, execution_state, error_code, output and evidence/resource references. Queued work is not complete: poll jobs.status.get.v2 in domain.workspace.v2. For read-back verification require read_back_verified=true where returned; reconcile failures without creating another object.","result_envelope":{"status":"completed | partial | cancelled | failed","execution_state":"terminal | queued | reconciliation_required","output":"Completed results validate against output_schema; partial/reconciliation results can contain incomplete evidence and must not be treated as completion.","billing":"gateway_credits_spent, downstream_settlement, job_id; pending downstream settlement is not a final cost","references":"run_id, invocation_id, resource_refs, evidence_refs"},"documentation":"https://www.hivekind.ai/docs/mcp/inbox#replies-send-v2"},{"operation":"signals.feedback.set.v2","domain":"signals","tool":"domain.signals.v2","title":"Set signal feedback","purpose":"Accept or reject a signal for learning.","side_effects":"Writes signal feedback. Does not send mail.","permission":"execute","required_scopes":["actions:execute"],"requires_operation_id":true,"billing":"No gateway rate is configured. Check the Core workflow preview/quote for downstream charges and final settlement.","required_resolved_fields":[],"next_call":{"tool":"domain.signals.v2","arguments":{"params":{"action":"describe","operation":"signals.feedback.set.v2"}}},"catalog_revision":"07a373e389289e05","when_not_to_use":"Do not use this to search signals.","description":"Use when: Accept or reject a signal for learning. Returns/does: Writes signal feedback. Does not send mail. Do not use when: Do not use this to search signals. Identity comes from OAuth. Resolve exact IDs; use typed enums and bounded limits. Billing: Gateway and downstream billing depend on the operation; check its preview/quote and returned billing.","input_schema":{"additionalProperties":false,"properties":{"action_proposal_id":{"anyOf":[{"format":"uuid","type":"string"},{"type":"null"}],"default":null,"description":"Optional. Hivekind fills this from the MCP consent grant.","title":"Action Proposal Id"},"event_id":{"description":"Exact event UUID returned by a Hivekind search, list, get, preview, or resource call.","format":"uuid","title":"Event Id","type":"string"},"verdict":{"description":"Verdict used by the public signals feedback set input v2 operation.","enum":["useful","not_useful"],"title":"Verdict","type":"string"},"reason":{"anyOf":[{"maxLength":2000,"type":"string"},{"type":"null"}],"default":null,"description":"Reason used by the public signals feedback set input v2 operation.","title":"Reason"}},"required":["event_id","verdict"],"title":"McpMcpPublicSignalsFeedbackSetInputV2","type":"object"},"output_schema":{"additionalProperties":false,"description":"V2 result for signals.feedback.set.v2; preserves the established validators.","properties":{"event_id":{"format":"uuid","title":"Event Id","type":"string"},"verdict":{"enum":["useful","not_useful"],"title":"Verdict","type":"string"},"classified_at":{"format":"date-time","title":"Classified At","type":"string"}},"required":["event_id","verdict","classified_at"],"title":"PublicSignalsFeedbackSetResultV2","type":"object"},"example":{"tool":"domain.signals.v2","arguments":{"params":{"action":"invoke","operation":"signals.feedback.set.v2","arguments":{"event_id":"00000000-0000-4000-8000-000000000001","verdict":"useful"},"operation_id":"00000000-0000-4000-8000-000000000003"}},"notice":"Fictional fixture IDs and example text. Resolve real IDs, use returned preview tokens and approve exact side effects before execution. Input validation is not proof of provider readiness or a successful business outcome."},"workflow_steps":[],"approval_policy":"exact_scope_single_action","idempotency_policy":"approved_action_outbox","gateway_credit_code":null,"identity":"Workspace, actor and consent come from OAuth; do not supply identity fields.","retry":"Keep the same operation and operation_id when retrying identical work. Reconcile an uncertain result before new work; never replay an old V1 write under a new V2 ID.","completion":"Check status, execution_state, error_code, output and evidence/resource references. Queued work is not complete: poll jobs.status.get.v2 in domain.workspace.v2. For read-back verification require read_back_verified=true where returned; reconcile failures without creating another object.","result_envelope":{"status":"completed | partial | cancelled | failed","execution_state":"terminal | queued | reconciliation_required","output":"Completed results validate against output_schema; partial/reconciliation results can contain incomplete evidence and must not be treated as completion.","billing":"gateway_credits_spent, downstream_settlement, job_id; pending downstream settlement is not a final cost","references":"run_id, invocation_id, resource_refs, evidence_refs"},"documentation":"https://www.hivekind.ai/docs/mcp/signals#signals-feedback-set-v2"},{"operation":"signals.search.v2","domain":"signals","tool":"domain.signals.v2","title":"Search recorded signals","purpose":"You need bounded, timestamped why-now observations for known accounts or contacts.","side_effects":"Returns recorded observations with coverage limits. Read only.","permission":"read","required_scopes":["accounts:read"],"requires_operation_id":false,"billing":"No gateway credit charge; reads saved workspace data without starting paid provider work.","required_resolved_fields":[],"next_call":{"tool":"domain.signals.v2","arguments":{"params":{"action":"describe","operation":"signals.search.v2"}}},"catalog_revision":"07a373e389289e05","when_not_to_use":"You need to define a Library signal type or subscribe to future alerts.","description":"Use when: You need bounded, timestamped why-now observations for known accounts or contacts. Returns/does: Returns recorded observations with coverage limits. Read only. Do not use when: You need to define a Library signal type or subscribe to future alerts. Identity comes from OAuth. Resolve exact IDs; use typed enums and bounded limits. Billing: Gateway and downstream billing depend on the operation; check its preview/quote and returned billing.","input_schema":{"additionalProperties":false,"properties":{"contact_id":{"anyOf":[{"format":"uuid","type":"string"},{"type":"null"}],"default":null,"description":"Exact contact UUID returned by a Hivekind search, list, get, preview, or resource call.","title":"Contact Id"},"account_id":{"anyOf":[{"format":"uuid","type":"string"},{"type":"null"}],"default":null,"description":"Exact account UUID returned by a Hivekind search, list, get, preview, or resource call.","title":"Account Id"},"channel":{"anyOf":[{"maxLength":64,"minLength":1,"type":"string"},{"type":"null"}],"default":null,"description":"Supported outreach or signal channel. Phone outreach is not supported.","title":"Channel"},"signal_types":{"default":[],"description":"Signal types used by the signals search input v2 operation.","items":{"type":"string"},"maxItems":20,"title":"Signal Types","type":"array"},"lookback_days":{"default":30,"description":"Number of calendar days before today to include.","maximum":365,"minimum":1,"title":"Lookback Days","type":"integer"},"offset":{"default":0,"description":"Pagination offset; reuse observed_until from the first response.","maximum":10000,"minimum":0,"title":"Offset","type":"integer"},"observed_until":{"anyOf":[{"format":"date-time","type":"string"},{"type":"null"}],"default":null,"description":"Fixed UTC observation cutoff for stable pagination; defaults to now.","title":"Observed Until"},"limit":{"default":30,"description":"Maximum number of records to return in this page.","maximum":100,"minimum":1,"title":"Limit","type":"integer"}},"title":"McpSignalsSearchInputV2","type":"object"},"output_schema":{"$defs":{"SignalSummaryV1":{"additionalProperties":false,"properties":{"signal_id":{"format":"uuid","title":"Signal Id","type":"string"},"contact_id":{"anyOf":[{"format":"uuid","type":"string"},{"type":"null"}],"default":null,"title":"Contact Id"},"account_id":{"anyOf":[{"format":"uuid","type":"string"},{"type":"null"}],"default":null,"title":"Account Id"},"campaign_id":{"anyOf":[{"format":"uuid","type":"string"},{"type":"null"}],"default":null,"title":"Campaign Id"},"loop_id":{"anyOf":[{"format":"uuid","type":"string"},{"type":"null"}],"default":null,"title":"Loop Id"},"account_name":{"maxLength":255,"minLength":1,"title":"Account Name","type":"string"},"contact_name":{"anyOf":[{"maxLength":255,"type":"string"},{"type":"null"}],"default":null,"title":"Contact Name"},"channel":{"maxLength":64,"minLength":1,"title":"Channel","type":"string"},"signal_type":{"maxLength":128,"minLength":1,"title":"Signal Type","type":"string"},"intent":{"anyOf":[{"maxLength":128,"type":"string"},{"type":"null"}],"default":null,"title":"Intent"},"sentiment":{"anyOf":[{"maxLength":128,"type":"string"},{"type":"null"}],"default":null,"title":"Sentiment"},"content_excerpt":{"anyOf":[{"maxLength":1000,"type":"string"},{"type":"null"}],"default":null,"title":"Content Excerpt"},"observed_at":{"format":"date-time","title":"Observed At","type":"string"},"resource_path":{"anyOf":[{"maxLength":500,"type":"string"},{"type":"null"}],"default":null,"title":"Resource Path"},"state":{"anyOf":[{"maxLength":64,"type":"string"},{"type":"null"}],"default":null,"title":"State"},"content_is_untrusted":{"const":true,"default":true,"title":"Content Is Untrusted","type":"boolean"}},"required":["signal_id","account_name","channel","signal_type","observed_at"],"title":"SignalSummaryV1","type":"object"}},"additionalProperties":false,"properties":{"signals":{"default":[],"items":{"$ref":"#/$defs/SignalSummaryV1"},"maxItems":100,"title":"Signals","type":"array"},"offset":{"default":0,"title":"Offset","type":"integer"},"has_more":{"default":false,"title":"Has More","type":"boolean"},"observed_until":{"anyOf":[{"format":"date-time","type":"string"},{"type":"null"}],"default":null,"title":"Observed Until"},"coverage":{"default":"Recorded observations only; absence is not proof of no signal.","title":"Coverage","type":"string"}},"title":"SignalsSearchResultV2","type":"object"},"example":{"tool":"domain.signals.v2","arguments":{"params":{"action":"invoke","operation":"signals.search.v2","arguments":{},"operation_id":"00000000-0000-4000-8000-000000000003"}},"notice":"Fictional fixture IDs and example text. Resolve real IDs, use returned preview tokens and approve exact side effects before execution. Input validation is not proof of provider readiness or a successful business outcome."},"workflow_steps":[],"approval_policy":null,"idempotency_policy":"read_only","gateway_credit_code":null,"identity":"Workspace, actor and consent come from OAuth; do not supply identity fields.","retry":"Keep the same operation and operation_id when retrying identical work. Reconcile an uncertain result before new work; never replay an old V1 write under a new V2 ID.","completion":"Check status, execution_state, error_code, output and evidence/resource references. Queued work is not complete: poll jobs.status.get.v2 in domain.workspace.v2. For read-back verification require read_back_verified=true where returned; reconcile failures without creating another object.","result_envelope":{"status":"completed | partial | cancelled | failed","execution_state":"terminal | queued | reconciliation_required","output":"Completed results validate against output_schema; partial/reconciliation results can contain incomplete evidence and must not be treated as completion.","billing":"gateway_credits_spent, downstream_settlement, job_id; pending downstream settlement is not a final cost","references":"run_id, invocation_id, resource_refs, evidence_refs"},"documentation":"https://www.hivekind.ai/docs/mcp/signals#signals-search-v2"},{"operation":"suppression.check.v2","domain":"workspace","tool":"domain.workspace.v2","title":"Check suppression","purpose":"Check whether a contact is suppressed before outreach.","side_effects":"Reads current workspace state.","permission":"read","required_scopes":["runs:read"],"requires_operation_id":false,"billing":"No gateway credit charge; reads saved workspace data without starting paid provider work.","required_resolved_fields":[],"next_call":{"tool":"domain.workspace.v2","arguments":{"params":{"action":"describe","operation":"suppression.check.v2"}}},"catalog_revision":"07a373e389289e05","when_not_to_use":"Launch and sendability already surface suppression blockers. Use this only when checking a specific contact.","description":"Use when: Check whether a contact is suppressed before outreach. Returns/does: Reads the current authorized workspace state. Do not use when: Launch and sendability already surface suppression blockers. Use this only when checking a specific contact. Identity comes from OAuth. Resolve exact IDs; use typed enums and bounded limits. Billing: Gateway and downstream billing depend on the operation; check its preview/quote and returned billing.","input_schema":{"additionalProperties":false,"properties":{"contact_id":{"description":"Exact contact UUID returned by a Hivekind search, list, get, preview, or resource call.","format":"uuid","title":"Contact Id","type":"string"},"channel":{"default":"email","description":"Supported outreach or signal channel. Phone outreach is not supported.","pattern":"^[a-z][a-z0-9_-]{0,31}$","title":"Channel","type":"string"},"loop_id":{"anyOf":[{"format":"uuid","type":"string"},{"type":"null"}],"default":null,"description":"Exact loop UUID returned by a Hivekind search, list, get, preview, or resource call.","title":"Loop Id"}},"required":["contact_id"],"title":"McpPublicSuppressionCheckInputV2","type":"object"},"output_schema":{"$defs":{"SuppressionMatchV1":{"additionalProperties":false,"properties":{"suppression_id":{"format":"uuid","title":"Suppression Id","type":"string"},"channel":{"maxLength":32,"minLength":1,"title":"Channel","type":"string"},"scope":{"maxLength":32,"minLength":1,"title":"Scope","type":"string"},"suppression_type":{"maxLength":32,"minLength":1,"title":"Suppression Type","type":"string"},"reason":{"maxLength":255,"minLength":1,"title":"Reason","type":"string"}},"required":["suppression_id","channel","scope","suppression_type","reason"],"title":"SuppressionMatchV1","type":"object"}},"additionalProperties":false,"description":"V2 result for suppression.check.v2; preserves the established validators.","properties":{"contact_id":{"format":"uuid","title":"Contact Id","type":"string"},"requested_channel":{"maxLength":32,"minLength":1,"title":"Requested Channel","type":"string"},"suppressed":{"title":"Suppressed","type":"boolean"},"matches":{"default":[],"items":{"$ref":"#/$defs/SuppressionMatchV1"},"title":"Matches","type":"array"}},"required":["contact_id","requested_channel","suppressed"],"title":"PublicSuppressionCheckResultV2","type":"object"},"example":{"tool":"domain.workspace.v2","arguments":{"params":{"action":"invoke","operation":"suppression.check.v2","arguments":{"contact_id":"00000000-0000-4000-8000-000000000001"},"operation_id":"00000000-0000-4000-8000-000000000003"}},"notice":"Fictional fixture IDs and example text. Resolve real IDs, use returned preview tokens and approve exact side effects before execution. Input validation is not proof of provider readiness or a successful business outcome."},"workflow_steps":[],"approval_policy":null,"idempotency_policy":"read_only","gateway_credit_code":null,"identity":"Workspace, actor and consent come from OAuth; do not supply identity fields.","retry":"Keep the same operation and operation_id when retrying identical work. Reconcile an uncertain result before new work; never replay an old V1 write under a new V2 ID.","completion":"Check status, execution_state, error_code, output and evidence/resource references. Queued work is not complete: poll jobs.status.get.v2 in domain.workspace.v2. For read-back verification require read_back_verified=true where returned; reconcile failures without creating another object.","result_envelope":{"status":"completed | partial | cancelled | failed","execution_state":"terminal | queued | reconciliation_required","output":"Completed results validate against output_schema; partial/reconciliation results can contain incomplete evidence and must not be treated as completion.","billing":"gateway_credits_spent, downstream_settlement, job_id; pending downstream settlement is not a final cost","references":"run_id, invocation_id, resource_refs, evidence_refs"},"documentation":"https://www.hivekind.ai/docs/mcp/workspace#suppression-check-v2"},{"operation":"targets.preview.v2","domain":"intelligence","tool":"domain.intelligence.v2","title":"Preview a qualified target audience","purpose":"You need accounts with verified LinkedIn paths ranked by saved ICP grade/score, including connected ungraded accounts.","side_effects":"No-write preview. Filters consented path eligibility before ranking and returns graded and ungraded sections separately.","permission":"propose","required_scopes":["accounts:read"],"requires_operation_id":true,"billing":"No gateway rate is configured. Check the Core workflow preview/quote for downstream charges and final settlement.","required_resolved_fields":[],"next_call":{"tool":"domain.intelligence.v2","arguments":{"params":{"action":"describe","operation":"targets.preview.v2"}}},"catalog_revision":"07a373e389289e05","when_not_to_use":"You need one known account or only account-level filters; use accounts.search.v2.","description":"Use when: You need accounts with verified LinkedIn paths ranked by saved ICP grade/score, including connected ungraded accounts. Returns/does: No-write preview. Filters consented path eligibility before ranking and returns graded and ungraded sections separately. Do not use when: You need one known account or only account-level filters; use accounts.search.v2. Identity comes from OAuth. Resolve exact IDs; use typed enums and bounded limits. Billing: Gateway and downstream billing depend on the operation; check its preview/quote and returned billing.","input_schema":{"additionalProperties":false,"properties":{"query":{"default":"*","description":"Optional account name, domain, or industry text; * means any account.","maxLength":255,"minLength":1,"title":"Query","type":"string"},"account_ids":{"default":[],"description":"Optional exact account UUID scope resolved from a prior search.","items":{"format":"uuid","type":"string"},"maxItems":500,"title":"Account Ids","type":"array"},"owner_scope":{"default":"workspace","description":"Account ownership scope; mine is derived from the signed-in actor.","enum":["mine","workspace","assigned","unassigned"],"title":"Owner Scope","type":"string"},"owner_ids":{"default":[],"description":"Optional exact owner UUIDs; cannot be combined with mine or unassigned.","items":{"format":"uuid","type":"string"},"maxItems":100,"title":"Owner Ids","type":"array"},"industries":{"default":[],"description":"Industries used by the targets preview input v2 operation.","items":{"type":"string"},"maxItems":50,"title":"Industries","type":"array"},"regions":{"default":[],"description":"Regions used by the targets preview input v2 operation.","items":{"type":"string"},"maxItems":50,"title":"Regions","type":"array"},"account_types":{"default":[],"description":"Account types used by the targets preview input v2 operation.","items":{"type":"string"},"maxItems":20,"title":"Account Types","type":"array"},"buyer_roles":{"default":[],"description":"Require at least one active account contact with one of these buyer roles.","items":{"type":"string"},"maxItems":20,"title":"Buyer Roles","type":"array"},"signal_types":{"default":[],"description":"Require at least one recorded account/contact signal of one of these types.","items":{"type":"string"},"maxItems":20,"title":"Signal Types","type":"array"},"signal_lookback_days":{"default":30,"description":"Signal lookback days used by the targets preview input v2 operation.","maximum":365,"minimum":1,"title":"Signal Lookback Days","type":"integer"},"network_scope":{"default":"workspace_consented","description":"Whether verified paths are limited to self or may include sharing teammates.","enum":["self","workspace_consented"],"title":"Network Scope","type":"string"},"require_verified_path":{"default":true,"description":"When true, path eligibility is evaluated before ranking and pagination.","title":"Require Verified Path","type":"boolean"},"icp_score_state":{"default":"any","description":"Icp score state used by the targets preview input v2 operation.","enum":["any","scored_only","unscored_only"],"title":"Icp Score State","type":"string"},"icp_grades":{"default":[],"description":"Icp grades used by the targets preview input v2 operation.","items":{"enum":["A","B","C","D","E","F"],"type":"string"},"maxItems":6,"title":"Icp Grades","type":"array"},"include_ungraded":{"default":true,"description":"Return path-qualified accounts without a complete saved grade/score separately.","title":"Include Ungraded","type":"boolean"},"ranking":{"default":"grade_then_score","description":"Ranking used by the targets preview input v2 operation.","enum":["grade_then_score","score_desc","signal_then_score"],"title":"Ranking","type":"string"},"graded_limit":{"default":25,"description":"Graded limit used by the targets preview input v2 operation.","maximum":100,"minimum":1,"title":"Graded Limit","type":"integer"},"ungraded_limit":{"default":100,"description":"Ungraded limit used by the targets preview input v2 operation.","maximum":100,"minimum":1,"title":"Ungraded Limit","type":"integer"},"cursor":{"anyOf":[{"maxLength":500,"type":"string"},{"type":"null"}],"default":null,"description":"Opaque cursor returned by a previous call; do not construct it.","title":"Cursor"}},"title":"McpTargetsPreviewInputV2","type":"object"},"output_schema":{"$defs":{"TargetAccountV2":{"additionalProperties":false,"properties":{"account_id":{"format":"uuid","title":"Account Id","type":"string"},"name":{"maxLength":255,"minLength":1,"title":"Name","type":"string"},"domain":{"anyOf":[{"maxLength":255,"type":"string"},{"type":"null"}],"default":null,"title":"Domain"},"industry":{"anyOf":[{"maxLength":255,"type":"string"},{"type":"null"}],"default":null,"title":"Industry"},"region":{"anyOf":[{"maxLength":255,"type":"string"},{"type":"null"}],"default":null,"title":"Region"},"owner_id":{"anyOf":[{"format":"uuid","type":"string"},{"type":"null"}],"default":null,"title":"Owner Id"},"icp_score":{"anyOf":[{"maximum":100,"minimum":0,"type":"number"},{"pattern":"^(?!^[-+.]*$)[+-]?0*\\d*\\.?\\d*$","type":"string"},{"type":"null"}],"default":null,"title":"Icp Score"},"icp_grade":{"anyOf":[{"maxLength":32,"type":"string"},{"type":"null"}],"default":null,"title":"Icp Grade"},"paths":{"default":[],"items":{"$ref":"#/$defs/TargetPathV2"},"maxItems":50,"title":"Paths","type":"array"},"evidence_refs":{"default":[],"items":{"type":"string"},"maxItems":50,"title":"Evidence Refs","type":"array"}},"required":["account_id","name"],"title":"TargetAccountV2","type":"object"},"TargetCoverageV2":{"additionalProperties":false,"properties":{"network_scope":{"enum":["self","workspace_consented"],"title":"Network Scope","type":"string"},"sync_state":{"enum":["synced","syncing","degraded","not_connected","unknown"],"title":"Sync State","type":"string"},"candidate_accounts":{"minimum":0,"title":"Candidate Accounts","type":"integer"},"matched_accounts":{"minimum":0,"title":"Matched Accounts","type":"integer"},"matched_contacts":{"minimum":0,"title":"Matched Contacts","type":"integer"},"path_filter_applied_before_ranking":{"title":"Path Filter Applied Before Ranking","type":"boolean"},"last_synced_at":{"anyOf":[{"format":"date-time","type":"string"},{"type":"null"}],"default":null,"title":"Last Synced At"},"limitations":{"default":[],"items":{"type":"string"},"maxItems":10,"title":"Limitations","type":"array"}},"required":["network_scope","sync_state","candidate_accounts","matched_accounts","matched_contacts","path_filter_applied_before_ranking"],"title":"TargetCoverageV2","type":"object"},"TargetExcludedCountsV2":{"additionalProperties":false,"properties":{"no_path":{"default":0,"minimum":0,"title":"No Path","type":"integer"},"unknown_path":{"default":0,"minimum":0,"title":"Unknown Path","type":"integer"},"not_synced":{"default":0,"minimum":0,"title":"Not Synced","type":"integer"},"no_score":{"default":0,"minimum":0,"title":"No Score","type":"integer"}},"title":"TargetExcludedCountsV2","type":"object"},"TargetPathV2":{"additionalProperties":false,"properties":{"contact_id":{"format":"uuid","title":"Contact Id","type":"string"},"contact_name":{"maxLength":255,"minLength":1,"title":"Contact Name","type":"string"},"contact_title":{"anyOf":[{"maxLength":255,"type":"string"},{"type":"null"}],"default":null,"title":"Contact Title"},"relationship_state":{"const":"connected","default":"connected","title":"Relationship State","type":"string"},"path_type":{"enum":["first_degree","second_degree","introduction","none"],"title":"Path Type","type":"string"},"network_scope":{"enum":["self","workspace_consented"],"title":"Network Scope","type":"string"},"match_method":{"enum":["provider_member_id_exact","linkedin_url_exact","approved_identity_match","unknown"],"title":"Match Method","type":"string"},"degree":{"anyOf":[{"maximum":3,"minimum":1,"type":"integer"},{"type":"null"}],"default":null,"title":"Degree"},"member_user_id":{"anyOf":[{"format":"uuid","type":"string"},{"type":"null"}],"default":null,"title":"Member User Id"},"member_name":{"anyOf":[{"maxLength":255,"type":"string"},{"type":"null"}],"default":null,"title":"Member Name"},"is_self":{"default":false,"title":"Is Self","type":"boolean"},"freshness_at":{"format":"date-time","title":"Freshness At","type":"string"},"selected_sender_reachable":{"title":"Selected Sender Reachable","type":"boolean"},"evidence_refs":{"default":[],"items":{"type":"string"},"maxItems":10,"title":"Evidence Refs","type":"array"}},"required":["contact_id","contact_name","path_type","network_scope","match_method","freshness_at","selected_sender_reachable"],"title":"TargetPathV2","type":"object"}},"additionalProperties":false,"properties":{"query_id":{"maxLength":128,"minLength":1,"title":"Query Id","type":"string"},"coverage":{"$ref":"#/$defs/TargetCoverageV2"},"filters_applied":{"additionalProperties":true,"title":"Filters Applied","type":"object"},"graded_accounts":{"default":[],"items":{"$ref":"#/$defs/TargetAccountV2"},"maxItems":100,"title":"Graded Accounts","type":"array"},"connected_ungraded_accounts":{"default":[],"items":{"$ref":"#/$defs/TargetAccountV2"},"maxItems":100,"title":"Connected Ungraded Accounts","type":"array"},"excluded_counts":{"$ref":"#/$defs/TargetExcludedCountsV2"},"next_cursor":{"anyOf":[{"maxLength":500,"type":"string"},{"type":"null"}],"default":null,"title":"Next Cursor"}},"required":["query_id","coverage","filters_applied","excluded_counts"],"title":"TargetsPreviewResultV2","type":"object"},"example":{"tool":"domain.intelligence.v2","arguments":{"params":{"action":"invoke","operation":"targets.preview.v2","arguments":{},"operation_id":"00000000-0000-4000-8000-000000000003"}},"notice":"Fictional fixture IDs and example text. Resolve real IDs, use returned preview tokens and approve exact side effects before execution. Input validation is not proof of provider readiness or a successful business outcome."},"workflow_steps":[],"approval_policy":null,"idempotency_policy":"read_only_query_cursor","gateway_credit_code":null,"identity":"Workspace, actor and consent come from OAuth; do not supply identity fields.","retry":"Keep the same operation and operation_id when retrying identical work. Reconcile an uncertain result before new work; never replay an old V1 write under a new V2 ID.","completion":"Check status, execution_state, error_code, output and evidence/resource references. Queued work is not complete: poll jobs.status.get.v2 in domain.workspace.v2. For read-back verification require read_back_verified=true where returned; reconcile failures without creating another object.","result_envelope":{"status":"completed | partial | cancelled | failed","execution_state":"terminal | queued | reconciliation_required","output":"Completed results validate against output_schema; partial/reconciliation results can contain incomplete evidence and must not be treated as completion.","billing":"gateway_credits_spent, downstream_settlement, job_id; pending downstream settlement is not a final cost","references":"run_id, invocation_id, resource_refs, evidence_refs"},"documentation":"https://www.hivekind.ai/docs/mcp/intelligence#targets-preview-v2"},{"operation":"workspace.status.get.v2","domain":"workspace","tool":"domain.workspace.v2","title":"Workspace status","purpose":"You need workspace readiness, usage, governance, or operating blockers before work.","side_effects":"Returns a bounded workspace operations summary. Read only.","permission":"read","required_scopes":["runs:read"],"requires_operation_id":false,"billing":"No gateway credit charge; reads saved workspace data without starting paid provider work.","required_resolved_fields":[],"next_call":{"tool":"domain.workspace.v2","arguments":{"params":{"action":"describe","operation":"workspace.status.get.v2"}}},"catalog_revision":"07a373e389289e05","when_not_to_use":"You need account, target, or campaign records.","description":"Use when: You need workspace readiness, usage, governance, or operating blockers before work. Returns/does: Returns a bounded workspace operations summary. Read only. Do not use when: You need account, target, or campaign records. Identity comes from OAuth. Resolve exact IDs; use typed enums and bounded limits. Billing: Gateway and downstream billing depend on the operation; check its preview/quote and returned billing.","input_schema":{"additionalProperties":false,"properties":{"lookback_days":{"default":30,"description":"Number of calendar days before today to include.","maximum":365,"minimum":1,"title":"Lookback Days","type":"integer"},"landing_page_limit":{"default":20,"description":"Landing page limit used by the workspace status get input v2 operation.","maximum":50,"minimum":1,"title":"Landing Page Limit","type":"integer"}},"title":"McpWorkspaceStatusGetInputV2","type":"object"},"output_schema":{"$defs":{"LandingPageOperationalSummaryV1":{"additionalProperties":false,"properties":{"landing_page_id":{"format":"uuid","title":"Landing Page Id","type":"string"},"account_id":{"format":"uuid","title":"Account Id","type":"string"},"account_name":{"maxLength":255,"minLength":1,"title":"Account Name","type":"string"},"name":{"maxLength":255,"minLength":1,"title":"Name","type":"string"},"status":{"maxLength":64,"minLength":1,"title":"Status","type":"string"},"template_id":{"anyOf":[{"format":"uuid","type":"string"},{"type":"null"}],"default":null,"title":"Template Id"},"published_at":{"anyOf":[{"format":"date-time","type":"string"},{"type":"null"}],"default":null,"title":"Published At"},"last_visit_at":{"anyOf":[{"format":"date-time","type":"string"},{"type":"null"}],"default":null,"title":"Last Visit At"},"visit_count":{"minimum":0,"title":"Visit Count","type":"integer"},"unique_visitor_count":{"minimum":0,"title":"Unique Visitor Count","type":"integer"}},"required":["landing_page_id","account_id","account_name","name","status","visit_count","unique_visitor_count"],"title":"LandingPageOperationalSummaryV1","type":"object"},"LandingPagesOperationsSummaryV1":{"additionalProperties":false,"properties":{"pages":{"default":[],"items":{"$ref":"#/$defs/LandingPageOperationalSummaryV1"},"maxItems":50,"title":"Pages","type":"array"},"status_counts":{"additionalProperties":{"type":"integer"},"maxProperties":32,"title":"Status Counts","type":"object"},"total_visits":{"minimum":0,"title":"Total Visits","type":"integer"},"unique_visitors":{"minimum":0,"title":"Unique Visitors","type":"integer"},"lookback_days":{"maximum":365,"minimum":1,"title":"Lookback Days","type":"integer"}},"required":["total_visits","unique_visitors","lookback_days"],"title":"LandingPagesOperationsSummaryV1","type":"object"},"OnboardingOperationsSummaryV1":{"additionalProperties":false,"properties":{"builder_status":{"enum":["none","processing","ready","committed","failed","unknown"],"title":"Builder Status","type":"string"},"builder_updated_at":{"anyOf":[{"format":"date-time","type":"string"},{"type":"null"}],"default":null,"title":"Builder Updated At"},"latest_assessment_id":{"anyOf":[{"format":"uuid","type":"string"},{"type":"null"}],"default":null,"title":"Latest Assessment Id"},"latest_assessment_status":{"anyOf":[{"maxLength":32,"type":"string"},{"type":"null"}],"default":null,"title":"Latest Assessment Status"},"latest_assessment_score":{"anyOf":[{"maximum":100,"minimum":0,"type":"integer"},{"type":"null"}],"default":null,"title":"Latest Assessment Score"},"latest_assessment_band":{"anyOf":[{"maxLength":32,"type":"string"},{"type":"null"}],"default":null,"title":"Latest Assessment Band"},"latest_assessment_completed_at":{"anyOf":[{"format":"date-time","type":"string"},{"type":"null"}],"default":null,"title":"Latest Assessment Completed At"}},"required":["builder_status"],"title":"OnboardingOperationsSummaryV1","type":"object"},"UsageCategorySummaryV1":{"additionalProperties":false,"properties":{"category":{"maxLength":64,"minLength":1,"title":"Category","type":"string"},"operation_count":{"minimum":0,"title":"Operation Count","type":"integer"},"credits_spent":{"anyOf":[{"minimum":0,"type":"number"},{"pattern":"^(?!^[-+.]*$)[+-]?0*\\d*\\.?\\d*$","type":"string"}],"title":"Credits Spent"}},"required":["category","operation_count","credits_spent"],"title":"UsageCategorySummaryV1","type":"object"},"WorkspaceGovernanceSummaryV1":{"additionalProperties":false,"properties":{"mfa_required":{"title":"Mfa Required","type":"boolean"},"share_event_enrichments":{"title":"Share Event Enrichments","type":"boolean"},"custom_domain_status_counts":{"additionalProperties":{"type":"integer"},"maxProperties":16,"title":"Custom Domain Status Counts","type":"object"},"connector_status_counts":{"additionalProperties":{"type":"integer"},"maxProperties":16,"title":"Connector Status Counts","type":"object"}},"required":["mfa_required","share_event_enrichments"],"title":"WorkspaceGovernanceSummaryV1","type":"object"},"WorkspaceProfileSummaryV1":{"additionalProperties":false,"properties":{"workspace_id":{"format":"uuid","title":"Workspace Id","type":"string"},"name":{"maxLength":255,"minLength":1,"title":"Name","type":"string"},"company_domain":{"anyOf":[{"maxLength":255,"type":"string"},{"type":"null"}],"default":null,"title":"Company Domain"},"automation_mode":{"anyOf":[{"maxLength":64,"type":"string"},{"type":"null"}],"default":null,"title":"Automation Mode"},"member_count":{"minimum":0,"title":"Member Count","type":"integer"},"account_count":{"minimum":0,"title":"Account Count","type":"integer"},"contact_count":{"minimum":0,"title":"Contact Count","type":"integer"}},"required":["workspace_id","name","member_count","account_count","contact_count"],"title":"WorkspaceProfileSummaryV1","type":"object"},"WorkspaceUsageSummaryV1":{"additionalProperties":false,"properties":{"balance":{"anyOf":[{"type":"number"},{"pattern":"^(?!^[-+.]*$)[+-]?0*\\d*\\.?\\d*$","type":"string"}],"title":"Balance"},"account_status":{"maxLength":32,"minLength":1,"title":"Account Status","type":"string"},"spent_credits":{"anyOf":[{"minimum":0,"type":"number"},{"pattern":"^(?!^[-+.]*$)[+-]?0*\\d*\\.?\\d*$","type":"string"}],"title":"Spent Credits"},"credits_added":{"anyOf":[{"minimum":0,"type":"number"},{"pattern":"^(?!^[-+.]*$)[+-]?0*\\d*\\.?\\d*$","type":"string"}],"title":"Credits Added"},"categories":{"default":[],"items":{"$ref":"#/$defs/UsageCategorySummaryV1"},"maxItems":64,"title":"Categories","type":"array"},"lookback_days":{"maximum":365,"minimum":1,"title":"Lookback Days","type":"integer"},"mcp_spent_credits":{"anyOf":[{"minimum":0,"type":"number"},{"pattern":"^(?!^[-+.]*$)[+-]?0*\\d*\\.?\\d*$","type":"string"}],"default":"0","title":"Mcp Spent Credits"}},"required":["balance","account_status","spent_credits","credits_added","lookback_days"],"title":"WorkspaceUsageSummaryV1","type":"object"}},"additionalProperties":false,"properties":{"schema_version":{"const":"1","default":"1","title":"Schema Version","type":"string"},"workspace":{"$ref":"#/$defs/WorkspaceProfileSummaryV1"},"landing_pages":{"$ref":"#/$defs/LandingPagesOperationsSummaryV1"},"usage":{"$ref":"#/$defs/WorkspaceUsageSummaryV1"},"onboarding":{"$ref":"#/$defs/OnboardingOperationsSummaryV1"},"governance":{"$ref":"#/$defs/WorkspaceGovernanceSummaryV1"}},"required":["workspace","landing_pages","usage","onboarding","governance"],"title":"WorkspaceStatusGetResultV2","type":"object"},"example":{"tool":"domain.workspace.v2","arguments":{"params":{"action":"invoke","operation":"workspace.status.get.v2","arguments":{},"operation_id":"00000000-0000-4000-8000-000000000003"}},"notice":"Fictional fixture IDs and example text. Resolve real IDs, use returned preview tokens and approve exact side effects before execution. Input validation is not proof of provider readiness or a successful business outcome."},"workflow_steps":[],"approval_policy":null,"idempotency_policy":"read_only","gateway_credit_code":null,"identity":"Workspace, actor and consent come from OAuth; do not supply identity fields.","retry":"Keep the same operation and operation_id when retrying identical work. Reconcile an uncertain result before new work; never replay an old V1 write under a new V2 ID.","completion":"Check status, execution_state, error_code, output and evidence/resource references. Queued work is not complete: poll jobs.status.get.v2 in domain.workspace.v2. For read-back verification require read_back_verified=true where returned; reconcile failures without creating another object.","result_envelope":{"status":"completed | partial | cancelled | failed","execution_state":"terminal | queued | reconciliation_required","output":"Completed results validate against output_schema; partial/reconciliation results can contain incomplete evidence and must not be treated as completion.","billing":"gateway_credits_spent, downstream_settlement, job_id; pending downstream settlement is not a final cost","references":"run_id, invocation_id, resource_refs, evidence_refs"},"documentation":"https://www.hivekind.ai/docs/mcp/workspace#workspace-status-get-v2"}]}