Docs

Tools Index

Total tools: 246.

Tool IDCategoryHTTPScopesDescription
agent_blueprint.getworkflowsGET /agent-blueprints/:idartifacts:readFetch one agent_blueprint by id, including the full DSL content_json. The id is either a starter slug, a starter's deterministic UUID, or a tenant blueprint UUI
agent_blueprint.listworkflowsGET /agent-blueprintsartifacts:readList every agent_blueprint accessible to this business: Amdahl-shipped starters (forkable recipes in code) first, then the tenant's own DB-stored blueprints. Us
agent_profile.listworkflowsGET /agent-profilesworkflows:readRegistered agent profiles - the specialist profiles an agent can delegate to (researcher, content_writer, orchestrator). Use when deciding whether to delegate a
agent_run.getworkflowsGET /agent-runs/:idworkflows:readFetch a single agent run by UUID, including step_data events, the full conversation log, token usage, and final status. Use when debugging an individual turn, r
agent_run.listworkflowsGET /agent-runsworkflows:readList agent runs (individual turn executions) for this business, newest first. Use when rendering per-turn activity, filtering by run status (queued|running|co
agents.backtest_blueprintworkflowsPOST /agent-blueprints/:id/backtestworkflows:delegateLaunch a range-sweep backtest of a saved agent_blueprint: fire a series of as-of runs across a date range at a cadence (monthly|weekly), grouped into one sweep
agents.cancelworkflowsPOST /agents/:session_id/cancelworkflows:writeCancel an in-flight agent run. Use when the user wants to stop a running agent before it finishes, or abandon a run that has gone sideways. Cascades to any sub-
agents.fork_blueprintworkflowsPOST /agent-blueprints/forkworkflows:delegateDuplicate a starter or tenant blueprint into the caller's namespace as a new draft artifact. Use when forking an Amdahl-shipped starter to customize it, or dupl
agents.preview_backtestworkflowsPOST /agent-blueprints/:id/backtest/previewworkflows:delegateDry-run a range-sweep backtest WITHOUT firing anything: given a blueprint, a date range, and a cadence (monthly|weekly), return the ordered as-of dates the swe
agents.resumeworkflowsPOST /agents/:session_id/resumeworkflows:writeResume an agent run that is paused on pending user input. Use when replying to an outline approval prompt, a clarification question, or a continue/finish decisi
agents.run_blueprintworkflowsPOST /agent-blueprints/:id/runworkflows:delegateTrigger a headless run of a saved agent_blueprint on the Claude Agent SDK. Use when launching a blueprint by id with explicit inputs (optionally as a backtest v
agents.startworkflowsPOST /agents/runworkflows:delegateStart a new agent run. Use when delegating a bounded, heavy task to a specialist profile (content_writer, researcher) or kicking off a one-shot copilot run. Ret
author_profile.getcontext-context:readFetch a single author profile by UUID, including the attached writing samples and LinkedIn scraped profiles. Use when the agent already has an id (from list or
author_profile.listcontext-context:readList author profiles for this business (self, team, and external inspirational authors). Use when populating the v2 content creation Author selector, or before
authors.createcontext-config:writePersist a brand-new author_profiles row for the caller's workspace. Call when the settings page collects a name (required) plus optional role title and relation
authors.deletecontext-config:writePermanently remove an author_profiles row owned by the caller's workspace. Call when an operator wants to retire a teammate or an external inspiration entry who
authors.getcontext-config:readFetch one author_profile row joined to its writing-sample and scraped-profile junctions, returned alongside a voice ResourceStatus envelope. Read when the setti
authors.linkedin_statuscontext-config:readRead-only polling surface for a LinkedIn scrape / refresh job. Use when a UI indicator needs to tick without risking a new enqueue — this handler never spawns w
authors.listcontext-config:readEnumerate every author profile registered for the caller's workspace along with per-author junction-row counts (writing samples, scraped LinkedIn profiles, voic
authors.refresh_linkedincontext-config:writeIdempotently re-run a LinkedIn scrape for an existing author_profile_scraped_profiles junction row, keyed by scrapedProfileId. Use when the operator wants to pu
authors.regenerate_voicecontext-config:writeKick off the LLM voice-analysis pipeline for one author, returning a background jobId so the UI can poll progress. Call when an operator clicks Regenerate or af
authors.scrape_linkedincontext-config:writeIdempotently start an async LinkedIn profile scrape and attach it to an author_profile via the author_profile_scraped_profiles junction. Use when adding a new L
authors.set_scraped_profilescontext-config:writeOverwrite the author's scraped-LinkedIn-profile junction rows with the provided author_name list. Invoke when the settings drawer saves a reshuffled source list
authors.set_writing_samplescontext-config:writeOverwrite the caller's author-profile writing_samples junction with the exact array of sample UUIDs provided. Invoke when the settings page saves a reshuffled s
authors.updatecontext-config:writePatch one or more mutable fields (name, role, relationship) on an existing author_profile row. Invoke when the settings drawer saves an edit to a teammate's tit
authors.update_scraped_profile_rolecontext-config:writeFlip the content_role on an author_profile_scraped_profiles junction row between author_voice and inspirational. Use when promoting a scraped LinkedIn profile f
authors.update_writing_sample_rolecontext-config:writeFlip the content_role on an author_profile_writing_samples junction row between author_voice and inspirational. Use when reclassifying an attached writing sampl
authors.voice_statuscontext-config:readReturn the current voice ResourceStatus for one author without spawning any new work. Use for fast-cadence polling from the settings detail drawer while a voice
blueprint_backtest.getworkflowsGET /blueprint-backtests/:idworkflows:readFetch a single range-sweep backtest by id, with its as-of points resolved against their child blueprint runs (per-point run status) and a rolled-up status summa
blueprint_backtest.listworkflowsGET /blueprint-backtestsworkflows:readList range-sweep backtests (each a series of as-of blueprint runs across a date range) for this business, newest first. Use when rendering the backtest-history
blueprint_output.diffworkflowsGET /blueprint-outputs/:id/diffworkflows:readCompute a line-level unified diff of a living-doc version (:id, the target) against a base version. Use for the version-diff view. Base defaults to the immediat
blueprint_output.getworkflowsGET /blueprint-outputs/:idworkflows:readFetch a single blueprint living-doc version by id, including promotion status, the kb_doc_id it serves, and provenance (source_run_id, as_of, diff_summary, qual
blueprint_output.listworkflowsGET /blueprint-outputsworkflows:readList a recurring blueprint's living-doc versions for this business, newest first. Use when rendering the Versions tab, finding the current canonical (each row c
blueprint_output.list_commentsworkflowsGET /blueprint-outputs/:id/commentsworkflows:readList a workflow living-doc version’s review threads for the Workflows Versions tab (:id is the output / knowledge_bank_documents id). Use when a reviewer opens
blueprint_run.getworkflowsGET /blueprint-runs/:idworkflows:readFetch a single blueprint run by id, including step_states, current_step_id, tokens used, and any error message. Use when rendering an individual run timeline or
blueprint_run.listworkflowsGET /blueprint-runsworkflows:readList blueprint runs (one per agent_blueprint invocation) for this business, newest first. Use when rendering the run-history timeline, filtering by blueprint_id
blueprint_schedule.createworkflowsPOST /agent-blueprints/:id/schedulesworkflows:delegateCreate a recurring CRON schedule that fires a saved agent_blueprint headlessly. An agent can call this to schedule unattended runs (e.g. "run the research-repor
blueprint_schedule.deleteworkflowsDELETE /blueprint-schedules/:idworkflows:delegateDelete a blueprint cron schedule by id. An agent can call this to remove a scheduled run entirely (to merely pause it, use blueprint_schedule.update with enable
blueprint_schedule.getworkflowsGET /blueprint-schedules/:idworkflows:readFetch a single blueprint cron schedule by id, including its cron, timezone, inputs, enabled flag, and last/next run bookkeeping. Use when rendering or auditing
blueprint_schedule.listworkflowsGET /blueprint-schedulesworkflows:readList cron schedules (one per scheduled agent_blueprint) for this business, newest first. Use when rendering the schedules surface, filtering by blueprint_id, or
blueprint_schedule.updateworkflowsPATCH /blueprint-schedules/:idworkflows:delegateUpdate an existing blueprint cron schedule: change its cron, timezone, inputs, name, or enable/disable it. An agent can call this to retune or pause a scheduled
blueprints.createworkflowsPOST /agent-blueprintsversioning:writeAuthor and save a brand-new agent_blueprint recipe for this workspace from a v1 DSL body. Use when a user composes a fresh automation in the editor (or asks cha
blueprints.deleteworkflowsDELETE /agent-blueprints/:idversioning:writeArchive a workspace blueprint so it drops out of the active library while staying recoverable. Use when a user removes a recipe they no longer need; the row is
blueprints.promote_outputworkflowsPOST /agent-blueprints/:id/promoteversioning:writePromote a blueprint version to canonical — the single served document a recurring blueprint's living doc resolves to. Use when a human reviews a proposed versio
blueprints.unarchiveworkflowsPOST /agent-blueprints/:id/unarchiveversioning:writeBring a previously archived workspace blueprint back into the active library. Use when a user undoes a blueprint removal and wants the recipe usable again. Oper
blueprints.updateworkflowsPATCH /agent-blueprints/:idversioning:writeSave edits to a workspace blueprint the caller already owns. Use when a user modifies an existing recipe and persists the change. The content field is a full re
blueprints.validateworkflowsPOST /agent-blueprints/validateversioning:writeDry-run a blueprint DSL body through the full authoring moat without persisting anything. Use when an editor wants author-time feedback on a draft before saving
business_profile.getcontext-config:readFetch this workspace's business profile with an auto-enqueue guarantee. Returns the ResourceStatus envelope { status, data, jobId, lastUpdated, progress, error
business_profile.get_schedulecontext-config:readFetch the auto-discovery sync schedule (enabled flag, frequency weekly/biweekly/monthly, freshness threshold in days, refresh-existing-profiles toggle) for this
business_profile.readcontext-config:readRead the signed-in workspace's stored business profile (company, industry, ICP, content themes, and competitors) as a ResourceStatus envelope. Read when an agen
business_profile.refreshcontext-config:writeTrigger a profile-only discovery run that rewrites the stored business profile from current web signals. Use when the operator wants to force a fresh regenerati
business_profile.refresh_sourcescontext-config:writeKick off a full-discovery pipeline (profile regeneration plus author source inspection + scraping). Use when the operator wants to bring every discovered source
business_profile.statuscontext-config:readRead-only polling surface for the business profile refresh job. Use when a progress indicator needs to tick without risking a new enqueue — this handler never s
business_profile.updatecontext-config:writePatch the stored business profile with a user-edited partial payload. Use when the operator hand-corrects discovery output (company name, industry, ICP, competi
business_profile.update_schedulecontext-config:writePersist a new auto-discovery sync schedule for this workspace. Use when the operator toggles enabled, changes frequency between weekly / biweekly / monthly, adj
company.getdata-data:readFetch the interactions-catalog entry for a single company by name (case-insensitive exact match). Use when the agent already has a company name from input_param
company.listdata-data:readList distinct company names present in this business's interactions data, ordered by name. Use when populating the v2 ICP / company-focus picker or when the age
company.searchdata-data:readSubstring-search companies present in this business's interactions by name. Use when the user types into a company typeahead or when the agent wants to shortlis
connections.connectdataPOST /connectionsconnections:writeEstablish a new integration for a workspace, routing on the connector type: collect an API key, kick off an OAuth redirect, or track a social handle. Use when a
connections.disconnectdataDELETE /connections/:idconnections:deleteDisconnect one established integration by its id, scoped to the workspace. Use when a user wants to stop an integration: the source (a CRM / calls / docs connec
connections.getdataGET /connections/:idconnections:readFetch one established integration by its id, resolved across both first-party data sources and tracked social accounts and scoped to the caller's workspace. Rea
connections.get_statusdataGET /connections/:id/statusconnections:readFetch the live sync state of one integration - its normalized health, the in-flight syncing flag, the last good sync time, and any last error - without pulling
connections.listdataGET /connectionsconnections:readRead every integration a workspace has actually established, newest first, merging first-party data sources and tracked social accounts into one normalized list
connections.list_catalogdataGET /connections/catalogconnections:readRead the catalog of integrations a workspace can hook up - CRM, calls, comms, docs, support, and social - with each entry's connect flow, ownership, and the dat
connections.list_runsdataGET /connections/:id/runsconnections:readRead the recent sync-run history of one integration - each run's outcome, what triggered it, when it started and finished, how many streams ran or failed, the r
connections.reconnectdataPOST /connections/:id/reconnectconnections:writeRestore a connection stuck in an error or needs-reauth state, in place on the existing data source so its sync history and id survive (no duplicate row). Use wh
connections.updatedataPATCH /connections/:idconnections:writeRename an established connection, or set/clear its owner - the workspace member a personal source (e.g. Gmail, Outlook) belongs to. Use when a user wants to rel
console.crm_mappings.getconfiguration-config:readRead the business's current CRM mappings configuration: deal-stage mappings (raw CRM stage → normalized pipeline stage) and deal-amount tiers, plus version and
console.data_filters.getconfiguration-config:readRead the business's current data-filter configuration: the full rules array plus version and applied_version stamps. Use when the caller needs to inspect which
console.issues_inbox.listdata-data:readList the business's issues inbox: pipeline-detected data-quality, enrichment, or signal problems surfaced for human review. Each issue has a category (e.g. unkn
console.review_tasks.listdata-data:readList the pipeline's open review tasks for this business. Each task is a data-quality issue the pipeline flagged for human review: it may suggest merging identit
context_entries.writecontextPOST /context/entries/writecontext_entries:writeCreate, update, or delete a persisted context entry. Use when saving, patching, or removing brand config / audience insights / campaign themes. action="create"
context_entry.getcontext-context_entries:readFetch a single persisted context entry by its type id (e.g. brand.colors, voice.default). Use when the caller already knows the entry id and wants the full blob
context_entry.listcontext-context_entries:readList persisted context entries (brand.colors, brand.voice_rules, voice.* profiles, etc.). Use when loading brand metadata before writing content or auditing wha
context.askcontextPOST /context/askcontext:askGet a synthesized natural-language answer over the data already gathered in the current session. An agent searches the accumulated substrate (evidence, clusters
context.audience_filterscontext-context:readReturn the per-business audience filter options (funnel stages, account sizes, personas, industries, topics) sourced from the v2 BigQuery catalog. Use when popu
context.channelscontext-context:readReturn the canonical channel enum (linkedin, blog, twitter, youtube, email, other) used by content_sessions.channel and the content_writer specialist's input_pa
context.content_subtypescontext-context:readReturn the canonical content-subtype enum (perspective, proof, execution, how_to, announcement, teardown) stored on content_sessions.content_subtype and threade
context.content_typescontext-context:readReturn the canonical content-type enum (social, blog, thought_leadership, newsletter, case_study) recognised by the v2 pipeline and the content_writer specialis
context.query_substratecontextPOST /context/substrate/querycontext:queryIntent-driven smart lookup over the session substrate. Returns scored/ranked evidence, clusters, and metrics tailored to an intent. Use this to retrieve grounde
context.remembercontextPOST /context/remembercontext:writePush an external observation (web finding, user note, summary from another tool) into the session substrate so subsequent query_substrate and ask calls surface
context.review_kitcontextPOST /context/review-kitcontext_entries:read workflows:readUse after completing a blueprint run when you want to update the business's long-term context. Returns: the run's audit row (inputs/outputs/step_states/errors),
context.substratecontext-context:readSession substrate counters: what the agent has learned so far in this run (record counts, entities discovered, data sources consulted). Use when debugging what
context.summarycontext-context:readBusiness profile summary (company, voice, channel assets) aggregated from the core context tables. Use when the agent is orienting at turn 0 and needs "who am I
context.time_rangescontext-context:readReturn the canonical research time-range enum (last_7d, last_30d, last_90d, last_180d, last_365d, all_time, custom). Use when rendering the research-window filt
conversation.getconversationsGET /conversations/:idworkflows:readFetch a single agent conversation by UUID along with its ordered turns (agent runs). Use when rendering chat history for a specific thread, resuming UI state af
conversation.listconversationsGET /conversationsworkflows:readList agent conversations for this business, newest activity first. Use when rendering recent chat threads, a picker UI, or an audit view. Filter by status (acti
conversations.createconversationsPOST /conversationsconversations:writeCreate a new chat conversation pinned to an agent profile. Use when starting a new multi-turn session with a specific profile (copilot, researcher, etc.). If fi
conversations.turns.appendconversationsPOST /conversations/:id/turnsconversations:writeAppend a new user message to an active conversation. Use when continuing an existing chat thread instead of starting a new one. Creates a new agent run, enqueue
conversations.turns.cancelconversationsDELETE /conversations/:id/turns/:turn_idconversations:writeCancel an in-flight conversation turn. Use when the user hits a stop button on a running chat turn, or wants to abandon a turn that has gone sideways. Cascades
conversations.turns.resumeconversationsPOST /conversations/:id/turns/:turn_id/resumeconversations:writeResume a paused conversation turn with user input. Use when the user responds to a pending-input prompt on a chat turn (outline approval, clarification, continu
conversations.updateconversationsPATCH /conversations/:idconversations:writePatch a conversation. Use when renaming a chat (title) or archiving it (status=archived). Returns the updated row. The pinned agent profile is immutable and can
data.ask_sqldataPOST /data/askdata:readUse when a caller wants SQL but does not know the schema. Takes a plain-English question plus optional prior turns and returns a read-only SELECT against the `i
data.cluster_detaildataGET /data/clusters/:cluster_iddata:readFull detail for a single pre-computed conversation cluster: label, description, insight, statistical measures (JSD, size anomaly), full feature distribution, re
data.cluster_searchdataPOST /data/clusters/searchdata:readSemantic pattern discovery across pre-computed ML clusters from customer conversations. Use to find recurring themes, pain points, objections, competitive menti
data.querydataPOST /data/querydata:readUse when the user wants a count, aggregate, or rows from the interactions table. Read-only SELECT, auto-scoped (never put business_id in WHERE). Explicit co
data.schemadata-data:readData inventory for the current business: interactions schema plus sample values, cluster availability, and knowledge base document count. Use when orienting at
data.searchdataPOST /data/searchdata:readHybrid semantic + keyword search across the business knowledge base: saved research, uploaded documents, and past content outputs. Use when you need qualitative
external_search_jobs.read_streamworkflowsGET /external-search-jobs/:jobId/streamexternal_search:executeRead when discovering the live SSE event channel for a running external_search job spawned with subscribe_to_events=true. Returns a small JSON descriptor with t
external_search.executedataPOST /external-search/executeexternal_search:executeUse when answering market / competitive / industry / topic-positioning questions. Returns a divergence_map flagging where market chatter (web+news+reddit+twitte
finishworkflows-workflows:completeSignal that the task is complete. Call this as the final tool when you have finished the work. Arguments may include an optional summary and an optional artifac
inspirational_reference.getcontext-context:readFetch a single inspirational reference by composite id ('writing_sample:<uuid>' or 'scraped_post:<uuid>'). Use when the agent already has the id (from list or i
inspirational_reference.listcontext-context:readList every writing sample + scraped post available as a structural inspirational reference for this business. Use when populating the v2 content creation Inspir
inspirational_reference.searchcontext-context:readSubstring-search writing samples and scraped posts by title + body. Use when the user asks for an inspirational reference by topic or keyword and the agent need
knowledge_base.chatdataPOST /knowledge_base/chatknowledge_base:readAsk a natural-language question against the knowledge bank and get a synthesized answer. Use when you need a composed answer drawing from multiple documents rat
knowledge_base.create_commentdataPOST /knowledge-base/:id/commentsversioning:writeAdd a review comment to a living-doc version. Use when a reviewer replies to the agent’s rationale or opens a new thread anchored to a changed block. Pass body
knowledge_base.deletedataDELETE /knowledge_base/documents/:idknowledge_base:deleteRemove a knowledge bank document. Use when retiring stale content from the knowledge base. Default mode is a soft archive (sets is_archived=true) so the row, st
knowledge_base.diffdataGET /knowledge-base/:id/diffknowledge_base:readCompute a line-level unified diff of a knowledge base living-doc version (:id, the target) against a base version (defaults to the immediate predecessor; ?base=
knowledge_base.getdataGET /knowledge-base/:idknowledge_base:readFetch a single knowledge bank document by UUID. Use when the caller already has the document id and wants its full metadata + content markdown. Returns null whe
knowledge_base.get_accessdataGET /knowledge-base/:id/accessknowledge_base:readFetch the per-document read ACL for one knowledge bank document by UUID, scoped to this business. Read when you need to see which members and roles a restricted
knowledge_base.get_contentdataGET /knowledge-base/:id/contentknowledge_base:readFetch the converted markdown body of one knowledge bank document by UUID, scoped to this business. Read when you need the full document text itself (to quote, s
knowledge_base.get_versionsdataGET /knowledge-base/:id/versionsknowledge_base:readList all versions of a knowledge base document (its version family: current, proposed, superseded), newest first, resolved from the supplied document UUID and e
knowledge_base.listdataGET /knowledge-baseknowledge_base:readList knowledge bank documents (uploads, saved research, style references) for this business. Use when enumerating documents by status, embedding_status, type, o
knowledge_base.list_commentsdataGET /knowledge-base/:id/commentsknowledge_base:readList the Level 3 review threads on a living-doc version (:id, a knowledge_bank_documents id). Use when rendering the version-review panel: agent rationale comme
knowledge_base.make_livingworkflowsPOST /knowledge_base/documents/:id/make-livingworkflows:write knowledge_base:writeConvert a static knowledge base document into a self-refreshing living doc by synthesizing a refresh workflow (an agent_blueprint) bound to the doc version grou
knowledge_base.resolve_commentdataPOST /knowledge-base/:id/comments/:comment_id/resolveversioning:writeMark a living-doc review thread resolved (or reopen it with resolved=false). Use when a reviewer finishes acting on a thread. Operates on the thread root; passi
knowledge_base.searchdataPOST /knowledge_base/searchknowledge_base:readHybrid semantic + keyword search across knowledge bank chunks. Use when looking up qualitative evidence, precedent, or supporting quotes from ingested documents
knowledge_base.stardataPOST /knowledge-base/:id/starartifacts:writePin a knowledge bank document as workspace canon. Read when reviewing reference material (messaging frameworks, brand pillars, market research) the agent should
knowledge_base.unstardataPOST /knowledge-base/:id/unstarartifacts:writeRemove a knowledge bank doc from workspace canon. Use when a previously authoritative reference (messaging deck, brand pillars) is now stale or replaced. The KB
knowledge_base.updatedataPATCH /knowledge_base/documents/:idknowledge_base:writePatch metadata on an existing knowledge bank document. Use when the user asks to rename a doc, retag a doc, archive or unarchive, edit the description or notes,
knowledge_base.uploaddataPOST /knowledge_base/documentsknowledge_base:writeUpload a document into the business knowledge bank (PDF/DOCX/PPTX/markdown). Use when adding an asset the KB should index. Accepts base64 file_content (Datalab
metrics.evaluateassetsPOST /metrics/:id/evaluatemetrics:readUse when you need a live numeric value from a registered metric artifact. Pass metric_id; returns the freshly computed value with format and cache hit indicator
notifications.email_memberteamPOST /notifications/email-membernotifications:writeSend an email to one or more teammates in the current workspace. Use when an automation or agent needs to notify specific workspace members - a digest, an alert
notifications.list_recipientsteamGET /notifications/recipientsnotifications:readRead the current workspace members you are allowed to email, as a recipient picker for sending a member notification (email + display name + user id per member)
notifications.list_sendsteamGET /notifications/sendsnotifications:readRead the history of emails sent to workspace members (newest first), plus a cap-aware summary of how many sends went out in the trailing hour against the per-wo
notion_sync.backfilldataPOST /notion-sync/:id/backfillnotion_sync:writeTrigger a full backfill of the outbound Notion sync for a connection: enqueue every current knowledge-base document for (re)mirroring into Notion. Use when firs
notion_sync.configuredataPOST /notion-sync/:id/configurenotion_sync:writeConfigure the outbound Notion knowledge-base sync for a connection: designate the parent Notion page, provision the synced database under it, set the version +
notion_sync.getdataGET /notion-sync/:idnotion_sync:readFetch the outbound Notion knowledge-base sync configuration for one connection - target database, version policy, include filters, and how many documents are cu
notion_sync.list_pagesdataGET /notion-sync/:id/pagesnotion_sync:readList the Notion pages the connected integration can access, so a workspace can pick which one the synced knowledge-base database is created under. Read when a N
notion_sync.list_sendsdataGET /notion-sync/:id/sendsnotion_sync:readList the recent outbound Notion sync ledger for a connection (per-document synced / skipped / failed outcomes), newest-first, with an hourly summary. Read when
notion_sync.statusdataGET /notion-sync/:id/statusnotion_sync:readFetch the live status of an outbound Notion sync: enabled, provisioned, the connect-only provisioning state, mirrored-document count, and a recent-activity summ
notion_sync.unsyncdataPOST /notion-sync/:id/unsyncnotion_sync:deleteTear down the outbound Notion sync for a connection: disable it and clear the mapping ledger so a later reconfigure starts clean. Use when a workspace wants to
operation.getobservabilityGET /operations/:idartifacts:readFetch metadata for a single operation by its dotted id (e.g. data.cluster_search, artifacts.create, context.summary). Read when a tool picker needs to render th
operation.listobservabilityGET /operationsartifacts:readList every operation registered in the unified operation registry, grouped by namespace (data, artifacts, context, conversations, etc.). Read when authoring an
pages.archiveassetsDELETE /pages/:idpages:writeSoft-archive a page so it leaves the default library list but stays recoverable, a reversible step distinct from a permanent removal. Use when a user wants to r
pages.createassetsPOST /pagespages:writeAuthor a new workspace page from a catalog spec: a designed UI of catalog components (plus an optional Custom sandbox node) mixing narrative, layout, and live t
pages.deleteassetsPOST /pages/:id/hard-deletepages:deletePermanently remove a page so it disappears from every view, the destructive counterpart to a reversible archive. Use when a user explicitly wants a page gone fo
pages.getassetsGET /pages/:idpages:readFetch one page definition by its id - the TSX source, compiled module, declared data bindings, and last verification verdict - scoped to the workspace and gated
pages.get_templateassetsGET /pages/templates/:slugpages:readFetch one Amdahl-shipped page template in full - its catalog spec, declared queries, and intent - by slug or deterministic UUID. Fetch when an author has chosen
pages.listassetsGET /pagespages:readRead the workspace pages the caller is entitled to, newest-updated first, after dropping any the caller lacks read access to. Read when rendering the pages libr
pages.list_templatesassetsGET /pages/templatespages:readRead the catalog of Amdahl-shipped page templates - ready-to-adapt starting points (pipeline health, voice of customer, competitive battlecard) an author turns
pages.mint_embed_tokenassetsPOST /pages/:id/embed-tokenpages:embedMint a short-lived, token-scoped embed link for one page so it can be iframed on an external site. Use when a user or agent wants a shareable live embed of a pa
pages.renderassetsPOST /pages/:id/renderpages:readExecute a page's declared data bindings live for the current viewer and return the rows the host hydrates the component with, each query tenant- and access-scop
pages.updateassetsPATCH /pages/:idpages:writeRevise an existing page in place: swap its catalog spec, declared queries, or metadata. Use when a user or agent wants to change what a published page renders.
pages.validateassetsPOST /pages/validatepages:readCheck a page spec through the catalog, prop, binding, and Custom-node code stages without saving it, returning every problem found in one verdict. Use when an e
prompt.getworkflowsGET /prompt-fragments/:idartifacts:readFetch a single platform prompt fragment by id (full body included). Use when a blueprint llm step's prompt_resources references prompt://<scheme>/<id>; the runn
prompt.listworkflowsGET /prompt-fragmentsartifacts:readList every registered platform prompt fragment (named, version-controlled chunks of expertise that agent_blueprint llm steps can compose via prompt_resources).
prompts.artifact.compose_campaignassets-artifacts:write data:read knowledge_base:readUse when the user asks for a multi-piece campaign (research + blog + LinkedIn) on one topic. Directs the agent to produce a parent research_report, then two chi
prompts.artifact.draft_weekly_reportassets-data:read artifacts:writeUse when the user asks to compile last week into a saved report. Directs the agent to pull a 7-day activity snapshot via data.query and then save a research_rep
prompts.artifact.embed_artifactassets-artifacts:writeUse when the user asks to embed, share, or publish a single artifact on an external website. Walks the agent through flipping visibility to public AND surfacing
prompts.artifact.refine_content_pieceassets-artifacts:read artifacts:writeUse when the user wants to iterate on an existing content artifact with specific feedback. Directs the agent to read the artifact, rewrite the body against the
prompts.context.capture_competitive_intelcontext-context_entries:writeUse when the agent observes something about a named competitor that future sessions should remember (positioning move, pricing change, win/loss signal). Directs
prompts.context.onboard_mecontext-context:read data:read knowledge_base:readUse when a first-time caller asks "what can this do" or wants a guided orientation. Directs the agent to read context://summary, data://schema, and knowledge_ba
prompts.context.remember_thiscontext-context:writeUse when the user surfaces an observation from outside the normal data pipeline (web find, human note) and wants it to influence future substrate queries. Direc
prompts.context.review_contextcontext-context_entries:readUse when the user (or an agent before starting a task) wants a health check of the context_entries long-term memory store. Directs the caller to list entries, g
prompts.context.save_insightcontext-context_entries:writeUse when the agent discovers a stable business truth during a conversation that future sessions should remember. Directs the caller to persist the finding as a
prompts.context.state_of_businesscontext-context:read artifacts:read context:queryUse when the user asks for a high-level current status of the business. Directs the agent to query the substrate for recent themes and read the 10 newest artifa
prompts.context.update_entrycontext-context_entries:writeUse when an existing context_entries row needs a targeted change (new evidence, corrected fact, expanded detail). Directs the caller to read the entry first, ap
prompts.conversation.conversation_recapconversations-workflows:readUse when the user asks to recap a specific conversation (what was discussed, what was produced). Directs the agent to read conversation://<id>, walk the turns i
prompts.conversation.resume_workconversations-workflows:readUse when the user wants to pick back up a conversation that stopped mid-task or is paused. Directs the agent to read the conversation, diagnose what completed v
prompts.data.account_deep_divedata-data:readUse when the user asks for a focused briefing on a single named account or company. Produces a three-step investigation plan (interactions, sentiment, recent su
prompts.data.schema_tourdata-data:readUse when the user asks "what data is available?" or is exploring a business for the first time. Directs the agent to fetch the data://schema resource, read the
prompts.data.top_companiesdata-data:readUse when the user asks which companies drove the most calls or activity recently. Produces a ranked query template and summary directive the agent runs via data
prompts.data.weekly_pulsedata-data:readUse when the user asks for a weekly or N-day activity snapshot across interaction types (calls, emails, meetings). Produces a histogram query template plus a su
prompts.knowledge_base.brief_mecontext-knowledge_base:readUse when the user wants a short RAG briefing drawn from the knowledge base on a specific topic. Directs the agent to search the KB and compose a grounded summar
prompts.knowledge_base.find_playbookcontext-knowledge_base:readUse when the user asks for a saved playbook, SOP, framework, or procedure on a topic. Directs the agent to search the knowledge base for playbook-style content
prompts.knowledge_base.prep_for_callcontext-knowledge_base:read data:readUse when the user asks to prep for a call with a named account. Directs the agent to blend a KB search (prior notes, docs) with data.query (recent interactions,
prompts.settings.warm_workspaceconfiguration-config:readUse when first orienting on a workspace (new session, new tenant, new client). Explains that the slow-to-load background pipelines — business profile discovery,
prompts.system.account_prepdata-data:readUse when the user is preparing for a scheduled sales call, customer meeting, QBR, renewal review, kickoff, or exec touchpoint with a specific account. Pulls dea
prompts.system.amdahl_gtm_playbookdata-data:readUse when starting ANY go-to-market task in this workspace (research, enrichment, positioning, messaging, content, sales call prep, win-loss, outbound) and you n
prompts.system.competitive_positioningdata-data:readUse when the user wants to test, validate, or sharpen current positioning, value prop, or category framing — what we claim vs what buyers echo back, where the m
prompts.system.getting_startedplatform-prompts:listUse when a caller asks how to start or wants an overview of the 3 Amdahl MCP tools. Returns the full getting-started skill content (tool map, recommended workfl
prompts.system.messaging_checkdata-data:readUse when the user wants to test, refine, or audit a specific message, claim, hook, headline, or value-prop line — checking whether buyers echo it back, where it
prompts.system.research_competitordata-data:readUse when researching a specific competitor — their positioning, pricing, recent moves, market chatter, and where they show up in our own call transcripts. Pulls
prompts.system.research_customerdata-data:readUse when the user names a customer, account, or prospect company and asks for context, history, recent signals, or deal stage. Pulls the external company brief
prompts.system.research_playbookplatform-prompts:listUse when the caller asks how to investigate a topic end to end using the 3-tool surface. Returns the full research playbook (routing rule, recommended flow, sub
prompts.system.win_loss_analysisdata-data:readUse when the user asks about win or loss patterns, deal outcomes, why deals close or stall, or what separates closed-won from closed-lost — across all deals, a
prompts.webhook.debug_deliveryconfiguration-webhooks:readUse when the user reports trouble with a specific webhook subscription and wants a delivery diagnosis. Directs the agent to fetch the webhook config, pull recen
prompts.webhook.webhook_health_checkconfiguration-webhooks:readUse when the user asks for a health check across webhook subscriptions. Directs the agent to list every webhook, pull recent failed deliveries for each, and pro
read_resourceplatformGET /resourcesartifacts:readRead any resource by URI. URIs follow <scheme>://<path>[?query]. Schemes: artifact, conversation, agent_run, agent_profile, context, context_entry, knowledge_ba
reference_document.listcontext-knowledge_base:readList documents eligible as content-creation reference material. Use when populating the v2 Reference Documents picker or when the agent needs a shortlist before
retrieve_scratchpadworkflows-workflows:readRead a slot from the session scratchpad. Scratchpad slots are populated by prior tool calls when the output was too large to inline. Use when you need a full tr
social.connect_accountdataPOST /social/connectionsdata:writeSave an already-verified social account as a tracked social connection for the tenant. Use when the user has confirmed the right profile (typically right after
social.create_subjectdataPOST /social/subjectsdata:writeCreate a tracked subject - a person or org you follow - that groups one or more social handles under one identity. Use when the user wants to start tracking som
social.delete_subjectdataDELETE /social/subjects/:iddata:writeDelete a tracked subject by id. Use when the user wants to stop tracking a person/org as a grouped identity. The social connections grouped under it are kept -
social.disconnect_accountdataDELETE /social/connections/:iddata:writeStop tracking a social account by removing its social connection (soft delete: the row is kept for audit but no longer synced or listed). Use when the user want
social.get_connectiondataGET /social/connections/:iddata:readFetch a single tracked social account (social connection) by its id for the tenant. Use when you already have a connection id and need its current details — han
social.get_metric_trenddataGET /social/connections/:id/trenddata:readRead a bucketed metric trend for one tracked social account: the follower series over time (scope=connection, default) or a single post's engagement trajectory
social.get_metrics_summarydataGET /social/connections/:id/summarydata:readRead aggregate stats for one tracked social account: current followers + growth over the window (both null when the channel does not expose followers — LinkedIn
social.get_portfolio_summarydataGET /social/summarydata:readRead aggregate stats across every active tracked account in the tenant: total followers + growth (null when no in-scope connection reports followers — LinkedIn
social.get_subjectdataGET /social/subjects/:iddata:readRead a single tracked subject by id for the tenant, with the social handles grouped under it. Read when you have a subject id and need its details - relationshi
social.get_subject_summarydataGET /social/subjects/:id/summarydata:readRead aggregate stats across every social handle grouped under a tracked subject: total followers (null when no handle reports a count), total engagement, post c
social.link_handledataPOST /social/subjects/:subject_id/linkdata:writeGroup a tracked social connection under a subject by linking it - e.g. attach a person's X account to the subject that already holds their LinkedIn. Use when co
social.list_channel_capabilitiesdataGET /social/capabilitiesdata:readRead the per-channel capability map: for each supported social channel (X / Twitter, LinkedIn), which entities (post / profile) it reports on and which metric k
social.list_connectionsdataGET /social/connectionsdata:readReturn every tracked social account (social connection) for the tenant, newest first, excluding ones that have been disconnected. Use when the user wants to see
social.list_post_metricsdataGET /social/connections/:id/metricsdata:readRead the latest engagement snapshot per post for one tracked social account: likes, reposts, replies, quotes, bookmarks, and views, newest post first, capped at
social.list_subjectsdataGET /social/subjectsdata:readRead every tracked subject for the tenant, newest first - the people and orgs being followed, each with the social handles grouped under it. Read when showing w
social.refresh_connectiondataPOST /social/connections/:id/refreshdata:writeKick off a background metrics refresh for one tracked social account: ask amdahl-data to sync its source now and return immediately with a syncing acknowledgeme
social.unlink_handledataPOST /social/subjects/:subject_id/unlinkdata:writeUngroup a social connection from its subject by clearing the link - the reverse of linking a handle. Use when a handle was grouped under the wrong subject, or t
social.update_connectiondataPATCH /social/connections/:iddata:writeUpdate a tracked social account (social connection) in place: set or clear its nickname, pause or resume tracking, and/or set the per-connection lookback window
social.update_subjectdataPATCH /social/subjects/:iddata:writePatch a tracked subject - rename it, retag internal/external, set or clear the workspace member it represents, edit notes or the CRM link. Use when subject deta
social.verify_connectiondataPOST /social/verifydata:readResolve a social handle to its live account plus most recent post, or a typed reason it couldn't be confirmed (not_found / no_posts / private / provider_error).
step_kind.getworkflowsGET /step-kinds/:idartifacts:readFetch metadata for a single step kind by id (tool / llm / loop / branch / parallel / blueprint / transform / assert). Use when rendering a single canvas node or
step_kind.listworkflowsGET /step-kindsartifacts:readList every step kind the agent_blueprint DSL supports (tool, llm, loop, branch, parallel, blueprint, transform, assert). Use when authoring or visualizing a blu
system.list_promptsplatformGET /promptsprompts:listEnumerate author-blessed prompt templates the current caller can invoke. Each entry carries a name, description, optional scheme (namespace prefix), and optiona
system.use_promptplatformPOST /prompts/useprompts:useInvoke an author-blessed prompt template by name. The response is a messages array (role + content pairs) you can fold into subsequent reasoning, like expert gu
team.add_domainteam-team:writeRegister a new unverified domain for the caller's business so verified-domain users can self-join. Use when an admin wants to onboard a whole company by domain
team.get_settingsteam-team:readRead every allowlisted team setting for the caller's business (e.g. require_invite). Use when rendering the team settings page or deciding whether domain auto-p
team.inviteteam-team:writeCreate a pending magic-link invitation for a new teammate. Use when inviting someone by email to join the workspace. Persists a business_invitations row with a
team.list_domainsteam-team:readList every verified and pending domain for the caller's business, newest first. Use when rendering the domains panel in team settings, deciding whether "Ask Amd
team.list_invitationsteam-team:readList pending, accepted, expired, or revoked invitations for the caller's business. Use when rendering the team settings invitations panel or auditing who has be
team.list_membersteam-team:readList every member of the caller's business with display name, email, and role. Use when rendering the team settings page, deciding whether the caller is the las
team.remove_domainteam-team:deleteDelete a domain row from the caller's business so future signups with that email domain stop auto-joining. Use when an admin is rotating their primary domain or
team.remove_memberteam-team:deleteRemove a member from the caller's business. Use when revoking access for someone who left the team. Refuses self-removal (a dedicated "leave business" flow cove
team.resend_invitationteam-team:writeRotate a pending invitation's token, reset expires_at to seven days out, and return the refreshed row so the REST handler can re-send the magic-link email. Use
team.revoke_invitationteam-team:deleteSoft-delete a pending invitation so the magic-link stops working. Use when an invited person no longer needs access or the admin sent to the wrong email. Sets s
team.update_member_roleteam-team:writeChange a business member's role between admin and member. Use when promoting a teammate to admin or demoting an admin. Enforces three server-side rules: the tar
team.update_settingsteam-team:writePatch one or more allowlisted team settings (e.g. require_invite) for the caller's business. Use when an admin changes domain auto-provisioning behavior or othe
trigger_kind.getworkflowsGET /trigger-kinds/:idartifacts:readFetch metadata for a single trigger kind by id (manual / schedule / event / webhook). Use when rendering a single trigger configuration card. Returns null when
trigger_kind.listworkflowsGET /trigger-kindsartifacts:readList every trigger kind the agent_blueprint DSL supports (manual today; schedule/event/webhook in later waves). Use when authoring or visualizing a blueprint to
voice_profile.getcontext-context:readFetch a single author's voice profile by UUID, including the cached voice analysis blob (vocabulary, personality, syntax) and sample counts. Use when the agent
voice_profile.listcontext-context:readList author voice profiles available to this business. Use when populating the content creation voice selector or when the agent needs to pick a cached voice by
webhook.getconfiguration-webhooks:readFetch a single webhook subscription by UUID. Use when the caller knows the subscription id and wants its configuration (URL, event filters, status). Secrets are
webhook.listconfiguration-webhooks:readList outbound webhook subscriptions for this business. Use when auditing registered subscriptions or checking which endpoints the platform currently fans events
webhook.list_deliveriesconfiguration-webhooks:readList delivery attempts for a specific webhook subscription. Use when debugging failures, inspecting retry history, or confirming that recent events reached the
webhooks.test_fireplatformPOST /webhooks/:id/testwebhooks:writeFire a signed test delivery at a webhook destination and return the captured response. Use when verifying connectivity to a new subscription, debugging signatur
webhooks.writeplatformPOST /webhooks/writewebhooks:writeCreate, update, or delete a webhook subscription. Use when registering a new destination, changing URL / event list / description / active, or removing a subscr
workspaces.add_memberteam-workspaces:writeAdd someone to a workspace by user id or email. Use when an admin is bringing a teammate onto the tenant directly (no invitation round-trip). By email, a new ac
workspaces.createteam-workspaces:writeSpin up a brand-new workspace owned by the caller, who becomes both its owner and founding admin in one atomic step. Use when a user is starting a fresh tenant.
workspaces.deleteteam-workspaces:writeSoft-delete a workspace, retiring the whole tenant. Use when the owner is shutting it down for good. Only the workspace owner may call this (an admin who is not
workspaces.getteam-workspaces:readFetch one workspace by id along with the caller's role in it (owner, admin, editor, or viewer). Read when you need a single workspace's name, slug, avatar, and
workspaces.join_by_domainteam-workspaces:writeJoin a workspace that your verified email domain is allowed to self-join. Use when a signed-in user picks a workspace from their domain-eligible list (post-sign
workspaces.leaveteam-workspaces:writeRemove the calling user from a workspace they belong to. Use when someone is leaving a tenant of their own accord. Any member may leave, except the owner, who i
workspaces.listteam-workspaces:readList every workspace the calling user belongs to, each with the caller's role and an owner flag. Read when rendering a workspace switcher or deciding which tena
workspaces.list_joinable_by_domainteam-workspaces:readList workspaces the calling user may self-join because their verified email domain is claimed by the workspace and it opted into domain join. Read when renderin
workspaces.remove_memberteam-workspaces:writeRemove a member from a workspace by user id. Use when an admin is removing a teammate from the tenant. The workspace owner is protected and cannot be removed (t
workspaces.transfer_ownershipteam-workspaces:writeHand a workspace to another existing member, who is promoted to admin and becomes the new owner. Use when the current owner is stepping down or handing the tena
workspaces.updateteam-workspaces:writePatch a workspace's display name, avatar image, and avatar background color. Use when an admin renames the workspace, sets its logo, or picks the background col
workspaces.update_member_roleteam-workspaces:writeSet a workspace member to admin or member. Use when promoting a teammate to admin or stepping one back down. The workspace owner is pinned as an admin and canno
writing_samples.archivecontext-config:writeSoft-archive or restore one writing sample by flipping platform_artifacts.status between archived and draft. Use when an operator wants to hide a sample from th
writing_samples.createcontext-config:writeIngest one new writing sample into the caller's workspace. Invoke when an operator pastes or uploads a piece of reference prose that should inform author voice
writing_samples.deletecontext-config:writePermanently remove one writing sample owned by the caller's workspace. Call when an operator retires a sample that is no longer representative of an author's vo
writing_samples.getcontext-config:readLoad one writing_samples row by UUID, scoped to the caller's workspace. Fetch when the settings page opens a sample detail drawer or a split-proposal preview an
writing_samples.listcontext-config:readEnumerate every writing_samples row for the caller's workspace, optionally filtered by author_id (via junction), content_type, channel, or archive status, and r
writing_samples.propose_splitcontext-config:writeAsk Claude to decompose a long prose document into coherent candidate writing samples so the operator can review and persist the useful ones individually. Invok
writing_samples.updatecontext-config:writeApply a partial patch to one writing sample row (content body, title, channel, content_type, source_url, sort_order). Call when an editor corrects metadata from