Use the exact model ID executing this call, from runtime/system context, for usage attribution. Supply it on every Atomic MCP tool call, including discovery and feedback, and update it if the model changes. Use the model ID rather than the client app name. If unavailable, omit it; never guess or ask the user.
Discoverability
2/6 passed2 of 6 passed33/100
Client listings and public setup information.
mcp.json or server-card.json
Either mcp.json or an MCP Server Card declaring this endpoint passes.
The MCP Server Card declares this server's exact endpoint.
The title clearly communicates the tool’s action and subject. Keep it concise.
Description97/100
Add canonical markdown or pasted text to one explicit knowledge base and optional folder. Returns the pending file and its processing attempt; Indexed means the current canonical version completed publication.
Use list_knowledge_bases/list_knowledge_folder to choose the destination. Creates a new canonical file and schedules indexing; use update_knowledge_file for revisions and get_knowledge_indexing_status for readiness. Do not repeat an add to retry indexing.
The description explains the capability, when to use it, and what to expect.
Inputs82/100
Remove validation rules already expressed in this field’s schema; describe its meaning and usage instead.
knowledgeBaseId
Destination or search-scope knowledge-base ID from list_knowledge_bases; the base must be accessible in this project.
Remove validation rules already expressed in this field’s schema; describe its meaning and usage instead.
folderId
Optional destination folder ID. Omit for the knowledge-base root.
Remove validation rules already expressed in this field’s schema; describe its meaning and usage instead.
type
Knowledge file type.
Remove validation rules already expressed in this field’s schema; describe its meaning and usage instead.
title
File title.
Explain the meaning of this value, not just its name.
description
Optional user-authored file description.
Remove validation rules already expressed in this field’s schema; describe its meaning and usage instead.
resource
Optional canonical source URL or reference.
Remove validation rules already expressed in this field’s schema; describe its meaning and usage instead.
tags
Optional user-authored tags.
Remove validation rules already expressed in this field’s schema; describe its meaning and usage instead.
markdown
Canonical markdown body or pasted text.
Clear enough to supply this argument.
projectId
Atomic project ID from list_projects. Omit to use the configured project; if asked to choose, select one of the accessible returned IDs.
Clear enough to supply this argument.
context
Short purpose of this call for the activity log. Exclude personal data and private source content.
Clear enough to supply this argument.
llm_model
Use the exact model ID executing this call, from runtime/system context, for usage attribution. Supply it on every Atomic MCP tool call, including discovery and feedback, and update it if the model changes. Use the model ID rather than the client app name. If unavailable, omit it; never guess or ask the user.
The title clearly communicates the tool’s action and subject. Keep it concise.
Description94/100
Add one or more competitor domains or URLs to the current project for competitor tracking and content-gap analysis. This creates competitor records, ensures sitemap tracking exists, and starts sitemap scans for the new competitors.
Use get_project_competitors before adding tracked domains; adding tracking is different from reading pending suggestions. New tracking can schedule competitor analysis.
The description explains the capability, when to use it, and what to expect.
Inputs88/100
Remove validation rules already expressed in this field’s schema; describe its meaning and usage instead.
urls
Competitor domains or URLs to track, for example ["https://example.com", "competitor.com"].
Clear enough to supply this argument.
projectId
Atomic project ID from list_projects. Omit to use the configured project; if asked to choose, select one of the accessible returned IDs.
Clear enough to supply this argument.
context
Short purpose of this call for the activity log. Exclude personal data and private source content.
Remove validation rules already expressed in this field’s schema; describe its meaning and usage instead.
llm_model
Use the exact model ID executing this call, from runtime/system context, for usage attribution. Supply it on every Atomic MCP tool call, including discovery and feedback, and update it if the model changes. Use the model ID rather than the client app name. If unavailable, omit it; never guess or ask the user.
Remove validation rules already expressed in this field’s schema; describe its meaning and usage instead.
{
"type": "object",
"required": [
"success"
],
"properties": {
"url": {
"type": "string",
"description": "Link for resolving the failure or completing the operation."
},
"data": {
"type": "object",
"required": [
"sitemapScansStarted"
],
"properties": {
"addedCount": {
"description": "JSON returned by the connected provider or selected operation; its fields depend on that operation."
},
"competitorAnalyses": {
"description": "JSON returned by the connected provider or selected operation; its fields depend on that operation."
},
"sitemapScansStarted": {
"type": "boolean"
}
},
"description": "Operation data; optional fields may be absent."
},
"error": {
"type": "string",
"description": "Why the operation failed."
},
"details": {
"type": "object",
"description": "Diagnostics keyed by errorCode."
},
"message": {
"type": "string",
"description": "Outcome or recovery instructions. Project selection means no action ran."
},
"success": {
"type": "boolean",
"description": "Operation success; on false inspect error/errorCode."
},
"upgrade": {
"type": "object",
"description": "Plan-upgrade guidance for an unavailable capability."
},
"category": {
"type": "string",
"description": "Failure category, such as invalid_input or plan_required."
},
"expected": {
"type": "boolean",
"description": "Whether this is an anticipated access, input, plan or state failure."
},
"projects": {
"type": "array",
"items": {
"type": "object",
"properties": {
"id": {
"type": "number",
"description": "Project ID for projectId."
},
"name": {
"type": "string",
"description": "Project name."
}
},
"description": "Accessible project."
},
"description": "Accessible project choices. Select a projectId and retry."
},
"errorCode": {
"type": "string",
"description": "Failure code for recovery."
},
"retryable": {
"type": "boolean",
"description": "Whether an unchanged request can be retried."
},
"statusCode": {
"type": "number",
"description": "HTTP-style failure status."
},
"executionTime": {
"type": "string",
"description": "Elapsed time in seconds, with an s suffix."
}
},
"description": "Operation result envelope."
}
Original tool metadata
{
"name": "add_project_competitors",
"title": "Add project competitors",
"description": "Add one or more competitor domains or URLs to the current project for competitor tracking and content-gap analysis. This creates competitor records, ensures sitemap tracking exists, and starts sitemap scans for the new competitors.\n\nUse get_project_competitors before adding tracked domains; adding tracking is different from reading pending suggestions. New tracking can schedule competitor analysis.",
"inputSchema": {
"type": "object",
"required": [
"urls"
],
"properties": {
"urls": {
"type": "array",
"items": {
"type": "string"
},
"description": "Competitor domains or URLs to track, for example [\"https://example.com\", \"competitor.com\"]."
},
"context": {
"type": "string",
"maxLength": 120,
"description": "Short purpose of this call for the activity log. Exclude personal data and private source content."
},
"llm_model": {
"type": "string",
"maxLength": 128,
"description": "Use the exact model ID executing this call, from runtime/system context, for usage attribution. Supply it on every Atomic MCP tool call, including discovery and feedback, and update it if the model changes. Use the model ID rather than the client app name. If unavailable, omit it; never guess or ask the user."
},
"projectId": {
"type": "number",
"description": "Atomic project ID from list_projects. Omit to use the configured project; if asked to choose, select one of the accessible returned IDs."
}
}
},
"outputSchema": {
"type": "object",
"required": [
"success"
],
"properties": {
"url": {
"type": "string",
"description": "Link for resolving the failure or completing the operation."
},
"data": {
"type": "object",
"required": [
"sitemapScansStarted"
],
"properties": {
"addedCount": {
"description": "JSON returned by the connected provider or selected operation; its fields depend on that operation."
},
"competitorAnalyses": {
"description": "JSON returned by the connected provider or selected operation; its fields depend on that operation."
},
"sitemapScansStarted": {
"type": "boolean"
}
},
"description": "Operation data; optional fields may be absent."
},
"error": {
"type": "string",
"description": "Why the operation failed."
},
"details": {
"type": "object",
"description": "Diagnostics keyed by errorCode."
},
"message": {
"type": "string",
"description": "Outcome or recovery instructions. Project selection means no action ran."
},
"success": {
"type": "boolean",
"description": "Operation success; on false inspect error/errorCode."
},
"upgrade": {
"type": "object",
"description": "Plan-upgrade guidance for an unavailable capability."
},
"category": {
"type": "string",
"description": "Failure category, such as invalid_input or plan_required."
},
"expected": {
"type": "boolean",
"description": "Whether this is an anticipated access, input, plan or state failure."
},
"projects": {
"type": "array",
"items": {
"type": "object",
"properties": {
"id": {
"type": "number",
"description": "Project ID for projectId."
},
"name": {
"type": "string",
"description": "Project name."
}
},
"description": "Accessible project."
},
"description": "Accessible project choices. Select a projectId and retry."
},
"errorCode": {
"type": "string",
"description": "Failure code for recovery."
},
"retryable": {
"type": "boolean",
"description": "Whether an unchanged request can be retried."
},
"statusCode": {
"type": "number",
"description": "HTTP-style failure status."
},
"executionTime": {
"type": "string",
"description": "Elapsed time in seconds, with an s suffix."
}
},
"description": "Operation result envelope."
},
"annotations": {
"readOnlyHint": false,
"openWorldHint": true,
"idempotentHint": false,
"destructiveHint": false
}
}
The title clearly communicates the tool’s action and subject. Keep it concise.
Description97/100
Add tracked AI-search prompts to the current project. Before adding, inspect get_project_prompts and get_project_prompt_topics. Topics are the Groups shown in the AI-search UI; promptCategory is a funnel stage, not a group. Reuse relevant existing topics, create missing topics with create_project_prompt_topic, and pass their IDs in promptTopicIds for each new prompt. Omitted or empty promptTopicIds creates an ungrouped prompt shown under No group; leave prompts ungrouped only when the user requests it. Uses the project-selected engines and existing plan capacity. Saves new prompts and schedules tracking runs, which may consume AI credits. Existing exact-text prompts update only their funnel stage without duplicating or scheduling another run; use update_project_prompt to change their group assignments. Verify saved group assignments with get_project_prompt_topics.
Use existing topic IDs from get_project_prompt_topics. This changes saved tracking and consumes prompt capacity; use test_ai_search_prompt_run for an unsaved one-off answer.
The description explains the capability, when to use it, and what to expect.
Inputs94/100
Remove validation rules already expressed in this field’s schema; describe its meaning and usage instead.
prompts › items › prompt
The search question to track.
Clear enough to supply this argument.
prompts › items › promptCategory
Funnel stage. This does not assign a topic or UI group; use promptTopicIds for grouping.
Clear enough to supply this argument.
prompts › items › promptTopicIds
IDs of this project's topics (Groups in the UI). Read get_project_prompt_topics and reuse or create relevant topics before adding. Assign at least one ID unless the user requests No group. Omitted or empty IDs leaves new prompts ungrouped. For existing exact-text prompts, use update_project_prompt to change groups.
Remove validation rules already expressed in this field’s schema; describe its meaning and usage instead.
projectId
Atomic project ID from list_projects. Omit to use the configured project; if asked to choose, select one of the accessible returned IDs.
Clear enough to supply this argument.
context
Short purpose of this call for the activity log. Exclude personal data and private source content.
Clear enough to supply this argument.
llm_model
Use the exact model ID executing this call, from runtime/system context, for usage attribution. Supply it on every Atomic MCP tool call, including discovery and feedback, and update it if the model changes. Use the model ID rather than the client app name. If unavailable, omit it; never guess or ask the user.
{
"type": "object",
"required": [
"success"
],
"properties": {
"url": {
"type": "string",
"description": "Link for resolving the failure or completing the operation."
},
"data": {
"type": "object",
"required": [
"savedPrompts",
"totalPrompts",
"remainingPrompts"
],
"properties": {
"savedPrompts": {
"type": "number"
},
"totalPrompts": {
"type": "number"
},
"remainingPrompts": {
"type": "number"
}
},
"description": "Operation data; optional fields may be absent."
},
"error": {
"type": "string",
"description": "Why the operation failed."
},
"details": {
"type": "object",
"description": "Diagnostics keyed by errorCode."
},
"message": {
"type": "string",
"description": "Outcome or recovery instructions. Project selection means no action ran."
},
"success": {
"type": "boolean",
"description": "Operation success; on false inspect error/errorCode."
},
"upgrade": {
"type": "object",
"description": "Plan-upgrade guidance for an unavailable capability."
},
"category": {
"type": "string",
"description": "Failure category, such as invalid_input or plan_required."
},
"expected": {
"type": "boolean",
"description": "Whether this is an anticipated access, input, plan or state failure."
},
"projects": {
"type": "array",
"items": {
"type": "object",
"properties": {
"id": {
"type": "number",
"description": "Project ID for projectId."
},
"name": {
"type": "string",
"description": "Project name."
}
},
"description": "Accessible project."
},
"description": "Accessible project choices. Select a projectId and retry."
},
"errorCode": {
"type": "string",
"description": "Failure code for recovery."
},
"retryable": {
"type": "boolean",
"description": "Whether an unchanged request can be retried."
},
"statusCode": {
"type": "number",
"description": "HTTP-style failure status."
},
"executionTime": {
"type": "string",
"description": "Elapsed time in seconds, with an s suffix."
}
},
"description": "Operation result envelope."
}
Original tool metadata
{
"name": "add_project_prompts",
"title": "Add project prompts",
"description": "Add tracked AI-search prompts to the current project. Before adding, inspect get_project_prompts and get_project_prompt_topics. Topics are the Groups shown in the AI-search UI; promptCategory is a funnel stage, not a group. Reuse relevant existing topics, create missing topics with create_project_prompt_topic, and pass their IDs in promptTopicIds for each new prompt. Omitted or empty promptTopicIds creates an ungrouped prompt shown under No group; leave prompts ungrouped only when the user requests it. Uses the project-selected engines and existing plan capacity. Saves new prompts and schedules tracking runs, which may consume AI credits. Existing exact-text prompts update only their funnel stage without duplicating or scheduling another run; use update_project_prompt to change their group assignments. Verify saved group assignments with get_project_prompt_topics.\n\nUse existing topic IDs from get_project_prompt_topics. This changes saved tracking and consumes prompt capacity; use test_ai_search_prompt_run for an unsaved one-off answer.",
"inputSchema": {
"type": "object",
"required": [
"prompts"
],
"properties": {
"context": {
"type": "string",
"maxLength": 120,
"description": "Short purpose of this call for the activity log. Exclude personal data and private source content."
},
"prompts": {
"type": "array",
"items": {
"type": "object",
"required": [
"prompt",
"promptCategory"
],
"properties": {
"prompt": {
"type": "string",
"minLength": 1,
"description": "The search question to track."
},
"promptCategory": {
"enum": [
"awareness",
"consideration",
"decision",
"branded"
],
"type": "string",
"description": "Funnel stage. This does not assign a topic or UI group; use promptTopicIds for grouping."
},
"promptTopicIds": {
"type": "array",
"items": {
"type": "number",
"minimum": 1,
"multipleOf": 1
},
"description": "IDs of this project's topics (Groups in the UI). Read get_project_prompt_topics and reuse or create relevant topics before adding. Assign at least one ID unless the user requests No group. Omitted or empty IDs leaves new prompts ungrouped. For existing exact-text prompts, use update_project_prompt to change groups."
}
},
"additionalProperties": false
},
"minItems": 1,
"description": "Prompt definitions or prompt identifiers for this operation; use each item's schema for the accepted representation."
},
"llm_model": {
"type": "string",
"maxLength": 128,
"description": "Use the exact model ID executing this call, from runtime/system context, for usage attribution. Supply it on every Atomic MCP tool call, including discovery and feedback, and update it if the model changes. Use the model ID rather than the client app name. If unavailable, omit it; never guess or ask the user."
},
"projectId": {
"type": "number",
"description": "Atomic project ID from list_projects. Omit to use the configured project; if asked to choose, select one of the accessible returned IDs."
}
},
"additionalProperties": false
},
"outputSchema": {
"type": "object",
"required": [
"success"
],
"properties": {
"url": {
"type": "string",
"description": "Link for resolving the failure or completing the operation."
},
"data": {
"type": "object",
"required": [
"savedPrompts",
"totalPrompts",
"remainingPrompts"
],
"properties": {
"savedPrompts": {
"type": "number"
},
"totalPrompts": {
"type": "number"
},
"remainingPrompts": {
"type": "number"
}
},
"description": "Operation data; optional fields may be absent."
},
"error": {
"type": "string",
"description": "Why the operation failed."
},
"details": {
"type": "object",
"description": "Diagnostics keyed by errorCode."
},
"message": {
"type": "string",
"description": "Outcome or recovery instructions. Project selection means no action ran."
},
"success": {
"type": "boolean",
"description": "Operation success; on false inspect error/errorCode."
},
"upgrade": {
"type": "object",
"description": "Plan-upgrade guidance for an unavailable capability."
},
"category": {
"type": "string",
"description": "Failure category, such as invalid_input or plan_required."
},
"expected": {
"type": "boolean",
"description": "Whether this is an anticipated access, input, plan or state failure."
},
"projects": {
"type": "array",
"items": {
"type": "object",
"properties": {
"id": {
"type": "number",
"description": "Project ID for projectId."
},
"name": {
"type": "string",
"description": "Project name."
}
},
"description": "Accessible project."
},
"description": "Accessible project choices. Select a projectId and retry."
},
"errorCode": {
"type": "string",
"description": "Failure code for recovery."
},
"retryable": {
"type": "boolean",
"description": "Whether an unchanged request can be retried."
},
"statusCode": {
"type": "number",
"description": "HTTP-style failure status."
},
"executionTime": {
"type": "string",
"description": "Elapsed time in seconds, with an s suffix."
}
},
"description": "Operation result envelope."
},
"annotations": {
"readOnlyHint": false,
"openWorldHint": true,
"idempotentHint": false,
"destructiveHint": false
}
}
The title clearly communicates the tool’s action and subject. Keep it concise.
Description98/100
Add one step to the draft of an existing workflow. For a batch, use upsert_workflow_steps. Read atomic://guides/workflow-step-inputs for step-specific required fields and examples. Supply inputs for the selected stepType; empty inputs fail. Do not add steps concurrently to the same workflow. Use update_workflow_step for corrections. Save the returned step.id for testing/deletion and step.stepIndex for routing. Copy contract.stepName and contract.outputReferences exactly. GENERATE_ARTICLE already saves content: do not follow it with CREATE_CONTENT. For PROMPT_LLM, put instructions in inputs.systemMessage and conversation turns in inputs.messages; JSON output requires jsonSchema. Validate the workflow and test its steps before running it.
Changes the draft only; it does not execute the step. Use upsert_workflow_steps for several changes and validate_workflow before any test.
The description explains the capability, when to use it, and what to expect.
Inputs80/100
Remove validation rules already expressed in this field’s schema; describe its meaning and usage instead.
workflowId
Existing project workflow ID from get_workflows or create_workflow; this identifies a pipeline, not a run.
Clear enough to supply this argument.
stepType
The type of step to add. Available step types: FIND_COMPETITORS, SERP_ANALYSIS, GENERATE_ARTICLE_TITLE, GENERATE_ARTICLE, REPURPOSE_CONTENT, GENERATE_IMAGE, NLP_ANALYSIS, RUN_LLM_AUDIT, FIND_OUTREACH_OPPORTUNITIES, DISCOVER_LISTINGS, DISCOVER_LINK_INSERTIONS, DISCOVER_UNLINKED_MENTIONS, PROMPT_LLM, EDIT_CONTENT_WITH_LLM, ADD_CONTEXTUAL_LINKS, AGENT, WEB_SEARCH, READ_WEB_PAGE, SEARCH_PROJECT_KNOWLEDGE, GET_INTERNAL_LINK_RECOMMENDATIONS, GET_GSC_KEYWORDS, GET_GSC_PAGES, GET_GSC_COUNTRIES, GET_GSC_DEVICES, GET_GA4_REFERRALS, GET_AI_CITATIONS, GET_BRAND_SENTIMENT, GET_AI_SEARCH_PAGES, GET_AI_SEARCH_ENGINES, GET_TRACKED_PROMPTS, GET_GRIDS, GET_GRID, CREATE_GRID, CREATE_GRID_SHEET, CREATE_GRID_COLUMN, CREATE_GRID_COLUMNS, CREATE_GRID_ROW, CREATE_GRID_ROWS, UPDATE_GRID_CELL, UPDATE_GRID_CELLS, RUN_GRID_CELL, RUN_GRID_COLUMN, RUN_GRID_SHEET, RUN_PAGE_SERP_SCAN, GET_PAGE_SERP_SCAN, WAIT_FOR_PAGE_SERP_SCAN, GENERATE_PAGE_OPTIMIZATION_PLAN, CLASSIFY_PAGE_TOPIC, RUN_CODE, WRITE_LIQUID_TEXT, FORMAT_JSON, CALL_API, CONDITION, ITERATION, ERROR, NOTIFICATION, SEND_EMAIL, FIND_DOMAIN_EMAILS, VERIFY_EMAILS, RAPID_URL_INDEXING, PUBLISH, PUBLISH_MAPPED_CONTENT, PUBLISH_SOCIAL_POST, PUBLISH_BUFFER_POST, PUBLISH_ZERNIO_POST, PUBLISH_INTEGRATION, GET_WEBFLOW_SITE_PUBLISHING, PUBLISH_WEBFLOW_SITE, GET_WEBFLOW_COLLECTION_STRUCTURE, CREATE_PROGRAMMATIC_PAGE_TEMPLATE, DETECT_PROGRAMMATIC_PAGE_CLUSTERS, EXTRACT_PROGRAMMATIC_PAGE_STRUCTURE, PROGRAMMATIC_MARKET_RESEARCH, PROGRAMMATIC_PAGES, CREATE_CONTENT, GET_CONTENT_FROM_EDITOR, ENRICH_CONTENT_IMAGES, ENRICH_CONTENT_SOCIAL_POSTS, LIST_WORDPRESS_CONTENT, GET_WORDPRESS_CONTENT, LIST_WEBFLOW_COLLECTIONS, LIST_WEBFLOW_COLLECTION_ITEMS, FIND_WEBFLOW_CONTENT, VERIFY_WEBFLOW_CONTENT, GET_WEBFLOW_DESIGN, UPDATE_WEBFLOW_DESIGN, GET_WEBFLOW_CONTENT, UPDATE_WEBFLOW_CONTENT, UPDATE_WORDPRESS_CONTENT, LIST_WOOCOMMERCE_PRODUCTS, GET_WOOCOMMERCE_PRODUCT, UPDATE_WOOCOMMERCE_PRODUCT, ENRICH_CONTENT_WOOCOMMERCE_PRODUCTS, CREATE_CONTENT_VERSION, RUN_WORKFLOW, HUMAN_REVIEW. IMPORTANT: GENERATE_ARTICLE already creates content in the content editor (it writes directly to the editor). Do NOT add a CREATE_CONTENT step after GENERATE_ARTICLE - that would be redundant. Use CREATE_CONTENT only when saving content that came from other steps (e.g. PROMPT_LLM, AGENT) that do not create content themselves.
Remove validation rules already expressed in this field’s schema; describe its meaning and usage instead.
inputs › searchQueries
OPTIONAL for: FIND_COMPETITORS, DISCOVER_LISTINGS, DISCOVER_UNLINKED_MENTIONS. Google queries to run for competitor discovery. Variable references are supported, for example {{input.keyword}}.
Clear enough to supply this argument.
inputs › keywords
OPTIONAL for: FIND_COMPETITORS. Seed keywords to search for competitors. Each keyword is used as a Google query.
Clear enough to supply this argument.
inputs › serpAnalysis
OPTIONAL for: FIND_COMPETITORS. Optional output from a previous SERP_ANALYSIS step, for example {{serpAnalysis}}. Domains from its SERP results are included as competitor evidence.
Clear enough to supply this argument.
inputs › serpLocationId
OPTIONAL for: FIND_COMPETITORS, RUN_PAGE_SERP_SCAN. Location to use for fresh Google SERP searches.
Clarify units, where to obtain this value, or conventions not already expressed in the schema.
inputs › maxCompetitors
OPTIONAL for: FIND_COMPETITORS. Maximum number of normalized competitors to return.
Clear enough to supply this argument.
inputs › maxResultsPerQuery
OPTIONAL for: FIND_COMPETITORS. Maximum number of organic Google results to inspect for each query.
Remove validation rules already expressed in this field’s schema; describe its meaning and usage instead.
inputs › includePromptCompetitors
OPTIONAL for: FIND_COMPETITORS. Include top AI-search prompt tracking competitors for this project.
Clear enough to supply this argument.
inputs › includeTrackedCompetitors
OPTIONAL for: FIND_COMPETITORS. Include competitors already tracked in the project competitor analysis area.
Clear enough to supply this argument.
inputs › includeGoogleSearch
OPTIONAL for: FIND_COMPETITORS. Run fresh Google SERP searches using the configured queries and keywords.
Clear enough to supply this argument.
inputs › keyword
REQUIRED for: SERP_ANALYSIS, GENERATE_ARTICLE_TITLE, GENERATE_ARTICLE, RUN_PAGE_SERP_SCAN. SEO keyword for the content. Can reference variables from previous steps. (e.g., {{serpAnalysis.keyword}})
Clear enough to supply this argument.
inputs › nlpTerms
OPTIONAL for: GENERATE_ARTICLE_TITLE, GENERATE_ARTICLE. Optional NLP terms to influence title generation
Clear enough to supply this argument.
inputs › contentType
REQUIRED for: LIST_WORDPRESS_CONTENT, GET_WORDPRESS_CONTENT, UPDATE_WORDPRESS_CONTENT. Registered WordPress post-type slug from get_wordpress_capabilities.postTypes, including custom types; use the registry key rather than restBase
Clear enough to supply this argument.
inputs › customKnowledge
OPTIONAL for: GENERATE_ARTICLE_TITLE, GENERATE_ARTICLE. Optional custom knowledge to influence title generation (e.g., Enter custom knowledge)
Clear enough to supply this argument.
inputs › knowledgeBaseIds
OPTIONAL for: GENERATE_ARTICLE_TITLE, GENERATE_ARTICLE, REPURPOSE_CONTENT, DISCOVER_LISTINGS, DISCOVER_LINK_INSERTIONS, DISCOVER_UNLINKED_MENTIONS, PROMPT_LLM, AGENT, SEARCH_PROJECT_KNOWLEDGE, PROGRAMMATIC_PAGES. Select explicit Knowledge bases, choose all project Knowledge bases, or provide one workflow variable that resolves to an array of IDs. No selection never searches project Knowledge.
Clear enough to supply this argument.
inputs › faqs › oneOf › 0 › items › question
The FAQ question
Clear enough to supply this argument.
inputs › faqs › oneOf › 0 › items › answer
The FAQ answer
Clear enough to supply this argument.
inputs › icp
OPTIONAL for: GENERATE_ARTICLE. Optional ideal customer profile used to tailor examples, terminology, objections, recommendations, and conversion framing. (e.g., Describe the ideal customer profile for this article)
Clear enough to supply this argument.
inputs › cluster
OPTIONAL for: GENERATE_ARTICLE. Optional content cluster used to align the article topic, positioning, and supporting coverage. (e.g., Enter the article cluster or pillar)
Clear enough to supply this argument.
inputs › funnel
OPTIONAL for: GENERATE_ARTICLE. Optional funnel stage used to match reader awareness, depth, objections, and the conversion path. (e.g., Example: TOFU, MOFU, or BOFU)
Clear enough to supply this argument.
inputs › primaryCta
OPTIONAL for: GENERATE_ARTICLE. Optional row-specific CTA brief. Supplied destination URLs, offer hierarchy, and UTM parameters are preserved exactly. (e.g., Describe the exact offer, destination URL, and placement requirements)
Clear enough to supply this argument.
inputs › additionalArticleInstructions
OPTIONAL for: GENERATE_ARTICLE. Optional mandatory editorial, structural, or formatting requirements applied before the article is saved. Brand Kit writing rules still apply. (e.g., Example: Add exactly two pull quotes from different major sections when the article exceeds 1,800 words.)
Clear enough to supply this argument.
inputs › includeLinkedInPosts
OPTIONAL for: GENERATE_ARTICLE. Require one relevant LinkedIn post embed and allow a second when it adds distinct value. The Brand Kit client LinkedIn profile is preferred when configured.
Clear enough to supply this argument.
inputs › includeInlineImages
OPTIONAL for: GENERATE_ARTICLE. Add optional contextual Product Images or credited external images throughout the article. Provider listings always require one website screenshot per provider, even when this option is disabled. When WooCommerce is enabled, optional images must not duplicate product packshots from the grid.
Clear enough to supply this argument.
inputs › targetImageCount
OPTIONAL for: GENERATE_ARTICLE, ENRICH_CONTENT_IMAGES. Optional maximum number of strong inline visuals. The agent prefers relevant first-party product images, then credited stock or website images, and skips weak opportunities.
Clear enough to supply this argument.
inputs › imageInstructions
OPTIONAL for: GENERATE_ARTICLE. Optional client-specific brief for inline image subjects, style, and priorities. (e.g., Example: Prefer authentic product screens, customer workflows, and editorial photography relevant to the nearby section.)
Clear enough to supply this argument.
inputs › includeCharts
OPTIONAL for: GENERATE_ARTICLE. Generate branded charts only when quantitative evidence materially benefits from visualization. Current prices, discounts, stock, and repeated values are not charted.
Clear enough to supply this argument.
inputs › includeAiVisuals
OPTIONAL for: GENERATE_ARTICLE. Generate at most one branded editorial illustration when a custom visual explains the subject better than a sourced image.
Clear enough to supply this argument.
inputs › includeDiagrams
OPTIONAL for: GENERATE_ARTICLE. Generate at most one branded flow diagram, process map, system architecture, timeline, comparison framework, or simple wireframe when it materially improves understanding.
Clear enough to supply this argument.
inputs › includeWooCommerceProducts
OPTIONAL for: GENERATE_ARTICLE. Find strongly relevant products from a connected WooCommerce store and group related products into one live grid that owns current price, discount, stock, and availability.
Clear enough to supply this argument.
inputs › projectPublishingId
REQUIRED for: PUBLISH, PUBLISH_MAPPED_CONTENT, GET_WEBFLOW_SITE_PUBLISHING, PUBLISH_WEBFLOW_SITE, GET_WEBFLOW_COLLECTION_STRUCTURE, CREATE_PROGRAMMATIC_PAGE_TEMPLATE, LIST_WORDPRESS_CONTENT, GET_WORDPRESS_CONTENT, LIST_WEBFLOW_COLLECTIONS, LIST_WEBFLOW_COLLECTION_ITEMS, FIND_WEBFLOW_CONTENT, VERIFY_WEBFLOW_CONTENT, GET_WEBFLOW_DESIGN, UPDATE_WEBFLOW_DESIGN, GET_WEBFLOW_CONTENT, UPDATE_WEBFLOW_CONTENT, UPDATE_WORDPRESS_CONTENT, LIST_WOOCOMMERCE_PRODUCTS, GET_WOOCOMMERCE_PRODUCT, UPDATE_WOOCOMMERCE_PRODUCT, ENRICH_CONTENT_WOOCOMMERCE_PRODUCTS. Required when WooCommerce products are enabled. Select the WordPress connection whose catalog and rendering will be used.
Clear enough to supply this argument.
inputs › wooCommerceInstructions
OPTIONAL for: GENERATE_ARTICLE. Optional guidance for WooCommerce product selection and placement.
Clear enough to supply this argument.
inputs › maxProductCount
OPTIONAL for: GENERATE_ARTICLE, ENRICH_CONTENT_WOOCOMMERCE_PRODUCTS. Maximum number of strongly relevant products to embed. Weak matches are skipped.
Clear enough to supply this argument.
inputs › layout
REQUIRED for: ENRICH_CONTENT_WOOCOMMERCE_PRODUCTS. Adaptive cards render one product horizontally and multiple products as a grid when publishing to WordPress.
Clear enough to supply this argument.
inputs › columns
REQUIRED for: CREATE_GRID_COLUMNS. Optional initial sheet structure. Each item needs a name and can include type, position, config, and requiredInputNames. Type/config default to TEXT.
Clear enough to supply this argument.
inputs › title
REQUIRED for: GENERATE_IMAGE, CREATE_CONTENT. Main headline to render in the featured image. Keep it very short: 4 complete words max, preferably fewer. Never use ellipses or truncated words; choose a shorter complete headline instead. (e.g., Best AI Visibility Tools)
Clear enough to supply this argument.
inputs › fullDescription
OPTIONAL for: GENERATE_ARTICLE, CREATE_CONTENT. Optional complete article summary to store without truncation. If empty, Generate article creates one before saving content. (e.g., Use an existing full description or let AI generate one)
Clear enough to supply this argument.
inputs › metaDescription
OPTIONAL for: GENERATE_ARTICLE, CREATE_CONTENT. Optional short SEO description. Values over 80 characters are shortened with an ellipsis before saving. (e.g., Use an existing SEO meta description or let AI generate one)
Clear enough to supply this argument.
inputs › featuredImageUrl
OPTIONAL for: GENERATE_ARTICLE. Optional featured image URL to save on the content. If empty, the Generate article step must generate one before saving. (e.g., {{generateImage.imageUrl}})
Clear enough to supply this argument.
inputs › content
REQUIRED for: REPURPOSE_CONTENT, GET_INTERNAL_LINK_RECOMMENDATIONS, CREATE_CONTENT, CREATE_CONTENT_VERSION. The content to save (markdown or HTML). Can reference variables from previous steps. Do not use after GENERATE_ARTICLE – that step already creates content in the editor. (e.g., {{promptLlm.content}} or {{agent.content}})
Clear enough to supply this argument.
inputs › platform
REQUIRED for: REPURPOSE_CONTENT, PUBLISH_SOCIAL_POST, ENRICH_CONTENT_SOCIAL_POSTS. Channel to adapt the draft for. Generation does not imply publishing support.
Clear enough to supply this argument.
inputs › type
REQUIRED for: REPURPOSE_CONTENT, CREATE_GRID_COLUMN, PUBLISH_SOCIAL_POST. Format to generate. Options are filtered by the selected platform.
Clear enough to supply this argument.
inputs › sourceUrl
OPTIONAL for: REPURPOSE_CONTENT, FIND_OUTREACH_OPPORTUNITIES, PUBLISH_SOCIAL_POST. Optional URL to classify directly. Leave empty to scan recent AI-search citations for the project. (e.g., https://example.com/best-tools)
Clear enough to supply this argument.
inputs › goal
OPTIONAL for: REPURPOSE_CONTENT. Optional distribution objective. (e.g., Awareness, education, discussion, or traffic)
Clear enough to supply this argument.
inputs › audience
OPTIONAL for: REPURPOSE_CONTENT, PROGRAMMATIC_MARKET_RESEARCH. Optional audience override. When empty, the project Brand kit audience is used. (e.g., Optional target-specific audience)
Clear enough to supply this argument.
inputs › cta
OPTIONAL for: REPURPOSE_CONTENT. Preferred CTA. When empty, the step must not invent a promotional CTA. (e.g., Optional approved CTA)
Clear enough to supply this argument.
inputs › instructions
OPTIONAL for: REPURPOSE_CONTENT, ENRICH_CONTENT_IMAGES, ENRICH_CONTENT_WOOCOMMERCE_PRODUCTS. Optional client-specific brief for image subjects, visual categories, style, and priorities. Variable references are supported. (e.g., Example: Prefer authentic wine bottles, cases, cellar details, vineyards, and serving scenes relevant to the nearby section.)
Clear enough to supply this argument.
inputs › includeHashtags
OPTIONAL for: REPURPOSE_CONTENT. Allow a small set of relevant hashtags. Defaults to off.
Clear enough to supply this argument.
inputs › publicationProfile
OPTIONAL for: REPURPOSE_CONTENT. Newsletter shell and fixed publication modules. Newsletter generation does not publish.
Clear enough to supply this argument.
inputs › issueNumber
OPTIONAL for: REPURPOSE_CONTENT. Required for newsletter issues. Dynamic issue numbers are never inferred. (e.g., 149)
Clear enough to supply this argument.
inputs › previousIssueTitle
OPTIONAL for: REPURPOSE_CONTENT. Optional. Supply together with the previous issue URL.
Clear enough to supply this argument.
inputs › previousIssueUrl
OPTIONAL for: REPURPOSE_CONTENT. Optional. Supply together with the previous issue title.
Remove validation rules already expressed in this field’s schema; describe its meaning and usage instead.
inputs › mediaMode
OPTIONAL for: REPURPOSE_CONTENT. Newsletter media only. Discovery can reuse project images, generate factual charts, or find and import images and GIFs into Atomic storage.
Remove validation rules already expressed in this field’s schema; describe its meaning and usage instead.
inputs › mediaDensity
OPTIONAL for: REPURPOSE_CONTENT. Desired hero and inline media density for a newsletter issue.
Remove validation rules already expressed in this field’s schema; describe its meaning and usage instead.
inputs › suppliedMedia
OPTIONAL for: REPURPOSE_CONTENT. Confirmed project-scoped Atomic assets with URL, storage key, alt text, source, rights, placement, and width metadata.
Remove validation rules already expressed in this field’s schema; describe its meaning and usage instead.
inputs › midIssueCta
OPTIONAL for: REPURPOSE_CONTENT. Optional confirmed { heading, body, label, url } CTA. URLs are never inferred.
Remove validation rules already expressed in this field’s schema; describe its meaning and usage instead.
inputs › referralBlock
OPTIONAL for: REPURPOSE_CONTENT. Optional confirmed referral module. Campaign values and URLs are never inferred.
Remove validation rules already expressed in this field’s schema; describe its meaning and usage instead.
inputs › includeReferralBlock
OPTIONAL for: REPURPOSE_CONTENT. Include the supplied referral block when configured.
Remove validation rules already expressed in this field’s schema; describe its meaning and usage instead.
inputs › postscript
OPTIONAL for: REPURPOSE_CONTENT. Optional confirmed P.S. copy and links.
Remove validation rules already expressed in this field’s schema; describe its meaning and usage instead.
inputs › includePostscript
OPTIONAL for: REPURPOSE_CONTENT. Include the supplied P.S. block when configured.
Remove validation rules already expressed in this field’s schema; describe its meaning and usage instead.
inputs › description
REQUIRED for: PROGRAMMATIC_MARKET_RESEARCH. Describe the programmatic content goal. References to our project are resolved from the project and brand kit context before competitor-specific research queries are created. (e.g., I want alternative-to pages for SaaS CRM tools.)
Remove validation rules already expressed in this field’s schema; describe its meaning and usage instead.
inputs › visualConcept
OPTIONAL for: GENERATE_IMAGE. Optional description of the right-side visual direction. (e.g., Glowing AI network graph with interconnected nodes...)
Remove validation rules already expressed in this field’s schema; describe its meaning and usage instead.
inputs › visualSourceMode
OPTIONAL for: GENERATE_IMAGE. Choose whether the right-side visual should come from AI generation or an existing image URL.
Remove validation rules already expressed in this field’s schema; describe its meaning and usage instead.
inputs › visualImageUrl
OPTIONAL for: GENERATE_IMAGE. Optional direct image URL for the right-side visual tile. Use this with visualSourceMode=url. (e.g., https://example.com/reference-image.png)
Remove validation rules already expressed in this field’s schema; describe its meaning and usage instead.
inputs › imageNotes
OPTIONAL for: GENERATE_IMAGE. Optional extra composition notes or constraints for this specific image. (e.g., Avoid screens, keep the symbol offset to the right...)
Remove validation rules already expressed in this field’s schema; describe its meaning and usage instead.
inputs › documents
REQUIRED for: NLP_ANALYSIS. Array of document text strings to analyze
Remove validation rules already expressed in this field’s schema; describe its meaning and usage instead.
inputs › language
REQUIRED for: RUN_CODE. Optional language or locale for the research. (e.g., English)
Remove validation rules already expressed in this field’s schema; describe its meaning and usage instead.
inputs › url
REQUIRED for: RUN_LLM_AUDIT, READ_WEB_PAGE, RUN_PAGE_SERP_SCAN, CALL_API, FIND_WEBFLOW_CONTENT. The URL to request indexing for when Index is One custom URL. Supports direct URLs and variable references from previous steps. (e.g., {{publish.externalUrl}})
Remove validation rules already expressed in this field’s schema; describe its meaning and usage instead.
inputs › startDate
OPTIONAL for: FIND_OUTREACH_OPPORTUNITIES, GET_GSC_KEYWORDS, GET_GSC_PAGES, GET_GSC_COUNTRIES, GET_GSC_DEVICES, GET_GA4_REFERRALS, GET_BRAND_SENTIMENT, GET_AI_SEARCH_PAGES, GET_AI_SEARCH_ENGINES. Start date in ISO format. Defaults to 30 days ago when empty. (e.g., YYYY-MM-DD)
Remove validation rules already expressed in this field’s schema; describe its meaning and usage instead.
inputs › endDate
OPTIONAL for: FIND_OUTREACH_OPPORTUNITIES, GET_GSC_KEYWORDS, GET_GSC_PAGES, GET_GSC_COUNTRIES, GET_GSC_DEVICES, GET_GA4_REFERRALS, GET_BRAND_SENTIMENT, GET_AI_SEARCH_PAGES, GET_AI_SEARCH_ENGINES. End date in ISO format. Defaults to today when empty. (e.g., YYYY-MM-DD)
Remove validation rules already expressed in this field’s schema; describe its meaning and usage instead.
inputs › models
OPTIONAL for: FIND_OUTREACH_OPPORTUNITIES. Optional AI search engine filters. Leave empty to include all models.
Remove validation rules already expressed in this field’s schema; describe its meaning and usage instead.
inputs › maxCitations
OPTIONAL for: FIND_OUTREACH_OPPORTUNITIES. Maximum number of unique cited pages to analyze.
Remove validation rules already expressed in this field’s schema; describe its meaning and usage instead.
inputs › perWebsiteLimit
OPTIONAL for: FIND_OUTREACH_OPPORTUNITIES. Maximum opportunities returned per cited website/domain.
Remove validation rules already expressed in this field’s schema; describe its meaning and usage instead.
inputs › minConfidence
OPTIONAL for: FIND_OUTREACH_OPPORTUNITIES. Minimum RAG confidence required to mark an opportunity as actionable.
Remove validation rules already expressed in this field’s schema; describe its meaning and usage instead.
inputs › includeNonActionable
OPTIONAL for: FIND_OUTREACH_OPPORTUNITIES. Include skipped/non-actionable citations with reasons.
Remove validation rules already expressed in this field’s schema; describe its meaning and usage instead.
inputs › targetSheet › oneOf › 0 › gridId
Project grid identifier from get_grids.
Remove validation rules already expressed in this field’s schema; describe its meaning and usage instead.
inputs › targetSheet › oneOf › 0 › sheetId
Grid sheet identifier from get_grid or get_grid_sheet.
Remove validation rules already expressed in this field’s schema; describe its meaning and usage instead.
inputs › pageToList
OPTIONAL for: DISCOVER_LISTINGS. Optional page to be listed (e.g., Leave blank to use the Brand Kit URL)
Remove validation rules already expressed in this field’s schema; describe its meaning and usage instead.
inputs › searchDirection
OPTIONAL for: DISCOVER_LISTINGS. Optional search direction (e.g., Leave blank to derive this from Brand Kit, public site, and Project Knowledge)
Remove validation rules already expressed in this field’s schema; describe its meaning and usage instead.
inputs › excludedDomains
OPTIONAL for: DISCOVER_LISTINGS, DISCOVER_LINK_INSERTIONS, DISCOVER_UNLINKED_MENTIONS. Domains that must never be accepted by this discovery step. (e.g., One domain per line or comma-separated)
Remove validation rules already expressed in this field’s schema; describe its meaning and usage instead.
Remove validation rules already expressed in this field’s schema; describe its meaning and usage instead.
inputs › requestedRelevantRows
REQUIRED for: DISCOVER_LINK_INSERTIONS. Relevant rows to add
Remove validation rules already expressed in this field’s schema; describe its meaning and usage instead.
inputs › searchAngle
OPTIONAL for: DISCOVER_LINK_INSERTIONS. Optional search angle (e.g., Leave blank to derive several angles from the resource)
Remove validation rules already expressed in this field’s schema; describe its meaning and usage instead.
inputs › brandPage
OPTIONAL for: DISCOVER_UNLINKED_MENTIONS. Optional brand page (e.g., Leave blank to use the Brand Kit URL)
Remove validation rules already expressed in this field’s schema; describe its meaning and usage instead.
inputs › brandAliases
OPTIONAL for: DISCOVER_UNLINKED_MENTIONS. Optional brand aliases (e.g., One verified brand or product name per line)
Remove validation rules already expressed in this field’s schema; describe its meaning and usage instead.
inputs › model
OPTIONAL for: PROMPT_LLM, EDIT_CONTENT_WITH_LLM. Model used to generate the LLM response.
Remove validation rules already expressed in this field’s schema; describe its meaning and usage instead.
inputs › systemMessage
OPTIONAL for: PROMPT_LLM. System message for the LLM (e.g., You are a helpful assistant.)
Remove validation rules already expressed in this field’s schema; describe its meaning and usage instead.
inputs › messages › items › role
The message role. Do not use system here; put system instructions in systemMessage.
Remove validation rules already expressed in this field’s schema; describe its meaning and usage instead.
inputs › messages › items › content
The message content
Remove validation rules already expressed in this field’s schema; describe its meaning and usage instead.
inputs › toolFilterConfig
OPTIONAL for: PROMPT_LLM. Optional tool access for this step. All categories are disabled by default. Enable only the minimum categories the prompt explicitly requires; use an AGENT step for open-ended tool use.
Remove validation rules already expressed in this field’s schema; describe its meaning and usage instead.
inputs › outputFormat
OPTIONAL for: PROMPT_LLM. Choose the output format for the LLM response. Text returns natural language. JSON mode forces the LLM to return structured JSON data matching the jsonSchema structure (jsonSchema is required when outputFormat is "json").
Remove validation rules already expressed in this field’s schema; describe its meaning and usage instead.
inputs › jsonSchema › items › id
Unique identifier for the field
Remove validation rules already expressed in this field’s schema; describe its meaning and usage instead.
inputs › jsonSchema › items › name
Field name
Remove validation rules already expressed in this field’s schema; describe its meaning and usage instead.
inputs › jsonSchema › items › type
Field type
Remove validation rules already expressed in this field’s schema; describe its meaning and usage instead.
inputs › jsonSchema › items › fields
Nested fields for object type
Remove validation rules already expressed in this field’s schema; describe its meaning and usage instead.
inputs › jsonSchema › items › elementType
Element type for array type
Remove validation rules already expressed in this field’s schema; describe its meaning and usage instead.
inputs › jsonSchema › items › elementFields
Nested fields for array of objects
Remove validation rules already expressed in this field’s schema; describe its meaning and usage instead.
inputs › contentId
REQUIRED for: EDIT_CONTENT_WITH_LLM, ADD_CONTEXTUAL_LINKS, PUBLISH, GET_CONTENT_FROM_EDITOR, ENRICH_CONTENT_IMAGES, ENRICH_CONTENT_SOCIAL_POSTS, ENRICH_CONTENT_WOOCOMMERCE_PRODUCTS, CREATE_CONTENT_VERSION. Content ID from the Atomic content editor. Can reference variables from previous steps. (e.g., {{input.contentId}})
Remove validation rules already expressed in this field’s schema; describe its meaning and usage instead.
inputs › prompt
REQUIRED for: EDIT_CONTENT_WITH_LLM, PROGRAMMATIC_PAGES. Complete instruction for the single page to research and generate. Include audience, topic, CTA, constraints, and any known facts. (e.g., Write a competitive Webflow CMS page for B2B SaaS teams evaluating an AI visibility audit. Research search intent, comparable pages, FAQs, and CTA patterns before writing.)
Remove validation rules already expressed in this field’s schema; describe its meaning and usage instead.
inputs › agentId
REQUIRED for: AGENT. The numeric ID of the agent
Remove validation rules already expressed in this field’s schema; describe its meaning and usage instead.
inputs › message
REQUIRED for: AGENT, ERROR, NOTIFICATION. Message content with variable reference support. For EMAIL channel, the message MUST be formatted in HTML (not Markdown or plain text). Use HTML tags like <p>, <strong>, <em>, <br>, <ul>, <li>, <h1>-<h6>, <a>, etc. Markdown syntax is NOT supported. Newlines are automatically converted to <br> tags, but you should use proper HTML tags for better formatting. The message will be rendered in a branded HTML email template. (e.g., Enter notification message (supports {{previousStep.field}} variables))
Remove validation rules already expressed in this field’s schema; describe its meaning and usage instead.
Remove validation rules already expressed in this field’s schema; describe its meaning and usage instead.
inputs › num_results
OPTIONAL for: WEB_SEARCH. Number of search results to return.
Remove validation rules already expressed in this field’s schema; describe its meaning and usage instead.
inputs › max_characters
OPTIONAL for: WEB_SEARCH. Maximum characters of content to return per result.
Remove validation rules already expressed in this field’s schema; describe its meaning and usage instead.
inputs › limit
OPTIONAL for: SEARCH_PROJECT_KNOWLEDGE, GET_INTERNAL_LINK_RECOMMENDATIONS, GET_GSC_KEYWORDS, GET_GSC_PAGES, GET_GSC_COUNTRIES, GET_GSC_DEVICES, GET_GA4_REFERRALS, GET_AI_CITATIONS, GET_BRAND_SENTIMENT, GET_AI_SEARCH_PAGES, GET_AI_SEARCH_ENGINES, GET_TRACKED_PROMPTS, LIST_WEBFLOW_COLLECTION_ITEMS. Maximum number of exact supporting segments to return.
Remove validation rules already expressed in this field’s schema; describe its meaning and usage instead.
inputs › confidenceThreshold
OPTIONAL for: GET_INTERNAL_LINK_RECOMMENDATIONS. Minimum confidence threshold between 0 and 1.
Remove validation rules already expressed in this field’s schema; describe its meaning and usage instead.
inputs › gscFilter › items › dimension
Dimension to filter on.
Remove validation rules already expressed in this field’s schema; describe its meaning and usage instead.
inputs › gscFilter › items › operator
Filter comparison operator.
Remove validation rules already expressed in this field’s schema; describe its meaning and usage instead.
inputs › gscFilter › items › expression
Value to match.
Remove validation rules already expressed in this field’s schema; describe its meaning and usage instead.
inputs › page
OPTIONAL for: GET_GSC_KEYWORDS, GET_GSC_PAGES, GET_GSC_COUNTRIES, GET_GSC_DEVICES, GET_GA4_REFERRALS, GET_AI_CITATIONS, GET_BRAND_SENTIMENT, GET_AI_SEARCH_PAGES, GET_AI_SEARCH_ENGINES, GET_TRACKED_PROMPTS, LIST_WORDPRESS_CONTENT, LIST_WOOCOMMERCE_PRODUCTS. Page number for paginated results.
Remove validation rules already expressed in this field’s schema; describe its meaning and usage instead.
inputs › search
OPTIONAL for: GET_GSC_KEYWORDS, GET_GSC_PAGES, GET_GSC_COUNTRIES, GET_GSC_DEVICES, GET_GA4_REFERRALS, GET_AI_CITATIONS, GET_BRAND_SENTIMENT, GET_AI_SEARCH_PAGES, GET_AI_SEARCH_ENGINES, GET_TRACKED_PROMPTS, LIST_WORDPRESS_CONTENT, LIST_WOOCOMMERCE_PRODUCTS. Search query to filter returned rows.
Remove validation rules already expressed in this field’s schema; describe its meaning and usage instead.
inputs › sortBy
OPTIONAL for: GET_GSC_KEYWORDS, GET_GSC_PAGES, GET_GSC_COUNTRIES, GET_GSC_DEVICES, GET_GA4_REFERRALS, GET_AI_CITATIONS, GET_BRAND_SENTIMENT, GET_AI_SEARCH_PAGES, GET_AI_SEARCH_ENGINES, GET_TRACKED_PROMPTS. Field name to sort by, for example updatedAt, title, or clicks.
Remove validation rules already expressed in this field’s schema; describe its meaning and usage instead.
inputs › sortOrder
OPTIONAL for: GET_GSC_KEYWORDS, GET_GSC_PAGES, GET_GSC_COUNTRIES, GET_GSC_DEVICES, GET_GA4_REFERRALS, GET_AI_CITATIONS, GET_BRAND_SENTIMENT, GET_AI_SEARCH_PAGES, GET_AI_SEARCH_ENGINES, GET_TRACKED_PROMPTS. Sort direction for paginated results.
Remove validation rules already expressed in this field’s schema; describe its meaning and usage instead.
inputs › ga4Filter › items › dimension
Dimension to filter on.
Remove validation rules already expressed in this field’s schema; describe its meaning and usage instead.
inputs › ga4Filter › items › operator
Filter comparison operator.
Remove validation rules already expressed in this field’s schema; describe its meaning and usage instead.
inputs › ga4Filter › items › expression
Value to match.
Remove validation rules already expressed in this field’s schema; describe its meaning and usage instead.
Remove validation rules already expressed in this field’s schema; describe its meaning and usage instead.
inputs › config
REQUIRED for: CREATE_GRID_COLUMN. Grid column config. Primitive columns use {"type":"TEXT"}. Workflow-backed columns include workflowId or workflowStepType plus inputMappings.
Remove validation rules already expressed in this field’s schema; describe its meaning and usage instead.
inputs › requiredInputNames
OPTIONAL for: CREATE_GRID_COLUMN. Workflow input names that must be mapped or hardcoded before creating the column.
Remove validation rules already expressed in this field’s schema; describe its meaning and usage instead.
inputs › rows
REQUIRED for: CREATE_GRID_ROWS. Rows to create. Each item requires a non-empty cells array of columnId/value pairs, for example {"cells":[{"columnId":31,"value":"omnius"},{"columnId":32,"value":158}]}.
Remove validation rules already expressed in this field’s schema; describe its meaning and usage instead.
inputs › rowId
REQUIRED for: UPDATE_GRID_CELL. Grid row ID.
Remove validation rules already expressed in this field’s schema; describe its meaning and usage instead.
Remove validation rules already expressed in this field’s schema; describe its meaning and usage instead.
inputs › value
REQUIRED for: UPDATE_GRID_CELL. Value to write. Can be a primitive, object, array, or workflow variable.
Remove validation rules already expressed in this field’s schema; describe its meaning and usage instead.
inputs › cells
REQUIRED for: UPDATE_GRID_CELLS. Cells to update. Each item must include rowId, columnId, and value.
Remove validation rules already expressed in this field’s schema; describe its meaning and usage instead.
inputs › cellId
REQUIRED for: RUN_GRID_CELL. Grid cell ID.
Remove validation rules already expressed in this field’s schema; describe its meaning and usage instead.
inputs › depth
OPTIONAL for: RUN_PAGE_SERP_SCAN. Scan depth: lite, standard, or deep.
Remove validation rules already expressed in this field’s schema; describe its meaning and usage instead.
inputs › scanId
REQUIRED for: GET_PAGE_SERP_SCAN, WAIT_FOR_PAGE_SERP_SCAN, GENERATE_PAGE_OPTIMIZATION_PLAN. Page SERP scan ID returned by Run page SERP scan. Workflow variables are supported. (e.g., {{runPageSerpScan.scanId}})
Remove validation rules already expressed in this field’s schema; describe its meaning and usage instead.
inputs › timeoutSeconds
OPTIONAL for: WAIT_FOR_PAGE_SERP_SCAN. Maximum time to wait, capped at 300 seconds.
Remove validation rules already expressed in this field’s schema; describe its meaning and usage instead.
inputs › pollIntervalSeconds
OPTIONAL for: WAIT_FOR_PAGE_SERP_SCAN. Polling interval, capped at 30 seconds.
Remove validation rules already expressed in this field’s schema; describe its meaning and usage instead.
inputs › text
OPTIONAL for: CLASSIFY_PAGE_TOPIC. Optional raw text to classify instead of a URL.
Remove validation rules already expressed in this field’s schema; describe its meaning and usage instead.
inputs › code
REQUIRED for: RUN_CODE, ERROR. Function to run. Return a value to expose it as this step result. (e.g., return variables.promptLlm.result)
Remove validation rules already expressed in this field’s schema; describe its meaning and usage instead.
inputs › timeoutMs
OPTIONAL for: RUN_CODE. Maximum execution time in milliseconds
Remove validation rules already expressed in this field’s schema; describe its meaning and usage instead.
inputs › template
REQUIRED for: WRITE_LIQUID_TEXT. Text template to render. Supports Liquid variables plus Instantly-style spintax variations. (e.g., Write text with Liquid like {{input.firstName}} and {{RANDOM | Hi | Hello}} spintax.)
Remove validation rules already expressed in this field’s schema; describe its meaning and usage instead.
inputs › fields › items › key
JSON object key
Remove validation rules already expressed in this field’s schema; describe its meaning and usage instead.
inputs › fields › items › value
Workflow variable reference or literal value
Remove validation rules already expressed in this field’s schema; describe its meaning and usage instead.
inputs › method
REQUIRED for: CALL_API. HTTP method to use for the request
Remove validation rules already expressed in this field’s schema; describe its meaning and usage instead.
inputs › headers
OPTIONAL for: CALL_API. Optional request headers as a JSON object. (e.g., { "Authorization": "Bearer {{input.token}}" })
Remove validation rules already expressed in this field’s schema; describe its meaning and usage instead.
inputs › body
REQUIRED for: SEND_EMAIL. Email body. Supports Liquid variables plus Instantly-style spintax variations. Use HTML tags when Body format is HTML. (e.g., Write the email body. Supports Liquid and {{RANDOM | Hi | Hello}} spintax.)
Remove validation rules already expressed in this field’s schema; describe its meaning and usage instead.
inputs › condition
REQUIRED for: CONDITION. Compare step data using ===, !==, ==, !=, <, <=, >, >=, &&, ||, ??, !, arithmetic, or ternary expressions. Dot and bracket data access, String/Number/Boolean, Array.isArray, includes, startsWith, endsWith, trim, toLowerCase, and toUpperCase are supported. Arbitrary JavaScript, prototype access, and regular expressions are not supported. (e.g., step_x.output === "value")
Remove validation rules already expressed in this field’s schema; describe its meaning and usage instead.
inputs › iterator
REQUIRED for: ITERATION. Enter an array variable or JSON array to iterate through. (e.g., {{findCompetitors.competitors}})
Remove validation rules already expressed in this field’s schema; describe its meaning and usage instead.
inputs › channel
REQUIRED for: NOTIFICATION. Notification channel to use
Remove validation rules already expressed in this field’s schema; describe its meaning and usage instead.
inputs › subject
REQUIRED for: SEND_EMAIL. Email subject line. Supports Liquid variables plus Instantly-style spintax variations. (e.g., Enter email subject. Supports Liquid and {{RANDOM | Hi | Hello}} spintax.)
Remove validation rules already expressed in this field’s schema; describe its meaning and usage instead.
inputs › recipients
OPTIONAL for: NOTIFICATION. Email recipients (required for email channel)
Remove validation rules already expressed in this field’s schema; describe its meaning and usage instead.
inputs › emailConnectorIds
REQUIRED for: SEND_EMAIL. Select one or more connected mailboxes that can send this email. Use get_email_connectors first and pass one or more active connector IDs.
Remove validation rules already expressed in this field’s schema; describe its meaning and usage instead.
inputs › autoRotate
OPTIONAL for: SEND_EMAIL. When enabled, select multiple outreach mailboxes and send from the one with the fewest successful sends today.
Remove validation rules already expressed in this field’s schema; describe its meaning and usage instead.
Remove validation rules already expressed in this field’s schema; describe its meaning and usage instead.
inputs › inReplyTo
OPTIONAL for: SEND_EMAIL. Message-ID of the email being answered. Sets the In-Reply-To header for email threading. (e.g., <[email protected]>)
Remove validation rules already expressed in this field’s schema; describe its meaning and usage instead.
inputs › references
OPTIONAL for: SEND_EMAIL. Ordered Message-IDs in the conversation. Sets the References header for email threading.
Remove validation rules already expressed in this field’s schema; describe its meaning and usage instead.
inputs › bodyFormat
OPTIONAL for: SEND_EMAIL. Send the body as HTML or plain text.
Remove validation rules already expressed in this field’s schema; describe its meaning and usage instead.
inputs › domain
REQUIRED for: FIND_DOMAIN_EMAILS, DETECT_PROGRAMMATIC_PAGE_CLUSTERS. Domain or URL to search for outreach emails. Supports workflow variables. (e.g., example.com)
Remove validation rules already expressed in this field’s schema; describe its meaning and usage instead.
inputs › targetName
OPTIONAL for: FIND_DOMAIN_EMAILS. Specific person to prioritize before falling back to target roles and generic inboxes. (e.g., Jane Doe)
Remove validation rules already expressed in this field’s schema; describe its meaning and usage instead.
inputs › maxResults
OPTIONAL for: FIND_DOMAIN_EMAILS. Maximum number of ranked contacts to return.
Remove validation rules already expressed in this field’s schema; describe its meaning and usage instead.
inputs › targetRoles
OPTIONAL for: FIND_DOMAIN_EMAILS. Roles to prioritize for backlink outreach.
Remove validation rules already expressed in this field’s schema; describe its meaning and usage instead.
inputs › includeGenericInboxes
OPTIONAL for: FIND_DOMAIN_EMAILS. Include generic role addresses such as contact@, info@, editorial@, and press@.
Remove validation rules already expressed in this field’s schema; describe its meaning and usage instead.
inputs › crawlMaxPages
OPTIONAL for: FIND_DOMAIN_EMAILS. Maximum number of relevant sitemap URLs to crawl before using paid providers.
Remove validation rules already expressed in this field’s schema; describe its meaning and usage instead.
inputs › email
OPTIONAL for: VERIFY_EMAILS. Single email address to verify. Supports workflow variables. (e.g., [email protected])
Remove validation rules already expressed in this field’s schema; describe its meaning and usage instead.
inputs › emails
OPTIONAL for: VERIFY_EMAILS. Email addresses to verify. Supports workflow variables that resolve to arrays.
Remove validation rules already expressed in this field’s schema; describe its meaning and usage instead.
inputs › stopOnFirstValid
OPTIONAL for: VERIFY_EMAILS. Verify addresses in order and stop after the first valid, safe-to-send result.
Remove validation rules already expressed in this field’s schema; describe its meaning and usage instead.
inputs › source
OPTIONAL for: RAPID_URL_INDEXING. Choose whether to index a provided URL or all eligible sitemap URLs
Remove validation rules already expressed in this field’s schema; describe its meaning and usage instead.
inputs › metadata
OPTIONAL for: PUBLISH, PUBLISH_MAPPED_CONTENT. For Webflow, set featuredImageAltText to describe the featured image. If omitted, the article title is used. Explicit image mappings accept {url, alt}; use alt: "" only for decorative images.
Remove validation rules already expressed in this field’s schema; describe its meaning and usage instead.
inputs › status
REQUIRED for: UPDATE_WEBFLOW_CONTENT. Publish only this CMS item; draft leaves its existing live version unchanged
Remove validation rules already expressed in this field’s schema; describe its meaning and usage instead.
inputs › scheduledAt
OPTIONAL for: PUBLISH, PUBLISH_MAPPED_CONTENT, PUBLISH_BUFFER_POST, PUBLISH_INTEGRATION. WordPress only: enter a UTC date and time. Future dates schedule publication; past dates publish immediately with that date. Webflow API scheduling is unsupported. (e.g., 2026-12-01T09:00:00Z)
Remove validation rules already expressed in this field’s schema; describe its meaning and usage instead.
inputs › categories
OPTIONAL for: PUBLISH. Categories for the published content. Used by WordPress and Webflow multi-category fields.
Remove validation rules already expressed in this field’s schema; describe its meaning and usage instead.
inputs › tags
OPTIONAL for: PUBLISH. Tags for the published content
Remove validation rules already expressed in this field’s schema; describe its meaning and usage instead.
inputs › mappingMode
OPTIONAL for: PUBLISH_MAPPED_CONTENT. Choose whether to map destination fields one by one or provide one JSON object. For WordPress, JSON contains the complete ACF values object.
Remove validation rules already expressed in this field’s schema; describe its meaning and usage instead.
inputs › fieldData
OPTIONAL for: PUBLISH_MAPPED_CONTENT. Destination field mapping object. For Webflow, key fieldData slugs to literal values or workflow variables. For WordPress, set top-level title/content/contentType fields on the step.
Remove validation rules already expressed in this field’s schema; describe its meaning and usage instead.
inputs › seoMetadata
OPTIONAL for: PUBLISH_MAPPED_CONTENT. SEO metadata
Remove validation rules already expressed in this field’s schema; describe its meaning and usage instead.
inputs › elementorJson
OPTIONAL for: PUBLISH_MAPPED_CONTENT. Optional WordPress draft-page composition: ordered sections with templateId, named fields and values. Requires the Atomic Elementor bridge. Content mappings preserve section styling.
Remove validation rules already expressed in this field’s schema; describe its meaning and usage instead.
inputs › fieldDataJson
OPTIONAL for: PUBLISH_MAPPED_CONTENT. Full destination fieldData object to publish. Use ACF values for WordPress or CMS fields for Webflow. (JSON or full variable reference, e.g., {{generateStructuredPageContent.generated_page}})
Remove validation rules already expressed in this field’s schema; describe its meaning and usage instead.
inputs › connectionId
REQUIRED for: PUBLISH_SOCIAL_POST, PUBLISH_BUFFER_POST, PUBLISH_INTEGRATION. Select the active project-scoped X account that will publish this content.
Remove validation rules already expressed in this field’s schema; describe its meaning and usage instead.
inputs › segments
OPTIONAL for: PUBLISH_SOCIAL_POST. At least two ordered approved segments. Each later segment replies to the preceding post.
Remove validation rules already expressed in this field’s schema; describe its meaning and usage instead.
inputs › replySettings
OPTIONAL for: PUBLISH_SOCIAL_POST. Optional X reply setting. Empty uses the platform default.
Remove validation rules already expressed in this field’s schema; describe its meaning and usage instead.
inputs › approvedBy
OPTIONAL for: PUBLISH_SOCIAL_POST. Optional reviewer identity from the preceding approval step.
Remove validation rules already expressed in this field’s schema; describe its meaning and usage instead.
inputs › approvalReference
OPTIONAL for: PUBLISH_SOCIAL_POST. Optional stable reference to the preceding approval.
Remove validation rules already expressed in this field’s schema; describe its meaning and usage instead.
inputs › channelId
REQUIRED for: PUBLISH_BUFFER_POST. Social account
Remove validation rules already expressed in this field’s schema; describe its meaning and usage instead.
inputs › channelService
REQUIRED for: PUBLISH_BUFFER_POST. Social network
Remove validation rules already expressed in this field’s schema; describe its meaning and usage instead.
inputs › mediaType
OPTIONAL for: PUBLISH_BUFFER_POST, PUBLISH_ZERNIO_POST, PUBLISH_INTEGRATION. Media type
Remove validation rules already expressed in this field’s schema; describe its meaning and usage instead.
inputs › mediaUrl
OPTIONAL for: PUBLISH_BUFFER_POST, PUBLISH_ZERNIO_POST, PUBLISH_INTEGRATION. Use a direct, permanent HTTPS file URL that Buffer can access when the post is delivered.
Remove validation rules already expressed in this field’s schema; describe its meaning and usage instead.
inputs › images › items › url
Public HTTPS image URL
Remove validation rules already expressed in this field’s schema; describe its meaning and usage instead.
inputs › images › items › altText
Image description for screen readers
Remove validation rules already expressed in this field’s schema; describe its meaning and usage instead.
inputs › firstComment
OPTIONAL for: PUBLISH_BUFFER_POST, PUBLISH_INTEGRATION. First comment
Remove validation rules already expressed in this field’s schema; describe its meaning and usage instead.
Remove validation rules already expressed in this field’s schema; describe its meaning and usage instead.
inputs › publication
OPTIONAL for: PUBLISH_INTEGRATION. For Substack, enter the exact connected publication handle or URL. Connect and verify it in Narrareach first.
Remove validation rules already expressed in this field’s schema; describe its meaning and usage instead.
inputs › scheduledFor
OPTIONAL for: PUBLISH_INTEGRATION. Optional future ISO timestamp with offset, for example 2026-12-01T14:00:00Z. Blank queues the article one minute after this step runs.
Remove validation rules already expressed in this field’s schema; describe its meaning and usage instead.
Remove validation rules already expressed in this field’s schema; describe its meaning and usage instead.
inputs › socialAccountId
OPTIONAL for: PUBLISH_INTEGRATION. Use a connected account ID from Narrareach when multiple social accounts are available.
Remove validation rules already expressed in this field’s schema; describe its meaning and usage instead.
inputs › imageUrls
OPTIONAL for: PUBLISH_INTEGRATION. 2-10 public HTTPS image URLs, in slide order. Instagram feed posts only.
Remove validation rules already expressed in this field’s schema; describe its meaning and usage instead.
inputs › imageAltTexts
OPTIONAL for: PUBLISH_INTEGRATION. Optional accessibility descriptions, in the same order as carousel image URLs. Include an empty string for any slide without alt text. Maximum 1000 characters per slide.
Remove validation rules already expressed in this field’s schema; describe its meaning and usage instead.
inputs › providerOptions
OPTIONAL for: PUBLISH_INTEGRATION. Optional settings used by the selected publishing adapter.
Remove validation rules already expressed in this field’s schema; describe its meaning and usage instead.
inputs › customDomainIds
REQUIRED for: PUBLISH_WEBFLOW_SITE. Explicit array of domain IDs returned by Get Webflow publishing domains.
Remove validation rules already expressed in this field’s schema; describe its meaning and usage instead.
inputs › expectedPublicationToken
REQUIRED for: PUBLISH_WEBFLOW_SITE. publicationToken from Get Webflow publishing domains.
Remove validation rules already expressed in this field’s schema; describe its meaning and usage instead.
inputs › collectionId
REQUIRED for: GET_WEBFLOW_COLLECTION_STRUCTURE, LIST_WEBFLOW_COLLECTION_ITEMS, VERIFY_WEBFLOW_CONTENT, GET_WEBFLOW_CONTENT, UPDATE_WEBFLOW_CONTENT. Select the Webflow CMS collection whose item structure should be returned.
Remove validation rules already expressed in this field’s schema; describe its meaning and usage instead.
inputs › referenceItemId
OPTIONAL for: GET_WEBFLOW_COLLECTION_STRUCTURE. Optional existing CMS item whose field values teach generation the intended role, format, and level of detail for each field.
Remove validation rules already expressed in this field’s schema; describe its meaning and usage instead.
inputs › templateName
REQUIRED for: CREATE_PROGRAMMATIC_PAGE_TEMPLATE. CMS collection name to create or reuse. (e.g., Programmatic Pages)
Remove validation rules already expressed in this field’s schema; describe its meaning and usage instead.
inputs › collectionSlug
OPTIONAL for: CREATE_PROGRAMMATIC_PAGE_TEMPLATE. URL collection slug. Leave empty to derive it from the template name. (e.g., programmatic-pages)
Remove validation rules already expressed in this field’s schema; describe its meaning and usage instead.
inputs › pageStructure
REQUIRED for: PROGRAMMATIC_PAGES. Page or collection structure returned by Extract programmatic page structure or Get Webflow collection structure. Use a full variable reference or paste JSON; empty structures are rejected. (JSON or full variable reference, e.g., {{extractProgrammaticPageStructure.pageStructure}} or {{webflowCollectionStructure.pageStructure}})
Remove validation rules already expressed in this field’s schema; describe its meaning and usage instead.
inputs › maxUrls
OPTIONAL for: DETECT_PROGRAMMATIC_PAGE_CLUSTERS. Maximum number of sitemap page URLs to analyze.
Remove validation rules already expressed in this field’s schema; describe its meaning and usage instead.
inputs › minClusterSize
OPTIONAL for: DETECT_PROGRAMMATIC_PAGE_CLUSTERS. Minimum number of URLs required for a URL pattern to be returned as a cluster.
Remove validation rules already expressed in this field’s schema; describe its meaning and usage instead.
inputs › maxClusters
OPTIONAL for: DETECT_PROGRAMMATIC_PAGE_CLUSTERS. Maximum number of clusters to return.
Remove validation rules already expressed in this field’s schema; describe its meaning and usage instead.
inputs › urls
REQUIRED for: EXTRACT_PROGRAMMATIC_PAGE_STRUCTURE. Two to five URL strings to scrape, or one workflow variable that resolves to that array.
Remove validation rules already expressed in this field’s schema; describe its meaning and usage instead.
inputs › market
OPTIONAL for: PROGRAMMATIC_MARKET_RESEARCH. Optional market or category to narrow the research. (e.g., SaaS CRM)
Remove validation rules already expressed in this field’s schema; describe its meaning and usage instead.
inputs › competitorDomains
OPTIONAL for: PROGRAMMATIC_MARKET_RESEARCH. Optional domains to prefer as likely sources of example page patterns.
Remove validation rules already expressed in this field’s schema; describe its meaning and usage instead.
inputs › excludeDomains
OPTIONAL for: PROGRAMMATIC_MARKET_RESEARCH. Optional domains to exclude from selected example URLs.
Remove validation rules already expressed in this field’s schema; describe its meaning and usage instead.
inputs › exampleCount
OPTIONAL for: PROGRAMMATIC_MARKET_RESEARCH. Number of example URLs to select before extracting the page structure.
Remove validation rules already expressed in this field’s schema; describe its meaning and usage instead.
inputs › nlp
OPTIONAL for: CREATE_CONTENT. NLP keywords/data from SERP_ANALYSIS or NLP_ANALYSIS steps. (e.g., {{serpAnalysis.nlp}} or {{nlpAnalysis.nlpKeywords}})
Remove validation rules already expressed in this field’s schema; describe its meaning and usage instead.
inputs › rankTrackerId
OPTIONAL for: CREATE_CONTENT. Rank tracker ID from SERP_ANALYSIS step. (e.g., {{serpAnalysis.rankTrackerId}})
Remove validation rules already expressed in this field’s schema; describe its meaning and usage instead.
inputs › keywordLocalSearchId
OPTIONAL for: CREATE_CONTENT. Keyword local search ID from SERP_ANALYSIS step. (e.g., {{serpAnalysis.keywordLocalSearchId}})
Remove validation rules already expressed in this field’s schema; describe its meaning and usage instead.
inputs › outline
OPTIONAL for: CREATE_CONTENT. Content outline from GENERATE_OUTLINE step. (e.g., {{generateOutline.outline}})
Remove validation rules already expressed in this field’s schema; describe its meaning and usage instead.
inputs › clientLinkedInProfileUrl
OPTIONAL for: ENRICH_CONTENT_SOCIAL_POSTS. Optional override for the Brand Kit client LinkedIn profile. Atomic searches this client's posts and general LinkedIn results, then selects only strongly relevant candidates. (e.g., https://www.linkedin.com/in/client-profile/)
Remove validation rules already expressed in this field’s schema; describe its meaning and usage instead.
inputs › maxPostCount
OPTIONAL for: ENRICH_CONTENT_SOCIAL_POSTS. Embed at most one or two posts that are directly relevant to a specific section. Weak matches are always skipped.
Remove validation rules already expressed in this field’s schema; describe its meaning and usage instead.
inputs › seoPlugin
OPTIONAL for: LIST_WORDPRESS_CONTENT, GET_WORDPRESS_CONTENT, UPDATE_WORDPRESS_CONTENT, LIST_WOOCOMMERCE_PRODUCTS, GET_WOOCOMMERCE_PRODUCT, UPDATE_WOOCOMMERCE_PRODUCT. Same SEO plugin selection as product updates; required when multiple plugins are available without a preference
Remove validation rules already expressed in this field’s schema; describe its meaning and usage instead.
inputs › perPage
OPTIONAL for: LIST_WORDPRESS_CONTENT, LIST_WOOCOMMERCE_PRODUCTS. Maximum items in one page
Remove validation rules already expressed in this field’s schema; describe its meaning and usage instead.
inputs › contentUrl
OPTIONAL for: GET_WORDPRESS_CONTENT, UPDATE_WORDPRESS_CONTENT. Exact permalink on the selected WordPress site, instead of an ID
Remove validation rules already expressed in this field’s schema; describe its meaning and usage instead.
Remove validation rules already expressed in this field’s schema; describe its meaning and usage instead.
inputs › itemId
REQUIRED for: VERIFY_WEBFLOW_CONTENT, GET_WEBFLOW_CONTENT, UPDATE_WEBFLOW_CONTENT. Existing primary-locale CMS post or collection page
Remove validation rules already expressed in this field’s schema; describe its meaning and usage instead.
inputs › expected
REQUIRED for: VERIFY_WEBFLOW_CONTENT, UPDATE_WEBFLOW_CONTENT, UPDATE_WORDPRESS_CONTENT, UPDATE_WOOCOMMERCE_PRODUCT. Original values of exactly the patched fields; native originals only when expectedSeo is provided
Remove validation rules already expressed in this field’s schema; describe its meaning and usage instead.
inputs › pageId
REQUIRED for: UPDATE_WEBFLOW_DESIGN. Omit to list connected site pages; otherwise inspect this page
Remove validation rules already expressed in this field’s schema; describe its meaning and usage instead.
inputs › call
REQUIRED for: UPDATE_WEBFLOW_DESIGN. JSON object with tool and arguments from the current Webflow MCP schema; one action, without siteId or pageId
Remove validation rules already expressed in this field’s schema; describe its meaning and usage instead.
inputs › attemptId
REQUIRED for: UPDATE_WEBFLOW_DESIGN. Stable UUID v4 retained on retries
Remove validation rules already expressed in this field’s schema; describe its meaning and usage instead.
inputs › expectedDesignToken
REQUIRED for: UPDATE_WEBFLOW_DESIGN. Token from a fresh Get Webflow design read
Remove validation rules already expressed in this field’s schema; describe its meaning and usage instead.
inputs › patch
REQUIRED for: UPDATE_WEBFLOW_CONTENT, UPDATE_WORDPRESS_CONTENT, UPDATE_WOOCOMMERCE_PRODUCT. Selected product content or SEO fields, using types and capabilities returned by get_woocommerce_product.
Remove validation rules already expressed in this field’s schema; describe its meaning and usage instead.
inputs › expectedSeo
OPTIONAL for: UPDATE_WORDPRESS_CONTENT, UPDATE_WOOCOMMERCE_PRODUCT. JSON map of rankMath/squirrly originals from content.seoPlugins; required for all when both plugins are present. Then expected contains native originals only.
Remove validation rules already expressed in this field’s schema; describe its meaning and usage instead.
inputs › fetchAll
OPTIONAL for: LIST_WOOCOMMERCE_PRODUCTS. Fetch all pages
Remove validation rules already expressed in this field’s schema; describe its meaning and usage instead.
inputs › maxProducts
OPTIONAL for: LIST_WOOCOMMERCE_PRODUCTS. Hard limit in fetch-all mode. Truncated results include continuation details.
Remove validation rules already expressed in this field’s schema; describe its meaning and usage instead.
inputs › productId
REQUIRED for: UPDATE_WOOCOMMERCE_PRODUCT. Existing product ID or a variable reference.
Remove validation rules already expressed in this field’s schema; describe its meaning and usage instead.
inputs › productUrl
OPTIONAL for: GET_WOOCOMMERCE_PRODUCT. Exact URL in the selected store. Provide this or Product ID, not both.
Remove validation rules already expressed in this field’s schema; describe its meaning and usage instead.
inputs › imageUrl
OPTIONAL for: CREATE_CONTENT_VERSION. Optional featured image override. Leave blank to preserve the existing featured image. (e.g., Optional featured image override)
Remove validation rules already expressed in this field’s schema; describe its meaning and usage instead.
inputs › internalLinkingMode
OPTIONAL for: CREATE_CONTENT_VERSION. Optionally apply conservative internal links before saving.
Remove validation rules already expressed in this field’s schema; describe its meaning and usage instead.
inputs › autoLinkConfidenceThreshold
OPTIONAL for: CREATE_CONTENT_VERSION. Confidence threshold used when internalLinkingMode is 'auto_conservative'.
Remove validation rules already expressed in this field’s schema; describe its meaning and usage instead.
inputs › workflowId
REQUIRED for: RUN_WORKFLOW. Select the workflow to run
Remove validation rules already expressed in this field’s schema; describe its meaning and usage instead.
inputs › reviewContent › items › id
Unique identifier for the review content item
Remove validation rules already expressed in this field’s schema; describe its meaning and usage instead.
inputs › reviewContent › items › outputVariable
Editable output variable name. After approval, use this key in subsequent steps.
Remove validation rules already expressed in this field’s schema; describe its meaning and usage instead.
inputs › reviewContent › items › instructions
Instructions for reviewer
Remove validation rules already expressed in this field’s schema; describe its meaning and usage instead.
inputs › reviewContent › items › contentFormat
Content format type. single_selection: human selects one option, output is the selected value (string). multi_selection: human selects multiple options, output is array of selected values. single_item: human reviews/edits a single value, output is the approved/edited value.
Remove validation rules already expressed in this field’s schema; describe its meaning and usage instead.
inputs › reviewContent › items › valueToReview
Variable reference for the value to review (array for selection formats, single value for single_item)
Remove validation rules already expressed in this field’s schema; describe its meaning and usage instead.
inputs › reviewContent › items › previewFieldPath
For JSON object arrays in selection formats, field path from each item to show as the review row preview, for example id, title, pattern, or urls[0].
Remove validation rules already expressed in this field’s schema; describe its meaning and usage instead.
inputs › reviewContent › items › outputMode
For selection formats, full_item outputs the full selected item and field outputs outputFieldPath from each selected item.
Remove validation rules already expressed in this field’s schema; describe its meaning and usage instead.
inputs › reviewContent › items › outputFieldPath
Field path to output from each selected item when outputMode is field.
Remove validation rules already expressed in this field’s schema; describe its meaning and usage instead.
position › x
X coordinate for the step position in the workflow editor (optional, defaults to 0)
Remove validation rules already expressed in this field’s schema; describe its meaning and usage instead.
position › y
Y coordinate for the step position in the workflow editor (optional, defaults to 0)
Remove validation rules already expressed in this field’s schema; describe its meaning and usage instead.
projectId
Atomic project ID from list_projects. Omit to use the configured project; if asked to choose, select one of the accessible returned IDs.
Remove validation rules already expressed in this field’s schema; describe its meaning and usage instead.
context
Short purpose of this call for the activity log. Exclude personal data and private source content.
Remove validation rules already expressed in this field’s schema; describe its meaning and usage instead.
llm_model
Use the exact model ID executing this call, from runtime/system context, for usage attribution. Supply it on every Atomic MCP tool call, including discovery and feedback, and update it if the model changes. Use the model ID rather than the client app name. If unavailable, omit it; never guess or ask the user.
Remove validation rules already expressed in this field’s schema; describe its meaning and usage instead.
The title clearly communicates the tool’s action and subject. Keep it concise.
Description98/100
Capture a screenshot of a public website URL, upload it to S3, and return an imageUrl for direct markdown embedding as . Use it for exact source pages, product UI, dashboards, SERPs, reports, and workflow evidence.
Creates a stored image from the requested page; it does not edit that page. Use readWebPage for text and import_image_to_s3 for an existing image. Repeating capture can create another asset.
The description explains the capability, when to use it, and what to expect.
Inputs88/100
Remove validation rules already expressed in this field’s schema; describe its meaning and usage instead.
url
Website URL to capture. Accepts http:// or https:// URLs.
Clear enough to supply this argument.
width
Screenshot width in pixels. Optional, defaults to 1200.
Remove validation rules already expressed in this field’s schema; describe its meaning and usage instead.
height
Screenshot height in pixels. Optional, defaults to 675 (16:9 with the default width).
Remove validation rules already expressed in this field’s schema; describe its meaning and usage instead.
fullPage
When true, capture the full page height instead of cropping to the requested width and height. Defaults to false.
Clear enough to supply this argument.
filename
Optional output filename. Defaults to website-screenshot-<domain>-<timestamp>.png
Clear enough to supply this argument.
projectId
Atomic project ID from list_projects. Omit to use the configured project; if asked to choose, select one of the accessible returned IDs.
Clear enough to supply this argument.
context
Short purpose of this call for the activity log. Exclude personal data and private source content.
Remove validation rules already expressed in this field’s schema; describe its meaning and usage instead.
llm_model
Use the exact model ID executing this call, from runtime/system context, for usage attribution. Supply it on every Atomic MCP tool call, including discovery and feedback, and update it if the model changes. Use the model ID rather than the client app name. If unavailable, omit it; never guess or ask the user.
Remove validation rules already expressed in this field’s schema; describe its meaning and usage instead.
Align the output schema with the tool’s documented result.
View output schema
{
"type": "object",
"required": [
"success"
],
"properties": {
"url": {
"type": "string",
"description": "Link for resolving the failure or completing the operation."
},
"data": {
"type": "object",
"required": [
"imageUrl",
"usage",
"providerUsage"
],
"properties": {
"usage": {
"type": "object",
"required": [
"inputTokens",
"outputTokens",
"executionTime",
"creditsUsed",
"model"
],
"properties": {
"model": {
"type": "string",
"description": "Model identifier used for the reported generation or AI-search run."
},
"modelUsage": {
"type": "object",
"properties": {},
"description": "Actual execution models, including verification; never inferred from a phase label.",
"additionalProperties": {
"type": "object",
"description": "Nested operation-specific fields."
}
},
"phaseUsage": {
"type": "object",
"properties": {},
"description": "Costs charged in this execution, excluding phases restored from an earlier run."
},
"creditsUsed": {
"type": "number",
"description": "Atomic credits recorded as used by this execution."
},
"inputTokens": {
"type": "number",
"description": "Input tokens reported for this model execution."
},
"toolRetries": {
"type": "object",
"required": [
"attempts",
"providerCostDollars",
"toolCostDollars"
],
"properties": {
"attempts": {
"type": "number",
"description": "Processing or execution attempts associated with this record."
},
"toolCostDollars": {
"type": "number",
"description": "Independent costs for retry tool calls only; included in the phase total."
},
"providerCostDollars": {
"type": "number",
"description": "Whole model turns containing retries; included in the phase total."
}
},
"description": "Number of tool retries recorded for the execution."
},
"outputTokens": {
"type": "number",
"description": "Output tokens reported for this model execution."
},
"executionTime": {
"type": "number",
"description": "Elapsed execution duration reported by the tool."
},
"toolCostDollars": {
"type": "number",
"description": "Tool-related cost recorded for this execution, in US dollars."
},
"providerCostDollars": {
"type": "number",
"description": "Provider cost recorded for this execution, in US dollars."
},
"cacheReadInputTokens": {
"type": "number",
"description": "Input tokens served from a model prompt cache."
},
"cacheCreationInputTokens": {
"type": "number",
"description": "Input tokens charged for creating a model prompt cache."
}
},
"description": "Provider or Atomic usage measurements for this execution."
},
"imageUrl": {
"type": "string",
"description": "URL of the generated, uploaded or selected image."
},
"providerUsage": {
"type": "array",
"items": {
"type": "object",
"required": [
"provider",
"apiCalls",
"creditsUsed",
"costDollars"
],
"properties": {
"apiCalls": {
"type": "number"
},
"provider": {
"type": "string",
"description": "Provider that supplied this result or supports this capability."
},
"costDollars": {
"type": "number"
},
"creditsUsed": {
"type": "number",
"description": "Atomic credits recorded as used by this execution."
}
}
}
}
},
"description": "Operation data; optional fields may be absent."
},
"error": {
"type": "string",
"description": "Why the operation failed."
},
"details": {
"type": "object",
"description": "Diagnostics keyed by errorCode."
},
"message": {
"type": "string",
"description": "Outcome or recovery instructions. Project selection means no action ran."
},
"success": {
"type": "boolean",
"description": "Operation success; on false inspect error/errorCode."
},
"upgrade": {
"type": "object",
"description": "Plan-upgrade guidance for an unavailable capability."
},
"category": {
"type": "string",
"description": "Failure category, such as invalid_input or plan_required."
},
"expected": {
"type": "boolean",
"description": "Whether this is an anticipated access, input, plan or state failure."
},
"projects": {
"type": "array",
"items": {
"type": "object",
"properties": {
"id": {
"type": "number",
"description": "Project ID for projectId."
},
"name": {
"type": "string",
"description": "Project name."
}
},
"description": "Accessible project."
},
"description": "Accessible project choices. Select a projectId and retry."
},
"errorCode": {
"type": "string",
"description": "Failure code for recovery."
},
"retryable": {
"type": "boolean",
"description": "Whether an unchanged request can be retried."
},
"statusCode": {
"type": "number",
"description": "HTTP-style failure status."
},
"executionTime": {
"type": "string",
"description": "Elapsed time in seconds, with an s suffix."
}
},
"description": "Operation result envelope."
}
Original tool metadata
{
"name": "capture_website_screenshot",
"title": "Capture website screenshot",
"description": "Capture a screenshot of a public website URL, upload it to S3, and return an imageUrl for direct markdown embedding as . Use it for exact source pages, product UI, dashboards, SERPs, reports, and workflow evidence.\n\nCreates a stored image from the requested page; it does not edit that page. Use readWebPage for text and import_image_to_s3 for an existing image. Repeating capture can create another asset.",
"inputSchema": {
"type": "object",
"required": [
"url"
],
"properties": {
"url": {
"type": "string",
"description": "Website URL to capture. Accepts http:// or https:// URLs."
},
"width": {
"type": "number",
"maximum": 2400,
"minimum": 320,
"description": "Screenshot width in pixels. Optional, defaults to 1200."
},
"height": {
"type": "number",
"maximum": 2400,
"minimum": 240,
"description": "Screenshot height in pixels. Optional, defaults to 675 (16:9 with the default width)."
},
"context": {
"type": "string",
"maxLength": 120,
"description": "Short purpose of this call for the activity log. Exclude personal data and private source content."
},
"filename": {
"type": "string",
"description": "Optional output filename. Defaults to website-screenshot-<domain>-<timestamp>.png"
},
"fullPage": {
"type": "boolean",
"description": "When true, capture the full page height instead of cropping to the requested width and height. Defaults to false."
},
"llm_model": {
"type": "string",
"maxLength": 128,
"description": "Use the exact model ID executing this call, from runtime/system context, for usage attribution. Supply it on every Atomic MCP tool call, including discovery and feedback, and update it if the model changes. Use the model ID rather than the client app name. If unavailable, omit it; never guess or ask the user."
},
"projectId": {
"type": "number",
"description": "Atomic project ID from list_projects. Omit to use the configured project; if asked to choose, select one of the accessible returned IDs."
}
}
},
"outputSchema": {
"type": "object",
"required": [
"success"
],
"properties": {
"url": {
"type": "string",
"description": "Link for resolving the failure or completing the operation."
},
"data": {
"type": "object",
"required": [
"imageUrl",
"usage",
"providerUsage"
],
"properties": {
"usage": {
"type": "object",
"required": [
"inputTokens",
"outputTokens",
"executionTime",
"creditsUsed",
"model"
],
"properties": {
"model": {
"type": "string",
"description": "Model identifier used for the reported generation or AI-search run."
},
"modelUsage": {
"type": "object",
"properties": {},
"description": "Actual execution models, including verification; never inferred from a phase label.",
"additionalProperties": {
"type": "object",
"description": "Nested operation-specific fields."
}
},
"phaseUsage": {
"type": "object",
"properties": {},
"description": "Costs charged in this execution, excluding phases restored from an earlier run."
},
"creditsUsed": {
"type": "number",
"description": "Atomic credits recorded as used by this execution."
},
"inputTokens": {
"type": "number",
"description": "Input tokens reported for this model execution."
},
"toolRetries": {
"type": "object",
"required": [
"attempts",
"providerCostDollars",
"toolCostDollars"
],
"properties": {
"attempts": {
"type": "number",
"description": "Processing or execution attempts associated with this record."
},
"toolCostDollars": {
"type": "number",
"description": "Independent costs for retry tool calls only; included in the phase total."
},
"providerCostDollars": {
"type": "number",
"description": "Whole model turns containing retries; included in the phase total."
}
},
"description": "Number of tool retries recorded for the execution."
},
"outputTokens": {
"type": "number",
"description": "Output tokens reported for this model execution."
},
"executionTime": {
"type": "number",
"description": "Elapsed execution duration reported by the tool."
},
"toolCostDollars": {
"type": "number",
"description": "Tool-related cost recorded for this execution, in US dollars."
},
"providerCostDollars": {
"type": "number",
"description": "Provider cost recorded for this execution, in US dollars."
},
"cacheReadInputTokens": {
"type": "number",
"description": "Input tokens served from a model prompt cache."
},
"cacheCreationInputTokens": {
"type": "number",
"description": "Input tokens charged for creating a model prompt cache."
}
},
"description": "Provider or Atomic usage measurements for this execution."
},
"imageUrl": {
"type": "string",
"description": "URL of the generated, uploaded or selected image."
},
"providerUsage": {
"type": "array",
"items": {
"type": "object",
"required": [
"provider",
"apiCalls",
"creditsUsed",
"costDollars"
],
"properties": {
"apiCalls": {
"type": "number"
},
"provider": {
"type": "string",
"description": "Provider that supplied this result or supports this capability."
},
"costDollars": {
"type": "number"
},
"creditsUsed": {
"type": "number",
"description": "Atomic credits recorded as used by this execution."
}
}
}
}
},
"description": "Operation data; optional fields may be absent."
},
"error": {
"type": "string",
"description": "Why the operation failed."
},
"details": {
"type": "object",
"description": "Diagnostics keyed by errorCode."
},
"message": {
"type": "string",
"description": "Outcome or recovery instructions. Project selection means no action ran."
},
"success": {
"type": "boolean",
"description": "Operation success; on false inspect error/errorCode."
},
"upgrade": {
"type": "object",
"description": "Plan-upgrade guidance for an unavailable capability."
},
"category": {
"type": "string",
"description": "Failure category, such as invalid_input or plan_required."
},
"expected": {
"type": "boolean",
"description": "Whether this is an anticipated access, input, plan or state failure."
},
"projects": {
"type": "array",
"items": {
"type": "object",
"properties": {
"id": {
"type": "number",
"description": "Project ID for projectId."
},
"name": {
"type": "string",
"description": "Project name."
}
},
"description": "Accessible project."
},
"description": "Accessible project choices. Select a projectId and retry."
},
"errorCode": {
"type": "string",
"description": "Failure code for recovery."
},
"retryable": {
"type": "boolean",
"description": "Whether an unchanged request can be retried."
},
"statusCode": {
"type": "number",
"description": "HTTP-style failure status."
},
"executionTime": {
"type": "string",
"description": "Elapsed time in seconds, with an s suffix."
}
},
"description": "Operation result envelope."
},
"annotations": {
"readOnlyHint": false,
"openWorldHint": true,
"idempotentHint": false,
"destructiveHint": false
}
}
The title clearly communicates the tool’s action and subject. Keep it concise.
Description89/100
Classify a page URL or text against the project topic catalog using Jev and evaluate search intent and optional keyword alignment. Topics are empty when no catalog topics confidently match; reasoning summarizes decisions rather than generating an explanation.
Use url for a published page or text for a supplied draft. This evaluates against the project's existing topics, not a new topic taxonomy. Analysis uses metered inference and may fetch the URL; it does not rewrite the source page.
The description explains the capability, when to use it, and what to expect.
Inputs92/100
Remove validation rules already expressed in this field’s schema; describe its meaning and usage instead.
url
Optional URL to scrape and classify.
Clear enough to supply this argument.
text
Optional raw text to classify instead of a URL.
Clear enough to supply this argument.
keyword
Optional keyword to compare against page intent.
Clear enough to supply this argument.
projectId
Atomic project ID from list_projects. Omit to use the configured project; if asked to choose, select one of the accessible returned IDs.
Clear enough to supply this argument.
context
Short purpose of this call for the activity log. Exclude personal data and private source content.
Remove validation rules already expressed in this field’s schema; describe its meaning and usage instead.
llm_model
Use the exact model ID executing this call, from runtime/system context, for usage attribution. Supply it on every Atomic MCP tool call, including discovery and feedback, and update it if the model changes. Use the model ID rather than the client app name. If unavailable, omit it; never guess or ask the user.
{
"type": "object",
"required": [
"success"
],
"properties": {
"url": {
"type": "string",
"description": "Link for resolving the failure or completing the operation."
},
"data": {
"type": "object",
"required": [
"data"
],
"properties": {
"data": {
"type": "object",
"required": [
"topics",
"primaryIntent",
"matchesKeywordIntent",
"reasoning"
],
"properties": {
"topics": {
"type": "array",
"items": {
"type": "object",
"description": "Nested operation-specific fields."
}
},
"reasoning": {
"type": "string"
},
"primaryIntent": {
"type": "string"
},
"matchesKeywordIntent": {
"type": "boolean"
}
},
"description": "Result items or operation data inside this returned payload. Pagination fields describe only this result page."
}
},
"description": "Operation data; optional fields may be absent."
},
"error": {
"type": "string",
"description": "Why the operation failed."
},
"details": {
"type": "object",
"description": "Diagnostics keyed by errorCode."
},
"message": {
"type": "string",
"description": "Outcome or recovery instructions. Project selection means no action ran."
},
"success": {
"type": "boolean",
"description": "Operation success; on false inspect error/errorCode."
},
"upgrade": {
"type": "object",
"description": "Plan-upgrade guidance for an unavailable capability."
},
"category": {
"type": "string",
"description": "Failure category, such as invalid_input or plan_required."
},
"expected": {
"type": "boolean",
"description": "Whether this is an anticipated access, input, plan or state failure."
},
"projects": {
"type": "array",
"items": {
"type": "object",
"properties": {
"id": {
"type": "number",
"description": "Project ID for projectId."
},
"name": {
"type": "string",
"description": "Project name."
}
},
"description": "Accessible project."
},
"description": "Accessible project choices. Select a projectId and retry."
},
"errorCode": {
"type": "string",
"description": "Failure code for recovery."
},
"retryable": {
"type": "boolean",
"description": "Whether an unchanged request can be retried."
},
"statusCode": {
"type": "number",
"description": "HTTP-style failure status."
},
"executionTime": {
"type": "string",
"description": "Elapsed time in seconds, with an s suffix."
}
},
"description": "Operation result envelope."
}
Original tool metadata
{
"name": "classify_page_topic",
"title": "Classify page topic",
"description": "Classify a page URL or text against the project topic catalog using Jev and evaluate search intent and optional keyword alignment. Topics are empty when no catalog topics confidently match; reasoning summarizes decisions rather than generating an explanation.\n\nUse url for a published page or text for a supplied draft. This evaluates against the project's existing topics, not a new topic taxonomy. Analysis uses metered inference and may fetch the URL; it does not rewrite the source page.",
"inputSchema": {
"type": "object",
"required": [],
"properties": {
"url": {
"type": "string",
"description": "Optional URL to scrape and classify."
},
"text": {
"type": "string",
"description": "Optional raw text to classify instead of a URL."
},
"context": {
"type": "string",
"maxLength": 120,
"description": "Short purpose of this call for the activity log. Exclude personal data and private source content."
},
"keyword": {
"type": "string",
"description": "Optional keyword to compare against page intent."
},
"llm_model": {
"type": "string",
"maxLength": 128,
"description": "Use the exact model ID executing this call, from runtime/system context, for usage attribution. Supply it on every Atomic MCP tool call, including discovery and feedback, and update it if the model changes. Use the model ID rather than the client app name. If unavailable, omit it; never guess or ask the user."
},
"projectId": {
"type": "number",
"description": "Atomic project ID from list_projects. Omit to use the configured project; if asked to choose, select one of the accessible returned IDs."
}
}
},
"outputSchema": {
"type": "object",
"required": [
"success"
],
"properties": {
"url": {
"type": "string",
"description": "Link for resolving the failure or completing the operation."
},
"data": {
"type": "object",
"required": [
"data"
],
"properties": {
"data": {
"type": "object",
"required": [
"topics",
"primaryIntent",
"matchesKeywordIntent",
"reasoning"
],
"properties": {
"topics": {
"type": "array",
"items": {
"type": "object",
"description": "Nested operation-specific fields."
}
},
"reasoning": {
"type": "string"
},
"primaryIntent": {
"type": "string"
},
"matchesKeywordIntent": {
"type": "boolean"
}
},
"description": "Result items or operation data inside this returned payload. Pagination fields describe only this result page."
}
},
"description": "Operation data; optional fields may be absent."
},
"error": {
"type": "string",
"description": "Why the operation failed."
},
"details": {
"type": "object",
"description": "Diagnostics keyed by errorCode."
},
"message": {
"type": "string",
"description": "Outcome or recovery instructions. Project selection means no action ran."
},
"success": {
"type": "boolean",
"description": "Operation success; on false inspect error/errorCode."
},
"upgrade": {
"type": "object",
"description": "Plan-upgrade guidance for an unavailable capability."
},
"category": {
"type": "string",
"description": "Failure category, such as invalid_input or plan_required."
},
"expected": {
"type": "boolean",
"description": "Whether this is an anticipated access, input, plan or state failure."
},
"projects": {
"type": "array",
"items": {
"type": "object",
"properties": {
"id": {
"type": "number",
"description": "Project ID for projectId."
},
"name": {
"type": "string",
"description": "Project name."
}
},
"description": "Accessible project."
},
"description": "Accessible project choices. Select a projectId and retry."
},
"errorCode": {
"type": "string",
"description": "Failure code for recovery."
},
"retryable": {
"type": "boolean",
"description": "Whether an unchanged request can be retried."
},
"statusCode": {
"type": "number",
"description": "HTTP-style failure status."
},
"executionTime": {
"type": "string",
"description": "Elapsed time in seconds, with an s suffix."
}
},
"description": "Operation result envelope."
},
"annotations": {
"readOnlyHint": false,
"openWorldHint": true,
"idempotentHint": false,
"destructiveHint": false
}
}
The title clearly communicates the tool’s action and subject. Keep it concise.
Description93/100
Mark a task as DONE when the substantive work is complete.
Use update_task for partial progress, reassignment or blocked work. This changes the existing task's completion state; it does not execute its requested work.
The description explains the capability, when to use it, and what to expect.
Inputs93/100
Remove validation rules already expressed in this field’s schema; describe its meaning and usage instead.
taskIdentifier
Project-scoped public task identifier to complete, for example OMN-12
Clear enough to supply this argument.
checklist › items › id
Existing checklist item identifier returned by get_task. Preserve it when updating completion.
Clear enough to supply this argument.
checklist › items › label
Human-readable label shown for this item in Atomic.
Clear enough to supply this argument.
checklist › items › completed
Whether the task should be marked complete.
Clear enough to supply this argument.
projectId
Atomic project ID from list_projects. Omit to use the configured project; if asked to choose, select one of the accessible returned IDs.
Clear enough to supply this argument.
context
Short purpose of this call for the activity log. Exclude personal data and private source content.
Remove validation rules already expressed in this field’s schema; describe its meaning and usage instead.
llm_model
Use the exact model ID executing this call, from runtime/system context, for usage attribution. Supply it on every Atomic MCP tool call, including discovery and feedback, and update it if the model changes. Use the model ID rather than the client app name. If unavailable, omit it; never guess or ask the user.
Remove validation rules already expressed in this field’s schema; describe its meaning and usage instead.
{
"type": "object",
"required": [
"success"
],
"properties": {
"url": {
"type": "string",
"description": "Link for resolving the failure or completing the operation."
},
"data": {
"type": "object",
"required": [
"projectId",
"title",
"status",
"assignmentMode",
"createdAt",
"updatedAt"
],
"properties": {
"id": {
"type": "number",
"description": "Identifier of this returned resource. Use it for subsequent reads or edits of the same resource."
},
"agent": {
"anyOf": [
{
"type": "null"
},
{
"type": "object",
"required": [
"name",
"type"
],
"properties": {
"id": {
"type": "number",
"description": "Identifier of this returned resource. Use it for subsequent reads or edits of the same resource."
},
"icon": {
"type": "object",
"required": [
"name",
"color"
],
"properties": {
"name": {
"type": "string",
"description": "Human-readable name of this resource."
},
"color": {
"enum": [
"gray",
"blue",
"teal",
"green",
"orange",
"red",
"magenta",
"purple"
],
"type": "string",
"description": "Color value saved for this visual element."
}
},
"description": "Icon identifier or image reference saved for this resource."
},
"name": {
"type": "string",
"description": "Human-readable name of this resource."
},
"type": {
"enum": [
"custom",
"predefined"
],
"type": "string",
"description": "Kind of the returned item; determines how its operation-specific fields should be interpreted."
},
"roleTitle": {
"anyOf": [
{
"type": "null"
},
{
"type": "string"
}
],
"description": "Human-readable title of the returned member role."
},
"organizationRole": {
"anyOf": [
{
"type": "null"
},
{
"type": "string",
"const": "solo"
},
{
"type": "string",
"const": "orchestrator"
},
{
"type": "string",
"const": "employee"
}
],
"description": "Workspace-level role associated with this membership."
}
}
}
],
"description": "Saved agent definition or context associated with this result."
},
"title": {
"type": "string",
"description": "Display or content title of this returned item."
},
"status": {
"enum": [
"OPEN",
"IN_PROGRESS",
"DONE",
"BLOCKED",
"CANCELED"
],
"type": "string",
"description": "Current saved or execution state reported by the operation."
},
"agentId": {
"anyOf": [
{
"type": "null"
},
{
"type": "number"
}
],
"description": "Saved Atomic agent associated with this resource or execution."
},
"dueDate": {
"anyOf": [
{
"type": "null"
},
{
"type": "string"
}
]
},
"activity": {
"anyOf": [
{
"type": "null"
},
{
"type": "array",
"items": {
"type": "object",
"required": [
"id",
"type",
"actor",
"message",
"createdAt"
],
"properties": {
"id": {
"type": "string",
"description": "Identifier of this returned resource. Use it for subsequent reads or edits of the same resource."
},
"type": {
"enum": [
"CREATED",
"CONVERSATION_LINKED",
"TITLE_UPDATED",
"DESCRIPTION_UPDATED",
"DUE_DATE_UPDATED",
"STATUS_UPDATED",
"ASSIGNEE_UPDATED",
"CHECKLIST_UPDATED"
],
"type": "string",
"description": "Kind of the returned item; determines how its operation-specific fields should be interpreted."
},
"actor": {
"type": "object",
"description": "Nested operation-specific fields."
},
"message": {
"type": "string",
"description": "Outcome, explanation or recovery instructions returned by the operation."
},
"createdAt": {
"type": "string",
"format": "date-time",
"description": "Date and time this record was created, serialized as ISO 8601."
},
"conversationId": {
"anyOf": [
{
"type": "null"
},
{
"type": "string"
}
],
"description": "Conversation associated with this task or execution."
}
}
}
}
]
},
"publicId": {
"type": "string"
},
"checklist": {
"anyOf": [
{
"type": "null"
},
{
"type": "array",
"items": {
"type": "object",
"required": [
"id",
"label",
"completed"
],
"properties": {
"id": {
"type": "string",
"description": "Identifier of this returned resource. Use it for subsequent reads or edits of the same resource."
},
"label": {
"type": "string",
"description": "Human-readable label reported by the provider."
},
"completed": {
"type": "boolean"
}
}
}
}
]
},
"createdAt": {
"type": "string",
"format": "date-time",
"description": "Date and time this record was created, serialized as ISO 8601."
},
"projectId": {
"type": "number",
"description": "Atomic project that owns this resource."
},
"updatedAt": {
"type": "string",
"format": "date-time",
"description": "Date and time this record was last updated, serialized as ISO 8601."
},
"description": {
"anyOf": [
{
"type": "null"
},
{
"type": "string"
}
],
"description": "Saved description of this resource or its purpose."
},
"assignmentMode": {
"enum": [
"MANUAL",
"AGENT"
],
"type": "string"
},
"sourceConversationId": {
"anyOf": [
{
"type": "null"
},
{
"type": "string"
}
],
"description": "Conversation that produced this saved result."
},
"sourceConversationIds": {
"anyOf": [
{
"type": "null"
},
{
"type": "array",
"items": {
"type": "string"
}
}
]
},
"isGeneralAgentAssignment": {
"type": "boolean"
}
},
"description": "Operation data; optional fields may be absent."
},
"error": {
"type": "string",
"description": "Why the operation failed."
},
"details": {
"type": "object",
"description": "Diagnostics keyed by errorCode."
},
"message": {
"type": "string",
"description": "Outcome or recovery instructions. Project selection means no action ran."
},
"success": {
"type": "boolean",
"description": "Operation success; on false inspect error/errorCode."
},
"upgrade": {
"type": "object",
"description": "Plan-upgrade guidance for an unavailable capability."
},
"category": {
"type": "string",
"description": "Failure category, such as invalid_input or plan_required."
},
"expected": {
"type": "boolean",
"description": "Whether this is an anticipated access, input, plan or state failure."
},
"projects": {
"type": "array",
"items": {
"type": "object",
"properties": {
"id": {
"type": "number",
"description": "Project ID for projectId."
},
"name": {
"type": "string",
"description": "Project name."
}
},
"description": "Accessible project."
},
"description": "Accessible project choices. Select a projectId and retry."
},
"errorCode": {
"type": "string",
"description": "Failure code for recovery."
},
"retryable": {
"type": "boolean",
"description": "Whether an unchanged request can be retried."
},
"statusCode": {
"type": "number",
"description": "HTTP-style failure status."
},
"executionTime": {
"type": "string",
"description": "Elapsed time in seconds, with an s suffix."
}
},
"description": "Operation result envelope."
}
Original tool metadata
{
"name": "complete_task",
"title": "Complete task",
"description": "Mark a task as DONE when the substantive work is complete.\n\nUse update_task for partial progress, reassignment or blocked work. This changes the existing task's completion state; it does not execute its requested work.",
"inputSchema": {
"type": "object",
"required": [
"taskIdentifier"
],
"properties": {
"context": {
"type": "string",
"maxLength": 120,
"description": "Short purpose of this call for the activity log. Exclude personal data and private source content."
},
"checklist": {
"type": "array",
"items": {
"type": "object",
"properties": {
"id": {
"type": "string",
"description": "Existing checklist item identifier returned by get_task. Preserve it when updating completion."
},
"label": {
"type": "string",
"description": "Human-readable label shown for this item in Atomic."
},
"completed": {
"type": "boolean",
"description": "Whether the task should be marked complete."
}
}
},
"description": "Optional final checklist state"
},
"llm_model": {
"type": "string",
"maxLength": 128,
"description": "Use the exact model ID executing this call, from runtime/system context, for usage attribution. Supply it on every Atomic MCP tool call, including discovery and feedback, and update it if the model changes. Use the model ID rather than the client app name. If unavailable, omit it; never guess or ask the user."
},
"projectId": {
"type": "number",
"description": "Atomic project ID from list_projects. Omit to use the configured project; if asked to choose, select one of the accessible returned IDs."
},
"taskIdentifier": {
"type": "string",
"description": "Project-scoped public task identifier to complete, for example OMN-12"
}
}
},
"outputSchema": {
"type": "object",
"required": [
"success"
],
"properties": {
"url": {
"type": "string",
"description": "Link for resolving the failure or completing the operation."
},
"data": {
"type": "object",
"required": [
"projectId",
"title",
"status",
"assignmentMode",
"createdAt",
"updatedAt"
],
"properties": {
"id": {
"type": "number",
"description": "Identifier of this returned resource. Use it for subsequent reads or edits of the same resource."
},
"agent": {
"anyOf": [
{
"type": "null"
},
{
"type": "object",
"required": [
"name",
"type"
],
"properties": {
"id": {
"type": "number",
"description": "Identifier of this returned resource. Use it for subsequent reads or edits of the same resource."
},
"icon": {
"type": "object",
"required": [
"name",
"color"
],
"properties": {
"name": {
"type": "string",
"description": "Human-readable name of this resource."
},
"color": {
"enum": [
"gray",
"blue",
"teal",
"green",
"orange",
"red",
"magenta",
"purple"
],
"type": "string",
"description": "Color value saved for this visual element."
}
},
"description": "Icon identifier or image reference saved for this resource."
},
"name": {
"type": "string",
"description": "Human-readable name of this resource."
},
"type": {
"enum": [
"custom",
"predefined"
],
"type": "string",
"description": "Kind of the returned item; determines how its operation-specific fields should be interpreted."
},
"roleTitle": {
"anyOf": [
{
"type": "null"
},
{
"type": "string"
}
],
"description": "Human-readable title of the returned member role."
},
"organizationRole": {
"anyOf": [
{
"type": "null"
},
{
"type": "string",
"const": "solo"
},
{
"type": "string",
"const": "orchestrator"
},
{
"type": "string",
"const": "employee"
}
],
"description": "Workspace-level role associated with this membership."
}
}
}
],
"description": "Saved agent definition or context associated with this result."
},
"title": {
"type": "string",
"description": "Display or content title of this returned item."
},
"status": {
"enum": [
"OPEN",
"IN_PROGRESS",
"DONE",
"BLOCKED",
"CANCELED"
],
"type": "string",
"description": "Current saved or execution state reported by the operation."
},
"agentId": {
"anyOf": [
{
"type": "null"
},
{
"type": "number"
}
],
"description": "Saved Atomic agent associated with this resource or execution."
},
"dueDate": {
"anyOf": [
{
"type": "null"
},
{
"type": "string"
}
]
},
"activity": {
"anyOf": [
{
"type": "null"
},
{
"type": "array",
"items": {
"type": "object",
"required": [
"id",
"type",
"actor",
"message",
"createdAt"
],
"properties": {
"id": {
"type": "string",
"description": "Identifier of this returned resource. Use it for subsequent reads or edits of the same resource."
},
"type": {
"enum": [
"CREATED",
"CONVERSATION_LINKED",
"TITLE_UPDATED",
"DESCRIPTION_UPDATED",
"DUE_DATE_UPDATED",
"STATUS_UPDATED",
"ASSIGNEE_UPDATED",
"CHECKLIST_UPDATED"
],
"type": "string",
"description": "Kind of the returned item; determines how its operation-specific fields should be interpreted."
},
"actor": {
"type": "object",
"description": "Nested operation-specific fields."
},
"message": {
"type": "string",
"description": "Outcome, explanation or recovery instructions returned by the operation."
},
"createdAt": {
"type": "string",
"format": "date-time",
"description": "Date and time this record was created, serialized as ISO 8601."
},
"conversationId": {
"anyOf": [
{
"type": "null"
},
{
"type": "string"
}
],
"description": "Conversation associated with this task or execution."
}
}
}
}
]
},
"publicId": {
"type": "string"
},
"checklist": {
"anyOf": [
{
"type": "null"
},
{
"type": "array",
"items": {
"type": "object",
"required": [
"id",
"label",
"completed"
],
"properties": {
"id": {
"type": "string",
"description": "Identifier of this returned resource. Use it for subsequent reads or edits of the same resource."
},
"label": {
"type": "string",
"description": "Human-readable label reported by the provider."
},
"completed": {
"type": "boolean"
}
}
}
}
]
},
"createdAt": {
"type": "string",
"format": "date-time",
"description": "Date and time this record was created, serialized as ISO 8601."
},
"projectId": {
"type": "number",
"description": "Atomic project that owns this resource."
},
"updatedAt": {
"type": "string",
"format": "date-time",
"description": "Date and time this record was last updated, serialized as ISO 8601."
},
"description": {
"anyOf": [
{
"type": "null"
},
{
"type": "string"
}
],
"description": "Saved description of this resource or its purpose."
},
"assignmentMode": {
"enum": [
"MANUAL",
"AGENT"
],
"type": "string"
},
"sourceConversationId": {
"anyOf": [
{
"type": "null"
},
{
"type": "string"
}
],
"description": "Conversation that produced this saved result."
},
"sourceConversationIds": {
"anyOf": [
{
"type": "null"
},
{
"type": "array",
"items": {
"type": "string"
}
}
]
},
"isGeneralAgentAssignment": {
"type": "boolean"
}
},
"description": "Operation data; optional fields may be absent."
},
"error": {
"type": "string",
"description": "Why the operation failed."
},
"details": {
"type": "object",
"description": "Diagnostics keyed by errorCode."
},
"message": {
"type": "string",
"description": "Outcome or recovery instructions. Project selection means no action ran."
},
"success": {
"type": "boolean",
"description": "Operation success; on false inspect error/errorCode."
},
"upgrade": {
"type": "object",
"description": "Plan-upgrade guidance for an unavailable capability."
},
"category": {
"type": "string",
"description": "Failure category, such as invalid_input or plan_required."
},
"expected": {
"type": "boolean",
"description": "Whether this is an anticipated access, input, plan or state failure."
},
"projects": {
"type": "array",
"items": {
"type": "object",
"properties": {
"id": {
"type": "number",
"description": "Project ID for projectId."
},
"name": {
"type": "string",
"description": "Project name."
}
},
"description": "Accessible project."
},
"description": "Accessible project choices. Select a projectId and retry."
},
"errorCode": {
"type": "string",
"description": "Failure code for recovery."
},
"retryable": {
"type": "boolean",
"description": "Whether an unchanged request can be retried."
},
"statusCode": {
"type": "number",
"description": "HTTP-style failure status."
},
"executionTime": {
"type": "string",
"description": "Elapsed time in seconds, with an s suffix."
}
},
"description": "Operation result envelope."
},
"annotations": {
"readOnlyHint": false,
"openWorldHint": false,
"idempotentHint": false,
"destructiveHint": true
}
}
The title clearly communicates the tool’s action and subject. Keep it concise.
Description87/100
Configure the input fields for a workflow. These fields define what inputs are required when running the workflow.
Use this tool after creating a workflow to define what data the workflow needs to run.
Example fields:
- A "keyword" field of type "string" for SEO workflows
- A "tone" field of type "select" with options for content generation
- A "count" field of type "number" for specifying quantities
The fields will be shown to users when they run the workflow, allowing them to provide the necessary input data.
Edits the draft input contract rather than supplying runtime values. Get the workflow first and preserve field names referenced by later steps; use run_workflow only after validation.
The description explains the capability, when to use it, and what to expect.
Inputs89/100
Remove validation rules already expressed in this field’s schema; describe its meaning and usage instead.
workflowId
Existing project workflow ID from get_workflows or create_workflow; this identifies a pipeline, not a run.
Remove validation rules already expressed in this field’s schema; describe its meaning and usage instead.
fields › items › name
Technical name for the field (used in variable references like {{input.fieldName}})
Clear enough to supply this argument.
fields › items › label
Human-readable label shown to users
Remove validation rules already expressed in this field’s schema; describe its meaning and usage instead.
fields › items › type
Field type: string (short text), number (numeric), boolean (true/false), text (long text/textarea), select (dropdown), array (list of values), datetime (date and time as ISO UTC string ending in Z), grid_sheet (project grid and sheet picker returning { gridId, sheetId })
Remove validation rules already expressed in this field’s schema; describe its meaning and usage instead.
fields › items › arrayItemType
For array inputs: string values or image objects shaped as {url, altText}.
Clear enough to supply this argument.
fields › items › required
Whether this field must be filled before running the workflow (default: false)
Clear enough to supply this argument.
fields › items › defaultValue
Default value for the field
Explain the meaning of this value, not just its name.
fields › items › placeholder
Placeholder text shown when the field is empty
Clear enough to supply this argument.
fields › items › options › items › label
Display text for the option
Clear enough to supply this argument.
fields › items › options › items › value
Value stored when option is selected
Clear enough to supply this argument.
fields › items › min
For number type: minimum allowed value
Remove validation rules already expressed in this field’s schema; describe its meaning and usage instead.
fields › items › max
For number type: maximum allowed value
Remove validation rules already expressed in this field’s schema; describe its meaning and usage instead.
fields › items › step
For number type: increment step
Clear enough to supply this argument.
projectId
Atomic project ID from list_projects. Omit to use the configured project; if asked to choose, select one of the accessible returned IDs.
Clear enough to supply this argument.
context
Short purpose of this call for the activity log. Exclude personal data and private source content.
Clear enough to supply this argument.
llm_model
Use the exact model ID executing this call, from runtime/system context, for usage attribution. Supply it on every Atomic MCP tool call, including discovery and feedback, and update it if the model changes. Use the model ID rather than the client app name. If unavailable, omit it; never guess or ask the user.
{
"type": "object",
"required": [
"success"
],
"properties": {
"url": {
"type": "string",
"description": "Link for resolving the failure or completing the operation."
},
"data": {
"type": "object",
"required": [
"step",
"fields",
"success",
"message"
],
"properties": {
"step": {
"type": "object",
"required": [
"type",
"config",
"disabled",
"position",
"workflowVersionId",
"createdAt",
"updatedAt"
],
"properties": {
"id": {
"type": "number",
"description": "Identifier of this returned resource. Use it for subsequent reads or edits of the same resource."
},
"type": {
"enum": [
"INPUT",
"OUTPUT",
"FIND_COMPETITORS",
"SERP_ANALYSIS",
"GENERATE_ARTICLE_TITLE",
"GENERATE_OUTLINE",
"GENERATE_ARTICLE",
"REPURPOSE_CONTENT",
"GENERATE_IMAGE",
"NLP_ANALYSIS",
"RUN_LLM_AUDIT",
"FIND_OUTREACH_OPPORTUNITIES",
"DISCOVER_LISTINGS",
"DISCOVER_LINK_INSERTIONS",
"DISCOVER_UNLINKED_MENTIONS",
"PROMPT_LLM",
"EDIT_CONTENT_WITH_LLM",
"ADD_CONTEXTUAL_LINKS",
"AGENT",
"WEB_SEARCH",
"READ_WEB_PAGE",
"SEARCH_PROJECT_KNOWLEDGE",
"GET_INTERNAL_LINK_RECOMMENDATIONS",
"GET_GSC_KEYWORDS",
"GET_GSC_PAGES",
"GET_GSC_COUNTRIES",
"GET_GSC_DEVICES",
"GET_GA4_REFERRALS",
"GET_AI_CITATIONS",
"GET_BRAND_SENTIMENT",
"GET_AI_SEARCH_PAGES",
"GET_AI_SEARCH_ENGINES",
"GET_TRACKED_PROMPTS",
"GET_GRIDS",
"GET_GRID",
"CREATE_GRID",
"CREATE_GRID_SHEET",
"CREATE_GRID_COLUMN",
"CREATE_GRID_COLUMNS",
"CREATE_GRID_ROW",
"CREATE_GRID_ROWS",
"UPDATE_GRID_CELL",
"UPDATE_GRID_CELLS",
"RUN_GRID_CELL",
"RUN_GRID_COLUMN",
"RUN_GRID_SHEET",
"RUN_PAGE_SERP_SCAN",
"GET_PAGE_SERP_SCAN",
"WAIT_FOR_PAGE_SERP_SCAN",
"GENERATE_PAGE_OPTIMIZATION_PLAN",
"CLASSIFY_PAGE_TOPIC",
"PARSE_DATA",
"RUN_CODE",
"WRITE_LIQUID_TEXT",
"FORMAT_JSON",
"CALL_API",
"CONDITION",
"ITERATION",
"ERROR",
"NOTIFICATION",
"SEND_EMAIL",
"FIND_DOMAIN_EMAILS",
"VERIFY_EMAILS",
"RAPID_URL_INDEXING",
"PUBLISH",
"PUBLISH_MAPPED_CONTENT",
"PUBLISH_SOCIAL_POST",
"PUBLISH_BUFFER_POST",
"PUBLISH_ZERNIO_POST",
"PUBLISH_INTEGRATION",
"GET_WEBFLOW_SITE_PUBLISHING",
"PUBLISH_WEBFLOW_SITE",
"GET_WEBFLOW_COLLECTION_STRUCTURE",
"CREATE_PROGRAMMATIC_PAGE_TEMPLATE",
"DETECT_PROGRAMMATIC_PAGE_CLUSTERS",
"EXTRACT_PROGRAMMATIC_PAGE_STRUCTURE",
"PROGRAMMATIC_MARKET_RESEARCH",
"PROGRAMMATIC_PAGES",
"CREATE_CONTENT",
"GET_CONTENT_FROM_EDITOR",
"ENRICH_CONTENT_IMAGES",
"ENRICH_CONTENT_SOCIAL_POSTS",
"LIST_WORDPRESS_CONTENT",
"GET_WORDPRESS_CONTENT",
"LIST_WEBFLOW_COLLECTIONS",
"LIST_WEBFLOW_COLLECTION_ITEMS",
"FIND_WEBFLOW_CONTENT",
"VERIFY_WEBFLOW_CONTENT",
"GET_WEBFLOW_DESIGN",
"UPDATE_WEBFLOW_DESIGN",
"GET_WEBFLOW_CONTENT",
"UPDATE_WEBFLOW_CONTENT",
"UPDATE_WORDPRESS_CONTENT",
"LIST_WOOCOMMERCE_PRODUCTS",
"GET_WOOCOMMERCE_PRODUCT",
"UPDATE_WOOCOMMERCE_PRODUCT",
"ENRICH_CONTENT_WOOCOMMERCE_PRODUCTS",
"CREATE_CONTENT_VERSION",
"RUN_WORKFLOW",
"HUMAN_REVIEW"
],
"type": "string",
"description": "Kind of the returned item; determines how its operation-specific fields should be interpreted."
},
"config": {
"type": "object",
"required": [
"softFail",
"inputs"
],
"properties": {
"inputs": {
"type": "object",
"description": "Resolved inputs used for this operation or step."
},
"softFail": {
"type": "boolean"
},
"iterationParentStepIndex": {
"type": "number"
}
},
"description": "Saved configuration specific to this resource's type."
},
"disabled": {
"type": "boolean"
},
"position": {
"type": "object",
"required": [
"x",
"y"
],
"properties": {
"x": {
"type": "number"
},
"y": {
"type": "number"
}
},
"description": "Saved ordering position or visual editor coordinates for this item."
},
"testRuns": {
"type": "array",
"items": {
"type": "object",
"description": "Nested operation-specific fields."
}
},
"createdAt": {
"type": "string",
"format": "date-time",
"description": "Date and time this record was created, serialized as ISO 8601."
},
"deletedAt": {
"type": "string",
"format": "date-time",
"description": "Timestamp serialized as an ISO 8601 date and time."
},
"stepIndex": {
"type": "number",
"description": "Workflow-local step ordering and routing identity; it is distinct from the database step ID."
},
"updatedAt": {
"type": "string",
"format": "date-time",
"description": "Date and time this record was last updated, serialized as ISO 8601."
},
"latestTestRun": {
"type": "object",
"required": [
"workflowStepId",
"inputs",
"outputs",
"status",
"createdAt",
"updatedAt"
],
"properties": {
"id": {
"type": "number",
"description": "Identifier of this returned resource. Use it for subsequent reads or edits of the same resource."
},
"usage": {
"type": "object",
"description": "Provider or Atomic usage measurements for this execution."
},
"inputs": {
"type": "object",
"description": "Resolved inputs used for this operation or step."
},
"status": {
"enum": [
"pending",
"running",
"completed",
"failed",
"waiting_for_approval"
],
"type": "string",
"description": "Current saved or execution state reported by the operation."
},
"outputs": {
"type": "object",
"description": "Saved outputs from the completed operation or step."
},
"createdAt": {
"type": "string",
"format": "date-time",
"description": "Date and time this record was created, serialized as ISO 8601."
},
"updatedAt": {
"type": "string",
"format": "date-time",
"description": "Date and time this record was last updated, serialized as ISO 8601."
},
"workflowStep": {
"type": "object",
"description": "Nested operation-specific fields."
},
"workflowStepId": {
"type": "number"
},
"initiatedByUserId": {
"anyOf": [
{
"type": "null"
},
{
"type": "number"
}
],
"description": "Actual initiating member; null only for historical records/non-workflow service schedules."
}
}
},
"workflowVersionId": {
"type": "number"
}
}
},
"fields": {
"type": "array",
"items": {
"type": "object",
"required": [
"id",
"name",
"label",
"type",
"required"
],
"properties": {
"id": {
"type": "string",
"description": "Identifier of this returned resource. Use it for subsequent reads or edits of the same resource."
},
"max": {
"type": "number",
"description": "Upper limit reported for the containing range or allowance."
},
"min": {
"type": "number"
},
"name": {
"type": "string",
"description": "Human-readable name of this resource."
},
"step": {
"type": "number"
},
"type": {
"enum": [
"string",
"number",
"boolean",
"text",
"select",
"array",
"file",
"grid_sheet",
"datetime"
],
"type": "string",
"description": "Kind of the returned item; determines how its operation-specific fields should be interpreted."
},
"label": {
"type": "string",
"description": "Human-readable label reported by the provider."
},
"accept": {
"type": "string"
},
"maxSize": {
"type": "number"
},
"options": {
"type": "array",
"items": {
"type": "object",
"description": "Nested operation-specific fields."
},
"description": "Options saved for the selected item type."
},
"required": {
"type": "boolean"
},
"placeholder": {
"type": "string"
},
"defaultValue": {
"description": "JSON returned by the connected provider or selected operation; its fields depend on that operation."
},
"arrayItemType": {
"enum": [
"string",
"image"
],
"type": "string"
}
}
},
"description": "Native field values or field-level results returned by the selected CMS operation."
},
"message": {
"type": "string",
"description": "Outcome, explanation or recovery instructions returned by the operation."
},
"success": {
"type": "boolean",
"description": "Whether this nested operation completed successfully. Inspect the containing result for details."
}
},
"description": "Operation data; optional fields may be absent."
},
"error": {
"type": "string",
"description": "Why the operation failed."
},
"details": {
"type": "object",
"description": "Diagnostics keyed by errorCode."
},
"message": {
"type": "string",
"description": "Outcome or recovery instructions. Project selection means no action ran."
},
"success": {
"type": "boolean",
"description": "Operation success; on false inspect error/errorCode."
},
"upgrade": {
"type": "object",
"description": "Plan-upgrade guidance for an unavailable capability."
},
"category": {
"type": "string",
"description": "Failure category, such as invalid_input or plan_required."
},
"expected": {
"type": "boolean",
"description": "Whether this is an anticipated access, input, plan or state failure."
},
"projects": {
"type": "array",
"items": {
"type": "object",
"properties": {
"id": {
"type": "number",
"description": "Project ID for projectId."
},
"name": {
"type": "string",
"description": "Project name."
}
},
"description": "Accessible project."
},
"description": "Accessible project choices. Select a projectId and retry."
},
"errorCode": {
"type": "string",
"description": "Failure code for recovery."
},
"retryable": {
"type": "boolean",
"description": "Whether an unchanged request can be retried."
},
"statusCode": {
"type": "number",
"description": "HTTP-style failure status."
},
"executionTime": {
"type": "string",
"description": "Elapsed time in seconds, with an s suffix."
}
},
"description": "Operation result envelope."
}
Original tool metadata
{
"name": "configure_workflow_input",
"title": "Configure workflow input",
"description": "Configure the input fields for a workflow. These fields define what inputs are required when running the workflow.\n\nUse this tool after creating a workflow to define what data the workflow needs to run.\n\nExample fields:\n- A \"keyword\" field of type \"string\" for SEO workflows\n- A \"tone\" field of type \"select\" with options for content generation\n- A \"count\" field of type \"number\" for specifying quantities\n\nThe fields will be shown to users when they run the workflow, allowing them to provide the necessary input data.\n\nEdits the draft input contract rather than supplying runtime values. Get the workflow first and preserve field names referenced by later steps; use run_workflow only after validation.",
"inputSchema": {
"type": "object",
"required": [
"workflowId",
"fields"
],
"properties": {
"fields": {
"type": "array",
"items": {
"type": "object",
"properties": {
"max": {
"type": "number",
"description": "For number type: maximum allowed value"
},
"min": {
"type": "number",
"description": "For number type: minimum allowed value"
},
"name": {
"type": "string",
"description": "Technical name for the field (used in variable references like {{input.fieldName}})"
},
"step": {
"type": "number",
"description": "For number type: increment step"
},
"type": {
"enum": [
"string",
"number",
"boolean",
"text",
"select",
"array",
"datetime",
"grid_sheet"
],
"type": "string",
"description": "Field type: string (short text), number (numeric), boolean (true/false), text (long text/textarea), select (dropdown), array (list of values), datetime (date and time as ISO UTC string ending in Z), grid_sheet (project grid and sheet picker returning { gridId, sheetId })"
},
"label": {
"type": "string",
"description": "Human-readable label shown to users"
},
"options": {
"type": "array",
"items": {
"type": "object",
"properties": {
"label": {
"type": "string",
"description": "Display text for the option"
},
"value": {
"type": "string",
"description": "Value stored when option is selected"
}
},
"description": "An option with label and value"
},
"description": "For select type fields: array of options with label and value"
},
"required": {
"type": "boolean",
"description": "Whether this field must be filled before running the workflow (default: false)"
},
"placeholder": {
"type": "string",
"description": "Placeholder text shown when the field is empty"
},
"defaultValue": {
"type": "string",
"description": "Default value for the field"
},
"arrayItemType": {
"enum": [
"string",
"image"
],
"type": "string",
"description": "For array inputs: string values or image objects shaped as {url, altText}."
}
},
"description": "An input field definition"
},
"description": "Array of input field definitions. Each field defines a piece of data the workflow needs."
},
"context": {
"type": "string",
"maxLength": 120,
"description": "Short purpose of this call for the activity log. Exclude personal data and private source content."
},
"llm_model": {
"type": "string",
"maxLength": 128,
"description": "Use the exact model ID executing this call, from runtime/system context, for usage attribution. Supply it on every Atomic MCP tool call, including discovery and feedback, and update it if the model changes. Use the model ID rather than the client app name. If unavailable, omit it; never guess or ask the user."
},
"projectId": {
"type": "number",
"description": "Atomic project ID from list_projects. Omit to use the configured project; if asked to choose, select one of the accessible returned IDs."
},
"workflowId": {
"type": "number",
"description": "Existing project workflow ID from get_workflows or create_workflow; this identifies a pipeline, not a run."
}
}
},
"outputSchema": {
"type": "object",
"required": [
"success"
],
"properties": {
"url": {
"type": "string",
"description": "Link for resolving the failure or completing the operation."
},
"data": {
"type": "object",
"required": [
"step",
"fields",
"success",
"message"
],
"properties": {
"step": {
"type": "object",
"required": [
"type",
"config",
"disabled",
"position",
"workflowVersionId",
"createdAt",
"updatedAt"
],
"properties": {
"id": {
"type": "number",
"description": "Identifier of this returned resource. Use it for subsequent reads or edits of the same resource."
},
"type": {
"enum": [
"INPUT",
"OUTPUT",
"FIND_COMPETITORS",
"SERP_ANALYSIS",
"GENERATE_ARTICLE_TITLE",
"GENERATE_OUTLINE",
"GENERATE_ARTICLE",
"REPURPOSE_CONTENT",
"GENERATE_IMAGE",
"NLP_ANALYSIS",
"RUN_LLM_AUDIT",
"FIND_OUTREACH_OPPORTUNITIES",
"DISCOVER_LISTINGS",
"DISCOVER_LINK_INSERTIONS",
"DISCOVER_UNLINKED_MENTIONS",
"PROMPT_LLM",
"EDIT_CONTENT_WITH_LLM",
"ADD_CONTEXTUAL_LINKS",
"AGENT",
"WEB_SEARCH",
"READ_WEB_PAGE",
"SEARCH_PROJECT_KNOWLEDGE",
"GET_INTERNAL_LINK_RECOMMENDATIONS",
"GET_GSC_KEYWORDS",
"GET_GSC_PAGES",
"GET_GSC_COUNTRIES",
"GET_GSC_DEVICES",
"GET_GA4_REFERRALS",
"GET_AI_CITATIONS",
"GET_BRAND_SENTIMENT",
"GET_AI_SEARCH_PAGES",
"GET_AI_SEARCH_ENGINES",
"GET_TRACKED_PROMPTS",
"GET_GRIDS",
"GET_GRID",
"CREATE_GRID",
"CREATE_GRID_SHEET",
"CREATE_GRID_COLUMN",
"CREATE_GRID_COLUMNS",
"CREATE_GRID_ROW",
"CREATE_GRID_ROWS",
"UPDATE_GRID_CELL",
"UPDATE_GRID_CELLS",
"RUN_GRID_CELL",
"RUN_GRID_COLUMN",
"RUN_GRID_SHEET",
"RUN_PAGE_SERP_SCAN",
"GET_PAGE_SERP_SCAN",
"WAIT_FOR_PAGE_SERP_SCAN",
"GENERATE_PAGE_OPTIMIZATION_PLAN",
"CLASSIFY_PAGE_TOPIC",
"PARSE_DATA",
"RUN_CODE",
"WRITE_LIQUID_TEXT",
"FORMAT_JSON",
"CALL_API",
"CONDITION",
"ITERATION",
"ERROR",
"NOTIFICATION",
"SEND_EMAIL",
"FIND_DOMAIN_EMAILS",
"VERIFY_EMAILS",
"RAPID_URL_INDEXING",
"PUBLISH",
"PUBLISH_MAPPED_CONTENT",
"PUBLISH_SOCIAL_POST",
"PUBLISH_BUFFER_POST",
"PUBLISH_ZERNIO_POST",
"PUBLISH_INTEGRATION",
"GET_WEBFLOW_SITE_PUBLISHING",
"PUBLISH_WEBFLOW_SITE",
"GET_WEBFLOW_COLLECTION_STRUCTURE",
"CREATE_PROGRAMMATIC_PAGE_TEMPLATE",
"DETECT_PROGRAMMATIC_PAGE_CLUSTERS",
"EXTRACT_PROGRAMMATIC_PAGE_STRUCTURE",
"PROGRAMMATIC_MARKET_RESEARCH",
"PROGRAMMATIC_PAGES",
"CREATE_CONTENT",
"GET_CONTENT_FROM_EDITOR",
"ENRICH_CONTENT_IMAGES",
"ENRICH_CONTENT_SOCIAL_POSTS",
"LIST_WORDPRESS_CONTENT",
"GET_WORDPRESS_CONTENT",
"LIST_WEBFLOW_COLLECTIONS",
"LIST_WEBFLOW_COLLECTION_ITEMS",
"FIND_WEBFLOW_CONTENT",
"VERIFY_WEBFLOW_CONTENT",
"GET_WEBFLOW_DESIGN",
"UPDATE_WEBFLOW_DESIGN",
"GET_WEBFLOW_CONTENT",
"UPDATE_WEBFLOW_CONTENT",
"UPDATE_WORDPRESS_CONTENT",
"LIST_WOOCOMMERCE_PRODUCTS",
"GET_WOOCOMMERCE_PRODUCT",
"UPDATE_WOOCOMMERCE_PRODUCT",
"ENRICH_CONTENT_WOOCOMMERCE_PRODUCTS",
"CREATE_CONTENT_VERSION",
"RUN_WORKFLOW",
"HUMAN_REVIEW"
],
"type": "string",
"description": "Kind of the returned item; determines how its operation-specific fields should be interpreted."
},
"config": {
"type": "object",
"required": [
"softFail",
"inputs"
],
"properties": {
"inputs": {
"type": "object",
"description": "Resolved inputs used for this operation or step."
},
"softFail": {
"type": "boolean"
},
"iterationParentStepIndex": {
"type": "number"
}
},
"description": "Saved configuration specific to this resource's type."
},
"disabled": {
"type": "boolean"
},
"position": {
"type": "object",
"required": [
"x",
"y"
],
"properties": {
"x": {
"type": "number"
},
"y": {
"type": "number"
}
},
"description": "Saved ordering position or visual editor coordinates for this item."
},
"testRuns": {
"type": "array",
"items": {
"type": "object",
"description": "Nested operation-specific fields."
}
},
"createdAt": {
"type": "string",
"format": "date-time",
"description": "Date and time this record was created, serialized as ISO 8601."
},
"deletedAt": {
"type": "string",
"format": "date-time",
"description": "Timestamp serialized as an ISO 8601 date and time."
},
"stepIndex": {
"type": "number",
"description": "Workflow-local step ordering and routing identity; it is distinct from the database step ID."
},
"updatedAt": {
"type": "string",
"format": "date-time",
"description": "Date and time this record was last updated, serialized as ISO 8601."
},
"latestTestRun": {
"type": "object",
"required": [
"workflowStepId",
"inputs",
"outputs",
"status",
"createdAt",
"updatedAt"
],
"properties": {
"id": {
"type": "number",
"description": "Identifier of this returned resource. Use it for subsequent reads or edits of the same resource."
},
"usage": {
"type": "object",
"description": "Provider or Atomic usage measurements for this execution."
},
"inputs": {
"type": "object",
"description": "Resolved inputs used for this operation or step."
},
"status": {
"enum": [
"pending",
"running",
"completed",
"failed",
"waiting_for_approval"
],
"type": "string",
"description": "Current saved or execution state reported by the operation."
},
"outputs": {
"type": "object",
"description": "Saved outputs from the completed operation or step."
},
"createdAt": {
"type": "string",
"format": "date-time",
"description": "Date and time this record was created, serialized as ISO 8601."
},
"updatedAt": {
"type": "string",
"format": "date-time",
"description": "Date and time this record was last updated, serialized as ISO 8601."
},
"workflowStep": {
"type": "object",
"description": "Nested operation-specific fields."
},
"workflowStepId": {
"type": "number"
},
"initiatedByUserId": {
"anyOf": [
{
"type": "null"
},
{
"type": "number"
}
],
"description": "Actual initiating member; null only for historical records/non-workflow service schedules."
}
}
},
"workflowVersionId": {
"type": "number"
}
}
},
"fields": {
"type": "array",
"items": {
"type": "object",
"required": [
"id",
"name",
"label",
"type",
"required"
],
"properties": {
"id": {
"type": "string",
"description": "Identifier of this returned resource. Use it for subsequent reads or edits of the same resource."
},
"max": {
"type": "number",
"description": "Upper limit reported for the containing range or allowance."
},
"min": {
"type": "number"
},
"name": {
"type": "string",
"description": "Human-readable name of this resource."
},
"step": {
"type": "number"
},
"type": {
"enum": [
"string",
"number",
"boolean",
"text",
"select",
"array",
"file",
"grid_sheet",
"datetime"
],
"type": "string",
"description": "Kind of the returned item; determines how its operation-specific fields should be interpreted."
},
"label": {
"type": "string",
"description": "Human-readable label reported by the provider."
},
"accept": {
"type": "string"
},
"maxSize": {
"type": "number"
},
"options": {
"type": "array",
"items": {
"type": "object",
"description": "Nested operation-specific fields."
},
"description": "Options saved for the selected item type."
},
"required": {
"type": "boolean"
},
"placeholder": {
"type": "string"
},
"defaultValue": {
"description": "JSON returned by the connected provider or selected operation; its fields depend on that operation."
},
"arrayItemType": {
"enum": [
"string",
"image"
],
"type": "string"
}
}
},
"description": "Native field values or field-level results returned by the selected CMS operation."
},
"message": {
"type": "string",
"description": "Outcome, explanation or recovery instructions returned by the operation."
},
"success": {
"type": "boolean",
"description": "Whether this nested operation completed successfully. Inspect the containing result for details."
}
},
"description": "Operation data; optional fields may be absent."
},
"error": {
"type": "string",
"description": "Why the operation failed."
},
"details": {
"type": "object",
"description": "Diagnostics keyed by errorCode."
},
"message": {
"type": "string",
"description": "Outcome or recovery instructions. Project selection means no action ran."
},
"success": {
"type": "boolean",
"description": "Operation success; on false inspect error/errorCode."
},
"upgrade": {
"type": "object",
"description": "Plan-upgrade guidance for an unavailable capability."
},
"category": {
"type": "string",
"description": "Failure category, such as invalid_input or plan_required."
},
"expected": {
"type": "boolean",
"description": "Whether this is an anticipated access, input, plan or state failure."
},
"projects": {
"type": "array",
"items": {
"type": "object",
"properties": {
"id": {
"type": "number",
"description": "Project ID for projectId."
},
"name": {
"type": "string",
"description": "Project name."
}
},
"description": "Accessible project."
},
"description": "Accessible project choices. Select a projectId and retry."
},
"errorCode": {
"type": "string",
"description": "Failure code for recovery."
},
"retryable": {
"type": "boolean",
"description": "Whether an unchanged request can be retried."
},
"statusCode": {
"type": "number",
"description": "HTTP-style failure status."
},
"executionTime": {
"type": "string",
"description": "Elapsed time in seconds, with an s suffix."
}
},
"description": "Operation result envelope."
},
"annotations": {
"readOnlyHint": false,
"openWorldHint": false,
"idempotentHint": false,
"destructiveHint": true
}
}
The title clearly communicates the tool’s action and subject. Keep it concise.
Description93/100
Configure the output fields for a workflow. These fields define what outputs the workflow produces when it finishes running.
Use this tool after creating a workflow and adding steps to define what data should be collected and displayed as the workflow's results.
Output fields reference step outputs using variable syntax: {{stepName.variableName}}
- stepName: The step type name in camelCase. For multiple steps of the same type, append a number:
- First SERP_ANALYSIS: serpAnalysis
- Second SERP_ANALYSIS: serpAnalysis2
- Third SERP_ANALYSIS: serpAnalysis3
- Never infer step names. Copy stepName and outputReferences from add_workflow_step, upsert_workflow_steps, or get_workflow_steps.
- variableName: The output variable from that step
Output types:
- "string": Simple text output
- "markdown": Markdown-formatted text output
- "json": Structured JSON object or array output
- "number": Numeric output
- "boolean": True/false output
- "content": Existing content reference output. Use this for a content ID returned by another step.
Example: To output created content from generateArticle step, use valueFromVariable: "{{generateArticle.contentId}}"
Example: To reference input keyword, use "{{input.keyword}}"
Example: For second promptLlm step, use "{{promptLlm2.result}}"
Edits the draft output contract rather than running a report. Keep references aligned with existing step outputs and validate_workflow after changing them.
The description explains the capability, when to use it, and what to expect.
Inputs81/100
Explain the meaning of this value, not just its name.
workflowId
Existing project workflow ID from get_workflows or create_workflow; this identifies a pipeline, not a run.
Clear enough to supply this argument.
fields › items › name
Technical name for the output field
Explain the meaning of this value, not just its name.
Remove validation rules already expressed in this field’s schema; describe its meaning and usage instead.
fields › items › valueFromVariable
Reference to a step output using {{stepName.variableName}} syntax (e.g., "{{generateArticle.contentId}}" for content created by GENERATE_ARTICLE)
Clear enough to supply this argument.
fields › items › contentConfig › title
Variable reference for the content title (e.g., "{{generateArticleTitle.titles[0]}}")
Remove validation rules already expressed in this field’s schema; describe its meaning and usage instead.
fields › items › contentConfig › description
Variable reference for the content description
Remove validation rules already expressed in this field’s schema; describe its meaning and usage instead.
fields › items › contentConfig › keyword
Variable reference for the target keyword (e.g., "{{input.keyword}}")
Remove validation rules already expressed in this field’s schema; describe its meaning and usage instead.
fields › items › contentConfig › nlp
Variable reference for NLP terms array (e.g., "{{serpAnalysis.nlp}}")
Remove validation rules already expressed in this field’s schema; describe its meaning and usage instead.
fields › items › contentConfig › outline
Variable reference for the content outline (e.g., "{{generateOutline.outline}}")
Remove validation rules already expressed in this field’s schema; describe its meaning and usage instead.
fields › items › contentConfig › rankTrackerId
Variable reference for rank tracker ID (e.g., "{{serpAnalysis.rankTrackerId}}")
Clear enough to supply this argument.
projectId
Atomic project ID from list_projects. Omit to use the configured project; if asked to choose, select one of the accessible returned IDs.
Clear enough to supply this argument.
context
Short purpose of this call for the activity log. Exclude personal data and private source content.
Remove validation rules already expressed in this field’s schema; describe its meaning and usage instead.
llm_model
Use the exact model ID executing this call, from runtime/system context, for usage attribution. Supply it on every Atomic MCP tool call, including discovery and feedback, and update it if the model changes. Use the model ID rather than the client app name. If unavailable, omit it; never guess or ask the user.
Remove validation rules already expressed in this field’s schema; describe its meaning and usage instead.
{
"type": "object",
"required": [
"success"
],
"properties": {
"url": {
"type": "string",
"description": "Link for resolving the failure or completing the operation."
},
"data": {
"type": "object",
"required": [
"step",
"fields",
"success",
"message"
],
"properties": {
"step": {
"type": "object",
"required": [
"type",
"config",
"disabled",
"position",
"workflowVersionId",
"createdAt",
"updatedAt"
],
"properties": {
"id": {
"type": "number",
"description": "Identifier of this returned resource. Use it for subsequent reads or edits of the same resource."
},
"type": {
"enum": [
"INPUT",
"OUTPUT",
"FIND_COMPETITORS",
"SERP_ANALYSIS",
"GENERATE_ARTICLE_TITLE",
"GENERATE_OUTLINE",
"GENERATE_ARTICLE",
"REPURPOSE_CONTENT",
"GENERATE_IMAGE",
"NLP_ANALYSIS",
"RUN_LLM_AUDIT",
"FIND_OUTREACH_OPPORTUNITIES",
"DISCOVER_LISTINGS",
"DISCOVER_LINK_INSERTIONS",
"DISCOVER_UNLINKED_MENTIONS",
"PROMPT_LLM",
"EDIT_CONTENT_WITH_LLM",
"ADD_CONTEXTUAL_LINKS",
"AGENT",
"WEB_SEARCH",
"READ_WEB_PAGE",
"SEARCH_PROJECT_KNOWLEDGE",
"GET_INTERNAL_LINK_RECOMMENDATIONS",
"GET_GSC_KEYWORDS",
"GET_GSC_PAGES",
"GET_GSC_COUNTRIES",
"GET_GSC_DEVICES",
"GET_GA4_REFERRALS",
"GET_AI_CITATIONS",
"GET_BRAND_SENTIMENT",
"GET_AI_SEARCH_PAGES",
"GET_AI_SEARCH_ENGINES",
"GET_TRACKED_PROMPTS",
"GET_GRIDS",
"GET_GRID",
"CREATE_GRID",
"CREATE_GRID_SHEET",
"CREATE_GRID_COLUMN",
"CREATE_GRID_COLUMNS",
"CREATE_GRID_ROW",
"CREATE_GRID_ROWS",
"UPDATE_GRID_CELL",
"UPDATE_GRID_CELLS",
"RUN_GRID_CELL",
"RUN_GRID_COLUMN",
"RUN_GRID_SHEET",
"RUN_PAGE_SERP_SCAN",
"GET_PAGE_SERP_SCAN",
"WAIT_FOR_PAGE_SERP_SCAN",
"GENERATE_PAGE_OPTIMIZATION_PLAN",
"CLASSIFY_PAGE_TOPIC",
"PARSE_DATA",
"RUN_CODE",
"WRITE_LIQUID_TEXT",
"FORMAT_JSON",
"CALL_API",
"CONDITION",
"ITERATION",
"ERROR",
"NOTIFICATION",
"SEND_EMAIL",
"FIND_DOMAIN_EMAILS",
"VERIFY_EMAILS",
"RAPID_URL_INDEXING",
"PUBLISH",
"PUBLISH_MAPPED_CONTENT",
"PUBLISH_SOCIAL_POST",
"PUBLISH_BUFFER_POST",
"PUBLISH_ZERNIO_POST",
"PUBLISH_INTEGRATION",
"GET_WEBFLOW_SITE_PUBLISHING",
"PUBLISH_WEBFLOW_SITE",
"GET_WEBFLOW_COLLECTION_STRUCTURE",
"CREATE_PROGRAMMATIC_PAGE_TEMPLATE",
"DETECT_PROGRAMMATIC_PAGE_CLUSTERS",
"EXTRACT_PROGRAMMATIC_PAGE_STRUCTURE",
"PROGRAMMATIC_MARKET_RESEARCH",
"PROGRAMMATIC_PAGES",
"CREATE_CONTENT",
"GET_CONTENT_FROM_EDITOR",
"ENRICH_CONTENT_IMAGES",
"ENRICH_CONTENT_SOCIAL_POSTS",
"LIST_WORDPRESS_CONTENT",
"GET_WORDPRESS_CONTENT",
"LIST_WEBFLOW_COLLECTIONS",
"LIST_WEBFLOW_COLLECTION_ITEMS",
"FIND_WEBFLOW_CONTENT",
"VERIFY_WEBFLOW_CONTENT",
"GET_WEBFLOW_DESIGN",
"UPDATE_WEBFLOW_DESIGN",
"GET_WEBFLOW_CONTENT",
"UPDATE_WEBFLOW_CONTENT",
"UPDATE_WORDPRESS_CONTENT",
"LIST_WOOCOMMERCE_PRODUCTS",
"GET_WOOCOMMERCE_PRODUCT",
"UPDATE_WOOCOMMERCE_PRODUCT",
"ENRICH_CONTENT_WOOCOMMERCE_PRODUCTS",
"CREATE_CONTENT_VERSION",
"RUN_WORKFLOW",
"HUMAN_REVIEW"
],
"type": "string",
"description": "Kind of the returned item; determines how its operation-specific fields should be interpreted."
},
"config": {
"type": "object",
"required": [
"softFail",
"inputs"
],
"properties": {
"inputs": {
"type": "object",
"description": "Resolved inputs used for this operation or step."
},
"softFail": {
"type": "boolean"
},
"iterationParentStepIndex": {
"type": "number"
}
},
"description": "Saved configuration specific to this resource's type."
},
"disabled": {
"type": "boolean"
},
"position": {
"type": "object",
"required": [
"x",
"y"
],
"properties": {
"x": {
"type": "number"
},
"y": {
"type": "number"
}
},
"description": "Saved ordering position or visual editor coordinates for this item."
},
"testRuns": {
"type": "array",
"items": {
"type": "object",
"description": "Nested operation-specific fields."
}
},
"createdAt": {
"type": "string",
"format": "date-time",
"description": "Date and time this record was created, serialized as ISO 8601."
},
"deletedAt": {
"type": "string",
"format": "date-time",
"description": "Timestamp serialized as an ISO 8601 date and time."
},
"stepIndex": {
"type": "number",
"description": "Workflow-local step ordering and routing identity; it is distinct from the database step ID."
},
"updatedAt": {
"type": "string",
"format": "date-time",
"description": "Date and time this record was last updated, serialized as ISO 8601."
},
"latestTestRun": {
"type": "object",
"required": [
"workflowStepId",
"inputs",
"outputs",
"status",
"createdAt",
"updatedAt"
],
"properties": {
"id": {
"type": "number",
"description": "Identifier of this returned resource. Use it for subsequent reads or edits of the same resource."
},
"usage": {
"type": "object",
"description": "Provider or Atomic usage measurements for this execution."
},
"inputs": {
"type": "object",
"description": "Resolved inputs used for this operation or step."
},
"status": {
"enum": [
"pending",
"running",
"completed",
"failed",
"waiting_for_approval"
],
"type": "string",
"description": "Current saved or execution state reported by the operation."
},
"outputs": {
"type": "object",
"description": "Saved outputs from the completed operation or step."
},
"createdAt": {
"type": "string",
"format": "date-time",
"description": "Date and time this record was created, serialized as ISO 8601."
},
"updatedAt": {
"type": "string",
"format": "date-time",
"description": "Date and time this record was last updated, serialized as ISO 8601."
},
"workflowStep": {
"type": "object",
"description": "Nested operation-specific fields."
},
"workflowStepId": {
"type": "number"
},
"initiatedByUserId": {
"anyOf": [
{
"type": "null"
},
{
"type": "number"
}
],
"description": "Actual initiating member; null only for historical records/non-workflow service schedules."
}
}
},
"workflowVersionId": {
"type": "number"
}
}
},
"fields": {
"type": "array",
"items": {
"type": "object",
"required": [
"id",
"name",
"type",
"valueFromVariable"
],
"properties": {
"id": {
"type": "string",
"description": "Identifier of this returned resource. Use it for subsequent reads or edits of the same resource."
},
"name": {
"type": "string",
"description": "Human-readable name of this resource."
},
"type": {
"enum": [
"string",
"number",
"boolean",
"markdown",
"content",
"long_text",
"json"
],
"type": "string",
"description": "Kind of the returned item; determines how its operation-specific fields should be interpreted."
},
"contentConfig": {
"type": "object",
"description": "Nested operation-specific fields."
},
"valueFromVariable": {
"type": "string"
}
}
},
"description": "Native field values or field-level results returned by the selected CMS operation."
},
"message": {
"type": "string",
"description": "Outcome, explanation or recovery instructions returned by the operation."
},
"success": {
"type": "boolean",
"description": "Whether this nested operation completed successfully. Inspect the containing result for details."
}
},
"description": "Operation data; optional fields may be absent."
},
"error": {
"type": "string",
"description": "Why the operation failed."
},
"details": {
"type": "object",
"description": "Diagnostics keyed by errorCode."
},
"message": {
"type": "string",
"description": "Outcome or recovery instructions. Project selection means no action ran."
},
"success": {
"type": "boolean",
"description": "Operation success; on false inspect error/errorCode."
},
"upgrade": {
"type": "object",
"description": "Plan-upgrade guidance for an unavailable capability."
},
"category": {
"type": "string",
"description": "Failure category, such as invalid_input or plan_required."
},
"expected": {
"type": "boolean",
"description": "Whether this is an anticipated access, input, plan or state failure."
},
"projects": {
"type": "array",
"items": {
"type": "object",
"properties": {
"id": {
"type": "number",
"description": "Project ID for projectId."
},
"name": {
"type": "string",
"description": "Project name."
}
},
"description": "Accessible project."
},
"description": "Accessible project choices. Select a projectId and retry."
},
"errorCode": {
"type": "string",
"description": "Failure code for recovery."
},
"retryable": {
"type": "boolean",
"description": "Whether an unchanged request can be retried."
},
"statusCode": {
"type": "number",
"description": "HTTP-style failure status."
},
"executionTime": {
"type": "string",
"description": "Elapsed time in seconds, with an s suffix."
}
},
"description": "Operation result envelope."
}
Original tool metadata
{
"name": "configure_workflow_output",
"title": "Configure workflow output",
"description": "Configure the output fields for a workflow. These fields define what outputs the workflow produces when it finishes running.\n\nUse this tool after creating a workflow and adding steps to define what data should be collected and displayed as the workflow's results.\n\nOutput fields reference step outputs using variable syntax: {{stepName.variableName}}\n- stepName: The step type name in camelCase. For multiple steps of the same type, append a number:\n - First SERP_ANALYSIS: serpAnalysis\n - Second SERP_ANALYSIS: serpAnalysis2\n - Third SERP_ANALYSIS: serpAnalysis3\n- Never infer step names. Copy stepName and outputReferences from add_workflow_step, upsert_workflow_steps, or get_workflow_steps.\n- variableName: The output variable from that step\n\nOutput types:\n- \"string\": Simple text output\n- \"markdown\": Markdown-formatted text output\n- \"json\": Structured JSON object or array output\n- \"number\": Numeric output\n- \"boolean\": True/false output\n- \"content\": Existing content reference output. Use this for a content ID returned by another step.\n\nExample: To output created content from generateArticle step, use valueFromVariable: \"{{generateArticle.contentId}}\"\nExample: To reference input keyword, use \"{{input.keyword}}\"\nExample: For second promptLlm step, use \"{{promptLlm2.result}}\"\n\nEdits the draft output contract rather than running a report. Keep references aligned with existing step outputs and validate_workflow after changing them.",
"inputSchema": {
"type": "object",
"required": [
"workflowId",
"fields"
],
"properties": {
"fields": {
"type": "array",
"items": {
"type": "object",
"properties": {
"name": {
"type": "string",
"description": "Technical name for the output field"
},
"type": {
"enum": [
"string",
"long_text",
"markdown",
"json",
"number",
"boolean",
"content"
],
"type": "string",
"description": "Output type: string (short plain text), long_text (multiline plain text), markdown (formatted text), json (structured JSON), number, boolean, content (existing content ID)"
},
"contentConfig": {
"type": "object",
"properties": {
"nlp": {
"type": "string",
"description": "Variable reference for NLP terms array (e.g., \"{{serpAnalysis.nlp}}\")"
},
"title": {
"type": "string",
"description": "Variable reference for the content title (e.g., \"{{generateArticleTitle.titles[0]}}\")"
},
"keyword": {
"type": "string",
"description": "Variable reference for the target keyword (e.g., \"{{input.keyword}}\")"
},
"outline": {
"type": "string",
"description": "Variable reference for the content outline (e.g., \"{{generateOutline.outline}}\")"
},
"description": {
"type": "string",
"description": "Variable reference for the content description"
},
"rankTrackerId": {
"type": "string",
"description": "Variable reference for rank tracker ID (e.g., \"{{serpAnalysis.rankTrackerId}}\")"
}
},
"description": "Legacy metadata configuration for older content output workflows"
},
"valueFromVariable": {
"type": "string",
"description": "Reference to a step output using {{stepName.variableName}} syntax (e.g., \"{{generateArticle.contentId}}\" for content created by GENERATE_ARTICLE)"
}
},
"description": "An output field definition"
},
"description": "Array of output field definitions. Each field defines a piece of data the workflow produces."
},
"context": {
"type": "string",
"maxLength": 120,
"description": "Short purpose of this call for the activity log. Exclude personal data and private source content."
},
"llm_model": {
"type": "string",
"maxLength": 128,
"description": "Use the exact model ID executing this call, from runtime/system context, for usage attribution. Supply it on every Atomic MCP tool call, including discovery and feedback, and update it if the model changes. Use the model ID rather than the client app name. If unavailable, omit it; never guess or ask the user."
},
"projectId": {
"type": "number",
"description": "Atomic project ID from list_projects. Omit to use the configured project; if asked to choose, select one of the accessible returned IDs."
},
"workflowId": {
"type": "number",
"description": "Existing project workflow ID from get_workflows or create_workflow; this identifies a pipeline, not a run."
}
}
},
"outputSchema": {
"type": "object",
"required": [
"success"
],
"properties": {
"url": {
"type": "string",
"description": "Link for resolving the failure or completing the operation."
},
"data": {
"type": "object",
"required": [
"step",
"fields",
"success",
"message"
],
"properties": {
"step": {
"type": "object",
"required": [
"type",
"config",
"disabled",
"position",
"workflowVersionId",
"createdAt",
"updatedAt"
],
"properties": {
"id": {
"type": "number",
"description": "Identifier of this returned resource. Use it for subsequent reads or edits of the same resource."
},
"type": {
"enum": [
"INPUT",
"OUTPUT",
"FIND_COMPETITORS",
"SERP_ANALYSIS",
"GENERATE_ARTICLE_TITLE",
"GENERATE_OUTLINE",
"GENERATE_ARTICLE",
"REPURPOSE_CONTENT",
"GENERATE_IMAGE",
"NLP_ANALYSIS",
"RUN_LLM_AUDIT",
"FIND_OUTREACH_OPPORTUNITIES",
"DISCOVER_LISTINGS",
"DISCOVER_LINK_INSERTIONS",
"DISCOVER_UNLINKED_MENTIONS",
"PROMPT_LLM",
"EDIT_CONTENT_WITH_LLM",
"ADD_CONTEXTUAL_LINKS",
"AGENT",
"WEB_SEARCH",
"READ_WEB_PAGE",
"SEARCH_PROJECT_KNOWLEDGE",
"GET_INTERNAL_LINK_RECOMMENDATIONS",
"GET_GSC_KEYWORDS",
"GET_GSC_PAGES",
"GET_GSC_COUNTRIES",
"GET_GSC_DEVICES",
"GET_GA4_REFERRALS",
"GET_AI_CITATIONS",
"GET_BRAND_SENTIMENT",
"GET_AI_SEARCH_PAGES",
"GET_AI_SEARCH_ENGINES",
"GET_TRACKED_PROMPTS",
"GET_GRIDS",
"GET_GRID",
"CREATE_GRID",
"CREATE_GRID_SHEET",
"CREATE_GRID_COLUMN",
"CREATE_GRID_COLUMNS",
"CREATE_GRID_ROW",
"CREATE_GRID_ROWS",
"UPDATE_GRID_CELL",
"UPDATE_GRID_CELLS",
"RUN_GRID_CELL",
"RUN_GRID_COLUMN",
"RUN_GRID_SHEET",
"RUN_PAGE_SERP_SCAN",
"GET_PAGE_SERP_SCAN",
"WAIT_FOR_PAGE_SERP_SCAN",
"GENERATE_PAGE_OPTIMIZATION_PLAN",
"CLASSIFY_PAGE_TOPIC",
"PARSE_DATA",
"RUN_CODE",
"WRITE_LIQUID_TEXT",
"FORMAT_JSON",
"CALL_API",
"CONDITION",
"ITERATION",
"ERROR",
"NOTIFICATION",
"SEND_EMAIL",
"FIND_DOMAIN_EMAILS",
"VERIFY_EMAILS",
"RAPID_URL_INDEXING",
"PUBLISH",
"PUBLISH_MAPPED_CONTENT",
"PUBLISH_SOCIAL_POST",
"PUBLISH_BUFFER_POST",
"PUBLISH_ZERNIO_POST",
"PUBLISH_INTEGRATION",
"GET_WEBFLOW_SITE_PUBLISHING",
"PUBLISH_WEBFLOW_SITE",
"GET_WEBFLOW_COLLECTION_STRUCTURE",
"CREATE_PROGRAMMATIC_PAGE_TEMPLATE",
"DETECT_PROGRAMMATIC_PAGE_CLUSTERS",
"EXTRACT_PROGRAMMATIC_PAGE_STRUCTURE",
"PROGRAMMATIC_MARKET_RESEARCH",
"PROGRAMMATIC_PAGES",
"CREATE_CONTENT",
"GET_CONTENT_FROM_EDITOR",
"ENRICH_CONTENT_IMAGES",
"ENRICH_CONTENT_SOCIAL_POSTS",
"LIST_WORDPRESS_CONTENT",
"GET_WORDPRESS_CONTENT",
"LIST_WEBFLOW_COLLECTIONS",
"LIST_WEBFLOW_COLLECTION_ITEMS",
"FIND_WEBFLOW_CONTENT",
"VERIFY_WEBFLOW_CONTENT",
"GET_WEBFLOW_DESIGN",
"UPDATE_WEBFLOW_DESIGN",
"GET_WEBFLOW_CONTENT",
"UPDATE_WEBFLOW_CONTENT",
"UPDATE_WORDPRESS_CONTENT",
"LIST_WOOCOMMERCE_PRODUCTS",
"GET_WOOCOMMERCE_PRODUCT",
"UPDATE_WOOCOMMERCE_PRODUCT",
"ENRICH_CONTENT_WOOCOMMERCE_PRODUCTS",
"CREATE_CONTENT_VERSION",
"RUN_WORKFLOW",
"HUMAN_REVIEW"
],
"type": "string",
"description": "Kind of the returned item; determines how its operation-specific fields should be interpreted."
},
"config": {
"type": "object",
"required": [
"softFail",
"inputs"
],
"properties": {
"inputs": {
"type": "object",
"description": "Resolved inputs used for this operation or step."
},
"softFail": {
"type": "boolean"
},
"iterationParentStepIndex": {
"type": "number"
}
},
"description": "Saved configuration specific to this resource's type."
},
"disabled": {
"type": "boolean"
},
"position": {
"type": "object",
"required": [
"x",
"y"
],
"properties": {
"x": {
"type": "number"
},
"y": {
"type": "number"
}
},
"description": "Saved ordering position or visual editor coordinates for this item."
},
"testRuns": {
"type": "array",
"items": {
"type": "object",
"description": "Nested operation-specific fields."
}
},
"createdAt": {
"type": "string",
"format": "date-time",
"description": "Date and time this record was created, serialized as ISO 8601."
},
"deletedAt": {
"type": "string",
"format": "date-time",
"description": "Timestamp serialized as an ISO 8601 date and time."
},
"stepIndex": {
"type": "number",
"description": "Workflow-local step ordering and routing identity; it is distinct from the database step ID."
},
"updatedAt": {
"type": "string",
"format": "date-time",
"description": "Date and time this record was last updated, serialized as ISO 8601."
},
"latestTestRun": {
"type": "object",
"required": [
"workflowStepId",
"inputs",
"outputs",
"status",
"createdAt",
"updatedAt"
],
"properties": {
"id": {
"type": "number",
"description": "Identifier of this returned resource. Use it for subsequent reads or edits of the same resource."
},
"usage": {
"type": "object",
"description": "Provider or Atomic usage measurements for this execution."
},
"inputs": {
"type": "object",
"description": "Resolved inputs used for this operation or step."
},
"status": {
"enum": [
"pending",
"running",
"completed",
"failed",
"waiting_for_approval"
],
"type": "string",
"description": "Current saved or execution state reported by the operation."
},
"outputs": {
"type": "object",
"description": "Saved outputs from the completed operation or step."
},
"createdAt": {
"type": "string",
"format": "date-time",
"description": "Date and time this record was created, serialized as ISO 8601."
},
"updatedAt": {
"type": "string",
"format": "date-time",
"description": "Date and time this record was last updated, serialized as ISO 8601."
},
"workflowStep": {
"type": "object",
"description": "Nested operation-specific fields."
},
"workflowStepId": {
"type": "number"
},
"initiatedByUserId": {
"anyOf": [
{
"type": "null"
},
{
"type": "number"
}
],
"description": "Actual initiating member; null only for historical records/non-workflow service schedules."
}
}
},
"workflowVersionId": {
"type": "number"
}
}
},
"fields": {
"type": "array",
"items": {
"type": "object",
"required": [
"id",
"name",
"type",
"valueFromVariable"
],
"properties": {
"id": {
"type": "string",
"description": "Identifier of this returned resource. Use it for subsequent reads or edits of the same resource."
},
"name": {
"type": "string",
"description": "Human-readable name of this resource."
},
"type": {
"enum": [
"string",
"number",
"boolean",
"markdown",
"content",
"long_text",
"json"
],
"type": "string",
"description": "Kind of the returned item; determines how its operation-specific fields should be interpreted."
},
"contentConfig": {
"type": "object",
"description": "Nested operation-specific fields."
},
"valueFromVariable": {
"type": "string"
}
}
},
"description": "Native field values or field-level results returned by the selected CMS operation."
},
"message": {
"type": "string",
"description": "Outcome, explanation or recovery instructions returned by the operation."
},
"success": {
"type": "boolean",
"description": "Whether this nested operation completed successfully. Inspect the containing result for details."
}
},
"description": "Operation data; optional fields may be absent."
},
"error": {
"type": "string",
"description": "Why the operation failed."
},
"details": {
"type": "object",
"description": "Diagnostics keyed by errorCode."
},
"message": {
"type": "string",
"description": "Outcome or recovery instructions. Project selection means no action ran."
},
"success": {
"type": "boolean",
"description": "Operation success; on false inspect error/errorCode."
},
"upgrade": {
"type": "object",
"description": "Plan-upgrade guidance for an unavailable capability."
},
"category": {
"type": "string",
"description": "Failure category, such as invalid_input or plan_required."
},
"expected": {
"type": "boolean",
"description": "Whether this is an anticipated access, input, plan or state failure."
},
"projects": {
"type": "array",
"items": {
"type": "object",
"properties": {
"id": {
"type": "number",
"description": "Project ID for projectId."
},
"name": {
"type": "string",
"description": "Project name."
}
},
"description": "Accessible project."
},
"description": "Accessible project choices. Select a projectId and retry."
},
"errorCode": {
"type": "string",
"description": "Failure code for recovery."
},
"retryable": {
"type": "boolean",
"description": "Whether an unchanged request can be retried."
},
"statusCode": {
"type": "number",
"description": "HTTP-style failure status."
},
"executionTime": {
"type": "string",
"description": "Elapsed time in seconds, with an s suffix."
}
},
"description": "Operation result envelope."
},
"annotations": {
"readOnlyHint": false,
"openWorldHint": false,
"idempotentHint": false,
"destructiveHint": true
}
}
The title clearly communicates the tool’s action and subject. Keep it concise.
Description97/100
Create a new AI agent for the project. Useful for creating specialized agents that can perform specific tasks, automate workflows, or provide domain-specific assistance. The agent can be created with allowed tools, use cases, and team-role metadata. IMPORTANT: The response includes the created agent with its ID - you should inform the user that the agent has been created and can now be used.
Use get_available_agents first when an existing agent might fit. Creates a saved project agent; it does not start a conversation or execute a task. Repeated creation can produce additional agents.
The description explains the capability, when to use it, and what to expect.
Inputs89/100
Explain the meaning of this value, not just its name.
name
The name of the agent (e.g., "SEO content writer", "Data analyst")
Clear enough to supply this argument.
description
A description of what the agent does and its purpose
Explain the meaning of this value, not just its name.
systemPrompt
The system prompt/instructions for the agent. This defines the agent's behavior, personality, and how it should respond. Be detailed and specific about the agent's role and capabilities.
Clear enough to supply this argument.
model
Optional exact model ID to use when this agent runs.
Explain what happens when this optional value is omitted.
type
Type of agent: "custom" for user-created agents, "predefined" for system agents. Defaults to "custom".
Remove validation rules already expressed in this field’s schema; describe its meaning and usage instead.
icon › name
Icon name from Lucide icons
Remove validation rules already expressed in this field’s schema; describe its meaning and usage instead.
icon › color
Icon color (gray, blue, teal, green, orange, red, magenta, purple)
Clear enough to supply this argument.
isPublic
Whether the agent should be public and visible to all users. Defaults to false.
Remove validation rules already expressed in this field’s schema; describe its meaning and usage instead.
useCases › items › label
Label for the use case
Clear enough to supply this argument.
useCases › items › prompt
Prompt text for the use case
Explain the meaning of this value, not just its name.
toolFilterConfig › webSearch
Allow this agent to search the public web for supporting information.
Explain the meaning of this value, not just its name.
toolFilterConfig › grid
Allow this agent to read or work with project grids.
Clear enough to supply this argument.
toolFilterConfig › storage
Allow this agent to upload or retrieve stored files.
Clear enough to supply this argument.
toolFilterConfig › taskManagement
Allow this agent to read or manage project tasks.
Clear enough to supply this argument.
toolFilterConfig › workflows
Allow this agent to inspect or run project workflows.
Clear enough to supply this argument.
toolFilterConfig › googleAnalytics
Allow this agent to query connected Google Analytics data.
Clear enough to supply this argument.
toolFilterConfig › reports
Allow this agent to read or prepare reports.
Clear enough to supply this argument.
toolFilterConfig › content
Allow this agent to work with saved project content.
Clear enough to supply this argument.
toolFilterConfig › seo
Allow this agent to use SEO research and audit tools.
Clear enough to supply this argument.
toolFilterConfig › agent
Allow this agent to work with other configured agents.
Clear enough to supply this argument.
toolFilterConfig › notifications
Allow this agent to create supported notifications.
Clear enough to supply this argument.
toolFilterConfig › publishing
Allow this agent to work with connected publishing platforms.
Clear enough to supply this argument.
toolFilterConfig › aiSearch
Allow this agent to research tracked AI-search visibility.
Clear enough to supply this argument.
toolFilterConfig › codeInterpreter
Allow this agent to execute supported analysis code.
Clear enough to supply this argument.
toolFilterConfig › memory
Allow this agent to read or update its saved memory.
Clear enough to supply this argument.
suggestFollowUpPrompts
Whether the agent should suggest follow-up prompts after each response. Defaults to true.
Clear enough to supply this argument.
organizationRole
Optional team role for the agent
Clear enough to supply this argument.
roleTitle
Optional human-readable role title for the agent
Clear enough to supply this argument.
teamId
Optional shared team identifier
Clear enough to supply this argument.
managerAgentId
Optional manager agent ID when this agent reports to another agent
Remove validation rules already expressed in this field’s schema; describe its meaning and usage instead.
projectId
Atomic project ID from list_projects. Omit to use the configured project; if asked to choose, select one of the accessible returned IDs.
Remove validation rules already expressed in this field’s schema; describe its meaning and usage instead.
context
Short purpose of this call for the activity log. Exclude personal data and private source content.
Remove validation rules already expressed in this field’s schema; describe its meaning and usage instead.
llm_model
Use the exact model ID executing this call, from runtime/system context, for usage attribution. Supply it on every Atomic MCP tool call, including discovery and feedback, and update it if the model changes. Use the model ID rather than the client app name. If unavailable, omit it; never guess or ask the user.
Remove validation rules already expressed in this field’s schema; describe its meaning and usage instead.
The title clearly communicates the tool’s action and subject. Keep it concise.
Description98/100
Create a scheduled agent conversation automation. By default this creates a hidden automation-only custom agent with a narrow tool set, creates an automation-owned chat session, and schedules the provided prompt to run on that recurring cadence. If the user explicitly requested an existing agent, pass agentId instead. IMPORTANT: The response includes automationUrl. Always include it as a clickable markdown link in your final response after creating the automation. Format: [Open automation](automationUrl).
Use get_agent_automations to inspect schedules first. Creates saved automation configuration; it may execute later on schedule. Use run_agent_automation only when an immediate extra run is intended.
The description explains the capability, when to use it, and what to expect.
Inputs85/100
Explain the meaning of this value, not just its name.
name
Short title for the automation.
Explain the meaning of this value, not just its name.
prompt
Prompt that should be sent to the selected agent each time the automation runs.
Clear enough to supply this argument.
agentId
Optional existing agent ID to run this automation with. Only use this when the user explicitly wants an existing agent. Omit this field to create a hidden automation-only agent.
Clear enough to supply this argument.
agentSystemPrompt
Optional system prompt for the hidden automation-only agent. If omitted, one is generated from the automation name and prompt.
Clear enough to supply this argument.
toolFilterConfig › webSearch
Enable webSearch tools for the automation-only agent.
Clear enough to supply this argument.
toolFilterConfig › grid
Enable grid tools for the automation-only agent.
Explain the meaning of this value, not just its name.
toolFilterConfig › memory
Enable memory tools for the automation-only agent.
Clear enough to supply this argument.
toolFilterConfig › agent
Enable agent tools for the automation-only agent.
Explain the meaning of this value, not just its name.
toolFilterConfig › workflows
Enable workflows tools for the automation-only agent.
Clear enough to supply this argument.
toolFilterConfig › googleAnalytics
Enable googleAnalytics tools for the automation-only agent.
Clear enough to supply this argument.
toolFilterConfig › reports
Enable reports tools for the automation-only agent.
Clear enough to supply this argument.
toolFilterConfig › content
Enable content tools for the automation-only agent.
Clear enough to supply this argument.
toolFilterConfig › seo
Enable seo tools for the automation-only agent.
Clear enough to supply this argument.
toolFilterConfig › taskManagement
Enable taskManagement tools for the automation-only agent.
Clear enough to supply this argument.
toolFilterConfig › notifications
Enable notifications tools for the automation-only agent.
Clear enough to supply this argument.
toolFilterConfig › publishing
Enable publishing tools for the automation-only agent.
Clear enough to supply this argument.
toolFilterConfig › aiSearch
Enable aiSearch tools for the automation-only agent.
Remove validation rules already expressed in this field’s schema; describe its meaning and usage instead.
toolFilterConfig › storage
Enable storage tools for the automation-only agent.
Remove validation rules already expressed in this field’s schema; describe its meaning and usage instead.
toolFilterConfig › codeInterpreter
Enable codeInterpreter tools for the automation-only agent.
Remove validation rules already expressed in this field’s schema; describe its meaning and usage instead.
frequency
Recurring cadence for this automation.
Remove validation rules already expressed in this field’s schema; describe its meaning and usage instead.
dayOfWeek
Required for weekly or bi-weekly schedules.
Remove validation rules already expressed in this field’s schema; describe its meaning and usage instead.
monthlyOption
Required for monthly schedules.
Clear enough to supply this argument.
timeRange
UTC hour range such as "16:00-16:59 PM" or "09:00-09:59 AM".
Remove validation rules already expressed in this field’s schema; describe its meaning and usage instead.
timezone
Display timezone label for the schedule.
Remove validation rules already expressed in this field’s schema; describe its meaning and usage instead.
projectId
Atomic project ID from list_projects. Omit to use the configured project; if asked to choose, select one of the accessible returned IDs.
Remove validation rules already expressed in this field’s schema; describe its meaning and usage instead.
context
Short purpose of this call for the activity log. Exclude personal data and private source content.
Remove validation rules already expressed in this field’s schema; describe its meaning and usage instead.
llm_model
Use the exact model ID executing this call, from runtime/system context, for usage attribution. Supply it on every Atomic MCP tool call, including discovery and feedback, and update it if the model changes. Use the model ID rather than the client app name. If unavailable, omit it; never guess or ask the user.
Remove validation rules already expressed in this field’s schema; describe its meaning and usage instead.
The title clearly communicates the tool’s action and subject. Keep it concise.
Description97/100
Create an additional brand kit in the current project. Use this when the project needs a distinct regional, product, campaign, or audience-specific kit. This always creates a new record; use update_brand_kit to change an existing selected/default kit. Research the brand and target market before calling this tool. Set isDefault only when the new kit should replace the current project default.
Use get_brand_kit/update_brand_kit for the existing default kit. This saves an additional kit; it does not generate or publish content.
The description explains the capability, when to use it, and what to expect.
Inputs87/100
Explain the meaning of this value, not just its name.
name
Human-readable name that distinguishes this kit from the others.
Clear enough to supply this argument.
isDefault
Whether this new kit should become the project default. Defaults to false when a kit exists.
Clear enough to supply this argument.
websiteUrl
Website or regional site represented by this kit.
Clear enough to supply this argument.
tone
Primary communication tone.
Explain the meaning of this value, not just its name.
userPerspective
Writing perspective, such as Second person.
Clear enough to supply this argument.
targetAudience
Audience, pains, goals, and buyer context for this kit.
Clear enough to supply this argument.
brandVoice
Detailed description of how this brand variant sounds.
Clear enough to supply this argument.
brandMentionVariations
Optional project-level brand mention variants. Omit this when a regional kit should not change project-wide mention matching.
Clear enough to supply this argument.
competitors
Main alternatives for this kit and market.
Clear enough to supply this argument.
brandPointOfView
Brand beliefs and market-specific perspective.
Clear enough to supply this argument.
authorPersona
Writer persona agents should adopt.
Clear enough to supply this argument.
writingRules
Concrete writing, terminology, evidence, and style rules.
Clear enough to supply this argument.
writingSampleUrl
Representative writing sample URL.
Explain the meaning of this value, not just its name.
writingSampleTitle
Title or label for the writing sample.
Clear enough to supply this argument.
clientLinkedInProfileUrl
Public personal LinkedIn profile URL in the form https://www.linkedin.com/in/profile-id/.
Remove validation rules already expressed in this field’s schema; describe its meaning and usage instead.
serpLocationId
Search geography for this brand kit.
Clarify units, where to obtain this value, or conventions not already expressed in the schema.
preferredLanguageCode
Language used for SERP results, NLP analysis, and generated content.
Remove validation rules already expressed in this field’s schema; describe its meaning and usage instead.
projectId
Atomic project ID from list_projects. Omit to use the configured project; if asked to choose, select one of the accessible returned IDs.
Clear enough to supply this argument.
context
Short purpose of this call for the activity log. Exclude personal data and private source content.
Remove validation rules already expressed in this field’s schema; describe its meaning and usage instead.
llm_model
Use the exact model ID executing this call, from runtime/system context, for usage attribution. Supply it on every Atomic MCP tool call, including discovery and feedback, and update it if the model changes. Use the model ID rather than the client app name. If unavailable, omit it; never guess or ask the user.
Remove validation rules already expressed in this field’s schema; describe its meaning and usage instead.
The title clearly communicates the tool’s action and subject. Keep it concise.
Description96/100
Create a new content piece for a project or create a new version of existing content. Useful for content writing, content refreshment, and creating landing pages. If only contentId is provided, creates a new version with the current active version's content. If contentId and content are provided, creates a new version with the provided markdown content. If content (markdown) is provided without contentId, creates new content with that content (requires keyword and serpLocationId). Otherwise, scrapes and creates blank content (requires keyword and serpLocationId). IMPORTANT: The response includes an editorUrl field - this is a direct link to open the content in the editor. Always include the editorUrl as a clickable markdown link in your response immediately after creating content. Format: [Open in Editor](editorUrl).
Creates saved content/version state, not a live CMS publication. Inspect get_contents first to decide between a new item and an existing item's version; publish_content is a separate action.
The description explains the capability, when to use it, and what to expect.
Inputs83/100
Remove validation rules already expressed in this field’s schema; describe its meaning and usage instead.
keyword
The main keyword for the content (required when creating new content, not needed when only contentId is provided)
Clear enough to supply this argument.
serpLocationId
The SERP location ID (country/region) for the content. MUST be one of the following valid IDs: 1: United States, 2: United Kingdom (British), 3: Australia, 4: Canada (English), 5: Spain, 6: Mexico, 7: Argentina, 8: Colombia, 9: Chile, 10: Peru, 11: Venezuela, 12: Ecuador, 13: Guatemala, 14: Cuba, 15: France, 16: Canada (French), 17: Belgium (French), 18: Switzerland (French), 19: Monaco, 20: Germany, 21: Austria, 22: Switzerland (German), 23: Italy, 24: Switzerland (Italian), 25: San Marino, 26: Vatican City, 27: Serbia, 28: Bosnia and Herzegovina, 29: Montenegro, 30: Indonesia, 31: Brazil, 32: Portugal, 33: Netherlands, 34: Belgium (Dutch), 35: Ireland, 36: Sweden, 37: Norway, 38: Denmark, 39: Finland, 40: Poland, 41: Czech Republic, 42: Romania, 43: Hungary, 44: Greece, 45: Turkey, 46: New Zealand, 47: India, 48: Singapore, 49: Malaysia, 50: Thailand, 51: Vietnam, 52: Japan, 53: South Korea, 54: United Arab Emirates, 55: Saudi Arabia, 56: South Africa, 57: Philippines, 58: Israel, 59: Nigeria, 60: Afghanistan, 61: Antigua and Barbuda, 62: Anguilla, 63: Albania, 64: Armenia, 65: Netherlands Antilles, 66: Angola, 67: American Samoa, 68: Aruba, 69: Aland Islands, 70: Azerbaijan, 71: Barbados, 72: Bangladesh, 73: Burkina Faso, 74: Bulgaria, 75: Bahrain, 76: Burundi, 77: Benin, 78: Saint Barthelemy, 79: Bermuda, 80: Brunei, 81: Bolivia, 82: Bonaire (Caribbean Netherlands), 83: Bahamas, 84: Bhutan, 85: Bouvet Island, 86: Botswana, 87: Belarus, 88: Belize, 89: Cocos (Keeling) Islands, 90: Democratic Republic of Congo (Zaire), 91: Central African Republic, 92: Congo, 93: Cook Islands, 94: Cameroon, 95: China, 96: Costa Rica, 97: Cape Verde, 98: Curacao, 99: Christmas Island, 100: Cyprus, 101: Djibouti, 102: Dominica, 103: Dominican Republic, 104: Algeria, 105: Estonia, 106: Egypt, 107: Western Sahara, 108: Ethiopia, 109: Fiji, 110: Falkland Islands (Malvinas), 111: Micronesia, 112: Faroe Islands, 113: Gabon, 114: Grenada, 115: Georgia, 116: French Guiana, 117: Ghana, 118: Gibraltar, 119: Greenland, 120: Gambia, 121: Guinea, 122: Guadeloupe, 123: Equatorial Guinea, 124: South Georgia, 125: Guam, 126: Guinea-Bissau, 127: Guyana, 128: Hong Kong, 129: Heard Island and McDonald Islands, 130: Honduras, 131: Croatia (Hrvatska), 132: Haiti, 133: Isle of Man, 134: British Indian Ocean Territory, 135: Iceland, 136: Jersey, 137: Jamaica, 138: Jordan, 139: Kenya, 140: Kyrgyzstan, 141: Cambodia, 142: Kiribati, 143: Comoros, 144: Saint Kitts and Nevis, 145: Kuwait, 146: Cayman Islands, 147: Kazakhstan, 148: Laos, 149: Saint Lucia, 150: Liechtenstein, 151: Sri Lanka, 152: Liberia, 153: Lesotho, 154: Lithuania, 155: Luxembourg, 156: Latvia, 157: Libya, 158: Morocco, 159: Moldova, 160: Saint Martin, 161: Madagascar, 162: Marshall Islands, 163: Macedonia, 164: Mali, 165: Myanmar (Burma), 166: Mongolia, 167: Macau, 168: Northern Mariana Islands, 169: Martinique, 170: Mauritania, 171: Montserrat, 172: Malta, 173: Mauritius, 174: Maldives, 175: Malawi, 176: Mozambique, 177: Namibia, 178: New Caledonia, 179: Niger, 180: Norfolk Island, 181: Nicaragua, 182: Nepal, 183: Nauru, 184: Niue, 185: Oman, 186: Panama, 187: French Polynesia, 188: Papua New Guinea, 189: Pakistan, 190: Saint Pierre and Miquelon, 191: Pitcairn Islands, 192: Puerto Rico, 193: Palau, 194: Paraguay, 195: Qatar, 196: Reunion, 197: Russia, 198: Rwanda, 199: Solomon Islands, 200: Seychelles, 201: Saint Helena, 202: Slovenia, 203: Svalbard and Jan Mayen, 204: Slovakia, 205: Sierra Leone, 206: Senegal, 207: Somalia, 208: Suriname, 209: South Sudan, 210: Sao Tome and Principe, 211: El Salvador, 212: Sint Maarten (Dutch part), 213: Swaziland, 214: Turks and Caicos Islands, 215: Chad, 216: French Southern Territories, 217: Togo, 218: Tajikistan, 219: Tokelau, 220: Timor-Leste, 221: Turkmenistan, 222: Tunisia, 223: Tonga, 224: Trinidad and Tobago, 225: Taiwan, 226: Tanzania, 227: Ukraine, 228: Uganda, 229: United States Minor Outlying Islands, 230: Uruguay, 231: Uzbekistan, 232: Saint Vincent and the Grenadines, 233: Virgin Islands (British), 234: Virgin Islands (US), 235: Vanuatu, 236: Wallis and Futuna Islands, 237: Western Samoa, 238: Kosovo, 239: Yemen, 240: Mayotte, 241: Zambia, 242: Zimbabwe. (required when creating new content, not needed when only contentId is provided)
Remove validation rules already expressed in this field’s schema; describe its meaning and usage instead.
preferredLanguageCode
Language used for the Google SERP results and NLP analysis when creating new content.
Clear enough to supply this argument.
title
Optional content title. When provided, it updates the content title and is stored on new active versions.
Clear enough to supply this argument.
fullDescription
Optional full content description. It is preserved without truncation on the content record and active version.
Clear enough to supply this argument.
metaDescription
Optional short SEO meta description. It is normalized and truncated to 80 characters with an ellipsis when necessary.
Clear enough to supply this argument.
imageUrl
Optional featured image URL. When provided, it is saved onto the content record and reused by publish flows.
Clear enough to supply this argument.
url
Optional URL to analyze and create content from (only used when creating new content, not for versions)
Clear enough to supply this argument.
contentId
Optional content ID. If provided alone, creates a new version with the current active version's content. If provided with content, creates a new version with the provided markdown content.
Clear enough to supply this argument.
content
Markdown content. If provided with contentId, creates a new version. If provided without contentId, creates new content with this content.
Clear enough to supply this argument.
internalLinkingMode
Optional internal linking mode. Use 'auto_conservative' to auto-insert a limited set of high-confidence internal links.
Clear enough to supply this argument.
autoLinkConfidenceThreshold
Optional confidence threshold from 0 to 1 for auto internal links (default 0.82 when internalLinkingMode is 'auto_conservative').
Clear enough to supply this argument.
projectId
Atomic project ID from list_projects. Omit to use the configured project; if asked to choose, select one of the accessible returned IDs.
Clear enough to supply this argument.
context
Short purpose of this call for the activity log. Exclude personal data and private source content.
Clear enough to supply this argument.
llm_model
Use the exact model ID executing this call, from runtime/system context, for usage attribution. Supply it on every Atomic MCP tool call, including discovery and feedback, and update it if the model changes. Use the model ID rather than the client app name. If unavailable, omit it; never guess or ask the user.
{
"type": "object",
"required": [
"success"
],
"properties": {
"url": {
"type": "string",
"description": "Link for resolving the failure or completing the operation."
},
"data": {
"type": "object",
"required": [
"editorUrl",
"id"
],
"properties": {
"id": {
"type": "string",
"description": "Identifier of this returned resource. Use it for subsequent reads or edits of the same resource."
},
"editorUrl": {
"type": "string",
"description": "Atomic editor URL for inspecting or editing this content item."
},
"versionId": {
"type": "number"
}
},
"description": "Operation data; optional fields may be absent."
},
"error": {
"type": "string",
"description": "Why the operation failed."
},
"details": {
"type": "object",
"description": "Diagnostics keyed by errorCode."
},
"message": {
"type": "string",
"description": "Outcome or recovery instructions. Project selection means no action ran."
},
"success": {
"type": "boolean",
"description": "Operation success; on false inspect error/errorCode."
},
"upgrade": {
"type": "object",
"description": "Plan-upgrade guidance for an unavailable capability."
},
"category": {
"type": "string",
"description": "Failure category, such as invalid_input or plan_required."
},
"expected": {
"type": "boolean",
"description": "Whether this is an anticipated access, input, plan or state failure."
},
"projects": {
"type": "array",
"items": {
"type": "object",
"properties": {
"id": {
"type": "number",
"description": "Project ID for projectId."
},
"name": {
"type": "string",
"description": "Project name."
}
},
"description": "Accessible project."
},
"description": "Accessible project choices. Select a projectId and retry."
},
"errorCode": {
"type": "string",
"description": "Failure code for recovery."
},
"retryable": {
"type": "boolean",
"description": "Whether an unchanged request can be retried."
},
"statusCode": {
"type": "number",
"description": "HTTP-style failure status."
},
"executionTime": {
"type": "string",
"description": "Elapsed time in seconds, with an s suffix."
}
},
"description": "Operation result envelope."
}
Original tool metadata
{
"name": "create_content",
"title": "Create content",
"description": "Create a new content piece for a project or create a new version of existing content. Useful for content writing, content refreshment, and creating landing pages. If only contentId is provided, creates a new version with the current active version's content. If contentId and content are provided, creates a new version with the provided markdown content. If content (markdown) is provided without contentId, creates new content with that content (requires keyword and serpLocationId). Otherwise, scrapes and creates blank content (requires keyword and serpLocationId). IMPORTANT: The response includes an editorUrl field - this is a direct link to open the content in the editor. Always include the editorUrl as a clickable markdown link in your response immediately after creating content. Format: [Open in Editor](editorUrl).\n\nCreates saved content/version state, not a live CMS publication. Inspect get_contents first to decide between a new item and an existing item's version; publish_content is a separate action.",
"inputSchema": {
"type": "object",
"required": [],
"properties": {
"url": {
"type": "string",
"description": "Optional URL to analyze and create content from (only used when creating new content, not for versions)"
},
"title": {
"type": "string",
"description": "Optional content title. When provided, it updates the content title and is stored on new active versions."
},
"content": {
"type": "string",
"description": "Markdown content. If provided with contentId, creates a new version. If provided without contentId, creates new content with this content."
},
"context": {
"type": "string",
"maxLength": 120,
"description": "Short purpose of this call for the activity log. Exclude personal data and private source content."
},
"keyword": {
"type": "string",
"description": "The main keyword for the content (required when creating new content, not needed when only contentId is provided)"
},
"imageUrl": {
"type": "string",
"description": "Optional featured image URL. When provided, it is saved onto the content record and reused by publish flows."
},
"contentId": {
"type": "string",
"description": "Optional content ID. If provided alone, creates a new version with the current active version's content. If provided with content, creates a new version with the provided markdown content."
},
"llm_model": {
"type": "string",
"maxLength": 128,
"description": "Use the exact model ID executing this call, from runtime/system context, for usage attribution. Supply it on every Atomic MCP tool call, including discovery and feedback, and update it if the model changes. Use the model ID rather than the client app name. If unavailable, omit it; never guess or ask the user."
},
"projectId": {
"type": "number",
"description": "Atomic project ID from list_projects. Omit to use the configured project; if asked to choose, select one of the accessible returned IDs."
},
"serpLocationId": {
"type": "number",
"description": "The SERP location ID (country/region) for the content. MUST be one of the following valid IDs: 1: United States, 2: United Kingdom (British), 3: Australia, 4: Canada (English), 5: Spain, 6: Mexico, 7: Argentina, 8: Colombia, 9: Chile, 10: Peru, 11: Venezuela, 12: Ecuador, 13: Guatemala, 14: Cuba, 15: France, 16: Canada (French), 17: Belgium (French), 18: Switzerland (French), 19: Monaco, 20: Germany, 21: Austria, 22: Switzerland (German), 23: Italy, 24: Switzerland (Italian), 25: San Marino, 26: Vatican City, 27: Serbia, 28: Bosnia and Herzegovina, 29: Montenegro, 30: Indonesia, 31: Brazil, 32: Portugal, 33: Netherlands, 34: Belgium (Dutch), 35: Ireland, 36: Sweden, 37: Norway, 38: Denmark, 39: Finland, 40: Poland, 41: Czech Republic, 42: Romania, 43: Hungary, 44: Greece, 45: Turkey, 46: New Zealand, 47: India, 48: Singapore, 49: Malaysia, 50: Thailand, 51: Vietnam, 52: Japan, 53: South Korea, 54: United Arab Emirates, 55: Saudi Arabia, 56: South Africa, 57: Philippines, 58: Israel, 59: Nigeria, 60: Afghanistan, 61: Antigua and Barbuda, 62: Anguilla, 63: Albania, 64: Armenia, 65: Netherlands Antilles, 66: Angola, 67: American Samoa, 68: Aruba, 69: Aland Islands, 70: Azerbaijan, 71: Barbados, 72: Bangladesh, 73: Burkina Faso, 74: Bulgaria, 75: Bahrain, 76: Burundi, 77: Benin, 78: Saint Barthelemy, 79: Bermuda, 80: Brunei, 81: Bolivia, 82: Bonaire (Caribbean Netherlands), 83: Bahamas, 84: Bhutan, 85: Bouvet Island, 86: Botswana, 87: Belarus, 88: Belize, 89: Cocos (Keeling) Islands, 90: Democratic Republic of Congo (Zaire), 91: Central African Republic, 92: Congo, 93: Cook Islands, 94: Cameroon, 95: China, 96: Costa Rica, 97: Cape Verde, 98: Curacao, 99: Christmas Island, 100: Cyprus, 101: Djibouti, 102: Dominica, 103: Dominican Republic, 104: Algeria, 105: Estonia, 106: Egypt, 107: Western Sahara, 108: Ethiopia, 109: Fiji, 110: Falkland Islands (Malvinas), 111: Micronesia, 112: Faroe Islands, 113: Gabon, 114: Grenada, 115: Georgia, 116: French Guiana, 117: Ghana, 118: Gibraltar, 119: Greenland, 120: Gambia, 121: Guinea, 122: Guadeloupe, 123: Equatorial Guinea, 124: South Georgia, 125: Guam, 126: Guinea-Bissau, 127: Guyana, 128: Hong Kong, 129: Heard Island and McDonald Islands, 130: Honduras, 131: Croatia (Hrvatska), 132: Haiti, 133: Isle of Man, 134: British Indian Ocean Territory, 135: Iceland, 136: Jersey, 137: Jamaica, 138: Jordan, 139: Kenya, 140: Kyrgyzstan, 141: Cambodia, 142: Kiribati, 143: Comoros, 144: Saint Kitts and Nevis, 145: Kuwait, 146: Cayman Islands, 147: Kazakhstan, 148: Laos, 149: Saint Lucia, 150: Liechtenstein, 151: Sri Lanka, 152: Liberia, 153: Lesotho, 154: Lithuania, 155: Luxembourg, 156: Latvia, 157: Libya, 158: Morocco, 159: Moldova, 160: Saint Martin, 161: Madagascar, 162: Marshall Islands, 163: Macedonia, 164: Mali, 165: Myanmar (Burma), 166: Mongolia, 167: Macau, 168: Northern Mariana Islands, 169: Martinique, 170: Mauritania, 171: Montserrat, 172: Malta, 173: Mauritius, 174: Maldives, 175: Malawi, 176: Mozambique, 177: Namibia, 178: New Caledonia, 179: Niger, 180: Norfolk Island, 181: Nicaragua, 182: Nepal, 183: Nauru, 184: Niue, 185: Oman, 186: Panama, 187: French Polynesia, 188: Papua New Guinea, 189: Pakistan, 190: Saint Pierre and Miquelon, 191: Pitcairn Islands, 192: Puerto Rico, 193: Palau, 194: Paraguay, 195: Qatar, 196: Reunion, 197: Russia, 198: Rwanda, 199: Solomon Islands, 200: Seychelles, 201: Saint Helena, 202: Slovenia, 203: Svalbard and Jan Mayen, 204: Slovakia, 205: Sierra Leone, 206: Senegal, 207: Somalia, 208: Suriname, 209: South Sudan, 210: Sao Tome and Principe, 211: El Salvador, 212: Sint Maarten (Dutch part), 213: Swaziland, 214: Turks and Caicos Islands, 215: Chad, 216: French Southern Territories, 217: Togo, 218: Tajikistan, 219: Tokelau, 220: Timor-Leste, 221: Turkmenistan, 222: Tunisia, 223: Tonga, 224: Trinidad and Tobago, 225: Taiwan, 226: Tanzania, 227: Ukraine, 228: Uganda, 229: United States Minor Outlying Islands, 230: Uruguay, 231: Uzbekistan, 232: Saint Vincent and the Grenadines, 233: Virgin Islands (British), 234: Virgin Islands (US), 235: Vanuatu, 236: Wallis and Futuna Islands, 237: Western Samoa, 238: Kosovo, 239: Yemen, 240: Mayotte, 241: Zambia, 242: Zimbabwe. (required when creating new content, not needed when only contentId is provided)"
},
"fullDescription": {
"type": "string",
"description": "Optional full content description. It is preserved without truncation on the content record and active version."
},
"metaDescription": {
"type": "string",
"description": "Optional short SEO meta description. It is normalized and truncated to 80 characters with an ellipsis when necessary."
},
"internalLinkingMode": {
"enum": [
"off",
"auto_conservative"
],
"type": "string",
"description": "Optional internal linking mode. Use 'auto_conservative' to auto-insert a limited set of high-confidence internal links."
},
"preferredLanguageCode": {
"enum": [
"en",
"en-GB",
"es",
"fr",
"de",
"it",
"sr",
"id",
"pt",
"nl",
"sv",
"no",
"da",
"fi",
"pl",
"cs",
"ro",
"hu",
"el",
"tr",
"ms",
"th",
"vi",
"ja",
"ko",
"ar",
"he",
"sq",
"hy",
"az",
"bn",
"bg",
"ru",
"zh",
"et",
"ka",
"hr",
"is",
"sw",
"lt",
"lv",
"mk",
"ne",
"ur",
"sl",
"sk",
"uk"
],
"type": "string",
"description": "Language used for the Google SERP results and NLP analysis when creating new content."
},
"autoLinkConfidenceThreshold": {
"type": "number",
"description": "Optional confidence threshold from 0 to 1 for auto internal links (default 0.82 when internalLinkingMode is 'auto_conservative')."
}
}
},
"outputSchema": {
"type": "object",
"required": [
"success"
],
"properties": {
"url": {
"type": "string",
"description": "Link for resolving the failure or completing the operation."
},
"data": {
"type": "object",
"required": [
"editorUrl",
"id"
],
"properties": {
"id": {
"type": "string",
"description": "Identifier of this returned resource. Use it for subsequent reads or edits of the same resource."
},
"editorUrl": {
"type": "string",
"description": "Atomic editor URL for inspecting or editing this content item."
},
"versionId": {
"type": "number"
}
},
"description": "Operation data; optional fields may be absent."
},
"error": {
"type": "string",
"description": "Why the operation failed."
},
"details": {
"type": "object",
"description": "Diagnostics keyed by errorCode."
},
"message": {
"type": "string",
"description": "Outcome or recovery instructions. Project selection means no action ran."
},
"success": {
"type": "boolean",
"description": "Operation success; on false inspect error/errorCode."
},
"upgrade": {
"type": "object",
"description": "Plan-upgrade guidance for an unavailable capability."
},
"category": {
"type": "string",
"description": "Failure category, such as invalid_input or plan_required."
},
"expected": {
"type": "boolean",
"description": "Whether this is an anticipated access, input, plan or state failure."
},
"projects": {
"type": "array",
"items": {
"type": "object",
"properties": {
"id": {
"type": "number",
"description": "Project ID for projectId."
},
"name": {
"type": "string",
"description": "Project name."
}
},
"description": "Accessible project."
},
"description": "Accessible project choices. Select a projectId and retry."
},
"errorCode": {
"type": "string",
"description": "Failure code for recovery."
},
"retryable": {
"type": "boolean",
"description": "Whether an unchanged request can be retried."
},
"statusCode": {
"type": "number",
"description": "HTTP-style failure status."
},
"executionTime": {
"type": "string",
"description": "Elapsed time in seconds, with an s suffix."
}
},
"description": "Operation result envelope."
},
"annotations": {
"readOnlyHint": false,
"openWorldHint": false,
"idempotentHint": false,
"destructiveHint": false
}
}
The title clearly communicates the tool’s action and subject. Keep it concise.
Description91/100
Create a content folder with a name and optional description in the selected project.
Creates a folder for saved content items, not a new content item. Use list_content_folders to inspect existing destinations and update_content_folder to edit one; repeating create may add another folder.
The description explains the capability, when to use it, and what to expect.
Inputs80/100
Remove validation rules already expressed in this field’s schema; describe its meaning and usage instead.
name
Folder name.
Remove validation rules already expressed in this field’s schema; describe its meaning and usage instead.
description
Folder description. Use an empty string to clear it.
Remove validation rules already expressed in this field’s schema; describe its meaning and usage instead.
projectId
Atomic project ID from list_projects. Omit to use the configured project; if asked to choose, select one of the accessible returned IDs.
Clear enough to supply this argument.
context
Short purpose of this call for the activity log. Exclude personal data and private source content.
Remove validation rules already expressed in this field’s schema; describe its meaning and usage instead.
llm_model
Use the exact model ID executing this call, from runtime/system context, for usage attribution. Supply it on every Atomic MCP tool call, including discovery and feedback, and update it if the model changes. Use the model ID rather than the client app name. If unavailable, omit it; never guess or ask the user.
Remove validation rules already expressed in this field’s schema; describe its meaning and usage instead.
{
"type": "object",
"required": [
"success"
],
"properties": {
"url": {
"type": "string",
"description": "Link for resolving the failure or completing the operation."
},
"data": {
"type": "object",
"required": [
"id",
"projectId",
"collection",
"name",
"description"
],
"properties": {
"id": {
"type": "number",
"description": "Identifier of this returned resource. Use it for subsequent reads or edits of the same resource."
},
"name": {
"type": "string",
"description": "Human-readable name of this resource."
},
"projectId": {
"type": "number",
"description": "Atomic project that owns this resource."
},
"collection": {
"enum": [
"content",
"grids",
"workflows",
"reports"
],
"type": "string",
"description": "Atomic collection that owns these folders or items."
},
"description": {
"type": "string",
"description": "Saved description of this resource or its purpose."
}
},
"description": "Operation data; optional fields may be absent."
},
"error": {
"type": "string",
"description": "Why the operation failed."
},
"details": {
"type": "object",
"description": "Diagnostics keyed by errorCode."
},
"message": {
"type": "string",
"description": "Outcome or recovery instructions. Project selection means no action ran."
},
"success": {
"type": "boolean",
"description": "Operation success; on false inspect error/errorCode."
},
"upgrade": {
"type": "object",
"description": "Plan-upgrade guidance for an unavailable capability."
},
"category": {
"type": "string",
"description": "Failure category, such as invalid_input or plan_required."
},
"expected": {
"type": "boolean",
"description": "Whether this is an anticipated access, input, plan or state failure."
},
"projects": {
"type": "array",
"items": {
"type": "object",
"properties": {
"id": {
"type": "number",
"description": "Project ID for projectId."
},
"name": {
"type": "string",
"description": "Project name."
}
},
"description": "Accessible project."
},
"description": "Accessible project choices. Select a projectId and retry."
},
"errorCode": {
"type": "string",
"description": "Failure code for recovery."
},
"retryable": {
"type": "boolean",
"description": "Whether an unchanged request can be retried."
},
"statusCode": {
"type": "number",
"description": "HTTP-style failure status."
},
"executionTime": {
"type": "string",
"description": "Elapsed time in seconds, with an s suffix."
}
},
"description": "Operation result envelope."
}
Original tool metadata
{
"name": "create_content_folder",
"title": "Create content folder",
"description": "Create a content folder with a name and optional description in the selected project.\n\nCreates a folder for saved content items, not a new content item. Use list_content_folders to inspect existing destinations and update_content_folder to edit one; repeating create may add another folder.",
"inputSchema": {
"type": "object",
"required": [
"name"
],
"properties": {
"name": {
"type": "string",
"maxLength": 120,
"minLength": 1,
"description": "Folder name."
},
"context": {
"type": "string",
"maxLength": 120,
"description": "Short purpose of this call for the activity log. Exclude personal data and private source content."
},
"llm_model": {
"type": "string",
"maxLength": 128,
"description": "Use the exact model ID executing this call, from runtime/system context, for usage attribution. Supply it on every Atomic MCP tool call, including discovery and feedback, and update it if the model changes. Use the model ID rather than the client app name. If unavailable, omit it; never guess or ask the user."
},
"projectId": {
"type": "number",
"description": "Atomic project ID from list_projects. Omit to use the configured project; if asked to choose, select one of the accessible returned IDs."
},
"description": {
"type": "string",
"maxLength": 2000,
"description": "Folder description. Use an empty string to clear it."
}
},
"additionalProperties": false
},
"outputSchema": {
"type": "object",
"required": [
"success"
],
"properties": {
"url": {
"type": "string",
"description": "Link for resolving the failure or completing the operation."
},
"data": {
"type": "object",
"required": [
"id",
"projectId",
"collection",
"name",
"description"
],
"properties": {
"id": {
"type": "number",
"description": "Identifier of this returned resource. Use it for subsequent reads or edits of the same resource."
},
"name": {
"type": "string",
"description": "Human-readable name of this resource."
},
"projectId": {
"type": "number",
"description": "Atomic project that owns this resource."
},
"collection": {
"enum": [
"content",
"grids",
"workflows",
"reports"
],
"type": "string",
"description": "Atomic collection that owns these folders or items."
},
"description": {
"type": "string",
"description": "Saved description of this resource or its purpose."
}
},
"description": "Operation data; optional fields may be absent."
},
"error": {
"type": "string",
"description": "Why the operation failed."
},
"details": {
"type": "object",
"description": "Diagnostics keyed by errorCode."
},
"message": {
"type": "string",
"description": "Outcome or recovery instructions. Project selection means no action ran."
},
"success": {
"type": "boolean",
"description": "Operation success; on false inspect error/errorCode."
},
"upgrade": {
"type": "object",
"description": "Plan-upgrade guidance for an unavailable capability."
},
"category": {
"type": "string",
"description": "Failure category, such as invalid_input or plan_required."
},
"expected": {
"type": "boolean",
"description": "Whether this is an anticipated access, input, plan or state failure."
},
"projects": {
"type": "array",
"items": {
"type": "object",
"properties": {
"id": {
"type": "number",
"description": "Project ID for projectId."
},
"name": {
"type": "string",
"description": "Project name."
}
},
"description": "Accessible project."
},
"description": "Accessible project choices. Select a projectId and retry."
},
"errorCode": {
"type": "string",
"description": "Failure code for recovery."
},
"retryable": {
"type": "boolean",
"description": "Whether an unchanged request can be retried."
},
"statusCode": {
"type": "number",
"description": "HTTP-style failure status."
},
"executionTime": {
"type": "string",
"description": "Elapsed time in seconds, with an s suffix."
}
},
"description": "Operation result envelope."
},
"annotations": {
"readOnlyHint": false,
"openWorldHint": false,
"idempotentHint": false,
"destructiveHint": false
}
}
The title clearly communicates the tool’s action and subject. Keep it concise.
Description97/100
Create a new active content-editor version for an existing content ID from markdown. Preserves existing metadata unless title, fullDescription, metaDescription, or imageUrl overrides are provided. Returns the editorUrl to open the saved version.
Use update_content_version to replace an existing version or duplicate_content_version for an exact copy. This creates a separate active version and leaves CMS publication unchanged.
The description explains the capability, when to use it, and what to expect.
Inputs93/100
Remove validation rules already expressed in this field’s schema; describe its meaning and usage instead.
contentId
Required existing content editor ID.
Clear enough to supply this argument.
content
Required markdown content to save as the new active version.
Clear enough to supply this argument.
title
Optional title override. Omit to preserve the existing title.
Clear enough to supply this argument.
fullDescription
Optional complete description override. Omit to preserve the existing full description.
Clear enough to supply this argument.
metaDescription
Optional short SEO meta description override. Omit to preserve the existing value.
Clear enough to supply this argument.
imageUrl
Optional featured image override. Omit to preserve the existing featured image.
Clear enough to supply this argument.
internalLinkingMode
Optional internal linking mode. Use 'auto_conservative' to auto-insert high-confidence internal links before saving.
Clear enough to supply this argument.
autoLinkConfidenceThreshold
Optional confidence threshold from 0 to 1 for auto internal links. Defaults to 0.82 when internalLinkingMode is 'auto_conservative'.
Clear enough to supply this argument.
projectId
Atomic project ID from list_projects. Omit to use the configured project; if asked to choose, select one of the accessible returned IDs.
Remove validation rules already expressed in this field’s schema; describe its meaning and usage instead.
context
Short purpose of this call for the activity log. Exclude personal data and private source content.
Clear enough to supply this argument.
llm_model
Use the exact model ID executing this call, from runtime/system context, for usage attribution. Supply it on every Atomic MCP tool call, including discovery and feedback, and update it if the model changes. Use the model ID rather than the client app name. If unavailable, omit it; never guess or ask the user.
Remove validation rules already expressed in this field’s schema; describe its meaning and usage instead.
Align the output schema with the tool’s documented result.
View output schema
{
"type": "object",
"required": [
"success"
],
"properties": {
"url": {
"type": "string",
"description": "Link for resolving the failure or completing the operation."
},
"data": {
"type": "object",
"required": [
"id",
"contentId",
"versionId",
"title",
"fullDescription",
"metaDescription",
"imageUrl",
"keyword",
"status",
"wordCount",
"readTimeMinutes",
"seoScore",
"content",
"editorUrl"
],
"properties": {
"id": {
"type": "string",
"description": "Identifier of this returned resource. Use it for subsequent reads or edits of the same resource."
},
"url": {
"type": "string",
"description": "URL returned for this resource or operation."
},
"title": {
"type": "string",
"description": "Display or content title of this returned item."
},
"status": {
"type": "string",
"description": "Current saved or execution state reported by the operation."
},
"content": {
"type": "string",
"description": "Returned content body in the format described by the containing resource."
},
"keyword": {
"type": "string"
},
"imageUrl": {
"type": "string",
"description": "URL of the generated, uploaded or selected image."
},
"seoScore": {
"type": "number",
"description": "Saved SEO quality score for this content item."
},
"contentId": {
"type": "string"
},
"editorUrl": {
"type": "string",
"description": "Atomic editor URL for inspecting or editing this content item."
},
"versionId": {
"type": "number"
},
"wordCount": {
"type": "number",
"description": "Number of words in this content item."
},
"fullDescription": {
"type": "string",
"description": "Saved full content body or description."
},
"metaDescription": {
"type": "string",
"description": "Saved page meta description used in search snippets."
},
"readTimeMinutes": {
"type": "number"
}
},
"description": "Operation data; optional fields may be absent."
},
"error": {
"type": "string",
"description": "Why the operation failed."
},
"details": {
"type": "object",
"description": "Diagnostics keyed by errorCode."
},
"message": {
"type": "string",
"description": "Outcome or recovery instructions. Project selection means no action ran."
},
"success": {
"type": "boolean",
"description": "Operation success; on false inspect error/errorCode."
},
"upgrade": {
"type": "object",
"description": "Plan-upgrade guidance for an unavailable capability."
},
"category": {
"type": "string",
"description": "Failure category, such as invalid_input or plan_required."
},
"expected": {
"type": "boolean",
"description": "Whether this is an anticipated access, input, plan or state failure."
},
"projects": {
"type": "array",
"items": {
"type": "object",
"properties": {
"id": {
"type": "number",
"description": "Project ID for projectId."
},
"name": {
"type": "string",
"description": "Project name."
}
},
"description": "Accessible project."
},
"description": "Accessible project choices. Select a projectId and retry."
},
"errorCode": {
"type": "string",
"description": "Failure code for recovery."
},
"retryable": {
"type": "boolean",
"description": "Whether an unchanged request can be retried."
},
"statusCode": {
"type": "number",
"description": "HTTP-style failure status."
},
"executionTime": {
"type": "string",
"description": "Elapsed time in seconds, with an s suffix."
}
},
"description": "Operation result envelope."
}
Original tool metadata
{
"name": "create_content_version",
"title": "Create content version",
"description": "Create a new active content-editor version for an existing content ID from markdown. Preserves existing metadata unless title, fullDescription, metaDescription, or imageUrl overrides are provided. Returns the editorUrl to open the saved version.\n\nUse update_content_version to replace an existing version or duplicate_content_version for an exact copy. This creates a separate active version and leaves CMS publication unchanged.",
"inputSchema": {
"type": "object",
"required": [
"contentId",
"content"
],
"properties": {
"title": {
"type": "string",
"description": "Optional title override. Omit to preserve the existing title."
},
"content": {
"type": "string",
"description": "Required markdown content to save as the new active version."
},
"context": {
"type": "string",
"maxLength": 120,
"description": "Short purpose of this call for the activity log. Exclude personal data and private source content."
},
"imageUrl": {
"type": "string",
"description": "Optional featured image override. Omit to preserve the existing featured image."
},
"contentId": {
"type": "string",
"description": "Required existing content editor ID."
},
"llm_model": {
"type": "string",
"maxLength": 128,
"description": "Use the exact model ID executing this call, from runtime/system context, for usage attribution. Supply it on every Atomic MCP tool call, including discovery and feedback, and update it if the model changes. Use the model ID rather than the client app name. If unavailable, omit it; never guess or ask the user."
},
"projectId": {
"type": "number",
"description": "Atomic project ID from list_projects. Omit to use the configured project; if asked to choose, select one of the accessible returned IDs."
},
"fullDescription": {
"type": "string",
"description": "Optional complete description override. Omit to preserve the existing full description."
},
"metaDescription": {
"type": "string",
"description": "Optional short SEO meta description override. Omit to preserve the existing value."
},
"internalLinkingMode": {
"enum": [
"off",
"auto_conservative"
],
"type": "string",
"description": "Optional internal linking mode. Use 'auto_conservative' to auto-insert high-confidence internal links before saving."
},
"autoLinkConfidenceThreshold": {
"type": "number",
"maximum": 1,
"minimum": 0,
"description": "Optional confidence threshold from 0 to 1 for auto internal links. Defaults to 0.82 when internalLinkingMode is 'auto_conservative'."
}
}
},
"outputSchema": {
"type": "object",
"required": [
"success"
],
"properties": {
"url": {
"type": "string",
"description": "Link for resolving the failure or completing the operation."
},
"data": {
"type": "object",
"required": [
"id",
"contentId",
"versionId",
"title",
"fullDescription",
"metaDescription",
"imageUrl",
"keyword",
"status",
"wordCount",
"readTimeMinutes",
"seoScore",
"content",
"editorUrl"
],
"properties": {
"id": {
"type": "string",
"description": "Identifier of this returned resource. Use it for subsequent reads or edits of the same resource."
},
"url": {
"type": "string",
"description": "URL returned for this resource or operation."
},
"title": {
"type": "string",
"description": "Display or content title of this returned item."
},
"status": {
"type": "string",
"description": "Current saved or execution state reported by the operation."
},
"content": {
"type": "string",
"description": "Returned content body in the format described by the containing resource."
},
"keyword": {
"type": "string"
},
"imageUrl": {
"type": "string",
"description": "URL of the generated, uploaded or selected image."
},
"seoScore": {
"type": "number",
"description": "Saved SEO quality score for this content item."
},
"contentId": {
"type": "string"
},
"editorUrl": {
"type": "string",
"description": "Atomic editor URL for inspecting or editing this content item."
},
"versionId": {
"type": "number"
},
"wordCount": {
"type": "number",
"description": "Number of words in this content item."
},
"fullDescription": {
"type": "string",
"description": "Saved full content body or description."
},
"metaDescription": {
"type": "string",
"description": "Saved page meta description used in search snippets."
},
"readTimeMinutes": {
"type": "number"
}
},
"description": "Operation data; optional fields may be absent."
},
"error": {
"type": "string",
"description": "Why the operation failed."
},
"details": {
"type": "object",
"description": "Diagnostics keyed by errorCode."
},
"message": {
"type": "string",
"description": "Outcome or recovery instructions. Project selection means no action ran."
},
"success": {
"type": "boolean",
"description": "Operation success; on false inspect error/errorCode."
},
"upgrade": {
"type": "object",
"description": "Plan-upgrade guidance for an unavailable capability."
},
"category": {
"type": "string",
"description": "Failure category, such as invalid_input or plan_required."
},
"expected": {
"type": "boolean",
"description": "Whether this is an anticipated access, input, plan or state failure."
},
"projects": {
"type": "array",
"items": {
"type": "object",
"properties": {
"id": {
"type": "number",
"description": "Project ID for projectId."
},
"name": {
"type": "string",
"description": "Project name."
}
},
"description": "Accessible project."
},
"description": "Accessible project choices. Select a projectId and retry."
},
"errorCode": {
"type": "string",
"description": "Failure code for recovery."
},
"retryable": {
"type": "boolean",
"description": "Whether an unchanged request can be retried."
},
"statusCode": {
"type": "number",
"description": "HTTP-style failure status."
},
"executionTime": {
"type": "string",
"description": "Elapsed time in seconds, with an s suffix."
}
},
"description": "Operation result envelope."
},
"annotations": {
"readOnlyHint": false,
"openWorldHint": false,
"idempotentHint": false,
"destructiveHint": false
}
}
The title clearly communicates the tool’s action and subject. Keep it concise.
Description95/100
Create a new Notion-style DATA REPORT for a project. The report name is rendered at the top as the main page heading, with the optional report description beneath it; do not repeat the report name as the first layout heading. The layout can mix narrative blocks (text and the single body Heading option, stored as heading-2), highlighted callout blocks (blockType "section", shown as "Callout" in the UI, with background tones), and metric/data blocks with charts/tables/cards. Use this ONLY for custom analytics reports and dashboards - NOT workflows or automation. DO NOT use for creating workflows - use create_workflow instead. IMPORTANT: The response includes a publicUrl field - Always include it in your response as a clickable markdown link (format: [View Report](publicUrl)).
Use get_custom_reports to find an existing report before creating another. Saves a report layout; update_custom_report edits it and update_custom_report_publish_settings controls public access.
The description explains the capability, when to use it, and what to expect.
Inputs77/100
Explain the meaning of this value, not just its name.
name
The name of the custom report. This is displayed as the main heading at the top of the report.
Clear enough to supply this argument.
description
Optional description for the report
Explain the meaning of this value, not just its name.
config › layout › items › oneOf › 0 › id
Required. Unique identifier for the layout item (e.g., "item-1", "executive-summary")
Remove validation rules already expressed in this field’s schema; describe its meaning and usage instead.
config › layout › items › oneOf › 0 › title
Optional display title. Use for metric/data blocks only. Text, heading, and callout blocks use content instead.
Clear enough to supply this argument.
config › layout › items › oneOf › 0 › size
Required. Size of the layout item. Use LARGE for Notion-style text, headings, callouts, and most charts.
Remove validation rules already expressed in this field’s schema; describe its meaning and usage instead.
config › layout › items › oneOf › 0 › blockType
Optional. Use "data" for metric/data blocks. If omitted, the item is treated as a data block.
Remove validation rules already expressed in this field’s schema; describe its meaning and usage instead.
config › layout › items › oneOf › 0 › description
Deprecated for metric blocks. Prefer leaving this empty; report metrics now show title/date full width without a description textarea.
Clear enough to supply this argument.
config › layout › items › oneOf › 0 › dataSource
Required. Data source for the layout item. VALID COMBINATIONS: search-analytics→total, ai-search→total|by-source|by-page, ai-prompts→performance, ai-competitors→performance, ai-citations→performance, ai-mentions→distribution|performance, ai-platforms→performance|by-source|distribution|by-page, ai-sentiment→performance|by-source, keywords→distribution|performance (trend filter works with: performance), pages→performance (trend filter works with: performance), conversions→total|by-source|by-page|by-country, referrals→total|by-source, geography→performance (trend filter works with: performance), devices→performance, seo-audit→performance
Remove validation rules already expressed in this field’s schema; describe its meaning and usage instead.
Required. Section/view of the data source. Use: performance (table with rows - REQUIRED for trend filters to work), distribution (summary cards - no trend filtering), total (aggregate line chart), by-source/by-page/by-country (grouped tables). IMPORTANT: To filter by rising/falling trends, you MUST use sourceSection=performance with keywords, pages, or geography data sources.
Remove validation rules already expressed in this field’s schema; describe its meaning and usage instead.
config › layout › items › oneOf › 0 › startDate
Required. Start date for the data range in ISO format (YYYY-MM-DD)
Remove validation rules already expressed in this field’s schema; describe its meaning and usage instead.
config › layout › items › oneOf › 0 › endDate
Required. End date for the data range in ISO format (YYYY-MM-DD)
Remove validation rules already expressed in this field’s schema; describe its meaning and usage instead.
The dimension to filter on. query: Filter by search query/keyword text; page: Filter by page URL; device: Filter by device type [values: DESKTOP, MOBILE, TABLET]; country: Filter by country (3-letter code) [values: USA, GBR, CAN, DEU, FRA...]; sessionSource: Filter by traffic source [values: google, bing, chatgpt.com, google.com/aimode, perplexity.ai...]; trend: Filter by trend direction. IMPORTANT: Only works with sourceSection=performance [values: up, down, flat]; platform: Filter by AI platform [values: chatgpt, ai_mode, gemini, perplexity, copilot...]; type: Filter by citation type [values: you, competitor, ugc, corporate, editorial...]; category: Filter by content category [values: awareness, consideration, decision, branded]
Remove validation rules already expressed in this field’s schema; describe its meaning and usage instead.
The filter operator. Use: equals (exact match, best for trend/device/impact), contains (partial match, best for query/page), notContains/notEquals (exclusions), includingRegex/excludingRegex (pattern matching)
Remove validation rules already expressed in this field’s schema; describe its meaning and usage instead.
The filter value. Examples: For trend use "up" (rising), "down" (falling), or "flat" (stable). For device use "DESKTOP", "MOBILE", or "TABLET". For country use 3-letter codes like "USA", "GBR", "DEU". For query/page use the text to match.
Remove validation rules already expressed in this field’s schema; describe its meaning and usage instead.
Remove validation rules already expressed in this field’s schema; describe its meaning and usage instead.
config › layout › items › oneOf › 1 › id
Required. Unique identifier for the layout item (e.g., "item-1", "executive-summary")
Remove validation rules already expressed in this field’s schema; describe its meaning and usage instead.
config › layout › items › oneOf › 1 › title
Optional display title. Use for metric/data blocks only. Text, heading, and callout blocks use content instead.
Remove validation rules already expressed in this field’s schema; describe its meaning and usage instead.
config › layout › items › oneOf › 1 › size
Required. Size of the layout item. Use LARGE for Notion-style text, headings, callouts, and most charts.
Remove validation rules already expressed in this field’s schema; describe its meaning and usage instead.
config › layout › items › oneOf › 1 › blockType
Required. Supported narrative blocks are text and the single Heading option, stored as heading-2. Do not use heading-1, heading-3, heading-4, bulleted-list, numbered-list, or todo-list for new reports.
Clear enough to supply this argument.
config › layout › items › oneOf › 1 › content
Required. Text to render.
Clear enough to supply this argument.
config › layout › items › oneOf › 2 › id
Required. Unique identifier for the layout item (e.g., "item-1", "executive-summary")
Remove validation rules already expressed in this field’s schema; describe its meaning and usage instead.
config › layout › items › oneOf › 2 › title
Optional display title. Use for metric/data blocks only. Text, heading, and callout blocks use content instead.
Remove validation rules already expressed in this field’s schema; describe its meaning and usage instead.
config › layout › items › oneOf › 2 › size
Required. Size of the layout item. Use LARGE for Notion-style text, headings, callouts, and most charts.
Remove validation rules already expressed in this field’s schema; describe its meaning and usage instead.
config › layout › items › oneOf › 2 › blockType
Required. Use "section" for callout blocks. The UI labels this block type as "Callout".
Remove validation rules already expressed in this field’s schema; describe its meaning and usage instead.
config › layout › items › oneOf › 2 › content
Required. Callout body text. Can include multiple lines and bullet-style text.
Remove validation rules already expressed in this field’s schema; describe its meaning and usage instead.
config › layout › items › oneOf › 2 › icon
Optional emoji/icon for the callout, such as a lightbulb, warning, or check mark.
Remove validation rules already expressed in this field’s schema; describe its meaning and usage instead.
config › layout › items › oneOf › 2 › tone
Optional background color. Available tones: default, gray, brown, orange, yellow, green, blue, purple, pink, red. Use gray by default unless the user asks for another color.
Remove validation rules already expressed in this field’s schema; describe its meaning and usage instead.
config › layout › items › oneOf › 3 › id
Required. Unique identifier for the layout item (e.g., "item-1", "executive-summary")
Remove validation rules already expressed in this field’s schema; describe its meaning and usage instead.
config › layout › items › oneOf › 3 › title
Optional display title. Use for metric/data blocks only. Text, heading, and callout blocks use content instead.
Remove validation rules already expressed in this field’s schema; describe its meaning and usage instead.
config › layout › items › oneOf › 3 › size
Required. Size of the layout item. Use LARGE for Notion-style text, headings, callouts, and most charts.
Remove validation rules already expressed in this field’s schema; describe its meaning and usage instead.
config › layout › items › oneOf › 3 › blockType
Report block or widget type selecting the configuration structure.
Remove validation rules already expressed in this field’s schema; describe its meaning and usage instead.
config › layout › items › oneOf › 3 › pageSize
Rows per page. Defaults to 10.
Remove validation rules already expressed in this field’s schema; describe its meaning and usage instead.
Cell values within the supplied row or table configuration.
Remove validation rules already expressed in this field’s schema; describe its meaning and usage instead.
config › filters › items › dimension
The dimension to filter on. query: Filter by search query/keyword text; page: Filter by page URL; device: Filter by device type [values: DESKTOP, MOBILE, TABLET]; country: Filter by country (3-letter code) [values: USA, GBR, CAN, DEU, FRA...]; sessionSource: Filter by traffic source [values: google, bing, chatgpt.com, google.com/aimode, perplexity.ai...]; trend: Filter by trend direction. IMPORTANT: Only works with sourceSection=performance [values: up, down, flat]; platform: Filter by AI platform [values: chatgpt, ai_mode, gemini, perplexity, copilot...]; type: Filter by citation type [values: you, competitor, ugc, corporate, editorial...]; category: Filter by content category [values: awareness, consideration, decision, branded]
Remove validation rules already expressed in this field’s schema; describe its meaning and usage instead.
config › filters › items › operator
The filter operator. Use: equals (exact match, best for trend/device/impact), contains (partial match, best for query/page), notContains/notEquals (exclusions), includingRegex/excludingRegex (pattern matching)
Remove validation rules already expressed in this field’s schema; describe its meaning and usage instead.
config › filters › items › expression
The filter value. Examples: For trend use "up" (rising), "down" (falling), or "flat" (stable). For device use "DESKTOP", "MOBILE", or "TABLET". For country use 3-letter codes like "USA", "GBR", "DEU". For query/page use the text to match.
Remove validation rules already expressed in this field’s schema; describe its meaning and usage instead.
projectId
Atomic project ID from list_projects. Omit to use the configured project; if asked to choose, select one of the accessible returned IDs.
Remove validation rules already expressed in this field’s schema; describe its meaning and usage instead.
context
Short purpose of this call for the activity log. Exclude personal data and private source content.
Remove validation rules already expressed in this field’s schema; describe its meaning and usage instead.
llm_model
Use the exact model ID executing this call, from runtime/system context, for usage attribution. Supply it on every Atomic MCP tool call, including discovery and feedback, and update it if the model changes. Use the model ID rather than the client app name. If unavailable, omit it; never guess or ask the user.
Remove validation rules already expressed in this field’s schema; describe its meaning and usage instead.
The title clearly communicates the tool’s action and subject. Keep it concise.
Description95/100
Save a reusable workspace-level custom report template. Use this when the user asks to save the current report layout as a template or create a reusable report template for future reports. The layout can mix narrative text, heading-2 blocks, callout sections, and metric/data blocks. This creates a template only, not a live report.
Saves reusable workspace configuration, not a generated report or a publication. Use get_custom_report_templates before creating another template with the same purpose.
The description explains the capability, when to use it, and what to expect.
Inputs84/100
Explain the meaning of this value, not just its name.
name
The template name shown in the workspace templates picker.
Clear enough to supply this argument.
description
Optional description explaining when to use this template.
Explain the meaning of this value, not just its name.
config › layout › items › oneOf › 0 › id
Required. Unique identifier for the layout item (e.g., "item-1", "executive-summary")
Clear enough to supply this argument.
config › layout › items › oneOf › 0 › title
Optional display title. Use for metric/data blocks only. Text, heading, and callout blocks use content instead.
Clear enough to supply this argument.
config › layout › items › oneOf › 0 › size
Required. Size of the layout item. Use LARGE for Notion-style text, headings, callouts, and most charts.
Remove validation rules already expressed in this field’s schema; describe its meaning and usage instead.
config › layout › items › oneOf › 0 › blockType
Optional. Use "data" for metric/data blocks. If omitted, the item is treated as a data block.
Remove validation rules already expressed in this field’s schema; describe its meaning and usage instead.
config › layout › items › oneOf › 0 › description
Deprecated for metric blocks. Prefer leaving this empty; report metrics now show title/date full width without a description textarea.
Clear enough to supply this argument.
config › layout › items › oneOf › 0 › dataSource
Required. Data source for the layout item. VALID COMBINATIONS: search-analytics→total, ai-search→total|by-source|by-page, ai-prompts→performance, ai-competitors→performance, ai-citations→performance, ai-mentions→distribution|performance, ai-platforms→performance|by-source|distribution|by-page, ai-sentiment→performance|by-source, keywords→distribution|performance (trend filter works with: performance), pages→performance (trend filter works with: performance), conversions→total|by-source|by-page|by-country, referrals→total|by-source, geography→performance (trend filter works with: performance), devices→performance, seo-audit→performance
Remove validation rules already expressed in this field’s schema; describe its meaning and usage instead.
Required. Section/view of the data source. Use: performance (table with rows - REQUIRED for trend filters to work), distribution (summary cards - no trend filtering), total (aggregate line chart), by-source/by-page/by-country (grouped tables). IMPORTANT: To filter by rising/falling trends, you MUST use sourceSection=performance with keywords, pages, or geography data sources.
Remove validation rules already expressed in this field’s schema; describe its meaning and usage instead.
config › layout › items › oneOf › 0 › startDate
Required. Start date for the data range in ISO format (YYYY-MM-DD)
Remove validation rules already expressed in this field’s schema; describe its meaning and usage instead.
config › layout › items › oneOf › 0 › endDate
Required. End date for the data range in ISO format (YYYY-MM-DD)
Remove validation rules already expressed in this field’s schema; describe its meaning and usage instead.
The dimension to filter on. query: Filter by search query/keyword text; page: Filter by page URL; device: Filter by device type [values: DESKTOP, MOBILE, TABLET]; country: Filter by country (3-letter code) [values: USA, GBR, CAN, DEU, FRA...]; sessionSource: Filter by traffic source [values: google, bing, chatgpt.com, google.com/aimode, perplexity.ai...]; trend: Filter by trend direction. IMPORTANT: Only works with sourceSection=performance [values: up, down, flat]; platform: Filter by AI platform [values: chatgpt, ai_mode, gemini, perplexity, copilot...]; type: Filter by citation type [values: you, competitor, ugc, corporate, editorial...]; category: Filter by content category [values: awareness, consideration, decision, branded]
Remove validation rules already expressed in this field’s schema; describe its meaning and usage instead.
The filter operator. Use: equals (exact match, best for trend/device/impact), contains (partial match, best for query/page), notContains/notEquals (exclusions), includingRegex/excludingRegex (pattern matching)
Remove validation rules already expressed in this field’s schema; describe its meaning and usage instead.
The filter value. Examples: For trend use "up" (rising), "down" (falling), or "flat" (stable). For device use "DESKTOP", "MOBILE", or "TABLET". For country use 3-letter codes like "USA", "GBR", "DEU". For query/page use the text to match.
Remove validation rules already expressed in this field’s schema; describe its meaning and usage instead.
Remove validation rules already expressed in this field’s schema; describe its meaning and usage instead.
config › layout › items › oneOf › 1 › id
Required. Unique identifier for the layout item (e.g., "item-1", "executive-summary")
Remove validation rules already expressed in this field’s schema; describe its meaning and usage instead.
config › layout › items › oneOf › 1 › title
Optional display title. Use for metric/data blocks only. Text, heading, and callout blocks use content instead.
Clear enough to supply this argument.
config › layout › items › oneOf › 1 › size
Required. Size of the layout item. Use LARGE for Notion-style text, headings, callouts, and most charts.
Remove validation rules already expressed in this field’s schema; describe its meaning and usage instead.
config › layout › items › oneOf › 1 › blockType
Required. Supported narrative blocks are text and the single Heading option, stored as heading-2. Do not use heading-1, heading-3, heading-4, bulleted-list, numbered-list, or todo-list for new reports.
Clear enough to supply this argument.
config › layout › items › oneOf › 1 › content
Required. Text to render.
Remove validation rules already expressed in this field’s schema; describe its meaning and usage instead.
config › layout › items › oneOf › 2 › id
Required. Unique identifier for the layout item (e.g., "item-1", "executive-summary")
Clear enough to supply this argument.
config › layout › items › oneOf › 2 › title
Optional display title. Use for metric/data blocks only. Text, heading, and callout blocks use content instead.
Clear enough to supply this argument.
config › layout › items › oneOf › 2 › size
Required. Size of the layout item. Use LARGE for Notion-style text, headings, callouts, and most charts.
Remove validation rules already expressed in this field’s schema; describe its meaning and usage instead.
config › layout › items › oneOf › 2 › blockType
Required. Use "section" for callout blocks. The UI labels this block type as "Callout".
Clear enough to supply this argument.
config › layout › items › oneOf › 2 › content
Required. Callout body text. Can include multiple lines and bullet-style text.
Remove validation rules already expressed in this field’s schema; describe its meaning and usage instead.
config › layout › items › oneOf › 2 › icon
Optional emoji/icon for the callout, such as a lightbulb, warning, or check mark.
Clear enough to supply this argument.
config › layout › items › oneOf › 2 › tone
Optional background color. Available tones: default, gray, brown, orange, yellow, green, blue, purple, pink, red. Use gray by default unless the user asks for another color.
Remove validation rules already expressed in this field’s schema; describe its meaning and usage instead.
config › layout › items › oneOf › 3 › id
Required. Unique identifier for the layout item (e.g., "item-1", "executive-summary")
Remove validation rules already expressed in this field’s schema; describe its meaning and usage instead.
config › layout › items › oneOf › 3 › title
Optional display title. Use for metric/data blocks only. Text, heading, and callout blocks use content instead.
Remove validation rules already expressed in this field’s schema; describe its meaning and usage instead.
config › layout › items › oneOf › 3 › size
Required. Size of the layout item. Use LARGE for Notion-style text, headings, callouts, and most charts.
Remove validation rules already expressed in this field’s schema; describe its meaning and usage instead.
config › layout › items › oneOf › 3 › blockType
Report block or widget type selecting the configuration structure.
Remove validation rules already expressed in this field’s schema; describe its meaning and usage instead.
config › layout › items › oneOf › 3 › pageSize
Rows per page. Defaults to 10.
Remove validation rules already expressed in this field’s schema; describe its meaning and usage instead.
Cell values within the supplied row or table configuration.
Clear enough to supply this argument.
config › filters › items › dimension
The dimension to filter on. query: Filter by search query/keyword text; page: Filter by page URL; device: Filter by device type [values: DESKTOP, MOBILE, TABLET]; country: Filter by country (3-letter code) [values: USA, GBR, CAN, DEU, FRA...]; sessionSource: Filter by traffic source [values: google, bing, chatgpt.com, google.com/aimode, perplexity.ai...]; trend: Filter by trend direction. IMPORTANT: Only works with sourceSection=performance [values: up, down, flat]; platform: Filter by AI platform [values: chatgpt, ai_mode, gemini, perplexity, copilot...]; type: Filter by citation type [values: you, competitor, ugc, corporate, editorial...]; category: Filter by content category [values: awareness, consideration, decision, branded]
Clear enough to supply this argument.
config › filters › items › operator
The filter operator. Use: equals (exact match, best for trend/device/impact), contains (partial match, best for query/page), notContains/notEquals (exclusions), includingRegex/excludingRegex (pattern matching)
Clear enough to supply this argument.
config › filters › items › expression
The filter value. Examples: For trend use "up" (rising), "down" (falling), or "flat" (stable). For device use "DESKTOP", "MOBILE", or "TABLET". For country use 3-letter codes like "USA", "GBR", "DEU". For query/page use the text to match.
Clear enough to supply this argument.
projectId
Atomic project ID from list_projects. Omit to use the configured project; if asked to choose, select one of the accessible returned IDs.
Clear enough to supply this argument.
context
Short purpose of this call for the activity log. Exclude personal data and private source content.
Clear enough to supply this argument.
llm_model
Use the exact model ID executing this call, from runtime/system context, for usage attribution. Supply it on every Atomic MCP tool call, including discovery and feedback, and update it if the model changes. Use the model ID rather than the client app name. If unavailable, omit it; never guess or ask the user.
{
"type": "object",
"required": [
"success"
],
"properties": {
"url": {
"type": "string",
"description": "Link for resolving the failure or completing the operation."
},
"data": {
"type": "object",
"required": [
"name",
"workspaceId",
"createdAt",
"updatedAt",
"config"
],
"properties": {
"id": {
"type": "number",
"description": "Identifier of this returned resource. Use it for subsequent reads or edits of the same resource."
},
"name": {
"type": "string",
"description": "Human-readable name of this resource."
},
"config": {
"type": "object",
"required": [
"layout"
],
"properties": {
"layout": {
"type": "array",
"items": {
"type": "object",
"description": "Nested operation-specific fields."
}
},
"filters": {
"type": "array",
"items": {
"type": "object",
"description": "Nested operation-specific fields."
},
"description": "Filters applied to this result or saved reporting configuration."
}
},
"description": "Saved configuration specific to this resource's type."
},
"createdAt": {
"type": "string",
"format": "date-time",
"description": "Date and time this record was created, serialized as ISO 8601."
},
"updatedAt": {
"type": "string",
"format": "date-time",
"description": "Date and time this record was last updated, serialized as ISO 8601."
},
"description": {
"type": "string",
"description": "Saved description of this resource or its purpose."
},
"workspaceId": {
"type": "number",
"description": "Atomic workspace that owns this project or resource."
}
},
"description": "Operation data; optional fields may be absent."
},
"error": {
"type": "string",
"description": "Why the operation failed."
},
"details": {
"type": "object",
"description": "Diagnostics keyed by errorCode."
},
"message": {
"type": "string",
"description": "Outcome or recovery instructions. Project selection means no action ran."
},
"success": {
"type": "boolean",
"description": "Operation success; on false inspect error/errorCode."
},
"upgrade": {
"type": "object",
"description": "Plan-upgrade guidance for an unavailable capability."
},
"category": {
"type": "string",
"description": "Failure category, such as invalid_input or plan_required."
},
"expected": {
"type": "boolean",
"description": "Whether this is an anticipated access, input, plan or state failure."
},
"projects": {
"type": "array",
"items": {
"type": "object",
"properties": {
"id": {
"type": "number",
"description": "Project ID for projectId."
},
"name": {
"type": "string",
"description": "Project name."
}
},
"description": "Accessible project."
},
"description": "Accessible project choices. Select a projectId and retry."
},
"errorCode": {
"type": "string",
"description": "Failure code for recovery."
},
"retryable": {
"type": "boolean",
"description": "Whether an unchanged request can be retried."
},
"statusCode": {
"type": "number",
"description": "HTTP-style failure status."
},
"executionTime": {
"type": "string",
"description": "Elapsed time in seconds, with an s suffix."
}
},
"description": "Operation result envelope."
}
Original tool metadata
{
"name": "create_custom_report_template",
"title": "Create custom report template",
"description": "Save a reusable workspace-level custom report template. Use this when the user asks to save the current report layout as a template or create a reusable report template for future reports. The layout can mix narrative text, heading-2 blocks, callout sections, and metric/data blocks. This creates a template only, not a live report.\n\nSaves reusable workspace configuration, not a generated report or a publication. Use get_custom_report_templates before creating another template with the same purpose.",
"inputSchema": {
"type": "object",
"required": [
"name",
"config"
],
"properties": {
"name": {
"type": "string",
"description": "The template name shown in the workspace templates picker."
},
"config": {
"type": "object",
"properties": {
"layout": {
"type": "array",
"items": {
"oneOf": [
{
"type": "object",
"required": [
"id",
"size",
"dataSource",
"sourceSection"
],
"properties": {
"id": {
"type": "string",
"description": "Required. Unique identifier for the layout item (e.g., \"item-1\", \"executive-summary\")"
},
"size": {
"enum": [
"SMALL",
"MEDIUM",
"LARGE"
],
"type": "string",
"description": "Required. Size of the layout item. Use LARGE for Notion-style text, headings, callouts, and most charts."
},
"title": {
"type": "string",
"description": "Optional display title. Use for metric/data blocks only. Text, heading, and callout blocks use content instead."
},
"endDate": {
"type": "string",
"description": "Required. End date for the data range in ISO format (YYYY-MM-DD)"
},
"filters": {
"type": "array",
"items": {
"type": "object",
"properties": {
"operator": {
"enum": [
"contains",
"equals",
"notContains",
"notEquals",
"includingRegex",
"excludingRegex"
],
"type": "string",
"description": "The filter operator. Use: equals (exact match, best for trend/device/impact), contains (partial match, best for query/page), notContains/notEquals (exclusions), includingRegex/excludingRegex (pattern matching)"
},
"dimension": {
"enum": [
"query",
"page",
"device",
"country",
"sessionSource",
"trend",
"platform",
"type",
"category"
],
"type": "string",
"description": "The dimension to filter on. query: Filter by search query/keyword text; page: Filter by page URL; device: Filter by device type [values: DESKTOP, MOBILE, TABLET]; country: Filter by country (3-letter code) [values: USA, GBR, CAN, DEU, FRA...]; sessionSource: Filter by traffic source [values: google, bing, chatgpt.com, google.com/aimode, perplexity.ai...]; trend: Filter by trend direction. IMPORTANT: Only works with sourceSection=performance [values: up, down, flat]; platform: Filter by AI platform [values: chatgpt, ai_mode, gemini, perplexity, copilot...]; type: Filter by citation type [values: you, competitor, ugc, corporate, editorial...]; category: Filter by content category [values: awareness, consideration, decision, branded]"
},
"expression": {
"type": "string",
"description": "The filter value. Examples: For trend use \"up\" (rising), \"down\" (falling), or \"flat\" (stable). For device use \"DESKTOP\", \"MOBILE\", or \"TABLET\". For country use 3-letter codes like \"USA\", \"GBR\", \"DEU\". For query/page use the text to match."
}
}
},
"description": "Filters to apply. IMPORTANT: Use filters to narrow down data based on user requests like \"rising keywords\", \"mobile traffic\", \"US visitors\", etc."
},
"blockType": {
"enum": [
"data"
],
"type": "string",
"description": "Optional. Use \"data\" for metric/data blocks. If omitted, the item is treated as a data block."
},
"startDate": {
"type": "string",
"description": "Required. Start date for the data range in ISO format (YYYY-MM-DD)"
},
"dataSource": {
"enum": [
"search-analytics",
"organic-traffic",
"ai-search",
"ai-prompts",
"ai-competitors",
"ai-citations",
"ai-mentions",
"ai-platforms",
"ai-sentiment",
"keywords",
"pages",
"conversions",
"referrals",
"geography",
"devices",
"seo-audit",
"zero-click-pages"
],
"type": "string",
"description": "Required. Data source for the layout item. VALID COMBINATIONS: search-analytics→total, ai-search→total|by-source|by-page, ai-prompts→performance, ai-competitors→performance, ai-citations→performance, ai-mentions→distribution|performance, ai-platforms→performance|by-source|distribution|by-page, ai-sentiment→performance|by-source, keywords→distribution|performance (trend filter works with: performance), pages→performance (trend filter works with: performance), conversions→total|by-source|by-page|by-country, referrals→total|by-source, geography→performance (trend filter works with: performance), devices→performance, seo-audit→performance"
},
"description": {
"type": "string",
"description": "Deprecated for metric blocks. Prefer leaving this empty; report metrics now show title/date full width without a description textarea."
},
"selectedViews": {
"type": "array",
"items": {
"enum": [
"chartWithTable",
"tabsWithChartsOnly",
"tabsWithTablesOnly",
"lineChart",
"stackedChart",
"pieChart",
"barChart",
"worldMap",
"table",
"switch",
"card",
"split",
"sentimentBreakdown"
],
"type": "string"
},
"description": "Optional. Canonical visualization types to render for this metric. Use ONLY these enum values: chartWithTable, tabsWithChartsOnly, tabsWithTablesOnly, lineChart, stackedChart, pieChart, barChart, worldMap, table, switch, card, split, sentimentBreakdown. Pick values supported by the chosen dataSource + sourceSection. Valid combinations: search-analytics -> total: [lineChart] | organic-traffic -> total: [lineChart, pieChart, barChart, table] | ai-search -> total: [lineChart]; by-source: [lineChart, pieChart, barChart, table]; by-page: [lineChart, pieChart, barChart, table] | ai-prompts -> performance: [card, pieChart, table] | ai-competitors -> performance: [lineChart, table] | ai-citations -> performance: [lineChart, table] | ai-mentions -> distribution: [card]; performance: [table] | ai-platforms -> performance: [lineChart, table]; by-source: [barChart, table]; distribution: [barChart, table]; by-page: [table] | ai-sentiment -> performance: [lineChart, sentimentBreakdown]; by-source: [table] | keywords -> distribution: [card]; performance: [lineChart, pieChart, barChart, table] | pages -> performance: [lineChart, pieChart, barChart, table] | conversions -> total: [lineChart]; by-source: [lineChart, pieChart, barChart, table]; by-page: [lineChart, pieChart, barChart, table]; by-country: [lineChart, pieChart, barChart, table] | referrals -> total: [lineChart]; by-source: [table] | geography -> performance: [worldMap, pieChart, barChart, table] | devices -> performance: [lineChart, pieChart, barChart, table] | seo-audit -> performance: [card] | zero-click-pages -> performance: [card, pieChart, barChart, table]"
},
"sourceSection": {
"enum": [
"total",
"by-source",
"by-page",
"performance",
"distribution",
"by-country"
],
"type": "string",
"description": "Required. Section/view of the data source. Use: performance (table with rows - REQUIRED for trend filters to work), distribution (summary cards - no trend filtering), total (aggregate line chart), by-source/by-page/by-country (grouped tables). IMPORTANT: To filter by rising/falling trends, you MUST use sourceSection=performance with keywords, pages, or geography data sources."
}
},
"description": "Metric/data block. Use for analytics widgets, charts, tables, and cards. Metric blocks do not need a description field."
},
{
"type": "object",
"required": [
"id",
"size",
"blockType",
"content"
],
"properties": {
"id": {
"type": "string",
"description": "Required. Unique identifier for the layout item (e.g., \"item-1\", \"executive-summary\")"
},
"size": {
"enum": [
"SMALL",
"MEDIUM",
"LARGE"
],
"type": "string",
"description": "Required. Size of the layout item. Use LARGE for Notion-style text, headings, callouts, and most charts."
},
"title": {
"type": "string",
"description": "Optional display title. Use for metric/data blocks only. Text, heading, and callout blocks use content instead."
},
"content": {
"type": "string",
"description": "Required. Text to render."
},
"blockType": {
"enum": [
"text",
"heading-2"
],
"type": "string",
"description": "Required. Supported narrative blocks are text and the single Heading option, stored as heading-2. Do not use heading-1, heading-3, heading-4, bulleted-list, numbered-list, or todo-list for new reports."
}
},
"description": "Text/heading block. Use these to make reports read like a Notion document with explanatory context between metrics. The report name is already rendered at the top as the main page heading, so do not duplicate it as a layout heading."
},
{
"type": "object",
"required": [
"id",
"size",
"blockType",
"content"
],
"properties": {
"id": {
"type": "string",
"description": "Required. Unique identifier for the layout item (e.g., \"item-1\", \"executive-summary\")"
},
"icon": {
"type": "string",
"description": "Optional emoji/icon for the callout, such as a lightbulb, warning, or check mark."
},
"size": {
"enum": [
"SMALL",
"MEDIUM",
"LARGE"
],
"type": "string",
"description": "Required. Size of the layout item. Use LARGE for Notion-style text, headings, callouts, and most charts."
},
"tone": {
"enum": [
"default",
"gray",
"no_background",
"brown",
"orange",
"yellow",
"green",
"blue",
"purple",
"pink",
"red"
],
"type": "string",
"description": "Optional background color. Available tones: default, gray, brown, orange, yellow, green, blue, purple, pink, red. Use gray by default unless the user asks for another color."
},
"title": {
"type": "string",
"description": "Optional display title. Use for metric/data blocks only. Text, heading, and callout blocks use content instead."
},
"content": {
"type": "string",
"description": "Required. Callout body text. Can include multiple lines and bullet-style text."
},
"blockType": {
"enum": [
"section"
],
"type": "string",
"description": "Required. Use \"section\" for callout blocks. The UI labels this block type as \"Callout\"."
}
},
"description": "Callout block. Use for highlighted narrative sections, notes, summaries, recommendations, or warnings with a background color."
},
{
"type": "object",
"required": [
"id",
"size",
"blockType",
"columns",
"rows"
],
"properties": {
"id": {
"type": "string",
"description": "Required. Unique identifier for the layout item (e.g., \"item-1\", \"executive-summary\")"
},
"rows": {
"type": "array",
"items": {
"type": "object",
"required": [
"id",
"cells"
],
"properties": {
"id": {
"type": "string",
"description": "Stable identifier for this report layout row or column; preserve it when editing the layout."
},
"cells": {
"type": "object",
"description": "Cell values within the supplied row or table configuration.",
"additionalProperties": {
"type": "string"
}
}
}
},
"maxItems": 1000,
"description": "Row definitions or row values for this table or block."
},
"size": {
"enum": [
"SMALL",
"MEDIUM",
"LARGE"
],
"type": "string",
"description": "Required. Size of the layout item. Use LARGE for Notion-style text, headings, callouts, and most charts."
},
"title": {
"type": "string",
"description": "Optional display title. Use for metric/data blocks only. Text, heading, and callout blocks use content instead."
},
"columns": {
"type": "array",
"items": {
"type": "object",
"required": [
"id",
"label"
],
"properties": {
"id": {
"type": "string",
"description": "Stable identifier for this report layout row or column; preserve it when editing the layout."
},
"type": {
"enum": [
"text",
"url",
"single-select"
],
"type": "string",
"description": "Column presentation. Omitted means text. URL renders a favicon link; single-select renders a colored badge."
},
"label": {
"type": "string",
"description": "Human-readable label shown for this item in Atomic."
},
"options": {
"type": "array",
"items": {
"type": "object",
"required": [
"name",
"color"
],
"properties": {
"name": {
"type": "string",
"description": "Human-readable name of the item being created or edited."
},
"color": {
"enum": [
"#9aa0a6",
"#e06666",
"#f6b26b",
"#ffd966",
"#93c47d",
"#76a5af",
"#6fa8dc",
"#8e7cc3",
"#c27ba0"
],
"type": "string",
"description": "Color for this visual element, expressed in the format accepted by the selected chart or image settings."
}
}
},
"description": "Configuration options specific to the selected block or operation."
}
}
},
"maxItems": 20,
"minItems": 1,
"description": "Ordered column definitions for the table or report block."
},
"pageSize": {
"enum": [
10,
20,
50,
100
],
"type": "number",
"description": "Rows per page. Defaults to 10."
},
"blockType": {
"enum": [
"custom-table"
],
"type": "string",
"description": "Report block or widget type selecting the configuration structure."
}
},
"description": "Manually populated native table, for verified backlinks or other supplied rows. No analytics source or date queries. Cells are plain text keyed by column id."
}
],
"description": "Report layout item. Can be a metric/data block, text/heading block, callout block, or manually populated custom-table. Compose reports like a Notion page: text for prose, heading-2 for body section headings, callouts for highlighted context, and metrics where useful. The report title/name is outside this layout and is already shown as the main heading."
},
"description": "Array of report blocks in display order, rendered below the report title and description. Use text blocks for narrative context, heading-2 blocks for body section headings, callout blocks for highlighted sections, and data blocks for analytics widgets. Do not add a first heading that repeats the report name."
},
"filters": {
"type": "array",
"items": {
"type": "object",
"properties": {
"operator": {
"enum": [
"contains",
"equals",
"notContains",
"notEquals",
"includingRegex",
"excludingRegex"
],
"type": "string",
"description": "The filter operator. Use: equals (exact match, best for trend/device/impact), contains (partial match, best for query/page), notContains/notEquals (exclusions), includingRegex/excludingRegex (pattern matching)"
},
"dimension": {
"enum": [
"query",
"page",
"device",
"country",
"sessionSource",
"trend",
"platform",
"type",
"category"
],
"type": "string",
"description": "The dimension to filter on. query: Filter by search query/keyword text; page: Filter by page URL; device: Filter by device type [values: DESKTOP, MOBILE, TABLET]; country: Filter by country (3-letter code) [values: USA, GBR, CAN, DEU, FRA...]; sessionSource: Filter by traffic source [values: google, bing, chatgpt.com, google.com/aimode, perplexity.ai...]; trend: Filter by trend direction. IMPORTANT: Only works with sourceSection=performance [values: up, down, flat]; platform: Filter by AI platform [values: chatgpt, ai_mode, gemini, perplexity, copilot...]; type: Filter by citation type [values: you, competitor, ugc, corporate, editorial...]; category: Filter by content category [values: awareness, consideration, decision, branded]"
},
"expression": {
"type": "string",
"description": "The filter value. Examples: For trend use \"up\" (rising), \"down\" (falling), or \"flat\" (stable). For device use \"DESKTOP\", \"MOBILE\", or \"TABLET\". For country use 3-letter codes like \"USA\", \"GBR\", \"DEU\". For query/page use the text to match."
}
}
},
"description": "Global filters applied to ALL layout items in the report. Use for report-wide filtering like \"only show US data\" or \"only mobile traffic\"."
}
},
"description": "The report configuration object. Create Notion-style reports by mixing text, the single body Heading option, callouts, and metric/data blocks in layout order. The report name is shown above the layout as the main heading."
},
"context": {
"type": "string",
"maxLength": 120,
"description": "Short purpose of this call for the activity log. Exclude personal data and private source content."
},
"llm_model": {
"type": "string",
"maxLength": 128,
"description": "Use the exact model ID executing this call, from runtime/system context, for usage attribution. Supply it on every Atomic MCP tool call, including discovery and feedback, and update it if the model changes. Use the model ID rather than the client app name. If unavailable, omit it; never guess or ask the user."
},
"projectId": {
"type": "number",
"description": "Atomic project ID from list_projects. Omit to use the configured project; if asked to choose, select one of the accessible returned IDs."
},
"description": {
"type": "string",
"description": "Optional description explaining when to use this template."
}
}
},
"outputSchema": {
"type": "object",
"required": [
"success"
],
"properties": {
"url": {
"type": "string",
"description": "Link for resolving the failure or completing the operation."
},
"data": {
"type": "object",
"required": [
"name",
"workspaceId",
"createdAt",
"updatedAt",
"config"
],
"properties": {
"id": {
"type": "number",
"description": "Identifier of this returned resource. Use it for subsequent reads or edits of the same resource."
},
"name": {
"type": "string",
"description": "Human-readable name of this resource."
},
"config": {
"type": "object",
"required": [
"layout"
],
"properties": {
"layout": {
"type": "array",
"items": {
"type": "object",
"description": "Nested operation-specific fields."
}
},
"filters": {
"type": "array",
"items": {
"type": "object",
"description": "Nested operation-specific fields."
},
"description": "Filters applied to this result or saved reporting configuration."
}
},
"description": "Saved configuration specific to this resource's type."
},
"createdAt": {
"type": "string",
"format": "date-time",
"description": "Date and time this record was created, serialized as ISO 8601."
},
"updatedAt": {
"type": "string",
"format": "date-time",
"description": "Date and time this record was last updated, serialized as ISO 8601."
},
"description": {
"type": "string",
"description": "Saved description of this resource or its purpose."
},
"workspaceId": {
"type": "number",
"description": "Atomic workspace that owns this project or resource."
}
},
"description": "Operation data; optional fields may be absent."
},
"error": {
"type": "string",
"description": "Why the operation failed."
},
"details": {
"type": "object",
"description": "Diagnostics keyed by errorCode."
},
"message": {
"type": "string",
"description": "Outcome or recovery instructions. Project selection means no action ran."
},
"success": {
"type": "boolean",
"description": "Operation success; on false inspect error/errorCode."
},
"upgrade": {
"type": "object",
"description": "Plan-upgrade guidance for an unavailable capability."
},
"category": {
"type": "string",
"description": "Failure category, such as invalid_input or plan_required."
},
"expected": {
"type": "boolean",
"description": "Whether this is an anticipated access, input, plan or state failure."
},
"projects": {
"type": "array",
"items": {
"type": "object",
"properties": {
"id": {
"type": "number",
"description": "Project ID for projectId."
},
"name": {
"type": "string",
"description": "Project name."
}
},
"description": "Accessible project."
},
"description": "Accessible project choices. Select a projectId and retry."
},
"errorCode": {
"type": "string",
"description": "Failure code for recovery."
},
"retryable": {
"type": "boolean",
"description": "Whether an unchanged request can be retried."
},
"statusCode": {
"type": "number",
"description": "HTTP-style failure status."
},
"executionTime": {
"type": "string",
"description": "Elapsed time in seconds, with an s suffix."
}
},
"description": "Operation result envelope."
},
"annotations": {
"readOnlyHint": false,
"openWorldHint": false,
"idempotentHint": false,
"destructiveHint": false
}
}
The title clearly communicates the tool’s action and subject. Keep it concise.
Description94/100
Create an empty grid for generated tabular data. The grid starts with a default sheet and title column. Add every data row explicitly with the row tools.
Use get_grids to reuse an existing grid. Creates the empty structure only; create_grid_rows adds populated records and run_grid_* executes configured workflows.
The description explains the capability, when to use it, and what to expect.
Inputs80/100
Explain the meaning of this value, not just its name.
name
Grid name.
Clear enough to supply this argument.
description
Optional grid description.
Explain the meaning of this value, not just its name.
projectId
Atomic project ID from list_projects. Omit to use the configured project; if asked to choose, select one of the accessible returned IDs.
Clear enough to supply this argument.
context
Short purpose of this call for the activity log. Exclude personal data and private source content.
Remove validation rules already expressed in this field’s schema; describe its meaning and usage instead.
llm_model
Use the exact model ID executing this call, from runtime/system context, for usage attribution. Supply it on every Atomic MCP tool call, including discovery and feedback, and update it if the model changes. Use the model ID rather than the client app name. If unavailable, omit it; never guess or ask the user.
Remove validation rules already expressed in this field’s schema; describe its meaning and usage instead.
{
"type": "object",
"required": [
"success"
],
"properties": {
"url": {
"type": "string",
"description": "Link for resolving the failure or completing the operation."
},
"data": {
"type": "object",
"required": [
"projectId",
"name",
"createdAt",
"updatedAt"
],
"properties": {
"id": {
"type": "number",
"description": "Identifier of this returned resource. Use it for subsequent reads or edits of the same resource."
},
"name": {
"type": "string",
"description": "Human-readable name of this resource."
},
"createdAt": {
"type": "string",
"format": "date-time",
"description": "Date and time this record was created, serialized as ISO 8601."
},
"projectId": {
"type": "number",
"description": "Atomic project that owns this resource."
},
"updatedAt": {
"type": "string",
"format": "date-time",
"description": "Date and time this record was last updated, serialized as ISO 8601."
},
"description": {
"anyOf": [
{
"type": "null"
},
{
"type": "string"
}
],
"description": "Saved description of this resource or its purpose."
},
"collectionFolderId": {
"anyOf": [
{
"type": "null"
},
{
"type": "number"
}
],
"description": "Folder containing this item in its Atomic collection; null means top level."
}
},
"description": "Operation data; optional fields may be absent."
},
"error": {
"type": "string",
"description": "Why the operation failed."
},
"details": {
"type": "object",
"description": "Diagnostics keyed by errorCode."
},
"message": {
"type": "string",
"description": "Outcome or recovery instructions. Project selection means no action ran."
},
"success": {
"type": "boolean",
"description": "Operation success; on false inspect error/errorCode."
},
"upgrade": {
"type": "object",
"description": "Plan-upgrade guidance for an unavailable capability."
},
"category": {
"type": "string",
"description": "Failure category, such as invalid_input or plan_required."
},
"expected": {
"type": "boolean",
"description": "Whether this is an anticipated access, input, plan or state failure."
},
"projects": {
"type": "array",
"items": {
"type": "object",
"properties": {
"id": {
"type": "number",
"description": "Project ID for projectId."
},
"name": {
"type": "string",
"description": "Project name."
}
},
"description": "Accessible project."
},
"description": "Accessible project choices. Select a projectId and retry."
},
"errorCode": {
"type": "string",
"description": "Failure code for recovery."
},
"retryable": {
"type": "boolean",
"description": "Whether an unchanged request can be retried."
},
"statusCode": {
"type": "number",
"description": "HTTP-style failure status."
},
"executionTime": {
"type": "string",
"description": "Elapsed time in seconds, with an s suffix."
}
},
"description": "Operation result envelope."
}
Original tool metadata
{
"name": "create_grid",
"title": "Create grid",
"description": "Create an empty grid for generated tabular data. The grid starts with a default sheet and title column. Add every data row explicitly with the row tools.\n\nUse get_grids to reuse an existing grid. Creates the empty structure only; create_grid_rows adds populated records and run_grid_* executes configured workflows.",
"inputSchema": {
"type": "object",
"required": [
"name"
],
"properties": {
"name": {
"type": "string",
"description": "Grid name."
},
"context": {
"type": "string",
"maxLength": 120,
"description": "Short purpose of this call for the activity log. Exclude personal data and private source content."
},
"llm_model": {
"type": "string",
"maxLength": 128,
"description": "Use the exact model ID executing this call, from runtime/system context, for usage attribution. Supply it on every Atomic MCP tool call, including discovery and feedback, and update it if the model changes. Use the model ID rather than the client app name. If unavailable, omit it; never guess or ask the user."
},
"projectId": {
"type": "number",
"description": "Atomic project ID from list_projects. Omit to use the configured project; if asked to choose, select one of the accessible returned IDs."
},
"description": {
"type": "string",
"description": "Optional grid description."
}
}
},
"outputSchema": {
"type": "object",
"required": [
"success"
],
"properties": {
"url": {
"type": "string",
"description": "Link for resolving the failure or completing the operation."
},
"data": {
"type": "object",
"required": [
"projectId",
"name",
"createdAt",
"updatedAt"
],
"properties": {
"id": {
"type": "number",
"description": "Identifier of this returned resource. Use it for subsequent reads or edits of the same resource."
},
"name": {
"type": "string",
"description": "Human-readable name of this resource."
},
"createdAt": {
"type": "string",
"format": "date-time",
"description": "Date and time this record was created, serialized as ISO 8601."
},
"projectId": {
"type": "number",
"description": "Atomic project that owns this resource."
},
"updatedAt": {
"type": "string",
"format": "date-time",
"description": "Date and time this record was last updated, serialized as ISO 8601."
},
"description": {
"anyOf": [
{
"type": "null"
},
{
"type": "string"
}
],
"description": "Saved description of this resource or its purpose."
},
"collectionFolderId": {
"anyOf": [
{
"type": "null"
},
{
"type": "number"
}
],
"description": "Folder containing this item in its Atomic collection; null means top level."
}
},
"description": "Operation data; optional fields may be absent."
},
"error": {
"type": "string",
"description": "Why the operation failed."
},
"details": {
"type": "object",
"description": "Diagnostics keyed by errorCode."
},
"message": {
"type": "string",
"description": "Outcome or recovery instructions. Project selection means no action ran."
},
"success": {
"type": "boolean",
"description": "Operation success; on false inspect error/errorCode."
},
"upgrade": {
"type": "object",
"description": "Plan-upgrade guidance for an unavailable capability."
},
"category": {
"type": "string",
"description": "Failure category, such as invalid_input or plan_required."
},
"expected": {
"type": "boolean",
"description": "Whether this is an anticipated access, input, plan or state failure."
},
"projects": {
"type": "array",
"items": {
"type": "object",
"properties": {
"id": {
"type": "number",
"description": "Project ID for projectId."
},
"name": {
"type": "string",
"description": "Project name."
}
},
"description": "Accessible project."
},
"description": "Accessible project choices. Select a projectId and retry."
},
"errorCode": {
"type": "string",
"description": "Failure code for recovery."
},
"retryable": {
"type": "boolean",
"description": "Whether an unchanged request can be retried."
},
"statusCode": {
"type": "number",
"description": "HTTP-style failure status."
},
"executionTime": {
"type": "string",
"description": "Elapsed time in seconds, with an s suffix."
}
},
"description": "Operation result envelope."
},
"annotations": {
"readOnlyHint": false,
"openWorldHint": false,
"idempotentHint": false,
"destructiveHint": false
}
}
The title clearly communicates the tool’s action and subject. Keep it concise.
Description78/100
Create a grid column. Supports primitive columns and workflow-backed columns. For workflow-step or workflow columns, pass the existing GridColumnConfig shape with inputMappings so generated row data can drive automation.
Use create_grid_columns for several columns. Changing sheet structure does not execute workflow-backed columns; run_grid_column is separate.
The description explains the capability, when to use it, and what to expect.
Inputs84/100
Explain the meaning of this value, not just its name.
sheetId
Sheet ID from get_grid or create_grid_sheet; the selected sheet must belong to the current project.
Clear enough to supply this argument.
name
Column name.
Explain the meaning of this value, not just its name.
type
Column type.
Remove validation rules already expressed in this field’s schema; describe its meaning and usage instead.
position
Optional zero-based column position. Defaults to the end.
Clear enough to supply this argument.
config › type
Type discriminator for this operation or item. Use the supported values in this field's schema.
Remove validation rules already expressed in this field’s schema; describe its meaning and usage instead.
config › options › items › name
Human-readable name of the item being created or edited.
Remove validation rules already expressed in this field’s schema; describe its meaning and usage instead.
config › options › items › color
Display color of this grid select/status option, chosen from the supported palette. This does not change chart or image styling.
Remove validation rules already expressed in this field’s schema; describe its meaning and usage instead.
requiredInputNames
Optional list of workflow input names that must be mapped or hardcoded before the column can be created.
Clear enough to supply this argument.
projectId
Atomic project ID from list_projects. Omit to use the configured project; if asked to choose, select one of the accessible returned IDs.
Clear enough to supply this argument.
context
Short purpose of this call for the activity log. Exclude personal data and private source content.
Remove validation rules already expressed in this field’s schema; describe its meaning and usage instead.
llm_model
Use the exact model ID executing this call, from runtime/system context, for usage attribution. Supply it on every Atomic MCP tool call, including discovery and feedback, and update it if the model changes. Use the model ID rather than the client app name. If unavailable, omit it; never guess or ask the user.
The title clearly communicates the tool’s action and subject. Keep it concise.
Description97/100
Bulk create grid columns in one call and return the persisted columns with IDs. Prefer this over repeated create_grid_column calls. Do not call get_grid merely to confirm these returned IDs.
Adds column definitions without executing their workflows. Repeated creation can add more columns; update_grid_column changes an existing definition.
The description explains the capability, when to use it, and what to expect.
Inputs82/100
Explain the meaning of this value, not just its name.
sheetId
Sheet ID from get_grid or create_grid_sheet; the selected sheet must belong to the current project.
Clear enough to supply this argument.
columns › items › name
Column name.
Explain the meaning of this value, not just its name.
columns › items › type
Column type. Defaults to TEXT.
Remove validation rules already expressed in this field’s schema; describe its meaning and usage instead.
columns › items › position
Optional zero-based column position. Defaults to the next available position.
Clear enough to supply this argument.
columns › items › config › type
Type discriminator for this operation or item. Use the supported values in this field's schema.
Remove validation rules already expressed in this field’s schema; describe its meaning and usage instead.
columns › items › config › options › items › name
Human-readable name of the item being created or edited.
Explain the meaning of this value, not just its name.
Display color of this grid select/status option, chosen from the supported palette. This does not change chart or image styling.
Clear enough to supply this argument.
columns › items › requiredInputNames
Workflow input names that must be mapped or hardcoded.
Explain the meaning of this value, not just its name.
projectId
Atomic project ID from list_projects. Omit to use the configured project; if asked to choose, select one of the accessible returned IDs.
Clear enough to supply this argument.
context
Short purpose of this call for the activity log. Exclude personal data and private source content.
Clear enough to supply this argument.
llm_model
Use the exact model ID executing this call, from runtime/system context, for usage attribution. Supply it on every Atomic MCP tool call, including discovery and feedback, and update it if the model changes. Use the model ID rather than the client app name. If unavailable, omit it; never guess or ask the user.
{
"type": "object",
"required": [
"success"
],
"properties": {
"url": {
"type": "string",
"description": "Link for resolving the failure or completing the operation."
},
"data": {
"type": "object",
"required": [
"columns"
],
"properties": {
"columns": {
"type": "array",
"items": {
"type": "object",
"required": [
"sheetId",
"name",
"type",
"position",
"config",
"createdAt",
"updatedAt"
],
"properties": {
"id": {
"type": "number",
"description": "Identifier of this returned resource. Use it for subsequent reads or edits of the same resource."
},
"name": {
"type": "string",
"description": "Human-readable name of this resource."
},
"type": {
"enum": [
"TEXT",
"LONG_TEXT",
"NUMBER",
"CONTENT",
"URL",
"DATE",
"DATETIME",
"SINGLE_SELECT",
"JSON",
"SOCIAL_POST",
"IMAGE_URL",
"FILE",
"WORKFLOW_STEP",
"WORKFLOW"
],
"type": "string",
"description": "Kind of the returned item; determines how its operation-specific fields should be interpreted."
},
"config": {
"type": "object",
"description": "Saved configuration specific to this resource's type."
},
"sheetId": {
"type": "number",
"description": "Grid sheet that owns this row, column or cell."
},
"position": {
"type": "number",
"description": "Saved ordering position or visual editor coordinates for this item."
},
"createdAt": {
"type": "string",
"format": "date-time",
"description": "Date and time this record was created, serialized as ISO 8601."
},
"updatedAt": {
"type": "string",
"format": "date-time",
"description": "Date and time this record was last updated, serialized as ISO 8601."
}
}
},
"description": "Column definitions returned for the selected sheet or table."
}
},
"description": "Operation data; optional fields may be absent."
},
"error": {
"type": "string",
"description": "Why the operation failed."
},
"details": {
"type": "object",
"description": "Diagnostics keyed by errorCode."
},
"message": {
"type": "string",
"description": "Outcome or recovery instructions. Project selection means no action ran."
},
"success": {
"type": "boolean",
"description": "Operation success; on false inspect error/errorCode."
},
"upgrade": {
"type": "object",
"description": "Plan-upgrade guidance for an unavailable capability."
},
"category": {
"type": "string",
"description": "Failure category, such as invalid_input or plan_required."
},
"expected": {
"type": "boolean",
"description": "Whether this is an anticipated access, input, plan or state failure."
},
"projects": {
"type": "array",
"items": {
"type": "object",
"properties": {
"id": {
"type": "number",
"description": "Project ID for projectId."
},
"name": {
"type": "string",
"description": "Project name."
}
},
"description": "Accessible project."
},
"description": "Accessible project choices. Select a projectId and retry."
},
"errorCode": {
"type": "string",
"description": "Failure code for recovery."
},
"retryable": {
"type": "boolean",
"description": "Whether an unchanged request can be retried."
},
"statusCode": {
"type": "number",
"description": "HTTP-style failure status."
},
"executionTime": {
"type": "string",
"description": "Elapsed time in seconds, with an s suffix."
}
},
"description": "Operation result envelope."
}
Original tool metadata
{
"name": "create_grid_columns",
"title": "Create grid columns",
"description": "Bulk create grid columns in one call and return the persisted columns with IDs. Prefer this over repeated create_grid_column calls. Do not call get_grid merely to confirm these returned IDs.\n\nAdds column definitions without executing their workflows. Repeated creation can add more columns; update_grid_column changes an existing definition.",
"inputSchema": {
"type": "object",
"required": [
"sheetId",
"columns"
],
"properties": {
"columns": {
"type": "array",
"items": {
"type": "object",
"required": [
"name"
],
"properties": {
"name": {
"type": "string",
"description": "Column name."
},
"type": {
"enum": [
"TEXT",
"LONG_TEXT",
"NUMBER",
"CONTENT",
"URL",
"DATE",
"DATETIME",
"SINGLE_SELECT",
"JSON",
"SOCIAL_POST",
"IMAGE_URL",
"FILE",
"WORKFLOW_STEP",
"WORKFLOW"
],
"type": "string",
"description": "Column type. Defaults to TEXT."
},
"config": {
"type": "object",
"properties": {
"type": {
"enum": [
"TEXT",
"LONG_TEXT",
"NUMBER",
"CONTENT",
"URL",
"DATE",
"DATETIME",
"SINGLE_SELECT",
"JSON",
"SOCIAL_POST",
"IMAGE_URL",
"FILE",
"WORKFLOW_STEP",
"WORKFLOW"
],
"type": "string",
"description": "Type discriminator for this operation or item. Use the supported values in this field's schema."
},
"options": {
"type": "array",
"items": {
"type": "object",
"required": [
"name",
"color"
],
"properties": {
"name": {
"type": "string",
"minLength": 1,
"description": "Human-readable name of the item being created or edited."
},
"color": {
"enum": [
"#9aa0a6",
"#e06666",
"#f6b26b",
"#ffd966",
"#93c47d",
"#76a5af",
"#6fa8dc",
"#8e7cc3",
"#c27ba0"
],
"type": "string",
"description": "Display color of this grid select/status option, chosen from the supported palette. This does not change chart or image styling."
}
},
"additionalProperties": false
},
"minItems": 1,
"description": "Required for SINGLE_SELECT. Option names must be nonempty and unique."
}
},
"description": "GridColumnConfig. Defaults to TEXT on creation. SINGLE_SELECT requires at least one option with name and an exact supported color; cell values use option names. Example: {\"type\":\"SINGLE_SELECT\",\"options\":[{\"name\":\"To contact\",\"color\":\"#9aa0a6\"}]}. SOCIAL_POST is a dedicated multi-channel draft column with network-specific previews, explicit postType and approval; Supported platform/postType pairs: linkedin: post/image/video; x: post/image/video; substack: article/note; medium: article; reddit: post/link/image/video; facebook: post/image/video; instagram: image/carousel/reel/story; threads: post/image/video; bluesky: post/image/video; mastodon: post/image/video; pinterest: pin; tiktok: video/image/carousel; youtube: video; googlebusiness: post/image. Instagram carousel drafts use postType \"carousel\" and ordered imageUrls (2-10 public HTTPS image URLs), without imageUrl or videoUrl. Optional imageAltTexts must contain one string per image in matching order (empty strings allowed, max 1000 characters per slide). Use the platform-supported postType and required title/media/destination fields; initialize cells with a social_post draft at revision 1, awaiting_approval and empty history. Workflow configs may include workflowStepType, stepConfig, workflowId and inputMappings.",
"additionalProperties": true
},
"position": {
"type": "number",
"description": "Optional zero-based column position. Defaults to the next available position."
},
"requiredInputNames": {
"type": "array",
"items": {
"type": "string"
},
"description": "Workflow input names that must be mapped or hardcoded."
}
}
},
"description": "Columns to create. Each column needs a name and can optionally include type, position, config, and requiredInputNames. Type/config default to TEXT."
},
"context": {
"type": "string",
"maxLength": 120,
"description": "Short purpose of this call for the activity log. Exclude personal data and private source content."
},
"sheetId": {
"type": "number",
"description": "Sheet ID from get_grid or create_grid_sheet; the selected sheet must belong to the current project."
},
"llm_model": {
"type": "string",
"maxLength": 128,
"description": "Use the exact model ID executing this call, from runtime/system context, for usage attribution. Supply it on every Atomic MCP tool call, including discovery and feedback, and update it if the model changes. Use the model ID rather than the client app name. If unavailable, omit it; never guess or ask the user."
},
"projectId": {
"type": "number",
"description": "Atomic project ID from list_projects. Omit to use the configured project; if asked to choose, select one of the accessible returned IDs."
}
}
},
"outputSchema": {
"type": "object",
"required": [
"success"
],
"properties": {
"url": {
"type": "string",
"description": "Link for resolving the failure or completing the operation."
},
"data": {
"type": "object",
"required": [
"columns"
],
"properties": {
"columns": {
"type": "array",
"items": {
"type": "object",
"required": [
"sheetId",
"name",
"type",
"position",
"config",
"createdAt",
"updatedAt"
],
"properties": {
"id": {
"type": "number",
"description": "Identifier of this returned resource. Use it for subsequent reads or edits of the same resource."
},
"name": {
"type": "string",
"description": "Human-readable name of this resource."
},
"type": {
"enum": [
"TEXT",
"LONG_TEXT",
"NUMBER",
"CONTENT",
"URL",
"DATE",
"DATETIME",
"SINGLE_SELECT",
"JSON",
"SOCIAL_POST",
"IMAGE_URL",
"FILE",
"WORKFLOW_STEP",
"WORKFLOW"
],
"type": "string",
"description": "Kind of the returned item; determines how its operation-specific fields should be interpreted."
},
"config": {
"type": "object",
"description": "Saved configuration specific to this resource's type."
},
"sheetId": {
"type": "number",
"description": "Grid sheet that owns this row, column or cell."
},
"position": {
"type": "number",
"description": "Saved ordering position or visual editor coordinates for this item."
},
"createdAt": {
"type": "string",
"format": "date-time",
"description": "Date and time this record was created, serialized as ISO 8601."
},
"updatedAt": {
"type": "string",
"format": "date-time",
"description": "Date and time this record was last updated, serialized as ISO 8601."
}
}
},
"description": "Column definitions returned for the selected sheet or table."
}
},
"description": "Operation data; optional fields may be absent."
},
"error": {
"type": "string",
"description": "Why the operation failed."
},
"details": {
"type": "object",
"description": "Diagnostics keyed by errorCode."
},
"message": {
"type": "string",
"description": "Outcome or recovery instructions. Project selection means no action ran."
},
"success": {
"type": "boolean",
"description": "Operation success; on false inspect error/errorCode."
},
"upgrade": {
"type": "object",
"description": "Plan-upgrade guidance for an unavailable capability."
},
"category": {
"type": "string",
"description": "Failure category, such as invalid_input or plan_required."
},
"expected": {
"type": "boolean",
"description": "Whether this is an anticipated access, input, plan or state failure."
},
"projects": {
"type": "array",
"items": {
"type": "object",
"properties": {
"id": {
"type": "number",
"description": "Project ID for projectId."
},
"name": {
"type": "string",
"description": "Project name."
}
},
"description": "Accessible project."
},
"description": "Accessible project choices. Select a projectId and retry."
},
"errorCode": {
"type": "string",
"description": "Failure code for recovery."
},
"retryable": {
"type": "boolean",
"description": "Whether an unchanged request can be retried."
},
"statusCode": {
"type": "number",
"description": "HTTP-style failure status."
},
"executionTime": {
"type": "string",
"description": "Elapsed time in seconds, with an s suffix."
}
},
"description": "Operation result envelope."
},
"annotations": {
"readOnlyHint": false,
"openWorldHint": false,
"idempotentHint": false,
"destructiveHint": false
}
}
The title clearly communicates the tool’s action and subject. Keep it concise.
Description91/100
Create a grids folder with a name and optional description in the selected project.
Creates a folder for saved grid items, not a new grid item. Use list_grid_folders to inspect existing destinations and update_grid_folder to edit one; repeating create may add another folder.
The description explains the capability, when to use it, and what to expect.
Inputs80/100
Remove validation rules already expressed in this field’s schema; describe its meaning and usage instead.
name
Folder name.
Remove validation rules already expressed in this field’s schema; describe its meaning and usage instead.
description
Folder description. Use an empty string to clear it.
Remove validation rules already expressed in this field’s schema; describe its meaning and usage instead.
projectId
Atomic project ID from list_projects. Omit to use the configured project; if asked to choose, select one of the accessible returned IDs.
Clear enough to supply this argument.
context
Short purpose of this call for the activity log. Exclude personal data and private source content.
Remove validation rules already expressed in this field’s schema; describe its meaning and usage instead.
llm_model
Use the exact model ID executing this call, from runtime/system context, for usage attribution. Supply it on every Atomic MCP tool call, including discovery and feedback, and update it if the model changes. Use the model ID rather than the client app name. If unavailable, omit it; never guess or ask the user.
Remove validation rules already expressed in this field’s schema; describe its meaning and usage instead.
{
"type": "object",
"required": [
"success"
],
"properties": {
"url": {
"type": "string",
"description": "Link for resolving the failure or completing the operation."
},
"data": {
"type": "object",
"required": [
"id",
"projectId",
"collection",
"name",
"description"
],
"properties": {
"id": {
"type": "number",
"description": "Identifier of this returned resource. Use it for subsequent reads or edits of the same resource."
},
"name": {
"type": "string",
"description": "Human-readable name of this resource."
},
"projectId": {
"type": "number",
"description": "Atomic project that owns this resource."
},
"collection": {
"enum": [
"content",
"grids",
"workflows",
"reports"
],
"type": "string",
"description": "Atomic collection that owns these folders or items."
},
"description": {
"type": "string",
"description": "Saved description of this resource or its purpose."
}
},
"description": "Operation data; optional fields may be absent."
},
"error": {
"type": "string",
"description": "Why the operation failed."
},
"details": {
"type": "object",
"description": "Diagnostics keyed by errorCode."
},
"message": {
"type": "string",
"description": "Outcome or recovery instructions. Project selection means no action ran."
},
"success": {
"type": "boolean",
"description": "Operation success; on false inspect error/errorCode."
},
"upgrade": {
"type": "object",
"description": "Plan-upgrade guidance for an unavailable capability."
},
"category": {
"type": "string",
"description": "Failure category, such as invalid_input or plan_required."
},
"expected": {
"type": "boolean",
"description": "Whether this is an anticipated access, input, plan or state failure."
},
"projects": {
"type": "array",
"items": {
"type": "object",
"properties": {
"id": {
"type": "number",
"description": "Project ID for projectId."
},
"name": {
"type": "string",
"description": "Project name."
}
},
"description": "Accessible project."
},
"description": "Accessible project choices. Select a projectId and retry."
},
"errorCode": {
"type": "string",
"description": "Failure code for recovery."
},
"retryable": {
"type": "boolean",
"description": "Whether an unchanged request can be retried."
},
"statusCode": {
"type": "number",
"description": "HTTP-style failure status."
},
"executionTime": {
"type": "string",
"description": "Elapsed time in seconds, with an s suffix."
}
},
"description": "Operation result envelope."
}
Original tool metadata
{
"name": "create_grid_folder",
"title": "Create grid folder",
"description": "Create a grids folder with a name and optional description in the selected project.\n\nCreates a folder for saved grid items, not a new grid item. Use list_grid_folders to inspect existing destinations and update_grid_folder to edit one; repeating create may add another folder.",
"inputSchema": {
"type": "object",
"required": [
"name"
],
"properties": {
"name": {
"type": "string",
"maxLength": 120,
"minLength": 1,
"description": "Folder name."
},
"context": {
"type": "string",
"maxLength": 120,
"description": "Short purpose of this call for the activity log. Exclude personal data and private source content."
},
"llm_model": {
"type": "string",
"maxLength": 128,
"description": "Use the exact model ID executing this call, from runtime/system context, for usage attribution. Supply it on every Atomic MCP tool call, including discovery and feedback, and update it if the model changes. Use the model ID rather than the client app name. If unavailable, omit it; never guess or ask the user."
},
"projectId": {
"type": "number",
"description": "Atomic project ID from list_projects. Omit to use the configured project; if asked to choose, select one of the accessible returned IDs."
},
"description": {
"type": "string",
"maxLength": 2000,
"description": "Folder description. Use an empty string to clear it."
}
},
"additionalProperties": false
},
"outputSchema": {
"type": "object",
"required": [
"success"
],
"properties": {
"url": {
"type": "string",
"description": "Link for resolving the failure or completing the operation."
},
"data": {
"type": "object",
"required": [
"id",
"projectId",
"collection",
"name",
"description"
],
"properties": {
"id": {
"type": "number",
"description": "Identifier of this returned resource. Use it for subsequent reads or edits of the same resource."
},
"name": {
"type": "string",
"description": "Human-readable name of this resource."
},
"projectId": {
"type": "number",
"description": "Atomic project that owns this resource."
},
"collection": {
"enum": [
"content",
"grids",
"workflows",
"reports"
],
"type": "string",
"description": "Atomic collection that owns these folders or items."
},
"description": {
"type": "string",
"description": "Saved description of this resource or its purpose."
}
},
"description": "Operation data; optional fields may be absent."
},
"error": {
"type": "string",
"description": "Why the operation failed."
},
"details": {
"type": "object",
"description": "Diagnostics keyed by errorCode."
},
"message": {
"type": "string",
"description": "Outcome or recovery instructions. Project selection means no action ran."
},
"success": {
"type": "boolean",
"description": "Operation success; on false inspect error/errorCode."
},
"upgrade": {
"type": "object",
"description": "Plan-upgrade guidance for an unavailable capability."
},
"category": {
"type": "string",
"description": "Failure category, such as invalid_input or plan_required."
},
"expected": {
"type": "boolean",
"description": "Whether this is an anticipated access, input, plan or state failure."
},
"projects": {
"type": "array",
"items": {
"type": "object",
"properties": {
"id": {
"type": "number",
"description": "Project ID for projectId."
},
"name": {
"type": "string",
"description": "Project name."
}
},
"description": "Accessible project."
},
"description": "Accessible project choices. Select a projectId and retry."
},
"errorCode": {
"type": "string",
"description": "Failure code for recovery."
},
"retryable": {
"type": "boolean",
"description": "Whether an unchanged request can be retried."
},
"statusCode": {
"type": "number",
"description": "HTTP-style failure status."
},
"executionTime": {
"type": "string",
"description": "Elapsed time in seconds, with an s suffix."
}
},
"description": "Operation result envelope."
},
"annotations": {
"readOnlyHint": false,
"openWorldHint": false,
"idempotentHint": false,
"destructiveHint": false
}
}
The title clearly communicates the tool’s action and subject. Keep it concise.
Description88/100
Create one row in a grid sheet. Use update_grid_cell afterwards to write generated values.
Creates one empty row. create_grid_rows creates populated rows and requires cells, so it is not a replacement when an intentionally empty row is needed.
The description explains the capability, when to use it, and what to expect.
Inputs95/100
Remove validation rules already expressed in this field’s schema; describe its meaning and usage instead.
sheetId
Sheet ID from get_grid or create_grid_sheet; the selected sheet must belong to the current project.
Clear enough to supply this argument.
position
Optional zero-based row position. Defaults to the end.
Clear enough to supply this argument.
projectId
Atomic project ID from list_projects. Omit to use the configured project; if asked to choose, select one of the accessible returned IDs.
Clear enough to supply this argument.
context
Short purpose of this call for the activity log. Exclude personal data and private source content.
Remove validation rules already expressed in this field’s schema; describe its meaning and usage instead.
llm_model
Use the exact model ID executing this call, from runtime/system context, for usage attribution. Supply it on every Atomic MCP tool call, including discovery and feedback, and update it if the model changes. Use the model ID rather than the client app name. If unavailable, omit it; never guess or ask the user.
{
"type": "object",
"required": [
"success"
],
"properties": {
"url": {
"type": "string",
"description": "Link for resolving the failure or completing the operation."
},
"data": {
"type": "object",
"required": [
"sheetId",
"position",
"createdAt",
"updatedAt"
],
"properties": {
"id": {
"type": "number",
"description": "Identifier of this returned resource. Use it for subsequent reads or edits of the same resource."
},
"sheetId": {
"type": "number",
"description": "Grid sheet that owns this row, column or cell."
},
"position": {
"type": "number",
"description": "Saved ordering position or visual editor coordinates for this item."
},
"createdAt": {
"type": "string",
"format": "date-time",
"description": "Date and time this record was created, serialized as ISO 8601."
},
"updatedAt": {
"type": "string",
"format": "date-time",
"description": "Date and time this record was last updated, serialized as ISO 8601."
}
},
"description": "Operation data; optional fields may be absent."
},
"error": {
"type": "string",
"description": "Why the operation failed."
},
"details": {
"type": "object",
"description": "Diagnostics keyed by errorCode."
},
"message": {
"type": "string",
"description": "Outcome or recovery instructions. Project selection means no action ran."
},
"success": {
"type": "boolean",
"description": "Operation success; on false inspect error/errorCode."
},
"upgrade": {
"type": "object",
"description": "Plan-upgrade guidance for an unavailable capability."
},
"category": {
"type": "string",
"description": "Failure category, such as invalid_input or plan_required."
},
"expected": {
"type": "boolean",
"description": "Whether this is an anticipated access, input, plan or state failure."
},
"projects": {
"type": "array",
"items": {
"type": "object",
"properties": {
"id": {
"type": "number",
"description": "Project ID for projectId."
},
"name": {
"type": "string",
"description": "Project name."
}
},
"description": "Accessible project."
},
"description": "Accessible project choices. Select a projectId and retry."
},
"errorCode": {
"type": "string",
"description": "Failure code for recovery."
},
"retryable": {
"type": "boolean",
"description": "Whether an unchanged request can be retried."
},
"statusCode": {
"type": "number",
"description": "HTTP-style failure status."
},
"executionTime": {
"type": "string",
"description": "Elapsed time in seconds, with an s suffix."
}
},
"description": "Operation result envelope."
}
Original tool metadata
{
"name": "create_grid_row",
"title": "Create grid row",
"description": "Create one row in a grid sheet. Use update_grid_cell afterwards to write generated values.\n\nCreates one empty row. create_grid_rows creates populated rows and requires cells, so it is not a replacement when an intentionally empty row is needed.",
"inputSchema": {
"type": "object",
"required": [
"sheetId"
],
"properties": {
"context": {
"type": "string",
"maxLength": 120,
"description": "Short purpose of this call for the activity log. Exclude personal data and private source content."
},
"sheetId": {
"type": "number",
"description": "Sheet ID from get_grid or create_grid_sheet; the selected sheet must belong to the current project."
},
"position": {
"type": "number",
"description": "Optional zero-based row position. Defaults to the end."
},
"llm_model": {
"type": "string",
"maxLength": 128,
"description": "Use the exact model ID executing this call, from runtime/system context, for usage attribution. Supply it on every Atomic MCP tool call, including discovery and feedback, and update it if the model changes. Use the model ID rather than the client app name. If unavailable, omit it; never guess or ask the user."
},
"projectId": {
"type": "number",
"description": "Atomic project ID from list_projects. Omit to use the configured project; if asked to choose, select one of the accessible returned IDs."
}
}
},
"outputSchema": {
"type": "object",
"required": [
"success"
],
"properties": {
"url": {
"type": "string",
"description": "Link for resolving the failure or completing the operation."
},
"data": {
"type": "object",
"required": [
"sheetId",
"position",
"createdAt",
"updatedAt"
],
"properties": {
"id": {
"type": "number",
"description": "Identifier of this returned resource. Use it for subsequent reads or edits of the same resource."
},
"sheetId": {
"type": "number",
"description": "Grid sheet that owns this row, column or cell."
},
"position": {
"type": "number",
"description": "Saved ordering position or visual editor coordinates for this item."
},
"createdAt": {
"type": "string",
"format": "date-time",
"description": "Date and time this record was created, serialized as ISO 8601."
},
"updatedAt": {
"type": "string",
"format": "date-time",
"description": "Date and time this record was last updated, serialized as ISO 8601."
}
},
"description": "Operation data; optional fields may be absent."
},
"error": {
"type": "string",
"description": "Why the operation failed."
},
"details": {
"type": "object",
"description": "Diagnostics keyed by errorCode."
},
"message": {
"type": "string",
"description": "Outcome or recovery instructions. Project selection means no action ran."
},
"success": {
"type": "boolean",
"description": "Operation success; on false inspect error/errorCode."
},
"upgrade": {
"type": "object",
"description": "Plan-upgrade guidance for an unavailable capability."
},
"category": {
"type": "string",
"description": "Failure category, such as invalid_input or plan_required."
},
"expected": {
"type": "boolean",
"description": "Whether this is an anticipated access, input, plan or state failure."
},
"projects": {
"type": "array",
"items": {
"type": "object",
"properties": {
"id": {
"type": "number",
"description": "Project ID for projectId."
},
"name": {
"type": "string",
"description": "Project name."
}
},
"description": "Accessible project."
},
"description": "Accessible project choices. Select a projectId and retry."
},
"errorCode": {
"type": "string",
"description": "Failure code for recovery."
},
"retryable": {
"type": "boolean",
"description": "Whether an unchanged request can be retried."
},
"statusCode": {
"type": "number",
"description": "HTTP-style failure status."
},
"executionTime": {
"type": "string",
"description": "Elapsed time in seconds, with an s suffix."
}
},
"description": "Operation result envelope."
},
"annotations": {
"readOnlyHint": false,
"openWorldHint": false,
"idempotentHint": false,
"destructiveHint": false
}
}
The title clearly communicates the tool’s action and subject. Keep it concise.
Description97/100
Bulk create populated grid rows and return the persisted rows/cells with IDs. Every row must contain at least one cell. Prefer this over repeated row/cell calls. Use a scoped read only when the task explicitly requires cross-row persistence verification.
Creates populated rows without running workflow cells. Repeated submissions can create duplicates unless the requested domain exclusion applies; update_grid_cells edits existing rows instead.
The description explains the capability, when to use it, and what to expect.
Inputs87/100
Explain the meaning of this value, not just its name.
sheetId
Sheet ID from get_grid or create_grid_sheet; the selected sheet must belong to the current project.
Clear enough to supply this argument.
excludeExistingTargetDomains
Exclude rows whose Target page domain already exists in this sheet or the submitted batch. Defaults to false.
Clear enough to supply this argument.
rows › items › position
Optional zero-based row position. Defaults to the next available position.
Clear enough to supply this argument.
rows › items › cells › items › columnId
Target column ID in the sheet.
Clear enough to supply this argument.
rows › items › cells › items › value
Value to write into the cell.
Explain the meaning of this value, not just its name.
projectId
Atomic project ID from list_projects. Omit to use the configured project; if asked to choose, select one of the accessible returned IDs.
Clear enough to supply this argument.
context
Short purpose of this call for the activity log. Exclude personal data and private source content.
Remove validation rules already expressed in this field’s schema; describe its meaning and usage instead.
llm_model
Use the exact model ID executing this call, from runtime/system context, for usage attribution. Supply it on every Atomic MCP tool call, including discovery and feedback, and update it if the model changes. Use the model ID rather than the client app name. If unavailable, omit it; never guess or ask the user.
{
"type": "object",
"required": [
"success"
],
"properties": {
"url": {
"type": "string",
"description": "Link for resolving the failure or completing the operation."
},
"data": {
"type": "object",
"required": [
"rows",
"cells"
],
"properties": {
"rows": {
"type": "array",
"items": {
"type": "object",
"required": [
"sheetId",
"position",
"createdAt",
"updatedAt"
],
"properties": {
"id": {
"type": "number",
"description": "Identifier of this returned resource. Use it for subsequent reads or edits of the same resource."
},
"sheetId": {
"type": "number",
"description": "Grid sheet that owns this row, column or cell."
},
"position": {
"type": "number",
"description": "Saved ordering position or visual editor coordinates for this item."
},
"createdAt": {
"type": "string",
"format": "date-time",
"description": "Date and time this record was created, serialized as ISO 8601."
},
"updatedAt": {
"type": "string",
"format": "date-time",
"description": "Date and time this record was last updated, serialized as ISO 8601."
}
}
},
"description": "Rows returned for the selected sheet, table or reporting query."
},
"cells": {
"type": "array",
"items": {
"type": "object",
"required": [
"rowId",
"columnId",
"status",
"createdAt",
"updatedAt"
],
"properties": {
"id": {
"type": "number",
"description": "Identifier of this returned resource. Use it for subsequent reads or edits of the same resource."
},
"error": {
"anyOf": [
{
"type": "null"
},
{
"type": "string"
}
],
"description": "Failure details reported by this operation or its provider."
},
"rowId": {
"type": "number",
"description": "Grid row identifier for this item."
},
"value": {
"description": "Returned value for the containing field, setting or observation."
},
"status": {
"enum": [
"EMPTY",
"PENDING",
"RUNNING",
"WAITING_FOR_APPROVAL",
"COMPLETED",
"FAILED",
"CANCELED"
],
"type": "string",
"description": "Current saved or execution state reported by the operation."
},
"columnId": {
"type": "number",
"description": "Grid column identifier for this item."
},
"createdAt": {
"type": "string",
"format": "date-time",
"description": "Date and time this record was created, serialized as ISO 8601."
},
"updatedAt": {
"type": "string",
"format": "date-time",
"description": "Date and time this record was last updated, serialized as ISO 8601."
},
"scheduledAt": {
"anyOf": [
{
"type": "null"
},
{
"type": "string",
"format": "date-time",
"description": "Timestamp serialized as an ISO 8601 date and time."
}
],
"description": "Date and time this task or publication is scheduled to run."
},
"workflowRunId": {
"anyOf": [
{
"type": "null"
},
{
"type": "number"
}
],
"description": "Workflow execution associated with this result, distinct from its definition ID."
},
"workflowStepTestRunId": {
"anyOf": [
{
"type": "null"
},
{
"type": "number"
}
],
"description": "Existing workflow step test execution associated with this result."
}
}
}
}
},
"description": "Operation data; optional fields may be absent."
},
"error": {
"type": "string",
"description": "Why the operation failed."
},
"details": {
"type": "object",
"description": "Diagnostics keyed by errorCode."
},
"message": {
"type": "string",
"description": "Outcome or recovery instructions. Project selection means no action ran."
},
"success": {
"type": "boolean",
"description": "Operation success; on false inspect error/errorCode."
},
"upgrade": {
"type": "object",
"description": "Plan-upgrade guidance for an unavailable capability."
},
"category": {
"type": "string",
"description": "Failure category, such as invalid_input or plan_required."
},
"expected": {
"type": "boolean",
"description": "Whether this is an anticipated access, input, plan or state failure."
},
"projects": {
"type": "array",
"items": {
"type": "object",
"properties": {
"id": {
"type": "number",
"description": "Project ID for projectId."
},
"name": {
"type": "string",
"description": "Project name."
}
},
"description": "Accessible project."
},
"description": "Accessible project choices. Select a projectId and retry."
},
"errorCode": {
"type": "string",
"description": "Failure code for recovery."
},
"retryable": {
"type": "boolean",
"description": "Whether an unchanged request can be retried."
},
"statusCode": {
"type": "number",
"description": "HTTP-style failure status."
},
"executionTime": {
"type": "string",
"description": "Elapsed time in seconds, with an s suffix."
}
},
"description": "Operation result envelope."
}
Original tool metadata
{
"name": "create_grid_rows",
"title": "Create grid rows",
"description": "Bulk create populated grid rows and return the persisted rows/cells with IDs. Every row must contain at least one cell. Prefer this over repeated row/cell calls. Use a scoped read only when the task explicitly requires cross-row persistence verification.\n\nCreates populated rows without running workflow cells. Repeated submissions can create duplicates unless the requested domain exclusion applies; update_grid_cells edits existing rows instead.",
"inputSchema": {
"type": "object",
"required": [
"sheetId",
"rows"
],
"properties": {
"rows": {
"type": "array",
"items": {
"type": "object",
"required": [
"cells"
],
"properties": {
"cells": {
"type": "array",
"items": {
"type": "object",
"required": [
"columnId",
"value"
],
"properties": {
"value": {
"description": "Value to write into the cell."
},
"columnId": {
"type": "number",
"description": "Target column ID in the sheet."
}
},
"additionalProperties": false
},
"maxItems": 500000,
"minItems": 1,
"description": "Non-empty cell values for this row."
},
"position": {
"type": "number",
"description": "Optional zero-based row position. Defaults to the next available position."
}
},
"additionalProperties": false
},
"maxItems": 5000,
"minItems": 1,
"description": "Populated rows to create. Pass cells as explicit columnId/value pairs, for example { \"cells\": [{ \"columnId\": 31, \"value\": \"omnius\" }, { \"columnId\": 32, \"value\": 158 }] }."
},
"context": {
"type": "string",
"maxLength": 120,
"description": "Short purpose of this call for the activity log. Exclude personal data and private source content."
},
"sheetId": {
"type": "number",
"description": "Sheet ID from get_grid or create_grid_sheet; the selected sheet must belong to the current project."
},
"llm_model": {
"type": "string",
"maxLength": 128,
"description": "Use the exact model ID executing this call, from runtime/system context, for usage attribution. Supply it on every Atomic MCP tool call, including discovery and feedback, and update it if the model changes. Use the model ID rather than the client app name. If unavailable, omit it; never guess or ask the user."
},
"projectId": {
"type": "number",
"description": "Atomic project ID from list_projects. Omit to use the configured project; if asked to choose, select one of the accessible returned IDs."
},
"excludeExistingTargetDomains": {
"type": "boolean",
"description": "Exclude rows whose Target page domain already exists in this sheet or the submitted batch. Defaults to false."
}
},
"additionalProperties": false
},
"outputSchema": {
"type": "object",
"required": [
"success"
],
"properties": {
"url": {
"type": "string",
"description": "Link for resolving the failure or completing the operation."
},
"data": {
"type": "object",
"required": [
"rows",
"cells"
],
"properties": {
"rows": {
"type": "array",
"items": {
"type": "object",
"required": [
"sheetId",
"position",
"createdAt",
"updatedAt"
],
"properties": {
"id": {
"type": "number",
"description": "Identifier of this returned resource. Use it for subsequent reads or edits of the same resource."
},
"sheetId": {
"type": "number",
"description": "Grid sheet that owns this row, column or cell."
},
"position": {
"type": "number",
"description": "Saved ordering position or visual editor coordinates for this item."
},
"createdAt": {
"type": "string",
"format": "date-time",
"description": "Date and time this record was created, serialized as ISO 8601."
},
"updatedAt": {
"type": "string",
"format": "date-time",
"description": "Date and time this record was last updated, serialized as ISO 8601."
}
}
},
"description": "Rows returned for the selected sheet, table or reporting query."
},
"cells": {
"type": "array",
"items": {
"type": "object",
"required": [
"rowId",
"columnId",
"status",
"createdAt",
"updatedAt"
],
"properties": {
"id": {
"type": "number",
"description": "Identifier of this returned resource. Use it for subsequent reads or edits of the same resource."
},
"error": {
"anyOf": [
{
"type": "null"
},
{
"type": "string"
}
],
"description": "Failure details reported by this operation or its provider."
},
"rowId": {
"type": "number",
"description": "Grid row identifier for this item."
},
"value": {
"description": "Returned value for the containing field, setting or observation."
},
"status": {
"enum": [
"EMPTY",
"PENDING",
"RUNNING",
"WAITING_FOR_APPROVAL",
"COMPLETED",
"FAILED",
"CANCELED"
],
"type": "string",
"description": "Current saved or execution state reported by the operation."
},
"columnId": {
"type": "number",
"description": "Grid column identifier for this item."
},
"createdAt": {
"type": "string",
"format": "date-time",
"description": "Date and time this record was created, serialized as ISO 8601."
},
"updatedAt": {
"type": "string",
"format": "date-time",
"description": "Date and time this record was last updated, serialized as ISO 8601."
},
"scheduledAt": {
"anyOf": [
{
"type": "null"
},
{
"type": "string",
"format": "date-time",
"description": "Timestamp serialized as an ISO 8601 date and time."
}
],
"description": "Date and time this task or publication is scheduled to run."
},
"workflowRunId": {
"anyOf": [
{
"type": "null"
},
{
"type": "number"
}
],
"description": "Workflow execution associated with this result, distinct from its definition ID."
},
"workflowStepTestRunId": {
"anyOf": [
{
"type": "null"
},
{
"type": "number"
}
],
"description": "Existing workflow step test execution associated with this result."
}
}
}
}
},
"description": "Operation data; optional fields may be absent."
},
"error": {
"type": "string",
"description": "Why the operation failed."
},
"details": {
"type": "object",
"description": "Diagnostics keyed by errorCode."
},
"message": {
"type": "string",
"description": "Outcome or recovery instructions. Project selection means no action ran."
},
"success": {
"type": "boolean",
"description": "Operation success; on false inspect error/errorCode."
},
"upgrade": {
"type": "object",
"description": "Plan-upgrade guidance for an unavailable capability."
},
"category": {
"type": "string",
"description": "Failure category, such as invalid_input or plan_required."
},
"expected": {
"type": "boolean",
"description": "Whether this is an anticipated access, input, plan or state failure."
},
"projects": {
"type": "array",
"items": {
"type": "object",
"properties": {
"id": {
"type": "number",
"description": "Project ID for projectId."
},
"name": {
"type": "string",
"description": "Project name."
}
},
"description": "Accessible project."
},
"description": "Accessible project choices. Select a projectId and retry."
},
"errorCode": {
"type": "string",
"description": "Failure code for recovery."
},
"retryable": {
"type": "boolean",
"description": "Whether an unchanged request can be retried."
},
"statusCode": {
"type": "number",
"description": "HTTP-style failure status."
},
"executionTime": {
"type": "string",
"description": "Elapsed time in seconds, with an s suffix."
}
},
"description": "Operation result envelope."
},
"annotations": {
"readOnlyHint": false,
"openWorldHint": false,
"idempotentHint": false,
"destructiveHint": false
}
}
The title clearly communicates the tool’s action and subject. Keep it concise.
Description87/100
Create a sheet inside an existing grid. Optionally define initial columns in the same call; prefer that when creating a generated dataset with a known structure.
Adds a sheet without running workflow columns. Use get_grid to inspect existing sheets; update_grid_sheet changes a sheet name instead of creating another.
The description explains the capability, when to use it, and what to expect.
Inputs81/100
Explain the meaning of this value, not just its name.
gridId
Existing project grid ID from get_grids or create_grid.
Clear enough to supply this argument.
name
Optional sheet name. Defaults to the next Sheet N name.
Clear enough to supply this argument.
position
Optional zero-based sheet position. Defaults to the end.
Clear enough to supply this argument.
columns › items › name
Column name.
Explain the meaning of this value, not just its name.
columns › items › type
Column type. Defaults to TEXT.
Remove validation rules already expressed in this field’s schema; describe its meaning and usage instead.
columns › items › position
Optional zero-based column position. Defaults to the item order.
Clear enough to supply this argument.
columns › items › config › type
Type discriminator for this operation or item. Use the supported values in this field's schema.
Remove validation rules already expressed in this field’s schema; describe its meaning and usage instead.
columns › items › config › options › items › name
Human-readable name of the item being created or edited.
Resolve the mismatch between this description and its schema constraints.
Display color of this grid select/status option, chosen from the supported palette. This does not change chart or image styling.
Clear enough to supply this argument.
columns › items › requiredInputNames
Workflow input names that must be mapped or hardcoded.
Explain the meaning of this value, not just its name.
projectId
Atomic project ID from list_projects. Omit to use the configured project; if asked to choose, select one of the accessible returned IDs.
Clear enough to supply this argument.
context
Short purpose of this call for the activity log. Exclude personal data and private source content.
Clear enough to supply this argument.
llm_model
Use the exact model ID executing this call, from runtime/system context, for usage attribution. Supply it on every Atomic MCP tool call, including discovery and feedback, and update it if the model changes. Use the model ID rather than the client app name. If unavailable, omit it; never guess or ask the user.
{
"type": "object",
"required": [
"success"
],
"properties": {
"url": {
"type": "string",
"description": "Link for resolving the failure or completing the operation."
},
"data": {
"type": "object",
"required": [
"columns",
"rows",
"cells",
"gridId",
"name",
"position",
"createdAt",
"updatedAt"
],
"properties": {
"id": {
"type": "number",
"description": "Identifier of this returned resource. Use it for subsequent reads or edits of the same resource."
},
"name": {
"type": "string",
"description": "Human-readable name of this resource."
},
"rows": {
"type": "array",
"items": {
"type": "object",
"required": [
"sheetId",
"position",
"createdAt",
"updatedAt"
],
"properties": {
"id": {
"type": "number",
"description": "Identifier of this returned resource. Use it for subsequent reads or edits of the same resource."
},
"sheetId": {
"type": "number",
"description": "Grid sheet that owns this row, column or cell."
},
"position": {
"type": "number",
"description": "Saved ordering position or visual editor coordinates for this item."
},
"createdAt": {
"type": "string",
"format": "date-time",
"description": "Date and time this record was created, serialized as ISO 8601."
},
"updatedAt": {
"type": "string",
"format": "date-time",
"description": "Date and time this record was last updated, serialized as ISO 8601."
}
}
},
"description": "Rows returned for the selected sheet, table or reporting query."
},
"cells": {
"type": "array",
"items": {
"type": "object",
"required": [
"rowId",
"columnId",
"status",
"createdAt",
"updatedAt"
],
"properties": {
"id": {
"type": "number",
"description": "Identifier of this returned resource. Use it for subsequent reads or edits of the same resource."
},
"error": {
"anyOf": [
{
"type": "null"
},
{
"type": "string"
}
],
"description": "Failure details reported by this operation or its provider."
},
"rowId": {
"type": "number",
"description": "Grid row identifier for this item."
},
"value": {
"description": "Returned value for the containing field, setting or observation."
},
"status": {
"enum": [
"EMPTY",
"PENDING",
"RUNNING",
"WAITING_FOR_APPROVAL",
"COMPLETED",
"FAILED",
"CANCELED"
],
"type": "string",
"description": "Current saved or execution state reported by the operation."
},
"columnId": {
"type": "number",
"description": "Grid column identifier for this item."
},
"createdAt": {
"type": "string",
"format": "date-time",
"description": "Date and time this record was created, serialized as ISO 8601."
},
"updatedAt": {
"type": "string",
"format": "date-time",
"description": "Date and time this record was last updated, serialized as ISO 8601."
},
"scheduledAt": {
"anyOf": [
{
"type": "null"
},
{
"type": "string",
"format": "date-time",
"description": "Timestamp serialized as an ISO 8601 date and time."
}
],
"description": "Date and time this task or publication is scheduled to run."
},
"workflowRunId": {
"anyOf": [
{
"type": "null"
},
{
"type": "number"
}
],
"description": "Workflow execution associated with this result, distinct from its definition ID."
},
"workflowStepTestRunId": {
"anyOf": [
{
"type": "null"
},
{
"type": "number"
}
],
"description": "Existing workflow step test execution associated with this result."
}
}
}
},
"gridId": {
"type": "number",
"description": "Grid that owns these sheets or results."
},
"columns": {
"type": "array",
"items": {
"type": "object",
"required": [
"sheetId",
"name",
"type",
"position",
"config",
"createdAt",
"updatedAt"
],
"properties": {
"id": {
"type": "number",
"description": "Identifier of this returned resource. Use it for subsequent reads or edits of the same resource."
},
"name": {
"type": "string",
"description": "Human-readable name of this resource."
},
"type": {
"enum": [
"TEXT",
"LONG_TEXT",
"NUMBER",
"CONTENT",
"URL",
"DATE",
"DATETIME",
"SINGLE_SELECT",
"JSON",
"SOCIAL_POST",
"IMAGE_URL",
"FILE",
"WORKFLOW_STEP",
"WORKFLOW"
],
"type": "string",
"description": "Kind of the returned item; determines how its operation-specific fields should be interpreted."
},
"config": {
"type": "object",
"description": "Saved configuration specific to this resource's type."
},
"sheetId": {
"type": "number",
"description": "Grid sheet that owns this row, column or cell."
},
"position": {
"type": "number",
"description": "Saved ordering position or visual editor coordinates for this item."
},
"createdAt": {
"type": "string",
"format": "date-time",
"description": "Date and time this record was created, serialized as ISO 8601."
},
"updatedAt": {
"type": "string",
"format": "date-time",
"description": "Date and time this record was last updated, serialized as ISO 8601."
}
}
},
"description": "Column definitions returned for the selected sheet or table."
},
"position": {
"type": "number",
"description": "Saved ordering position or visual editor coordinates for this item."
},
"createdAt": {
"type": "string",
"format": "date-time",
"description": "Date and time this record was created, serialized as ISO 8601."
},
"updatedAt": {
"type": "string",
"format": "date-time",
"description": "Date and time this record was last updated, serialized as ISO 8601."
}
},
"description": "Operation data; optional fields may be absent."
},
"error": {
"type": "string",
"description": "Why the operation failed."
},
"details": {
"type": "object",
"description": "Diagnostics keyed by errorCode."
},
"message": {
"type": "string",
"description": "Outcome or recovery instructions. Project selection means no action ran."
},
"success": {
"type": "boolean",
"description": "Operation success; on false inspect error/errorCode."
},
"upgrade": {
"type": "object",
"description": "Plan-upgrade guidance for an unavailable capability."
},
"category": {
"type": "string",
"description": "Failure category, such as invalid_input or plan_required."
},
"expected": {
"type": "boolean",
"description": "Whether this is an anticipated access, input, plan or state failure."
},
"projects": {
"type": "array",
"items": {
"type": "object",
"properties": {
"id": {
"type": "number",
"description": "Project ID for projectId."
},
"name": {
"type": "string",
"description": "Project name."
}
},
"description": "Accessible project."
},
"description": "Accessible project choices. Select a projectId and retry."
},
"errorCode": {
"type": "string",
"description": "Failure code for recovery."
},
"retryable": {
"type": "boolean",
"description": "Whether an unchanged request can be retried."
},
"statusCode": {
"type": "number",
"description": "HTTP-style failure status."
},
"executionTime": {
"type": "string",
"description": "Elapsed time in seconds, with an s suffix."
}
},
"description": "Operation result envelope."
}
Original tool metadata
{
"name": "create_grid_sheet",
"title": "Create grid sheet",
"description": "Create a sheet inside an existing grid. Optionally define initial columns in the same call; prefer that when creating a generated dataset with a known structure.\n\nAdds a sheet without running workflow columns. Use get_grid to inspect existing sheets; update_grid_sheet changes a sheet name instead of creating another.",
"inputSchema": {
"type": "object",
"required": [
"gridId"
],
"properties": {
"name": {
"type": "string",
"description": "Optional sheet name. Defaults to the next Sheet N name."
},
"gridId": {
"type": "number",
"description": "Existing project grid ID from get_grids or create_grid."
},
"columns": {
"type": "array",
"items": {
"type": "object",
"required": [
"name"
],
"properties": {
"name": {
"type": "string",
"description": "Column name."
},
"type": {
"enum": [
"TEXT",
"LONG_TEXT",
"NUMBER",
"CONTENT",
"URL",
"DATE",
"DATETIME",
"SINGLE_SELECT",
"JSON",
"SOCIAL_POST",
"IMAGE_URL",
"FILE",
"WORKFLOW_STEP",
"WORKFLOW"
],
"type": "string",
"description": "Column type. Defaults to TEXT."
},
"config": {
"type": "object",
"properties": {
"type": {
"enum": [
"TEXT",
"LONG_TEXT",
"NUMBER",
"CONTENT",
"URL",
"DATE",
"DATETIME",
"SINGLE_SELECT",
"JSON",
"SOCIAL_POST",
"IMAGE_URL",
"FILE",
"WORKFLOW_STEP",
"WORKFLOW"
],
"type": "string",
"description": "Type discriminator for this operation or item. Use the supported values in this field's schema."
},
"options": {
"type": "array",
"items": {
"type": "object",
"required": [
"name",
"color"
],
"properties": {
"name": {
"type": "string",
"minLength": 1,
"description": "Human-readable name of the item being created or edited."
},
"color": {
"enum": [
"#9aa0a6",
"#e06666",
"#f6b26b",
"#ffd966",
"#93c47d",
"#76a5af",
"#6fa8dc",
"#8e7cc3",
"#c27ba0"
],
"type": "string",
"description": "Display color of this grid select/status option, chosen from the supported palette. This does not change chart or image styling."
}
},
"additionalProperties": false
},
"minItems": 1,
"description": "Required for SINGLE_SELECT. Option names must be nonempty and unique."
}
},
"description": "GridColumnConfig. Defaults to TEXT on creation. SINGLE_SELECT requires at least one option with name and an exact supported color; cell values use option names. Example: {\"type\":\"SINGLE_SELECT\",\"options\":[{\"name\":\"To contact\",\"color\":\"#9aa0a6\"}]}. SOCIAL_POST is a dedicated multi-channel draft column with network-specific previews, explicit postType and approval; Supported platform/postType pairs: linkedin: post/image/video; x: post/image/video; substack: article/note; medium: article; reddit: post/link/image/video; facebook: post/image/video; instagram: image/carousel/reel/story; threads: post/image/video; bluesky: post/image/video; mastodon: post/image/video; pinterest: pin; tiktok: video/image/carousel; youtube: video; googlebusiness: post/image. Instagram carousel drafts use postType \"carousel\" and ordered imageUrls (2-10 public HTTPS image URLs), without imageUrl or videoUrl. Optional imageAltTexts must contain one string per image in matching order (empty strings allowed, max 1000 characters per slide). Use the platform-supported postType and required title/media/destination fields; initialize cells with a social_post draft at revision 1, awaiting_approval and empty history. Workflow configs may include workflowStepType, stepConfig, workflowId and inputMappings.",
"additionalProperties": true
},
"position": {
"type": "number",
"description": "Optional zero-based column position. Defaults to the item order."
},
"requiredInputNames": {
"type": "array",
"items": {
"type": "string"
},
"description": "Workflow input names that must be mapped or hardcoded."
}
}
},
"description": "Optional initial sheet columns. Each column needs a name and can optionally include type, position, config, and requiredInputNames. Type/config default to TEXT."
},
"context": {
"type": "string",
"maxLength": 120,
"description": "Short purpose of this call for the activity log. Exclude personal data and private source content."
},
"position": {
"type": "number",
"description": "Optional zero-based sheet position. Defaults to the end."
},
"llm_model": {
"type": "string",
"maxLength": 128,
"description": "Use the exact model ID executing this call, from runtime/system context, for usage attribution. Supply it on every Atomic MCP tool call, including discovery and feedback, and update it if the model changes. Use the model ID rather than the client app name. If unavailable, omit it; never guess or ask the user."
},
"projectId": {
"type": "number",
"description": "Atomic project ID from list_projects. Omit to use the configured project; if asked to choose, select one of the accessible returned IDs."
}
}
},
"outputSchema": {
"type": "object",
"required": [
"success"
],
"properties": {
"url": {
"type": "string",
"description": "Link for resolving the failure or completing the operation."
},
"data": {
"type": "object",
"required": [
"columns",
"rows",
"cells",
"gridId",
"name",
"position",
"createdAt",
"updatedAt"
],
"properties": {
"id": {
"type": "number",
"description": "Identifier of this returned resource. Use it for subsequent reads or edits of the same resource."
},
"name": {
"type": "string",
"description": "Human-readable name of this resource."
},
"rows": {
"type": "array",
"items": {
"type": "object",
"required": [
"sheetId",
"position",
"createdAt",
"updatedAt"
],
"properties": {
"id": {
"type": "number",
"description": "Identifier of this returned resource. Use it for subsequent reads or edits of the same resource."
},
"sheetId": {
"type": "number",
"description": "Grid sheet that owns this row, column or cell."
},
"position": {
"type": "number",
"description": "Saved ordering position or visual editor coordinates for this item."
},
"createdAt": {
"type": "string",
"format": "date-time",
"description": "Date and time this record was created, serialized as ISO 8601."
},
"updatedAt": {
"type": "string",
"format": "date-time",
"description": "Date and time this record was last updated, serialized as ISO 8601."
}
}
},
"description": "Rows returned for the selected sheet, table or reporting query."
},
"cells": {
"type": "array",
"items": {
"type": "object",
"required": [
"rowId",
"columnId",
"status",
"createdAt",
"updatedAt"
],
"properties": {
"id": {
"type": "number",
"description": "Identifier of this returned resource. Use it for subsequent reads or edits of the same resource."
},
"error": {
"anyOf": [
{
"type": "null"
},
{
"type": "string"
}
],
"description": "Failure details reported by this operation or its provider."
},
"rowId": {
"type": "number",
"description": "Grid row identifier for this item."
},
"value": {
"description": "Returned value for the containing field, setting or observation."
},
"status": {
"enum": [
"EMPTY",
"PENDING",
"RUNNING",
"WAITING_FOR_APPROVAL",
"COMPLETED",
"FAILED",
"CANCELED"
],
"type": "string",
"description": "Current saved or execution state reported by the operation."
},
"columnId": {
"type": "number",
"description": "Grid column identifier for this item."
},
"createdAt": {
"type": "string",
"format": "date-time",
"description": "Date and time this record was created, serialized as ISO 8601."
},
"updatedAt": {
"type": "string",
"format": "date-time",
"description": "Date and time this record was last updated, serialized as ISO 8601."
},
"scheduledAt": {
"anyOf": [
{
"type": "null"
},
{
"type": "string",
"format": "date-time",
"description": "Timestamp serialized as an ISO 8601 date and time."
}
],
"description": "Date and time this task or publication is scheduled to run."
},
"workflowRunId": {
"anyOf": [
{
"type": "null"
},
{
"type": "number"
}
],
"description": "Workflow execution associated with this result, distinct from its definition ID."
},
"workflowStepTestRunId": {
"anyOf": [
{
"type": "null"
},
{
"type": "number"
}
],
"description": "Existing workflow step test execution associated with this result."
}
}
}
},
"gridId": {
"type": "number",
"description": "Grid that owns these sheets or results."
},
"columns": {
"type": "array",
"items": {
"type": "object",
"required": [
"sheetId",
"name",
"type",
"position",
"config",
"createdAt",
"updatedAt"
],
"properties": {
"id": {
"type": "number",
"description": "Identifier of this returned resource. Use it for subsequent reads or edits of the same resource."
},
"name": {
"type": "string",
"description": "Human-readable name of this resource."
},
"type": {
"enum": [
"TEXT",
"LONG_TEXT",
"NUMBER",
"CONTENT",
"URL",
"DATE",
"DATETIME",
"SINGLE_SELECT",
"JSON",
"SOCIAL_POST",
"IMAGE_URL",
"FILE",
"WORKFLOW_STEP",
"WORKFLOW"
],
"type": "string",
"description": "Kind of the returned item; determines how its operation-specific fields should be interpreted."
},
"config": {
"type": "object",
"description": "Saved configuration specific to this resource's type."
},
"sheetId": {
"type": "number",
"description": "Grid sheet that owns this row, column or cell."
},
"position": {
"type": "number",
"description": "Saved ordering position or visual editor coordinates for this item."
},
"createdAt": {
"type": "string",
"format": "date-time",
"description": "Date and time this record was created, serialized as ISO 8601."
},
"updatedAt": {
"type": "string",
"format": "date-time",
"description": "Date and time this record was last updated, serialized as ISO 8601."
}
}
},
"description": "Column definitions returned for the selected sheet or table."
},
"position": {
"type": "number",
"description": "Saved ordering position or visual editor coordinates for this item."
},
"createdAt": {
"type": "string",
"format": "date-time",
"description": "Date and time this record was created, serialized as ISO 8601."
},
"updatedAt": {
"type": "string",
"format": "date-time",
"description": "Date and time this record was last updated, serialized as ISO 8601."
}
},
"description": "Operation data; optional fields may be absent."
},
"error": {
"type": "string",
"description": "Why the operation failed."
},
"details": {
"type": "object",
"description": "Diagnostics keyed by errorCode."
},
"message": {
"type": "string",
"description": "Outcome or recovery instructions. Project selection means no action ran."
},
"success": {
"type": "boolean",
"description": "Operation success; on false inspect error/errorCode."
},
"upgrade": {
"type": "object",
"description": "Plan-upgrade guidance for an unavailable capability."
},
"category": {
"type": "string",
"description": "Failure category, such as invalid_input or plan_required."
},
"expected": {
"type": "boolean",
"description": "Whether this is an anticipated access, input, plan or state failure."
},
"projects": {
"type": "array",
"items": {
"type": "object",
"properties": {
"id": {
"type": "number",
"description": "Project ID for projectId."
},
"name": {
"type": "string",
"description": "Project name."
}
},
"description": "Accessible project."
},
"description": "Accessible project choices. Select a projectId and retry."
},
"errorCode": {
"type": "string",
"description": "Failure code for recovery."
},
"retryable": {
"type": "boolean",
"description": "Whether an unchanged request can be retried."
},
"statusCode": {
"type": "number",
"description": "HTTP-style failure status."
},
"executionTime": {
"type": "string",
"description": "Elapsed time in seconds, with an s suffix."
}
},
"description": "Operation result envelope."
},
"annotations": {
"readOnlyHint": false,
"openWorldHint": false,
"idempotentHint": false,
"destructiveHint": false
}
}
The title clearly communicates the tool’s action and subject. Keep it concise.
Description89/100
Create a new sheet in a grid by importing CSV text. Use this when the agent already has CSV data that should become columns, rows, and cells.
Imports into a new sheet rather than replacing an existing sheet. Use create_grid_rows for already structured JSON data; inspect headers and row data before importing.
The description explains the capability, when to use it, and what to expect.
Inputs92/100
Remove validation rules already expressed in this field’s schema; describe its meaning and usage instead.
gridId
Existing project grid ID from get_grids or create_grid.
Clear enough to supply this argument.
name
Optional sheet name. Defaults to fileName or CSV import.
Clear enough to supply this argument.
fileName
Optional original CSV file name, used as a fallback sheet name.
Clear enough to supply this argument.
csv
CSV content including a header row.
Clear enough to supply this argument.
projectId
Atomic project ID from list_projects. Omit to use the configured project; if asked to choose, select one of the accessible returned IDs.
Clear enough to supply this argument.
context
Short purpose of this call for the activity log. Exclude personal data and private source content.
Remove validation rules already expressed in this field’s schema; describe its meaning and usage instead.
llm_model
Use the exact model ID executing this call, from runtime/system context, for usage attribution. Supply it on every Atomic MCP tool call, including discovery and feedback, and update it if the model changes. Use the model ID rather than the client app name. If unavailable, omit it; never guess or ask the user.
Remove validation rules already expressed in this field’s schema; describe its meaning and usage instead.
{
"type": "object",
"required": [
"success"
],
"properties": {
"url": {
"type": "string",
"description": "Link for resolving the failure or completing the operation."
},
"data": {
"type": "object",
"required": [
"columns",
"rows",
"cells",
"gridId",
"name",
"position",
"createdAt",
"updatedAt"
],
"properties": {
"id": {
"type": "number",
"description": "Identifier of this returned resource. Use it for subsequent reads or edits of the same resource."
},
"name": {
"type": "string",
"description": "Human-readable name of this resource."
},
"rows": {
"type": "array",
"items": {
"type": "object",
"required": [
"sheetId",
"position",
"createdAt",
"updatedAt"
],
"properties": {
"id": {
"type": "number",
"description": "Identifier of this returned resource. Use it for subsequent reads or edits of the same resource."
},
"sheetId": {
"type": "number",
"description": "Grid sheet that owns this row, column or cell."
},
"position": {
"type": "number",
"description": "Saved ordering position or visual editor coordinates for this item."
},
"createdAt": {
"type": "string",
"format": "date-time",
"description": "Date and time this record was created, serialized as ISO 8601."
},
"updatedAt": {
"type": "string",
"format": "date-time",
"description": "Date and time this record was last updated, serialized as ISO 8601."
}
}
},
"description": "Rows returned for the selected sheet, table or reporting query."
},
"cells": {
"type": "array",
"items": {
"type": "object",
"required": [
"rowId",
"columnId",
"status",
"createdAt",
"updatedAt"
],
"properties": {
"id": {
"type": "number",
"description": "Identifier of this returned resource. Use it for subsequent reads or edits of the same resource."
},
"error": {
"anyOf": [
{
"type": "null"
},
{
"type": "string"
}
],
"description": "Failure details reported by this operation or its provider."
},
"rowId": {
"type": "number",
"description": "Grid row identifier for this item."
},
"value": {
"description": "Returned value for the containing field, setting or observation."
},
"status": {
"enum": [
"EMPTY",
"PENDING",
"RUNNING",
"WAITING_FOR_APPROVAL",
"COMPLETED",
"FAILED",
"CANCELED"
],
"type": "string",
"description": "Current saved or execution state reported by the operation."
},
"columnId": {
"type": "number",
"description": "Grid column identifier for this item."
},
"createdAt": {
"type": "string",
"format": "date-time",
"description": "Date and time this record was created, serialized as ISO 8601."
},
"updatedAt": {
"type": "string",
"format": "date-time",
"description": "Date and time this record was last updated, serialized as ISO 8601."
},
"scheduledAt": {
"anyOf": [
{
"type": "null"
},
{
"type": "string",
"format": "date-time",
"description": "Timestamp serialized as an ISO 8601 date and time."
}
],
"description": "Date and time this task or publication is scheduled to run."
},
"workflowRunId": {
"anyOf": [
{
"type": "null"
},
{
"type": "number"
}
],
"description": "Workflow execution associated with this result, distinct from its definition ID."
},
"workflowStepTestRunId": {
"anyOf": [
{
"type": "null"
},
{
"type": "number"
}
],
"description": "Existing workflow step test execution associated with this result."
}
}
}
},
"gridId": {
"type": "number",
"description": "Grid that owns these sheets or results."
},
"columns": {
"type": "array",
"items": {
"type": "object",
"required": [
"sheetId",
"name",
"type",
"position",
"config",
"createdAt",
"updatedAt"
],
"properties": {
"id": {
"type": "number",
"description": "Identifier of this returned resource. Use it for subsequent reads or edits of the same resource."
},
"name": {
"type": "string",
"description": "Human-readable name of this resource."
},
"type": {
"enum": [
"TEXT",
"LONG_TEXT",
"NUMBER",
"CONTENT",
"URL",
"DATE",
"DATETIME",
"SINGLE_SELECT",
"JSON",
"SOCIAL_POST",
"IMAGE_URL",
"FILE",
"WORKFLOW_STEP",
"WORKFLOW"
],
"type": "string",
"description": "Kind of the returned item; determines how its operation-specific fields should be interpreted."
},
"config": {
"type": "object",
"description": "Saved configuration specific to this resource's type."
},
"sheetId": {
"type": "number",
"description": "Grid sheet that owns this row, column or cell."
},
"position": {
"type": "number",
"description": "Saved ordering position or visual editor coordinates for this item."
},
"createdAt": {
"type": "string",
"format": "date-time",
"description": "Date and time this record was created, serialized as ISO 8601."
},
"updatedAt": {
"type": "string",
"format": "date-time",
"description": "Date and time this record was last updated, serialized as ISO 8601."
}
}
},
"description": "Column definitions returned for the selected sheet or table."
},
"position": {
"type": "number",
"description": "Saved ordering position or visual editor coordinates for this item."
},
"createdAt": {
"type": "string",
"format": "date-time",
"description": "Date and time this record was created, serialized as ISO 8601."
},
"updatedAt": {
"type": "string",
"format": "date-time",
"description": "Date and time this record was last updated, serialized as ISO 8601."
}
},
"description": "Operation data; optional fields may be absent."
},
"error": {
"type": "string",
"description": "Why the operation failed."
},
"details": {
"type": "object",
"description": "Diagnostics keyed by errorCode."
},
"message": {
"type": "string",
"description": "Outcome or recovery instructions. Project selection means no action ran."
},
"success": {
"type": "boolean",
"description": "Operation success; on false inspect error/errorCode."
},
"upgrade": {
"type": "object",
"description": "Plan-upgrade guidance for an unavailable capability."
},
"category": {
"type": "string",
"description": "Failure category, such as invalid_input or plan_required."
},
"expected": {
"type": "boolean",
"description": "Whether this is an anticipated access, input, plan or state failure."
},
"projects": {
"type": "array",
"items": {
"type": "object",
"properties": {
"id": {
"type": "number",
"description": "Project ID for projectId."
},
"name": {
"type": "string",
"description": "Project name."
}
},
"description": "Accessible project."
},
"description": "Accessible project choices. Select a projectId and retry."
},
"errorCode": {
"type": "string",
"description": "Failure code for recovery."
},
"retryable": {
"type": "boolean",
"description": "Whether an unchanged request can be retried."
},
"statusCode": {
"type": "number",
"description": "HTTP-style failure status."
},
"executionTime": {
"type": "string",
"description": "Elapsed time in seconds, with an s suffix."
}
},
"description": "Operation result envelope."
}
Original tool metadata
{
"name": "create_grid_sheet_from_csv",
"title": "Create grid sheet from CSV",
"description": "Create a new sheet in a grid by importing CSV text. Use this when the agent already has CSV data that should become columns, rows, and cells.\n\nImports into a new sheet rather than replacing an existing sheet. Use create_grid_rows for already structured JSON data; inspect headers and row data before importing.",
"inputSchema": {
"type": "object",
"required": [
"gridId",
"csv"
],
"properties": {
"csv": {
"type": "string",
"description": "CSV content including a header row."
},
"name": {
"type": "string",
"description": "Optional sheet name. Defaults to fileName or CSV import."
},
"gridId": {
"type": "number",
"description": "Existing project grid ID from get_grids or create_grid."
},
"context": {
"type": "string",
"maxLength": 120,
"description": "Short purpose of this call for the activity log. Exclude personal data and private source content."
},
"fileName": {
"type": "string",
"description": "Optional original CSV file name, used as a fallback sheet name."
},
"llm_model": {
"type": "string",
"maxLength": 128,
"description": "Use the exact model ID executing this call, from runtime/system context, for usage attribution. Supply it on every Atomic MCP tool call, including discovery and feedback, and update it if the model changes. Use the model ID rather than the client app name. If unavailable, omit it; never guess or ask the user."
},
"projectId": {
"type": "number",
"description": "Atomic project ID from list_projects. Omit to use the configured project; if asked to choose, select one of the accessible returned IDs."
}
}
},
"outputSchema": {
"type": "object",
"required": [
"success"
],
"properties": {
"url": {
"type": "string",
"description": "Link for resolving the failure or completing the operation."
},
"data": {
"type": "object",
"required": [
"columns",
"rows",
"cells",
"gridId",
"name",
"position",
"createdAt",
"updatedAt"
],
"properties": {
"id": {
"type": "number",
"description": "Identifier of this returned resource. Use it for subsequent reads or edits of the same resource."
},
"name": {
"type": "string",
"description": "Human-readable name of this resource."
},
"rows": {
"type": "array",
"items": {
"type": "object",
"required": [
"sheetId",
"position",
"createdAt",
"updatedAt"
],
"properties": {
"id": {
"type": "number",
"description": "Identifier of this returned resource. Use it for subsequent reads or edits of the same resource."
},
"sheetId": {
"type": "number",
"description": "Grid sheet that owns this row, column or cell."
},
"position": {
"type": "number",
"description": "Saved ordering position or visual editor coordinates for this item."
},
"createdAt": {
"type": "string",
"format": "date-time",
"description": "Date and time this record was created, serialized as ISO 8601."
},
"updatedAt": {
"type": "string",
"format": "date-time",
"description": "Date and time this record was last updated, serialized as ISO 8601."
}
}
},
"description": "Rows returned for the selected sheet, table or reporting query."
},
"cells": {
"type": "array",
"items": {
"type": "object",
"required": [
"rowId",
"columnId",
"status",
"createdAt",
"updatedAt"
],
"properties": {
"id": {
"type": "number",
"description": "Identifier of this returned resource. Use it for subsequent reads or edits of the same resource."
},
"error": {
"anyOf": [
{
"type": "null"
},
{
"type": "string"
}
],
"description": "Failure details reported by this operation or its provider."
},
"rowId": {
"type": "number",
"description": "Grid row identifier for this item."
},
"value": {
"description": "Returned value for the containing field, setting or observation."
},
"status": {
"enum": [
"EMPTY",
"PENDING",
"RUNNING",
"WAITING_FOR_APPROVAL",
"COMPLETED",
"FAILED",
"CANCELED"
],
"type": "string",
"description": "Current saved or execution state reported by the operation."
},
"columnId": {
"type": "number",
"description": "Grid column identifier for this item."
},
"createdAt": {
"type": "string",
"format": "date-time",
"description": "Date and time this record was created, serialized as ISO 8601."
},
"updatedAt": {
"type": "string",
"format": "date-time",
"description": "Date and time this record was last updated, serialized as ISO 8601."
},
"scheduledAt": {
"anyOf": [
{
"type": "null"
},
{
"type": "string",
"format": "date-time",
"description": "Timestamp serialized as an ISO 8601 date and time."
}
],
"description": "Date and time this task or publication is scheduled to run."
},
"workflowRunId": {
"anyOf": [
{
"type": "null"
},
{
"type": "number"
}
],
"description": "Workflow execution associated with this result, distinct from its definition ID."
},
"workflowStepTestRunId": {
"anyOf": [
{
"type": "null"
},
{
"type": "number"
}
],
"description": "Existing workflow step test execution associated with this result."
}
}
}
},
"gridId": {
"type": "number",
"description": "Grid that owns these sheets or results."
},
"columns": {
"type": "array",
"items": {
"type": "object",
"required": [
"sheetId",
"name",
"type",
"position",
"config",
"createdAt",
"updatedAt"
],
"properties": {
"id": {
"type": "number",
"description": "Identifier of this returned resource. Use it for subsequent reads or edits of the same resource."
},
"name": {
"type": "string",
"description": "Human-readable name of this resource."
},
"type": {
"enum": [
"TEXT",
"LONG_TEXT",
"NUMBER",
"CONTENT",
"URL",
"DATE",
"DATETIME",
"SINGLE_SELECT",
"JSON",
"SOCIAL_POST",
"IMAGE_URL",
"FILE",
"WORKFLOW_STEP",
"WORKFLOW"
],
"type": "string",
"description": "Kind of the returned item; determines how its operation-specific fields should be interpreted."
},
"config": {
"type": "object",
"description": "Saved configuration specific to this resource's type."
},
"sheetId": {
"type": "number",
"description": "Grid sheet that owns this row, column or cell."
},
"position": {
"type": "number",
"description": "Saved ordering position or visual editor coordinates for this item."
},
"createdAt": {
"type": "string",
"format": "date-time",
"description": "Date and time this record was created, serialized as ISO 8601."
},
"updatedAt": {
"type": "string",
"format": "date-time",
"description": "Date and time this record was last updated, serialized as ISO 8601."
}
}
},
"description": "Column definitions returned for the selected sheet or table."
},
"position": {
"type": "number",
"description": "Saved ordering position or visual editor coordinates for this item."
},
"createdAt": {
"type": "string",
"format": "date-time",
"description": "Date and time this record was created, serialized as ISO 8601."
},
"updatedAt": {
"type": "string",
"format": "date-time",
"description": "Date and time this record was last updated, serialized as ISO 8601."
}
},
"description": "Operation data; optional fields may be absent."
},
"error": {
"type": "string",
"description": "Why the operation failed."
},
"details": {
"type": "object",
"description": "Diagnostics keyed by errorCode."
},
"message": {
"type": "string",
"description": "Outcome or recovery instructions. Project selection means no action ran."
},
"success": {
"type": "boolean",
"description": "Operation success; on false inspect error/errorCode."
},
"upgrade": {
"type": "object",
"description": "Plan-upgrade guidance for an unavailable capability."
},
"category": {
"type": "string",
"description": "Failure category, such as invalid_input or plan_required."
},
"expected": {
"type": "boolean",
"description": "Whether this is an anticipated access, input, plan or state failure."
},
"projects": {
"type": "array",
"items": {
"type": "object",
"properties": {
"id": {
"type": "number",
"description": "Project ID for projectId."
},
"name": {
"type": "string",
"description": "Project name."
}
},
"description": "Accessible project."
},
"description": "Accessible project choices. Select a projectId and retry."
},
"errorCode": {
"type": "string",
"description": "Failure code for recovery."
},
"retryable": {
"type": "boolean",
"description": "Whether an unchanged request can be retried."
},
"statusCode": {
"type": "number",
"description": "HTTP-style failure status."
},
"executionTime": {
"type": "string",
"description": "Elapsed time in seconds, with an s suffix."
}
},
"description": "Operation result envelope."
},
"annotations": {
"readOnlyHint": false,
"openWorldHint": false,
"idempotentHint": false,
"destructiveHint": false
}
}
The title clearly communicates the tool’s action and subject. Keep it concise.
Description93/100
Create a new sheet in a grid from a sitemap URL. Discovers URLs from nested sitemaps and writes them into a URL column.
Fetches the supplied sitemap and stores discovered URLs in a new sheet; it does not crawl each page for content. Repeating import can create another sheet.
The description explains the capability, when to use it, and what to expect.
Inputs94/100
Remove validation rules already expressed in this field’s schema; describe its meaning and usage instead.
gridId
Existing project grid ID from get_grids or create_grid.
Clear enough to supply this argument.
name
Optional sheet name. Defaults to Sitemap import.
Clear enough to supply this argument.
sitemapUrl
Absolute http(s) sitemap URL.
Clear enough to supply this argument.
projectId
Atomic project ID from list_projects. Omit to use the configured project; if asked to choose, select one of the accessible returned IDs.
Clear enough to supply this argument.
context
Short purpose of this call for the activity log. Exclude personal data and private source content.
Remove validation rules already expressed in this field’s schema; describe its meaning and usage instead.
llm_model
Use the exact model ID executing this call, from runtime/system context, for usage attribution. Supply it on every Atomic MCP tool call, including discovery and feedback, and update it if the model changes. Use the model ID rather than the client app name. If unavailable, omit it; never guess or ask the user.
{
"type": "object",
"required": [
"success"
],
"properties": {
"url": {
"type": "string",
"description": "Link for resolving the failure or completing the operation."
},
"data": {
"type": "object",
"required": [
"columns",
"rows",
"cells",
"gridId",
"name",
"position",
"createdAt",
"updatedAt"
],
"properties": {
"id": {
"type": "number",
"description": "Identifier of this returned resource. Use it for subsequent reads or edits of the same resource."
},
"name": {
"type": "string",
"description": "Human-readable name of this resource."
},
"rows": {
"type": "array",
"items": {
"type": "object",
"required": [
"sheetId",
"position",
"createdAt",
"updatedAt"
],
"properties": {
"id": {
"type": "number",
"description": "Identifier of this returned resource. Use it for subsequent reads or edits of the same resource."
},
"sheetId": {
"type": "number",
"description": "Grid sheet that owns this row, column or cell."
},
"position": {
"type": "number",
"description": "Saved ordering position or visual editor coordinates for this item."
},
"createdAt": {
"type": "string",
"format": "date-time",
"description": "Date and time this record was created, serialized as ISO 8601."
},
"updatedAt": {
"type": "string",
"format": "date-time",
"description": "Date and time this record was last updated, serialized as ISO 8601."
}
}
},
"description": "Rows returned for the selected sheet, table or reporting query."
},
"cells": {
"type": "array",
"items": {
"type": "object",
"required": [
"rowId",
"columnId",
"status",
"createdAt",
"updatedAt"
],
"properties": {
"id": {
"type": "number",
"description": "Identifier of this returned resource. Use it for subsequent reads or edits of the same resource."
},
"error": {
"anyOf": [
{
"type": "null"
},
{
"type": "string"
}
],
"description": "Failure details reported by this operation or its provider."
},
"rowId": {
"type": "number",
"description": "Grid row identifier for this item."
},
"value": {
"description": "Returned value for the containing field, setting or observation."
},
"status": {
"enum": [
"EMPTY",
"PENDING",
"RUNNING",
"WAITING_FOR_APPROVAL",
"COMPLETED",
"FAILED",
"CANCELED"
],
"type": "string",
"description": "Current saved or execution state reported by the operation."
},
"columnId": {
"type": "number",
"description": "Grid column identifier for this item."
},
"createdAt": {
"type": "string",
"format": "date-time",
"description": "Date and time this record was created, serialized as ISO 8601."
},
"updatedAt": {
"type": "string",
"format": "date-time",
"description": "Date and time this record was last updated, serialized as ISO 8601."
},
"scheduledAt": {
"anyOf": [
{
"type": "null"
},
{
"type": "string",
"format": "date-time",
"description": "Timestamp serialized as an ISO 8601 date and time."
}
],
"description": "Date and time this task or publication is scheduled to run."
},
"workflowRunId": {
"anyOf": [
{
"type": "null"
},
{
"type": "number"
}
],
"description": "Workflow execution associated with this result, distinct from its definition ID."
},
"workflowStepTestRunId": {
"anyOf": [
{
"type": "null"
},
{
"type": "number"
}
],
"description": "Existing workflow step test execution associated with this result."
}
}
}
},
"gridId": {
"type": "number",
"description": "Grid that owns these sheets or results."
},
"columns": {
"type": "array",
"items": {
"type": "object",
"required": [
"sheetId",
"name",
"type",
"position",
"config",
"createdAt",
"updatedAt"
],
"properties": {
"id": {
"type": "number",
"description": "Identifier of this returned resource. Use it for subsequent reads or edits of the same resource."
},
"name": {
"type": "string",
"description": "Human-readable name of this resource."
},
"type": {
"enum": [
"TEXT",
"LONG_TEXT",
"NUMBER",
"CONTENT",
"URL",
"DATE",
"DATETIME",
"SINGLE_SELECT",
"JSON",
"SOCIAL_POST",
"IMAGE_URL",
"FILE",
"WORKFLOW_STEP",
"WORKFLOW"
],
"type": "string",
"description": "Kind of the returned item; determines how its operation-specific fields should be interpreted."
},
"config": {
"type": "object",
"description": "Saved configuration specific to this resource's type."
},
"sheetId": {
"type": "number",
"description": "Grid sheet that owns this row, column or cell."
},
"position": {
"type": "number",
"description": "Saved ordering position or visual editor coordinates for this item."
},
"createdAt": {
"type": "string",
"format": "date-time",
"description": "Date and time this record was created, serialized as ISO 8601."
},
"updatedAt": {
"type": "string",
"format": "date-time",
"description": "Date and time this record was last updated, serialized as ISO 8601."
}
}
},
"description": "Column definitions returned for the selected sheet or table."
},
"position": {
"type": "number",
"description": "Saved ordering position or visual editor coordinates for this item."
},
"createdAt": {
"type": "string",
"format": "date-time",
"description": "Date and time this record was created, serialized as ISO 8601."
},
"updatedAt": {
"type": "string",
"format": "date-time",
"description": "Date and time this record was last updated, serialized as ISO 8601."
}
},
"description": "Operation data; optional fields may be absent."
},
"error": {
"type": "string",
"description": "Why the operation failed."
},
"details": {
"type": "object",
"description": "Diagnostics keyed by errorCode."
},
"message": {
"type": "string",
"description": "Outcome or recovery instructions. Project selection means no action ran."
},
"success": {
"type": "boolean",
"description": "Operation success; on false inspect error/errorCode."
},
"upgrade": {
"type": "object",
"description": "Plan-upgrade guidance for an unavailable capability."
},
"category": {
"type": "string",
"description": "Failure category, such as invalid_input or plan_required."
},
"expected": {
"type": "boolean",
"description": "Whether this is an anticipated access, input, plan or state failure."
},
"projects": {
"type": "array",
"items": {
"type": "object",
"properties": {
"id": {
"type": "number",
"description": "Project ID for projectId."
},
"name": {
"type": "string",
"description": "Project name."
}
},
"description": "Accessible project."
},
"description": "Accessible project choices. Select a projectId and retry."
},
"errorCode": {
"type": "string",
"description": "Failure code for recovery."
},
"retryable": {
"type": "boolean",
"description": "Whether an unchanged request can be retried."
},
"statusCode": {
"type": "number",
"description": "HTTP-style failure status."
},
"executionTime": {
"type": "string",
"description": "Elapsed time in seconds, with an s suffix."
}
},
"description": "Operation result envelope."
}
Original tool metadata
{
"name": "create_grid_sheet_from_sitemap",
"title": "Create grid sheet from sitemap",
"description": "Create a new sheet in a grid from a sitemap URL. Discovers URLs from nested sitemaps and writes them into a URL column.\n\nFetches the supplied sitemap and stores discovered URLs in a new sheet; it does not crawl each page for content. Repeating import can create another sheet.",
"inputSchema": {
"type": "object",
"required": [
"gridId",
"sitemapUrl"
],
"properties": {
"name": {
"type": "string",
"description": "Optional sheet name. Defaults to Sitemap import."
},
"gridId": {
"type": "number",
"description": "Existing project grid ID from get_grids or create_grid."
},
"context": {
"type": "string",
"maxLength": 120,
"description": "Short purpose of this call for the activity log. Exclude personal data and private source content."
},
"llm_model": {
"type": "string",
"maxLength": 128,
"description": "Use the exact model ID executing this call, from runtime/system context, for usage attribution. Supply it on every Atomic MCP tool call, including discovery and feedback, and update it if the model changes. Use the model ID rather than the client app name. If unavailable, omit it; never guess or ask the user."
},
"projectId": {
"type": "number",
"description": "Atomic project ID from list_projects. Omit to use the configured project; if asked to choose, select one of the accessible returned IDs."
},
"sitemapUrl": {
"type": "string",
"description": "Absolute http(s) sitemap URL."
}
}
},
"outputSchema": {
"type": "object",
"required": [
"success"
],
"properties": {
"url": {
"type": "string",
"description": "Link for resolving the failure or completing the operation."
},
"data": {
"type": "object",
"required": [
"columns",
"rows",
"cells",
"gridId",
"name",
"position",
"createdAt",
"updatedAt"
],
"properties": {
"id": {
"type": "number",
"description": "Identifier of this returned resource. Use it for subsequent reads or edits of the same resource."
},
"name": {
"type": "string",
"description": "Human-readable name of this resource."
},
"rows": {
"type": "array",
"items": {
"type": "object",
"required": [
"sheetId",
"position",
"createdAt",
"updatedAt"
],
"properties": {
"id": {
"type": "number",
"description": "Identifier of this returned resource. Use it for subsequent reads or edits of the same resource."
},
"sheetId": {
"type": "number",
"description": "Grid sheet that owns this row, column or cell."
},
"position": {
"type": "number",
"description": "Saved ordering position or visual editor coordinates for this item."
},
"createdAt": {
"type": "string",
"format": "date-time",
"description": "Date and time this record was created, serialized as ISO 8601."
},
"updatedAt": {
"type": "string",
"format": "date-time",
"description": "Date and time this record was last updated, serialized as ISO 8601."
}
}
},
"description": "Rows returned for the selected sheet, table or reporting query."
},
"cells": {
"type": "array",
"items": {
"type": "object",
"required": [
"rowId",
"columnId",
"status",
"createdAt",
"updatedAt"
],
"properties": {
"id": {
"type": "number",
"description": "Identifier of this returned resource. Use it for subsequent reads or edits of the same resource."
},
"error": {
"anyOf": [
{
"type": "null"
},
{
"type": "string"
}
],
"description": "Failure details reported by this operation or its provider."
},
"rowId": {
"type": "number",
"description": "Grid row identifier for this item."
},
"value": {
"description": "Returned value for the containing field, setting or observation."
},
"status": {
"enum": [
"EMPTY",
"PENDING",
"RUNNING",
"WAITING_FOR_APPROVAL",
"COMPLETED",
"FAILED",
"CANCELED"
],
"type": "string",
"description": "Current saved or execution state reported by the operation."
},
"columnId": {
"type": "number",
"description": "Grid column identifier for this item."
},
"createdAt": {
"type": "string",
"format": "date-time",
"description": "Date and time this record was created, serialized as ISO 8601."
},
"updatedAt": {
"type": "string",
"format": "date-time",
"description": "Date and time this record was last updated, serialized as ISO 8601."
},
"scheduledAt": {
"anyOf": [
{
"type": "null"
},
{
"type": "string",
"format": "date-time",
"description": "Timestamp serialized as an ISO 8601 date and time."
}
],
"description": "Date and time this task or publication is scheduled to run."
},
"workflowRunId": {
"anyOf": [
{
"type": "null"
},
{
"type": "number"
}
],
"description": "Workflow execution associated with this result, distinct from its definition ID."
},
"workflowStepTestRunId": {
"anyOf": [
{
"type": "null"
},
{
"type": "number"
}
],
"description": "Existing workflow step test execution associated with this result."
}
}
}
},
"gridId": {
"type": "number",
"description": "Grid that owns these sheets or results."
},
"columns": {
"type": "array",
"items": {
"type": "object",
"required": [
"sheetId",
"name",
"type",
"position",
"config",
"createdAt",
"updatedAt"
],
"properties": {
"id": {
"type": "number",
"description": "Identifier of this returned resource. Use it for subsequent reads or edits of the same resource."
},
"name": {
"type": "string",
"description": "Human-readable name of this resource."
},
"type": {
"enum": [
"TEXT",
"LONG_TEXT",
"NUMBER",
"CONTENT",
"URL",
"DATE",
"DATETIME",
"SINGLE_SELECT",
"JSON",
"SOCIAL_POST",
"IMAGE_URL",
"FILE",
"WORKFLOW_STEP",
"WORKFLOW"
],
"type": "string",
"description": "Kind of the returned item; determines how its operation-specific fields should be interpreted."
},
"config": {
"type": "object",
"description": "Saved configuration specific to this resource's type."
},
"sheetId": {
"type": "number",
"description": "Grid sheet that owns this row, column or cell."
},
"position": {
"type": "number",
"description": "Saved ordering position or visual editor coordinates for this item."
},
"createdAt": {
"type": "string",
"format": "date-time",
"description": "Date and time this record was created, serialized as ISO 8601."
},
"updatedAt": {
"type": "string",
"format": "date-time",
"description": "Date and time this record was last updated, serialized as ISO 8601."
}
}
},
"description": "Column definitions returned for the selected sheet or table."
},
"position": {
"type": "number",
"description": "Saved ordering position or visual editor coordinates for this item."
},
"createdAt": {
"type": "string",
"format": "date-time",
"description": "Date and time this record was created, serialized as ISO 8601."
},
"updatedAt": {
"type": "string",
"format": "date-time",
"description": "Date and time this record was last updated, serialized as ISO 8601."
}
},
"description": "Operation data; optional fields may be absent."
},
"error": {
"type": "string",
"description": "Why the operation failed."
},
"details": {
"type": "object",
"description": "Diagnostics keyed by errorCode."
},
"message": {
"type": "string",
"description": "Outcome or recovery instructions. Project selection means no action ran."
},
"success": {
"type": "boolean",
"description": "Operation success; on false inspect error/errorCode."
},
"upgrade": {
"type": "object",
"description": "Plan-upgrade guidance for an unavailable capability."
},
"category": {
"type": "string",
"description": "Failure category, such as invalid_input or plan_required."
},
"expected": {
"type": "boolean",
"description": "Whether this is an anticipated access, input, plan or state failure."
},
"projects": {
"type": "array",
"items": {
"type": "object",
"properties": {
"id": {
"type": "number",
"description": "Project ID for projectId."
},
"name": {
"type": "string",
"description": "Project name."
}
},
"description": "Accessible project."
},
"description": "Accessible project choices. Select a projectId and retry."
},
"errorCode": {
"type": "string",
"description": "Failure code for recovery."
},
"retryable": {
"type": "boolean",
"description": "Whether an unchanged request can be retried."
},
"statusCode": {
"type": "number",
"description": "HTTP-style failure status."
},
"executionTime": {
"type": "string",
"description": "Elapsed time in seconds, with an s suffix."
}
},
"description": "Operation result envelope."
},
"annotations": {
"readOnlyHint": false,
"openWorldHint": true,
"idempotentHint": false,
"destructiveHint": false
}
}
The title clearly communicates the tool’s action and subject. Keep it concise.
Description88/100
Create a purpose-specific knowledge base. A clear description is required and controls retrieval context, not authorization.
Creates a retrieval container, not an authorization boundary. Use list_knowledge_bases to reuse a suitable base; add_knowledge_file supplies its canonical content.
The description explains the capability, when to use it, and what to expect.
Inputs90/100
Remove validation rules already expressed in this field’s schema; describe its meaning and usage instead.
name
Human-readable knowledge-base name.
Remove validation rules already expressed in this field’s schema; describe its meaning and usage instead.
description
Purpose, scope, and intended content for this knowledge base.
Clear enough to supply this argument.
projectId
Atomic project ID from list_projects. Omit to use the configured project; if asked to choose, select one of the accessible returned IDs.
Clear enough to supply this argument.
context
Short purpose of this call for the activity log. Exclude personal data and private source content.
Clear enough to supply this argument.
llm_model
Use the exact model ID executing this call, from runtime/system context, for usage attribution. Supply it on every Atomic MCP tool call, including discovery and feedback, and update it if the model changes. Use the model ID rather than the client app name. If unavailable, omit it; never guess or ask the user.
Remove validation rules already expressed in this field’s schema; describe its meaning and usage instead.
{
"type": "object",
"required": [
"success"
],
"properties": {
"url": {
"type": "string",
"description": "Link for resolving the failure or completing the operation."
},
"data": {
"type": "object",
"required": [
"id",
"projectId",
"name",
"description",
"rootPath",
"createdAt",
"updatedAt"
],
"properties": {
"id": {
"type": "number",
"description": "Identifier of this returned resource. Use it for subsequent reads or edits of the same resource."
},
"name": {
"type": "string",
"description": "Human-readable name of this resource."
},
"rootPath": {
"type": "string"
},
"createdAt": {
"type": "string",
"format": "date-time",
"description": "Date and time this record was created, serialized as ISO 8601."
},
"projectId": {
"type": "number",
"description": "Atomic project that owns this resource."
},
"updatedAt": {
"type": "string",
"format": "date-time",
"description": "Date and time this record was last updated, serialized as ISO 8601."
},
"description": {
"type": "string",
"description": "Saved description of this resource or its purpose."
}
},
"description": "Operation data; optional fields may be absent."
},
"error": {
"type": "string",
"description": "Why the operation failed."
},
"details": {
"type": "object",
"description": "Diagnostics keyed by errorCode."
},
"message": {
"type": "string",
"description": "Outcome or recovery instructions. Project selection means no action ran."
},
"success": {
"type": "boolean",
"description": "Operation success; on false inspect error/errorCode."
},
"upgrade": {
"type": "object",
"description": "Plan-upgrade guidance for an unavailable capability."
},
"category": {
"type": "string",
"description": "Failure category, such as invalid_input or plan_required."
},
"expected": {
"type": "boolean",
"description": "Whether this is an anticipated access, input, plan or state failure."
},
"projects": {
"type": "array",
"items": {
"type": "object",
"properties": {
"id": {
"type": "number",
"description": "Project ID for projectId."
},
"name": {
"type": "string",
"description": "Project name."
}
},
"description": "Accessible project."
},
"description": "Accessible project choices. Select a projectId and retry."
},
"errorCode": {
"type": "string",
"description": "Failure code for recovery."
},
"retryable": {
"type": "boolean",
"description": "Whether an unchanged request can be retried."
},
"statusCode": {
"type": "number",
"description": "HTTP-style failure status."
},
"executionTime": {
"type": "string",
"description": "Elapsed time in seconds, with an s suffix."
}
},
"description": "Operation result envelope."
}
Original tool metadata
{
"name": "create_knowledge_base",
"title": "Create knowledge base",
"description": "Create a purpose-specific knowledge base. A clear description is required and controls retrieval context, not authorization.\n\nCreates a retrieval container, not an authorization boundary. Use list_knowledge_bases to reuse a suitable base; add_knowledge_file supplies its canonical content.",
"inputSchema": {
"type": "object",
"required": [
"name",
"description"
],
"properties": {
"name": {
"type": "string",
"maxLength": 255,
"minLength": 1,
"description": "Human-readable knowledge-base name."
},
"context": {
"type": "string",
"maxLength": 120,
"description": "Short purpose of this call for the activity log. Exclude personal data and private source content."
},
"llm_model": {
"type": "string",
"maxLength": 128,
"description": "Use the exact model ID executing this call, from runtime/system context, for usage attribution. Supply it on every Atomic MCP tool call, including discovery and feedback, and update it if the model changes. Use the model ID rather than the client app name. If unavailable, omit it; never guess or ask the user."
},
"projectId": {
"type": "number",
"description": "Atomic project ID from list_projects. Omit to use the configured project; if asked to choose, select one of the accessible returned IDs."
},
"description": {
"type": "string",
"maxLength": 1000,
"minLength": 10,
"description": "Purpose, scope, and intended content for this knowledge base."
}
},
"additionalProperties": false
},
"outputSchema": {
"type": "object",
"required": [
"success"
],
"properties": {
"url": {
"type": "string",
"description": "Link for resolving the failure or completing the operation."
},
"data": {
"type": "object",
"required": [
"id",
"projectId",
"name",
"description",
"rootPath",
"createdAt",
"updatedAt"
],
"properties": {
"id": {
"type": "number",
"description": "Identifier of this returned resource. Use it for subsequent reads or edits of the same resource."
},
"name": {
"type": "string",
"description": "Human-readable name of this resource."
},
"rootPath": {
"type": "string"
},
"createdAt": {
"type": "string",
"format": "date-time",
"description": "Date and time this record was created, serialized as ISO 8601."
},
"projectId": {
"type": "number",
"description": "Atomic project that owns this resource."
},
"updatedAt": {
"type": "string",
"format": "date-time",
"description": "Date and time this record was last updated, serialized as ISO 8601."
},
"description": {
"type": "string",
"description": "Saved description of this resource or its purpose."
}
},
"description": "Operation data; optional fields may be absent."
},
"error": {
"type": "string",
"description": "Why the operation failed."
},
"details": {
"type": "object",
"description": "Diagnostics keyed by errorCode."
},
"message": {
"type": "string",
"description": "Outcome or recovery instructions. Project selection means no action ran."
},
"success": {
"type": "boolean",
"description": "Operation success; on false inspect error/errorCode."
},
"upgrade": {
"type": "object",
"description": "Plan-upgrade guidance for an unavailable capability."
},
"category": {
"type": "string",
"description": "Failure category, such as invalid_input or plan_required."
},
"expected": {
"type": "boolean",
"description": "Whether this is an anticipated access, input, plan or state failure."
},
"projects": {
"type": "array",
"items": {
"type": "object",
"properties": {
"id": {
"type": "number",
"description": "Project ID for projectId."
},
"name": {
"type": "string",
"description": "Project name."
}
},
"description": "Accessible project."
},
"description": "Accessible project choices. Select a projectId and retry."
},
"errorCode": {
"type": "string",
"description": "Failure code for recovery."
},
"retryable": {
"type": "boolean",
"description": "Whether an unchanged request can be retried."
},
"statusCode": {
"type": "number",
"description": "HTTP-style failure status."
},
"executionTime": {
"type": "string",
"description": "Elapsed time in seconds, with an s suffix."
}
},
"description": "Operation result envelope."
},
"annotations": {
"readOnlyHint": false,
"openWorldHint": false,
"idempotentHint": false,
"destructiveHint": false
}
}
The title clearly communicates the tool’s action and subject. Keep it concise.
Description82/100
Create a folder in an explicit knowledge base. Omit parentFolderId for the base root; list the base first if the destination ID is unknown.
Use list_knowledge_folder to choose the parent. Creates a folder inside the explicit knowledge base, not a new base or a content/grid collection folder.
The description explains the capability, when to use it, and what to expect.
Inputs86/100
Remove validation rules already expressed in this field’s schema; describe its meaning and usage instead.
knowledgeBaseId
Destination or search-scope knowledge-base ID from list_knowledge_bases; the base must be accessible in this project.
Remove validation rules already expressed in this field’s schema; describe its meaning and usage instead.
parentFolderId
Optional parent folder ID. Omit for the base root.
Remove validation rules already expressed in this field’s schema; describe its meaning and usage instead.
name
Folder name.
Remove validation rules already expressed in this field’s schema; describe its meaning and usage instead.
description
Optional folder purpose or null.
Remove validation rules already expressed in this field’s schema; describe its meaning and usage instead.
projectId
Atomic project ID from list_projects. Omit to use the configured project; if asked to choose, select one of the accessible returned IDs.
Clear enough to supply this argument.
context
Short purpose of this call for the activity log. Exclude personal data and private source content.
Clear enough to supply this argument.
llm_model
Use the exact model ID executing this call, from runtime/system context, for usage attribution. Supply it on every Atomic MCP tool call, including discovery and feedback, and update it if the model changes. Use the model ID rather than the client app name. If unavailable, omit it; never guess or ask the user.
{
"type": "object",
"required": [
"success"
],
"properties": {
"url": {
"type": "string",
"description": "Link for resolving the failure or completing the operation."
},
"data": {
"type": "object",
"required": [
"id",
"knowledgeBaseId",
"name",
"path",
"createdAt",
"updatedAt"
],
"properties": {
"id": {
"type": "number",
"description": "Identifier of this returned resource. Use it for subsequent reads or edits of the same resource."
},
"name": {
"type": "string",
"description": "Human-readable name of this resource."
},
"path": {
"type": "string"
},
"createdAt": {
"type": "string",
"format": "date-time",
"description": "Date and time this record was created, serialized as ISO 8601."
},
"updatedAt": {
"type": "string",
"format": "date-time",
"description": "Date and time this record was last updated, serialized as ISO 8601."
},
"description": {
"anyOf": [
{
"type": "null"
},
{
"type": "string"
}
],
"description": "Saved description of this resource or its purpose."
},
"parentFolderId": {
"anyOf": [
{
"type": "null"
},
{
"type": "number"
}
]
},
"knowledgeBaseId": {
"type": "number"
}
},
"description": "Operation data; optional fields may be absent."
},
"error": {
"type": "string",
"description": "Why the operation failed."
},
"details": {
"type": "object",
"description": "Diagnostics keyed by errorCode."
},
"message": {
"type": "string",
"description": "Outcome or recovery instructions. Project selection means no action ran."
},
"success": {
"type": "boolean",
"description": "Operation success; on false inspect error/errorCode."
},
"upgrade": {
"type": "object",
"description": "Plan-upgrade guidance for an unavailable capability."
},
"category": {
"type": "string",
"description": "Failure category, such as invalid_input or plan_required."
},
"expected": {
"type": "boolean",
"description": "Whether this is an anticipated access, input, plan or state failure."
},
"projects": {
"type": "array",
"items": {
"type": "object",
"properties": {
"id": {
"type": "number",
"description": "Project ID for projectId."
},
"name": {
"type": "string",
"description": "Project name."
}
},
"description": "Accessible project."
},
"description": "Accessible project choices. Select a projectId and retry."
},
"errorCode": {
"type": "string",
"description": "Failure code for recovery."
},
"retryable": {
"type": "boolean",
"description": "Whether an unchanged request can be retried."
},
"statusCode": {
"type": "number",
"description": "HTTP-style failure status."
},
"executionTime": {
"type": "string",
"description": "Elapsed time in seconds, with an s suffix."
}
},
"description": "Operation result envelope."
}
Original tool metadata
{
"name": "create_knowledge_folder",
"title": "Create knowledge folder",
"description": "Create a folder in an explicit knowledge base. Omit parentFolderId for the base root; list the base first if the destination ID is unknown.\n\nUse list_knowledge_folder to choose the parent. Creates a folder inside the explicit knowledge base, not a new base or a content/grid collection folder.",
"inputSchema": {
"type": "object",
"required": [
"knowledgeBaseId",
"name"
],
"properties": {
"name": {
"type": "string",
"maxLength": 255,
"minLength": 1,
"description": "Folder name."
},
"context": {
"type": "string",
"maxLength": 120,
"description": "Short purpose of this call for the activity log. Exclude personal data and private source content."
},
"llm_model": {
"type": "string",
"maxLength": 128,
"description": "Use the exact model ID executing this call, from runtime/system context, for usage attribution. Supply it on every Atomic MCP tool call, including discovery and feedback, and update it if the model changes. Use the model ID rather than the client app name. If unavailable, omit it; never guess or ask the user."
},
"projectId": {
"type": "number",
"description": "Atomic project ID from list_projects. Omit to use the configured project; if asked to choose, select one of the accessible returned IDs."
},
"description": {
"oneOf": [
{
"type": "string",
"maxLength": 1000,
"minLength": 1
},
{
"type": "null"
}
],
"description": "Optional folder purpose or null."
},
"parentFolderId": {
"type": "number",
"minimum": 1,
"multipleOf": 1,
"description": "Optional parent folder ID. Omit for the base root."
},
"knowledgeBaseId": {
"type": "number",
"minimum": 1,
"multipleOf": 1,
"description": "Destination or search-scope knowledge-base ID from list_knowledge_bases; the base must be accessible in this project."
}
},
"additionalProperties": false
},
"outputSchema": {
"type": "object",
"required": [
"success"
],
"properties": {
"url": {
"type": "string",
"description": "Link for resolving the failure or completing the operation."
},
"data": {
"type": "object",
"required": [
"id",
"knowledgeBaseId",
"name",
"path",
"createdAt",
"updatedAt"
],
"properties": {
"id": {
"type": "number",
"description": "Identifier of this returned resource. Use it for subsequent reads or edits of the same resource."
},
"name": {
"type": "string",
"description": "Human-readable name of this resource."
},
"path": {
"type": "string"
},
"createdAt": {
"type": "string",
"format": "date-time",
"description": "Date and time this record was created, serialized as ISO 8601."
},
"updatedAt": {
"type": "string",
"format": "date-time",
"description": "Date and time this record was last updated, serialized as ISO 8601."
},
"description": {
"anyOf": [
{
"type": "null"
},
{
"type": "string"
}
],
"description": "Saved description of this resource or its purpose."
},
"parentFolderId": {
"anyOf": [
{
"type": "null"
},
{
"type": "number"
}
]
},
"knowledgeBaseId": {
"type": "number"
}
},
"description": "Operation data; optional fields may be absent."
},
"error": {
"type": "string",
"description": "Why the operation failed."
},
"details": {
"type": "object",
"description": "Diagnostics keyed by errorCode."
},
"message": {
"type": "string",
"description": "Outcome or recovery instructions. Project selection means no action ran."
},
"success": {
"type": "boolean",
"description": "Operation success; on false inspect error/errorCode."
},
"upgrade": {
"type": "object",
"description": "Plan-upgrade guidance for an unavailable capability."
},
"category": {
"type": "string",
"description": "Failure category, such as invalid_input or plan_required."
},
"expected": {
"type": "boolean",
"description": "Whether this is an anticipated access, input, plan or state failure."
},
"projects": {
"type": "array",
"items": {
"type": "object",
"properties": {
"id": {
"type": "number",
"description": "Project ID for projectId."
},
"name": {
"type": "string",
"description": "Project name."
}
},
"description": "Accessible project."
},
"description": "Accessible project choices. Select a projectId and retry."
},
"errorCode": {
"type": "string",
"description": "Failure code for recovery."
},
"retryable": {
"type": "boolean",
"description": "Whether an unchanged request can be retried."
},
"statusCode": {
"type": "number",
"description": "HTTP-style failure status."
},
"executionTime": {
"type": "string",
"description": "Elapsed time in seconds, with an s suffix."
}
},
"description": "Operation result envelope."
},
"annotations": {
"readOnlyHint": false,
"openWorldHint": false,
"idempotentHint": false,
"destructiveHint": false
}
}
The title clearly communicates the tool’s action and subject. Keep it concise.
Description96/100
Create the requested Atomic project with a required paymentPlanId from get_payment_plans. Requires project creation and full workspace billing permissions. Without a workspace subscription, creates the project without an assigned paid plan and returns Stripe checkout for THAT new project; the user must complete payment. With an active subscription, leaves the new project unbilled and requires interactive plan selection in Atomic workspace billing. Never upgrade another project to enable creation. Returns requestedPaymentPlanId, actual paymentPlanId and billing.status: checkout_required, interactive_billing_required or failed. If billing fails, the project still exists; use the returned recovery tool and project ID, never repeat create_project. Does not connect Google accounts
Use list_workspaces and get_payment_plans to select the workspace and plan. Creates project state; a returned checkout requirement is not a completed purchase or an active subscription.
The description explains the capability, when to use it, and what to expect.
Inputs79/100
Remove validation rules already expressed in this field’s schema; describe its meaning and usage instead.
workspaceId
Atomic workspace identifier from list_workspaces. The acting user must have access to that workspace.
Clear enough to supply this argument.
paymentPlanId
Active Atomic plan identifier from get_payment_plans.
Remove validation rules already expressed in this field’s schema; describe its meaning and usage instead.
name
Human-readable name of the item being created or edited.
Explain the meaning of this value, not just its name.
domain
Website URL including https:// or http://
Clear enough to supply this argument.
urlSlug
URL slug identifying the workspace, project, or destination item.
Clarify units, where to obtain this value, or conventions not already expressed in the schema.
industry
Industry used to classify or contextualize the project.
Remove validation rules already expressed in this field’s schema; describe its meaning and usage instead.
serpLocationId
Search location identifier from get_serp_locations.
Clear enough to supply this argument.
brandMentionVariations
Canonical brand name and spelling, spacing, acronym, domain, or product aliases used to recognize branded mentions.
Clear enough to supply this argument.
context
Short purpose of this call for the activity log. Exclude personal data and private source content.
Remove validation rules already expressed in this field’s schema; describe its meaning and usage instead.
llm_model
Use the exact model ID executing this call, from runtime/system context, for usage attribution. Supply it on every Atomic MCP tool call, including discovery and feedback, and update it if the model changes. Use the model ID rather than the client app name. If unavailable, omit it; never guess or ask the user.
Align the output schema with the tool’s documented result.
View output schema
{
"type": "object",
"required": [
"success"
],
"properties": {
"url": {
"type": "string",
"description": "Link for resolving the failure or completing the operation."
},
"data": {
"anyOf": [
{
"type": "object",
"required": [
"paymentPlanId",
"billing",
"requestedPaymentPlanId"
],
"properties": {
"name": {
"description": "Human-readable name of this resource."
},
"domain": {
"description": "Website domain associated with this result."
},
"billing": {
"type": "object",
"required": [
"status",
"nextAction",
"message"
],
"properties": {
"status": {
"type": "string",
"description": "Current saved or execution state reported by the operation."
},
"message": {
"type": "string",
"description": "Outcome, explanation or recovery instructions returned by the operation."
},
"nextAction": {
"type": "string"
}
}
},
"projectId": {
"description": "Atomic project that owns this resource."
},
"workspaceId": {
"description": "Atomic workspace that owns this project or resource."
},
"paymentPlanId": {
"type": "null",
"description": "Atomic plan identifier associated with this subscription or checkout."
},
"requestedPaymentPlanId": {
"type": "number"
}
}
},
{
"type": "object",
"required": [
"paymentPlanId",
"billing",
"requestedPaymentPlanId"
],
"properties": {
"name": {
"description": "Human-readable name of this resource."
},
"domain": {
"description": "Website domain associated with this result."
},
"billing": {
"type": "object",
"required": [
"status",
"nextAction"
],
"properties": {
"status": {
"type": "string",
"description": "Current saved or execution state reported by the operation."
},
"checkout": {
"description": "JSON returned by the connected provider or selected operation; its fields depend on that operation."
},
"nextAction": {
"type": "string"
}
}
},
"projectId": {
"description": "Atomic project that owns this resource."
},
"workspaceId": {
"description": "Atomic workspace that owns this project or resource."
},
"paymentPlanId": {
"type": "null",
"description": "Atomic plan identifier associated with this subscription or checkout."
},
"requestedPaymentPlanId": {
"type": "number"
}
}
},
{
"type": "object",
"required": [
"paymentPlanId",
"billing",
"requestedPaymentPlanId"
],
"properties": {
"name": {
"description": "Human-readable name of this resource."
},
"domain": {
"description": "Website domain associated with this result."
},
"billing": {
"type": "object",
"required": [
"status",
"error",
"recovery",
"nextAction"
],
"properties": {
"error": {
"type": "string",
"description": "Failure details reported by this operation or its provider."
},
"status": {
"type": "string",
"description": "Current saved or execution state reported by the operation."
},
"recovery": {
"type": "object",
"required": [
"tool",
"arguments"
],
"properties": {
"tool": {
"type": "string"
},
"arguments": {
"type": "object",
"description": "Nested operation-specific fields."
}
}
},
"nextAction": {
"type": "string"
}
}
},
"projectId": {
"description": "Atomic project that owns this resource."
},
"workspaceId": {
"description": "Atomic workspace that owns this project or resource."
},
"paymentPlanId": {
"type": "null",
"description": "Atomic plan identifier associated with this subscription or checkout."
},
"requestedPaymentPlanId": {
"type": "number"
}
}
}
],
"description": "Operation data; optional fields may be absent."
},
"error": {
"type": "string",
"description": "Why the operation failed."
},
"details": {
"type": "object",
"description": "Diagnostics keyed by errorCode."
},
"message": {
"type": "string",
"description": "Outcome or recovery instructions. Project selection means no action ran."
},
"success": {
"type": "boolean",
"description": "Operation success; on false inspect error/errorCode."
},
"upgrade": {
"type": "object",
"description": "Plan-upgrade guidance for an unavailable capability."
},
"category": {
"type": "string",
"description": "Failure category, such as invalid_input or plan_required."
},
"expected": {
"type": "boolean",
"description": "Whether this is an anticipated access, input, plan or state failure."
},
"projects": {
"type": "array",
"items": {
"type": "object",
"properties": {
"id": {
"type": "number",
"description": "Project ID for projectId."
},
"name": {
"type": "string",
"description": "Project name."
}
},
"description": "Accessible project."
},
"description": "Accessible project choices. Select a projectId and retry."
},
"errorCode": {
"type": "string",
"description": "Failure code for recovery."
},
"retryable": {
"type": "boolean",
"description": "Whether an unchanged request can be retried."
},
"statusCode": {
"type": "number",
"description": "HTTP-style failure status."
},
"executionTime": {
"type": "string",
"description": "Elapsed time in seconds, with an s suffix."
}
},
"description": "Operation result envelope."
}
Original tool metadata
{
"name": "create_project",
"title": "Create project",
"description": "Create the requested Atomic project with a required paymentPlanId from get_payment_plans. Requires project creation and full workspace billing permissions. Without a workspace subscription, creates the project without an assigned paid plan and returns Stripe checkout for THAT new project; the user must complete payment. With an active subscription, leaves the new project unbilled and requires interactive plan selection in Atomic workspace billing. Never upgrade another project to enable creation. Returns requestedPaymentPlanId, actual paymentPlanId and billing.status: checkout_required, interactive_billing_required or failed. If billing fails, the project still exists; use the returned recovery tool and project ID, never repeat create_project. Does not connect Google accounts\n\nUse list_workspaces and get_payment_plans to select the workspace and plan. Creates project state; a returned checkout requirement is not a completed purchase or an active subscription.",
"inputSchema": {
"type": "object",
"required": [
"workspaceId",
"name",
"domain",
"paymentPlanId",
"industry",
"serpLocationId"
],
"properties": {
"name": {
"type": "string",
"minLength": 1,
"description": "Human-readable name of the item being created or edited."
},
"domain": {
"type": "string",
"description": "Website URL including https:// or http://"
},
"context": {
"type": "string",
"maxLength": 120,
"description": "Short purpose of this call for the activity log. Exclude personal data and private source content."
},
"urlSlug": {
"type": "string",
"description": "URL slug identifying the workspace, project, or destination item."
},
"industry": {
"type": "string",
"minLength": 1,
"description": "Industry used to classify or contextualize the project."
},
"llm_model": {
"type": "string",
"maxLength": 128,
"description": "Use the exact model ID executing this call, from runtime/system context, for usage attribution. Supply it on every Atomic MCP tool call, including discovery and feedback, and update it if the model changes. Use the model ID rather than the client app name. If unavailable, omit it; never guess or ask the user."
},
"workspaceId": {
"type": "number",
"minimum": 1,
"multipleOf": 1,
"description": "Atomic workspace identifier from list_workspaces. The acting user must have access to that workspace."
},
"paymentPlanId": {
"type": "number",
"minimum": 1,
"multipleOf": 1,
"description": "Active Atomic plan identifier from get_payment_plans."
},
"serpLocationId": {
"type": "number",
"minimum": 1,
"description": "Search location identifier from get_serp_locations."
},
"brandMentionVariations": {
"type": "array",
"items": {
"type": "string"
},
"description": "Canonical brand name and spelling, spacing, acronym, domain, or product aliases used to recognize branded mentions."
}
},
"additionalProperties": false
},
"outputSchema": {
"type": "object",
"required": [
"success"
],
"properties": {
"url": {
"type": "string",
"description": "Link for resolving the failure or completing the operation."
},
"data": {
"anyOf": [
{
"type": "object",
"required": [
"paymentPlanId",
"billing",
"requestedPaymentPlanId"
],
"properties": {
"name": {
"description": "Human-readable name of this resource."
},
"domain": {
"description": "Website domain associated with this result."
},
"billing": {
"type": "object",
"required": [
"status",
"nextAction",
"message"
],
"properties": {
"status": {
"type": "string",
"description": "Current saved or execution state reported by the operation."
},
"message": {
"type": "string",
"description": "Outcome, explanation or recovery instructions returned by the operation."
},
"nextAction": {
"type": "string"
}
}
},
"projectId": {
"description": "Atomic project that owns this resource."
},
"workspaceId": {
"description": "Atomic workspace that owns this project or resource."
},
"paymentPlanId": {
"type": "null",
"description": "Atomic plan identifier associated with this subscription or checkout."
},
"requestedPaymentPlanId": {
"type": "number"
}
}
},
{
"type": "object",
"required": [
"paymentPlanId",
"billing",
"requestedPaymentPlanId"
],
"properties": {
"name": {
"description": "Human-readable name of this resource."
},
"domain": {
"description": "Website domain associated with this result."
},
"billing": {
"type": "object",
"required": [
"status",
"nextAction"
],
"properties": {
"status": {
"type": "string",
"description": "Current saved or execution state reported by the operation."
},
"checkout": {
"description": "JSON returned by the connected provider or selected operation; its fields depend on that operation."
},
"nextAction": {
"type": "string"
}
}
},
"projectId": {
"description": "Atomic project that owns this resource."
},
"workspaceId": {
"description": "Atomic workspace that owns this project or resource."
},
"paymentPlanId": {
"type": "null",
"description": "Atomic plan identifier associated with this subscription or checkout."
},
"requestedPaymentPlanId": {
"type": "number"
}
}
},
{
"type": "object",
"required": [
"paymentPlanId",
"billing",
"requestedPaymentPlanId"
],
"properties": {
"name": {
"description": "Human-readable name of this resource."
},
"domain": {
"description": "Website domain associated with this result."
},
"billing": {
"type": "object",
"required": [
"status",
"error",
"recovery",
"nextAction"
],
"properties": {
"error": {
"type": "string",
"description": "Failure details reported by this operation or its provider."
},
"status": {
"type": "string",
"description": "Current saved or execution state reported by the operation."
},
"recovery": {
"type": "object",
"required": [
"tool",
"arguments"
],
"properties": {
"tool": {
"type": "string"
},
"arguments": {
"type": "object",
"description": "Nested operation-specific fields."
}
}
},
"nextAction": {
"type": "string"
}
}
},
"projectId": {
"description": "Atomic project that owns this resource."
},
"workspaceId": {
"description": "Atomic workspace that owns this project or resource."
},
"paymentPlanId": {
"type": "null",
"description": "Atomic plan identifier associated with this subscription or checkout."
},
"requestedPaymentPlanId": {
"type": "number"
}
}
}
],
"description": "Operation data; optional fields may be absent."
},
"error": {
"type": "string",
"description": "Why the operation failed."
},
"details": {
"type": "object",
"description": "Diagnostics keyed by errorCode."
},
"message": {
"type": "string",
"description": "Outcome or recovery instructions. Project selection means no action ran."
},
"success": {
"type": "boolean",
"description": "Operation success; on false inspect error/errorCode."
},
"upgrade": {
"type": "object",
"description": "Plan-upgrade guidance for an unavailable capability."
},
"category": {
"type": "string",
"description": "Failure category, such as invalid_input or plan_required."
},
"expected": {
"type": "boolean",
"description": "Whether this is an anticipated access, input, plan or state failure."
},
"projects": {
"type": "array",
"items": {
"type": "object",
"properties": {
"id": {
"type": "number",
"description": "Project ID for projectId."
},
"name": {
"type": "string",
"description": "Project name."
}
},
"description": "Accessible project."
},
"description": "Accessible project choices. Select a projectId and retry."
},
"errorCode": {
"type": "string",
"description": "Failure code for recovery."
},
"retryable": {
"type": "boolean",
"description": "Whether an unchanged request can be retried."
},
"statusCode": {
"type": "number",
"description": "HTTP-style failure status."
},
"executionTime": {
"type": "string",
"description": "Elapsed time in seconds, with an s suffix."
}
},
"description": "Operation result envelope."
},
"annotations": {
"readOnlyHint": false,
"openWorldHint": false,
"idempotentHint": false,
"destructiveHint": false
}
}
The title clearly communicates the tool’s action and subject. Keep it concise.
Description90/100
Create one AI-search prompt topic in the current project. Requires full AI Search permission.
Use get_project_prompt_topics to inspect existing topics first. Creates the grouping only; add_project_prompts adds saved tracked questions.
The description explains the capability, when to use it, and what to expect.
Inputs80/100
Remove validation rules already expressed in this field’s schema; describe its meaning and usage instead.
name
Human-readable name of the item being created or edited.
Remove validation rules already expressed in this field’s schema; describe its meaning and usage instead.
description
Human-readable purpose or description of this item. On edits, preserve existing text unless replacing it intentionally.
Remove validation rules already expressed in this field’s schema; describe its meaning and usage instead.
projectId
Atomic project ID from list_projects. Omit to use the configured project; if asked to choose, select one of the accessible returned IDs.
Clear enough to supply this argument.
context
Short purpose of this call for the activity log. Exclude personal data and private source content.
Remove validation rules already expressed in this field’s schema; describe its meaning and usage instead.
llm_model
Use the exact model ID executing this call, from runtime/system context, for usage attribution. Supply it on every Atomic MCP tool call, including discovery and feedback, and update it if the model changes. Use the model ID rather than the client app name. If unavailable, omit it; never guess or ask the user.
Remove validation rules already expressed in this field’s schema; describe its meaning and usage instead.
{
"type": "object",
"required": [
"success"
],
"properties": {
"url": {
"type": "string",
"description": "Link for resolving the failure or completing the operation."
},
"data": {
"type": "object",
"required": [
"topic"
],
"properties": {
"topic": {
"type": "object",
"required": [
"id",
"projectId",
"name",
"createdAt",
"updatedAt"
],
"properties": {
"id": {
"type": "number",
"description": "Identifier of this returned resource. Use it for subsequent reads or edits of the same resource."
},
"name": {
"type": "string",
"description": "Human-readable name of this resource."
},
"createdAt": {
"type": "string",
"format": "date-time",
"description": "Date and time this record was created, serialized as ISO 8601."
},
"projectId": {
"type": "number",
"description": "Atomic project that owns this resource."
},
"updatedAt": {
"type": "string",
"format": "date-time",
"description": "Date and time this record was last updated, serialized as ISO 8601."
},
"description": {
"anyOf": [
{
"type": "null"
},
{
"type": "string"
}
],
"description": "Saved description of this resource or its purpose."
},
"promptCount": {
"type": "number"
}
}
}
},
"description": "Operation data; optional fields may be absent."
},
"error": {
"type": "string",
"description": "Why the operation failed."
},
"details": {
"type": "object",
"description": "Diagnostics keyed by errorCode."
},
"message": {
"type": "string",
"description": "Outcome or recovery instructions. Project selection means no action ran."
},
"success": {
"type": "boolean",
"description": "Operation success; on false inspect error/errorCode."
},
"upgrade": {
"type": "object",
"description": "Plan-upgrade guidance for an unavailable capability."
},
"category": {
"type": "string",
"description": "Failure category, such as invalid_input or plan_required."
},
"expected": {
"type": "boolean",
"description": "Whether this is an anticipated access, input, plan or state failure."
},
"projects": {
"type": "array",
"items": {
"type": "object",
"properties": {
"id": {
"type": "number",
"description": "Project ID for projectId."
},
"name": {
"type": "string",
"description": "Project name."
}
},
"description": "Accessible project."
},
"description": "Accessible project choices. Select a projectId and retry."
},
"errorCode": {
"type": "string",
"description": "Failure code for recovery."
},
"retryable": {
"type": "boolean",
"description": "Whether an unchanged request can be retried."
},
"statusCode": {
"type": "number",
"description": "HTTP-style failure status."
},
"executionTime": {
"type": "string",
"description": "Elapsed time in seconds, with an s suffix."
}
},
"description": "Operation result envelope."
}
Original tool metadata
{
"name": "create_project_prompt_topic",
"title": "Create project prompt topic",
"description": "Create one AI-search prompt topic in the current project. Requires full AI Search permission.\n\nUse get_project_prompt_topics to inspect existing topics first. Creates the grouping only; add_project_prompts adds saved tracked questions.",
"inputSchema": {
"type": "object",
"required": [
"name"
],
"properties": {
"name": {
"type": "string",
"minLength": 1,
"description": "Human-readable name of the item being created or edited."
},
"context": {
"type": "string",
"maxLength": 120,
"description": "Short purpose of this call for the activity log. Exclude personal data and private source content."
},
"llm_model": {
"type": "string",
"maxLength": 128,
"description": "Use the exact model ID executing this call, from runtime/system context, for usage attribution. Supply it on every Atomic MCP tool call, including discovery and feedback, and update it if the model changes. Use the model ID rather than the client app name. If unavailable, omit it; never guess or ask the user."
},
"projectId": {
"type": "number",
"description": "Atomic project ID from list_projects. Omit to use the configured project; if asked to choose, select one of the accessible returned IDs."
},
"description": {
"type": "string",
"description": "Human-readable purpose or description of this item. On edits, preserve existing text unless replacing it intentionally."
}
},
"additionalProperties": false
},
"outputSchema": {
"type": "object",
"required": [
"success"
],
"properties": {
"url": {
"type": "string",
"description": "Link for resolving the failure or completing the operation."
},
"data": {
"type": "object",
"required": [
"topic"
],
"properties": {
"topic": {
"type": "object",
"required": [
"id",
"projectId",
"name",
"createdAt",
"updatedAt"
],
"properties": {
"id": {
"type": "number",
"description": "Identifier of this returned resource. Use it for subsequent reads or edits of the same resource."
},
"name": {
"type": "string",
"description": "Human-readable name of this resource."
},
"createdAt": {
"type": "string",
"format": "date-time",
"description": "Date and time this record was created, serialized as ISO 8601."
},
"projectId": {
"type": "number",
"description": "Atomic project that owns this resource."
},
"updatedAt": {
"type": "string",
"format": "date-time",
"description": "Date and time this record was last updated, serialized as ISO 8601."
},
"description": {
"anyOf": [
{
"type": "null"
},
{
"type": "string"
}
],
"description": "Saved description of this resource or its purpose."
},
"promptCount": {
"type": "number"
}
}
}
},
"description": "Operation data; optional fields may be absent."
},
"error": {
"type": "string",
"description": "Why the operation failed."
},
"details": {
"type": "object",
"description": "Diagnostics keyed by errorCode."
},
"message": {
"type": "string",
"description": "Outcome or recovery instructions. Project selection means no action ran."
},
"success": {
"type": "boolean",
"description": "Operation success; on false inspect error/errorCode."
},
"upgrade": {
"type": "object",
"description": "Plan-upgrade guidance for an unavailable capability."
},
"category": {
"type": "string",
"description": "Failure category, such as invalid_input or plan_required."
},
"expected": {
"type": "boolean",
"description": "Whether this is an anticipated access, input, plan or state failure."
},
"projects": {
"type": "array",
"items": {
"type": "object",
"properties": {
"id": {
"type": "number",
"description": "Project ID for projectId."
},
"name": {
"type": "string",
"description": "Project name."
}
},
"description": "Accessible project."
},
"description": "Accessible project choices. Select a projectId and retry."
},
"errorCode": {
"type": "string",
"description": "Failure code for recovery."
},
"retryable": {
"type": "boolean",
"description": "Whether an unchanged request can be retried."
},
"statusCode": {
"type": "number",
"description": "HTTP-style failure status."
},
"executionTime": {
"type": "string",
"description": "Elapsed time in seconds, with an s suffix."
}
},
"description": "Operation result envelope."
},
"annotations": {
"readOnlyHint": false,
"openWorldHint": false,
"idempotentHint": false,
"destructiveHint": false
}
}
The title clearly communicates the tool’s action and subject. Keep it concise.
Description91/100
Create a reports folder with a name and optional description in the selected project.
Creates a folder for saved report items, not a new report item. Use list_report_folders to inspect existing destinations and update_report_folder to edit one; repeating create may add another folder.
The description explains the capability, when to use it, and what to expect.
Inputs80/100
Remove validation rules already expressed in this field’s schema; describe its meaning and usage instead.
name
Folder name.
Remove validation rules already expressed in this field’s schema; describe its meaning and usage instead.
description
Folder description. Use an empty string to clear it.
Remove validation rules already expressed in this field’s schema; describe its meaning and usage instead.
projectId
Atomic project ID from list_projects. Omit to use the configured project; if asked to choose, select one of the accessible returned IDs.
Clear enough to supply this argument.
context
Short purpose of this call for the activity log. Exclude personal data and private source content.
Remove validation rules already expressed in this field’s schema; describe its meaning and usage instead.
llm_model
Use the exact model ID executing this call, from runtime/system context, for usage attribution. Supply it on every Atomic MCP tool call, including discovery and feedback, and update it if the model changes. Use the model ID rather than the client app name. If unavailable, omit it; never guess or ask the user.
Remove validation rules already expressed in this field’s schema; describe its meaning and usage instead.
{
"type": "object",
"required": [
"success"
],
"properties": {
"url": {
"type": "string",
"description": "Link for resolving the failure or completing the operation."
},
"data": {
"type": "object",
"required": [
"id",
"projectId",
"collection",
"name",
"description"
],
"properties": {
"id": {
"type": "number",
"description": "Identifier of this returned resource. Use it for subsequent reads or edits of the same resource."
},
"name": {
"type": "string",
"description": "Human-readable name of this resource."
},
"projectId": {
"type": "number",
"description": "Atomic project that owns this resource."
},
"collection": {
"enum": [
"content",
"grids",
"workflows",
"reports"
],
"type": "string",
"description": "Atomic collection that owns these folders or items."
},
"description": {
"type": "string",
"description": "Saved description of this resource or its purpose."
}
},
"description": "Operation data; optional fields may be absent."
},
"error": {
"type": "string",
"description": "Why the operation failed."
},
"details": {
"type": "object",
"description": "Diagnostics keyed by errorCode."
},
"message": {
"type": "string",
"description": "Outcome or recovery instructions. Project selection means no action ran."
},
"success": {
"type": "boolean",
"description": "Operation success; on false inspect error/errorCode."
},
"upgrade": {
"type": "object",
"description": "Plan-upgrade guidance for an unavailable capability."
},
"category": {
"type": "string",
"description": "Failure category, such as invalid_input or plan_required."
},
"expected": {
"type": "boolean",
"description": "Whether this is an anticipated access, input, plan or state failure."
},
"projects": {
"type": "array",
"items": {
"type": "object",
"properties": {
"id": {
"type": "number",
"description": "Project ID for projectId."
},
"name": {
"type": "string",
"description": "Project name."
}
},
"description": "Accessible project."
},
"description": "Accessible project choices. Select a projectId and retry."
},
"errorCode": {
"type": "string",
"description": "Failure code for recovery."
},
"retryable": {
"type": "boolean",
"description": "Whether an unchanged request can be retried."
},
"statusCode": {
"type": "number",
"description": "HTTP-style failure status."
},
"executionTime": {
"type": "string",
"description": "Elapsed time in seconds, with an s suffix."
}
},
"description": "Operation result envelope."
}
Original tool metadata
{
"name": "create_report_folder",
"title": "Create report folder",
"description": "Create a reports folder with a name and optional description in the selected project.\n\nCreates a folder for saved report items, not a new report item. Use list_report_folders to inspect existing destinations and update_report_folder to edit one; repeating create may add another folder.",
"inputSchema": {
"type": "object",
"required": [
"name"
],
"properties": {
"name": {
"type": "string",
"maxLength": 120,
"minLength": 1,
"description": "Folder name."
},
"context": {
"type": "string",
"maxLength": 120,
"description": "Short purpose of this call for the activity log. Exclude personal data and private source content."
},
"llm_model": {
"type": "string",
"maxLength": 128,
"description": "Use the exact model ID executing this call, from runtime/system context, for usage attribution. Supply it on every Atomic MCP tool call, including discovery and feedback, and update it if the model changes. Use the model ID rather than the client app name. If unavailable, omit it; never guess or ask the user."
},
"projectId": {
"type": "number",
"description": "Atomic project ID from list_projects. Omit to use the configured project; if asked to choose, select one of the accessible returned IDs."
},
"description": {
"type": "string",
"maxLength": 2000,
"description": "Folder description. Use an empty string to clear it."
}
},
"additionalProperties": false
},
"outputSchema": {
"type": "object",
"required": [
"success"
],
"properties": {
"url": {
"type": "string",
"description": "Link for resolving the failure or completing the operation."
},
"data": {
"type": "object",
"required": [
"id",
"projectId",
"collection",
"name",
"description"
],
"properties": {
"id": {
"type": "number",
"description": "Identifier of this returned resource. Use it for subsequent reads or edits of the same resource."
},
"name": {
"type": "string",
"description": "Human-readable name of this resource."
},
"projectId": {
"type": "number",
"description": "Atomic project that owns this resource."
},
"collection": {
"enum": [
"content",
"grids",
"workflows",
"reports"
],
"type": "string",
"description": "Atomic collection that owns these folders or items."
},
"description": {
"type": "string",
"description": "Saved description of this resource or its purpose."
}
},
"description": "Operation data; optional fields may be absent."
},
"error": {
"type": "string",
"description": "Why the operation failed."
},
"details": {
"type": "object",
"description": "Diagnostics keyed by errorCode."
},
"message": {
"type": "string",
"description": "Outcome or recovery instructions. Project selection means no action ran."
},
"success": {
"type": "boolean",
"description": "Operation success; on false inspect error/errorCode."
},
"upgrade": {
"type": "object",
"description": "Plan-upgrade guidance for an unavailable capability."
},
"category": {
"type": "string",
"description": "Failure category, such as invalid_input or plan_required."
},
"expected": {
"type": "boolean",
"description": "Whether this is an anticipated access, input, plan or state failure."
},
"projects": {
"type": "array",
"items": {
"type": "object",
"properties": {
"id": {
"type": "number",
"description": "Project ID for projectId."
},
"name": {
"type": "string",
"description": "Project name."
}
},
"description": "Accessible project."
},
"description": "Accessible project choices. Select a projectId and retry."
},
"errorCode": {
"type": "string",
"description": "Failure code for recovery."
},
"retryable": {
"type": "boolean",
"description": "Whether an unchanged request can be retried."
},
"statusCode": {
"type": "number",
"description": "HTTP-style failure status."
},
"executionTime": {
"type": "string",
"description": "Elapsed time in seconds, with an s suffix."
}
},
"description": "Operation result envelope."
},
"annotations": {
"readOnlyHint": false,
"openWorldHint": false,
"idempotentHint": false,
"destructiveHint": false
}
}
The title clearly communicates the tool’s action and subject. Keep it concise.
Description91/100
Create a task in the current project. Always supply a non-empty title; a checklist does not replace the title. Example: {"title":"Add notable citations to the client report","checklist":[{"id":"research","label":"Verify citation evidence","completed":false}]}. In agent chat, assignment defaults to the current agent or the general agent for this conversation; omit agentId unless explicitly assigning an agent. An existing open task for the conversation is returned instead of creating a duplicate. Keep checklists phase-based and update each item as it finishes.
The description explains the capability, when to use it, and what to expect.
Inputs83/100
Remove validation rules already expressed in this field’s schema; describe its meaning and usage instead.
title
Non-empty title naming the work, for example "Add notable citations to the client report".
Remove validation rules already expressed in this field’s schema; describe its meaning and usage instead.
description
Optional task description
Explain the meaning of this value, not just its name.
dueDate
Optional valid calendar date in YYYY-MM-DD format, for example 2026-10-20. Omit when no deadline is set.
Remove validation rules already expressed in this field’s schema; describe its meaning and usage instead.
status
Optional initial status
Remove validation rules already expressed in this field’s schema; describe its meaning and usage instead.
assignmentMode
Optional assignment mode. Defaults to AGENT in chat conversations and MANUAL in UI-driven flows.
Remove validation rules already expressed in this field’s schema; describe its meaning and usage instead.
agentId
Optional positive agent ID for assignmentMode AGENT only. Omit agentId when assignmentMode is MANUAL. Chat-created general-agent tasks may omit it.
Remove validation rules already expressed in this field’s schema; describe its meaning and usage instead.
checklist › items › id
Stable item identifier within this task, for example "research".
Remove validation rules already expressed in this field’s schema; describe its meaning and usage instead.
checklist › items › label
Work or outcome this item tracks.
Clear enough to supply this argument.
checklist › items › completed
Whether this item is finished. Use false for unfinished work.
Clear enough to supply this argument.
projectId
Atomic project ID from list_projects. Omit to use the configured project; if asked to choose, select one of the accessible returned IDs.
Clear enough to supply this argument.
context
Short purpose of this call for the activity log. Exclude personal data and private source content.
Clear enough to supply this argument.
llm_model
Use the exact model ID executing this call, from runtime/system context, for usage attribution. Supply it on every Atomic MCP tool call, including discovery and feedback, and update it if the model changes. Use the model ID rather than the client app name. If unavailable, omit it; never guess or ask the user.
{
"type": "object",
"required": [
"success"
],
"properties": {
"url": {
"type": "string",
"description": "Link for resolving the failure or completing the operation."
},
"data": {
"type": "object",
"required": [
"projectId",
"title",
"status",
"assignmentMode",
"createdAt",
"updatedAt"
],
"properties": {
"id": {
"type": "number",
"description": "Identifier of this returned resource. Use it for subsequent reads or edits of the same resource."
},
"agent": {
"anyOf": [
{
"type": "null"
},
{
"type": "object",
"required": [
"name",
"type"
],
"properties": {
"id": {
"type": "number",
"description": "Identifier of this returned resource. Use it for subsequent reads or edits of the same resource."
},
"icon": {
"type": "object",
"required": [
"name",
"color"
],
"properties": {
"name": {
"type": "string",
"description": "Human-readable name of this resource."
},
"color": {
"enum": [
"gray",
"blue",
"teal",
"green",
"orange",
"red",
"magenta",
"purple"
],
"type": "string",
"description": "Color value saved for this visual element."
}
},
"description": "Icon identifier or image reference saved for this resource."
},
"name": {
"type": "string",
"description": "Human-readable name of this resource."
},
"type": {
"enum": [
"custom",
"predefined"
],
"type": "string",
"description": "Kind of the returned item; determines how its operation-specific fields should be interpreted."
},
"roleTitle": {
"anyOf": [
{
"type": "null"
},
{
"type": "string"
}
],
"description": "Human-readable title of the returned member role."
},
"organizationRole": {
"anyOf": [
{
"type": "null"
},
{
"type": "string",
"const": "solo"
},
{
"type": "string",
"const": "orchestrator"
},
{
"type": "string",
"const": "employee"
}
],
"description": "Workspace-level role associated with this membership."
}
}
}
],
"description": "Saved agent definition or context associated with this result."
},
"title": {
"type": "string",
"description": "Display or content title of this returned item."
},
"status": {
"enum": [
"OPEN",
"IN_PROGRESS",
"DONE",
"BLOCKED",
"CANCELED"
],
"type": "string",
"description": "Current saved or execution state reported by the operation."
},
"agentId": {
"anyOf": [
{
"type": "null"
},
{
"type": "number"
}
],
"description": "Saved Atomic agent associated with this resource or execution."
},
"dueDate": {
"anyOf": [
{
"type": "null"
},
{
"type": "string"
}
]
},
"activity": {
"anyOf": [
{
"type": "null"
},
{
"type": "array",
"items": {
"type": "object",
"required": [
"id",
"type",
"actor",
"message",
"createdAt"
],
"properties": {
"id": {
"type": "string",
"description": "Identifier of this returned resource. Use it for subsequent reads or edits of the same resource."
},
"type": {
"enum": [
"CREATED",
"CONVERSATION_LINKED",
"TITLE_UPDATED",
"DESCRIPTION_UPDATED",
"DUE_DATE_UPDATED",
"STATUS_UPDATED",
"ASSIGNEE_UPDATED",
"CHECKLIST_UPDATED"
],
"type": "string",
"description": "Kind of the returned item; determines how its operation-specific fields should be interpreted."
},
"actor": {
"type": "object",
"description": "Nested operation-specific fields."
},
"message": {
"type": "string",
"description": "Outcome, explanation or recovery instructions returned by the operation."
},
"createdAt": {
"type": "string",
"format": "date-time",
"description": "Date and time this record was created, serialized as ISO 8601."
},
"conversationId": {
"anyOf": [
{
"type": "null"
},
{
"type": "string"
}
],
"description": "Conversation associated with this task or execution."
}
}
}
}
]
},
"publicId": {
"type": "string"
},
"checklist": {
"anyOf": [
{
"type": "null"
},
{
"type": "array",
"items": {
"type": "object",
"required": [
"id",
"label",
"completed"
],
"properties": {
"id": {
"type": "string",
"description": "Identifier of this returned resource. Use it for subsequent reads or edits of the same resource."
},
"label": {
"type": "string",
"description": "Human-readable label reported by the provider."
},
"completed": {
"type": "boolean"
}
}
}
}
]
},
"createdAt": {
"type": "string",
"format": "date-time",
"description": "Date and time this record was created, serialized as ISO 8601."
},
"projectId": {
"type": "number",
"description": "Atomic project that owns this resource."
},
"updatedAt": {
"type": "string",
"format": "date-time",
"description": "Date and time this record was last updated, serialized as ISO 8601."
},
"description": {
"anyOf": [
{
"type": "null"
},
{
"type": "string"
}
],
"description": "Saved description of this resource or its purpose."
},
"assignmentMode": {
"enum": [
"MANUAL",
"AGENT"
],
"type": "string"
},
"sourceConversationId": {
"anyOf": [
{
"type": "null"
},
{
"type": "string"
}
],
"description": "Conversation that produced this saved result."
},
"sourceConversationIds": {
"anyOf": [
{
"type": "null"
},
{
"type": "array",
"items": {
"type": "string"
}
}
]
},
"isGeneralAgentAssignment": {
"type": "boolean"
}
},
"description": "Operation data; optional fields may be absent."
},
"error": {
"type": "string",
"description": "Why the operation failed."
},
"details": {
"type": "object",
"description": "Diagnostics keyed by errorCode."
},
"message": {
"type": "string",
"description": "Outcome or recovery instructions. Project selection means no action ran."
},
"success": {
"type": "boolean",
"description": "Operation success; on false inspect error/errorCode."
},
"upgrade": {
"type": "object",
"description": "Plan-upgrade guidance for an unavailable capability."
},
"category": {
"type": "string",
"description": "Failure category, such as invalid_input or plan_required."
},
"expected": {
"type": "boolean",
"description": "Whether this is an anticipated access, input, plan or state failure."
},
"projects": {
"type": "array",
"items": {
"type": "object",
"properties": {
"id": {
"type": "number",
"description": "Project ID for projectId."
},
"name": {
"type": "string",
"description": "Project name."
}
},
"description": "Accessible project."
},
"description": "Accessible project choices. Select a projectId and retry."
},
"errorCode": {
"type": "string",
"description": "Failure code for recovery."
},
"retryable": {
"type": "boolean",
"description": "Whether an unchanged request can be retried."
},
"statusCode": {
"type": "number",
"description": "HTTP-style failure status."
},
"executionTime": {
"type": "string",
"description": "Elapsed time in seconds, with an s suffix."
}
},
"description": "Operation result envelope."
}
Original tool metadata
{
"name": "create_task",
"title": "Create task",
"description": "Create a task in the current project. Always supply a non-empty title; a checklist does not replace the title. Example: {\"title\":\"Add notable citations to the client report\",\"checklist\":[{\"id\":\"research\",\"label\":\"Verify citation evidence\",\"completed\":false}]}. In agent chat, assignment defaults to the current agent or the general agent for this conversation; omit agentId unless explicitly assigning an agent. An existing open task for the conversation is returned instead of creating a duplicate. Keep checklists phase-based and update each item as it finishes.",
"inputSchema": {
"type": "object",
"required": [
"title"
],
"properties": {
"title": {
"type": "string",
"pattern": "\\S",
"maxLength": 255,
"minLength": 1,
"description": "Non-empty title naming the work, for example \"Add notable citations to the client report\"."
},
"status": {
"enum": [
"OPEN",
"IN_PROGRESS",
"DONE",
"BLOCKED",
"CANCELED"
],
"type": "string",
"description": "Optional initial status"
},
"agentId": {
"type": "number",
"minimum": 1,
"multipleOf": 1,
"description": "Optional positive agent ID for assignmentMode AGENT only. Omit agentId when assignmentMode is MANUAL. Chat-created general-agent tasks may omit it."
},
"context": {
"type": "string",
"maxLength": 120,
"description": "Short purpose of this call for the activity log. Exclude personal data and private source content."
},
"dueDate": {
"type": "string",
"format": "date",
"description": "Optional valid calendar date in YYYY-MM-DD format, for example 2026-10-20. Omit when no deadline is set."
},
"checklist": {
"type": "array",
"items": {
"type": "object",
"required": [
"id",
"label",
"completed"
],
"properties": {
"id": {
"type": "string",
"pattern": "\\S",
"minLength": 1,
"description": "Stable item identifier within this task, for example \"research\"."
},
"label": {
"type": "string",
"pattern": "\\S",
"minLength": 1,
"description": "Work or outcome this item tracks."
},
"completed": {
"type": "boolean",
"description": "Whether this item is finished. Use false for unfinished work."
}
},
"additionalProperties": false
},
"description": "Optional complete checklist. Prefer 3-5 concise phases, grouping parallel work. Every item needs a stable non-empty id, a non-empty label, and completed (false for new work). When updating, send the full list with existing item IDs; it replaces the saved checklist. Update progress as each item finishes."
},
"llm_model": {
"type": "string",
"maxLength": 128,
"description": "Use the exact model ID executing this call, from runtime/system context, for usage attribution. Supply it on every Atomic MCP tool call, including discovery and feedback, and update it if the model changes. Use the model ID rather than the client app name. If unavailable, omit it; never guess or ask the user."
},
"projectId": {
"type": "number",
"description": "Atomic project ID from list_projects. Omit to use the configured project; if asked to choose, select one of the accessible returned IDs."
},
"description": {
"type": "string",
"description": "Optional task description"
},
"assignmentMode": {
"enum": [
"MANUAL",
"AGENT"
],
"type": "string",
"description": "Optional assignment mode. Defaults to AGENT in chat conversations and MANUAL in UI-driven flows."
}
}
},
"outputSchema": {
"type": "object",
"required": [
"success"
],
"properties": {
"url": {
"type": "string",
"description": "Link for resolving the failure or completing the operation."
},
"data": {
"type": "object",
"required": [
"projectId",
"title",
"status",
"assignmentMode",
"createdAt",
"updatedAt"
],
"properties": {
"id": {
"type": "number",
"description": "Identifier of this returned resource. Use it for subsequent reads or edits of the same resource."
},
"agent": {
"anyOf": [
{
"type": "null"
},
{
"type": "object",
"required": [
"name",
"type"
],
"properties": {
"id": {
"type": "number",
"description": "Identifier of this returned resource. Use it for subsequent reads or edits of the same resource."
},
"icon": {
"type": "object",
"required": [
"name",
"color"
],
"properties": {
"name": {
"type": "string",
"description": "Human-readable name of this resource."
},
"color": {
"enum": [
"gray",
"blue",
"teal",
"green",
"orange",
"red",
"magenta",
"purple"
],
"type": "string",
"description": "Color value saved for this visual element."
}
},
"description": "Icon identifier or image reference saved for this resource."
},
"name": {
"type": "string",
"description": "Human-readable name of this resource."
},
"type": {
"enum": [
"custom",
"predefined"
],
"type": "string",
"description": "Kind of the returned item; determines how its operation-specific fields should be interpreted."
},
"roleTitle": {
"anyOf": [
{
"type": "null"
},
{
"type": "string"
}
],
"description": "Human-readable title of the returned member role."
},
"organizationRole": {
"anyOf": [
{
"type": "null"
},
{
"type": "string",
"const": "solo"
},
{
"type": "string",
"const": "orchestrator"
},
{
"type": "string",
"const": "employee"
}
],
"description": "Workspace-level role associated with this membership."
}
}
}
],
"description": "Saved agent definition or context associated with this result."
},
"title": {
"type": "string",
"description": "Display or content title of this returned item."
},
"status": {
"enum": [
"OPEN",
"IN_PROGRESS",
"DONE",
"BLOCKED",
"CANCELED"
],
"type": "string",
"description": "Current saved or execution state reported by the operation."
},
"agentId": {
"anyOf": [
{
"type": "null"
},
{
"type": "number"
}
],
"description": "Saved Atomic agent associated with this resource or execution."
},
"dueDate": {
"anyOf": [
{
"type": "null"
},
{
"type": "string"
}
]
},
"activity": {
"anyOf": [
{
"type": "null"
},
{
"type": "array",
"items": {
"type": "object",
"required": [
"id",
"type",
"actor",
"message",
"createdAt"
],
"properties": {
"id": {
"type": "string",
"description": "Identifier of this returned resource. Use it for subsequent reads or edits of the same resource."
},
"type": {
"enum": [
"CREATED",
"CONVERSATION_LINKED",
"TITLE_UPDATED",
"DESCRIPTION_UPDATED",
"DUE_DATE_UPDATED",
"STATUS_UPDATED",
"ASSIGNEE_UPDATED",
"CHECKLIST_UPDATED"
],
"type": "string",
"description": "Kind of the returned item; determines how its operation-specific fields should be interpreted."
},
"actor": {
"type": "object",
"description": "Nested operation-specific fields."
},
"message": {
"type": "string",
"description": "Outcome, explanation or recovery instructions returned by the operation."
},
"createdAt": {
"type": "string",
"format": "date-time",
"description": "Date and time this record was created, serialized as ISO 8601."
},
"conversationId": {
"anyOf": [
{
"type": "null"
},
{
"type": "string"
}
],
"description": "Conversation associated with this task or execution."
}
}
}
}
]
},
"publicId": {
"type": "string"
},
"checklist": {
"anyOf": [
{
"type": "null"
},
{
"type": "array",
"items": {
"type": "object",
"required": [
"id",
"label",
"completed"
],
"properties": {
"id": {
"type": "string",
"description": "Identifier of this returned resource. Use it for subsequent reads or edits of the same resource."
},
"label": {
"type": "string",
"description": "Human-readable label reported by the provider."
},
"completed": {
"type": "boolean"
}
}
}
}
]
},
"createdAt": {
"type": "string",
"format": "date-time",
"description": "Date and time this record was created, serialized as ISO 8601."
},
"projectId": {
"type": "number",
"description": "Atomic project that owns this resource."
},
"updatedAt": {
"type": "string",
"format": "date-time",
"description": "Date and time this record was last updated, serialized as ISO 8601."
},
"description": {
"anyOf": [
{
"type": "null"
},
{
"type": "string"
}
],
"description": "Saved description of this resource or its purpose."
},
"assignmentMode": {
"enum": [
"MANUAL",
"AGENT"
],
"type": "string"
},
"sourceConversationId": {
"anyOf": [
{
"type": "null"
},
{
"type": "string"
}
],
"description": "Conversation that produced this saved result."
},
"sourceConversationIds": {
"anyOf": [
{
"type": "null"
},
{
"type": "array",
"items": {
"type": "string"
}
}
]
},
"isGeneralAgentAssignment": {
"type": "boolean"
}
},
"description": "Operation data; optional fields may be absent."
},
"error": {
"type": "string",
"description": "Why the operation failed."
},
"details": {
"type": "object",
"description": "Diagnostics keyed by errorCode."
},
"message": {
"type": "string",
"description": "Outcome or recovery instructions. Project selection means no action ran."
},
"success": {
"type": "boolean",
"description": "Operation success; on false inspect error/errorCode."
},
"upgrade": {
"type": "object",
"description": "Plan-upgrade guidance for an unavailable capability."
},
"category": {
"type": "string",
"description": "Failure category, such as invalid_input or plan_required."
},
"expected": {
"type": "boolean",
"description": "Whether this is an anticipated access, input, plan or state failure."
},
"projects": {
"type": "array",
"items": {
"type": "object",
"properties": {
"id": {
"type": "number",
"description": "Project ID for projectId."
},
"name": {
"type": "string",
"description": "Project name."
}
},
"description": "Accessible project."
},
"description": "Accessible project choices. Select a projectId and retry."
},
"errorCode": {
"type": "string",
"description": "Failure code for recovery."
},
"retryable": {
"type": "boolean",
"description": "Whether an unchanged request can be retried."
},
"statusCode": {
"type": "number",
"description": "HTTP-style failure status."
},
"executionTime": {
"type": "string",
"description": "Elapsed time in seconds, with an s suffix."
}
},
"description": "Operation result envelope."
},
"annotations": {
"readOnlyHint": false,
"openWorldHint": false,
"idempotentHint": false,
"destructiveHint": false
}
}
The title clearly communicates the tool’s action and subject. Keep it concise.
Description87/100
Create a global WooCommerce attribute using native name, slug, type, order_by and has_archives fields.
Creates a store-wide attribute definition, not a term value. Inspect list_woocommerce_attributes first and use create_woocommerce_attribute_term to add values to an existing attribute. Reuse the same attemptId and identical payload only for a retry of the same intended action; a new action needs a new key.
The description explains the capability, when to use it, and what to expect.
Inputs75/100
Remove validation rules already expressed in this field’s schema; describe its meaning and usage instead.
projectPublishingId
Atomic publishing connection ID from get_publishing_connections, not the provider site or post ID.
Remove validation rules already expressed in this field’s schema; describe its meaning and usage instead.
attemptId
Caller-generated identifier for one intended mutation. Reuse it with the identical payload after an uncertain response; use a new identifier for a different intended action.
Clear enough to supply this argument.
fields › name
Human-readable name of the item being created or edited.
Explain the meaning of this value, not just its name.
projectId
Atomic project ID from list_projects. Omit to use the configured project; if asked to choose, select one of the accessible returned IDs.
Clear enough to supply this argument.
context
Short purpose of this call for the activity log. Exclude personal data and private source content.
Remove validation rules already expressed in this field’s schema; describe its meaning and usage instead.
llm_model
Use the exact model ID executing this call, from runtime/system context, for usage attribution. Supply it on every Atomic MCP tool call, including discovery and feedback, and update it if the model changes. Use the model ID rather than the client app name. If unavailable, omit it; never guess or ask the user.
Remove validation rules already expressed in this field’s schema; describe its meaning and usage instead.
{
"type": "object",
"required": [
"success"
],
"properties": {
"url": {
"type": "string",
"description": "Link for resolving the failure or completing the operation."
},
"data": {
"type": "object",
"required": [
"data"
],
"properties": {
"data": {
"type": "object",
"required": [
"id"
],
"properties": {
"id": {
"type": "number",
"description": "Identifier of this returned resource. Use it for subsequent reads or edits of the same resource."
},
"link": {
"type": "string"
},
"name": {
"type": "string",
"description": "Human-readable name of this resource."
},
"slug": {
"type": "string",
"description": "Saved URL slug or native CMS slug of this item."
},
"type": {
"type": "string",
"description": "Kind of the returned item; determines how its operation-specific fields should be interpreted."
},
"count": {
"type": "number",
"description": "Number of records reported by the provider for this group."
},
"title": {
"type": "object",
"properties": {
"raw": {
"type": "string"
},
"rendered": {
"type": "string"
}
},
"description": "Display or content title of this returned item."
},
"parent": {
"type": "number",
"description": "Native parent record ID; zero denotes the provider root when applicable."
},
"status": {
"type": "string",
"description": "Current saved or execution state reported by the operation."
},
"caption": {
"type": "object",
"properties": {
"raw": {
"type": "string"
},
"rendered": {
"type": "string"
}
},
"description": "Native media caption with raw/rendered values when supplied."
},
"alt_text": {
"type": "string",
"description": "Saved accessible alternative text on the native WordPress media record."
},
"order_by": {
"type": "string",
"description": "Native ordering policy for WooCommerce attribute terms."
},
"taxonomy": {
"type": "string",
"description": "Native taxonomy slug owning this term."
},
"mime_type": {
"type": "string",
"description": "Native MIME type of this media record."
},
"media_type": {
"type": "string",
"description": "WordPress media category, such as image or file."
},
"source_url": {
"type": "string",
"description": "Provider URL of the media asset."
},
"description": {
"anyOf": [
{
"type": "string"
},
{
"type": "object",
"properties": {
"raw": {
"type": "string"
},
"rendered": {
"type": "string"
}
}
}
],
"description": "Saved description of this resource or its purpose."
},
"has_archives": {
"type": "boolean",
"description": "Whether this WooCommerce attribute enables public archives."
}
},
"description": "Result items or operation data inside this returned payload. Pagination fields describe only this result page."
},
"total": {
"type": "number",
"description": "Total number of matching items across all result pages."
},
"nextPage": {
"anyOf": [
{
"type": "null"
},
{
"type": "number"
}
],
"description": "Next page to request when more results exist; use the returned value rather than constructing a cursor."
},
"replayed": {
"type": "boolean",
"description": "Whether this response reuses the recorded outcome of an earlier attempt rather than performing a new write."
}
},
"description": "Operation data; optional fields may be absent."
},
"error": {
"type": "string",
"description": "Why the operation failed."
},
"details": {
"type": "object",
"description": "Diagnostics keyed by errorCode."
},
"message": {
"type": "string",
"description": "Outcome or recovery instructions. Project selection means no action ran."
},
"success": {
"type": "boolean",
"description": "Operation success; on false inspect error/errorCode."
},
"upgrade": {
"type": "object",
"description": "Plan-upgrade guidance for an unavailable capability."
},
"category": {
"type": "string",
"description": "Failure category, such as invalid_input or plan_required."
},
"expected": {
"type": "boolean",
"description": "Whether this is an anticipated access, input, plan or state failure."
},
"projects": {
"type": "array",
"items": {
"type": "object",
"properties": {
"id": {
"type": "number",
"description": "Project ID for projectId."
},
"name": {
"type": "string",
"description": "Project name."
}
},
"description": "Accessible project."
},
"description": "Accessible project choices. Select a projectId and retry."
},
"errorCode": {
"type": "string",
"description": "Failure code for recovery."
},
"retryable": {
"type": "boolean",
"description": "Whether an unchanged request can be retried."
},
"statusCode": {
"type": "number",
"description": "HTTP-style failure status."
},
"executionTime": {
"type": "string",
"description": "Elapsed time in seconds, with an s suffix."
}
},
"description": "Operation result envelope."
}
Original tool metadata
{
"name": "create_woocommerce_attribute",
"title": "Create WooCommerce attribute",
"description": "Create a global WooCommerce attribute using native name, slug, type, order_by and has_archives fields.\n\nCreates a store-wide attribute definition, not a term value. Inspect list_woocommerce_attributes first and use create_woocommerce_attribute_term to add values to an existing attribute. Reuse the same attemptId and identical payload only for a retry of the same intended action; a new action needs a new key.",
"inputSchema": {
"type": "object",
"required": [
"projectPublishingId",
"attemptId",
"fields"
],
"properties": {
"fields": {
"type": "object",
"required": [
"name"
],
"properties": {
"name": {
"type": "string",
"description": "Human-readable name of the item being created or edited."
}
},
"description": "Explicit native fields to change. Omitted fields remain unchanged; read the current item and capabilities before constructing edits.",
"additionalProperties": true
},
"context": {
"type": "string",
"maxLength": 120,
"description": "Short purpose of this call for the activity log. Exclude personal data and private source content."
},
"attemptId": {
"type": "string",
"format": "uuid",
"description": "Caller-generated identifier for one intended mutation. Reuse it with the identical payload after an uncertain response; use a new identifier for a different intended action."
},
"llm_model": {
"type": "string",
"maxLength": 128,
"description": "Use the exact model ID executing this call, from runtime/system context, for usage attribution. Supply it on every Atomic MCP tool call, including discovery and feedback, and update it if the model changes. Use the model ID rather than the client app name. If unavailable, omit it; never guess or ask the user."
},
"projectId": {
"type": "number",
"description": "Atomic project ID from list_projects. Omit to use the configured project; if asked to choose, select one of the accessible returned IDs."
},
"projectPublishingId": {
"type": "number",
"minimum": 1,
"description": "Atomic publishing connection ID from get_publishing_connections, not the provider site or post ID."
}
},
"additionalProperties": false
},
"outputSchema": {
"type": "object",
"required": [
"success"
],
"properties": {
"url": {
"type": "string",
"description": "Link for resolving the failure or completing the operation."
},
"data": {
"type": "object",
"required": [
"data"
],
"properties": {
"data": {
"type": "object",
"required": [
"id"
],
"properties": {
"id": {
"type": "number",
"description": "Identifier of this returned resource. Use it for subsequent reads or edits of the same resource."
},
"link": {
"type": "string"
},
"name": {
"type": "string",
"description": "Human-readable name of this resource."
},
"slug": {
"type": "string",
"description": "Saved URL slug or native CMS slug of this item."
},
"type": {
"type": "string",
"description": "Kind of the returned item; determines how its operation-specific fields should be interpreted."
},
"count": {
"type": "number",
"description": "Number of records reported by the provider for this group."
},
"title": {
"type": "object",
"properties": {
"raw": {
"type": "string"
},
"rendered": {
"type": "string"
}
},
"description": "Display or content title of this returned item."
},
"parent": {
"type": "number",
"description": "Native parent record ID; zero denotes the provider root when applicable."
},
"status": {
"type": "string",
"description": "Current saved or execution state reported by the operation."
},
"caption": {
"type": "object",
"properties": {
"raw": {
"type": "string"
},
"rendered": {
"type": "string"
}
},
"description": "Native media caption with raw/rendered values when supplied."
},
"alt_text": {
"type": "string",
"description": "Saved accessible alternative text on the native WordPress media record."
},
"order_by": {
"type": "string",
"description": "Native ordering policy for WooCommerce attribute terms."
},
"taxonomy": {
"type": "string",
"description": "Native taxonomy slug owning this term."
},
"mime_type": {
"type": "string",
"description": "Native MIME type of this media record."
},
"media_type": {
"type": "string",
"description": "WordPress media category, such as image or file."
},
"source_url": {
"type": "string",
"description": "Provider URL of the media asset."
},
"description": {
"anyOf": [
{
"type": "string"
},
{
"type": "object",
"properties": {
"raw": {
"type": "string"
},
"rendered": {
"type": "string"
}
}
}
],
"description": "Saved description of this resource or its purpose."
},
"has_archives": {
"type": "boolean",
"description": "Whether this WooCommerce attribute enables public archives."
}
},
"description": "Result items or operation data inside this returned payload. Pagination fields describe only this result page."
},
"total": {
"type": "number",
"description": "Total number of matching items across all result pages."
},
"nextPage": {
"anyOf": [
{
"type": "null"
},
{
"type": "number"
}
],
"description": "Next page to request when more results exist; use the returned value rather than constructing a cursor."
},
"replayed": {
"type": "boolean",
"description": "Whether this response reuses the recorded outcome of an earlier attempt rather than performing a new write."
}
},
"description": "Operation data; optional fields may be absent."
},
"error": {
"type": "string",
"description": "Why the operation failed."
},
"details": {
"type": "object",
"description": "Diagnostics keyed by errorCode."
},
"message": {
"type": "string",
"description": "Outcome or recovery instructions. Project selection means no action ran."
},
"success": {
"type": "boolean",
"description": "Operation success; on false inspect error/errorCode."
},
"upgrade": {
"type": "object",
"description": "Plan-upgrade guidance for an unavailable capability."
},
"category": {
"type": "string",
"description": "Failure category, such as invalid_input or plan_required."
},
"expected": {
"type": "boolean",
"description": "Whether this is an anticipated access, input, plan or state failure."
},
"projects": {
"type": "array",
"items": {
"type": "object",
"properties": {
"id": {
"type": "number",
"description": "Project ID for projectId."
},
"name": {
"type": "string",
"description": "Project name."
}
},
"description": "Accessible project."
},
"description": "Accessible project choices. Select a projectId and retry."
},
"errorCode": {
"type": "string",
"description": "Failure code for recovery."
},
"retryable": {
"type": "boolean",
"description": "Whether an unchanged request can be retried."
},
"statusCode": {
"type": "number",
"description": "HTTP-style failure status."
},
"executionTime": {
"type": "string",
"description": "Elapsed time in seconds, with an s suffix."
}
},
"description": "Operation result envelope."
},
"annotations": {
"readOnlyHint": false,
"openWorldHint": true,
"idempotentHint": true,
"destructiveHint": false
}
}
The title clearly communicates the tool’s action and subject. Keep it concise.
Description82/100
Create a global WooCommerce attribute value using native term fields.
Creates a value under attributeId from list_woocommerce_attributes. Use list_woocommerce_attribute_terms before adding another value; update_woocommerce_attribute_term changes an existing term. Reuse the same attemptId and identical payload only for a retry of the same intended action; a new action needs a new key.
The description explains the capability, when to use it, and what to expect.
Inputs89/100
Remove validation rules already expressed in this field’s schema; describe its meaning and usage instead.
projectPublishingId
Atomic publishing connection ID from get_publishing_connections, not the provider site or post ID.
Remove validation rules already expressed in this field’s schema; describe its meaning and usage instead.
attemptId
Caller-generated identifier for one intended mutation. Reuse it with the identical payload after an uncertain response; use a new identifier for a different intended action.
Clear enough to supply this argument.
attributeId
Global WooCommerce attribute identifier from list_woocommerce_attributes.
Clear enough to supply this argument.
fields › name
Human-readable name of the item being created or edited.
Clear enough to supply this argument.
projectId
Atomic project ID from list_projects. Omit to use the configured project; if asked to choose, select one of the accessible returned IDs.
Clear enough to supply this argument.
context
Short purpose of this call for the activity log. Exclude personal data and private source content.
Remove validation rules already expressed in this field’s schema; describe its meaning and usage instead.
llm_model
Use the exact model ID executing this call, from runtime/system context, for usage attribution. Supply it on every Atomic MCP tool call, including discovery and feedback, and update it if the model changes. Use the model ID rather than the client app name. If unavailable, omit it; never guess or ask the user.
Remove validation rules already expressed in this field’s schema; describe its meaning and usage instead.
{
"type": "object",
"required": [
"success"
],
"properties": {
"url": {
"type": "string",
"description": "Link for resolving the failure or completing the operation."
},
"data": {
"type": "object",
"required": [
"data"
],
"properties": {
"data": {
"type": "object",
"required": [
"id"
],
"properties": {
"id": {
"type": "number",
"description": "Identifier of this returned resource. Use it for subsequent reads or edits of the same resource."
},
"link": {
"type": "string"
},
"name": {
"type": "string",
"description": "Human-readable name of this resource."
},
"slug": {
"type": "string",
"description": "Saved URL slug or native CMS slug of this item."
},
"type": {
"type": "string",
"description": "Kind of the returned item; determines how its operation-specific fields should be interpreted."
},
"count": {
"type": "number",
"description": "Number of records reported by the provider for this group."
},
"title": {
"type": "object",
"properties": {
"raw": {
"type": "string"
},
"rendered": {
"type": "string"
}
},
"description": "Display or content title of this returned item."
},
"parent": {
"type": "number",
"description": "Native parent record ID; zero denotes the provider root when applicable."
},
"status": {
"type": "string",
"description": "Current saved or execution state reported by the operation."
},
"caption": {
"type": "object",
"properties": {
"raw": {
"type": "string"
},
"rendered": {
"type": "string"
}
},
"description": "Native media caption with raw/rendered values when supplied."
},
"alt_text": {
"type": "string",
"description": "Saved accessible alternative text on the native WordPress media record."
},
"order_by": {
"type": "string",
"description": "Native ordering policy for WooCommerce attribute terms."
},
"taxonomy": {
"type": "string",
"description": "Native taxonomy slug owning this term."
},
"mime_type": {
"type": "string",
"description": "Native MIME type of this media record."
},
"media_type": {
"type": "string",
"description": "WordPress media category, such as image or file."
},
"source_url": {
"type": "string",
"description": "Provider URL of the media asset."
},
"description": {
"anyOf": [
{
"type": "string"
},
{
"type": "object",
"properties": {
"raw": {
"type": "string"
},
"rendered": {
"type": "string"
}
}
}
],
"description": "Saved description of this resource or its purpose."
},
"has_archives": {
"type": "boolean",
"description": "Whether this WooCommerce attribute enables public archives."
}
},
"description": "Result items or operation data inside this returned payload. Pagination fields describe only this result page."
},
"total": {
"type": "number",
"description": "Total number of matching items across all result pages."
},
"nextPage": {
"anyOf": [
{
"type": "null"
},
{
"type": "number"
}
],
"description": "Next page to request when more results exist; use the returned value rather than constructing a cursor."
},
"replayed": {
"type": "boolean",
"description": "Whether this response reuses the recorded outcome of an earlier attempt rather than performing a new write."
}
},
"description": "Operation data; optional fields may be absent."
},
"error": {
"type": "string",
"description": "Why the operation failed."
},
"details": {
"type": "object",
"description": "Diagnostics keyed by errorCode."
},
"message": {
"type": "string",
"description": "Outcome or recovery instructions. Project selection means no action ran."
},
"success": {
"type": "boolean",
"description": "Operation success; on false inspect error/errorCode."
},
"upgrade": {
"type": "object",
"description": "Plan-upgrade guidance for an unavailable capability."
},
"category": {
"type": "string",
"description": "Failure category, such as invalid_input or plan_required."
},
"expected": {
"type": "boolean",
"description": "Whether this is an anticipated access, input, plan or state failure."
},
"projects": {
"type": "array",
"items": {
"type": "object",
"properties": {
"id": {
"type": "number",
"description": "Project ID for projectId."
},
"name": {
"type": "string",
"description": "Project name."
}
},
"description": "Accessible project."
},
"description": "Accessible project choices. Select a projectId and retry."
},
"errorCode": {
"type": "string",
"description": "Failure code for recovery."
},
"retryable": {
"type": "boolean",
"description": "Whether an unchanged request can be retried."
},
"statusCode": {
"type": "number",
"description": "HTTP-style failure status."
},
"executionTime": {
"type": "string",
"description": "Elapsed time in seconds, with an s suffix."
}
},
"description": "Operation result envelope."
}
Original tool metadata
{
"name": "create_woocommerce_attribute_term",
"title": "Create WooCommerce attribute term",
"description": "Create a global WooCommerce attribute value using native term fields.\n\nCreates a value under attributeId from list_woocommerce_attributes. Use list_woocommerce_attribute_terms before adding another value; update_woocommerce_attribute_term changes an existing term. Reuse the same attemptId and identical payload only for a retry of the same intended action; a new action needs a new key.",
"inputSchema": {
"type": "object",
"required": [
"projectPublishingId",
"attemptId",
"attributeId",
"fields"
],
"properties": {
"fields": {
"type": "object",
"required": [
"name"
],
"properties": {
"name": {
"type": "string",
"description": "Human-readable name of the item being created or edited."
}
},
"description": "Explicit native fields to change. Omitted fields remain unchanged; read the current item and capabilities before constructing edits.",
"additionalProperties": true
},
"context": {
"type": "string",
"maxLength": 120,
"description": "Short purpose of this call for the activity log. Exclude personal data and private source content."
},
"attemptId": {
"type": "string",
"format": "uuid",
"description": "Caller-generated identifier for one intended mutation. Reuse it with the identical payload after an uncertain response; use a new identifier for a different intended action."
},
"llm_model": {
"type": "string",
"maxLength": 128,
"description": "Use the exact model ID executing this call, from runtime/system context, for usage attribution. Supply it on every Atomic MCP tool call, including discovery and feedback, and update it if the model changes. Use the model ID rather than the client app name. If unavailable, omit it; never guess or ask the user."
},
"projectId": {
"type": "number",
"description": "Atomic project ID from list_projects. Omit to use the configured project; if asked to choose, select one of the accessible returned IDs."
},
"attributeId": {
"type": "number",
"minimum": 1,
"description": "Global WooCommerce attribute identifier from list_woocommerce_attributes."
},
"projectPublishingId": {
"type": "number",
"minimum": 1,
"description": "Atomic publishing connection ID from get_publishing_connections, not the provider site or post ID."
}
},
"additionalProperties": false
},
"outputSchema": {
"type": "object",
"required": [
"success"
],
"properties": {
"url": {
"type": "string",
"description": "Link for resolving the failure or completing the operation."
},
"data": {
"type": "object",
"required": [
"data"
],
"properties": {
"data": {
"type": "object",
"required": [
"id"
],
"properties": {
"id": {
"type": "number",
"description": "Identifier of this returned resource. Use it for subsequent reads or edits of the same resource."
},
"link": {
"type": "string"
},
"name": {
"type": "string",
"description": "Human-readable name of this resource."
},
"slug": {
"type": "string",
"description": "Saved URL slug or native CMS slug of this item."
},
"type": {
"type": "string",
"description": "Kind of the returned item; determines how its operation-specific fields should be interpreted."
},
"count": {
"type": "number",
"description": "Number of records reported by the provider for this group."
},
"title": {
"type": "object",
"properties": {
"raw": {
"type": "string"
},
"rendered": {
"type": "string"
}
},
"description": "Display or content title of this returned item."
},
"parent": {
"type": "number",
"description": "Native parent record ID; zero denotes the provider root when applicable."
},
"status": {
"type": "string",
"description": "Current saved or execution state reported by the operation."
},
"caption": {
"type": "object",
"properties": {
"raw": {
"type": "string"
},
"rendered": {
"type": "string"
}
},
"description": "Native media caption with raw/rendered values when supplied."
},
"alt_text": {
"type": "string",
"description": "Saved accessible alternative text on the native WordPress media record."
},
"order_by": {
"type": "string",
"description": "Native ordering policy for WooCommerce attribute terms."
},
"taxonomy": {
"type": "string",
"description": "Native taxonomy slug owning this term."
},
"mime_type": {
"type": "string",
"description": "Native MIME type of this media record."
},
"media_type": {
"type": "string",
"description": "WordPress media category, such as image or file."
},
"source_url": {
"type": "string",
"description": "Provider URL of the media asset."
},
"description": {
"anyOf": [
{
"type": "string"
},
{
"type": "object",
"properties": {
"raw": {
"type": "string"
},
"rendered": {
"type": "string"
}
}
}
],
"description": "Saved description of this resource or its purpose."
},
"has_archives": {
"type": "boolean",
"description": "Whether this WooCommerce attribute enables public archives."
}
},
"description": "Result items or operation data inside this returned payload. Pagination fields describe only this result page."
},
"total": {
"type": "number",
"description": "Total number of matching items across all result pages."
},
"nextPage": {
"anyOf": [
{
"type": "null"
},
{
"type": "number"
}
],
"description": "Next page to request when more results exist; use the returned value rather than constructing a cursor."
},
"replayed": {
"type": "boolean",
"description": "Whether this response reuses the recorded outcome of an earlier attempt rather than performing a new write."
}
},
"description": "Operation data; optional fields may be absent."
},
"error": {
"type": "string",
"description": "Why the operation failed."
},
"details": {
"type": "object",
"description": "Diagnostics keyed by errorCode."
},
"message": {
"type": "string",
"description": "Outcome or recovery instructions. Project selection means no action ran."
},
"success": {
"type": "boolean",
"description": "Operation success; on false inspect error/errorCode."
},
"upgrade": {
"type": "object",
"description": "Plan-upgrade guidance for an unavailable capability."
},
"category": {
"type": "string",
"description": "Failure category, such as invalid_input or plan_required."
},
"expected": {
"type": "boolean",
"description": "Whether this is an anticipated access, input, plan or state failure."
},
"projects": {
"type": "array",
"items": {
"type": "object",
"properties": {
"id": {
"type": "number",
"description": "Project ID for projectId."
},
"name": {
"type": "string",
"description": "Project name."
}
},
"description": "Accessible project."
},
"description": "Accessible project choices. Select a projectId and retry."
},
"errorCode": {
"type": "string",
"description": "Failure code for recovery."
},
"retryable": {
"type": "boolean",
"description": "Whether an unchanged request can be retried."
},
"statusCode": {
"type": "number",
"description": "HTTP-style failure status."
},
"executionTime": {
"type": "string",
"description": "Elapsed time in seconds, with an s suffix."
}
},
"description": "Operation result envelope."
},
"annotations": {
"readOnlyHint": false,
"openWorldHint": true,
"idempotentHint": true,
"destructiveHint": false
}
}
The title clearly communicates the tool’s action and subject. Keep it concise.
Description85/100
Create a simple or variable WooCommerce product, or a variation with parentProductId. Native WooCommerce fields (regular_price, manage_stock, attributes, etc.) plus canonical flat SEO fields. Defaults to draft; schema validates permissions and payloads.
Use get_wordpress_creation_schema before assembling native product fields. Creates a new store record; review the requested status and parentProductId rather than treating creation as an update. Reuse the same attemptId and identical payload only for a retry of the same intended action; a new action needs a new key.
The description explains the capability, when to use it, and what to expect.
Inputs88/100
Remove validation rules already expressed in this field’s schema; describe its meaning and usage instead.
projectPublishingId
Atomic publishing connection ID from get_publishing_connections, not the provider site or post ID.
Clear enough to supply this argument.
attemptId
Caller-generated identifier for one intended mutation. Reuse it with the identical payload after an uncertain response; use a new identifier for a different intended action.
Clear enough to supply this argument.
parentProductId
Parent variable-product identifier when reading or editing a variation.
Clear enough to supply this argument.
seoPlugin
SEO plugin target supported by the connected site. Discover capabilities before selecting the plugin for writes.
Remove validation rules already expressed in this field’s schema; describe its meaning and usage instead.
fields
Native WooCommerce creation fields plus canonical SEO fields. Use type=variable and attributes for a parent, then parentProductId and attributes for each variation.
Remove validation rules already expressed in this field’s schema; describe its meaning and usage instead.
projectId
Atomic project ID from list_projects. Omit to use the configured project; if asked to choose, select one of the accessible returned IDs.
Clear enough to supply this argument.
context
Short purpose of this call for the activity log. Exclude personal data and private source content.
Remove validation rules already expressed in this field’s schema; describe its meaning and usage instead.
llm_model
Use the exact model ID executing this call, from runtime/system context, for usage attribution. Supply it on every Atomic MCP tool call, including discovery and feedback, and update it if the model changes. Use the model ID rather than the client app name. If unavailable, omit it; never guess or ask the user.
Remove validation rules already expressed in this field’s schema; describe its meaning and usage instead.
{
"type": "object",
"required": [
"success"
],
"properties": {
"url": {
"type": "string",
"description": "Link for resolving the failure or completing the operation."
},
"data": {
"type": "object",
"required": [
"data"
],
"properties": {
"data": {
"type": "object",
"required": [
"id"
],
"properties": {
"id": {
"type": "number",
"description": "Identifier of this returned resource. Use it for subsequent reads or edits of the same resource."
},
"link": {
"type": "string"
},
"name": {
"type": "string",
"description": "Human-readable name of this resource."
},
"slug": {
"type": "string",
"description": "Saved URL slug or native CMS slug of this item."
},
"type": {
"type": "string",
"description": "Kind of the returned item; determines how its operation-specific fields should be interpreted."
},
"count": {
"type": "number",
"description": "Number of records reported by the provider for this group."
},
"title": {
"type": "object",
"properties": {
"raw": {
"type": "string"
},
"rendered": {
"type": "string"
}
},
"description": "Display or content title of this returned item."
},
"parent": {
"type": "number",
"description": "Native parent record ID; zero denotes the provider root when applicable."
},
"status": {
"type": "string",
"description": "Current saved or execution state reported by the operation."
},
"caption": {
"type": "object",
"properties": {
"raw": {
"type": "string"
},
"rendered": {
"type": "string"
}
},
"description": "Native media caption with raw/rendered values when supplied."
},
"alt_text": {
"type": "string",
"description": "Saved accessible alternative text on the native WordPress media record."
},
"order_by": {
"type": "string",
"description": "Native ordering policy for WooCommerce attribute terms."
},
"taxonomy": {
"type": "string",
"description": "Native taxonomy slug owning this term."
},
"mime_type": {
"type": "string",
"description": "Native MIME type of this media record."
},
"media_type": {
"type": "string",
"description": "WordPress media category, such as image or file."
},
"source_url": {
"type": "string",
"description": "Provider URL of the media asset."
},
"description": {
"anyOf": [
{
"type": "string"
},
{
"type": "object",
"properties": {
"raw": {
"type": "string"
},
"rendered": {
"type": "string"
}
}
}
],
"description": "Saved description of this resource or its purpose."
},
"has_archives": {
"type": "boolean",
"description": "Whether this WooCommerce attribute enables public archives."
}
},
"description": "Result items or operation data inside this returned payload. Pagination fields describe only this result page."
},
"total": {
"type": "number",
"description": "Total number of matching items across all result pages."
},
"nextPage": {
"anyOf": [
{
"type": "null"
},
{
"type": "number"
}
],
"description": "Next page to request when more results exist; use the returned value rather than constructing a cursor."
},
"replayed": {
"type": "boolean",
"description": "Whether this response reuses the recorded outcome of an earlier attempt rather than performing a new write."
}
},
"description": "Operation data; optional fields may be absent."
},
"error": {
"type": "string",
"description": "Why the operation failed."
},
"details": {
"type": "object",
"description": "Diagnostics keyed by errorCode."
},
"message": {
"type": "string",
"description": "Outcome or recovery instructions. Project selection means no action ran."
},
"success": {
"type": "boolean",
"description": "Operation success; on false inspect error/errorCode."
},
"upgrade": {
"type": "object",
"description": "Plan-upgrade guidance for an unavailable capability."
},
"category": {
"type": "string",
"description": "Failure category, such as invalid_input or plan_required."
},
"expected": {
"type": "boolean",
"description": "Whether this is an anticipated access, input, plan or state failure."
},
"projects": {
"type": "array",
"items": {
"type": "object",
"properties": {
"id": {
"type": "number",
"description": "Project ID for projectId."
},
"name": {
"type": "string",
"description": "Project name."
}
},
"description": "Accessible project."
},
"description": "Accessible project choices. Select a projectId and retry."
},
"errorCode": {
"type": "string",
"description": "Failure code for recovery."
},
"retryable": {
"type": "boolean",
"description": "Whether an unchanged request can be retried."
},
"statusCode": {
"type": "number",
"description": "HTTP-style failure status."
},
"executionTime": {
"type": "string",
"description": "Elapsed time in seconds, with an s suffix."
}
},
"description": "Operation result envelope."
}
Original tool metadata
{
"name": "create_woocommerce_product",
"title": "Create WooCommerce product",
"description": "Create a simple or variable WooCommerce product, or a variation with parentProductId. Native WooCommerce fields (regular_price, manage_stock, attributes, etc.) plus canonical flat SEO fields. Defaults to draft; schema validates permissions and payloads.\n\nUse get_wordpress_creation_schema before assembling native product fields. Creates a new store record; review the requested status and parentProductId rather than treating creation as an update. Reuse the same attemptId and identical payload only for a retry of the same intended action; a new action needs a new key.",
"inputSchema": {
"type": "object",
"required": [
"projectPublishingId",
"attemptId",
"fields"
],
"properties": {
"fields": {
"type": "object",
"description": "Native WooCommerce creation fields plus canonical SEO fields. Use type=variable and attributes for a parent, then parentProductId and attributes for each variation.",
"minProperties": 1,
"additionalProperties": true
},
"context": {
"type": "string",
"maxLength": 120,
"description": "Short purpose of this call for the activity log. Exclude personal data and private source content."
},
"attemptId": {
"type": "string",
"format": "uuid",
"description": "Caller-generated identifier for one intended mutation. Reuse it with the identical payload after an uncertain response; use a new identifier for a different intended action."
},
"llm_model": {
"type": "string",
"maxLength": 128,
"description": "Use the exact model ID executing this call, from runtime/system context, for usage attribution. Supply it on every Atomic MCP tool call, including discovery and feedback, and update it if the model changes. Use the model ID rather than the client app name. If unavailable, omit it; never guess or ask the user."
},
"projectId": {
"type": "number",
"description": "Atomic project ID from list_projects. Omit to use the configured project; if asked to choose, select one of the accessible returned IDs."
},
"seoPlugin": {
"enum": [
"yoast",
"rankMath",
"squirrly",
"all"
],
"type": "string",
"description": "SEO plugin target supported by the connected site. Discover capabilities before selecting the plugin for writes."
},
"parentProductId": {
"type": "number",
"minimum": 1,
"description": "Parent variable-product identifier when reading or editing a variation."
},
"projectPublishingId": {
"type": "number",
"minimum": 1,
"description": "Atomic publishing connection ID from get_publishing_connections, not the provider site or post ID."
}
},
"additionalProperties": false
},
"outputSchema": {
"type": "object",
"required": [
"success"
],
"properties": {
"url": {
"type": "string",
"description": "Link for resolving the failure or completing the operation."
},
"data": {
"type": "object",
"required": [
"data"
],
"properties": {
"data": {
"type": "object",
"required": [
"id"
],
"properties": {
"id": {
"type": "number",
"description": "Identifier of this returned resource. Use it for subsequent reads or edits of the same resource."
},
"link": {
"type": "string"
},
"name": {
"type": "string",
"description": "Human-readable name of this resource."
},
"slug": {
"type": "string",
"description": "Saved URL slug or native CMS slug of this item."
},
"type": {
"type": "string",
"description": "Kind of the returned item; determines how its operation-specific fields should be interpreted."
},
"count": {
"type": "number",
"description": "Number of records reported by the provider for this group."
},
"title": {
"type": "object",
"properties": {
"raw": {
"type": "string"
},
"rendered": {
"type": "string"
}
},
"description": "Display or content title of this returned item."
},
"parent": {
"type": "number",
"description": "Native parent record ID; zero denotes the provider root when applicable."
},
"status": {
"type": "string",
"description": "Current saved or execution state reported by the operation."
},
"caption": {
"type": "object",
"properties": {
"raw": {
"type": "string"
},
"rendered": {
"type": "string"
}
},
"description": "Native media caption with raw/rendered values when supplied."
},
"alt_text": {
"type": "string",
"description": "Saved accessible alternative text on the native WordPress media record."
},
"order_by": {
"type": "string",
"description": "Native ordering policy for WooCommerce attribute terms."
},
"taxonomy": {
"type": "string",
"description": "Native taxonomy slug owning this term."
},
"mime_type": {
"type": "string",
"description": "Native MIME type of this media record."
},
"media_type": {
"type": "string",
"description": "WordPress media category, such as image or file."
},
"source_url": {
"type": "string",
"description": "Provider URL of the media asset."
},
"description": {
"anyOf": [
{
"type": "string"
},
{
"type": "object",
"properties": {
"raw": {
"type": "string"
},
"rendered": {
"type": "string"
}
}
}
],
"description": "Saved description of this resource or its purpose."
},
"has_archives": {
"type": "boolean",
"description": "Whether this WooCommerce attribute enables public archives."
}
},
"description": "Result items or operation data inside this returned payload. Pagination fields describe only this result page."
},
"total": {
"type": "number",
"description": "Total number of matching items across all result pages."
},
"nextPage": {
"anyOf": [
{
"type": "null"
},
{
"type": "number"
}
],
"description": "Next page to request when more results exist; use the returned value rather than constructing a cursor."
},
"replayed": {
"type": "boolean",
"description": "Whether this response reuses the recorded outcome of an earlier attempt rather than performing a new write."
}
},
"description": "Operation data; optional fields may be absent."
},
"error": {
"type": "string",
"description": "Why the operation failed."
},
"details": {
"type": "object",
"description": "Diagnostics keyed by errorCode."
},
"message": {
"type": "string",
"description": "Outcome or recovery instructions. Project selection means no action ran."
},
"success": {
"type": "boolean",
"description": "Operation success; on false inspect error/errorCode."
},
"upgrade": {
"type": "object",
"description": "Plan-upgrade guidance for an unavailable capability."
},
"category": {
"type": "string",
"description": "Failure category, such as invalid_input or plan_required."
},
"expected": {
"type": "boolean",
"description": "Whether this is an anticipated access, input, plan or state failure."
},
"projects": {
"type": "array",
"items": {
"type": "object",
"properties": {
"id": {
"type": "number",
"description": "Project ID for projectId."
},
"name": {
"type": "string",
"description": "Project name."
}
},
"description": "Accessible project."
},
"description": "Accessible project choices. Select a projectId and retry."
},
"errorCode": {
"type": "string",
"description": "Failure code for recovery."
},
"retryable": {
"type": "boolean",
"description": "Whether an unchanged request can be retried."
},
"statusCode": {
"type": "number",
"description": "HTTP-style failure status."
},
"executionTime": {
"type": "string",
"description": "Elapsed time in seconds, with an s suffix."
}
},
"description": "Operation result envelope."
},
"annotations": {
"readOnlyHint": false,
"openWorldHint": true,
"idempotentHint": true,
"destructiveHint": false
}
}
The title clearly communicates the tool’s action and subject. Keep it concise.
Description76/100
Create native WordPress content of a REST-exposed registered post type. Defaults to draft. Use canonical flat SEO fields and seoPlugin as with editing; native writable fields share fields.
Read get_wordpress_creation_schema for the selected post type. Creates a new native CMS record; use update_wordpress_content for an existing record and verify_wordpress_frontend after publication. Reuse the same attemptId and identical payload only for a retry of the same intended action; a new action needs a new key.
The description explains the capability, when to use it, and what to expect.
Inputs91/100
Remove validation rules already expressed in this field’s schema; describe its meaning and usage instead.
projectPublishingId
Atomic publishing connection ID from get_publishing_connections, not the provider site or post ID.
Clear enough to supply this argument.
attemptId
Caller-generated identifier for one intended mutation. Reuse it with the identical payload after an uncertain response; use a new identifier for a different intended action.
Clear enough to supply this argument.
contentType
Registered post-type slug from get_wordpress_capabilities.postTypes, not restBase.
Remove validation rules already expressed in this field’s schema; describe its meaning and usage instead.
seoPlugin
SEO plugin target supported by the connected site. Discover capabilities before selecting the plugin for writes.
Clear enough to supply this argument.
fields
Native WordPress creation fields plus canonical flat SEO fields; title required. Unknown/read-only fields reject.
Remove validation rules already expressed in this field’s schema; describe its meaning and usage instead.
projectId
Atomic project ID from list_projects. Omit to use the configured project; if asked to choose, select one of the accessible returned IDs.
Clear enough to supply this argument.
context
Short purpose of this call for the activity log. Exclude personal data and private source content.
Remove validation rules already expressed in this field’s schema; describe its meaning and usage instead.
llm_model
Use the exact model ID executing this call, from runtime/system context, for usage attribution. Supply it on every Atomic MCP tool call, including discovery and feedback, and update it if the model changes. Use the model ID rather than the client app name. If unavailable, omit it; never guess or ask the user.
{
"type": "object",
"required": [
"success"
],
"properties": {
"url": {
"type": "string",
"description": "Link for resolving the failure or completing the operation."
},
"data": {
"type": "object",
"required": [
"data"
],
"properties": {
"data": {
"type": "object",
"required": [
"id"
],
"properties": {
"id": {
"type": "number",
"description": "Identifier of this returned resource. Use it for subsequent reads or edits of the same resource."
},
"link": {
"type": "string"
},
"name": {
"type": "string",
"description": "Human-readable name of this resource."
},
"slug": {
"type": "string",
"description": "Saved URL slug or native CMS slug of this item."
},
"type": {
"type": "string",
"description": "Kind of the returned item; determines how its operation-specific fields should be interpreted."
},
"count": {
"type": "number",
"description": "Number of records reported by the provider for this group."
},
"title": {
"type": "object",
"properties": {
"raw": {
"type": "string"
},
"rendered": {
"type": "string"
}
},
"description": "Display or content title of this returned item."
},
"parent": {
"type": "number",
"description": "Native parent record ID; zero denotes the provider root when applicable."
},
"status": {
"type": "string",
"description": "Current saved or execution state reported by the operation."
},
"caption": {
"type": "object",
"properties": {
"raw": {
"type": "string"
},
"rendered": {
"type": "string"
}
},
"description": "Native media caption with raw/rendered values when supplied."
},
"alt_text": {
"type": "string",
"description": "Saved accessible alternative text on the native WordPress media record."
},
"order_by": {
"type": "string",
"description": "Native ordering policy for WooCommerce attribute terms."
},
"taxonomy": {
"type": "string",
"description": "Native taxonomy slug owning this term."
},
"mime_type": {
"type": "string",
"description": "Native MIME type of this media record."
},
"media_type": {
"type": "string",
"description": "WordPress media category, such as image or file."
},
"source_url": {
"type": "string",
"description": "Provider URL of the media asset."
},
"description": {
"anyOf": [
{
"type": "string"
},
{
"type": "object",
"properties": {
"raw": {
"type": "string"
},
"rendered": {
"type": "string"
}
}
}
],
"description": "Saved description of this resource or its purpose."
},
"has_archives": {
"type": "boolean",
"description": "Whether this WooCommerce attribute enables public archives."
}
},
"description": "Result items or operation data inside this returned payload. Pagination fields describe only this result page."
},
"total": {
"type": "number",
"description": "Total number of matching items across all result pages."
},
"nextPage": {
"anyOf": [
{
"type": "null"
},
{
"type": "number"
}
],
"description": "Next page to request when more results exist; use the returned value rather than constructing a cursor."
},
"replayed": {
"type": "boolean",
"description": "Whether this response reuses the recorded outcome of an earlier attempt rather than performing a new write."
}
},
"description": "Operation data; optional fields may be absent."
},
"error": {
"type": "string",
"description": "Why the operation failed."
},
"details": {
"type": "object",
"description": "Diagnostics keyed by errorCode."
},
"message": {
"type": "string",
"description": "Outcome or recovery instructions. Project selection means no action ran."
},
"success": {
"type": "boolean",
"description": "Operation success; on false inspect error/errorCode."
},
"upgrade": {
"type": "object",
"description": "Plan-upgrade guidance for an unavailable capability."
},
"category": {
"type": "string",
"description": "Failure category, such as invalid_input or plan_required."
},
"expected": {
"type": "boolean",
"description": "Whether this is an anticipated access, input, plan or state failure."
},
"projects": {
"type": "array",
"items": {
"type": "object",
"properties": {
"id": {
"type": "number",
"description": "Project ID for projectId."
},
"name": {
"type": "string",
"description": "Project name."
}
},
"description": "Accessible project."
},
"description": "Accessible project choices. Select a projectId and retry."
},
"errorCode": {
"type": "string",
"description": "Failure code for recovery."
},
"retryable": {
"type": "boolean",
"description": "Whether an unchanged request can be retried."
},
"statusCode": {
"type": "number",
"description": "HTTP-style failure status."
},
"executionTime": {
"type": "string",
"description": "Elapsed time in seconds, with an s suffix."
}
},
"description": "Operation result envelope."
}
Original tool metadata
{
"name": "create_wordpress_content",
"title": "Create WordPress content",
"description": "Create native WordPress content of a REST-exposed registered post type. Defaults to draft. Use canonical flat SEO fields and seoPlugin as with editing; native writable fields share fields.\n\nRead get_wordpress_creation_schema for the selected post type. Creates a new native CMS record; use update_wordpress_content for an existing record and verify_wordpress_frontend after publication. Reuse the same attemptId and identical payload only for a retry of the same intended action; a new action needs a new key.",
"inputSchema": {
"type": "object",
"required": [
"projectPublishingId",
"attemptId",
"contentType",
"fields"
],
"properties": {
"fields": {
"type": "object",
"description": "Native WordPress creation fields plus canonical flat SEO fields; title required. Unknown/read-only fields reject.",
"minProperties": 1,
"additionalProperties": true
},
"context": {
"type": "string",
"maxLength": 120,
"description": "Short purpose of this call for the activity log. Exclude personal data and private source content."
},
"attemptId": {
"type": "string",
"format": "uuid",
"description": "Caller-generated identifier for one intended mutation. Reuse it with the identical payload after an uncertain response; use a new identifier for a different intended action."
},
"llm_model": {
"type": "string",
"maxLength": 128,
"description": "Use the exact model ID executing this call, from runtime/system context, for usage attribution. Supply it on every Atomic MCP tool call, including discovery and feedback, and update it if the model changes. Use the model ID rather than the client app name. If unavailable, omit it; never guess or ask the user."
},
"projectId": {
"type": "number",
"description": "Atomic project ID from list_projects. Omit to use the configured project; if asked to choose, select one of the accessible returned IDs."
},
"seoPlugin": {
"enum": [
"yoast",
"rankMath",
"squirrly",
"all"
],
"type": "string",
"description": "SEO plugin target supported by the connected site. Discover capabilities before selecting the plugin for writes."
},
"contentType": {
"type": "string",
"pattern": "^[a-z0-9_-]+$",
"description": "Registered post-type slug from get_wordpress_capabilities.postTypes, not restBase."
},
"projectPublishingId": {
"type": "number",
"minimum": 1,
"description": "Atomic publishing connection ID from get_publishing_connections, not the provider site or post ID."
}
},
"additionalProperties": false
},
"outputSchema": {
"type": "object",
"required": [
"success"
],
"properties": {
"url": {
"type": "string",
"description": "Link for resolving the failure or completing the operation."
},
"data": {
"type": "object",
"required": [
"data"
],
"properties": {
"data": {
"type": "object",
"required": [
"id"
],
"properties": {
"id": {
"type": "number",
"description": "Identifier of this returned resource. Use it for subsequent reads or edits of the same resource."
},
"link": {
"type": "string"
},
"name": {
"type": "string",
"description": "Human-readable name of this resource."
},
"slug": {
"type": "string",
"description": "Saved URL slug or native CMS slug of this item."
},
"type": {
"type": "string",
"description": "Kind of the returned item; determines how its operation-specific fields should be interpreted."
},
"count": {
"type": "number",
"description": "Number of records reported by the provider for this group."
},
"title": {
"type": "object",
"properties": {
"raw": {
"type": "string"
},
"rendered": {
"type": "string"
}
},
"description": "Display or content title of this returned item."
},
"parent": {
"type": "number",
"description": "Native parent record ID; zero denotes the provider root when applicable."
},
"status": {
"type": "string",
"description": "Current saved or execution state reported by the operation."
},
"caption": {
"type": "object",
"properties": {
"raw": {
"type": "string"
},
"rendered": {
"type": "string"
}
},
"description": "Native media caption with raw/rendered values when supplied."
},
"alt_text": {
"type": "string",
"description": "Saved accessible alternative text on the native WordPress media record."
},
"order_by": {
"type": "string",
"description": "Native ordering policy for WooCommerce attribute terms."
},
"taxonomy": {
"type": "string",
"description": "Native taxonomy slug owning this term."
},
"mime_type": {
"type": "string",
"description": "Native MIME type of this media record."
},
"media_type": {
"type": "string",
"description": "WordPress media category, such as image or file."
},
"source_url": {
"type": "string",
"description": "Provider URL of the media asset."
},
"description": {
"anyOf": [
{
"type": "string"
},
{
"type": "object",
"properties": {
"raw": {
"type": "string"
},
"rendered": {
"type": "string"
}
}
}
],
"description": "Saved description of this resource or its purpose."
},
"has_archives": {
"type": "boolean",
"description": "Whether this WooCommerce attribute enables public archives."
}
},
"description": "Result items or operation data inside this returned payload. Pagination fields describe only this result page."
},
"total": {
"type": "number",
"description": "Total number of matching items across all result pages."
},
"nextPage": {
"anyOf": [
{
"type": "null"
},
{
"type": "number"
}
],
"description": "Next page to request when more results exist; use the returned value rather than constructing a cursor."
},
"replayed": {
"type": "boolean",
"description": "Whether this response reuses the recorded outcome of an earlier attempt rather than performing a new write."
}
},
"description": "Operation data; optional fields may be absent."
},
"error": {
"type": "string",
"description": "Why the operation failed."
},
"details": {
"type": "object",
"description": "Diagnostics keyed by errorCode."
},
"message": {
"type": "string",
"description": "Outcome or recovery instructions. Project selection means no action ran."
},
"success": {
"type": "boolean",
"description": "Operation success; on false inspect error/errorCode."
},
"upgrade": {
"type": "object",
"description": "Plan-upgrade guidance for an unavailable capability."
},
"category": {
"type": "string",
"description": "Failure category, such as invalid_input or plan_required."
},
"expected": {
"type": "boolean",
"description": "Whether this is an anticipated access, input, plan or state failure."
},
"projects": {
"type": "array",
"items": {
"type": "object",
"properties": {
"id": {
"type": "number",
"description": "Project ID for projectId."
},
"name": {
"type": "string",
"description": "Project name."
}
},
"description": "Accessible project."
},
"description": "Accessible project choices. Select a projectId and retry."
},
"errorCode": {
"type": "string",
"description": "Failure code for recovery."
},
"retryable": {
"type": "boolean",
"description": "Whether an unchanged request can be retried."
},
"statusCode": {
"type": "number",
"description": "HTTP-style failure status."
},
"executionTime": {
"type": "string",
"description": "Elapsed time in seconds, with an s suffix."
}
},
"description": "Operation result envelope."
},
"annotations": {
"readOnlyHint": false,
"openWorldHint": true,
"idempotentHint": true,
"destructiveHint": false
}
}
The title clearly communicates the tool’s action and subject. Keep it concise.
Description94/100
Create a new Elementor page draft from validated native element trees. Copy reusable template trees; never mutate source templates.
Use list_wordpress_elementor_templates and get_wordpress_elementor_document to obtain source trees. Creates a new draft only; it does not publish or change the source template. Reuse the same attemptId and identical payload only for a retry of the same intended action; a new action needs a new key.
The description explains the capability, when to use it, and what to expect.
Inputs93/100
Remove validation rules already expressed in this field’s schema; describe its meaning and usage instead.
projectPublishingId
Atomic publishing connection ID from get_publishing_connections, not the provider site or post ID.
Clear enough to supply this argument.
attemptId
Caller-generated identifier for one intended mutation. Reuse it with the identical payload after an uncertain response; use a new identifier for a different intended action.
Clear enough to supply this argument.
fields › title
Human-readable title for this item.
Clear enough to supply this argument.
fields › slug
URL slug for the CMS item or term.
Clear enough to supply this argument.
fields › excerpt
Short CMS summary distinct from the full content body.
Clear enough to supply this argument.
fields › pageTemplate
WordPress page-template identifier supported by the connected site.
Clear enough to supply this argument.
fields › elements
Native Elementor element tree. Preserve IDs, settings and children outside the intended edit.
Clear enough to supply this argument.
projectId
Atomic project ID from list_projects. Omit to use the configured project; if asked to choose, select one of the accessible returned IDs.
Clear enough to supply this argument.
context
Short purpose of this call for the activity log. Exclude personal data and private source content.
Remove validation rules already expressed in this field’s schema; describe its meaning and usage instead.
llm_model
Use the exact model ID executing this call, from runtime/system context, for usage attribution. Supply it on every Atomic MCP tool call, including discovery and feedback, and update it if the model changes. Use the model ID rather than the client app name. If unavailable, omit it; never guess or ask the user.
Remove validation rules already expressed in this field’s schema; describe its meaning and usage instead.
{
"type": "object",
"required": [
"success"
],
"properties": {
"url": {
"type": "string",
"description": "Link for resolving the failure or completing the operation."
},
"data": {
"type": "object",
"properties": {
"data": {
"description": "Result items or operation data inside this returned payload. Pagination fields describe only this result page."
},
"total": {
"type": "number",
"description": "Total number of matching items across all result pages."
},
"nextPage": {
"anyOf": [
{
"type": "null"
},
{
"type": "number"
}
],
"description": "Next page to request when more results exist; use the returned value rather than constructing a cursor."
},
"replayed": {
"type": "boolean",
"description": "Whether this response reuses the recorded outcome of an earlier attempt rather than performing a new write."
}
},
"description": "Operation data; optional fields may be absent."
},
"error": {
"type": "string",
"description": "Why the operation failed."
},
"details": {
"type": "object",
"description": "Diagnostics keyed by errorCode."
},
"message": {
"type": "string",
"description": "Outcome or recovery instructions. Project selection means no action ran."
},
"success": {
"type": "boolean",
"description": "Operation success; on false inspect error/errorCode."
},
"upgrade": {
"type": "object",
"description": "Plan-upgrade guidance for an unavailable capability."
},
"category": {
"type": "string",
"description": "Failure category, such as invalid_input or plan_required."
},
"expected": {
"type": "boolean",
"description": "Whether this is an anticipated access, input, plan or state failure."
},
"projects": {
"type": "array",
"items": {
"type": "object",
"properties": {
"id": {
"type": "number",
"description": "Project ID for projectId."
},
"name": {
"type": "string",
"description": "Project name."
}
},
"description": "Accessible project."
},
"description": "Accessible project choices. Select a projectId and retry."
},
"errorCode": {
"type": "string",
"description": "Failure code for recovery."
},
"retryable": {
"type": "boolean",
"description": "Whether an unchanged request can be retried."
},
"statusCode": {
"type": "number",
"description": "HTTP-style failure status."
},
"executionTime": {
"type": "string",
"description": "Elapsed time in seconds, with an s suffix."
}
},
"description": "Operation result envelope."
}
Original tool metadata
{
"name": "create_wordpress_elementor_draft",
"title": "Create WordPress elementor draft",
"description": "Create a new Elementor page draft from validated native element trees. Copy reusable template trees; never mutate source templates.\n\nUse list_wordpress_elementor_templates and get_wordpress_elementor_document to obtain source trees. Creates a new draft only; it does not publish or change the source template. Reuse the same attemptId and identical payload only for a retry of the same intended action; a new action needs a new key.",
"inputSchema": {
"type": "object",
"required": [
"projectPublishingId",
"attemptId",
"fields"
],
"properties": {
"fields": {
"type": "object",
"required": [
"title",
"elements"
],
"properties": {
"slug": {
"type": "string",
"description": "URL slug for the CMS item or term."
},
"title": {
"type": "string",
"description": "Human-readable title for this item."
},
"excerpt": {
"type": "string",
"description": "Short CMS summary distinct from the full content body."
},
"elements": {
"type": "array",
"items": {
"type": "object",
"additionalProperties": true
},
"maxItems": 30,
"minItems": 1,
"description": "Native Elementor element tree. Preserve IDs, settings and children outside the intended edit."
},
"pageTemplate": {
"enum": [
"default",
"elementor_header_footer",
"elementor_canvas"
],
"type": "string",
"description": "WordPress page-template identifier supported by the connected site."
}
},
"description": "Explicit native fields to change. Omitted fields remain unchanged; read the current item and capabilities before constructing edits.",
"additionalProperties": false
},
"context": {
"type": "string",
"maxLength": 120,
"description": "Short purpose of this call for the activity log. Exclude personal data and private source content."
},
"attemptId": {
"type": "string",
"format": "uuid",
"description": "Caller-generated identifier for one intended mutation. Reuse it with the identical payload after an uncertain response; use a new identifier for a different intended action."
},
"llm_model": {
"type": "string",
"maxLength": 128,
"description": "Use the exact model ID executing this call, from runtime/system context, for usage attribution. Supply it on every Atomic MCP tool call, including discovery and feedback, and update it if the model changes. Use the model ID rather than the client app name. If unavailable, omit it; never guess or ask the user."
},
"projectId": {
"type": "number",
"description": "Atomic project ID from list_projects. Omit to use the configured project; if asked to choose, select one of the accessible returned IDs."
},
"projectPublishingId": {
"type": "number",
"minimum": 1,
"description": "Atomic publishing connection ID from get_publishing_connections, not the provider site or post ID."
}
},
"additionalProperties": false
},
"outputSchema": {
"type": "object",
"required": [
"success"
],
"properties": {
"url": {
"type": "string",
"description": "Link for resolving the failure or completing the operation."
},
"data": {
"type": "object",
"properties": {
"data": {
"description": "Result items or operation data inside this returned payload. Pagination fields describe only this result page."
},
"total": {
"type": "number",
"description": "Total number of matching items across all result pages."
},
"nextPage": {
"anyOf": [
{
"type": "null"
},
{
"type": "number"
}
],
"description": "Next page to request when more results exist; use the returned value rather than constructing a cursor."
},
"replayed": {
"type": "boolean",
"description": "Whether this response reuses the recorded outcome of an earlier attempt rather than performing a new write."
}
},
"description": "Operation data; optional fields may be absent."
},
"error": {
"type": "string",
"description": "Why the operation failed."
},
"details": {
"type": "object",
"description": "Diagnostics keyed by errorCode."
},
"message": {
"type": "string",
"description": "Outcome or recovery instructions. Project selection means no action ran."
},
"success": {
"type": "boolean",
"description": "Operation success; on false inspect error/errorCode."
},
"upgrade": {
"type": "object",
"description": "Plan-upgrade guidance for an unavailable capability."
},
"category": {
"type": "string",
"description": "Failure category, such as invalid_input or plan_required."
},
"expected": {
"type": "boolean",
"description": "Whether this is an anticipated access, input, plan or state failure."
},
"projects": {
"type": "array",
"items": {
"type": "object",
"properties": {
"id": {
"type": "number",
"description": "Project ID for projectId."
},
"name": {
"type": "string",
"description": "Project name."
}
},
"description": "Accessible project."
},
"description": "Accessible project choices. Select a projectId and retry."
},
"errorCode": {
"type": "string",
"description": "Failure code for recovery."
},
"retryable": {
"type": "boolean",
"description": "Whether an unchanged request can be retried."
},
"statusCode": {
"type": "number",
"description": "HTTP-style failure status."
},
"executionTime": {
"type": "string",
"description": "Elapsed time in seconds, with an s suffix."
}
},
"description": "Operation result envelope."
},
"annotations": {
"readOnlyHint": false,
"openWorldHint": true,
"idempotentHint": true,
"destructiveHint": false
}
}
The title clearly communicates the tool’s action and subject. Keep it concise.
Description79/100
Create a taxonomy term using native name, slug, description and parent fields. Taxonomy-specific permissions apply.
Discover taxonomy with list_wordpress_taxonomies and search list_wordpress_terms before creation. Use update_wordpress_term for an existing term, not repeated create calls. Reuse the same attemptId and identical payload only for a retry of the same intended action; a new action needs a new key.
The description explains the capability, when to use it, and what to expect.
Inputs93/100
Remove validation rules already expressed in this field’s schema; describe its meaning and usage instead.
projectPublishingId
Atomic publishing connection ID from get_publishing_connections, not the provider site or post ID.
Clear enough to supply this argument.
attemptId
Caller-generated identifier for one intended mutation. Reuse it with the identical payload after an uncertain response; use a new identifier for a different intended action.
Clear enough to supply this argument.
taxonomy
Native WordPress taxonomy slug from list_wordpress_taxonomies.
Clear enough to supply this argument.
fields › name
Human-readable name of the item being created or edited.
Clear enough to supply this argument.
fields › slug
URL slug for the CMS item or term.
Clear enough to supply this argument.
fields › description
Human-readable purpose or description of this item. On edits, preserve existing text unless replacing it intentionally.
Clear enough to supply this argument.
fields › parent
Existing parent term identifier in the same taxonomy; use the native root value when creating a top-level term.
Clear enough to supply this argument.
projectId
Atomic project ID from list_projects. Omit to use the configured project; if asked to choose, select one of the accessible returned IDs.
Clear enough to supply this argument.
context
Short purpose of this call for the activity log. Exclude personal data and private source content.
Remove validation rules already expressed in this field’s schema; describe its meaning and usage instead.
llm_model
Use the exact model ID executing this call, from runtime/system context, for usage attribution. Supply it on every Atomic MCP tool call, including discovery and feedback, and update it if the model changes. Use the model ID rather than the client app name. If unavailable, omit it; never guess or ask the user.
Remove validation rules already expressed in this field’s schema; describe its meaning and usage instead.
{
"type": "object",
"required": [
"success"
],
"properties": {
"url": {
"type": "string",
"description": "Link for resolving the failure or completing the operation."
},
"data": {
"type": "object",
"required": [
"data"
],
"properties": {
"data": {
"type": "object",
"required": [
"id"
],
"properties": {
"id": {
"type": "number",
"description": "Identifier of this returned resource. Use it for subsequent reads or edits of the same resource."
},
"link": {
"type": "string"
},
"name": {
"type": "string",
"description": "Human-readable name of this resource."
},
"slug": {
"type": "string",
"description": "Saved URL slug or native CMS slug of this item."
},
"type": {
"type": "string",
"description": "Kind of the returned item; determines how its operation-specific fields should be interpreted."
},
"count": {
"type": "number",
"description": "Number of records reported by the provider for this group."
},
"title": {
"type": "object",
"properties": {
"raw": {
"type": "string"
},
"rendered": {
"type": "string"
}
},
"description": "Display or content title of this returned item."
},
"parent": {
"type": "number",
"description": "Native parent record ID; zero denotes the provider root when applicable."
},
"status": {
"type": "string",
"description": "Current saved or execution state reported by the operation."
},
"caption": {
"type": "object",
"properties": {
"raw": {
"type": "string"
},
"rendered": {
"type": "string"
}
},
"description": "Native media caption with raw/rendered values when supplied."
},
"alt_text": {
"type": "string",
"description": "Saved accessible alternative text on the native WordPress media record."
},
"order_by": {
"type": "string",
"description": "Native ordering policy for WooCommerce attribute terms."
},
"taxonomy": {
"type": "string",
"description": "Native taxonomy slug owning this term."
},
"mime_type": {
"type": "string",
"description": "Native MIME type of this media record."
},
"media_type": {
"type": "string",
"description": "WordPress media category, such as image or file."
},
"source_url": {
"type": "string",
"description": "Provider URL of the media asset."
},
"description": {
"anyOf": [
{
"type": "string"
},
{
"type": "object",
"properties": {
"raw": {
"type": "string"
},
"rendered": {
"type": "string"
}
}
}
],
"description": "Saved description of this resource or its purpose."
},
"has_archives": {
"type": "boolean",
"description": "Whether this WooCommerce attribute enables public archives."
}
},
"description": "Result items or operation data inside this returned payload. Pagination fields describe only this result page."
},
"total": {
"type": "number",
"description": "Total number of matching items across all result pages."
},
"nextPage": {
"anyOf": [
{
"type": "null"
},
{
"type": "number"
}
],
"description": "Next page to request when more results exist; use the returned value rather than constructing a cursor."
},
"replayed": {
"type": "boolean",
"description": "Whether this response reuses the recorded outcome of an earlier attempt rather than performing a new write."
}
},
"description": "Operation data; optional fields may be absent."
},
"error": {
"type": "string",
"description": "Why the operation failed."
},
"details": {
"type": "object",
"description": "Diagnostics keyed by errorCode."
},
"message": {
"type": "string",
"description": "Outcome or recovery instructions. Project selection means no action ran."
},
"success": {
"type": "boolean",
"description": "Operation success; on false inspect error/errorCode."
},
"upgrade": {
"type": "object",
"description": "Plan-upgrade guidance for an unavailable capability."
},
"category": {
"type": "string",
"description": "Failure category, such as invalid_input or plan_required."
},
"expected": {
"type": "boolean",
"description": "Whether this is an anticipated access, input, plan or state failure."
},
"projects": {
"type": "array",
"items": {
"type": "object",
"properties": {
"id": {
"type": "number",
"description": "Project ID for projectId."
},
"name": {
"type": "string",
"description": "Project name."
}
},
"description": "Accessible project."
},
"description": "Accessible project choices. Select a projectId and retry."
},
"errorCode": {
"type": "string",
"description": "Failure code for recovery."
},
"retryable": {
"type": "boolean",
"description": "Whether an unchanged request can be retried."
},
"statusCode": {
"type": "number",
"description": "HTTP-style failure status."
},
"executionTime": {
"type": "string",
"description": "Elapsed time in seconds, with an s suffix."
}
},
"description": "Operation result envelope."
}
Original tool metadata
{
"name": "create_wordpress_term",
"title": "Create WordPress term",
"description": "Create a taxonomy term using native name, slug, description and parent fields. Taxonomy-specific permissions apply.\n\nDiscover taxonomy with list_wordpress_taxonomies and search list_wordpress_terms before creation. Use update_wordpress_term for an existing term, not repeated create calls. Reuse the same attemptId and identical payload only for a retry of the same intended action; a new action needs a new key.",
"inputSchema": {
"type": "object",
"required": [
"projectPublishingId",
"attemptId",
"taxonomy",
"fields"
],
"properties": {
"fields": {
"type": "object",
"required": [
"name"
],
"properties": {
"name": {
"type": "string",
"description": "Human-readable name of the item being created or edited."
},
"slug": {
"type": "string",
"description": "URL slug for the CMS item or term."
},
"parent": {
"type": "number",
"description": "Existing parent term identifier in the same taxonomy; use the native root value when creating a top-level term."
},
"description": {
"type": "string",
"description": "Human-readable purpose or description of this item. On edits, preserve existing text unless replacing it intentionally."
}
},
"description": "Explicit native fields to change. Omitted fields remain unchanged; read the current item and capabilities before constructing edits.",
"additionalProperties": true
},
"context": {
"type": "string",
"maxLength": 120,
"description": "Short purpose of this call for the activity log. Exclude personal data and private source content."
},
"taxonomy": {
"type": "string",
"description": "Native WordPress taxonomy slug from list_wordpress_taxonomies."
},
"attemptId": {
"type": "string",
"format": "uuid",
"description": "Caller-generated identifier for one intended mutation. Reuse it with the identical payload after an uncertain response; use a new identifier for a different intended action."
},
"llm_model": {
"type": "string",
"maxLength": 128,
"description": "Use the exact model ID executing this call, from runtime/system context, for usage attribution. Supply it on every Atomic MCP tool call, including discovery and feedback, and update it if the model changes. Use the model ID rather than the client app name. If unavailable, omit it; never guess or ask the user."
},
"projectId": {
"type": "number",
"description": "Atomic project ID from list_projects. Omit to use the configured project; if asked to choose, select one of the accessible returned IDs."
},
"projectPublishingId": {
"type": "number",
"minimum": 1,
"description": "Atomic publishing connection ID from get_publishing_connections, not the provider site or post ID."
}
},
"additionalProperties": false
},
"outputSchema": {
"type": "object",
"required": [
"success"
],
"properties": {
"url": {
"type": "string",
"description": "Link for resolving the failure or completing the operation."
},
"data": {
"type": "object",
"required": [
"data"
],
"properties": {
"data": {
"type": "object",
"required": [
"id"
],
"properties": {
"id": {
"type": "number",
"description": "Identifier of this returned resource. Use it for subsequent reads or edits of the same resource."
},
"link": {
"type": "string"
},
"name": {
"type": "string",
"description": "Human-readable name of this resource."
},
"slug": {
"type": "string",
"description": "Saved URL slug or native CMS slug of this item."
},
"type": {
"type": "string",
"description": "Kind of the returned item; determines how its operation-specific fields should be interpreted."
},
"count": {
"type": "number",
"description": "Number of records reported by the provider for this group."
},
"title": {
"type": "object",
"properties": {
"raw": {
"type": "string"
},
"rendered": {
"type": "string"
}
},
"description": "Display or content title of this returned item."
},
"parent": {
"type": "number",
"description": "Native parent record ID; zero denotes the provider root when applicable."
},
"status": {
"type": "string",
"description": "Current saved or execution state reported by the operation."
},
"caption": {
"type": "object",
"properties": {
"raw": {
"type": "string"
},
"rendered": {
"type": "string"
}
},
"description": "Native media caption with raw/rendered values when supplied."
},
"alt_text": {
"type": "string",
"description": "Saved accessible alternative text on the native WordPress media record."
},
"order_by": {
"type": "string",
"description": "Native ordering policy for WooCommerce attribute terms."
},
"taxonomy": {
"type": "string",
"description": "Native taxonomy slug owning this term."
},
"mime_type": {
"type": "string",
"description": "Native MIME type of this media record."
},
"media_type": {
"type": "string",
"description": "WordPress media category, such as image or file."
},
"source_url": {
"type": "string",
"description": "Provider URL of the media asset."
},
"description": {
"anyOf": [
{
"type": "string"
},
{
"type": "object",
"properties": {
"raw": {
"type": "string"
},
"rendered": {
"type": "string"
}
}
}
],
"description": "Saved description of this resource or its purpose."
},
"has_archives": {
"type": "boolean",
"description": "Whether this WooCommerce attribute enables public archives."
}
},
"description": "Result items or operation data inside this returned payload. Pagination fields describe only this result page."
},
"total": {
"type": "number",
"description": "Total number of matching items across all result pages."
},
"nextPage": {
"anyOf": [
{
"type": "null"
},
{
"type": "number"
}
],
"description": "Next page to request when more results exist; use the returned value rather than constructing a cursor."
},
"replayed": {
"type": "boolean",
"description": "Whether this response reuses the recorded outcome of an earlier attempt rather than performing a new write."
}
},
"description": "Operation data; optional fields may be absent."
},
"error": {
"type": "string",
"description": "Why the operation failed."
},
"details": {
"type": "object",
"description": "Diagnostics keyed by errorCode."
},
"message": {
"type": "string",
"description": "Outcome or recovery instructions. Project selection means no action ran."
},
"success": {
"type": "boolean",
"description": "Operation success; on false inspect error/errorCode."
},
"upgrade": {
"type": "object",
"description": "Plan-upgrade guidance for an unavailable capability."
},
"category": {
"type": "string",
"description": "Failure category, such as invalid_input or plan_required."
},
"expected": {
"type": "boolean",
"description": "Whether this is an anticipated access, input, plan or state failure."
},
"projects": {
"type": "array",
"items": {
"type": "object",
"properties": {
"id": {
"type": "number",
"description": "Project ID for projectId."
},
"name": {
"type": "string",
"description": "Project name."
}
},
"description": "Accessible project."
},
"description": "Accessible project choices. Select a projectId and retry."
},
"errorCode": {
"type": "string",
"description": "Failure code for recovery."
},
"retryable": {
"type": "boolean",
"description": "Whether an unchanged request can be retried."
},
"statusCode": {
"type": "number",
"description": "HTTP-style failure status."
},
"executionTime": {
"type": "string",
"description": "Elapsed time in seconds, with an s suffix."
}
},
"description": "Operation result envelope."
},
"annotations": {
"readOnlyHint": false,
"openWorldHint": true,
"idempotentHint": true,
"destructiveHint": false
}
}
The title clearly communicates the tool’s action and subject. Keep it concise.
Description97/100
Create a new WORKFLOW AUTOMATION for a project. Workflows are AUTOMATED PIPELINES that execute multiple steps in sequence (like SERP analysis, content generation, NLP analysis). This is NOT for reports/dashboards - use this for automation tasks. IMPORTANT: The response includes a workflowId (save this to add steps!) and an editUrl field. CRITICAL: The editUrl is the EXACT URL to open the workflow in the editor. You MUST use this editUrl EXACTLY as provided - DO NOT reconstruct, modify, or guess the URL structure. Copy the editUrl field value directly from the response and use it as-is in your markdown link: [Edit Workflow](editUrl). Never try to build the URL yourself based on workspace/project slugs or workflow IDs.
Creates a draft pipeline, not a data report, and does not run it. Inspect get_workflows before creating another; configure steps and validate_workflow before testing.
The description explains the capability, when to use it, and what to expect.
Inputs75/100
Explain the meaning of this value, not just its name.
name
The name of the workflow
Explain the meaning of this value, not just its name.
description
Optional description for the workflow
Explain the meaning of this value, not just its name.
projectId
Atomic project ID from list_projects. Omit to use the configured project; if asked to choose, select one of the accessible returned IDs.
Clear enough to supply this argument.
context
Short purpose of this call for the activity log. Exclude personal data and private source content.
Remove validation rules already expressed in this field’s schema; describe its meaning and usage instead.
llm_model
Use the exact model ID executing this call, from runtime/system context, for usage attribution. Supply it on every Atomic MCP tool call, including discovery and feedback, and update it if the model changes. Use the model ID rather than the client app name. If unavailable, omit it; never guess or ask the user.
Align the output schema with the tool’s documented result.
View output schema
{
"type": "object",
"required": [
"success"
],
"properties": {
"url": {
"type": "string",
"description": "Link for resolving the failure or completing the operation."
},
"data": {
"type": "object",
"required": [
"name",
"description",
"selectedVersionId",
"projectId",
"createdAt",
"updatedAt"
],
"properties": {
"id": {
"type": "number",
"description": "Identifier of this returned resource. Use it for subsequent reads or edits of the same resource."
},
"name": {
"type": "string",
"description": "Human-readable name of this resource."
},
"editUrl": {
"type": "string"
},
"schedule": {
"type": "object",
"required": [
"projectId",
"type",
"frequency",
"timeRange",
"minuteOffset",
"timezone",
"isActive",
"createdAt",
"updatedAt"
],
"properties": {
"id": {
"type": "number",
"description": "Identifier of this returned resource. Use it for subsequent reads or edits of the same resource."
},
"name": {
"anyOf": [
{
"type": "null"
},
{
"type": "string"
}
],
"description": "Human-readable name of this resource."
},
"type": {
"enum": [
"seo_audit",
"seo_audit_notification",
"keyword_research",
"competitor_analysis",
"backlink_analysis",
"content_analysis",
"prompt_tracking",
"prompt_tracking_via_api",
"performance_report",
"weekly_digest",
"workflow",
"agent_conversation"
],
"type": "string",
"description": "Kind of the returned item; determines how its operation-specific fields should be interpreted."
},
"prompt": {
"anyOf": [
{
"type": "null"
},
{
"type": "string"
}
],
"description": "Prompt text used for the tracked or tested AI-search run."
},
"agentId": {
"anyOf": [
{
"type": "null"
},
{
"type": "number"
}
],
"description": "Saved Atomic agent associated with this resource or execution."
},
"isActive": {
"type": "boolean",
"description": "Whether this saved configuration is enabled."
},
"timezone": {
"type": "string"
},
"createdAt": {
"type": "string",
"format": "date-time",
"description": "Date and time this record was created, serialized as ISO 8601."
},
"dayOfWeek": {
"enum": [
"mondays",
"tuesdays",
"wednesdays",
"thursdays",
"fridays",
"saturdays",
"sundays"
],
"type": "string"
},
"frequency": {
"enum": [
"once",
"daily",
"every_48_hours",
"every_72_hours",
"weekly",
"bi_weekly",
"monthly",
"off"
],
"type": "string"
},
"lastRunAt": {
"type": "string",
"format": "date-time",
"description": "Timestamp serialized as an ISO 8601 date and time."
},
"nextRunAt": {
"type": "string",
"format": "date-time",
"description": "Timestamp serialized as an ISO 8601 date and time."
},
"projectId": {
"type": "number",
"description": "Atomic project that owns this resource."
},
"timeRange": {
"type": "string"
},
"updatedAt": {
"type": "string",
"format": "date-time",
"description": "Date and time this record was last updated, serialized as ISO 8601."
},
"gridCellId": {
"anyOf": [
{
"type": "null"
},
{
"type": "number"
}
]
},
"workflowId": {
"type": "number",
"description": "Saved workflow definition associated with this result."
},
"minuteOffset": {
"type": "number"
},
"monthlyOption": {
"enum": [
"first_day",
"fifth_day",
"last_day",
"first_monday",
"second_monday",
"third_monday",
"fourth_monday",
"first_friday",
"second_friday",
"third_friday",
"fourth_friday",
"middle_month"
],
"type": "string"
},
"conversationId": {
"anyOf": [
{
"type": "null"
},
{
"type": "string"
}
],
"description": "Conversation associated with this task or execution."
},
"workflowInputs": {
"type": "object",
"properties": {},
"additionalProperties": {
"description": "JSON returned by the connected provider or selected operation; its fields depend on that operation."
}
},
"initiatedByUserId": {
"anyOf": [
{
"type": "null"
},
{
"type": "number"
}
],
"description": "Actual initiating member; null only for historical records/non-workflow service schedules."
}
}
},
"createdAt": {
"type": "string",
"format": "date-time",
"description": "Date and time this record was created, serialized as ISO 8601."
},
"projectId": {
"type": "number",
"description": "Atomic project that owns this resource."
},
"updatedAt": {
"type": "string",
"format": "date-time",
"description": "Date and time this record was last updated, serialized as ISO 8601."
},
"description": {
"type": "string",
"description": "Saved description of this resource or its purpose."
},
"selectedVersionId": {
"type": "number"
},
"collectionFolderId": {
"anyOf": [
{
"type": "null"
},
{
"type": "number"
}
],
"description": "Folder containing this item in its Atomic collection; null means top level."
}
},
"description": "Operation data; optional fields may be absent."
},
"error": {
"type": "string",
"description": "Why the operation failed."
},
"details": {
"type": "object",
"description": "Diagnostics keyed by errorCode."
},
"message": {
"type": "string",
"description": "Outcome or recovery instructions. Project selection means no action ran."
},
"success": {
"type": "boolean",
"description": "Operation success; on false inspect error/errorCode."
},
"upgrade": {
"type": "object",
"description": "Plan-upgrade guidance for an unavailable capability."
},
"category": {
"type": "string",
"description": "Failure category, such as invalid_input or plan_required."
},
"expected": {
"type": "boolean",
"description": "Whether this is an anticipated access, input, plan or state failure."
},
"projects": {
"type": "array",
"items": {
"type": "object",
"properties": {
"id": {
"type": "number",
"description": "Project ID for projectId."
},
"name": {
"type": "string",
"description": "Project name."
}
},
"description": "Accessible project."
},
"description": "Accessible project choices. Select a projectId and retry."
},
"errorCode": {
"type": "string",
"description": "Failure code for recovery."
},
"retryable": {
"type": "boolean",
"description": "Whether an unchanged request can be retried."
},
"statusCode": {
"type": "number",
"description": "HTTP-style failure status."
},
"executionTime": {
"type": "string",
"description": "Elapsed time in seconds, with an s suffix."
}
},
"description": "Operation result envelope."
}
Original tool metadata
{
"name": "create_workflow",
"title": "Create workflow",
"description": "Create a new WORKFLOW AUTOMATION for a project. Workflows are AUTOMATED PIPELINES that execute multiple steps in sequence (like SERP analysis, content generation, NLP analysis). This is NOT for reports/dashboards - use this for automation tasks. IMPORTANT: The response includes a workflowId (save this to add steps!) and an editUrl field. CRITICAL: The editUrl is the EXACT URL to open the workflow in the editor. You MUST use this editUrl EXACTLY as provided - DO NOT reconstruct, modify, or guess the URL structure. Copy the editUrl field value directly from the response and use it as-is in your markdown link: [Edit Workflow](editUrl). Never try to build the URL yourself based on workspace/project slugs or workflow IDs.\n\nCreates a draft pipeline, not a data report, and does not run it. Inspect get_workflows before creating another; configure steps and validate_workflow before testing.",
"inputSchema": {
"type": "object",
"required": [
"name"
],
"properties": {
"name": {
"type": "string",
"description": "The name of the workflow"
},
"context": {
"type": "string",
"maxLength": 120,
"description": "Short purpose of this call for the activity log. Exclude personal data and private source content."
},
"llm_model": {
"type": "string",
"maxLength": 128,
"description": "Use the exact model ID executing this call, from runtime/system context, for usage attribution. Supply it on every Atomic MCP tool call, including discovery and feedback, and update it if the model changes. Use the model ID rather than the client app name. If unavailable, omit it; never guess or ask the user."
},
"projectId": {
"type": "number",
"description": "Atomic project ID from list_projects. Omit to use the configured project; if asked to choose, select one of the accessible returned IDs."
},
"description": {
"type": "string",
"description": "Optional description for the workflow"
}
}
},
"outputSchema": {
"type": "object",
"required": [
"success"
],
"properties": {
"url": {
"type": "string",
"description": "Link for resolving the failure or completing the operation."
},
"data": {
"type": "object",
"required": [
"name",
"description",
"selectedVersionId",
"projectId",
"createdAt",
"updatedAt"
],
"properties": {
"id": {
"type": "number",
"description": "Identifier of this returned resource. Use it for subsequent reads or edits of the same resource."
},
"name": {
"type": "string",
"description": "Human-readable name of this resource."
},
"editUrl": {
"type": "string"
},
"schedule": {
"type": "object",
"required": [
"projectId",
"type",
"frequency",
"timeRange",
"minuteOffset",
"timezone",
"isActive",
"createdAt",
"updatedAt"
],
"properties": {
"id": {
"type": "number",
"description": "Identifier of this returned resource. Use it for subsequent reads or edits of the same resource."
},
"name": {
"anyOf": [
{
"type": "null"
},
{
"type": "string"
}
],
"description": "Human-readable name of this resource."
},
"type": {
"enum": [
"seo_audit",
"seo_audit_notification",
"keyword_research",
"competitor_analysis",
"backlink_analysis",
"content_analysis",
"prompt_tracking",
"prompt_tracking_via_api",
"performance_report",
"weekly_digest",
"workflow",
"agent_conversation"
],
"type": "string",
"description": "Kind of the returned item; determines how its operation-specific fields should be interpreted."
},
"prompt": {
"anyOf": [
{
"type": "null"
},
{
"type": "string"
}
],
"description": "Prompt text used for the tracked or tested AI-search run."
},
"agentId": {
"anyOf": [
{
"type": "null"
},
{
"type": "number"
}
],
"description": "Saved Atomic agent associated with this resource or execution."
},
"isActive": {
"type": "boolean",
"description": "Whether this saved configuration is enabled."
},
"timezone": {
"type": "string"
},
"createdAt": {
"type": "string",
"format": "date-time",
"description": "Date and time this record was created, serialized as ISO 8601."
},
"dayOfWeek": {
"enum": [
"mondays",
"tuesdays",
"wednesdays",
"thursdays",
"fridays",
"saturdays",
"sundays"
],
"type": "string"
},
"frequency": {
"enum": [
"once",
"daily",
"every_48_hours",
"every_72_hours",
"weekly",
"bi_weekly",
"monthly",
"off"
],
"type": "string"
},
"lastRunAt": {
"type": "string",
"format": "date-time",
"description": "Timestamp serialized as an ISO 8601 date and time."
},
"nextRunAt": {
"type": "string",
"format": "date-time",
"description": "Timestamp serialized as an ISO 8601 date and time."
},
"projectId": {
"type": "number",
"description": "Atomic project that owns this resource."
},
"timeRange": {
"type": "string"
},
"updatedAt": {
"type": "string",
"format": "date-time",
"description": "Date and time this record was last updated, serialized as ISO 8601."
},
"gridCellId": {
"anyOf": [
{
"type": "null"
},
{
"type": "number"
}
]
},
"workflowId": {
"type": "number",
"description": "Saved workflow definition associated with this result."
},
"minuteOffset": {
"type": "number"
},
"monthlyOption": {
"enum": [
"first_day",
"fifth_day",
"last_day",
"first_monday",
"second_monday",
"third_monday",
"fourth_monday",
"first_friday",
"second_friday",
"third_friday",
"fourth_friday",
"middle_month"
],
"type": "string"
},
"conversationId": {
"anyOf": [
{
"type": "null"
},
{
"type": "string"
}
],
"description": "Conversation associated with this task or execution."
},
"workflowInputs": {
"type": "object",
"properties": {},
"additionalProperties": {
"description": "JSON returned by the connected provider or selected operation; its fields depend on that operation."
}
},
"initiatedByUserId": {
"anyOf": [
{
"type": "null"
},
{
"type": "number"
}
],
"description": "Actual initiating member; null only for historical records/non-workflow service schedules."
}
}
},
"createdAt": {
"type": "string",
"format": "date-time",
"description": "Date and time this record was created, serialized as ISO 8601."
},
"projectId": {
"type": "number",
"description": "Atomic project that owns this resource."
},
"updatedAt": {
"type": "string",
"format": "date-time",
"description": "Date and time this record was last updated, serialized as ISO 8601."
},
"description": {
"type": "string",
"description": "Saved description of this resource or its purpose."
},
"selectedVersionId": {
"type": "number"
},
"collectionFolderId": {
"anyOf": [
{
"type": "null"
},
{
"type": "number"
}
],
"description": "Folder containing this item in its Atomic collection; null means top level."
}
},
"description": "Operation data; optional fields may be absent."
},
"error": {
"type": "string",
"description": "Why the operation failed."
},
"details": {
"type": "object",
"description": "Diagnostics keyed by errorCode."
},
"message": {
"type": "string",
"description": "Outcome or recovery instructions. Project selection means no action ran."
},
"success": {
"type": "boolean",
"description": "Operation success; on false inspect error/errorCode."
},
"upgrade": {
"type": "object",
"description": "Plan-upgrade guidance for an unavailable capability."
},
"category": {
"type": "string",
"description": "Failure category, such as invalid_input or plan_required."
},
"expected": {
"type": "boolean",
"description": "Whether this is an anticipated access, input, plan or state failure."
},
"projects": {
"type": "array",
"items": {
"type": "object",
"properties": {
"id": {
"type": "number",
"description": "Project ID for projectId."
},
"name": {
"type": "string",
"description": "Project name."
}
},
"description": "Accessible project."
},
"description": "Accessible project choices. Select a projectId and retry."
},
"errorCode": {
"type": "string",
"description": "Failure code for recovery."
},
"retryable": {
"type": "boolean",
"description": "Whether an unchanged request can be retried."
},
"statusCode": {
"type": "number",
"description": "HTTP-style failure status."
},
"executionTime": {
"type": "string",
"description": "Elapsed time in seconds, with an s suffix."
}
},
"description": "Operation result envelope."
},
"annotations": {
"readOnlyHint": false,
"openWorldHint": false,
"idempotentHint": false,
"destructiveHint": false
}
}
The title clearly communicates the tool’s action and subject. Keep it concise.
Description90/100
Create a workflows folder with a name and optional description in the selected project.
Creates a folder for saved workflow items, not a new workflow item. Use list_workflow_folders to inspect existing destinations and update_workflow_folder to edit one; repeating create may add another folder.
The description explains the capability, when to use it, and what to expect.
Inputs80/100
Remove validation rules already expressed in this field’s schema; describe its meaning and usage instead.
name
Folder name.
Remove validation rules already expressed in this field’s schema; describe its meaning and usage instead.
description
Folder description. Use an empty string to clear it.
Remove validation rules already expressed in this field’s schema; describe its meaning and usage instead.
projectId
Atomic project ID from list_projects. Omit to use the configured project; if asked to choose, select one of the accessible returned IDs.
Clear enough to supply this argument.
context
Short purpose of this call for the activity log. Exclude personal data and private source content.
Remove validation rules already expressed in this field’s schema; describe its meaning and usage instead.
llm_model
Use the exact model ID executing this call, from runtime/system context, for usage attribution. Supply it on every Atomic MCP tool call, including discovery and feedback, and update it if the model changes. Use the model ID rather than the client app name. If unavailable, omit it; never guess or ask the user.
Remove validation rules already expressed in this field’s schema; describe its meaning and usage instead.
{
"type": "object",
"required": [
"success"
],
"properties": {
"url": {
"type": "string",
"description": "Link for resolving the failure or completing the operation."
},
"data": {
"type": "object",
"required": [
"id",
"projectId",
"collection",
"name",
"description"
],
"properties": {
"id": {
"type": "number",
"description": "Identifier of this returned resource. Use it for subsequent reads or edits of the same resource."
},
"name": {
"type": "string",
"description": "Human-readable name of this resource."
},
"projectId": {
"type": "number",
"description": "Atomic project that owns this resource."
},
"collection": {
"enum": [
"content",
"grids",
"workflows",
"reports"
],
"type": "string",
"description": "Atomic collection that owns these folders or items."
},
"description": {
"type": "string",
"description": "Saved description of this resource or its purpose."
}
},
"description": "Operation data; optional fields may be absent."
},
"error": {
"type": "string",
"description": "Why the operation failed."
},
"details": {
"type": "object",
"description": "Diagnostics keyed by errorCode."
},
"message": {
"type": "string",
"description": "Outcome or recovery instructions. Project selection means no action ran."
},
"success": {
"type": "boolean",
"description": "Operation success; on false inspect error/errorCode."
},
"upgrade": {
"type": "object",
"description": "Plan-upgrade guidance for an unavailable capability."
},
"category": {
"type": "string",
"description": "Failure category, such as invalid_input or plan_required."
},
"expected": {
"type": "boolean",
"description": "Whether this is an anticipated access, input, plan or state failure."
},
"projects": {
"type": "array",
"items": {
"type": "object",
"properties": {
"id": {
"type": "number",
"description": "Project ID for projectId."
},
"name": {
"type": "string",
"description": "Project name."
}
},
"description": "Accessible project."
},
"description": "Accessible project choices. Select a projectId and retry."
},
"errorCode": {
"type": "string",
"description": "Failure code for recovery."
},
"retryable": {
"type": "boolean",
"description": "Whether an unchanged request can be retried."
},
"statusCode": {
"type": "number",
"description": "HTTP-style failure status."
},
"executionTime": {
"type": "string",
"description": "Elapsed time in seconds, with an s suffix."
}
},
"description": "Operation result envelope."
}
Original tool metadata
{
"name": "create_workflow_folder",
"title": "Create workflow folder",
"description": "Create a workflows folder with a name and optional description in the selected project.\n\nCreates a folder for saved workflow items, not a new workflow item. Use list_workflow_folders to inspect existing destinations and update_workflow_folder to edit one; repeating create may add another folder.",
"inputSchema": {
"type": "object",
"required": [
"name"
],
"properties": {
"name": {
"type": "string",
"maxLength": 120,
"minLength": 1,
"description": "Folder name."
},
"context": {
"type": "string",
"maxLength": 120,
"description": "Short purpose of this call for the activity log. Exclude personal data and private source content."
},
"llm_model": {
"type": "string",
"maxLength": 128,
"description": "Use the exact model ID executing this call, from runtime/system context, for usage attribution. Supply it on every Atomic MCP tool call, including discovery and feedback, and update it if the model changes. Use the model ID rather than the client app name. If unavailable, omit it; never guess or ask the user."
},
"projectId": {
"type": "number",
"description": "Atomic project ID from list_projects. Omit to use the configured project; if asked to choose, select one of the accessible returned IDs."
},
"description": {
"type": "string",
"maxLength": 2000,
"description": "Folder description. Use an empty string to clear it."
}
},
"additionalProperties": false
},
"outputSchema": {
"type": "object",
"required": [
"success"
],
"properties": {
"url": {
"type": "string",
"description": "Link for resolving the failure or completing the operation."
},
"data": {
"type": "object",
"required": [
"id",
"projectId",
"collection",
"name",
"description"
],
"properties": {
"id": {
"type": "number",
"description": "Identifier of this returned resource. Use it for subsequent reads or edits of the same resource."
},
"name": {
"type": "string",
"description": "Human-readable name of this resource."
},
"projectId": {
"type": "number",
"description": "Atomic project that owns this resource."
},
"collection": {
"enum": [
"content",
"grids",
"workflows",
"reports"
],
"type": "string",
"description": "Atomic collection that owns these folders or items."
},
"description": {
"type": "string",
"description": "Saved description of this resource or its purpose."
}
},
"description": "Operation data; optional fields may be absent."
},
"error": {
"type": "string",
"description": "Why the operation failed."
},
"details": {
"type": "object",
"description": "Diagnostics keyed by errorCode."
},
"message": {
"type": "string",
"description": "Outcome or recovery instructions. Project selection means no action ran."
},
"success": {
"type": "boolean",
"description": "Operation success; on false inspect error/errorCode."
},
"upgrade": {
"type": "object",
"description": "Plan-upgrade guidance for an unavailable capability."
},
"category": {
"type": "string",
"description": "Failure category, such as invalid_input or plan_required."
},
"expected": {
"type": "boolean",
"description": "Whether this is an anticipated access, input, plan or state failure."
},
"projects": {
"type": "array",
"items": {
"type": "object",
"properties": {
"id": {
"type": "number",
"description": "Project ID for projectId."
},
"name": {
"type": "string",
"description": "Project name."
}
},
"description": "Accessible project."
},
"description": "Accessible project choices. Select a projectId and retry."
},
"errorCode": {
"type": "string",
"description": "Failure code for recovery."
},
"retryable": {
"type": "boolean",
"description": "Whether an unchanged request can be retried."
},
"statusCode": {
"type": "number",
"description": "HTTP-style failure status."
},
"executionTime": {
"type": "string",
"description": "Elapsed time in seconds, with an s suffix."
}
},
"description": "Operation result envelope."
},
"annotations": {
"readOnlyHint": false,
"openWorldHint": false,
"idempotentHint": false,
"destructiveHint": false
}
}
The title clearly communicates the tool’s action and subject. Keep it concise.
Description99/100
Create a Stripe checkout link for the first workspace subscription on the explicit requested project. Use the projectId returned by create_project; never substitute another existing project. Requires full workspace billing permission. Use get_payment_plans first. Returns the checkout URL; the user must complete payment interactively. When presenting a clickable link, copy the returned url verbatim as the link destination, including the entire fragment after # and all percent-encoded characters. Never shorten, decode, reconstruct the URL from sessionId, or remove its fragment; an altered URL can produce a Stripe "This link is incomplete" error. Does not activate the plan until checkout succeeds. Existing subscription changes require interactive workspace billing in Atomic.
Creates a checkout session/link, not a payment. Use only after the user requests the selected project's subscription; completion and billing happen on the checkout page.
The description explains the capability, when to use it, and what to expect.
Inputs88/100
Remove validation rules already expressed in this field’s schema; describe its meaning and usage instead.
workspaceId
Atomic workspace identifier from list_workspaces. The acting user must have access to that workspace.
Clear enough to supply this argument.
projectId
Atomic project identifier from list_projects. Select only a project accessible to the acting user.
Remove validation rules already expressed in this field’s schema; describe its meaning and usage instead.
paymentPlanId
Active Atomic plan identifier from get_payment_plans.
Clear enough to supply this argument.
initialSeatQuantity
Seat quantity requested for the workspace's subscription checkout.
Explain what happens when this optional value is omitted.
context
Short purpose of this call for the activity log. Exclude personal data and private source content.
Remove validation rules already expressed in this field’s schema; describe its meaning and usage instead.
llm_model
Use the exact model ID executing this call, from runtime/system context, for usage attribution. Supply it on every Atomic MCP tool call, including discovery and feedback, and update it if the model changes. Use the model ID rather than the client app name. If unavailable, omit it; never guess or ask the user.
{
"type": "object",
"required": [
"success"
],
"properties": {
"url": {
"type": "string",
"description": "Link for resolving the failure or completing the operation."
},
"data": {
"type": "object",
"required": [
"url",
"sessionId",
"workspaceId",
"projectId",
"requestedPaymentPlanId",
"status"
],
"properties": {
"url": {
"type": "string",
"description": "URL returned for this resource or operation."
},
"status": {
"type": "string",
"const": "checkout_required",
"description": "Current saved or execution state reported by the operation."
},
"projectId": {
"type": "number",
"description": "Atomic project that owns this resource."
},
"sessionId": {
"type": "string",
"description": "Provider checkout session identifier; use the returned checkout URL to complete payment."
},
"workspaceId": {
"type": "number",
"description": "Atomic workspace that owns this project or resource."
},
"requestedPaymentPlanId": {
"type": "number"
}
},
"description": "Operation data; optional fields may be absent."
},
"error": {
"type": "string",
"description": "Why the operation failed."
},
"details": {
"type": "object",
"description": "Diagnostics keyed by errorCode."
},
"message": {
"type": "string",
"description": "Outcome or recovery instructions. Project selection means no action ran."
},
"success": {
"type": "boolean",
"description": "Operation success; on false inspect error/errorCode."
},
"upgrade": {
"type": "object",
"description": "Plan-upgrade guidance for an unavailable capability."
},
"category": {
"type": "string",
"description": "Failure category, such as invalid_input or plan_required."
},
"expected": {
"type": "boolean",
"description": "Whether this is an anticipated access, input, plan or state failure."
},
"projects": {
"type": "array",
"items": {
"type": "object",
"properties": {
"id": {
"type": "number",
"description": "Project ID for projectId."
},
"name": {
"type": "string",
"description": "Project name."
}
},
"description": "Accessible project."
},
"description": "Accessible project choices. Select a projectId and retry."
},
"errorCode": {
"type": "string",
"description": "Failure code for recovery."
},
"retryable": {
"type": "boolean",
"description": "Whether an unchanged request can be retried."
},
"statusCode": {
"type": "number",
"description": "HTTP-style failure status."
},
"executionTime": {
"type": "string",
"description": "Elapsed time in seconds, with an s suffix."
}
},
"description": "Operation result envelope."
}
Original tool metadata
{
"name": "create_workspace_subscription_checkout",
"title": "Create workspace subscription checkout",
"description": "Create a Stripe checkout link for the first workspace subscription on the explicit requested project. Use the projectId returned by create_project; never substitute another existing project. Requires full workspace billing permission. Use get_payment_plans first. Returns the checkout URL; the user must complete payment interactively. When presenting a clickable link, copy the returned url verbatim as the link destination, including the entire fragment after # and all percent-encoded characters. Never shorten, decode, reconstruct the URL from sessionId, or remove its fragment; an altered URL can produce a Stripe \"This link is incomplete\" error. Does not activate the plan until checkout succeeds. Existing subscription changes require interactive workspace billing in Atomic.\n\nCreates a checkout session/link, not a payment. Use only after the user requests the selected project's subscription; completion and billing happen on the checkout page.",
"inputSchema": {
"type": "object",
"required": [
"workspaceId",
"projectId",
"paymentPlanId"
],
"properties": {
"context": {
"type": "string",
"maxLength": 120,
"description": "Short purpose of this call for the activity log. Exclude personal data and private source content."
},
"llm_model": {
"type": "string",
"maxLength": 128,
"description": "Use the exact model ID executing this call, from runtime/system context, for usage attribution. Supply it on every Atomic MCP tool call, including discovery and feedback, and update it if the model changes. Use the model ID rather than the client app name. If unavailable, omit it; never guess or ask the user."
},
"projectId": {
"type": "number",
"minimum": 1,
"multipleOf": 1,
"description": "Atomic project identifier from list_projects. Select only a project accessible to the acting user."
},
"workspaceId": {
"type": "number",
"minimum": 1,
"multipleOf": 1,
"description": "Atomic workspace identifier from list_workspaces. The acting user must have access to that workspace."
},
"paymentPlanId": {
"type": "number",
"minimum": 1,
"multipleOf": 1,
"description": "Active Atomic plan identifier from get_payment_plans."
},
"initialSeatQuantity": {
"type": "number",
"minimum": 0,
"multipleOf": 1,
"description": "Seat quantity requested for the workspace's subscription checkout."
}
},
"additionalProperties": false
},
"outputSchema": {
"type": "object",
"required": [
"success"
],
"properties": {
"url": {
"type": "string",
"description": "Link for resolving the failure or completing the operation."
},
"data": {
"type": "object",
"required": [
"url",
"sessionId",
"workspaceId",
"projectId",
"requestedPaymentPlanId",
"status"
],
"properties": {
"url": {
"type": "string",
"description": "URL returned for this resource or operation."
},
"status": {
"type": "string",
"const": "checkout_required",
"description": "Current saved or execution state reported by the operation."
},
"projectId": {
"type": "number",
"description": "Atomic project that owns this resource."
},
"sessionId": {
"type": "string",
"description": "Provider checkout session identifier; use the returned checkout URL to complete payment."
},
"workspaceId": {
"type": "number",
"description": "Atomic workspace that owns this project or resource."
},
"requestedPaymentPlanId": {
"type": "number"
}
},
"description": "Operation data; optional fields may be absent."
},
"error": {
"type": "string",
"description": "Why the operation failed."
},
"details": {
"type": "object",
"description": "Diagnostics keyed by errorCode."
},
"message": {
"type": "string",
"description": "Outcome or recovery instructions. Project selection means no action ran."
},
"success": {
"type": "boolean",
"description": "Operation success; on false inspect error/errorCode."
},
"upgrade": {
"type": "object",
"description": "Plan-upgrade guidance for an unavailable capability."
},
"category": {
"type": "string",
"description": "Failure category, such as invalid_input or plan_required."
},
"expected": {
"type": "boolean",
"description": "Whether this is an anticipated access, input, plan or state failure."
},
"projects": {
"type": "array",
"items": {
"type": "object",
"properties": {
"id": {
"type": "number",
"description": "Project ID for projectId."
},
"name": {
"type": "string",
"description": "Project name."
}
},
"description": "Accessible project."
},
"description": "Accessible project choices. Select a projectId and retry."
},
"errorCode": {
"type": "string",
"description": "Failure code for recovery."
},
"retryable": {
"type": "boolean",
"description": "Whether an unchanged request can be retried."
},
"statusCode": {
"type": "number",
"description": "HTTP-style failure status."
},
"executionTime": {
"type": "string",
"description": "Elapsed time in seconds, with an s suffix."
}
},
"description": "Operation result envelope."
},
"annotations": {
"readOnlyHint": false,
"openWorldHint": true,
"idempotentHint": false,
"destructiveHint": false
}
}
The title clearly communicates the tool’s action and subject. Keep it concise.
Description95/100
Delete a custom agent from the current project. IMPORTANT: Only agents that belong to your project can be deleted. Predefined/public agents cannot be deleted. Use get_my_agents first to see which agents you can delete.
Removes the selected saved record and may remove dependent state. Inspect the exact target first; use an update tool when only its configuration should change.
The description explains the capability, when to use it, and what to expect.
Inputs88/100
Remove validation rules already expressed in this field’s schema; describe its meaning and usage instead.
agentId
The ID of the agent to delete. Must be an agent that belongs to your project.
Remove validation rules already expressed in this field’s schema; describe its meaning and usage instead.
projectId
Atomic project ID from list_projects. Omit to use the configured project; if asked to choose, select one of the accessible returned IDs.
Clear enough to supply this argument.
context
Short purpose of this call for the activity log. Exclude personal data and private source content.
Remove validation rules already expressed in this field’s schema; describe its meaning and usage instead.
llm_model
Use the exact model ID executing this call, from runtime/system context, for usage attribution. Supply it on every Atomic MCP tool call, including discovery and feedback, and update it if the model changes. Use the model ID rather than the client app name. If unavailable, omit it; never guess or ask the user.
{
"type": "object",
"required": [
"success"
],
"properties": {
"url": {
"type": "string",
"description": "Link for resolving the failure or completing the operation."
},
"data": {
"type": "object",
"required": [
"success",
"message"
],
"properties": {
"message": {
"type": "string",
"description": "Outcome, explanation or recovery instructions returned by the operation."
},
"success": {
"type": "boolean",
"description": "Whether this nested operation completed successfully. Inspect the containing result for details."
}
},
"description": "Operation data; optional fields may be absent."
},
"error": {
"type": "string",
"description": "Why the operation failed."
},
"details": {
"type": "object",
"description": "Diagnostics keyed by errorCode."
},
"message": {
"type": "string",
"description": "Outcome or recovery instructions. Project selection means no action ran."
},
"success": {
"type": "boolean",
"description": "Operation success; on false inspect error/errorCode."
},
"upgrade": {
"type": "object",
"description": "Plan-upgrade guidance for an unavailable capability."
},
"category": {
"type": "string",
"description": "Failure category, such as invalid_input or plan_required."
},
"expected": {
"type": "boolean",
"description": "Whether this is an anticipated access, input, plan or state failure."
},
"projects": {
"type": "array",
"items": {
"type": "object",
"properties": {
"id": {
"type": "number",
"description": "Project ID for projectId."
},
"name": {
"type": "string",
"description": "Project name."
}
},
"description": "Accessible project."
},
"description": "Accessible project choices. Select a projectId and retry."
},
"errorCode": {
"type": "string",
"description": "Failure code for recovery."
},
"retryable": {
"type": "boolean",
"description": "Whether an unchanged request can be retried."
},
"statusCode": {
"type": "number",
"description": "HTTP-style failure status."
},
"executionTime": {
"type": "string",
"description": "Elapsed time in seconds, with an s suffix."
}
},
"description": "Operation result envelope."
}
Original tool metadata
{
"name": "delete_agent",
"title": "Delete agent",
"description": "Delete a custom agent from the current project. IMPORTANT: Only agents that belong to your project can be deleted. Predefined/public agents cannot be deleted. Use get_my_agents first to see which agents you can delete.\n\nRemoves the selected saved record and may remove dependent state. Inspect the exact target first; use an update tool when only its configuration should change.",
"inputSchema": {
"type": "object",
"required": [
"agentId"
],
"properties": {
"agentId": {
"type": "number",
"description": "The ID of the agent to delete. Must be an agent that belongs to your project."
},
"context": {
"type": "string",
"maxLength": 120,
"description": "Short purpose of this call for the activity log. Exclude personal data and private source content."
},
"llm_model": {
"type": "string",
"maxLength": 128,
"description": "Use the exact model ID executing this call, from runtime/system context, for usage attribution. Supply it on every Atomic MCP tool call, including discovery and feedback, and update it if the model changes. Use the model ID rather than the client app name. If unavailable, omit it; never guess or ask the user."
},
"projectId": {
"type": "number",
"description": "Atomic project ID from list_projects. Omit to use the configured project; if asked to choose, select one of the accessible returned IDs."
}
}
},
"outputSchema": {
"type": "object",
"required": [
"success"
],
"properties": {
"url": {
"type": "string",
"description": "Link for resolving the failure or completing the operation."
},
"data": {
"type": "object",
"required": [
"success",
"message"
],
"properties": {
"message": {
"type": "string",
"description": "Outcome, explanation or recovery instructions returned by the operation."
},
"success": {
"type": "boolean",
"description": "Whether this nested operation completed successfully. Inspect the containing result for details."
}
},
"description": "Operation data; optional fields may be absent."
},
"error": {
"type": "string",
"description": "Why the operation failed."
},
"details": {
"type": "object",
"description": "Diagnostics keyed by errorCode."
},
"message": {
"type": "string",
"description": "Outcome or recovery instructions. Project selection means no action ran."
},
"success": {
"type": "boolean",
"description": "Operation success; on false inspect error/errorCode."
},
"upgrade": {
"type": "object",
"description": "Plan-upgrade guidance for an unavailable capability."
},
"category": {
"type": "string",
"description": "Failure category, such as invalid_input or plan_required."
},
"expected": {
"type": "boolean",
"description": "Whether this is an anticipated access, input, plan or state failure."
},
"projects": {
"type": "array",
"items": {
"type": "object",
"properties": {
"id": {
"type": "number",
"description": "Project ID for projectId."
},
"name": {
"type": "string",
"description": "Project name."
}
},
"description": "Accessible project."
},
"description": "Accessible project choices. Select a projectId and retry."
},
"errorCode": {
"type": "string",
"description": "Failure code for recovery."
},
"retryable": {
"type": "boolean",
"description": "Whether an unchanged request can be retried."
},
"statusCode": {
"type": "number",
"description": "HTTP-style failure status."
},
"executionTime": {
"type": "string",
"description": "Elapsed time in seconds, with an s suffix."
}
},
"description": "Operation result envelope."
},
"annotations": {
"readOnlyHint": false,
"openWorldHint": false,
"idempotentHint": false,
"destructiveHint": true
}
}
The title clearly communicates the tool’s action and subject. Keep it concise.
Description94/100
Delete a scheduled agent conversation automation by ID.
Removes the selected saved record and may remove dependent state. Inspect the exact target first; use an update tool when only its configuration should change.
The description explains the capability, when to use it, and what to expect.
Inputs91/100
Remove validation rules already expressed in this field’s schema; describe its meaning and usage instead.
automationId
Automation schedule ID to delete.
Clear enough to supply this argument.
projectId
Atomic project ID from list_projects. Omit to use the configured project; if asked to choose, select one of the accessible returned IDs.
Clear enough to supply this argument.
context
Short purpose of this call for the activity log. Exclude personal data and private source content.
Remove validation rules already expressed in this field’s schema; describe its meaning and usage instead.
llm_model
Use the exact model ID executing this call, from runtime/system context, for usage attribution. Supply it on every Atomic MCP tool call, including discovery and feedback, and update it if the model changes. Use the model ID rather than the client app name. If unavailable, omit it; never guess or ask the user.
{
"type": "object",
"required": [
"success"
],
"properties": {
"url": {
"type": "string",
"description": "Link for resolving the failure or completing the operation."
},
"data": {
"type": "object",
"required": [
"success"
],
"properties": {
"success": {
"type": "boolean",
"description": "Whether this nested operation completed successfully. Inspect the containing result for details."
}
},
"description": "Operation data; optional fields may be absent."
},
"error": {
"type": "string",
"description": "Why the operation failed."
},
"details": {
"type": "object",
"description": "Diagnostics keyed by errorCode."
},
"message": {
"type": "string",
"description": "Outcome or recovery instructions. Project selection means no action ran."
},
"success": {
"type": "boolean",
"description": "Operation success; on false inspect error/errorCode."
},
"upgrade": {
"type": "object",
"description": "Plan-upgrade guidance for an unavailable capability."
},
"category": {
"type": "string",
"description": "Failure category, such as invalid_input or plan_required."
},
"expected": {
"type": "boolean",
"description": "Whether this is an anticipated access, input, plan or state failure."
},
"projects": {
"type": "array",
"items": {
"type": "object",
"properties": {
"id": {
"type": "number",
"description": "Project ID for projectId."
},
"name": {
"type": "string",
"description": "Project name."
}
},
"description": "Accessible project."
},
"description": "Accessible project choices. Select a projectId and retry."
},
"errorCode": {
"type": "string",
"description": "Failure code for recovery."
},
"retryable": {
"type": "boolean",
"description": "Whether an unchanged request can be retried."
},
"statusCode": {
"type": "number",
"description": "HTTP-style failure status."
},
"executionTime": {
"type": "string",
"description": "Elapsed time in seconds, with an s suffix."
}
},
"description": "Operation result envelope."
}
Original tool metadata
{
"name": "delete_agent_automation",
"title": "Delete agent automation",
"description": "Delete a scheduled agent conversation automation by ID.\n\nRemoves the selected saved record and may remove dependent state. Inspect the exact target first; use an update tool when only its configuration should change.",
"inputSchema": {
"type": "object",
"required": [
"automationId"
],
"properties": {
"context": {
"type": "string",
"maxLength": 120,
"description": "Short purpose of this call for the activity log. Exclude personal data and private source content."
},
"llm_model": {
"type": "string",
"maxLength": 128,
"description": "Use the exact model ID executing this call, from runtime/system context, for usage attribution. Supply it on every Atomic MCP tool call, including discovery and feedback, and update it if the model changes. Use the model ID rather than the client app name. If unavailable, omit it; never guess or ask the user."
},
"projectId": {
"type": "number",
"description": "Atomic project ID from list_projects. Omit to use the configured project; if asked to choose, select one of the accessible returned IDs."
},
"automationId": {
"type": "number",
"description": "Automation schedule ID to delete."
}
}
},
"outputSchema": {
"type": "object",
"required": [
"success"
],
"properties": {
"url": {
"type": "string",
"description": "Link for resolving the failure or completing the operation."
},
"data": {
"type": "object",
"required": [
"success"
],
"properties": {
"success": {
"type": "boolean",
"description": "Whether this nested operation completed successfully. Inspect the containing result for details."
}
},
"description": "Operation data; optional fields may be absent."
},
"error": {
"type": "string",
"description": "Why the operation failed."
},
"details": {
"type": "object",
"description": "Diagnostics keyed by errorCode."
},
"message": {
"type": "string",
"description": "Outcome or recovery instructions. Project selection means no action ran."
},
"success": {
"type": "boolean",
"description": "Operation success; on false inspect error/errorCode."
},
"upgrade": {
"type": "object",
"description": "Plan-upgrade guidance for an unavailable capability."
},
"category": {
"type": "string",
"description": "Failure category, such as invalid_input or plan_required."
},
"expected": {
"type": "boolean",
"description": "Whether this is an anticipated access, input, plan or state failure."
},
"projects": {
"type": "array",
"items": {
"type": "object",
"properties": {
"id": {
"type": "number",
"description": "Project ID for projectId."
},
"name": {
"type": "string",
"description": "Project name."
}
},
"description": "Accessible project."
},
"description": "Accessible project choices. Select a projectId and retry."
},
"errorCode": {
"type": "string",
"description": "Failure code for recovery."
},
"retryable": {
"type": "boolean",
"description": "Whether an unchanged request can be retried."
},
"statusCode": {
"type": "number",
"description": "HTTP-style failure status."
},
"executionTime": {
"type": "string",
"description": "Elapsed time in seconds, with an s suffix."
}
},
"description": "Operation result envelope."
},
"annotations": {
"readOnlyHint": false,
"openWorldHint": false,
"idempotentHint": false,
"destructiveHint": true
}
}
The title clearly communicates the tool’s action and subject. Keep it concise.
Description94/100
Permanently delete an unpublished Buffer post from the publishing queue. Does not delete a grid row. Confirm the selected post before deletion.
Removes the selected saved record and may remove dependent state. Inspect the exact target first; use an update tool when only its configuration should change.
The description explains the capability, when to use it, and what to expect.
Inputs85/100
Remove validation rules already expressed in this field’s schema; describe its meaning and usage instead.
connectionId
Workspace Google connection identifier from list_workspace_google_connections.
Remove validation rules already expressed in this field’s schema; describe its meaning and usage instead.
postId
Native post identifier from list_buffer_posts or get_buffer_post.
Clear enough to supply this argument.
projectId
Atomic project ID from list_projects. Omit to use the configured project; if asked to choose, select one of the accessible returned IDs.
Clear enough to supply this argument.
context
Short purpose of this call for the activity log. Exclude personal data and private source content.
Remove validation rules already expressed in this field’s schema; describe its meaning and usage instead.
llm_model
Use the exact model ID executing this call, from runtime/system context, for usage attribution. Supply it on every Atomic MCP tool call, including discovery and feedback, and update it if the model changes. Use the model ID rather than the client app name. If unavailable, omit it; never guess or ask the user.
Remove validation rules already expressed in this field’s schema; describe its meaning and usage instead.
{
"type": "object",
"required": [
"success"
],
"properties": {
"url": {
"type": "string",
"description": "Link for resolving the failure or completing the operation."
},
"data": {
"type": "object",
"required": [
"id"
],
"properties": {
"id": {
"type": "string",
"description": "Identifier of this returned resource. Use it for subsequent reads or edits of the same resource."
}
},
"description": "Operation data; optional fields may be absent."
},
"error": {
"type": "string",
"description": "Why the operation failed."
},
"details": {
"type": "object",
"description": "Diagnostics keyed by errorCode."
},
"message": {
"type": "string",
"description": "Outcome or recovery instructions. Project selection means no action ran."
},
"success": {
"type": "boolean",
"description": "Operation success; on false inspect error/errorCode."
},
"upgrade": {
"type": "object",
"description": "Plan-upgrade guidance for an unavailable capability."
},
"category": {
"type": "string",
"description": "Failure category, such as invalid_input or plan_required."
},
"expected": {
"type": "boolean",
"description": "Whether this is an anticipated access, input, plan or state failure."
},
"projects": {
"type": "array",
"items": {
"type": "object",
"properties": {
"id": {
"type": "number",
"description": "Project ID for projectId."
},
"name": {
"type": "string",
"description": "Project name."
}
},
"description": "Accessible project."
},
"description": "Accessible project choices. Select a projectId and retry."
},
"errorCode": {
"type": "string",
"description": "Failure code for recovery."
},
"retryable": {
"type": "boolean",
"description": "Whether an unchanged request can be retried."
},
"statusCode": {
"type": "number",
"description": "HTTP-style failure status."
},
"executionTime": {
"type": "string",
"description": "Elapsed time in seconds, with an s suffix."
}
},
"description": "Operation result envelope."
}
Original tool metadata
{
"name": "delete_buffer_post",
"title": "Delete buffer post",
"description": "Permanently delete an unpublished Buffer post from the publishing queue. Does not delete a grid row. Confirm the selected post before deletion.\n\nRemoves the selected saved record and may remove dependent state. Inspect the exact target first; use an update tool when only its configuration should change.",
"inputSchema": {
"type": "object",
"required": [
"connectionId",
"postId"
],
"properties": {
"postId": {
"type": "string",
"description": "Native post identifier from list_buffer_posts or get_buffer_post."
},
"context": {
"type": "string",
"maxLength": 120,
"description": "Short purpose of this call for the activity log. Exclude personal data and private source content."
},
"llm_model": {
"type": "string",
"maxLength": 128,
"description": "Use the exact model ID executing this call, from runtime/system context, for usage attribution. Supply it on every Atomic MCP tool call, including discovery and feedback, and update it if the model changes. Use the model ID rather than the client app name. If unavailable, omit it; never guess or ask the user."
},
"projectId": {
"type": "number",
"description": "Atomic project ID from list_projects. Omit to use the configured project; if asked to choose, select one of the accessible returned IDs."
},
"connectionId": {
"type": "number",
"minimum": 1,
"description": "Workspace Google connection identifier from list_workspace_google_connections."
}
},
"additionalProperties": false
},
"outputSchema": {
"type": "object",
"required": [
"success"
],
"properties": {
"url": {
"type": "string",
"description": "Link for resolving the failure or completing the operation."
},
"data": {
"type": "object",
"required": [
"id"
],
"properties": {
"id": {
"type": "string",
"description": "Identifier of this returned resource. Use it for subsequent reads or edits of the same resource."
}
},
"description": "Operation data; optional fields may be absent."
},
"error": {
"type": "string",
"description": "Why the operation failed."
},
"details": {
"type": "object",
"description": "Diagnostics keyed by errorCode."
},
"message": {
"type": "string",
"description": "Outcome or recovery instructions. Project selection means no action ran."
},
"success": {
"type": "boolean",
"description": "Operation success; on false inspect error/errorCode."
},
"upgrade": {
"type": "object",
"description": "Plan-upgrade guidance for an unavailable capability."
},
"category": {
"type": "string",
"description": "Failure category, such as invalid_input or plan_required."
},
"expected": {
"type": "boolean",
"description": "Whether this is an anticipated access, input, plan or state failure."
},
"projects": {
"type": "array",
"items": {
"type": "object",
"properties": {
"id": {
"type": "number",
"description": "Project ID for projectId."
},
"name": {
"type": "string",
"description": "Project name."
}
},
"description": "Accessible project."
},
"description": "Accessible project choices. Select a projectId and retry."
},
"errorCode": {
"type": "string",
"description": "Failure code for recovery."
},
"retryable": {
"type": "boolean",
"description": "Whether an unchanged request can be retried."
},
"statusCode": {
"type": "number",
"description": "HTTP-style failure status."
},
"executionTime": {
"type": "string",
"description": "Elapsed time in seconds, with an s suffix."
}
},
"description": "Operation result envelope."
},
"annotations": {
"readOnlyHint": false,
"openWorldHint": true,
"idempotentHint": false,
"destructiveHint": true
}
}
The title clearly communicates the tool’s action and subject. Keep it concise.
Description68/100
Delete one grid column and its cells.
Removes the selected saved record and may remove dependent state. Inspect the exact target first; use an update tool when only its configuration should change.
Resolve contradictions between the description, input schema, and annotations.
Inputs88/100
Remove validation rules already expressed in this field’s schema; describe its meaning and usage instead.
columnId
Existing column ID from the selected sheet in get_grid/get_grid_sheet, not the display name or position.
Clear enough to supply this argument.
projectId
Atomic project ID from list_projects. Omit to use the configured project; if asked to choose, select one of the accessible returned IDs.
Clear enough to supply this argument.
context
Short purpose of this call for the activity log. Exclude personal data and private source content.
Remove validation rules already expressed in this field’s schema; describe its meaning and usage instead.
llm_model
Use the exact model ID executing this call, from runtime/system context, for usage attribution. Supply it on every Atomic MCP tool call, including discovery and feedback, and update it if the model changes. Use the model ID rather than the client app name. If unavailable, omit it; never guess or ask the user.
Remove validation rules already expressed in this field’s schema; describe its meaning and usage instead.
{
"type": "object",
"required": [
"success"
],
"properties": {
"url": {
"type": "string",
"description": "Link for resolving the failure or completing the operation."
},
"data": {
"type": "null",
"description": "Operation data; optional fields may be absent."
},
"error": {
"type": "string",
"description": "Why the operation failed."
},
"details": {
"type": "object",
"description": "Diagnostics keyed by errorCode."
},
"message": {
"type": "string",
"description": "Outcome or recovery instructions. Project selection means no action ran."
},
"success": {
"type": "boolean",
"description": "Operation success; on false inspect error/errorCode."
},
"upgrade": {
"type": "object",
"description": "Plan-upgrade guidance for an unavailable capability."
},
"category": {
"type": "string",
"description": "Failure category, such as invalid_input or plan_required."
},
"expected": {
"type": "boolean",
"description": "Whether this is an anticipated access, input, plan or state failure."
},
"projects": {
"type": "array",
"items": {
"type": "object",
"properties": {
"id": {
"type": "number",
"description": "Project ID for projectId."
},
"name": {
"type": "string",
"description": "Project name."
}
},
"description": "Accessible project."
},
"description": "Accessible project choices. Select a projectId and retry."
},
"errorCode": {
"type": "string",
"description": "Failure code for recovery."
},
"retryable": {
"type": "boolean",
"description": "Whether an unchanged request can be retried."
},
"statusCode": {
"type": "number",
"description": "HTTP-style failure status."
},
"executionTime": {
"type": "string",
"description": "Elapsed time in seconds, with an s suffix."
}
},
"description": "Operation result envelope."
}
Original tool metadata
{
"name": "delete_grid_column",
"title": "Delete grid column",
"description": "Delete one grid column and its cells.\n\nRemoves the selected saved record and may remove dependent state. Inspect the exact target first; use an update tool when only its configuration should change.",
"inputSchema": {
"type": "object",
"required": [
"columnId"
],
"properties": {
"context": {
"type": "string",
"maxLength": 120,
"description": "Short purpose of this call for the activity log. Exclude personal data and private source content."
},
"columnId": {
"type": "number",
"description": "Existing column ID from the selected sheet in get_grid/get_grid_sheet, not the display name or position."
},
"llm_model": {
"type": "string",
"maxLength": 128,
"description": "Use the exact model ID executing this call, from runtime/system context, for usage attribution. Supply it on every Atomic MCP tool call, including discovery and feedback, and update it if the model changes. Use the model ID rather than the client app name. If unavailable, omit it; never guess or ask the user."
},
"projectId": {
"type": "number",
"description": "Atomic project ID from list_projects. Omit to use the configured project; if asked to choose, select one of the accessible returned IDs."
}
}
},
"outputSchema": {
"type": "object",
"required": [
"success"
],
"properties": {
"url": {
"type": "string",
"description": "Link for resolving the failure or completing the operation."
},
"data": {
"type": "null",
"description": "Operation data; optional fields may be absent."
},
"error": {
"type": "string",
"description": "Why the operation failed."
},
"details": {
"type": "object",
"description": "Diagnostics keyed by errorCode."
},
"message": {
"type": "string",
"description": "Outcome or recovery instructions. Project selection means no action ran."
},
"success": {
"type": "boolean",
"description": "Operation success; on false inspect error/errorCode."
},
"upgrade": {
"type": "object",
"description": "Plan-upgrade guidance for an unavailable capability."
},
"category": {
"type": "string",
"description": "Failure category, such as invalid_input or plan_required."
},
"expected": {
"type": "boolean",
"description": "Whether this is an anticipated access, input, plan or state failure."
},
"projects": {
"type": "array",
"items": {
"type": "object",
"properties": {
"id": {
"type": "number",
"description": "Project ID for projectId."
},
"name": {
"type": "string",
"description": "Project name."
}
},
"description": "Accessible project."
},
"description": "Accessible project choices. Select a projectId and retry."
},
"errorCode": {
"type": "string",
"description": "Failure code for recovery."
},
"retryable": {
"type": "boolean",
"description": "Whether an unchanged request can be retried."
},
"statusCode": {
"type": "number",
"description": "HTTP-style failure status."
},
"executionTime": {
"type": "string",
"description": "Elapsed time in seconds, with an s suffix."
}
},
"description": "Operation result envelope."
},
"annotations": {
"readOnlyHint": false,
"openWorldHint": false,
"idempotentHint": false,
"destructiveHint": true
}
}
The title clearly communicates the tool’s action and subject. Keep it concise.
Description93/100
Delete one or more rows from a grid sheet. Remaining rows are compacted to consecutive positions.
Removes the selected saved record and may remove dependent state. Inspect the exact target first; use an update tool when only its configuration should change.
The description explains the capability, when to use it, and what to expect.
Inputs89/100
Remove validation rules already expressed in this field’s schema; describe its meaning and usage instead.
sheetId
Sheet ID from get_grid or create_grid_sheet; the selected sheet must belong to the current project.
Clear enough to supply this argument.
rowIds
Row IDs to delete.
Remove validation rules already expressed in this field’s schema; describe its meaning and usage instead.
projectId
Atomic project ID from list_projects. Omit to use the configured project; if asked to choose, select one of the accessible returned IDs.
Clear enough to supply this argument.
context
Short purpose of this call for the activity log. Exclude personal data and private source content.
Remove validation rules already expressed in this field’s schema; describe its meaning and usage instead.
llm_model
Use the exact model ID executing this call, from runtime/system context, for usage attribution. Supply it on every Atomic MCP tool call, including discovery and feedback, and update it if the model changes. Use the model ID rather than the client app name. If unavailable, omit it; never guess or ask the user.
{
"type": "object",
"required": [
"success"
],
"properties": {
"url": {
"type": "string",
"description": "Link for resolving the failure or completing the operation."
},
"data": {
"type": "array",
"items": {
"type": "object",
"required": [
"sheetId",
"position",
"createdAt",
"updatedAt"
],
"properties": {
"id": {
"type": "number",
"description": "Identifier of this returned resource. Use it for subsequent reads or edits of the same resource."
},
"sheetId": {
"type": "number",
"description": "Grid sheet that owns this row, column or cell."
},
"position": {
"type": "number",
"description": "Saved ordering position or visual editor coordinates for this item."
},
"createdAt": {
"type": "string",
"format": "date-time",
"description": "Date and time this record was created, serialized as ISO 8601."
},
"updatedAt": {
"type": "string",
"format": "date-time",
"description": "Date and time this record was last updated, serialized as ISO 8601."
}
}
},
"description": "Operation data; optional fields may be absent."
},
"error": {
"type": "string",
"description": "Why the operation failed."
},
"details": {
"type": "object",
"description": "Diagnostics keyed by errorCode."
},
"message": {
"type": "string",
"description": "Outcome or recovery instructions. Project selection means no action ran."
},
"success": {
"type": "boolean",
"description": "Operation success; on false inspect error/errorCode."
},
"upgrade": {
"type": "object",
"description": "Plan-upgrade guidance for an unavailable capability."
},
"category": {
"type": "string",
"description": "Failure category, such as invalid_input or plan_required."
},
"expected": {
"type": "boolean",
"description": "Whether this is an anticipated access, input, plan or state failure."
},
"projects": {
"type": "array",
"items": {
"type": "object",
"properties": {
"id": {
"type": "number",
"description": "Project ID for projectId."
},
"name": {
"type": "string",
"description": "Project name."
}
},
"description": "Accessible project."
},
"description": "Accessible project choices. Select a projectId and retry."
},
"errorCode": {
"type": "string",
"description": "Failure code for recovery."
},
"retryable": {
"type": "boolean",
"description": "Whether an unchanged request can be retried."
},
"statusCode": {
"type": "number",
"description": "HTTP-style failure status."
},
"executionTime": {
"type": "string",
"description": "Elapsed time in seconds, with an s suffix."
}
},
"description": "Operation result envelope."
}
Original tool metadata
{
"name": "delete_grid_rows",
"title": "Delete grid rows",
"description": "Delete one or more rows from a grid sheet. Remaining rows are compacted to consecutive positions.\n\nRemoves the selected saved record and may remove dependent state. Inspect the exact target first; use an update tool when only its configuration should change.",
"inputSchema": {
"type": "object",
"required": [
"sheetId",
"rowIds"
],
"properties": {
"rowIds": {
"type": "array",
"items": {
"type": "number"
},
"description": "Row IDs to delete."
},
"context": {
"type": "string",
"maxLength": 120,
"description": "Short purpose of this call for the activity log. Exclude personal data and private source content."
},
"sheetId": {
"type": "number",
"description": "Sheet ID from get_grid or create_grid_sheet; the selected sheet must belong to the current project."
},
"llm_model": {
"type": "string",
"maxLength": 128,
"description": "Use the exact model ID executing this call, from runtime/system context, for usage attribution. Supply it on every Atomic MCP tool call, including discovery and feedback, and update it if the model changes. Use the model ID rather than the client app name. If unavailable, omit it; never guess or ask the user."
},
"projectId": {
"type": "number",
"description": "Atomic project ID from list_projects. Omit to use the configured project; if asked to choose, select one of the accessible returned IDs."
}
}
},
"outputSchema": {
"type": "object",
"required": [
"success"
],
"properties": {
"url": {
"type": "string",
"description": "Link for resolving the failure or completing the operation."
},
"data": {
"type": "array",
"items": {
"type": "object",
"required": [
"sheetId",
"position",
"createdAt",
"updatedAt"
],
"properties": {
"id": {
"type": "number",
"description": "Identifier of this returned resource. Use it for subsequent reads or edits of the same resource."
},
"sheetId": {
"type": "number",
"description": "Grid sheet that owns this row, column or cell."
},
"position": {
"type": "number",
"description": "Saved ordering position or visual editor coordinates for this item."
},
"createdAt": {
"type": "string",
"format": "date-time",
"description": "Date and time this record was created, serialized as ISO 8601."
},
"updatedAt": {
"type": "string",
"format": "date-time",
"description": "Date and time this record was last updated, serialized as ISO 8601."
}
}
},
"description": "Operation data; optional fields may be absent."
},
"error": {
"type": "string",
"description": "Why the operation failed."
},
"details": {
"type": "object",
"description": "Diagnostics keyed by errorCode."
},
"message": {
"type": "string",
"description": "Outcome or recovery instructions. Project selection means no action ran."
},
"success": {
"type": "boolean",
"description": "Operation success; on false inspect error/errorCode."
},
"upgrade": {
"type": "object",
"description": "Plan-upgrade guidance for an unavailable capability."
},
"category": {
"type": "string",
"description": "Failure category, such as invalid_input or plan_required."
},
"expected": {
"type": "boolean",
"description": "Whether this is an anticipated access, input, plan or state failure."
},
"projects": {
"type": "array",
"items": {
"type": "object",
"properties": {
"id": {
"type": "number",
"description": "Project ID for projectId."
},
"name": {
"type": "string",
"description": "Project name."
}
},
"description": "Accessible project."
},
"description": "Accessible project choices. Select a projectId and retry."
},
"errorCode": {
"type": "string",
"description": "Failure code for recovery."
},
"retryable": {
"type": "boolean",
"description": "Whether an unchanged request can be retried."
},
"statusCode": {
"type": "number",
"description": "HTTP-style failure status."
},
"executionTime": {
"type": "string",
"description": "Elapsed time in seconds, with an s suffix."
}
},
"description": "Operation result envelope."
},
"annotations": {
"readOnlyHint": false,
"openWorldHint": false,
"idempotentHint": false,
"destructiveHint": true
}
}
The title clearly communicates the tool’s action and subject. Keep it concise.
Description90/100
Delete a grid sheet. The last remaining sheet cannot be deleted.
Removes the selected saved record and may remove dependent state. Inspect the exact target first; use an update tool when only its configuration should change.
The description explains the capability, when to use it, and what to expect.
Inputs94/100
Remove validation rules already expressed in this field’s schema; describe its meaning and usage instead.
sheetId
Sheet ID from get_grid or create_grid_sheet; the selected sheet must belong to the current project.
Clear enough to supply this argument.
projectId
Atomic project ID from list_projects. Omit to use the configured project; if asked to choose, select one of the accessible returned IDs.
Clear enough to supply this argument.
context
Short purpose of this call for the activity log. Exclude personal data and private source content.
Remove validation rules already expressed in this field’s schema; describe its meaning and usage instead.
llm_model
Use the exact model ID executing this call, from runtime/system context, for usage attribution. Supply it on every Atomic MCP tool call, including discovery and feedback, and update it if the model changes. Use the model ID rather than the client app name. If unavailable, omit it; never guess or ask the user.
{
"type": "object",
"required": [
"success"
],
"properties": {
"url": {
"type": "string",
"description": "Link for resolving the failure or completing the operation."
},
"data": {
"type": "null",
"description": "Operation data; optional fields may be absent."
},
"error": {
"type": "string",
"description": "Why the operation failed."
},
"details": {
"type": "object",
"description": "Diagnostics keyed by errorCode."
},
"message": {
"type": "string",
"description": "Outcome or recovery instructions. Project selection means no action ran."
},
"success": {
"type": "boolean",
"description": "Operation success; on false inspect error/errorCode."
},
"upgrade": {
"type": "object",
"description": "Plan-upgrade guidance for an unavailable capability."
},
"category": {
"type": "string",
"description": "Failure category, such as invalid_input or plan_required."
},
"expected": {
"type": "boolean",
"description": "Whether this is an anticipated access, input, plan or state failure."
},
"projects": {
"type": "array",
"items": {
"type": "object",
"properties": {
"id": {
"type": "number",
"description": "Project ID for projectId."
},
"name": {
"type": "string",
"description": "Project name."
}
},
"description": "Accessible project."
},
"description": "Accessible project choices. Select a projectId and retry."
},
"errorCode": {
"type": "string",
"description": "Failure code for recovery."
},
"retryable": {
"type": "boolean",
"description": "Whether an unchanged request can be retried."
},
"statusCode": {
"type": "number",
"description": "HTTP-style failure status."
},
"executionTime": {
"type": "string",
"description": "Elapsed time in seconds, with an s suffix."
}
},
"description": "Operation result envelope."
}
Original tool metadata
{
"name": "delete_grid_sheet",
"title": "Delete grid sheet",
"description": "Delete a grid sheet. The last remaining sheet cannot be deleted.\n\nRemoves the selected saved record and may remove dependent state. Inspect the exact target first; use an update tool when only its configuration should change.",
"inputSchema": {
"type": "object",
"required": [
"sheetId"
],
"properties": {
"context": {
"type": "string",
"maxLength": 120,
"description": "Short purpose of this call for the activity log. Exclude personal data and private source content."
},
"sheetId": {
"type": "number",
"description": "Sheet ID from get_grid or create_grid_sheet; the selected sheet must belong to the current project."
},
"llm_model": {
"type": "string",
"maxLength": 128,
"description": "Use the exact model ID executing this call, from runtime/system context, for usage attribution. Supply it on every Atomic MCP tool call, including discovery and feedback, and update it if the model changes. Use the model ID rather than the client app name. If unavailable, omit it; never guess or ask the user."
},
"projectId": {
"type": "number",
"description": "Atomic project ID from list_projects. Omit to use the configured project; if asked to choose, select one of the accessible returned IDs."
}
}
},
"outputSchema": {
"type": "object",
"required": [
"success"
],
"properties": {
"url": {
"type": "string",
"description": "Link for resolving the failure or completing the operation."
},
"data": {
"type": "null",
"description": "Operation data; optional fields may be absent."
},
"error": {
"type": "string",
"description": "Why the operation failed."
},
"details": {
"type": "object",
"description": "Diagnostics keyed by errorCode."
},
"message": {
"type": "string",
"description": "Outcome or recovery instructions. Project selection means no action ran."
},
"success": {
"type": "boolean",
"description": "Operation success; on false inspect error/errorCode."
},
"upgrade": {
"type": "object",
"description": "Plan-upgrade guidance for an unavailable capability."
},
"category": {
"type": "string",
"description": "Failure category, such as invalid_input or plan_required."
},
"expected": {
"type": "boolean",
"description": "Whether this is an anticipated access, input, plan or state failure."
},
"projects": {
"type": "array",
"items": {
"type": "object",
"properties": {
"id": {
"type": "number",
"description": "Project ID for projectId."
},
"name": {
"type": "string",
"description": "Project name."
}
},
"description": "Accessible project."
},
"description": "Accessible project choices. Select a projectId and retry."
},
"errorCode": {
"type": "string",
"description": "Failure code for recovery."
},
"retryable": {
"type": "boolean",
"description": "Whether an unchanged request can be retried."
},
"statusCode": {
"type": "number",
"description": "HTTP-style failure status."
},
"executionTime": {
"type": "string",
"description": "Elapsed time in seconds, with an s suffix."
}
},
"description": "Operation result envelope."
},
"annotations": {
"readOnlyHint": false,
"openWorldHint": false,
"idempotentHint": false,
"destructiveHint": true
}
}
The title clearly communicates the tool’s action and subject. Keep it concise.
Description95/100
Permanently delete one knowledge base and all nested folders, files, processing history, and derived indexes. This is a cascading destructive action; confirm the exact ID with the user before calling.
Removes the selected saved record and may remove dependent state. Inspect the exact target first; use an update tool when only its configuration should change.
The description explains the capability, when to use it, and what to expect.
Inputs85/100
Remove validation rules already expressed in this field’s schema; describe its meaning and usage instead.
knowledgeBaseId
Destination or search-scope knowledge-base ID from list_knowledge_bases; the base must be accessible in this project.
Remove validation rules already expressed in this field’s schema; describe its meaning and usage instead.
confirmation
Required destructive-action confirmation. Must be exactly DELETE.
Remove validation rules already expressed in this field’s schema; describe its meaning and usage instead.
projectId
Atomic project ID from list_projects. Omit to use the configured project; if asked to choose, select one of the accessible returned IDs.
Clear enough to supply this argument.
context
Short purpose of this call for the activity log. Exclude personal data and private source content.
Remove validation rules already expressed in this field’s schema; describe its meaning and usage instead.
llm_model
Use the exact model ID executing this call, from runtime/system context, for usage attribution. Supply it on every Atomic MCP tool call, including discovery and feedback, and update it if the model changes. Use the model ID rather than the client app name. If unavailable, omit it; never guess or ask the user.
{
"type": "object",
"required": [
"success"
],
"properties": {
"url": {
"type": "string",
"description": "Link for resolving the failure or completing the operation."
},
"data": {
"type": "object",
"required": [
"deleted",
"knowledgeBaseId",
"cascade"
],
"properties": {
"cascade": {
"type": "string"
},
"deleted": {
"type": "boolean"
},
"knowledgeBaseId": {
"type": "number"
}
},
"description": "Operation data; optional fields may be absent."
},
"error": {
"type": "string",
"description": "Why the operation failed."
},
"details": {
"type": "object",
"description": "Diagnostics keyed by errorCode."
},
"message": {
"type": "string",
"description": "Outcome or recovery instructions. Project selection means no action ran."
},
"success": {
"type": "boolean",
"description": "Operation success; on false inspect error/errorCode."
},
"upgrade": {
"type": "object",
"description": "Plan-upgrade guidance for an unavailable capability."
},
"category": {
"type": "string",
"description": "Failure category, such as invalid_input or plan_required."
},
"expected": {
"type": "boolean",
"description": "Whether this is an anticipated access, input, plan or state failure."
},
"projects": {
"type": "array",
"items": {
"type": "object",
"properties": {
"id": {
"type": "number",
"description": "Project ID for projectId."
},
"name": {
"type": "string",
"description": "Project name."
}
},
"description": "Accessible project."
},
"description": "Accessible project choices. Select a projectId and retry."
},
"errorCode": {
"type": "string",
"description": "Failure code for recovery."
},
"retryable": {
"type": "boolean",
"description": "Whether an unchanged request can be retried."
},
"statusCode": {
"type": "number",
"description": "HTTP-style failure status."
},
"executionTime": {
"type": "string",
"description": "Elapsed time in seconds, with an s suffix."
}
},
"description": "Operation result envelope."
}
Original tool metadata
{
"name": "delete_knowledge_base",
"title": "Delete knowledge base",
"description": "Permanently delete one knowledge base and all nested folders, files, processing history, and derived indexes. This is a cascading destructive action; confirm the exact ID with the user before calling.\n\nRemoves the selected saved record and may remove dependent state. Inspect the exact target first; use an update tool when only its configuration should change.",
"inputSchema": {
"type": "object",
"required": [
"knowledgeBaseId",
"confirmation"
],
"properties": {
"context": {
"type": "string",
"maxLength": 120,
"description": "Short purpose of this call for the activity log. Exclude personal data and private source content."
},
"llm_model": {
"type": "string",
"maxLength": 128,
"description": "Use the exact model ID executing this call, from runtime/system context, for usage attribution. Supply it on every Atomic MCP tool call, including discovery and feedback, and update it if the model changes. Use the model ID rather than the client app name. If unavailable, omit it; never guess or ask the user."
},
"projectId": {
"type": "number",
"description": "Atomic project ID from list_projects. Omit to use the configured project; if asked to choose, select one of the accessible returned IDs."
},
"confirmation": {
"enum": [
"DELETE"
],
"type": "string",
"description": "Required destructive-action confirmation. Must be exactly DELETE."
},
"knowledgeBaseId": {
"type": "number",
"minimum": 1,
"multipleOf": 1,
"description": "Destination or search-scope knowledge-base ID from list_knowledge_bases; the base must be accessible in this project."
}
},
"additionalProperties": false
},
"outputSchema": {
"type": "object",
"required": [
"success"
],
"properties": {
"url": {
"type": "string",
"description": "Link for resolving the failure or completing the operation."
},
"data": {
"type": "object",
"required": [
"deleted",
"knowledgeBaseId",
"cascade"
],
"properties": {
"cascade": {
"type": "string"
},
"deleted": {
"type": "boolean"
},
"knowledgeBaseId": {
"type": "number"
}
},
"description": "Operation data; optional fields may be absent."
},
"error": {
"type": "string",
"description": "Why the operation failed."
},
"details": {
"type": "object",
"description": "Diagnostics keyed by errorCode."
},
"message": {
"type": "string",
"description": "Outcome or recovery instructions. Project selection means no action ran."
},
"success": {
"type": "boolean",
"description": "Operation success; on false inspect error/errorCode."
},
"upgrade": {
"type": "object",
"description": "Plan-upgrade guidance for an unavailable capability."
},
"category": {
"type": "string",
"description": "Failure category, such as invalid_input or plan_required."
},
"expected": {
"type": "boolean",
"description": "Whether this is an anticipated access, input, plan or state failure."
},
"projects": {
"type": "array",
"items": {
"type": "object",
"properties": {
"id": {
"type": "number",
"description": "Project ID for projectId."
},
"name": {
"type": "string",
"description": "Project name."
}
},
"description": "Accessible project."
},
"description": "Accessible project choices. Select a projectId and retry."
},
"errorCode": {
"type": "string",
"description": "Failure code for recovery."
},
"retryable": {
"type": "boolean",
"description": "Whether an unchanged request can be retried."
},
"statusCode": {
"type": "number",
"description": "HTTP-style failure status."
},
"executionTime": {
"type": "string",
"description": "Elapsed time in seconds, with an s suffix."
}
},
"description": "Operation result envelope."
},
"annotations": {
"readOnlyHint": false,
"openWorldHint": false,
"idempotentHint": false,
"destructiveHint": true
}
}
The title clearly communicates the tool’s action and subject. Keep it concise.
Description95/100
Permanently delete one canonical knowledge file and its processing history and derived indexes. Confirm the exact file ID with the user before calling.
Removes the selected saved record and may remove dependent state. Inspect the exact target first; use an update tool when only its configuration should change.
The description explains the capability, when to use it, and what to expect.
Inputs85/100
Remove validation rules already expressed in this field’s schema; describe its meaning and usage instead.
fileId
Explicit knowledge file ID to permanently delete.
Remove validation rules already expressed in this field’s schema; describe its meaning and usage instead.
confirmation
Required destructive-action confirmation. Must be exactly DELETE.
Remove validation rules already expressed in this field’s schema; describe its meaning and usage instead.
projectId
Atomic project ID from list_projects. Omit to use the configured project; if asked to choose, select one of the accessible returned IDs.
Clear enough to supply this argument.
context
Short purpose of this call for the activity log. Exclude personal data and private source content.
Remove validation rules already expressed in this field’s schema; describe its meaning and usage instead.
llm_model
Use the exact model ID executing this call, from runtime/system context, for usage attribution. Supply it on every Atomic MCP tool call, including discovery and feedback, and update it if the model changes. Use the model ID rather than the client app name. If unavailable, omit it; never guess or ask the user.
Align the output schema with the tool’s documented result.
View output schema
{
"type": "object",
"required": [
"success"
],
"properties": {
"url": {
"type": "string",
"description": "Link for resolving the failure or completing the operation."
},
"data": {
"type": "object",
"required": [
"deleted",
"fileId",
"cascade"
],
"properties": {
"fileId": {
"type": "number"
},
"cascade": {
"type": "string"
},
"deleted": {
"type": "boolean"
}
},
"description": "Operation data; optional fields may be absent."
},
"error": {
"type": "string",
"description": "Why the operation failed."
},
"details": {
"type": "object",
"description": "Diagnostics keyed by errorCode."
},
"message": {
"type": "string",
"description": "Outcome or recovery instructions. Project selection means no action ran."
},
"success": {
"type": "boolean",
"description": "Operation success; on false inspect error/errorCode."
},
"upgrade": {
"type": "object",
"description": "Plan-upgrade guidance for an unavailable capability."
},
"category": {
"type": "string",
"description": "Failure category, such as invalid_input or plan_required."
},
"expected": {
"type": "boolean",
"description": "Whether this is an anticipated access, input, plan or state failure."
},
"projects": {
"type": "array",
"items": {
"type": "object",
"properties": {
"id": {
"type": "number",
"description": "Project ID for projectId."
},
"name": {
"type": "string",
"description": "Project name."
}
},
"description": "Accessible project."
},
"description": "Accessible project choices. Select a projectId and retry."
},
"errorCode": {
"type": "string",
"description": "Failure code for recovery."
},
"retryable": {
"type": "boolean",
"description": "Whether an unchanged request can be retried."
},
"statusCode": {
"type": "number",
"description": "HTTP-style failure status."
},
"executionTime": {
"type": "string",
"description": "Elapsed time in seconds, with an s suffix."
}
},
"description": "Operation result envelope."
}
Original tool metadata
{
"name": "delete_knowledge_file",
"title": "Delete knowledge file",
"description": "Permanently delete one canonical knowledge file and its processing history and derived indexes. Confirm the exact file ID with the user before calling.\n\nRemoves the selected saved record and may remove dependent state. Inspect the exact target first; use an update tool when only its configuration should change.",
"inputSchema": {
"type": "object",
"required": [
"fileId",
"confirmation"
],
"properties": {
"fileId": {
"type": "number",
"minimum": 1,
"multipleOf": 1,
"description": "Explicit knowledge file ID to permanently delete."
},
"context": {
"type": "string",
"maxLength": 120,
"description": "Short purpose of this call for the activity log. Exclude personal data and private source content."
},
"llm_model": {
"type": "string",
"maxLength": 128,
"description": "Use the exact model ID executing this call, from runtime/system context, for usage attribution. Supply it on every Atomic MCP tool call, including discovery and feedback, and update it if the model changes. Use the model ID rather than the client app name. If unavailable, omit it; never guess or ask the user."
},
"projectId": {
"type": "number",
"description": "Atomic project ID from list_projects. Omit to use the configured project; if asked to choose, select one of the accessible returned IDs."
},
"confirmation": {
"enum": [
"DELETE"
],
"type": "string",
"description": "Required destructive-action confirmation. Must be exactly DELETE."
}
},
"additionalProperties": false
},
"outputSchema": {
"type": "object",
"required": [
"success"
],
"properties": {
"url": {
"type": "string",
"description": "Link for resolving the failure or completing the operation."
},
"data": {
"type": "object",
"required": [
"deleted",
"fileId",
"cascade"
],
"properties": {
"fileId": {
"type": "number"
},
"cascade": {
"type": "string"
},
"deleted": {
"type": "boolean"
}
},
"description": "Operation data; optional fields may be absent."
},
"error": {
"type": "string",
"description": "Why the operation failed."
},
"details": {
"type": "object",
"description": "Diagnostics keyed by errorCode."
},
"message": {
"type": "string",
"description": "Outcome or recovery instructions. Project selection means no action ran."
},
"success": {
"type": "boolean",
"description": "Operation success; on false inspect error/errorCode."
},
"upgrade": {
"type": "object",
"description": "Plan-upgrade guidance for an unavailable capability."
},
"category": {
"type": "string",
"description": "Failure category, such as invalid_input or plan_required."
},
"expected": {
"type": "boolean",
"description": "Whether this is an anticipated access, input, plan or state failure."
},
"projects": {
"type": "array",
"items": {
"type": "object",
"properties": {
"id": {
"type": "number",
"description": "Project ID for projectId."
},
"name": {
"type": "string",
"description": "Project name."
}
},
"description": "Accessible project."
},
"description": "Accessible project choices. Select a projectId and retry."
},
"errorCode": {
"type": "string",
"description": "Failure code for recovery."
},
"retryable": {
"type": "boolean",
"description": "Whether an unchanged request can be retried."
},
"statusCode": {
"type": "number",
"description": "HTTP-style failure status."
},
"executionTime": {
"type": "string",
"description": "Elapsed time in seconds, with an s suffix."
}
},
"description": "Operation result envelope."
},
"annotations": {
"readOnlyHint": false,
"openWorldHint": false,
"idempotentHint": false,
"destructiveHint": true
}
}
The title clearly communicates the tool’s action and subject. Keep it concise.
Description81/100
Permanently delete an empty folder. Move or delete all child folders and files first. Confirm the exact folder ID with the user before calling.
Removes the selected saved record and may remove dependent state. Inspect the exact target first; use an update tool when only its configuration should change.
The description explains the capability, when to use it, and what to expect.
Inputs85/100
Remove validation rules already expressed in this field’s schema; describe its meaning and usage instead.
folderId
Explicit empty folder ID to permanently delete.
Remove validation rules already expressed in this field’s schema; describe its meaning and usage instead.
confirmation
Required destructive-action confirmation. Must be exactly DELETE.
Remove validation rules already expressed in this field’s schema; describe its meaning and usage instead.
projectId
Atomic project ID from list_projects. Omit to use the configured project; if asked to choose, select one of the accessible returned IDs.
Clear enough to supply this argument.
context
Short purpose of this call for the activity log. Exclude personal data and private source content.
Remove validation rules already expressed in this field’s schema; describe its meaning and usage instead.
llm_model
Use the exact model ID executing this call, from runtime/system context, for usage attribution. Supply it on every Atomic MCP tool call, including discovery and feedback, and update it if the model changes. Use the model ID rather than the client app name. If unavailable, omit it; never guess or ask the user.
{
"type": "object",
"required": [
"success"
],
"properties": {
"url": {
"type": "string",
"description": "Link for resolving the failure or completing the operation."
},
"data": {
"type": "object",
"required": [
"deleted",
"folderId"
],
"properties": {
"deleted": {
"type": "boolean"
},
"folderId": {
"type": "number"
}
},
"description": "Operation data; optional fields may be absent."
},
"error": {
"type": "string",
"description": "Why the operation failed."
},
"details": {
"type": "object",
"description": "Diagnostics keyed by errorCode."
},
"message": {
"type": "string",
"description": "Outcome or recovery instructions. Project selection means no action ran."
},
"success": {
"type": "boolean",
"description": "Operation success; on false inspect error/errorCode."
},
"upgrade": {
"type": "object",
"description": "Plan-upgrade guidance for an unavailable capability."
},
"category": {
"type": "string",
"description": "Failure category, such as invalid_input or plan_required."
},
"expected": {
"type": "boolean",
"description": "Whether this is an anticipated access, input, plan or state failure."
},
"projects": {
"type": "array",
"items": {
"type": "object",
"properties": {
"id": {
"type": "number",
"description": "Project ID for projectId."
},
"name": {
"type": "string",
"description": "Project name."
}
},
"description": "Accessible project."
},
"description": "Accessible project choices. Select a projectId and retry."
},
"errorCode": {
"type": "string",
"description": "Failure code for recovery."
},
"retryable": {
"type": "boolean",
"description": "Whether an unchanged request can be retried."
},
"statusCode": {
"type": "number",
"description": "HTTP-style failure status."
},
"executionTime": {
"type": "string",
"description": "Elapsed time in seconds, with an s suffix."
}
},
"description": "Operation result envelope."
}
Original tool metadata
{
"name": "delete_knowledge_folder",
"title": "Delete knowledge folder",
"description": "Permanently delete an empty folder. Move or delete all child folders and files first. Confirm the exact folder ID with the user before calling.\n\nRemoves the selected saved record and may remove dependent state. Inspect the exact target first; use an update tool when only its configuration should change.",
"inputSchema": {
"type": "object",
"required": [
"folderId",
"confirmation"
],
"properties": {
"context": {
"type": "string",
"maxLength": 120,
"description": "Short purpose of this call for the activity log. Exclude personal data and private source content."
},
"folderId": {
"type": "number",
"minimum": 1,
"multipleOf": 1,
"description": "Explicit empty folder ID to permanently delete."
},
"llm_model": {
"type": "string",
"maxLength": 128,
"description": "Use the exact model ID executing this call, from runtime/system context, for usage attribution. Supply it on every Atomic MCP tool call, including discovery and feedback, and update it if the model changes. Use the model ID rather than the client app name. If unavailable, omit it; never guess or ask the user."
},
"projectId": {
"type": "number",
"description": "Atomic project ID from list_projects. Omit to use the configured project; if asked to choose, select one of the accessible returned IDs."
},
"confirmation": {
"enum": [
"DELETE"
],
"type": "string",
"description": "Required destructive-action confirmation. Must be exactly DELETE."
}
},
"additionalProperties": false
},
"outputSchema": {
"type": "object",
"required": [
"success"
],
"properties": {
"url": {
"type": "string",
"description": "Link for resolving the failure or completing the operation."
},
"data": {
"type": "object",
"required": [
"deleted",
"folderId"
],
"properties": {
"deleted": {
"type": "boolean"
},
"folderId": {
"type": "number"
}
},
"description": "Operation data; optional fields may be absent."
},
"error": {
"type": "string",
"description": "Why the operation failed."
},
"details": {
"type": "object",
"description": "Diagnostics keyed by errorCode."
},
"message": {
"type": "string",
"description": "Outcome or recovery instructions. Project selection means no action ran."
},
"success": {
"type": "boolean",
"description": "Operation success; on false inspect error/errorCode."
},
"upgrade": {
"type": "object",
"description": "Plan-upgrade guidance for an unavailable capability."
},
"category": {
"type": "string",
"description": "Failure category, such as invalid_input or plan_required."
},
"expected": {
"type": "boolean",
"description": "Whether this is an anticipated access, input, plan or state failure."
},
"projects": {
"type": "array",
"items": {
"type": "object",
"properties": {
"id": {
"type": "number",
"description": "Project ID for projectId."
},
"name": {
"type": "string",
"description": "Project name."
}
},
"description": "Accessible project."
},
"description": "Accessible project choices. Select a projectId and retry."
},
"errorCode": {
"type": "string",
"description": "Failure code for recovery."
},
"retryable": {
"type": "boolean",
"description": "Whether an unchanged request can be retried."
},
"statusCode": {
"type": "number",
"description": "HTTP-style failure status."
},
"executionTime": {
"type": "string",
"description": "Elapsed time in seconds, with an s suffix."
}
},
"description": "Operation result envelope."
},
"annotations": {
"readOnlyHint": false,
"openWorldHint": false,
"idempotentHint": false,
"destructiveHint": true
}
}
The title clearly communicates the tool’s action and subject. Keep it concise.
Description94/100
Remove a tracked competitor from the current project. Use get_project_competitors to obtain competitorId; pending suggestions are not tracked competitors. Requires full Competitors permission.
Removes the selected saved record and may remove dependent state. Inspect the exact target first; use an update tool when only its configuration should change.
The description explains the capability, when to use it, and what to expect.
Inputs81/100
Remove validation rules already expressed in this field’s schema; describe its meaning and usage instead.
competitorId
Tracked competitor ID from get_project_competitors; pending suggestions are not tracked competitor records.
Remove validation rules already expressed in this field’s schema; describe its meaning and usage instead.
projectId
Atomic project ID from list_projects. Omit to use the configured project; if asked to choose, select one of the accessible returned IDs.
Clear enough to supply this argument.
context
Short purpose of this call for the activity log. Exclude personal data and private source content.
Remove validation rules already expressed in this field’s schema; describe its meaning and usage instead.
llm_model
Use the exact model ID executing this call, from runtime/system context, for usage attribution. Supply it on every Atomic MCP tool call, including discovery and feedback, and update it if the model changes. Use the model ID rather than the client app name. If unavailable, omit it; never guess or ask the user.
Remove validation rules already expressed in this field’s schema; describe its meaning and usage instead.
{
"type": "object",
"required": [
"success"
],
"properties": {
"url": {
"type": "string",
"description": "Link for resolving the failure or completing the operation."
},
"data": {
"type": "object",
"required": [
"deleted"
],
"properties": {
"deleted": {
"type": "boolean"
},
"competitorId": {
"type": "number"
}
},
"description": "Operation data; optional fields may be absent."
},
"error": {
"type": "string",
"description": "Why the operation failed."
},
"details": {
"type": "object",
"description": "Diagnostics keyed by errorCode."
},
"message": {
"type": "string",
"description": "Outcome or recovery instructions. Project selection means no action ran."
},
"success": {
"type": "boolean",
"description": "Operation success; on false inspect error/errorCode."
},
"upgrade": {
"type": "object",
"description": "Plan-upgrade guidance for an unavailable capability."
},
"category": {
"type": "string",
"description": "Failure category, such as invalid_input or plan_required."
},
"expected": {
"type": "boolean",
"description": "Whether this is an anticipated access, input, plan or state failure."
},
"projects": {
"type": "array",
"items": {
"type": "object",
"properties": {
"id": {
"type": "number",
"description": "Project ID for projectId."
},
"name": {
"type": "string",
"description": "Project name."
}
},
"description": "Accessible project."
},
"description": "Accessible project choices. Select a projectId and retry."
},
"errorCode": {
"type": "string",
"description": "Failure code for recovery."
},
"retryable": {
"type": "boolean",
"description": "Whether an unchanged request can be retried."
},
"statusCode": {
"type": "number",
"description": "HTTP-style failure status."
},
"executionTime": {
"type": "string",
"description": "Elapsed time in seconds, with an s suffix."
}
},
"description": "Operation result envelope."
}
Original tool metadata
{
"name": "delete_project_competitor",
"title": "Delete project competitor",
"description": "Remove a tracked competitor from the current project. Use get_project_competitors to obtain competitorId; pending suggestions are not tracked competitors. Requires full Competitors permission.\n\nRemoves the selected saved record and may remove dependent state. Inspect the exact target first; use an update tool when only its configuration should change.",
"inputSchema": {
"type": "object",
"required": [
"competitorId"
],
"properties": {
"context": {
"type": "string",
"maxLength": 120,
"description": "Short purpose of this call for the activity log. Exclude personal data and private source content."
},
"llm_model": {
"type": "string",
"maxLength": 128,
"description": "Use the exact model ID executing this call, from runtime/system context, for usage attribution. Supply it on every Atomic MCP tool call, including discovery and feedback, and update it if the model changes. Use the model ID rather than the client app name. If unavailable, omit it; never guess or ask the user."
},
"projectId": {
"type": "number",
"description": "Atomic project ID from list_projects. Omit to use the configured project; if asked to choose, select one of the accessible returned IDs."
},
"competitorId": {
"type": "number",
"minimum": 1,
"multipleOf": 1,
"description": "Tracked competitor ID from get_project_competitors; pending suggestions are not tracked competitor records."
}
},
"additionalProperties": false
},
"outputSchema": {
"type": "object",
"required": [
"success"
],
"properties": {
"url": {
"type": "string",
"description": "Link for resolving the failure or completing the operation."
},
"data": {
"type": "object",
"required": [
"deleted"
],
"properties": {
"deleted": {
"type": "boolean"
},
"competitorId": {
"type": "number"
}
},
"description": "Operation data; optional fields may be absent."
},
"error": {
"type": "string",
"description": "Why the operation failed."
},
"details": {
"type": "object",
"description": "Diagnostics keyed by errorCode."
},
"message": {
"type": "string",
"description": "Outcome or recovery instructions. Project selection means no action ran."
},
"success": {
"type": "boolean",
"description": "Operation success; on false inspect error/errorCode."
},
"upgrade": {
"type": "object",
"description": "Plan-upgrade guidance for an unavailable capability."
},
"category": {
"type": "string",
"description": "Failure category, such as invalid_input or plan_required."
},
"expected": {
"type": "boolean",
"description": "Whether this is an anticipated access, input, plan or state failure."
},
"projects": {
"type": "array",
"items": {
"type": "object",
"properties": {
"id": {
"type": "number",
"description": "Project ID for projectId."
},
"name": {
"type": "string",
"description": "Project name."
}
},
"description": "Accessible project."
},
"description": "Accessible project choices. Select a projectId and retry."
},
"errorCode": {
"type": "string",
"description": "Failure code for recovery."
},
"retryable": {
"type": "boolean",
"description": "Whether an unchanged request can be retried."
},
"statusCode": {
"type": "number",
"description": "HTTP-style failure status."
},
"executionTime": {
"type": "string",
"description": "Elapsed time in seconds, with an s suffix."
}
},
"description": "Operation result envelope."
},
"annotations": {
"readOnlyHint": false,
"openWorldHint": false,
"idempotentHint": false,
"destructiveHint": true
}
}
The title clearly communicates the tool’s action and subject. Keep it concise.
Description96/100
Delete one tracked AI-search prompt from the current project using its promptId from get_project_prompts. Requires full AI Search permission. This permanently removes the prompt; use update_project_prompt with isActive=false to pause tracking instead.
Removes the selected saved record and may remove dependent state. Inspect the exact target first; use an update tool when only its configuration should change.
The description explains the capability, when to use it, and what to expect.
Inputs88/100
Remove validation rules already expressed in this field’s schema; describe its meaning and usage instead.
promptId
Saved tracked prompt ID from get_project_prompts, not a one-off test run ID.
Clear enough to supply this argument.
projectId
Atomic project ID from list_projects. Omit to use the configured project; if asked to choose, select one of the accessible returned IDs.
Clear enough to supply this argument.
context
Short purpose of this call for the activity log. Exclude personal data and private source content.
Remove validation rules already expressed in this field’s schema; describe its meaning and usage instead.
llm_model
Use the exact model ID executing this call, from runtime/system context, for usage attribution. Supply it on every Atomic MCP tool call, including discovery and feedback, and update it if the model changes. Use the model ID rather than the client app name. If unavailable, omit it; never guess or ask the user.
Remove validation rules already expressed in this field’s schema; describe its meaning and usage instead.
{
"type": "object",
"required": [
"success"
],
"properties": {
"url": {
"type": "string",
"description": "Link for resolving the failure or completing the operation."
},
"data": {
"type": "object",
"required": [
"success",
"message"
],
"properties": {
"message": {
"type": "string",
"description": "Outcome, explanation or recovery instructions returned by the operation."
},
"success": {
"type": "boolean",
"description": "Whether this nested operation completed successfully. Inspect the containing result for details."
}
},
"description": "Operation data; optional fields may be absent."
},
"error": {
"type": "string",
"description": "Why the operation failed."
},
"details": {
"type": "object",
"description": "Diagnostics keyed by errorCode."
},
"message": {
"type": "string",
"description": "Outcome or recovery instructions. Project selection means no action ran."
},
"success": {
"type": "boolean",
"description": "Operation success; on false inspect error/errorCode."
},
"upgrade": {
"type": "object",
"description": "Plan-upgrade guidance for an unavailable capability."
},
"category": {
"type": "string",
"description": "Failure category, such as invalid_input or plan_required."
},
"expected": {
"type": "boolean",
"description": "Whether this is an anticipated access, input, plan or state failure."
},
"projects": {
"type": "array",
"items": {
"type": "object",
"properties": {
"id": {
"type": "number",
"description": "Project ID for projectId."
},
"name": {
"type": "string",
"description": "Project name."
}
},
"description": "Accessible project."
},
"description": "Accessible project choices. Select a projectId and retry."
},
"errorCode": {
"type": "string",
"description": "Failure code for recovery."
},
"retryable": {
"type": "boolean",
"description": "Whether an unchanged request can be retried."
},
"statusCode": {
"type": "number",
"description": "HTTP-style failure status."
},
"executionTime": {
"type": "string",
"description": "Elapsed time in seconds, with an s suffix."
}
},
"description": "Operation result envelope."
}
Original tool metadata
{
"name": "delete_project_prompt",
"title": "Delete project prompt",
"description": "Delete one tracked AI-search prompt from the current project using its promptId from get_project_prompts. Requires full AI Search permission. This permanently removes the prompt; use update_project_prompt with isActive=false to pause tracking instead.\n\nRemoves the selected saved record and may remove dependent state. Inspect the exact target first; use an update tool when only its configuration should change.",
"inputSchema": {
"type": "object",
"required": [
"promptId"
],
"properties": {
"context": {
"type": "string",
"maxLength": 120,
"description": "Short purpose of this call for the activity log. Exclude personal data and private source content."
},
"promptId": {
"type": "number",
"minimum": 1,
"multipleOf": 1,
"description": "Saved tracked prompt ID from get_project_prompts, not a one-off test run ID."
},
"llm_model": {
"type": "string",
"maxLength": 128,
"description": "Use the exact model ID executing this call, from runtime/system context, for usage attribution. Supply it on every Atomic MCP tool call, including discovery and feedback, and update it if the model changes. Use the model ID rather than the client app name. If unavailable, omit it; never guess or ask the user."
},
"projectId": {
"type": "number",
"description": "Atomic project ID from list_projects. Omit to use the configured project; if asked to choose, select one of the accessible returned IDs."
}
},
"additionalProperties": false
},
"outputSchema": {
"type": "object",
"required": [
"success"
],
"properties": {
"url": {
"type": "string",
"description": "Link for resolving the failure or completing the operation."
},
"data": {
"type": "object",
"required": [
"success",
"message"
],
"properties": {
"message": {
"type": "string",
"description": "Outcome, explanation or recovery instructions returned by the operation."
},
"success": {
"type": "boolean",
"description": "Whether this nested operation completed successfully. Inspect the containing result for details."
}
},
"description": "Operation data; optional fields may be absent."
},
"error": {
"type": "string",
"description": "Why the operation failed."
},
"details": {
"type": "object",
"description": "Diagnostics keyed by errorCode."
},
"message": {
"type": "string",
"description": "Outcome or recovery instructions. Project selection means no action ran."
},
"success": {
"type": "boolean",
"description": "Operation success; on false inspect error/errorCode."
},
"upgrade": {
"type": "object",
"description": "Plan-upgrade guidance for an unavailable capability."
},
"category": {
"type": "string",
"description": "Failure category, such as invalid_input or plan_required."
},
"expected": {
"type": "boolean",
"description": "Whether this is an anticipated access, input, plan or state failure."
},
"projects": {
"type": "array",
"items": {
"type": "object",
"properties": {
"id": {
"type": "number",
"description": "Project ID for projectId."
},
"name": {
"type": "string",
"description": "Project name."
}
},
"description": "Accessible project."
},
"description": "Accessible project choices. Select a projectId and retry."
},
"errorCode": {
"type": "string",
"description": "Failure code for recovery."
},
"retryable": {
"type": "boolean",
"description": "Whether an unchanged request can be retried."
},
"statusCode": {
"type": "number",
"description": "HTTP-style failure status."
},
"executionTime": {
"type": "string",
"description": "Elapsed time in seconds, with an s suffix."
}
},
"description": "Operation result envelope."
},
"annotations": {
"readOnlyHint": false,
"openWorldHint": false,
"idempotentHint": false,
"destructiveHint": true
}
}
The title clearly communicates the tool’s action and subject. Keep it concise.
Description95/100
Delete one AI-search prompt topic in the current project. Requires full AI Search permission.
Removes the selected saved record and may remove dependent state. Inspect the exact target first; use an update tool when only its configuration should change.
The description explains the capability, when to use it, and what to expect.
Inputs88/100
Remove validation rules already expressed in this field’s schema; describe its meaning and usage instead.
topicId
Existing prompt-topic ID from get_project_prompt_topics; this groups tracked questions.
Clear enough to supply this argument.
projectId
Atomic project ID from list_projects. Omit to use the configured project; if asked to choose, select one of the accessible returned IDs.
Clear enough to supply this argument.
context
Short purpose of this call for the activity log. Exclude personal data and private source content.
Remove validation rules already expressed in this field’s schema; describe its meaning and usage instead.
llm_model
Use the exact model ID executing this call, from runtime/system context, for usage attribution. Supply it on every Atomic MCP tool call, including discovery and feedback, and update it if the model changes. Use the model ID rather than the client app name. If unavailable, omit it; never guess or ask the user.
Remove validation rules already expressed in this field’s schema; describe its meaning and usage instead.
{
"type": "object",
"required": [
"success"
],
"properties": {
"url": {
"type": "string",
"description": "Link for resolving the failure or completing the operation."
},
"data": {
"type": "object",
"required": [
"success"
],
"properties": {
"success": {
"type": "boolean",
"description": "Whether this nested operation completed successfully. Inspect the containing result for details."
}
},
"description": "Operation data; optional fields may be absent."
},
"error": {
"type": "string",
"description": "Why the operation failed."
},
"details": {
"type": "object",
"description": "Diagnostics keyed by errorCode."
},
"message": {
"type": "string",
"description": "Outcome or recovery instructions. Project selection means no action ran."
},
"success": {
"type": "boolean",
"description": "Operation success; on false inspect error/errorCode."
},
"upgrade": {
"type": "object",
"description": "Plan-upgrade guidance for an unavailable capability."
},
"category": {
"type": "string",
"description": "Failure category, such as invalid_input or plan_required."
},
"expected": {
"type": "boolean",
"description": "Whether this is an anticipated access, input, plan or state failure."
},
"projects": {
"type": "array",
"items": {
"type": "object",
"properties": {
"id": {
"type": "number",
"description": "Project ID for projectId."
},
"name": {
"type": "string",
"description": "Project name."
}
},
"description": "Accessible project."
},
"description": "Accessible project choices. Select a projectId and retry."
},
"errorCode": {
"type": "string",
"description": "Failure code for recovery."
},
"retryable": {
"type": "boolean",
"description": "Whether an unchanged request can be retried."
},
"statusCode": {
"type": "number",
"description": "HTTP-style failure status."
},
"executionTime": {
"type": "string",
"description": "Elapsed time in seconds, with an s suffix."
}
},
"description": "Operation result envelope."
}
Original tool metadata
{
"name": "delete_project_prompt_topic",
"title": "Delete project prompt topic",
"description": "Delete one AI-search prompt topic in the current project. Requires full AI Search permission.\n\nRemoves the selected saved record and may remove dependent state. Inspect the exact target first; use an update tool when only its configuration should change.",
"inputSchema": {
"type": "object",
"required": [
"topicId"
],
"properties": {
"context": {
"type": "string",
"maxLength": 120,
"description": "Short purpose of this call for the activity log. Exclude personal data and private source content."
},
"topicId": {
"type": "number",
"minimum": 1,
"multipleOf": 1,
"description": "Existing prompt-topic ID from get_project_prompt_topics; this groups tracked questions."
},
"llm_model": {
"type": "string",
"maxLength": 128,
"description": "Use the exact model ID executing this call, from runtime/system context, for usage attribution. Supply it on every Atomic MCP tool call, including discovery and feedback, and update it if the model changes. Use the model ID rather than the client app name. If unavailable, omit it; never guess or ask the user."
},
"projectId": {
"type": "number",
"description": "Atomic project ID from list_projects. Omit to use the configured project; if asked to choose, select one of the accessible returned IDs."
}
},
"additionalProperties": false
},
"outputSchema": {
"type": "object",
"required": [
"success"
],
"properties": {
"url": {
"type": "string",
"description": "Link for resolving the failure or completing the operation."
},
"data": {
"type": "object",
"required": [
"success"
],
"properties": {
"success": {
"type": "boolean",
"description": "Whether this nested operation completed successfully. Inspect the containing result for details."
}
},
"description": "Operation data; optional fields may be absent."
},
"error": {
"type": "string",
"description": "Why the operation failed."
},
"details": {
"type": "object",
"description": "Diagnostics keyed by errorCode."
},
"message": {
"type": "string",
"description": "Outcome or recovery instructions. Project selection means no action ran."
},
"success": {
"type": "boolean",
"description": "Operation success; on false inspect error/errorCode."
},
"upgrade": {
"type": "object",
"description": "Plan-upgrade guidance for an unavailable capability."
},
"category": {
"type": "string",
"description": "Failure category, such as invalid_input or plan_required."
},
"expected": {
"type": "boolean",
"description": "Whether this is an anticipated access, input, plan or state failure."
},
"projects": {
"type": "array",
"items": {
"type": "object",
"properties": {
"id": {
"type": "number",
"description": "Project ID for projectId."
},
"name": {
"type": "string",
"description": "Project name."
}
},
"description": "Accessible project."
},
"description": "Accessible project choices. Select a projectId and retry."
},
"errorCode": {
"type": "string",
"description": "Failure code for recovery."
},
"retryable": {
"type": "boolean",
"description": "Whether an unchanged request can be retried."
},
"statusCode": {
"type": "number",
"description": "HTTP-style failure status."
},
"executionTime": {
"type": "string",
"description": "Elapsed time in seconds, with an s suffix."
}
},
"description": "Operation result envelope."
},
"annotations": {
"readOnlyHint": false,
"openWorldHint": false,
"idempotentHint": false,
"destructiveHint": true
}
}
The title clearly communicates the tool’s action and subject. Keep it concise.
Description93/100
Delete a step from a workflow. Only steps that belong to workflows in the current project can be deleted. IMPORTANT: INPUT and OUTPUT steps cannot be deleted as they are required for workflow functionality. Use get_workflow_steps first to see which steps can be deleted.
Removes the selected saved record and may remove dependent state. Inspect the exact target first; use an update tool when only its configuration should change.
The description explains the capability, when to use it, and what to expect.
Inputs88/100
Remove validation rules already expressed in this field’s schema; describe its meaning and usage instead.
stepId
Database step ID from get_workflow_steps or add_workflow_step; do not supply the workflow-local stepIndex.
Clear enough to supply this argument.
projectId
Atomic project ID from list_projects. Omit to use the configured project; if asked to choose, select one of the accessible returned IDs.
Clear enough to supply this argument.
context
Short purpose of this call for the activity log. Exclude personal data and private source content.
Remove validation rules already expressed in this field’s schema; describe its meaning and usage instead.
llm_model
Use the exact model ID executing this call, from runtime/system context, for usage attribution. Supply it on every Atomic MCP tool call, including discovery and feedback, and update it if the model changes. Use the model ID rather than the client app name. If unavailable, omit it; never guess or ask the user.
Remove validation rules already expressed in this field’s schema; describe its meaning and usage instead.
{
"type": "object",
"required": [
"success"
],
"properties": {
"url": {
"type": "string",
"description": "Link for resolving the failure or completing the operation."
},
"data": {
"type": "object",
"required": [
"success",
"message"
],
"properties": {
"message": {
"type": "string",
"description": "Outcome, explanation or recovery instructions returned by the operation."
},
"success": {
"type": "boolean",
"description": "Whether this nested operation completed successfully. Inspect the containing result for details."
}
},
"description": "Operation data; optional fields may be absent."
},
"error": {
"type": "string",
"description": "Why the operation failed."
},
"details": {
"type": "object",
"description": "Diagnostics keyed by errorCode."
},
"message": {
"type": "string",
"description": "Outcome or recovery instructions. Project selection means no action ran."
},
"success": {
"type": "boolean",
"description": "Operation success; on false inspect error/errorCode."
},
"upgrade": {
"type": "object",
"description": "Plan-upgrade guidance for an unavailable capability."
},
"category": {
"type": "string",
"description": "Failure category, such as invalid_input or plan_required."
},
"expected": {
"type": "boolean",
"description": "Whether this is an anticipated access, input, plan or state failure."
},
"projects": {
"type": "array",
"items": {
"type": "object",
"properties": {
"id": {
"type": "number",
"description": "Project ID for projectId."
},
"name": {
"type": "string",
"description": "Project name."
}
},
"description": "Accessible project."
},
"description": "Accessible project choices. Select a projectId and retry."
},
"errorCode": {
"type": "string",
"description": "Failure code for recovery."
},
"retryable": {
"type": "boolean",
"description": "Whether an unchanged request can be retried."
},
"statusCode": {
"type": "number",
"description": "HTTP-style failure status."
},
"executionTime": {
"type": "string",
"description": "Elapsed time in seconds, with an s suffix."
}
},
"description": "Operation result envelope."
}
Original tool metadata
{
"name": "delete_workflow_step",
"title": "Delete workflow step",
"description": "Delete a step from a workflow. Only steps that belong to workflows in the current project can be deleted. IMPORTANT: INPUT and OUTPUT steps cannot be deleted as they are required for workflow functionality. Use get_workflow_steps first to see which steps can be deleted.\n\nRemoves the selected saved record and may remove dependent state. Inspect the exact target first; use an update tool when only its configuration should change.",
"inputSchema": {
"type": "object",
"required": [
"stepId"
],
"properties": {
"stepId": {
"type": "number",
"description": "Database step ID from get_workflow_steps or add_workflow_step; do not supply the workflow-local stepIndex."
},
"context": {
"type": "string",
"maxLength": 120,
"description": "Short purpose of this call for the activity log. Exclude personal data and private source content."
},
"llm_model": {
"type": "string",
"maxLength": 128,
"description": "Use the exact model ID executing this call, from runtime/system context, for usage attribution. Supply it on every Atomic MCP tool call, including discovery and feedback, and update it if the model changes. Use the model ID rather than the client app name. If unavailable, omit it; never guess or ask the user."
},
"projectId": {
"type": "number",
"description": "Atomic project ID from list_projects. Omit to use the configured project; if asked to choose, select one of the accessible returned IDs."
}
}
},
"outputSchema": {
"type": "object",
"required": [
"success"
],
"properties": {
"url": {
"type": "string",
"description": "Link for resolving the failure or completing the operation."
},
"data": {
"type": "object",
"required": [
"success",
"message"
],
"properties": {
"message": {
"type": "string",
"description": "Outcome, explanation or recovery instructions returned by the operation."
},
"success": {
"type": "boolean",
"description": "Whether this nested operation completed successfully. Inspect the containing result for details."
}
},
"description": "Operation data; optional fields may be absent."
},
"error": {
"type": "string",
"description": "Why the operation failed."
},
"details": {
"type": "object",
"description": "Diagnostics keyed by errorCode."
},
"message": {
"type": "string",
"description": "Outcome or recovery instructions. Project selection means no action ran."
},
"success": {
"type": "boolean",
"description": "Operation success; on false inspect error/errorCode."
},
"upgrade": {
"type": "object",
"description": "Plan-upgrade guidance for an unavailable capability."
},
"category": {
"type": "string",
"description": "Failure category, such as invalid_input or plan_required."
},
"expected": {
"type": "boolean",
"description": "Whether this is an anticipated access, input, plan or state failure."
},
"projects": {
"type": "array",
"items": {
"type": "object",
"properties": {
"id": {
"type": "number",
"description": "Project ID for projectId."
},
"name": {
"type": "string",
"description": "Project name."
}
},
"description": "Accessible project."
},
"description": "Accessible project choices. Select a projectId and retry."
},
"errorCode": {
"type": "string",
"description": "Failure code for recovery."
},
"retryable": {
"type": "boolean",
"description": "Whether an unchanged request can be retried."
},
"statusCode": {
"type": "number",
"description": "HTTP-style failure status."
},
"executionTime": {
"type": "string",
"description": "Elapsed time in seconds, with an s suffix."
}
},
"description": "Operation result envelope."
},
"annotations": {
"readOnlyHint": false,
"openWorldHint": false,
"idempotentHint": false,
"destructiveHint": true
}
}
The title clearly communicates the tool’s action and subject. Keep it concise.
Description98/100
Create one new active content version by copying an existing content version exactly. Pass only the source versionId; the content body and metadata are copied server-side. Returns the new versionId, contentId, and editorUrl.
Creates a new version from an existing version ID. Use create_content_version for different markdown or update_content_version to edit in place; this does not publish to a CMS.
The description explains the capability, when to use it, and what to expect.
Inputs88/100
Remove validation rules already expressed in this field’s schema; describe its meaning and usage instead.
versionId
Required source content version ID to duplicate.
Clear enough to supply this argument.
projectId
Atomic project ID from list_projects. Omit to use the configured project; if asked to choose, select one of the accessible returned IDs.
Clear enough to supply this argument.
context
Short purpose of this call for the activity log. Exclude personal data and private source content.
Remove validation rules already expressed in this field’s schema; describe its meaning and usage instead.
llm_model
Use the exact model ID executing this call, from runtime/system context, for usage attribution. Supply it on every Atomic MCP tool call, including discovery and feedback, and update it if the model changes. Use the model ID rather than the client app name. If unavailable, omit it; never guess or ask the user.
Remove validation rules already expressed in this field’s schema; describe its meaning and usage instead.
Align the output schema with the tool’s documented result.
View output schema
{
"type": "object",
"required": [
"success"
],
"properties": {
"url": {
"type": "string",
"description": "Link for resolving the failure or completing the operation."
},
"data": {
"type": "object",
"required": [
"id",
"contentId",
"versionId",
"versionNumber",
"editorUrl"
],
"properties": {
"id": {
"type": "string",
"description": "Identifier of this returned resource. Use it for subsequent reads or edits of the same resource."
},
"contentId": {
"type": "string"
},
"editorUrl": {
"type": "string",
"description": "Atomic editor URL for inspecting or editing this content item."
},
"versionId": {
"type": "number"
},
"versionNumber": {
"type": "number"
}
},
"description": "Operation data; optional fields may be absent."
},
"error": {
"type": "string",
"description": "Why the operation failed."
},
"details": {
"type": "object",
"description": "Diagnostics keyed by errorCode."
},
"message": {
"type": "string",
"description": "Outcome or recovery instructions. Project selection means no action ran."
},
"success": {
"type": "boolean",
"description": "Operation success; on false inspect error/errorCode."
},
"upgrade": {
"type": "object",
"description": "Plan-upgrade guidance for an unavailable capability."
},
"category": {
"type": "string",
"description": "Failure category, such as invalid_input or plan_required."
},
"expected": {
"type": "boolean",
"description": "Whether this is an anticipated access, input, plan or state failure."
},
"projects": {
"type": "array",
"items": {
"type": "object",
"properties": {
"id": {
"type": "number",
"description": "Project ID for projectId."
},
"name": {
"type": "string",
"description": "Project name."
}
},
"description": "Accessible project."
},
"description": "Accessible project choices. Select a projectId and retry."
},
"errorCode": {
"type": "string",
"description": "Failure code for recovery."
},
"retryable": {
"type": "boolean",
"description": "Whether an unchanged request can be retried."
},
"statusCode": {
"type": "number",
"description": "HTTP-style failure status."
},
"executionTime": {
"type": "string",
"description": "Elapsed time in seconds, with an s suffix."
}
},
"description": "Operation result envelope."
}
Original tool metadata
{
"name": "duplicate_content_version",
"title": "Duplicate content version",
"description": "Create one new active content version by copying an existing content version exactly. Pass only the source versionId; the content body and metadata are copied server-side. Returns the new versionId, contentId, and editorUrl.\n\nCreates a new version from an existing version ID. Use create_content_version for different markdown or update_content_version to edit in place; this does not publish to a CMS.",
"inputSchema": {
"type": "object",
"required": [
"versionId"
],
"properties": {
"context": {
"type": "string",
"maxLength": 120,
"description": "Short purpose of this call for the activity log. Exclude personal data and private source content."
},
"llm_model": {
"type": "string",
"maxLength": 128,
"description": "Use the exact model ID executing this call, from runtime/system context, for usage attribution. Supply it on every Atomic MCP tool call, including discovery and feedback, and update it if the model changes. Use the model ID rather than the client app name. If unavailable, omit it; never guess or ask the user."
},
"projectId": {
"type": "number",
"description": "Atomic project ID from list_projects. Omit to use the configured project; if asked to choose, select one of the accessible returned IDs."
},
"versionId": {
"type": "number",
"description": "Required source content version ID to duplicate."
}
}
},
"outputSchema": {
"type": "object",
"required": [
"success"
],
"properties": {
"url": {
"type": "string",
"description": "Link for resolving the failure or completing the operation."
},
"data": {
"type": "object",
"required": [
"id",
"contentId",
"versionId",
"versionNumber",
"editorUrl"
],
"properties": {
"id": {
"type": "string",
"description": "Identifier of this returned resource. Use it for subsequent reads or edits of the same resource."
},
"contentId": {
"type": "string"
},
"editorUrl": {
"type": "string",
"description": "Atomic editor URL for inspecting or editing this content item."
},
"versionId": {
"type": "number"
},
"versionNumber": {
"type": "number"
}
},
"description": "Operation data; optional fields may be absent."
},
"error": {
"type": "string",
"description": "Why the operation failed."
},
"details": {
"type": "object",
"description": "Diagnostics keyed by errorCode."
},
"message": {
"type": "string",
"description": "Outcome or recovery instructions. Project selection means no action ran."
},
"success": {
"type": "boolean",
"description": "Operation success; on false inspect error/errorCode."
},
"upgrade": {
"type": "object",
"description": "Plan-upgrade guidance for an unavailable capability."
},
"category": {
"type": "string",
"description": "Failure category, such as invalid_input or plan_required."
},
"expected": {
"type": "boolean",
"description": "Whether this is an anticipated access, input, plan or state failure."
},
"projects": {
"type": "array",
"items": {
"type": "object",
"properties": {
"id": {
"type": "number",
"description": "Project ID for projectId."
},
"name": {
"type": "string",
"description": "Project name."
}
},
"description": "Accessible project."
},
"description": "Accessible project choices. Select a projectId and retry."
},
"errorCode": {
"type": "string",
"description": "Failure code for recovery."
},
"retryable": {
"type": "boolean",
"description": "Whether an unchanged request can be retried."
},
"statusCode": {
"type": "number",
"description": "HTTP-style failure status."
},
"executionTime": {
"type": "string",
"description": "Elapsed time in seconds, with an s suffix."
}
},
"description": "Operation result envelope."
},
"annotations": {
"readOnlyHint": false,
"openWorldHint": false,
"idempotentHint": false,
"destructiveHint": false
}
}
The title clearly communicates the tool’s action and subject. Keep it concise.
Description96/100
Enrich markdown or HTML content with factual inline image assets. Checks the project product-image library before external discovery, avoids screenshots, imports external images to Atomic storage, and returns enriched content plus inserted image metadata.
Returns enriched content and may create/import image assets; it does not itself publish a page. Use search_product_images to inspect first-party assets without enriching text.
The description explains the capability, when to use it, and what to expect.
Inputs83/100
Remove validation rules already expressed in this field’s schema; describe its meaning and usage instead.
content
Required markdown content to enrich.
Remove validation rules already expressed in this field’s schema; describe its meaning and usage instead.
title
Optional article title used for visual context.
Clear enough to supply this argument.
keyword
Optional primary keyword used for visual context.
Explain the meaning of this value, not just its name.
targetImageCount
Optional target number of inserted images. Defaults to a balanced density based on article length.
Remove validation rules already expressed in this field’s schema; describe its meaning and usage instead.
includeCharts
Whether to generate chart images for numeric comparisons and trends. Defaults to true.
Clear enough to supply this argument.
includeDirectImages
Whether to use stock images or existing images from relevant websites when a final embeddable image URL is available. Defaults to true.
Clear enough to supply this argument.
projectId
Atomic project ID from list_projects. Omit to use the configured project; if asked to choose, select one of the accessible returned IDs.
Clear enough to supply this argument.
context
Short purpose of this call for the activity log. Exclude personal data and private source content.
Remove validation rules already expressed in this field’s schema; describe its meaning and usage instead.
llm_model
Use the exact model ID executing this call, from runtime/system context, for usage attribution. Supply it on every Atomic MCP tool call, including discovery and feedback, and update it if the model changes. Use the model ID rather than the client app name. If unavailable, omit it; never guess or ask the user.
Remove validation rules already expressed in this field’s schema; describe its meaning and usage instead.
{
"type": "object",
"required": [
"success"
],
"properties": {
"url": {
"type": "string",
"description": "Link for resolving the failure or completing the operation."
},
"data": {
"type": "object",
"required": [
"content",
"images",
"skippedOpportunities",
"imageCount"
],
"properties": {
"usage": {
"type": "object",
"required": [
"inputTokens",
"outputTokens",
"executionTime",
"creditsUsed",
"model"
],
"properties": {
"model": {
"type": "string",
"description": "Model identifier used for the reported generation or AI-search run."
},
"modelUsage": {
"type": "object",
"properties": {},
"description": "Actual execution models, including verification; never inferred from a phase label.",
"additionalProperties": {
"type": "object",
"description": "Nested operation-specific fields."
}
},
"phaseUsage": {
"type": "object",
"properties": {},
"description": "Costs charged in this execution, excluding phases restored from an earlier run."
},
"creditsUsed": {
"type": "number",
"description": "Atomic credits recorded as used by this execution."
},
"inputTokens": {
"type": "number",
"description": "Input tokens reported for this model execution."
},
"toolRetries": {
"type": "object",
"required": [
"attempts",
"providerCostDollars",
"toolCostDollars"
],
"properties": {
"attempts": {
"type": "number",
"description": "Processing or execution attempts associated with this record."
},
"toolCostDollars": {
"type": "number",
"description": "Independent costs for retry tool calls only; included in the phase total."
},
"providerCostDollars": {
"type": "number",
"description": "Whole model turns containing retries; included in the phase total."
}
},
"description": "Number of tool retries recorded for the execution."
},
"outputTokens": {
"type": "number",
"description": "Output tokens reported for this model execution."
},
"executionTime": {
"type": "number",
"description": "Elapsed execution duration reported by the tool."
},
"toolCostDollars": {
"type": "number",
"description": "Tool-related cost recorded for this execution, in US dollars."
},
"providerCostDollars": {
"type": "number",
"description": "Provider cost recorded for this execution, in US dollars."
},
"cacheReadInputTokens": {
"type": "number",
"description": "Input tokens served from a model prompt cache."
},
"cacheCreationInputTokens": {
"type": "number",
"description": "Input tokens charged for creating a model prompt cache."
}
},
"description": "Provider or Atomic usage measurements for this execution."
},
"images": {
"type": "array",
"items": {
"type": "object",
"required": [
"imageUrl",
"alt",
"placementHeading",
"type"
],
"properties": {
"alt": {
"type": "string"
},
"type": {
"enum": [
"product_library_image",
"chart",
"stock_image",
"site_image",
"direct_image"
],
"type": "string",
"description": "Kind of the returned item; determines how its operation-specific fields should be interpreted."
},
"credit": {
"type": "string"
},
"imageUrl": {
"type": "string",
"description": "URL of the generated, uploaded or selected image."
},
"sourceUrl": {
"type": "string",
"description": "Original public source URL associated with this result."
},
"libraryItemId": {
"type": "number"
},
"placementHeading": {
"type": "string"
}
}
}
},
"content": {
"type": "string",
"description": "Returned content body in the format described by the containing resource."
},
"imageCount": {
"type": "number"
},
"skippedOpportunities": {
"type": "array",
"items": {
"type": "object",
"required": [
"placementHeading",
"type",
"reason"
],
"properties": {
"type": {
"enum": [
"product_library_image",
"chart",
"stock_image",
"site_image",
"direct_image"
],
"type": "string",
"description": "Kind of the returned item; determines how its operation-specific fields should be interpreted."
},
"reason": {
"type": "string",
"description": "Explanation for the reported outcome or decision."
},
"sourceUrl": {
"type": "string",
"description": "Original public source URL associated with this result."
},
"placementHeading": {
"type": "string"
}
}
}
}
},
"description": "Operation data; optional fields may be absent."
},
"error": {
"type": "string",
"description": "Why the operation failed."
},
"details": {
"type": "object",
"description": "Diagnostics keyed by errorCode."
},
"message": {
"type": "string",
"description": "Outcome or recovery instructions. Project selection means no action ran."
},
"success": {
"type": "boolean",
"description": "Operation success; on false inspect error/errorCode."
},
"upgrade": {
"type": "object",
"description": "Plan-upgrade guidance for an unavailable capability."
},
"category": {
"type": "string",
"description": "Failure category, such as invalid_input or plan_required."
},
"expected": {
"type": "boolean",
"description": "Whether this is an anticipated access, input, plan or state failure."
},
"projects": {
"type": "array",
"items": {
"type": "object",
"properties": {
"id": {
"type": "number",
"description": "Project ID for projectId."
},
"name": {
"type": "string",
"description": "Project name."
}
},
"description": "Accessible project."
},
"description": "Accessible project choices. Select a projectId and retry."
},
"errorCode": {
"type": "string",
"description": "Failure code for recovery."
},
"retryable": {
"type": "boolean",
"description": "Whether an unchanged request can be retried."
},
"statusCode": {
"type": "number",
"description": "HTTP-style failure status."
},
"executionTime": {
"type": "string",
"description": "Elapsed time in seconds, with an s suffix."
}
},
"description": "Operation result envelope."
}
Original tool metadata
{
"name": "enrich_content_images",
"title": "Enrich content images",
"description": "Enrich markdown or HTML content with factual inline image assets. Checks the project product-image library before external discovery, avoids screenshots, imports external images to Atomic storage, and returns enriched content plus inserted image metadata.\n\nReturns enriched content and may create/import image assets; it does not itself publish a page. Use search_product_images to inspect first-party assets without enriching text.",
"inputSchema": {
"type": "object",
"required": [
"content"
],
"properties": {
"title": {
"type": "string",
"description": "Optional article title used for visual context."
},
"content": {
"type": "string",
"description": "Required markdown content to enrich."
},
"context": {
"type": "string",
"maxLength": 120,
"description": "Short purpose of this call for the activity log. Exclude personal data and private source content."
},
"keyword": {
"type": "string",
"description": "Optional primary keyword used for visual context."
},
"llm_model": {
"type": "string",
"maxLength": 128,
"description": "Use the exact model ID executing this call, from runtime/system context, for usage attribution. Supply it on every Atomic MCP tool call, including discovery and feedback, and update it if the model changes. Use the model ID rather than the client app name. If unavailable, omit it; never guess or ask the user."
},
"projectId": {
"type": "number",
"description": "Atomic project ID from list_projects. Omit to use the configured project; if asked to choose, select one of the accessible returned IDs."
},
"includeCharts": {
"type": "boolean",
"default": true,
"description": "Whether to generate chart images for numeric comparisons and trends. Defaults to true."
},
"targetImageCount": {
"type": "number",
"maximum": 24,
"minimum": 1,
"description": "Optional target number of inserted images. Defaults to a balanced density based on article length."
},
"includeDirectImages": {
"type": "boolean",
"default": true,
"description": "Whether to use stock images or existing images from relevant websites when a final embeddable image URL is available. Defaults to true."
}
}
},
"outputSchema": {
"type": "object",
"required": [
"success"
],
"properties": {
"url": {
"type": "string",
"description": "Link for resolving the failure or completing the operation."
},
"data": {
"type": "object",
"required": [
"content",
"images",
"skippedOpportunities",
"imageCount"
],
"properties": {
"usage": {
"type": "object",
"required": [
"inputTokens",
"outputTokens",
"executionTime",
"creditsUsed",
"model"
],
"properties": {
"model": {
"type": "string",
"description": "Model identifier used for the reported generation or AI-search run."
},
"modelUsage": {
"type": "object",
"properties": {},
"description": "Actual execution models, including verification; never inferred from a phase label.",
"additionalProperties": {
"type": "object",
"description": "Nested operation-specific fields."
}
},
"phaseUsage": {
"type": "object",
"properties": {},
"description": "Costs charged in this execution, excluding phases restored from an earlier run."
},
"creditsUsed": {
"type": "number",
"description": "Atomic credits recorded as used by this execution."
},
"inputTokens": {
"type": "number",
"description": "Input tokens reported for this model execution."
},
"toolRetries": {
"type": "object",
"required": [
"attempts",
"providerCostDollars",
"toolCostDollars"
],
"properties": {
"attempts": {
"type": "number",
"description": "Processing or execution attempts associated with this record."
},
"toolCostDollars": {
"type": "number",
"description": "Independent costs for retry tool calls only; included in the phase total."
},
"providerCostDollars": {
"type": "number",
"description": "Whole model turns containing retries; included in the phase total."
}
},
"description": "Number of tool retries recorded for the execution."
},
"outputTokens": {
"type": "number",
"description": "Output tokens reported for this model execution."
},
"executionTime": {
"type": "number",
"description": "Elapsed execution duration reported by the tool."
},
"toolCostDollars": {
"type": "number",
"description": "Tool-related cost recorded for this execution, in US dollars."
},
"providerCostDollars": {
"type": "number",
"description": "Provider cost recorded for this execution, in US dollars."
},
"cacheReadInputTokens": {
"type": "number",
"description": "Input tokens served from a model prompt cache."
},
"cacheCreationInputTokens": {
"type": "number",
"description": "Input tokens charged for creating a model prompt cache."
}
},
"description": "Provider or Atomic usage measurements for this execution."
},
"images": {
"type": "array",
"items": {
"type": "object",
"required": [
"imageUrl",
"alt",
"placementHeading",
"type"
],
"properties": {
"alt": {
"type": "string"
},
"type": {
"enum": [
"product_library_image",
"chart",
"stock_image",
"site_image",
"direct_image"
],
"type": "string",
"description": "Kind of the returned item; determines how its operation-specific fields should be interpreted."
},
"credit": {
"type": "string"
},
"imageUrl": {
"type": "string",
"description": "URL of the generated, uploaded or selected image."
},
"sourceUrl": {
"type": "string",
"description": "Original public source URL associated with this result."
},
"libraryItemId": {
"type": "number"
},
"placementHeading": {
"type": "string"
}
}
}
},
"content": {
"type": "string",
"description": "Returned content body in the format described by the containing resource."
},
"imageCount": {
"type": "number"
},
"skippedOpportunities": {
"type": "array",
"items": {
"type": "object",
"required": [
"placementHeading",
"type",
"reason"
],
"properties": {
"type": {
"enum": [
"product_library_image",
"chart",
"stock_image",
"site_image",
"direct_image"
],
"type": "string",
"description": "Kind of the returned item; determines how its operation-specific fields should be interpreted."
},
"reason": {
"type": "string",
"description": "Explanation for the reported outcome or decision."
},
"sourceUrl": {
"type": "string",
"description": "Original public source URL associated with this result."
},
"placementHeading": {
"type": "string"
}
}
}
}
},
"description": "Operation data; optional fields may be absent."
},
"error": {
"type": "string",
"description": "Why the operation failed."
},
"details": {
"type": "object",
"description": "Diagnostics keyed by errorCode."
},
"message": {
"type": "string",
"description": "Outcome or recovery instructions. Project selection means no action ran."
},
"success": {
"type": "boolean",
"description": "Operation success; on false inspect error/errorCode."
},
"upgrade": {
"type": "object",
"description": "Plan-upgrade guidance for an unavailable capability."
},
"category": {
"type": "string",
"description": "Failure category, such as invalid_input or plan_required."
},
"expected": {
"type": "boolean",
"description": "Whether this is an anticipated access, input, plan or state failure."
},
"projects": {
"type": "array",
"items": {
"type": "object",
"properties": {
"id": {
"type": "number",
"description": "Project ID for projectId."
},
"name": {
"type": "string",
"description": "Project name."
}
},
"description": "Accessible project."
},
"description": "Accessible project choices. Select a projectId and retry."
},
"errorCode": {
"type": "string",
"description": "Failure code for recovery."
},
"retryable": {
"type": "boolean",
"description": "Whether an unchanged request can be retried."
},
"statusCode": {
"type": "number",
"description": "HTTP-style failure status."
},
"executionTime": {
"type": "string",
"description": "Elapsed time in seconds, with an s suffix."
}
},
"description": "Operation result envelope."
},
"annotations": {
"readOnlyHint": false,
"openWorldHint": true,
"idempotentHint": false,
"destructiveHint": false
}
}
The title clearly communicates the tool’s action and subject. Keep it concise.
Description94/100
Execute an AGENT task with its current assignee. Use this after assigning or reassigning a task when the assignee should start immediately. The tool reuses or creates the correct assignee conversation, updates the task conversation link if needed, and sends the execution prompt.
Starts the assigned agent's work, which can consume credits and invoke its configured tools. Use get_task/get_tasks to inspect or update_task to assign first; repeated execution can start additional work.
The description explains the capability, when to use it, and what to expect.
Inputs95/100
Remove validation rules already expressed in this field’s schema; describe its meaning and usage instead.
taskIdentifier
Project-scoped public task identifier such as OMN-15, or a numeric internal task ID
Clear enough to supply this argument.
message
Optional additional handoff instructions appended to the default execution prompt
Clear enough to supply this argument.
projectId
Atomic project ID from list_projects. Omit to use the configured project; if asked to choose, select one of the accessible returned IDs.
Clear enough to supply this argument.
context
Short purpose of this call for the activity log. Exclude personal data and private source content.
Remove validation rules already expressed in this field’s schema; describe its meaning and usage instead.
llm_model
Use the exact model ID executing this call, from runtime/system context, for usage attribution. Supply it on every Atomic MCP tool call, including discovery and feedback, and update it if the model changes. Use the model ID rather than the client app name. If unavailable, omit it; never guess or ask the user.
{
"type": "object",
"required": [
"success"
],
"properties": {
"url": {
"type": "string",
"description": "Link for resolving the failure or completing the operation."
},
"data": {
"anyOf": [
{
"type": "object",
"required": [
"taskIdentifier",
"conversationId",
"assignedAgentId",
"delegated",
"sourceConversationIdUpdated",
"message"
],
"properties": {
"message": {
"type": "string",
"description": "Outcome, explanation or recovery instructions returned by the operation."
},
"delegated": {
"type": "boolean"
},
"conversationId": {
"type": "string",
"description": "Conversation associated with this task or execution."
},
"taskIdentifier": {
"anyOf": [
{
"type": "string"
},
{
"type": "number"
}
]
},
"assignedAgentId": {
"anyOf": [
{
"type": "null"
},
{
"type": "number"
}
]
},
"sourceConversationIdUpdated": {
"type": "boolean"
}
}
},
{
"type": "object",
"required": [
"taskIdentifier",
"conversationId",
"assignedAgentId",
"delegated",
"sourceConversationIdUpdated",
"message",
"assigneeResponse"
],
"properties": {
"message": {
"type": "string",
"description": "Outcome, explanation or recovery instructions returned by the operation."
},
"delegated": {
"type": "boolean"
},
"conversationId": {
"type": "string",
"description": "Conversation associated with this task or execution."
},
"taskIdentifier": {
"anyOf": [
{
"type": "string"
},
{
"type": "number"
}
]
},
"assignedAgentId": {
"anyOf": [
{
"type": "null"
},
{
"type": "number"
}
]
},
"assigneeResponse": {
"type": "object",
"properties": {
"messageId": {
"description": "JSON returned by the connected provider or selected operation; its fields depend on that operation."
},
"sessionId": {
"description": "Provider checkout session identifier; use the returned checkout URL to complete payment."
},
"fullContent": {
"description": "JSON returned by the connected provider or selected operation; its fields depend on that operation."
}
}
},
"sourceConversationIdUpdated": {
"type": "boolean"
}
}
}
],
"description": "Operation data; optional fields may be absent."
},
"error": {
"type": "string",
"description": "Why the operation failed."
},
"details": {
"type": "object",
"description": "Diagnostics keyed by errorCode."
},
"message": {
"type": "string",
"description": "Outcome or recovery instructions. Project selection means no action ran."
},
"success": {
"type": "boolean",
"description": "Operation success; on false inspect error/errorCode."
},
"upgrade": {
"type": "object",
"description": "Plan-upgrade guidance for an unavailable capability."
},
"category": {
"type": "string",
"description": "Failure category, such as invalid_input or plan_required."
},
"expected": {
"type": "boolean",
"description": "Whether this is an anticipated access, input, plan or state failure."
},
"projects": {
"type": "array",
"items": {
"type": "object",
"properties": {
"id": {
"type": "number",
"description": "Project ID for projectId."
},
"name": {
"type": "string",
"description": "Project name."
}
},
"description": "Accessible project."
},
"description": "Accessible project choices. Select a projectId and retry."
},
"errorCode": {
"type": "string",
"description": "Failure code for recovery."
},
"retryable": {
"type": "boolean",
"description": "Whether an unchanged request can be retried."
},
"statusCode": {
"type": "number",
"description": "HTTP-style failure status."
},
"executionTime": {
"type": "string",
"description": "Elapsed time in seconds, with an s suffix."
}
},
"description": "Operation result envelope."
}
Original tool metadata
{
"name": "execute_task_with_agent",
"title": "Execute task with agent",
"description": "Execute an AGENT task with its current assignee. Use this after assigning or reassigning a task when the assignee should start immediately. The tool reuses or creates the correct assignee conversation, updates the task conversation link if needed, and sends the execution prompt.\n\nStarts the assigned agent's work, which can consume credits and invoke its configured tools. Use get_task/get_tasks to inspect or update_task to assign first; repeated execution can start additional work.",
"inputSchema": {
"type": "object",
"required": [
"taskIdentifier"
],
"properties": {
"context": {
"type": "string",
"maxLength": 120,
"description": "Short purpose of this call for the activity log. Exclude personal data and private source content."
},
"message": {
"type": "string",
"description": "Optional additional handoff instructions appended to the default execution prompt"
},
"llm_model": {
"type": "string",
"maxLength": 128,
"description": "Use the exact model ID executing this call, from runtime/system context, for usage attribution. Supply it on every Atomic MCP tool call, including discovery and feedback, and update it if the model changes. Use the model ID rather than the client app name. If unavailable, omit it; never guess or ask the user."
},
"projectId": {
"type": "number",
"description": "Atomic project ID from list_projects. Omit to use the configured project; if asked to choose, select one of the accessible returned IDs."
},
"taskIdentifier": {
"oneOf": [
{
"type": "string"
},
{
"type": "number"
}
],
"description": "Project-scoped public task identifier such as OMN-15, or a numeric internal task ID"
}
}
},
"outputSchema": {
"type": "object",
"required": [
"success"
],
"properties": {
"url": {
"type": "string",
"description": "Link for resolving the failure or completing the operation."
},
"data": {
"anyOf": [
{
"type": "object",
"required": [
"taskIdentifier",
"conversationId",
"assignedAgentId",
"delegated",
"sourceConversationIdUpdated",
"message"
],
"properties": {
"message": {
"type": "string",
"description": "Outcome, explanation or recovery instructions returned by the operation."
},
"delegated": {
"type": "boolean"
},
"conversationId": {
"type": "string",
"description": "Conversation associated with this task or execution."
},
"taskIdentifier": {
"anyOf": [
{
"type": "string"
},
{
"type": "number"
}
]
},
"assignedAgentId": {
"anyOf": [
{
"type": "null"
},
{
"type": "number"
}
]
},
"sourceConversationIdUpdated": {
"type": "boolean"
}
}
},
{
"type": "object",
"required": [
"taskIdentifier",
"conversationId",
"assignedAgentId",
"delegated",
"sourceConversationIdUpdated",
"message",
"assigneeResponse"
],
"properties": {
"message": {
"type": "string",
"description": "Outcome, explanation or recovery instructions returned by the operation."
},
"delegated": {
"type": "boolean"
},
"conversationId": {
"type": "string",
"description": "Conversation associated with this task or execution."
},
"taskIdentifier": {
"anyOf": [
{
"type": "string"
},
{
"type": "number"
}
]
},
"assignedAgentId": {
"anyOf": [
{
"type": "null"
},
{
"type": "number"
}
]
},
"assigneeResponse": {
"type": "object",
"properties": {
"messageId": {
"description": "JSON returned by the connected provider or selected operation; its fields depend on that operation."
},
"sessionId": {
"description": "Provider checkout session identifier; use the returned checkout URL to complete payment."
},
"fullContent": {
"description": "JSON returned by the connected provider or selected operation; its fields depend on that operation."
}
}
},
"sourceConversationIdUpdated": {
"type": "boolean"
}
}
}
],
"description": "Operation data; optional fields may be absent."
},
"error": {
"type": "string",
"description": "Why the operation failed."
},
"details": {
"type": "object",
"description": "Diagnostics keyed by errorCode."
},
"message": {
"type": "string",
"description": "Outcome or recovery instructions. Project selection means no action ran."
},
"success": {
"type": "boolean",
"description": "Operation success; on false inspect error/errorCode."
},
"upgrade": {
"type": "object",
"description": "Plan-upgrade guidance for an unavailable capability."
},
"category": {
"type": "string",
"description": "Failure category, such as invalid_input or plan_required."
},
"expected": {
"type": "boolean",
"description": "Whether this is an anticipated access, input, plan or state failure."
},
"projects": {
"type": "array",
"items": {
"type": "object",
"properties": {
"id": {
"type": "number",
"description": "Project ID for projectId."
},
"name": {
"type": "string",
"description": "Project name."
}
},
"description": "Accessible project."
},
"description": "Accessible project choices. Select a projectId and retry."
},
"errorCode": {
"type": "string",
"description": "Failure code for recovery."
},
"retryable": {
"type": "boolean",
"description": "Whether an unchanged request can be retried."
},
"statusCode": {
"type": "number",
"description": "HTTP-style failure status."
},
"executionTime": {
"type": "string",
"description": "Elapsed time in seconds, with an s suffix."
}
},
"description": "Operation result envelope."
},
"annotations": {
"readOnlyHint": false,
"openWorldHint": true,
"idempotentHint": false,
"destructiveHint": true
}
}
The title clearly communicates the tool’s action and subject. Keep it concise.
Description97/100
Export an existing published report as PDF. Returns a downloadable URL, filename, content type and size. Uses the same report renderer as the app; does not publish an unpublished report.
Creates a downloadable export of a saved published report, not an independent verification of its public data. Use get_custom_report_widget_results for native widget values.
The description explains the capability, when to use it, and what to expect.
Inputs94/100
Remove validation rules already expressed in this field’s schema; describe its meaning and usage instead.
reportId
Saved custom report identifier from get_custom_reports.
Clear enough to supply this argument.
projectId
Atomic project ID from list_projects. Omit to use the configured project; if asked to choose, select one of the accessible returned IDs.
Clear enough to supply this argument.
context
Short purpose of this call for the activity log. Exclude personal data and private source content.
Remove validation rules already expressed in this field’s schema; describe its meaning and usage instead.
llm_model
Use the exact model ID executing this call, from runtime/system context, for usage attribution. Supply it on every Atomic MCP tool call, including discovery and feedback, and update it if the model changes. Use the model ID rather than the client app name. If unavailable, omit it; never guess or ask the user.
{
"type": "object",
"required": [
"success"
],
"properties": {
"url": {
"type": "string",
"description": "Link for resolving the failure or completing the operation."
},
"data": {
"type": "object",
"required": [
"url",
"filename",
"contentType",
"size"
],
"properties": {
"url": {
"type": "string",
"description": "URL returned for this resource or operation."
},
"size": {
"type": "number",
"description": "Size measurement reported by this resource; file results use bytes and visual results use their documented dimensions."
},
"filename": {
"type": "string",
"description": "Filename of the stored or uploaded asset."
},
"contentType": {
"type": "string",
"description": "Content kind returned by the operation, such as a native CMS post type or a file MIME type."
}
},
"description": "Operation data; optional fields may be absent."
},
"error": {
"type": "string",
"description": "Why the operation failed."
},
"details": {
"type": "object",
"description": "Diagnostics keyed by errorCode."
},
"message": {
"type": "string",
"description": "Outcome or recovery instructions. Project selection means no action ran."
},
"success": {
"type": "boolean",
"description": "Operation success; on false inspect error/errorCode."
},
"upgrade": {
"type": "object",
"description": "Plan-upgrade guidance for an unavailable capability."
},
"category": {
"type": "string",
"description": "Failure category, such as invalid_input or plan_required."
},
"expected": {
"type": "boolean",
"description": "Whether this is an anticipated access, input, plan or state failure."
},
"projects": {
"type": "array",
"items": {
"type": "object",
"properties": {
"id": {
"type": "number",
"description": "Project ID for projectId."
},
"name": {
"type": "string",
"description": "Project name."
}
},
"description": "Accessible project."
},
"description": "Accessible project choices. Select a projectId and retry."
},
"errorCode": {
"type": "string",
"description": "Failure code for recovery."
},
"retryable": {
"type": "boolean",
"description": "Whether an unchanged request can be retried."
},
"statusCode": {
"type": "number",
"description": "HTTP-style failure status."
},
"executionTime": {
"type": "string",
"description": "Elapsed time in seconds, with an s suffix."
}
},
"description": "Operation result envelope."
}
Original tool metadata
{
"name": "export_report_pdf",
"title": "Export report PDF",
"description": "Export an existing published report as PDF. Returns a downloadable URL, filename, content type and size. Uses the same report renderer as the app; does not publish an unpublished report.\n\nCreates a downloadable export of a saved published report, not an independent verification of its public data. Use get_custom_report_widget_results for native widget values.",
"inputSchema": {
"type": "object",
"required": [
"reportId"
],
"properties": {
"context": {
"type": "string",
"maxLength": 120,
"description": "Short purpose of this call for the activity log. Exclude personal data and private source content."
},
"reportId": {
"type": "number",
"minimum": 1,
"multipleOf": 1,
"description": "Saved custom report identifier from get_custom_reports."
},
"llm_model": {
"type": "string",
"maxLength": 128,
"description": "Use the exact model ID executing this call, from runtime/system context, for usage attribution. Supply it on every Atomic MCP tool call, including discovery and feedback, and update it if the model changes. Use the model ID rather than the client app name. If unavailable, omit it; never guess or ask the user."
},
"projectId": {
"type": "number",
"description": "Atomic project ID from list_projects. Omit to use the configured project; if asked to choose, select one of the accessible returned IDs."
}
},
"additionalProperties": false
},
"outputSchema": {
"type": "object",
"required": [
"success"
],
"properties": {
"url": {
"type": "string",
"description": "Link for resolving the failure or completing the operation."
},
"data": {
"type": "object",
"required": [
"url",
"filename",
"contentType",
"size"
],
"properties": {
"url": {
"type": "string",
"description": "URL returned for this resource or operation."
},
"size": {
"type": "number",
"description": "Size measurement reported by this resource; file results use bytes and visual results use their documented dimensions."
},
"filename": {
"type": "string",
"description": "Filename of the stored or uploaded asset."
},
"contentType": {
"type": "string",
"description": "Content kind returned by the operation, such as a native CMS post type or a file MIME type."
}
},
"description": "Operation data; optional fields may be absent."
},
"error": {
"type": "string",
"description": "Why the operation failed."
},
"details": {
"type": "object",
"description": "Diagnostics keyed by errorCode."
},
"message": {
"type": "string",
"description": "Outcome or recovery instructions. Project selection means no action ran."
},
"success": {
"type": "boolean",
"description": "Operation success; on false inspect error/errorCode."
},
"upgrade": {
"type": "object",
"description": "Plan-upgrade guidance for an unavailable capability."
},
"category": {
"type": "string",
"description": "Failure category, such as invalid_input or plan_required."
},
"expected": {
"type": "boolean",
"description": "Whether this is an anticipated access, input, plan or state failure."
},
"projects": {
"type": "array",
"items": {
"type": "object",
"properties": {
"id": {
"type": "number",
"description": "Project ID for projectId."
},
"name": {
"type": "string",
"description": "Project name."
}
},
"description": "Accessible project."
},
"description": "Accessible project choices. Select a projectId and retry."
},
"errorCode": {
"type": "string",
"description": "Failure code for recovery."
},
"retryable": {
"type": "boolean",
"description": "Whether an unchanged request can be retried."
},
"statusCode": {
"type": "number",
"description": "HTTP-style failure status."
},
"executionTime": {
"type": "string",
"description": "Elapsed time in seconds, with an s suffix."
}
},
"description": "Operation result envelope."
},
"annotations": {
"readOnlyHint": false,
"openWorldHint": true,
"idempotentHint": false,
"destructiveHint": false
}
}
The title clearly communicates the tool’s action and subject. Keep it concise.
Description96/100
Find cannibalization candidates by detecting highly similar intent/content overlap in the project knowledge base.
Use for overlapping project knowledge pages competing for the same intent, not to list every saved content item. Results are candidate pairs to assess, not permission to delete or merge pages.
The description explains the capability, when to use it, and what to expect.
Inputs79/100
Remove validation rules already expressed in this field’s schema; describe its meaning and usage instead.
limit
Maximum number of cannibalization page pairs to return (default 20)
Remove validation rules already expressed in this field’s schema; describe its meaning and usage instead.
maxPagesToAnalyze
Maximum number of indexed website pages to analyze (default 1000)
Remove validation rules already expressed in this field’s schema; describe its meaning and usage instead.
similarityThreshold
Similarity threshold between 0 and 1 used to flag candidates (default 0.6)
Remove validation rules already expressed in this field’s schema; describe its meaning and usage instead.
minOverlappingMatches
Minimum directional chunk-level matches per pair (max of A→B and B→A) (default 2)
Remove validation rules already expressed in this field’s schema; describe its meaning and usage instead.
projectId
Atomic project ID from list_projects. Omit to use the configured project; if asked to choose, select one of the accessible returned IDs.
Clear enough to supply this argument.
context
Short purpose of this call for the activity log. Exclude personal data and private source content.
Remove validation rules already expressed in this field’s schema; describe its meaning and usage instead.
llm_model
Use the exact model ID executing this call, from runtime/system context, for usage attribution. Supply it on every Atomic MCP tool call, including discovery and feedback, and update it if the model changes. Use the model ID rather than the client app name. If unavailable, omit it; never guess or ask the user.
Remove validation rules already expressed in this field’s schema; describe its meaning and usage instead.
Describe the returned fields so an agent can interpret the result.
View output schema
{
"type": "object",
"required": [
"success"
],
"properties": {
"url": {
"type": "string",
"description": "Link for resolving the failure or completing the operation."
},
"data": {
"type": "object",
"required": [
"analyzedPages",
"limit",
"similarityThreshold",
"minOverlappingMatches",
"pairs"
],
"properties": {
"limit": {
"type": "number",
"description": "Maximum number of items requested for this page."
},
"pairs": {
"type": "array",
"items": {
"type": "object",
"required": [
"pageA",
"pageB",
"similarityScore",
"overlappingMatches"
],
"properties": {
"pageA": {
"type": "object",
"description": "Nested operation-specific fields."
},
"pageB": {
"type": "object",
"description": "Nested operation-specific fields."
},
"similarityScore": {
"type": "number"
},
"overlappingMatches": {
"type": "number"
}
}
}
},
"analyzedPages": {
"type": "number"
},
"similarityThreshold": {
"type": "number"
},
"minOverlappingMatches": {
"type": "number"
}
},
"description": "Operation data; optional fields may be absent."
},
"error": {
"type": "string",
"description": "Why the operation failed."
},
"details": {
"type": "object",
"description": "Diagnostics keyed by errorCode."
},
"message": {
"type": "string",
"description": "Outcome or recovery instructions. Project selection means no action ran."
},
"success": {
"type": "boolean",
"description": "Operation success; on false inspect error/errorCode."
},
"upgrade": {
"type": "object",
"description": "Plan-upgrade guidance for an unavailable capability."
},
"category": {
"type": "string",
"description": "Failure category, such as invalid_input or plan_required."
},
"expected": {
"type": "boolean",
"description": "Whether this is an anticipated access, input, plan or state failure."
},
"projects": {
"type": "array",
"items": {
"type": "object",
"properties": {
"id": {
"type": "number",
"description": "Project ID for projectId."
},
"name": {
"type": "string",
"description": "Project name."
}
},
"description": "Accessible project."
},
"description": "Accessible project choices. Select a projectId and retry."
},
"errorCode": {
"type": "string",
"description": "Failure code for recovery."
},
"retryable": {
"type": "boolean",
"description": "Whether an unchanged request can be retried."
},
"statusCode": {
"type": "number",
"description": "HTTP-style failure status."
},
"executionTime": {
"type": "string",
"description": "Elapsed time in seconds, with an s suffix."
}
},
"description": "Operation result envelope."
}
Original tool metadata
{
"name": "find_cannibalized_pages",
"title": "Find cannibalized pages",
"description": "Find cannibalization candidates by detecting highly similar intent/content overlap in the project knowledge base.\n\nUse for overlapping project knowledge pages competing for the same intent, not to list every saved content item. Results are candidate pairs to assess, not permission to delete or merge pages.",
"inputSchema": {
"type": "object",
"properties": {
"limit": {
"type": "number",
"description": "Maximum number of cannibalization page pairs to return (default 20)"
},
"context": {
"type": "string",
"maxLength": 120,
"description": "Short purpose of this call for the activity log. Exclude personal data and private source content."
},
"llm_model": {
"type": "string",
"maxLength": 128,
"description": "Use the exact model ID executing this call, from runtime/system context, for usage attribution. Supply it on every Atomic MCP tool call, including discovery and feedback, and update it if the model changes. Use the model ID rather than the client app name. If unavailable, omit it; never guess or ask the user."
},
"projectId": {
"type": "number",
"description": "Atomic project ID from list_projects. Omit to use the configured project; if asked to choose, select one of the accessible returned IDs."
},
"maxPagesToAnalyze": {
"type": "number",
"description": "Maximum number of indexed website pages to analyze (default 1000)"
},
"similarityThreshold": {
"type": "number",
"description": "Similarity threshold between 0 and 1 used to flag candidates (default 0.6)"
},
"minOverlappingMatches": {
"type": "number",
"description": "Minimum directional chunk-level matches per pair (max of A→B and B→A) (default 2)"
}
}
},
"outputSchema": {
"type": "object",
"required": [
"success"
],
"properties": {
"url": {
"type": "string",
"description": "Link for resolving the failure or completing the operation."
},
"data": {
"type": "object",
"required": [
"analyzedPages",
"limit",
"similarityThreshold",
"minOverlappingMatches",
"pairs"
],
"properties": {
"limit": {
"type": "number",
"description": "Maximum number of items requested for this page."
},
"pairs": {
"type": "array",
"items": {
"type": "object",
"required": [
"pageA",
"pageB",
"similarityScore",
"overlappingMatches"
],
"properties": {
"pageA": {
"type": "object",
"description": "Nested operation-specific fields."
},
"pageB": {
"type": "object",
"description": "Nested operation-specific fields."
},
"similarityScore": {
"type": "number"
},
"overlappingMatches": {
"type": "number"
}
}
}
},
"analyzedPages": {
"type": "number"
},
"similarityThreshold": {
"type": "number"
},
"minOverlappingMatches": {
"type": "number"
}
},
"description": "Operation data; optional fields may be absent."
},
"error": {
"type": "string",
"description": "Why the operation failed."
},
"details": {
"type": "object",
"description": "Diagnostics keyed by errorCode."
},
"message": {
"type": "string",
"description": "Outcome or recovery instructions. Project selection means no action ran."
},
"success": {
"type": "boolean",
"description": "Operation success; on false inspect error/errorCode."
},
"upgrade": {
"type": "object",
"description": "Plan-upgrade guidance for an unavailable capability."
},
"category": {
"type": "string",
"description": "Failure category, such as invalid_input or plan_required."
},
"expected": {
"type": "boolean",
"description": "Whether this is an anticipated access, input, plan or state failure."
},
"projects": {
"type": "array",
"items": {
"type": "object",
"properties": {
"id": {
"type": "number",
"description": "Project ID for projectId."
},
"name": {
"type": "string",
"description": "Project name."
}
},
"description": "Accessible project."
},
"description": "Accessible project choices. Select a projectId and retry."
},
"errorCode": {
"type": "string",
"description": "Failure code for recovery."
},
"retryable": {
"type": "boolean",
"description": "Whether an unchanged request can be retried."
},
"statusCode": {
"type": "number",
"description": "HTTP-style failure status."
},
"executionTime": {
"type": "string",
"description": "Elapsed time in seconds, with an s suffix."
}
},
"description": "Operation result envelope."
},
"annotations": {
"readOnlyHint": true,
"openWorldHint": false,
"idempotentHint": true,
"destructiveHint": false
}
}
The title clearly communicates the tool’s action and subject. Keep it concise.
Description92/100
Find public and provider-sourced email addresses for a business domain using a backlink outreach waterfall: MoltSets first for named people, then public crawl, Icypeas, Prospeo, and Hunter. Emails published on the target company website count as verified for outreach; public-crawl verification confirms publication, not mailbox deliverability.
Queries external discovery providers and may consume credits; it does not send email. Use verify_emails to assess addresses and send_email only for an explicitly requested message.
The description explains the capability, when to use it, and what to expect.
Inputs92/100
Remove validation rules already expressed in this field’s schema; describe its meaning and usage instead.
domain
Domain or URL to search, for example example.com or https://example.com/blog.
Clear enough to supply this argument.
targetName
Specific person to prioritize before falling back to target roles and generic inboxes.
Clear enough to supply this argument.
maxResults
Maximum number of ranked contacts to return. Defaults to 10.
Remove validation rules already expressed in this field’s schema; describe its meaning and usage instead.
targetRoles
Roles to prioritize, for example editor, content, marketing, seo, partnerships, pr, webmaster.
Clear enough to supply this argument.
includeGenericInboxes
Whether to include generic role inboxes such as contact@, info@, editorial@, and press@.
Clear enough to supply this argument.
crawlMaxPages
Maximum number of relevant sitemap URLs to crawl before using paid providers.
Clear enough to supply this argument.
projectId
Atomic project ID from list_projects. Omit to use the configured project; if asked to choose, select one of the accessible returned IDs.
Clear enough to supply this argument.
context
Short purpose of this call for the activity log. Exclude personal data and private source content.
Remove validation rules already expressed in this field’s schema; describe its meaning and usage instead.
llm_model
Use the exact model ID executing this call, from runtime/system context, for usage attribution. Supply it on every Atomic MCP tool call, including discovery and feedback, and update it if the model changes. Use the model ID rather than the client app name. If unavailable, omit it; never guess or ask the user.
Remove validation rules already expressed in this field’s schema; describe its meaning and usage instead.
The title clearly communicates the tool’s action and subject. Keep it concise.
Description97/100
Resolve a full URL to a primary-locale CMS record. Returns found, ambiguous, incomplete, unsupported or not_found. Only update a found candidate. Static pages and custom nested routes are unsupported.
Use when you have a URL rather than native collection/item IDs. Ambiguous or incomplete results require investigation before update_webflow_content; resolving a candidate does not publish it.
The description explains the capability, when to use it, and what to expect.
Inputs90/100
Remove validation rules already expressed in this field’s schema; describe its meaning and usage instead.
projectPublishingId
Atomic publishing connection ID from get_publishing_connections, not the provider site or post ID.
Clear enough to supply this argument.
url
Full public CMS URL on the connected site. Never guess IDs.
Clear enough to supply this argument.
projectId
Atomic project ID from list_projects. Omit to use the configured project; if asked to choose, select one of the accessible returned IDs.
Clear enough to supply this argument.
context
Short purpose of this call for the activity log. Exclude personal data and private source content.
Remove validation rules already expressed in this field’s schema; describe its meaning and usage instead.
llm_model
Use the exact model ID executing this call, from runtime/system context, for usage attribution. Supply it on every Atomic MCP tool call, including discovery and feedback, and update it if the model changes. Use the model ID rather than the client app name. If unavailable, omit it; never guess or ask the user.
Remove validation rules already expressed in this field’s schema; describe its meaning and usage instead.
{
"type": "object",
"required": [
"success"
],
"properties": {
"url": {
"type": "string",
"description": "Link for resolving the failure or completing the operation."
},
"data": {
"type": "object",
"required": [
"status",
"candidates"
],
"properties": {
"reason": {
"type": "string",
"description": "Explanation for the reported outcome or decision."
},
"status": {
"enum": [
"found",
"not_found",
"ambiguous",
"incomplete",
"unsupported"
],
"type": "string",
"description": "Current saved or execution state reported by the operation."
},
"candidates": {
"type": "array",
"items": {
"type": "object",
"required": [
"projectPublishingId",
"collectionId",
"itemId",
"content",
"url"
],
"properties": {
"url": {
"type": "string",
"description": "URL returned for this resource or operation."
},
"itemId": {
"type": "string",
"description": "Native CMS item ID within the returned collection."
},
"content": {
"type": "object",
"description": "Returned content body in the format described by the containing resource."
},
"collectionId": {
"type": "string",
"description": "Native Webflow collection ID identifying the CMS collection."
},
"projectPublishingId": {
"type": "number",
"description": "Atomic publishing connection used for this native CMS operation."
}
}
},
"description": "Matching records with their native IDs and URLs; ambiguous matches must be resolved before editing."
}
},
"description": "Operation data; optional fields may be absent."
},
"error": {
"type": "string",
"description": "Why the operation failed."
},
"details": {
"type": "object",
"description": "Diagnostics keyed by errorCode."
},
"message": {
"type": "string",
"description": "Outcome or recovery instructions. Project selection means no action ran."
},
"success": {
"type": "boolean",
"description": "Operation success; on false inspect error/errorCode."
},
"upgrade": {
"type": "object",
"description": "Plan-upgrade guidance for an unavailable capability."
},
"category": {
"type": "string",
"description": "Failure category, such as invalid_input or plan_required."
},
"expected": {
"type": "boolean",
"description": "Whether this is an anticipated access, input, plan or state failure."
},
"projects": {
"type": "array",
"items": {
"type": "object",
"properties": {
"id": {
"type": "number",
"description": "Project ID for projectId."
},
"name": {
"type": "string",
"description": "Project name."
}
},
"description": "Accessible project."
},
"description": "Accessible project choices. Select a projectId and retry."
},
"errorCode": {
"type": "string",
"description": "Failure code for recovery."
},
"retryable": {
"type": "boolean",
"description": "Whether an unchanged request can be retried."
},
"statusCode": {
"type": "number",
"description": "HTTP-style failure status."
},
"executionTime": {
"type": "string",
"description": "Elapsed time in seconds, with an s suffix."
}
},
"description": "Operation result envelope."
}
Original tool metadata
{
"name": "find_webflow_content",
"title": "Find Webflow content",
"description": "Resolve a full URL to a primary-locale CMS record. Returns found, ambiguous, incomplete, unsupported or not_found. Only update a found candidate. Static pages and custom nested routes are unsupported.\n\nUse when you have a URL rather than native collection/item IDs. Ambiguous or incomplete results require investigation before update_webflow_content; resolving a candidate does not publish it.",
"inputSchema": {
"type": "object",
"required": [
"projectPublishingId",
"url"
],
"properties": {
"url": {
"type": "string",
"description": "Full public CMS URL on the connected site. Never guess IDs."
},
"context": {
"type": "string",
"maxLength": 120,
"description": "Short purpose of this call for the activity log. Exclude personal data and private source content."
},
"llm_model": {
"type": "string",
"maxLength": 128,
"description": "Use the exact model ID executing this call, from runtime/system context, for usage attribution. Supply it on every Atomic MCP tool call, including discovery and feedback, and update it if the model changes. Use the model ID rather than the client app name. If unavailable, omit it; never guess or ask the user."
},
"projectId": {
"type": "number",
"description": "Atomic project ID from list_projects. Omit to use the configured project; if asked to choose, select one of the accessible returned IDs."
},
"projectPublishingId": {
"type": "number",
"minimum": 1,
"description": "Atomic publishing connection ID from get_publishing_connections, not the provider site or post ID."
}
},
"additionalProperties": false
},
"outputSchema": {
"type": "object",
"required": [
"success"
],
"properties": {
"url": {
"type": "string",
"description": "Link for resolving the failure or completing the operation."
},
"data": {
"type": "object",
"required": [
"status",
"candidates"
],
"properties": {
"reason": {
"type": "string",
"description": "Explanation for the reported outcome or decision."
},
"status": {
"enum": [
"found",
"not_found",
"ambiguous",
"incomplete",
"unsupported"
],
"type": "string",
"description": "Current saved or execution state reported by the operation."
},
"candidates": {
"type": "array",
"items": {
"type": "object",
"required": [
"projectPublishingId",
"collectionId",
"itemId",
"content",
"url"
],
"properties": {
"url": {
"type": "string",
"description": "URL returned for this resource or operation."
},
"itemId": {
"type": "string",
"description": "Native CMS item ID within the returned collection."
},
"content": {
"type": "object",
"description": "Returned content body in the format described by the containing resource."
},
"collectionId": {
"type": "string",
"description": "Native Webflow collection ID identifying the CMS collection."
},
"projectPublishingId": {
"type": "number",
"description": "Atomic publishing connection used for this native CMS operation."
}
}
},
"description": "Matching records with their native IDs and URLs; ambiguous matches must be resolved before editing."
}
},
"description": "Operation data; optional fields may be absent."
},
"error": {
"type": "string",
"description": "Why the operation failed."
},
"details": {
"type": "object",
"description": "Diagnostics keyed by errorCode."
},
"message": {
"type": "string",
"description": "Outcome or recovery instructions. Project selection means no action ran."
},
"success": {
"type": "boolean",
"description": "Operation success; on false inspect error/errorCode."
},
"upgrade": {
"type": "object",
"description": "Plan-upgrade guidance for an unavailable capability."
},
"category": {
"type": "string",
"description": "Failure category, such as invalid_input or plan_required."
},
"expected": {
"type": "boolean",
"description": "Whether this is an anticipated access, input, plan or state failure."
},
"projects": {
"type": "array",
"items": {
"type": "object",
"properties": {
"id": {
"type": "number",
"description": "Project ID for projectId."
},
"name": {
"type": "string",
"description": "Project name."
}
},
"description": "Accessible project."
},
"description": "Accessible project choices. Select a projectId and retry."
},
"errorCode": {
"type": "string",
"description": "Failure code for recovery."
},
"retryable": {
"type": "boolean",
"description": "Whether an unchanged request can be retried."
},
"statusCode": {
"type": "number",
"description": "HTTP-style failure status."
},
"executionTime": {
"type": "string",
"description": "Elapsed time in seconds, with an s suffix."
}
},
"description": "Operation result envelope."
},
"annotations": {
"readOnlyHint": true,
"openWorldHint": true,
"idempotentHint": true,
"destructiveHint": false
}
}
Name the specific action and subject instead of using a generic label such as ‘manage’ or ‘tool’.
Description80/100
Delete a stored memory for the current agent. Use recall first if you need to inspect IDs, then forget memories that are outdated, incorrect, or no longer useful.
The description explains the capability, when to use it, and what to expect.
Inputs88/100
Remove validation rules already expressed in this field’s schema; describe its meaning and usage instead.
memoryId
The memory entry ID to delete
Clear enough to supply this argument.
projectId
Atomic project ID from list_projects. Omit to use the configured project; if asked to choose, select one of the accessible returned IDs.
Clear enough to supply this argument.
context
Short purpose of this call for the activity log. Exclude personal data and private source content.
Remove validation rules already expressed in this field’s schema; describe its meaning and usage instead.
llm_model
Use the exact model ID executing this call, from runtime/system context, for usage attribution. Supply it on every Atomic MCP tool call, including discovery and feedback, and update it if the model changes. Use the model ID rather than the client app name. If unavailable, omit it; never guess or ask the user.
Remove validation rules already expressed in this field’s schema; describe its meaning and usage instead.
{
"type": "object",
"required": [
"success"
],
"properties": {
"url": {
"type": "string",
"description": "Link for resolving the failure or completing the operation."
},
"data": {
"type": "object",
"required": [
"success",
"deleted"
],
"properties": {
"deleted": {
"type": "object",
"required": [
"agentId",
"content",
"kind",
"recallCount",
"createdAt",
"updatedAt"
],
"properties": {
"id": {
"type": "string",
"description": "Identifier of this returned resource. Use it for subsequent reads or edits of the same resource."
},
"kind": {
"enum": [
"memory",
"improvement"
],
"type": "string",
"description": "Discriminator identifying the variant of this returned item."
},
"tags": {
"anyOf": [
{
"type": "null"
},
{
"type": "array",
"items": {
"type": "string"
}
}
]
},
"agentId": {
"type": "number",
"description": "Saved Atomic agent associated with this resource or execution."
},
"content": {
"type": "string",
"description": "Returned content body in the format described by the containing resource."
},
"createdAt": {
"type": "string",
"format": "date-time",
"description": "Date and time this record was created, serialized as ISO 8601."
},
"updatedAt": {
"type": "string",
"format": "date-time",
"description": "Date and time this record was last updated, serialized as ISO 8601."
},
"recallCount": {
"type": "number"
},
"lastRecalledAt": {
"anyOf": [
{
"type": "null"
},
{
"type": "string",
"format": "date-time",
"description": "Timestamp serialized as an ISO 8601 date and time."
}
]
},
"sourceConversationId": {
"anyOf": [
{
"type": "null"
},
{
"type": "string"
}
],
"description": "Conversation that produced this saved result."
}
}
},
"success": {
"type": "boolean",
"description": "Whether this nested operation completed successfully. Inspect the containing result for details."
}
},
"description": "Operation data; optional fields may be absent."
},
"error": {
"type": "string",
"description": "Why the operation failed."
},
"details": {
"type": "object",
"description": "Diagnostics keyed by errorCode."
},
"message": {
"type": "string",
"description": "Outcome or recovery instructions. Project selection means no action ran."
},
"success": {
"type": "boolean",
"description": "Operation success; on false inspect error/errorCode."
},
"upgrade": {
"type": "object",
"description": "Plan-upgrade guidance for an unavailable capability."
},
"category": {
"type": "string",
"description": "Failure category, such as invalid_input or plan_required."
},
"expected": {
"type": "boolean",
"description": "Whether this is an anticipated access, input, plan or state failure."
},
"projects": {
"type": "array",
"items": {
"type": "object",
"properties": {
"id": {
"type": "number",
"description": "Project ID for projectId."
},
"name": {
"type": "string",
"description": "Project name."
}
},
"description": "Accessible project."
},
"description": "Accessible project choices. Select a projectId and retry."
},
"errorCode": {
"type": "string",
"description": "Failure code for recovery."
},
"retryable": {
"type": "boolean",
"description": "Whether an unchanged request can be retried."
},
"statusCode": {
"type": "number",
"description": "HTTP-style failure status."
},
"executionTime": {
"type": "string",
"description": "Elapsed time in seconds, with an s suffix."
}
},
"description": "Operation result envelope."
}
Original tool metadata
{
"name": "forget",
"title": "Forget",
"description": "Delete a stored memory for the current agent. Use recall first if you need to inspect IDs, then forget memories that are outdated, incorrect, or no longer useful.",
"inputSchema": {
"type": "object",
"required": [
"memoryId"
],
"properties": {
"context": {
"type": "string",
"maxLength": 120,
"description": "Short purpose of this call for the activity log. Exclude personal data and private source content."
},
"memoryId": {
"type": "string",
"description": "The memory entry ID to delete"
},
"llm_model": {
"type": "string",
"maxLength": 128,
"description": "Use the exact model ID executing this call, from runtime/system context, for usage attribution. Supply it on every Atomic MCP tool call, including discovery and feedback, and update it if the model changes. Use the model ID rather than the client app name. If unavailable, omit it; never guess or ask the user."
},
"projectId": {
"type": "number",
"description": "Atomic project ID from list_projects. Omit to use the configured project; if asked to choose, select one of the accessible returned IDs."
}
}
},
"outputSchema": {
"type": "object",
"required": [
"success"
],
"properties": {
"url": {
"type": "string",
"description": "Link for resolving the failure or completing the operation."
},
"data": {
"type": "object",
"required": [
"success",
"deleted"
],
"properties": {
"deleted": {
"type": "object",
"required": [
"agentId",
"content",
"kind",
"recallCount",
"createdAt",
"updatedAt"
],
"properties": {
"id": {
"type": "string",
"description": "Identifier of this returned resource. Use it for subsequent reads or edits of the same resource."
},
"kind": {
"enum": [
"memory",
"improvement"
],
"type": "string",
"description": "Discriminator identifying the variant of this returned item."
},
"tags": {
"anyOf": [
{
"type": "null"
},
{
"type": "array",
"items": {
"type": "string"
}
}
]
},
"agentId": {
"type": "number",
"description": "Saved Atomic agent associated with this resource or execution."
},
"content": {
"type": "string",
"description": "Returned content body in the format described by the containing resource."
},
"createdAt": {
"type": "string",
"format": "date-time",
"description": "Date and time this record was created, serialized as ISO 8601."
},
"updatedAt": {
"type": "string",
"format": "date-time",
"description": "Date and time this record was last updated, serialized as ISO 8601."
},
"recallCount": {
"type": "number"
},
"lastRecalledAt": {
"anyOf": [
{
"type": "null"
},
{
"type": "string",
"format": "date-time",
"description": "Timestamp serialized as an ISO 8601 date and time."
}
]
},
"sourceConversationId": {
"anyOf": [
{
"type": "null"
},
{
"type": "string"
}
],
"description": "Conversation that produced this saved result."
}
}
},
"success": {
"type": "boolean",
"description": "Whether this nested operation completed successfully. Inspect the containing result for details."
}
},
"description": "Operation data; optional fields may be absent."
},
"error": {
"type": "string",
"description": "Why the operation failed."
},
"details": {
"type": "object",
"description": "Diagnostics keyed by errorCode."
},
"message": {
"type": "string",
"description": "Outcome or recovery instructions. Project selection means no action ran."
},
"success": {
"type": "boolean",
"description": "Operation success; on false inspect error/errorCode."
},
"upgrade": {
"type": "object",
"description": "Plan-upgrade guidance for an unavailable capability."
},
"category": {
"type": "string",
"description": "Failure category, such as invalid_input or plan_required."
},
"expected": {
"type": "boolean",
"description": "Whether this is an anticipated access, input, plan or state failure."
},
"projects": {
"type": "array",
"items": {
"type": "object",
"properties": {
"id": {
"type": "number",
"description": "Project ID for projectId."
},
"name": {
"type": "string",
"description": "Project name."
}
},
"description": "Accessible project."
},
"description": "Accessible project choices. Select a projectId and retry."
},
"errorCode": {
"type": "string",
"description": "Failure code for recovery."
},
"retryable": {
"type": "boolean",
"description": "Whether an unchanged request can be retried."
},
"statusCode": {
"type": "number",
"description": "HTTP-style failure status."
},
"executionTime": {
"type": "string",
"description": "Elapsed time in seconds, with an s suffix."
}
},
"description": "Operation result envelope."
},
"annotations": {
"readOnlyHint": false,
"openWorldHint": false,
"idempotentHint": false,
"destructiveHint": true
}
}
The title clearly communicates the tool’s action and subject. Keep it concise.
Description97/100
Generate one editorial chart from aligned labels and numeric datasets. Every datasets[].data array must contain exactly one number per label. Count both arrays before calling. Example: {"chartType":"bar","labels":["Email volume","Attributed revenue"],"datasets":[{"label":"Share (%)","data":[2,37]}]}. The tool renders the plot, applies brand-kit styling, uploads the PNG, and returns Markdown for embedding.
Use numeric datasets for charts, generate_diagram_image for exact-text layouts and generate_image for illustrative artwork. Creates a stored asset, not a CMS edit; repeated calls can create additional files.
The description explains the capability, when to use it, and what to expect.
Inputs87/100
Clarify units, where to obtain this value, or conventions not already expressed in the schema.
chartType
Use heatmap for a numeric matrix (datasets are named rows, labels are columns); waterfall for one signed-change dataset with totalIndices; line for trends; bar for comparisons.
Clear enough to supply this argument.
totalIndices
Waterfall only: total bar indices, starting with 0. Other bars are signed changes. Later totals must equal the running balance.
Clear enough to supply this argument.
valuePrefix
Bar/heatmap/waterfall value unit prefix, for example $.
Clear enough to supply this argument.
valueSuffix
Bar/heatmap/waterfall value unit suffix, for example M or %.
Clear enough to supply this argument.
labels
Required X-axis labels or circular-chart segments. Count them before calling. Their count must exactly equal every datasets[].data count.
Clear enough to supply this argument.
datasets › items › label
Human-readable label shown for this item in Atomic.
Clear enough to supply this argument.
datasets › items › data
Numeric values plotted by this dataset, in the same order as the chart labels.
Clear enough to supply this argument.
datasets › items › color
Color for this visual element, expressed in the format accepted by the selected chart or image settings.
Clarify units, where to obtain this value, or conventions not already expressed in the schema.
datasets › items › backgroundColor
Background color for the visual element.
Explain the meaning of this value, not just its name.
datasets › items › borderColor
Color used to draw the element's border.
Explain the meaning of this value, not just its name.
datasets › items › fill
Whether to fill the area under this chart dataset.
Clear enough to supply this argument.
title
Optional chart title rendered above the plot area.
Clear enough to supply this argument.
subtitle
Optional explanatory subtitle or one-sentence takeaway rendered under the title.
Clear enough to supply this argument.
footerNote
Optional footer copy such as timeframe, sample size, methodology, or source note.
Clear enough to supply this argument.
width
Optional image width in pixels (min 400, max 2400). Default: 1200.
Clear enough to supply this argument.
height
Optional image height in pixels (min 300, max 1800). Defaults to 630 for a horizontal article-friendly canvas.
Clear enough to supply this argument.
filename
Optional output filename. Defaults to chart-<timestamp>.png.
Use grouped for independent series, stacked only for additive parts, or range with exactly two datasets ordered lower then upper. Never stack min/max endpoints.
Clear enough to supply this argument.
showLegend
Show dataset legend inside the chart area.
Clear enough to supply this argument.
showAtomicLogo
Render the selected logo in the lower-right footer area only when its image loads successfully.
Clear enough to supply this argument.
logoSource
Choose the project brand-kit logo or explicitly request the Atomic logo. Missing or unreadable images are omitted without a replacement.
Clear enough to supply this argument.
backgroundColor
Optional background color override in hex format (e.g., #111315).
Clear enough to supply this argument.
textColor
Optional text color override in hex format. Applies to chart titles, subtitles, labels, legends, axes, and footer text.
Clear enough to supply this argument.
fontFamily
Optional font stack override. Applies to all chart text (e.g. 'Inter, Arial, sans-serif').
Clear enough to supply this argument.
respectDatasetColors
If true, dataset-provided colors override brand-kit colors. Default is false, so brand-kit colors are enforced.
Clear enough to supply this argument.
projectId
Atomic project ID from list_projects. Omit to use the configured project; if asked to choose, select one of the accessible returned IDs.
Clear enough to supply this argument.
context
Short purpose of this call for the activity log. Exclude personal data and private source content.
Clear enough to supply this argument.
llm_model
Use the exact model ID executing this call, from runtime/system context, for usage attribution. Supply it on every Atomic MCP tool call, including discovery and feedback, and update it if the model changes. Use the model ID rather than the client app name. If unavailable, omit it; never guess or ask the user.
{
"type": "object",
"required": [
"success"
],
"properties": {
"url": {
"type": "string",
"description": "Link for resolving the failure or completing the operation."
},
"data": {
"type": "object",
"required": [
"imageUrl",
"key",
"filename",
"chartType",
"lineStyle",
"barStyle",
"theme",
"requestedTheme",
"showLegend",
"showAtomicLogo",
"logoSource",
"respectDatasetColors",
"appliedPalette",
"appliedBackgroundColor",
"appliedTextColor",
"appliedFontFamily",
"width",
"height",
"markdown"
],
"properties": {
"key": {
"type": "string",
"description": "Storage or provider key identifying this returned resource."
},
"theme": {
"enum": [
"app_dark",
"app_light"
],
"type": "string"
},
"title": {
"type": "string",
"description": "Display or content title of this returned item."
},
"width": {
"type": "number",
"description": "Horizontal image or layout dimension in the units of the containing resource."
},
"height": {
"type": "number",
"description": "Vertical image or layout dimension in the units of the containing resource."
},
"barStyle": {
"enum": [
"grouped",
"stacked",
"range"
],
"type": "string"
},
"filename": {
"type": "string",
"description": "Filename of the stored or uploaded asset."
},
"imageUrl": {
"type": "string",
"description": "URL of the generated, uploaded or selected image."
},
"markdown": {
"type": "string"
},
"subtitle": {
"type": "string"
},
"chartType": {
"enum": [
"line",
"bar",
"pie",
"doughnut",
"heatmap",
"waterfall"
],
"type": "string"
},
"lineStyle": {
"enum": [
"line",
"area"
],
"type": "string"
},
"footerNote": {
"type": "string"
},
"logoSource": {
"enum": [
"project",
"atomic"
],
"type": "string"
},
"showLegend": {
"type": "boolean"
},
"valuePrefix": {
"type": "string"
},
"valueSuffix": {
"type": "string"
},
"totalIndices": {
"type": "array",
"items": {
"type": "number"
}
},
"appliedPalette": {
"type": "array",
"items": {
"type": "string"
}
},
"requestedTheme": {
"enum": [
"app_dark",
"app_light"
],
"type": "string"
},
"showAtomicLogo": {
"type": "boolean"
},
"appliedTextColor": {
"type": "string"
},
"appliedFontFamily": {
"type": "string"
},
"appliedPrimaryColor": {
"type": "string"
},
"respectDatasetColors": {
"type": "boolean"
},
"appliedBackgroundColor": {
"type": "string"
}
},
"description": "Operation data; optional fields may be absent."
},
"error": {
"type": "string",
"description": "Why the operation failed."
},
"details": {
"type": "object",
"description": "Diagnostics keyed by errorCode."
},
"message": {
"type": "string",
"description": "Outcome or recovery instructions. Project selection means no action ran."
},
"success": {
"type": "boolean",
"description": "Operation success; on false inspect error/errorCode."
},
"upgrade": {
"type": "object",
"description": "Plan-upgrade guidance for an unavailable capability."
},
"category": {
"type": "string",
"description": "Failure category, such as invalid_input or plan_required."
},
"expected": {
"type": "boolean",
"description": "Whether this is an anticipated access, input, plan or state failure."
},
"projects": {
"type": "array",
"items": {
"type": "object",
"properties": {
"id": {
"type": "number",
"description": "Project ID for projectId."
},
"name": {
"type": "string",
"description": "Project name."
}
},
"description": "Accessible project."
},
"description": "Accessible project choices. Select a projectId and retry."
},
"errorCode": {
"type": "string",
"description": "Failure code for recovery."
},
"retryable": {
"type": "boolean",
"description": "Whether an unchanged request can be retried."
},
"statusCode": {
"type": "number",
"description": "HTTP-style failure status."
},
"executionTime": {
"type": "string",
"description": "Elapsed time in seconds, with an s suffix."
}
},
"description": "Operation result envelope."
}
Original tool metadata
{
"name": "generate_chart_image",
"title": "Generate chart image",
"description": "Generate one editorial chart from aligned labels and numeric datasets. Every datasets[].data array must contain exactly one number per label. Count both arrays before calling. Example: {\"chartType\":\"bar\",\"labels\":[\"Email volume\",\"Attributed revenue\"],\"datasets\":[{\"label\":\"Share (%)\",\"data\":[2,37]}]}. The tool renders the plot, applies brand-kit styling, uploads the PNG, and returns Markdown for embedding.\n\nUse numeric datasets for charts, generate_diagram_image for exact-text layouts and generate_image for illustrative artwork. Creates a stored asset, not a CMS edit; repeated calls can create additional files.",
"inputSchema": {
"type": "object",
"required": [
"chartType",
"labels",
"datasets"
],
"properties": {
"theme": {
"enum": [
"app_dark",
"app_light"
],
"type": "string",
"default": "app_dark",
"description": "Visual theme preset. app_dark matches dashboard charts."
},
"title": {
"type": "string",
"description": "Optional chart title rendered above the plot area."
},
"width": {
"type": "number",
"description": "Optional image width in pixels (min 400, max 2400). Default: 1200."
},
"height": {
"type": "number",
"description": "Optional image height in pixels (min 300, max 1800). Defaults to 630 for a horizontal article-friendly canvas."
},
"labels": {
"type": "array",
"items": {
"type": "string"
},
"description": "Required X-axis labels or circular-chart segments. Count them before calling. Their count must exactly equal every datasets[].data count."
},
"context": {
"type": "string",
"maxLength": 120,
"description": "Short purpose of this call for the activity log. Exclude personal data and private source content."
},
"barStyle": {
"enum": [
"grouped",
"stacked",
"range"
],
"type": "string",
"default": "grouped",
"description": "Use grouped for independent series, stacked only for additive parts, or range with exactly two datasets ordered lower then upper. Never stack min/max endpoints."
},
"datasets": {
"type": "array",
"items": {
"type": "object",
"properties": {
"data": {
"type": "array",
"items": {
"type": "number"
},
"description": "Numeric values plotted by this dataset, in the same order as the chart labels."
},
"fill": {
"type": "boolean",
"description": "Whether to fill the area under this chart dataset."
},
"color": {
"type": "string",
"description": "Color for this visual element, expressed in the format accepted by the selected chart or image settings."
},
"label": {
"type": "string",
"description": "Human-readable label shown for this item in Atomic."
},
"borderColor": {
"type": "string",
"description": "Color used to draw the element's border."
},
"backgroundColor": {
"type": "string",
"description": "Background color for the visual element."
}
}
},
"description": "Required dataset array. Each data array must contain exactly one finite number for each label, in the same order. Example with 2 labels: [{\"label\":\"Share (%)\",\"data\":[2,37]}]."
},
"filename": {
"type": "string",
"description": "Optional output filename. Defaults to chart-<timestamp>.png."
},
"subtitle": {
"type": "string",
"description": "Optional explanatory subtitle or one-sentence takeaway rendered under the title."
},
"chartType": {
"enum": [
"line",
"bar",
"pie",
"doughnut",
"heatmap",
"waterfall"
],
"type": "string",
"description": "Use heatmap for a numeric matrix (datasets are named rows, labels are columns); waterfall for one signed-change dataset with totalIndices; line for trends; bar for comparisons."
},
"lineStyle": {
"enum": [
"line",
"area"
],
"type": "string",
"default": "area",
"description": "Line rendering style (for chartType=line)."
},
"llm_model": {
"type": "string",
"maxLength": 128,
"description": "Use the exact model ID executing this call, from runtime/system context, for usage attribution. Supply it on every Atomic MCP tool call, including discovery and feedback, and update it if the model changes. Use the model ID rather than the client app name. If unavailable, omit it; never guess or ask the user."
},
"projectId": {
"type": "number",
"description": "Atomic project ID from list_projects. Omit to use the configured project; if asked to choose, select one of the accessible returned IDs."
},
"textColor": {
"type": "string",
"description": "Optional text color override in hex format. Applies to chart titles, subtitles, labels, legends, axes, and footer text."
},
"fontFamily": {
"type": "string",
"description": "Optional font stack override. Applies to all chart text (e.g. 'Inter, Arial, sans-serif')."
},
"footerNote": {
"type": "string",
"description": "Optional footer copy such as timeframe, sample size, methodology, or source note."
},
"logoSource": {
"enum": [
"project",
"atomic"
],
"type": "string",
"default": "project",
"description": "Choose the project brand-kit logo or explicitly request the Atomic logo. Missing or unreadable images are omitted without a replacement."
},
"showLegend": {
"type": "boolean",
"default": false,
"description": "Show dataset legend inside the chart area."
},
"valuePrefix": {
"type": "string",
"maxLength": 12,
"description": "Bar/heatmap/waterfall value unit prefix, for example $."
},
"valueSuffix": {
"type": "string",
"maxLength": 12,
"description": "Bar/heatmap/waterfall value unit suffix, for example M or %."
},
"totalIndices": {
"type": "array",
"items": {
"type": "number"
},
"description": "Waterfall only: total bar indices, starting with 0. Other bars are signed changes. Later totals must equal the running balance."
},
"showAtomicLogo": {
"type": "boolean",
"default": true,
"description": "Render the selected logo in the lower-right footer area only when its image loads successfully."
},
"backgroundColor": {
"type": "string",
"description": "Optional background color override in hex format (e.g., #111315)."
},
"respectDatasetColors": {
"type": "boolean",
"default": false,
"description": "If true, dataset-provided colors override brand-kit colors. Default is false, so brand-kit colors are enforced."
}
},
"additionalProperties": false
},
"outputSchema": {
"type": "object",
"required": [
"success"
],
"properties": {
"url": {
"type": "string",
"description": "Link for resolving the failure or completing the operation."
},
"data": {
"type": "object",
"required": [
"imageUrl",
"key",
"filename",
"chartType",
"lineStyle",
"barStyle",
"theme",
"requestedTheme",
"showLegend",
"showAtomicLogo",
"logoSource",
"respectDatasetColors",
"appliedPalette",
"appliedBackgroundColor",
"appliedTextColor",
"appliedFontFamily",
"width",
"height",
"markdown"
],
"properties": {
"key": {
"type": "string",
"description": "Storage or provider key identifying this returned resource."
},
"theme": {
"enum": [
"app_dark",
"app_light"
],
"type": "string"
},
"title": {
"type": "string",
"description": "Display or content title of this returned item."
},
"width": {
"type": "number",
"description": "Horizontal image or layout dimension in the units of the containing resource."
},
"height": {
"type": "number",
"description": "Vertical image or layout dimension in the units of the containing resource."
},
"barStyle": {
"enum": [
"grouped",
"stacked",
"range"
],
"type": "string"
},
"filename": {
"type": "string",
"description": "Filename of the stored or uploaded asset."
},
"imageUrl": {
"type": "string",
"description": "URL of the generated, uploaded or selected image."
},
"markdown": {
"type": "string"
},
"subtitle": {
"type": "string"
},
"chartType": {
"enum": [
"line",
"bar",
"pie",
"doughnut",
"heatmap",
"waterfall"
],
"type": "string"
},
"lineStyle": {
"enum": [
"line",
"area"
],
"type": "string"
},
"footerNote": {
"type": "string"
},
"logoSource": {
"enum": [
"project",
"atomic"
],
"type": "string"
},
"showLegend": {
"type": "boolean"
},
"valuePrefix": {
"type": "string"
},
"valueSuffix": {
"type": "string"
},
"totalIndices": {
"type": "array",
"items": {
"type": "number"
}
},
"appliedPalette": {
"type": "array",
"items": {
"type": "string"
}
},
"requestedTheme": {
"enum": [
"app_dark",
"app_light"
],
"type": "string"
},
"showAtomicLogo": {
"type": "boolean"
},
"appliedTextColor": {
"type": "string"
},
"appliedFontFamily": {
"type": "string"
},
"appliedPrimaryColor": {
"type": "string"
},
"respectDatasetColors": {
"type": "boolean"
},
"appliedBackgroundColor": {
"type": "string"
}
},
"description": "Operation data; optional fields may be absent."
},
"error": {
"type": "string",
"description": "Why the operation failed."
},
"details": {
"type": "object",
"description": "Diagnostics keyed by errorCode."
},
"message": {
"type": "string",
"description": "Outcome or recovery instructions. Project selection means no action ran."
},
"success": {
"type": "boolean",
"description": "Operation success; on false inspect error/errorCode."
},
"upgrade": {
"type": "object",
"description": "Plan-upgrade guidance for an unavailable capability."
},
"category": {
"type": "string",
"description": "Failure category, such as invalid_input or plan_required."
},
"expected": {
"type": "boolean",
"description": "Whether this is an anticipated access, input, plan or state failure."
},
"projects": {
"type": "array",
"items": {
"type": "object",
"properties": {
"id": {
"type": "number",
"description": "Project ID for projectId."
},
"name": {
"type": "string",
"description": "Project name."
}
},
"description": "Accessible project."
},
"description": "Accessible project choices. Select a projectId and retry."
},
"errorCode": {
"type": "string",
"description": "Failure code for recovery."
},
"retryable": {
"type": "boolean",
"description": "Whether an unchanged request can be retried."
},
"statusCode": {
"type": "number",
"description": "HTTP-style failure status."
},
"executionTime": {
"type": "string",
"description": "Elapsed time in seconds, with an s suffix."
}
},
"description": "Operation result envelope."
},
"annotations": {
"readOnlyHint": false,
"openWorldHint": true,
"idempotentHint": false,
"destructiveHint": false
}
}
The title clearly communicates the tool’s action and subject. Keep it concise.
Description96/100
Generate a deterministic, exact-text editorial visual for an article. Use this instead of AI image generation for KPI comparisons, flow diagrams, process maps, system architecture, timelines, comparison frameworks, and wireframes. Use editorial-cards for independent educational summaries (architecture or comparison, 2-6 cards, no edges): larger type and icons, solid surfaces, and an automatic stacked mobile image. Use editorial-minimal for connected diagrams, wireframes and metric plots. Both use saved Brand Kit colors and typography. The result is uploaded to S3 with Markdown for embedding. Insert the returned markdown verbatim; editorial-cards includes both desktop and mobile assets in a picture embed.
Creates a stored diagram asset without publishing content. Use generate_chart_image for numeric series and generate_image for expressive illustration; preserve user-supplied labels exactly.
The description explains the capability, when to use it, and what to expect.
Inputs82/100
Remove validation rules already expressed in this field’s schema; describe its meaning and usage instead.
diagramType
The semantic layout: flow, process, architecture, timeline, comparison, or wireframe.
Remove validation rules already expressed in this field’s schema; describe its meaning and usage instead.
title
Concise diagram title.
Remove validation rules already expressed in this field’s schema; describe its meaning and usage instead.
subtitle
Optional one-sentence context or takeaway.
Remove validation rules already expressed in this field’s schema; describe its meaning and usage instead.
nodes › items › id
Stable identifier for this diagram node. Reference this exact value in edge endpoints.
Clear enough to supply this argument.
nodes › items › label
Human-readable label shown for this item in Atomic.
Remove validation rules already expressed in this field’s schema; describe its meaning and usage instead.
nodes › items › description
Human-readable purpose or description of this item. On edits, preserve existing text unless replacing it intentionally.
Remove validation rules already expressed in this field’s schema; describe its meaning and usage instead.
nodes › items › metric
Large exact value for KPI or comparison cards, such as "$4.56" or "86.7%".
Clear enough to supply this argument.
nodes › items › variant
Semantic visual treatment, never decoration. Use default for ordinary stages, keep siblings identical, use primary only for an explicitly important outcome, accent only for a genuinely different category, outline only for an external boundary, and highlight only when the user explicitly requests emphasis. Do not alternate variants merely for visual variety.
Clear enough to supply this argument.
nodes › items › icon
Optional built-in line icon rendered deterministically. Use sparingly for genuine visual landmarks; omit when the label already communicates the concept.
Clear enough to supply this argument.
nodes › items › items
Optional exact nested rows, useful for grouped nodes such as Tools.
Clear enough to supply this argument.
nodes › items › row
Optional zero-based explicit grid row. If used, every node must provide row and column.
Remove validation rules already expressed in this field’s schema; describe its meaning and usage instead.
nodes › items › column
Optional zero-based explicit grid column. If used, every node must provide row and column.
Remove validation rules already expressed in this field’s schema; describe its meaning and usage instead.
edges › items › from
Identifier of the source node, matching nodes[].id.
Clear enough to supply this argument.
edges › items › to
Identifier of the destination node, matching nodes[].id.
Clear enough to supply this argument.
edges › items › label
Human-readable label shown for this item in Atomic.
Remove validation rules already expressed in this field’s schema; describe its meaning and usage instead.
edges › items › style
Visual style settings applied to this element.
Explain the meaning of this value, not just its name.
edges › items › direction
forward adds an arrow at the destination; bidirectional adds arrows at both ends; none adds neither.
Remove validation rules already expressed in this field’s schema; describe its meaning and usage instead.
edges › items › colorRole
Semantic edge color. Primary is the default path color; use muted for secondary structure and accent only for a genuinely different relationship.
Remove validation rules already expressed in this field’s schema; describe its meaning and usage instead.
orientation
Direction in which the visual element is arranged.
Remove validation rules already expressed in this field’s schema; describe its meaning and usage instead.
footerNote
Optional source, methodology, or scope note rendered below the diagram.
Remove validation rules already expressed in this field’s schema; describe its meaning and usage instead.
legend › items › label
Human-readable label shown for this item in Atomic.
Remove validation rules already expressed in this field’s schema; describe its meaning and usage instead.
legend › items › style
Visual style settings applied to this element.
Remove validation rules already expressed in this field’s schema; describe its meaning and usage instead.
legend › items › colorRole
Role this color plays in the chart palette, such as background, text, or accent.
Remove validation rules already expressed in this field’s schema; describe its meaning and usage instead.
theme
brand uses the saved chart background; light/dark derive a contrasting canvas from the Brand Kit.
Remove validation rules already expressed in this field’s schema; describe its meaning and usage instead.
showStepNumbers
Show numbered step circles. Defaults on only for process and timeline diagrams.
Remove validation rules already expressed in this field’s schema; describe its meaning and usage instead.
showTypeBadge
Show the diagram-type badge in the header. Defaults to false.
Remove validation rules already expressed in this field’s schema; describe its meaning and usage instead.
outputFormat
SVG preserves vector sharpness and exact text; PNG is the default.
Remove validation rules already expressed in this field’s schema; describe its meaning and usage instead.
stylePreset
editorial-minimal: connected diagrams and metric plots. editorial-cards: 2-6 independent educational cards, architecture/comparison only, no edges or legend; returns a responsive picture embed with a stacked mobile asset.
Remove validation rules already expressed in this field’s schema; describe its meaning and usage instead.
width
Optional output width from 800 to 2400 pixels. Leave unset for a compact article-friendly width that adapts to the layout.
Clear enough to supply this argument.
height
Optional editorial-minimal output height from 420 to 1800 pixels. editorial-cards always computes height from readable content for both desktop and mobile.
Clear enough to supply this argument.
filename
Optional output filename.
Remove validation rules already expressed in this field’s schema; describe its meaning and usage instead.
projectId
Atomic project ID from list_projects. Omit to use the configured project; if asked to choose, select one of the accessible returned IDs.
Clear enough to supply this argument.
context
Short purpose of this call for the activity log. Exclude personal data and private source content.
Clear enough to supply this argument.
llm_model
Use the exact model ID executing this call, from runtime/system context, for usage attribution. Supply it on every Atomic MCP tool call, including discovery and feedback, and update it if the model changes. Use the model ID rather than the client app name. If unavailable, omit it; never guess or ask the user.
Remove validation rules already expressed in this field’s schema; describe its meaning and usage instead.
The title clearly communicates the tool’s action and subject. Keep it concise.
Description93/100
Generate a premium blog featured image using the project brand kit for labels, layout, typography, palette, logo treatment, and any saved custom background image. Supply only article-specific values such as the title, supporting description, and the right-side visual direction or source image. Use a short, complete banner headline instead of the full article title when needed, keep it to 4 words max, and never use ellipses or truncated words. The final banner is programmatically composed.
Creates a new hero asset using saved brand direction; it does not edit the brand kit or publish an article. Image generation may consume credits; repeated calls generate additional assets.
The description explains the capability, when to use it, and what to expect.
Inputs83/100
Remove validation rules already expressed in this field’s schema; describe its meaning and usage instead.
title
Main headline to render in the featured image. Keep it very short: 4 complete words max, preferably fewer. Never use ellipses or truncated words; choose a shorter complete headline instead.
Remove validation rules already expressed in this field’s schema; describe its meaning and usage instead.
description
Optional supporting paragraph or subtitle content. The brand kit decides whether this supporting copy renders. Use complete copy without ellipses or truncated words.
Remove validation rules already expressed in this field’s schema; describe its meaning and usage instead.
visualConcept
Optional description of the right-side visual direction, such as 'glowing data ribbon', 'abstract AI cityscape', or '3D chrome token orbit'.
Remove validation rules already expressed in this field’s schema; describe its meaning and usage instead.
visualSourceMode
Choose how to populate the right-side visual tile. Use 'ai' to generate a new visual or 'url' to place an existing image found elsewhere.
Clear enough to supply this argument.
visualImageUrl
Optional direct image URL for the right-side visual tile. When provided with visualSourceMode=url, the tool will use this asset instead of generating one with AI.
Clear enough to supply this argument.
imageNotes
Optional extra composition notes or constraints for this specific image.
Explain the meaning of this value, not just its name.
size
Final image dimensions. Use 1350x1080 for a 5:4 editorial image. Default: 1200x630.
Remove validation rules already expressed in this field’s schema; describe its meaning and usage instead.
projectId
Atomic project ID from list_projects. Omit to use the configured project; if asked to choose, select one of the accessible returned IDs.
Clear enough to supply this argument.
context
Short purpose of this call for the activity log. Exclude personal data and private source content.
Clear enough to supply this argument.
llm_model
Use the exact model ID executing this call, from runtime/system context, for usage attribution. Supply it on every Atomic MCP tool call, including discovery and feedback, and update it if the model changes. Use the model ID rather than the client app name. If unavailable, omit it; never guess or ask the user.
Remove validation rules already expressed in this field’s schema; describe its meaning and usage instead.
The title clearly communicates the tool’s action and subject. Keep it concise.
Description97/100
Generate an expressive raster illustration or conceptual editorial image for content. Use generate_diagram_image instead for KPI cards, charts, infographics with exact values, labeled flows, system architecture, timelines, comparisons, wireframes, or any visual whose text and relationships must be precise. This tool automatically applies the project Brand Kit palette and visual guidance, normalizes the provider output to the exact requested dimensions without cropping, uploads it to S3, and returns the S3 URL.
Uses metered image generation and stores the result. It does not publish content; use generate_diagram_image when precise text or structured comparisons matter.
The description explains the capability, when to use it, and what to expect.
Inputs90/100
Remove validation rules already expressed in this field’s schema; describe its meaning and usage instead.
prompt
Detailed description of a conceptual or illustrative inline visual. Be specific about composition, subject, visual hierarchy, mood, and important details. Avoid exact labels, metrics, and system relationships; use generate_diagram_image when those are required. Brand-kit colors and styling are applied automatically.
Remove validation rules already expressed in this field’s schema; describe its meaning and usage instead.
projectId
Atomic project ID from list_projects. Omit to use the configured project; if asked to choose, select one of the accessible returned IDs.
Clear enough to supply this argument.
context
Short purpose of this call for the activity log. Exclude personal data and private source content.
Remove validation rules already expressed in this field’s schema; describe its meaning and usage instead.
llm_model
Use the exact model ID executing this call, from runtime/system context, for usage attribution. Supply it on every Atomic MCP tool call, including discovery and feedback, and update it if the model changes. Use the model ID rather than the client app name. If unavailable, omit it; never guess or ask the user.
{
"type": "object",
"required": [
"success"
],
"properties": {
"url": {
"type": "string",
"description": "Link for resolving the failure or completing the operation."
},
"data": {
"type": "object",
"required": [
"imageUrl",
"prompt",
"effectivePrompt",
"requestedSize",
"size",
"width",
"height",
"model",
"usage",
"brandKitApplied",
"appliedStyle"
],
"properties": {
"size": {
"enum": [
"1024x1024",
"1024x1536",
"1536x1024"
],
"type": "string",
"description": "Size measurement reported by this resource; file results use bytes and visual results use their documented dimensions."
},
"model": {
"type": "string",
"description": "Model identifier used for the reported generation or AI-search run."
},
"usage": {
"type": "object",
"required": [
"inputTokens",
"outputTokens",
"executionTime",
"creditsUsed",
"model"
],
"properties": {
"model": {
"type": "string",
"description": "Model identifier used for the reported generation or AI-search run."
},
"modelUsage": {
"type": "object",
"properties": {},
"description": "Actual execution models, including verification; never inferred from a phase label.",
"additionalProperties": {
"type": "object",
"description": "Nested operation-specific fields."
}
},
"phaseUsage": {
"type": "object",
"properties": {},
"description": "Costs charged in this execution, excluding phases restored from an earlier run."
},
"creditsUsed": {
"type": "number",
"description": "Atomic credits recorded as used by this execution."
},
"inputTokens": {
"type": "number",
"description": "Input tokens reported for this model execution."
},
"toolRetries": {
"type": "object",
"required": [
"attempts",
"providerCostDollars",
"toolCostDollars"
],
"properties": {
"attempts": {
"type": "number",
"description": "Processing or execution attempts associated with this record."
},
"toolCostDollars": {
"type": "number",
"description": "Independent costs for retry tool calls only; included in the phase total."
},
"providerCostDollars": {
"type": "number",
"description": "Whole model turns containing retries; included in the phase total."
}
},
"description": "Number of tool retries recorded for the execution."
},
"outputTokens": {
"type": "number",
"description": "Output tokens reported for this model execution."
},
"executionTime": {
"type": "number",
"description": "Elapsed execution duration reported by the tool."
},
"toolCostDollars": {
"type": "number",
"description": "Tool-related cost recorded for this execution, in US dollars."
},
"providerCostDollars": {
"type": "number",
"description": "Provider cost recorded for this execution, in US dollars."
},
"cacheReadInputTokens": {
"type": "number",
"description": "Input tokens served from a model prompt cache."
},
"cacheCreationInputTokens": {
"type": "number",
"description": "Input tokens charged for creating a model prompt cache."
}
},
"description": "Provider or Atomic usage measurements for this execution."
},
"width": {
"type": "number",
"description": "Horizontal image or layout dimension in the units of the containing resource."
},
"height": {
"type": "number",
"description": "Vertical image or layout dimension in the units of the containing resource."
},
"prompt": {
"type": "string",
"description": "Prompt text used for the tracked or tested AI-search run."
},
"imageUrl": {
"type": "string",
"description": "URL of the generated, uploaded or selected image."
},
"appliedStyle": {
"type": "object",
"required": [
"guidelines",
"primaryColor",
"accentColor",
"backgroundColor"
],
"properties": {
"guidelines": {
"type": "string"
},
"accentColor": {
"type": "string"
},
"primaryColor": {
"type": "string"
},
"backgroundColor": {
"type": "string"
}
}
},
"requestedSize": {
"enum": [
"1024x1024",
"1024x1536",
"1536x1024"
],
"type": "string"
},
"brandKitApplied": {
"type": "boolean"
},
"effectivePrompt": {
"type": "string"
}
},
"description": "Operation data; optional fields may be absent."
},
"error": {
"type": "string",
"description": "Why the operation failed."
},
"details": {
"type": "object",
"description": "Diagnostics keyed by errorCode."
},
"message": {
"type": "string",
"description": "Outcome or recovery instructions. Project selection means no action ran."
},
"success": {
"type": "boolean",
"description": "Operation success; on false inspect error/errorCode."
},
"upgrade": {
"type": "object",
"description": "Plan-upgrade guidance for an unavailable capability."
},
"category": {
"type": "string",
"description": "Failure category, such as invalid_input or plan_required."
},
"expected": {
"type": "boolean",
"description": "Whether this is an anticipated access, input, plan or state failure."
},
"projects": {
"type": "array",
"items": {
"type": "object",
"properties": {
"id": {
"type": "number",
"description": "Project ID for projectId."
},
"name": {
"type": "string",
"description": "Project name."
}
},
"description": "Accessible project."
},
"description": "Accessible project choices. Select a projectId and retry."
},
"errorCode": {
"type": "string",
"description": "Failure code for recovery."
},
"retryable": {
"type": "boolean",
"description": "Whether an unchanged request can be retried."
},
"statusCode": {
"type": "number",
"description": "HTTP-style failure status."
},
"executionTime": {
"type": "string",
"description": "Elapsed time in seconds, with an s suffix."
}
},
"description": "Operation result envelope."
}
Original tool metadata
{
"name": "generate_image",
"title": "Generate image",
"description": "Generate an expressive raster illustration or conceptual editorial image for content. Use generate_diagram_image instead for KPI cards, charts, infographics with exact values, labeled flows, system architecture, timelines, comparisons, wireframes, or any visual whose text and relationships must be precise. This tool automatically applies the project Brand Kit palette and visual guidance, normalizes the provider output to the exact requested dimensions without cropping, uploads it to S3, and returns the S3 URL.\n\nUses metered image generation and stores the result. It does not publish content; use generate_diagram_image when precise text or structured comparisons matter.",
"inputSchema": {
"type": "object",
"required": [
"prompt"
],
"properties": {
"size": {
"enum": [
"1024x1024",
"1024x1536",
"1536x1024"
],
"type": "string",
"default": "1024x1024",
"description": "Image size. Supported sizes: 1024x1024, 1024x1536, 1536x1024. Default: 1024x1024"
},
"prompt": {
"type": "string",
"description": "Detailed description of a conceptual or illustrative inline visual. Be specific about composition, subject, visual hierarchy, mood, and important details. Avoid exact labels, metrics, and system relationships; use generate_diagram_image when those are required. Brand-kit colors and styling are applied automatically."
},
"context": {
"type": "string",
"maxLength": 120,
"description": "Short purpose of this call for the activity log. Exclude personal data and private source content."
},
"llm_model": {
"type": "string",
"maxLength": 128,
"description": "Use the exact model ID executing this call, from runtime/system context, for usage attribution. Supply it on every Atomic MCP tool call, including discovery and feedback, and update it if the model changes. Use the model ID rather than the client app name. If unavailable, omit it; never guess or ask the user."
},
"projectId": {
"type": "number",
"description": "Atomic project ID from list_projects. Omit to use the configured project; if asked to choose, select one of the accessible returned IDs."
}
}
},
"outputSchema": {
"type": "object",
"required": [
"success"
],
"properties": {
"url": {
"type": "string",
"description": "Link for resolving the failure or completing the operation."
},
"data": {
"type": "object",
"required": [
"imageUrl",
"prompt",
"effectivePrompt",
"requestedSize",
"size",
"width",
"height",
"model",
"usage",
"brandKitApplied",
"appliedStyle"
],
"properties": {
"size": {
"enum": [
"1024x1024",
"1024x1536",
"1536x1024"
],
"type": "string",
"description": "Size measurement reported by this resource; file results use bytes and visual results use their documented dimensions."
},
"model": {
"type": "string",
"description": "Model identifier used for the reported generation or AI-search run."
},
"usage": {
"type": "object",
"required": [
"inputTokens",
"outputTokens",
"executionTime",
"creditsUsed",
"model"
],
"properties": {
"model": {
"type": "string",
"description": "Model identifier used for the reported generation or AI-search run."
},
"modelUsage": {
"type": "object",
"properties": {},
"description": "Actual execution models, including verification; never inferred from a phase label.",
"additionalProperties": {
"type": "object",
"description": "Nested operation-specific fields."
}
},
"phaseUsage": {
"type": "object",
"properties": {},
"description": "Costs charged in this execution, excluding phases restored from an earlier run."
},
"creditsUsed": {
"type": "number",
"description": "Atomic credits recorded as used by this execution."
},
"inputTokens": {
"type": "number",
"description": "Input tokens reported for this model execution."
},
"toolRetries": {
"type": "object",
"required": [
"attempts",
"providerCostDollars",
"toolCostDollars"
],
"properties": {
"attempts": {
"type": "number",
"description": "Processing or execution attempts associated with this record."
},
"toolCostDollars": {
"type": "number",
"description": "Independent costs for retry tool calls only; included in the phase total."
},
"providerCostDollars": {
"type": "number",
"description": "Whole model turns containing retries; included in the phase total."
}
},
"description": "Number of tool retries recorded for the execution."
},
"outputTokens": {
"type": "number",
"description": "Output tokens reported for this model execution."
},
"executionTime": {
"type": "number",
"description": "Elapsed execution duration reported by the tool."
},
"toolCostDollars": {
"type": "number",
"description": "Tool-related cost recorded for this execution, in US dollars."
},
"providerCostDollars": {
"type": "number",
"description": "Provider cost recorded for this execution, in US dollars."
},
"cacheReadInputTokens": {
"type": "number",
"description": "Input tokens served from a model prompt cache."
},
"cacheCreationInputTokens": {
"type": "number",
"description": "Input tokens charged for creating a model prompt cache."
}
},
"description": "Provider or Atomic usage measurements for this execution."
},
"width": {
"type": "number",
"description": "Horizontal image or layout dimension in the units of the containing resource."
},
"height": {
"type": "number",
"description": "Vertical image or layout dimension in the units of the containing resource."
},
"prompt": {
"type": "string",
"description": "Prompt text used for the tracked or tested AI-search run."
},
"imageUrl": {
"type": "string",
"description": "URL of the generated, uploaded or selected image."
},
"appliedStyle": {
"type": "object",
"required": [
"guidelines",
"primaryColor",
"accentColor",
"backgroundColor"
],
"properties": {
"guidelines": {
"type": "string"
},
"accentColor": {
"type": "string"
},
"primaryColor": {
"type": "string"
},
"backgroundColor": {
"type": "string"
}
}
},
"requestedSize": {
"enum": [
"1024x1024",
"1024x1536",
"1536x1024"
],
"type": "string"
},
"brandKitApplied": {
"type": "boolean"
},
"effectivePrompt": {
"type": "string"
}
},
"description": "Operation data; optional fields may be absent."
},
"error": {
"type": "string",
"description": "Why the operation failed."
},
"details": {
"type": "object",
"description": "Diagnostics keyed by errorCode."
},
"message": {
"type": "string",
"description": "Outcome or recovery instructions. Project selection means no action ran."
},
"success": {
"type": "boolean",
"description": "Operation success; on false inspect error/errorCode."
},
"upgrade": {
"type": "object",
"description": "Plan-upgrade guidance for an unavailable capability."
},
"category": {
"type": "string",
"description": "Failure category, such as invalid_input or plan_required."
},
"expected": {
"type": "boolean",
"description": "Whether this is an anticipated access, input, plan or state failure."
},
"projects": {
"type": "array",
"items": {
"type": "object",
"properties": {
"id": {
"type": "number",
"description": "Project ID for projectId."
},
"name": {
"type": "string",
"description": "Project name."
}
},
"description": "Accessible project."
},
"description": "Accessible project choices. Select a projectId and retry."
},
"errorCode": {
"type": "string",
"description": "Failure code for recovery."
},
"retryable": {
"type": "boolean",
"description": "Whether an unchanged request can be retried."
},
"statusCode": {
"type": "number",
"description": "HTTP-style failure status."
},
"executionTime": {
"type": "string",
"description": "Elapsed time in seconds, with an s suffix."
}
},
"description": "Operation result envelope."
},
"annotations": {
"readOnlyHint": false,
"openWorldHint": true,
"idempotentHint": false,
"destructiveHint": false
}
}
The title clearly communicates the tool’s action and subject. Keep it concise.
Description94/100
Convert a completed content SERP analysis into prioritized optimization tasks without editing the content.
Use only after SERP research completes; wait_for_serp_analysis obtains readiness. Produces and persists the normalized analysis/optimization summary, not edits to the live page.
The description explains the capability, when to use it, and what to expect.
Inputs88/100
Remove validation rules already expressed in this field’s schema; describe its meaning and usage instead.
analysisId
Completed content SERP analysis ID.
Clear enough to supply this argument.
projectId
Atomic project ID from list_projects. Omit to use the configured project; if asked to choose, select one of the accessible returned IDs.
Clear enough to supply this argument.
context
Short purpose of this call for the activity log. Exclude personal data and private source content.
Remove validation rules already expressed in this field’s schema; describe its meaning and usage instead.
llm_model
Use the exact model ID executing this call, from runtime/system context, for usage attribution. Supply it on every Atomic MCP tool call, including discovery and feedback, and update it if the model changes. Use the model ID rather than the client app name. If unavailable, omit it; never guess or ask the user.
Remove validation rules already expressed in this field’s schema; describe its meaning and usage instead.
The title clearly communicates the tool’s action and subject. Keep it concise.
Description89/100
List scheduled agent conversation automations for the current project. Use this before creating, updating, deleting, or running an automation so you can reference existing automation IDs and conversations.
The description explains the capability, when to use it, and what to expect.
Inputs83/100
Remove validation rules already expressed in this field’s schema; describe its meaning and usage instead.
projectId
Atomic project ID from list_projects. Omit to use the configured project; if asked to choose, select one of the accessible returned IDs.
Clear enough to supply this argument.
context
Short purpose of this call for the activity log. Exclude personal data and private source content.
Remove validation rules already expressed in this field’s schema; describe its meaning and usage instead.
llm_model
Use the exact model ID executing this call, from runtime/system context, for usage attribution. Supply it on every Atomic MCP tool call, including discovery and feedback, and update it if the model changes. Use the model ID rather than the client app name. If unavailable, omit it; never guess or ask the user.
Remove validation rules already expressed in this field’s schema; describe its meaning and usage instead.
{
"type": "object",
"required": [
"success"
],
"properties": {
"url": {
"type": "string",
"description": "Link for resolving the failure or completing the operation."
},
"data": {
"type": "array",
"items": {
"type": "object",
"required": [
"projectId",
"type",
"frequency",
"timeRange",
"minuteOffset",
"timezone",
"isActive",
"createdAt",
"updatedAt"
],
"properties": {
"id": {
"type": "number",
"description": "Identifier of this returned resource. Use it for subsequent reads or edits of the same resource."
},
"name": {
"anyOf": [
{
"type": "null"
},
{
"type": "string"
}
],
"description": "Human-readable name of this resource."
},
"type": {
"enum": [
"seo_audit",
"seo_audit_notification",
"keyword_research",
"competitor_analysis",
"backlink_analysis",
"content_analysis",
"prompt_tracking",
"prompt_tracking_via_api",
"performance_report",
"weekly_digest",
"workflow",
"agent_conversation"
],
"type": "string",
"description": "Kind of the returned item; determines how its operation-specific fields should be interpreted."
},
"prompt": {
"anyOf": [
{
"type": "null"
},
{
"type": "string"
}
],
"description": "Prompt text used for the tracked or tested AI-search run."
},
"agentId": {
"anyOf": [
{
"type": "null"
},
{
"type": "number"
}
],
"description": "Saved Atomic agent associated with this resource or execution."
},
"isActive": {
"type": "boolean",
"description": "Whether this saved configuration is enabled."
},
"timezone": {
"type": "string"
},
"createdAt": {
"type": "string",
"format": "date-time",
"description": "Date and time this record was created, serialized as ISO 8601."
},
"dayOfWeek": {
"enum": [
"mondays",
"tuesdays",
"wednesdays",
"thursdays",
"fridays",
"saturdays",
"sundays"
],
"type": "string"
},
"frequency": {
"enum": [
"once",
"daily",
"every_48_hours",
"every_72_hours",
"weekly",
"bi_weekly",
"monthly",
"off"
],
"type": "string"
},
"lastRunAt": {
"type": "string",
"format": "date-time",
"description": "Timestamp serialized as an ISO 8601 date and time."
},
"nextRunAt": {
"type": "string",
"format": "date-time",
"description": "Timestamp serialized as an ISO 8601 date and time."
},
"projectId": {
"type": "number",
"description": "Atomic project that owns this resource."
},
"timeRange": {
"type": "string"
},
"updatedAt": {
"type": "string",
"format": "date-time",
"description": "Date and time this record was last updated, serialized as ISO 8601."
},
"gridCellId": {
"anyOf": [
{
"type": "null"
},
{
"type": "number"
}
]
},
"workflowId": {
"type": "number",
"description": "Saved workflow definition associated with this result."
},
"minuteOffset": {
"type": "number"
},
"monthlyOption": {
"enum": [
"first_day",
"fifth_day",
"last_day",
"first_monday",
"second_monday",
"third_monday",
"fourth_monday",
"first_friday",
"second_friday",
"third_friday",
"fourth_friday",
"middle_month"
],
"type": "string"
},
"conversationId": {
"anyOf": [
{
"type": "null"
},
{
"type": "string"
}
],
"description": "Conversation associated with this task or execution."
},
"workflowInputs": {
"type": "object",
"properties": {},
"additionalProperties": {
"description": "JSON returned by the connected provider or selected operation; its fields depend on that operation."
}
},
"initiatedByUserId": {
"anyOf": [
{
"type": "null"
},
{
"type": "number"
}
],
"description": "Actual initiating member; null only for historical records/non-workflow service schedules."
}
}
},
"description": "Operation data; optional fields may be absent."
},
"error": {
"type": "string",
"description": "Why the operation failed."
},
"details": {
"type": "object",
"description": "Diagnostics keyed by errorCode."
},
"message": {
"type": "string",
"description": "Outcome or recovery instructions. Project selection means no action ran."
},
"success": {
"type": "boolean",
"description": "Operation success; on false inspect error/errorCode."
},
"upgrade": {
"type": "object",
"description": "Plan-upgrade guidance for an unavailable capability."
},
"category": {
"type": "string",
"description": "Failure category, such as invalid_input or plan_required."
},
"expected": {
"type": "boolean",
"description": "Whether this is an anticipated access, input, plan or state failure."
},
"projects": {
"type": "array",
"items": {
"type": "object",
"properties": {
"id": {
"type": "number",
"description": "Project ID for projectId."
},
"name": {
"type": "string",
"description": "Project name."
}
},
"description": "Accessible project."
},
"description": "Accessible project choices. Select a projectId and retry."
},
"errorCode": {
"type": "string",
"description": "Failure code for recovery."
},
"retryable": {
"type": "boolean",
"description": "Whether an unchanged request can be retried."
},
"statusCode": {
"type": "number",
"description": "HTTP-style failure status."
},
"executionTime": {
"type": "string",
"description": "Elapsed time in seconds, with an s suffix."
}
},
"description": "Operation result envelope."
}
Original tool metadata
{
"name": "get_agent_automations",
"title": "Get agent automations",
"description": "List scheduled agent conversation automations for the current project. Use this before creating, updating, deleting, or running an automation so you can reference existing automation IDs and conversations.",
"inputSchema": {
"type": "object",
"required": [],
"properties": {
"context": {
"type": "string",
"maxLength": 120,
"description": "Short purpose of this call for the activity log. Exclude personal data and private source content."
},
"llm_model": {
"type": "string",
"maxLength": 128,
"description": "Use the exact model ID executing this call, from runtime/system context, for usage attribution. Supply it on every Atomic MCP tool call, including discovery and feedback, and update it if the model changes. Use the model ID rather than the client app name. If unavailable, omit it; never guess or ask the user."
},
"projectId": {
"type": "number",
"description": "Atomic project ID from list_projects. Omit to use the configured project; if asked to choose, select one of the accessible returned IDs."
}
}
},
"outputSchema": {
"type": "object",
"required": [
"success"
],
"properties": {
"url": {
"type": "string",
"description": "Link for resolving the failure or completing the operation."
},
"data": {
"type": "array",
"items": {
"type": "object",
"required": [
"projectId",
"type",
"frequency",
"timeRange",
"minuteOffset",
"timezone",
"isActive",
"createdAt",
"updatedAt"
],
"properties": {
"id": {
"type": "number",
"description": "Identifier of this returned resource. Use it for subsequent reads or edits of the same resource."
},
"name": {
"anyOf": [
{
"type": "null"
},
{
"type": "string"
}
],
"description": "Human-readable name of this resource."
},
"type": {
"enum": [
"seo_audit",
"seo_audit_notification",
"keyword_research",
"competitor_analysis",
"backlink_analysis",
"content_analysis",
"prompt_tracking",
"prompt_tracking_via_api",
"performance_report",
"weekly_digest",
"workflow",
"agent_conversation"
],
"type": "string",
"description": "Kind of the returned item; determines how its operation-specific fields should be interpreted."
},
"prompt": {
"anyOf": [
{
"type": "null"
},
{
"type": "string"
}
],
"description": "Prompt text used for the tracked or tested AI-search run."
},
"agentId": {
"anyOf": [
{
"type": "null"
},
{
"type": "number"
}
],
"description": "Saved Atomic agent associated with this resource or execution."
},
"isActive": {
"type": "boolean",
"description": "Whether this saved configuration is enabled."
},
"timezone": {
"type": "string"
},
"createdAt": {
"type": "string",
"format": "date-time",
"description": "Date and time this record was created, serialized as ISO 8601."
},
"dayOfWeek": {
"enum": [
"mondays",
"tuesdays",
"wednesdays",
"thursdays",
"fridays",
"saturdays",
"sundays"
],
"type": "string"
},
"frequency": {
"enum": [
"once",
"daily",
"every_48_hours",
"every_72_hours",
"weekly",
"bi_weekly",
"monthly",
"off"
],
"type": "string"
},
"lastRunAt": {
"type": "string",
"format": "date-time",
"description": "Timestamp serialized as an ISO 8601 date and time."
},
"nextRunAt": {
"type": "string",
"format": "date-time",
"description": "Timestamp serialized as an ISO 8601 date and time."
},
"projectId": {
"type": "number",
"description": "Atomic project that owns this resource."
},
"timeRange": {
"type": "string"
},
"updatedAt": {
"type": "string",
"format": "date-time",
"description": "Date and time this record was last updated, serialized as ISO 8601."
},
"gridCellId": {
"anyOf": [
{
"type": "null"
},
{
"type": "number"
}
]
},
"workflowId": {
"type": "number",
"description": "Saved workflow definition associated with this result."
},
"minuteOffset": {
"type": "number"
},
"monthlyOption": {
"enum": [
"first_day",
"fifth_day",
"last_day",
"first_monday",
"second_monday",
"third_monday",
"fourth_monday",
"first_friday",
"second_friday",
"third_friday",
"fourth_friday",
"middle_month"
],
"type": "string"
},
"conversationId": {
"anyOf": [
{
"type": "null"
},
{
"type": "string"
}
],
"description": "Conversation associated with this task or execution."
},
"workflowInputs": {
"type": "object",
"properties": {},
"additionalProperties": {
"description": "JSON returned by the connected provider or selected operation; its fields depend on that operation."
}
},
"initiatedByUserId": {
"anyOf": [
{
"type": "null"
},
{
"type": "number"
}
],
"description": "Actual initiating member; null only for historical records/non-workflow service schedules."
}
}
},
"description": "Operation data; optional fields may be absent."
},
"error": {
"type": "string",
"description": "Why the operation failed."
},
"details": {
"type": "object",
"description": "Diagnostics keyed by errorCode."
},
"message": {
"type": "string",
"description": "Outcome or recovery instructions. Project selection means no action ran."
},
"success": {
"type": "boolean",
"description": "Operation success; on false inspect error/errorCode."
},
"upgrade": {
"type": "object",
"description": "Plan-upgrade guidance for an unavailable capability."
},
"category": {
"type": "string",
"description": "Failure category, such as invalid_input or plan_required."
},
"expected": {
"type": "boolean",
"description": "Whether this is an anticipated access, input, plan or state failure."
},
"projects": {
"type": "array",
"items": {
"type": "object",
"properties": {
"id": {
"type": "number",
"description": "Project ID for projectId."
},
"name": {
"type": "string",
"description": "Project name."
}
},
"description": "Accessible project."
},
"description": "Accessible project choices. Select a projectId and retry."
},
"errorCode": {
"type": "string",
"description": "Failure code for recovery."
},
"retryable": {
"type": "boolean",
"description": "Whether an unchanged request can be retried."
},
"statusCode": {
"type": "number",
"description": "HTTP-style failure status."
},
"executionTime": {
"type": "string",
"description": "Elapsed time in seconds, with an s suffix."
}
},
"description": "Operation result envelope."
},
"annotations": {
"readOnlyHint": true,
"openWorldHint": false,
"idempotentHint": true,
"destructiveHint": false
}
}
The title clearly communicates the tool’s action and subject. Keep it concise.
Description96/100
Get the AI Employee teams configured in the current project. Returns one entry per team with its team identifier, team name, project goal, orchestrator, and all AI employees on that team. Use this only to browse or compare teams created through the AI Employees feature.
The description explains the capability, when to use it, and what to expect.
Inputs92/100
Remove validation rules already expressed in this field’s schema; describe its meaning and usage instead.
projectId
Atomic project ID from list_projects. Omit to use the configured project; if asked to choose, select one of the accessible returned IDs.
Clear enough to supply this argument.
context
Short purpose of this call for the activity log. Exclude personal data and private source content.
Remove validation rules already expressed in this field’s schema; describe its meaning and usage instead.
llm_model
Use the exact model ID executing this call, from runtime/system context, for usage attribution. Supply it on every Atomic MCP tool call, including discovery and feedback, and update it if the model changes. Use the model ID rather than the client app name. If unavailable, omit it; never guess or ask the user.
The title clearly communicates the tool’s action and subject. Keep it concise.
Description95/100
Get AI search generative engines data for a project. Useful for analyzing traffic from AI search engines like ChatGPT, Gemini, Perplexity, and other AI-powered search platforms. Shows sessions and average session duration by AI search source. Supports filtering by sessionSource, country, page, and device using ga4Filter. If the user has applied filters on the analytics page, use ga4Filter to apply the same filters to this data. If startDate and endDate are not provided, defaults to last 30 days.
TREND DATA: Each AI engine includes a "trends" object showing how metrics changed compared to the previous period:
- sessions: percentage change (e.g., 15 = +15% growth, -10 = -10% decline)
- averageSessionDuration: percentage change in engagement time
Use trends to identify:
- Growing AI platforms (ChatGPT vs Gemini vs Perplexity traffic shifts)
- Which AI engines are driving increasing traffic
- Changes in user engagement from different AI sources
Reads connected GA4 traffic attributed to AI referral sources, not tracked model-answer visibility. Use get_ai_search_project_stats for saved answer visibility and get_ai_search_pages for traffic by landing page.
The description explains the capability, when to use it, and what to expect.
Inputs79/100
Remove validation rules already expressed in this field’s schema; describe its meaning and usage instead.
startDate
Start date in ISO format (YYYY-MM-DD). If not provided, defaults to 30 days ago.
Remove validation rules already expressed in this field’s schema; describe its meaning and usage instead.
endDate
End date in ISO format (YYYY-MM-DD). If not provided, defaults to today.
Clear enough to supply this argument.
ga4Filter › items › dimension
The dimension to filter on (required)
Remove validation rules already expressed in this field’s schema; describe its meaning and usage instead.
ga4Filter › items › operator
The comparison operator (required)
Remove validation rules already expressed in this field’s schema; describe its meaning and usage instead.
ga4Filter › items › expression
The value to match against (required)
Remove validation rules already expressed in this field’s schema; describe its meaning and usage instead.
page
Page number (1-based). Default: 1. Use with limit for pagination.
Remove validation rules already expressed in this field’s schema; describe its meaning and usage instead.
limit
Number of items per page. Default: 10, Max: 100. Use with page for pagination.
Remove validation rules already expressed in this field’s schema; describe its meaning and usage instead.
search
Search query to filter results (searches in relevant text fields)
Remove validation rules already expressed in this field’s schema; describe its meaning and usage instead.
sortBy
Field name to sort by (e.g., "updatedAt", "title", "clicks")
Explain the meaning of this value, not just its name.
sortOrder
Sort order: "asc" for ascending, "desc" for descending. Default: "desc"
Explain the meaning of this value, not just its name.
projectId
Atomic project ID from list_projects. Omit to use the configured project; if asked to choose, select one of the accessible returned IDs.
Clear enough to supply this argument.
context
Short purpose of this call for the activity log. Exclude personal data and private source content.
Clear enough to supply this argument.
llm_model
Use the exact model ID executing this call, from runtime/system context, for usage attribution. Supply it on every Atomic MCP tool call, including discovery and feedback, and update it if the model changes. Use the model ID rather than the client app name. If unavailable, omit it; never guess or ask the user.
{
"type": "object",
"required": [
"success"
],
"properties": {
"url": {
"type": "string",
"description": "Link for resolving the failure or completing the operation."
},
"data": {
"type": "object",
"required": [
"data",
"total",
"page",
"limit",
"totalPages",
"nextPage"
],
"properties": {
"data": {
"type": "array",
"items": {
"type": "object",
"required": [
"source",
"sessions"
],
"properties": {
"source": {
"type": "string"
},
"trends": {
"type": "object",
"description": "Trend data showing how metrics changed compared to the previous period of equal length.\n- sessions: percentage change (15 = +15% growth, -10 = -10% decline)\n- averageSessionDuration: percentage change in engagement time"
},
"sessions": {
"type": "number"
},
"averageSessionDuration": {
"type": "number"
}
}
},
"description": "Result items or operation data inside this returned payload. Pagination fields describe only this result page."
},
"page": {
"type": "number",
"description": "Page number represented by these items."
},
"limit": {
"type": "number",
"description": "Maximum number of items requested for this page."
},
"total": {
"type": "number",
"description": "Total number of matching items across all result pages."
},
"nextPage": {
"anyOf": [
{
"type": "null"
},
{
"type": "number"
}
],
"description": "Next page to request when more results exist; use the returned value rather than constructing a cursor."
},
"totalPages": {
"type": "number",
"description": "Total number of result pages for the current filter and page size."
}
},
"description": "Operation data; optional fields may be absent."
},
"error": {
"type": "string",
"description": "Why the operation failed."
},
"details": {
"type": "object",
"description": "Diagnostics keyed by errorCode."
},
"message": {
"type": "string",
"description": "Outcome or recovery instructions. Project selection means no action ran."
},
"success": {
"type": "boolean",
"description": "Operation success; on false inspect error/errorCode."
},
"upgrade": {
"type": "object",
"description": "Plan-upgrade guidance for an unavailable capability."
},
"category": {
"type": "string",
"description": "Failure category, such as invalid_input or plan_required."
},
"expected": {
"type": "boolean",
"description": "Whether this is an anticipated access, input, plan or state failure."
},
"projects": {
"type": "array",
"items": {
"type": "object",
"properties": {
"id": {
"type": "number",
"description": "Project ID for projectId."
},
"name": {
"type": "string",
"description": "Project name."
}
},
"description": "Accessible project."
},
"description": "Accessible project choices. Select a projectId and retry."
},
"errorCode": {
"type": "string",
"description": "Failure code for recovery."
},
"retryable": {
"type": "boolean",
"description": "Whether an unchanged request can be retried."
},
"statusCode": {
"type": "number",
"description": "HTTP-style failure status."
},
"executionTime": {
"type": "string",
"description": "Elapsed time in seconds, with an s suffix."
}
},
"description": "Operation result envelope."
}
Original tool metadata
{
"name": "get_ai_search_generative_engines",
"title": "Get AI search generative engines",
"description": "Get AI search generative engines data for a project. Useful for analyzing traffic from AI search engines like ChatGPT, Gemini, Perplexity, and other AI-powered search platforms. Shows sessions and average session duration by AI search source. Supports filtering by sessionSource, country, page, and device using ga4Filter. If the user has applied filters on the analytics page, use ga4Filter to apply the same filters to this data. If startDate and endDate are not provided, defaults to last 30 days.\n\nTREND DATA: Each AI engine includes a \"trends\" object showing how metrics changed compared to the previous period:\n- sessions: percentage change (e.g., 15 = +15% growth, -10 = -10% decline)\n- averageSessionDuration: percentage change in engagement time\n\nUse trends to identify:\n- Growing AI platforms (ChatGPT vs Gemini vs Perplexity traffic shifts)\n- Which AI engines are driving increasing traffic\n- Changes in user engagement from different AI sources\n\nReads connected GA4 traffic attributed to AI referral sources, not tracked model-answer visibility. Use get_ai_search_project_stats for saved answer visibility and get_ai_search_pages for traffic by landing page.",
"inputSchema": {
"type": "object",
"required": [],
"properties": {
"page": {
"type": "number",
"minimum": 1,
"description": "Page number (1-based). Default: 1. Use with limit for pagination."
},
"limit": {
"type": "number",
"default": 10,
"maximum": 100,
"minimum": 1,
"description": "Number of items per page. Default: 10, Max: 100. Use with page for pagination."
},
"search": {
"type": "string",
"description": "Search query to filter results (searches in relevant text fields)"
},
"sortBy": {
"type": "string",
"description": "Field name to sort by (e.g., \"updatedAt\", \"title\", \"clicks\")"
},
"context": {
"type": "string",
"maxLength": 120,
"description": "Short purpose of this call for the activity log. Exclude personal data and private source content."
},
"endDate": {
"type": "string",
"description": "End date in ISO format (YYYY-MM-DD). If not provided, defaults to today."
},
"ga4Filter": {
"type": "array",
"items": {
"type": "object",
"properties": {
"operator": {
"enum": [
"contains",
"equals",
"notContains",
"notEquals"
],
"type": "string",
"description": "The comparison operator (required)"
},
"dimension": {
"enum": [
"sessionSource",
"country",
"page",
"device"
],
"type": "string",
"description": "The dimension to filter on (required)"
},
"expression": {
"type": "string",
"description": "The value to match against (required)"
}
},
"description": "A GA4 filter object with dimension, operator, and expression"
},
"description": "GA4 (Google Analytics 4) filters to apply. Use this when the user has applied filters on the analytics page or wants to filter data. Each filter object has:\n- dimension: The field to filter on. Valid values: \"sessionSource\" (traffic source like google, direct, etc.), \"country\" (3-letter country code), \"page\" (URL path), \"device\" (mobile/desktop/tablet).\n- operator: How to match. Valid values: \"contains\", \"equals\", \"notContains\", \"notEquals\".\n- expression: The value to match against.\nExample: [{\"dimension\": \"sessionSource\", \"operator\": \"equals\", \"expression\": \"google\"}] filters to traffic from Google."
},
"llm_model": {
"type": "string",
"maxLength": 128,
"description": "Use the exact model ID executing this call, from runtime/system context, for usage attribution. Supply it on every Atomic MCP tool call, including discovery and feedback, and update it if the model changes. Use the model ID rather than the client app name. If unavailable, omit it; never guess or ask the user."
},
"projectId": {
"type": "number",
"description": "Atomic project ID from list_projects. Omit to use the configured project; if asked to choose, select one of the accessible returned IDs."
},
"sortOrder": {
"enum": [
"asc",
"desc"
],
"type": "string",
"default": "desc",
"description": "Sort order: \"asc\" for ascending, \"desc\" for descending. Default: \"desc\""
},
"startDate": {
"type": "string",
"description": "Start date in ISO format (YYYY-MM-DD). If not provided, defaults to 30 days ago."
}
}
},
"outputSchema": {
"type": "object",
"required": [
"success"
],
"properties": {
"url": {
"type": "string",
"description": "Link for resolving the failure or completing the operation."
},
"data": {
"type": "object",
"required": [
"data",
"total",
"page",
"limit",
"totalPages",
"nextPage"
],
"properties": {
"data": {
"type": "array",
"items": {
"type": "object",
"required": [
"source",
"sessions"
],
"properties": {
"source": {
"type": "string"
},
"trends": {
"type": "object",
"description": "Trend data showing how metrics changed compared to the previous period of equal length.\n- sessions: percentage change (15 = +15% growth, -10 = -10% decline)\n- averageSessionDuration: percentage change in engagement time"
},
"sessions": {
"type": "number"
},
"averageSessionDuration": {
"type": "number"
}
}
},
"description": "Result items or operation data inside this returned payload. Pagination fields describe only this result page."
},
"page": {
"type": "number",
"description": "Page number represented by these items."
},
"limit": {
"type": "number",
"description": "Maximum number of items requested for this page."
},
"total": {
"type": "number",
"description": "Total number of matching items across all result pages."
},
"nextPage": {
"anyOf": [
{
"type": "null"
},
{
"type": "number"
}
],
"description": "Next page to request when more results exist; use the returned value rather than constructing a cursor."
},
"totalPages": {
"type": "number",
"description": "Total number of result pages for the current filter and page size."
}
},
"description": "Operation data; optional fields may be absent."
},
"error": {
"type": "string",
"description": "Why the operation failed."
},
"details": {
"type": "object",
"description": "Diagnostics keyed by errorCode."
},
"message": {
"type": "string",
"description": "Outcome or recovery instructions. Project selection means no action ran."
},
"success": {
"type": "boolean",
"description": "Operation success; on false inspect error/errorCode."
},
"upgrade": {
"type": "object",
"description": "Plan-upgrade guidance for an unavailable capability."
},
"category": {
"type": "string",
"description": "Failure category, such as invalid_input or plan_required."
},
"expected": {
"type": "boolean",
"description": "Whether this is an anticipated access, input, plan or state failure."
},
"projects": {
"type": "array",
"items": {
"type": "object",
"properties": {
"id": {
"type": "number",
"description": "Project ID for projectId."
},
"name": {
"type": "string",
"description": "Project name."
}
},
"description": "Accessible project."
},
"description": "Accessible project choices. Select a projectId and retry."
},
"errorCode": {
"type": "string",
"description": "Failure code for recovery."
},
"retryable": {
"type": "boolean",
"description": "Whether an unchanged request can be retried."
},
"statusCode": {
"type": "number",
"description": "HTTP-style failure status."
},
"executionTime": {
"type": "string",
"description": "Elapsed time in seconds, with an s suffix."
}
},
"description": "Operation result envelope."
},
"annotations": {
"readOnlyHint": true,
"openWorldHint": true,
"idempotentHint": true,
"destructiveHint": false
}
}
The title clearly communicates the tool’s action and subject. Keep it concise.
Description90/100
Get AI search pages data for a project. Useful for analyzing which pages receive traffic from AI search engines, understanding AI-driven content discovery, and identifying top-performing pages in AI search results. Supports filtering by sessionSource, country, page, and device using ga4Filter. If the user has applied filters on the analytics page, use ga4Filter to apply the same filters to this data. If startDate and endDate are not provided, defaults to last 30 days.
TREND DATA: Each page includes a "trends" object showing how metrics changed compared to the previous period:
- sessions: percentage change (e.g., 15 = +15% growth, -10 = -10% decline)
- averageSessionDuration: percentage change in engagement time
Use trends to identify:
- Pages gaining AI search visibility (positive session trends)
- Pages losing AI search traffic that may need optimization for AI discoverability
Reads AI-referred GA4 traffic grouped by landing page. Use get_ai_search_generative_engines for source platforms and get_ai_search_project_stats for tracked answers; no page content is edited.
The description explains the capability, when to use it, and what to expect.
Inputs75/100
Remove validation rules already expressed in this field’s schema; describe its meaning and usage instead.
startDate
Start date in ISO format (YYYY-MM-DD). If not provided, defaults to 30 days ago.
Remove validation rules already expressed in this field’s schema; describe its meaning and usage instead.
endDate
End date in ISO format (YYYY-MM-DD). If not provided, defaults to today.
Remove validation rules already expressed in this field’s schema; describe its meaning and usage instead.
ga4Filter › items › dimension
The dimension to filter on (required)
Remove validation rules already expressed in this field’s schema; describe its meaning and usage instead.
ga4Filter › items › operator
The comparison operator (required)
Remove validation rules already expressed in this field’s schema; describe its meaning and usage instead.
ga4Filter › items › expression
The value to match against (required)
Remove validation rules already expressed in this field’s schema; describe its meaning and usage instead.
page
Page number (1-based). Default: 1. Use with limit for pagination.
Remove validation rules already expressed in this field’s schema; describe its meaning and usage instead.
limit
Number of items per page. Default: 10, Max: 100. Use with page for pagination.
Remove validation rules already expressed in this field’s schema; describe its meaning and usage instead.
search
Search query to filter results (searches in relevant text fields)
Remove validation rules already expressed in this field’s schema; describe its meaning and usage instead.
sortBy
Field name to sort by (e.g., "updatedAt", "title", "clicks")
Explain the meaning of this value, not just its name.
sortOrder
Sort order: "asc" for ascending, "desc" for descending. Default: "desc"
Explain the meaning of this value, not just its name.
projectId
Atomic project ID from list_projects. Omit to use the configured project; if asked to choose, select one of the accessible returned IDs.
Remove validation rules already expressed in this field’s schema; describe its meaning and usage instead.
context
Short purpose of this call for the activity log. Exclude personal data and private source content.
Clear enough to supply this argument.
llm_model
Use the exact model ID executing this call, from runtime/system context, for usage attribution. Supply it on every Atomic MCP tool call, including discovery and feedback, and update it if the model changes. Use the model ID rather than the client app name. If unavailable, omit it; never guess or ask the user.
Align the output schema with the tool’s documented result.
View output schema
{
"type": "object",
"required": [
"success"
],
"properties": {
"url": {
"type": "string",
"description": "Link for resolving the failure or completing the operation."
},
"data": {
"type": "object",
"required": [
"data",
"total",
"page",
"limit",
"totalPages",
"nextPage"
],
"properties": {
"data": {
"type": "array",
"items": {
"type": "object",
"required": [
"page",
"sessions"
],
"properties": {
"page": {
"type": "string",
"description": "Page number represented by these items."
},
"trends": {
"type": "object",
"description": "Trend data showing how metrics changed compared to the previous period of equal length.\n- sessions: percentage change (15 = +15% growth, -10 = -10% decline)\n- averageSessionDuration: percentage change in engagement time"
},
"sessions": {
"type": "number"
},
"averageSessionDuration": {
"type": "number"
}
}
},
"description": "Result items or operation data inside this returned payload. Pagination fields describe only this result page."
},
"page": {
"type": "number",
"description": "Page number represented by these items."
},
"limit": {
"type": "number",
"description": "Maximum number of items requested for this page."
},
"total": {
"type": "number",
"description": "Total number of matching items across all result pages."
},
"nextPage": {
"anyOf": [
{
"type": "null"
},
{
"type": "number"
}
],
"description": "Next page to request when more results exist; use the returned value rather than constructing a cursor."
},
"totalPages": {
"type": "number",
"description": "Total number of result pages for the current filter and page size."
}
},
"description": "Operation data; optional fields may be absent."
},
"error": {
"type": "string",
"description": "Why the operation failed."
},
"details": {
"type": "object",
"description": "Diagnostics keyed by errorCode."
},
"message": {
"type": "string",
"description": "Outcome or recovery instructions. Project selection means no action ran."
},
"success": {
"type": "boolean",
"description": "Operation success; on false inspect error/errorCode."
},
"upgrade": {
"type": "object",
"description": "Plan-upgrade guidance for an unavailable capability."
},
"category": {
"type": "string",
"description": "Failure category, such as invalid_input or plan_required."
},
"expected": {
"type": "boolean",
"description": "Whether this is an anticipated access, input, plan or state failure."
},
"projects": {
"type": "array",
"items": {
"type": "object",
"properties": {
"id": {
"type": "number",
"description": "Project ID for projectId."
},
"name": {
"type": "string",
"description": "Project name."
}
},
"description": "Accessible project."
},
"description": "Accessible project choices. Select a projectId and retry."
},
"errorCode": {
"type": "string",
"description": "Failure code for recovery."
},
"retryable": {
"type": "boolean",
"description": "Whether an unchanged request can be retried."
},
"statusCode": {
"type": "number",
"description": "HTTP-style failure status."
},
"executionTime": {
"type": "string",
"description": "Elapsed time in seconds, with an s suffix."
}
},
"description": "Operation result envelope."
}
Original tool metadata
{
"name": "get_ai_search_pages",
"title": "Get AI search pages",
"description": "Get AI search pages data for a project. Useful for analyzing which pages receive traffic from AI search engines, understanding AI-driven content discovery, and identifying top-performing pages in AI search results. Supports filtering by sessionSource, country, page, and device using ga4Filter. If the user has applied filters on the analytics page, use ga4Filter to apply the same filters to this data. If startDate and endDate are not provided, defaults to last 30 days.\n\nTREND DATA: Each page includes a \"trends\" object showing how metrics changed compared to the previous period:\n- sessions: percentage change (e.g., 15 = +15% growth, -10 = -10% decline)\n- averageSessionDuration: percentage change in engagement time\n\nUse trends to identify:\n- Pages gaining AI search visibility (positive session trends)\n- Pages losing AI search traffic that may need optimization for AI discoverability\n\nReads AI-referred GA4 traffic grouped by landing page. Use get_ai_search_generative_engines for source platforms and get_ai_search_project_stats for tracked answers; no page content is edited.",
"inputSchema": {
"type": "object",
"required": [],
"properties": {
"page": {
"type": "number",
"minimum": 1,
"description": "Page number (1-based). Default: 1. Use with limit for pagination."
},
"limit": {
"type": "number",
"default": 10,
"maximum": 100,
"minimum": 1,
"description": "Number of items per page. Default: 10, Max: 100. Use with page for pagination."
},
"search": {
"type": "string",
"description": "Search query to filter results (searches in relevant text fields)"
},
"sortBy": {
"type": "string",
"description": "Field name to sort by (e.g., \"updatedAt\", \"title\", \"clicks\")"
},
"context": {
"type": "string",
"maxLength": 120,
"description": "Short purpose of this call for the activity log. Exclude personal data and private source content."
},
"endDate": {
"type": "string",
"description": "End date in ISO format (YYYY-MM-DD). If not provided, defaults to today."
},
"ga4Filter": {
"type": "array",
"items": {
"type": "object",
"properties": {
"operator": {
"enum": [
"contains",
"equals",
"notContains",
"notEquals"
],
"type": "string",
"description": "The comparison operator (required)"
},
"dimension": {
"enum": [
"sessionSource",
"country",
"page",
"device"
],
"type": "string",
"description": "The dimension to filter on (required)"
},
"expression": {
"type": "string",
"description": "The value to match against (required)"
}
},
"description": "A GA4 filter object with dimension, operator, and expression"
},
"description": "GA4 (Google Analytics 4) filters to apply. Use this when the user has applied filters on the analytics page or wants to filter data. Each filter object has:\n- dimension: The field to filter on. Valid values: \"sessionSource\" (traffic source like google, direct, etc.), \"country\" (3-letter country code), \"page\" (URL path), \"device\" (mobile/desktop/tablet).\n- operator: How to match. Valid values: \"contains\", \"equals\", \"notContains\", \"notEquals\".\n- expression: The value to match against.\nExample: [{\"dimension\": \"sessionSource\", \"operator\": \"equals\", \"expression\": \"google\"}] filters to traffic from Google."
},
"llm_model": {
"type": "string",
"maxLength": 128,
"description": "Use the exact model ID executing this call, from runtime/system context, for usage attribution. Supply it on every Atomic MCP tool call, including discovery and feedback, and update it if the model changes. Use the model ID rather than the client app name. If unavailable, omit it; never guess or ask the user."
},
"projectId": {
"type": "number",
"description": "Atomic project ID from list_projects. Omit to use the configured project; if asked to choose, select one of the accessible returned IDs."
},
"sortOrder": {
"enum": [
"asc",
"desc"
],
"type": "string",
"default": "desc",
"description": "Sort order: \"asc\" for ascending, \"desc\" for descending. Default: \"desc\""
},
"startDate": {
"type": "string",
"description": "Start date in ISO format (YYYY-MM-DD). If not provided, defaults to 30 days ago."
}
}
},
"outputSchema": {
"type": "object",
"required": [
"success"
],
"properties": {
"url": {
"type": "string",
"description": "Link for resolving the failure or completing the operation."
},
"data": {
"type": "object",
"required": [
"data",
"total",
"page",
"limit",
"totalPages",
"nextPage"
],
"properties": {
"data": {
"type": "array",
"items": {
"type": "object",
"required": [
"page",
"sessions"
],
"properties": {
"page": {
"type": "string",
"description": "Page number represented by these items."
},
"trends": {
"type": "object",
"description": "Trend data showing how metrics changed compared to the previous period of equal length.\n- sessions: percentage change (15 = +15% growth, -10 = -10% decline)\n- averageSessionDuration: percentage change in engagement time"
},
"sessions": {
"type": "number"
},
"averageSessionDuration": {
"type": "number"
}
}
},
"description": "Result items or operation data inside this returned payload. Pagination fields describe only this result page."
},
"page": {
"type": "number",
"description": "Page number represented by these items."
},
"limit": {
"type": "number",
"description": "Maximum number of items requested for this page."
},
"total": {
"type": "number",
"description": "Total number of matching items across all result pages."
},
"nextPage": {
"anyOf": [
{
"type": "null"
},
{
"type": "number"
}
],
"description": "Next page to request when more results exist; use the returned value rather than constructing a cursor."
},
"totalPages": {
"type": "number",
"description": "Total number of result pages for the current filter and page size."
}
},
"description": "Operation data; optional fields may be absent."
},
"error": {
"type": "string",
"description": "Why the operation failed."
},
"details": {
"type": "object",
"description": "Diagnostics keyed by errorCode."
},
"message": {
"type": "string",
"description": "Outcome or recovery instructions. Project selection means no action ran."
},
"success": {
"type": "boolean",
"description": "Operation success; on false inspect error/errorCode."
},
"upgrade": {
"type": "object",
"description": "Plan-upgrade guidance for an unavailable capability."
},
"category": {
"type": "string",
"description": "Failure category, such as invalid_input or plan_required."
},
"expected": {
"type": "boolean",
"description": "Whether this is an anticipated access, input, plan or state failure."
},
"projects": {
"type": "array",
"items": {
"type": "object",
"properties": {
"id": {
"type": "number",
"description": "Project ID for projectId."
},
"name": {
"type": "string",
"description": "Project name."
}
},
"description": "Accessible project."
},
"description": "Accessible project choices. Select a projectId and retry."
},
"errorCode": {
"type": "string",
"description": "Failure code for recovery."
},
"retryable": {
"type": "boolean",
"description": "Whether an unchanged request can be retried."
},
"statusCode": {
"type": "number",
"description": "HTTP-style failure status."
},
"executionTime": {
"type": "string",
"description": "Elapsed time in seconds, with an s suffix."
}
},
"description": "Operation result envelope."
},
"annotations": {
"readOnlyHint": true,
"openWorldHint": true,
"idempotentHint": true,
"destructiveHint": false
}
}
The title clearly communicates the tool’s action and subject. Keep it concise.
Description94/100
Get project-wide AI-search visibility, average position, sentiment score and numeric mention frequency using dashboard calculations and date/engine/stage/topic filters.
Use for the whole project's tracked-answer aggregate. get_ai_search_prompt_stats narrows to one prompt; get_ai_search_stats_timeseries shows change over time. Reads saved tracking results without starting model runs.
The description explains the capability, when to use it, and what to expect.
Inputs83/100
Remove validation rules already expressed in this field’s schema; describe its meaning and usage instead.
startDate
Start date in ISO format (YYYY-MM-DD). If not provided, defaults to 30 days ago.
Remove validation rules already expressed in this field’s schema; describe its meaning and usage instead.
endDate
End date in ISO format (YYYY-MM-DD). If not provided, defaults to today.
Remove validation rules already expressed in this field’s schema; describe its meaning and usage instead.
engines
AI-search engine identifiers to include. Discover engine availability with get_ai_search_generative_engines.
Remove validation rules already expressed in this field’s schema; describe its meaning and usage instead.
category
Category used to classify or filter the returned items; use the values shown by the current list or get tool.
Remove validation rules already expressed in this field’s schema; describe its meaning and usage instead.
isActive
Whether this configuration is enabled for ongoing execution or tracking.
Explain the meaning of this value, not just its name.
topicId
Existing prompt-topic ID from get_project_prompt_topics; this groups tracked questions.
Clear enough to supply this argument.
projectId
Atomic project ID from list_projects. Omit to use the configured project; if asked to choose, select one of the accessible returned IDs.
Clear enough to supply this argument.
context
Short purpose of this call for the activity log. Exclude personal data and private source content.
Clear enough to supply this argument.
llm_model
Use the exact model ID executing this call, from runtime/system context, for usage attribution. Supply it on every Atomic MCP tool call, including discovery and feedback, and update it if the model changes. Use the model ID rather than the client app name. If unavailable, omit it; never guess or ask the user.
Declare the result fields and their types in the output schema.
View output schema
{
"type": "object",
"required": [
"success"
],
"properties": {
"url": {
"type": "string",
"description": "Link for resolving the failure or completing the operation."
},
"data": {
"type": "object",
"required": [
"projectId",
"startDate",
"endDate",
"visibilityPercentage",
"averagePosition",
"averageSentimentScore",
"mentionCount",
"validAnswerCount",
"mentionPercentage",
"mentionFrequency"
],
"properties": {
"endDate": {
"type": "string"
},
"promptId": {
"type": "number",
"description": "Saved tracked-prompt identifier associated with this execution."
},
"projectId": {
"type": "number",
"description": "Atomic project that owns this resource."
},
"startDate": {
"type": "string"
},
"mentionCount": {
"type": "number"
},
"averagePosition": {
"type": "number"
},
"mentionFrequency": {
"anyOf": [
{
"type": "null"
},
{
"type": "string",
"const": "high"
},
{
"type": "string",
"const": "medium"
},
{
"type": "string",
"const": "low"
}
]
},
"validAnswerCount": {
"type": "number"
},
"mentionPercentage": {
"type": "number"
},
"visibilityPercentage": {
"type": "number"
},
"averageSentimentScore": {
"anyOf": [
{
"type": "null"
},
{
"type": "number"
}
]
}
},
"description": "Operation data; optional fields may be absent."
},
"error": {
"type": "string",
"description": "Why the operation failed."
},
"details": {
"type": "object",
"description": "Diagnostics keyed by errorCode."
},
"message": {
"type": "string",
"description": "Outcome or recovery instructions. Project selection means no action ran."
},
"success": {
"type": "boolean",
"description": "Operation success; on false inspect error/errorCode."
},
"upgrade": {
"type": "object",
"description": "Plan-upgrade guidance for an unavailable capability."
},
"category": {
"type": "string",
"description": "Failure category, such as invalid_input or plan_required."
},
"expected": {
"type": "boolean",
"description": "Whether this is an anticipated access, input, plan or state failure."
},
"projects": {
"type": "array",
"items": {
"type": "object",
"properties": {
"id": {
"type": "number",
"description": "Project ID for projectId."
},
"name": {
"type": "string",
"description": "Project name."
}
},
"description": "Accessible project."
},
"description": "Accessible project choices. Select a projectId and retry."
},
"errorCode": {
"type": "string",
"description": "Failure code for recovery."
},
"retryable": {
"type": "boolean",
"description": "Whether an unchanged request can be retried."
},
"statusCode": {
"type": "number",
"description": "HTTP-style failure status."
},
"executionTime": {
"type": "string",
"description": "Elapsed time in seconds, with an s suffix."
}
},
"description": "Operation result envelope."
}
Original tool metadata
{
"name": "get_ai_search_project_stats",
"title": "Get AI search project stats",
"description": "Get project-wide AI-search visibility, average position, sentiment score and numeric mention frequency using dashboard calculations and date/engine/stage/topic filters.\n\nUse for the whole project's tracked-answer aggregate. get_ai_search_prompt_stats narrows to one prompt; get_ai_search_stats_timeseries shows change over time. Reads saved tracking results without starting model runs.",
"inputSchema": {
"type": "object",
"required": [],
"properties": {
"context": {
"type": "string",
"maxLength": 120,
"description": "Short purpose of this call for the activity log. Exclude personal data and private source content."
},
"endDate": {
"type": "string",
"description": "End date in ISO format (YYYY-MM-DD). If not provided, defaults to today."
},
"engines": {
"type": "array",
"items": {
"enum": [
"chatgpt",
"ai_mode",
"perplexity",
"copilot",
"ai_overview",
"naver",
"wenxin",
"deepseek",
"gemini",
"claude",
"grok"
],
"type": "string"
},
"description": "AI-search engine identifiers to include. Discover engine availability with get_ai_search_generative_engines.",
"uniqueItems": true
},
"topicId": {
"type": "number",
"minimum": 1,
"multipleOf": 1,
"description": "Existing prompt-topic ID from get_project_prompt_topics; this groups tracked questions."
},
"category": {
"enum": [
"awareness",
"consideration",
"decision",
"branded"
],
"type": "string",
"description": "Category used to classify or filter the returned items; use the values shown by the current list or get tool."
},
"isActive": {
"type": "boolean",
"description": "Whether this configuration is enabled for ongoing execution or tracking."
},
"llm_model": {
"type": "string",
"maxLength": 128,
"description": "Use the exact model ID executing this call, from runtime/system context, for usage attribution. Supply it on every Atomic MCP tool call, including discovery and feedback, and update it if the model changes. Use the model ID rather than the client app name. If unavailable, omit it; never guess or ask the user."
},
"projectId": {
"type": "number",
"description": "Atomic project ID from list_projects. Omit to use the configured project; if asked to choose, select one of the accessible returned IDs."
},
"startDate": {
"type": "string",
"description": "Start date in ISO format (YYYY-MM-DD). If not provided, defaults to 30 days ago."
}
},
"additionalProperties": false
},
"outputSchema": {
"type": "object",
"required": [
"success"
],
"properties": {
"url": {
"type": "string",
"description": "Link for resolving the failure or completing the operation."
},
"data": {
"type": "object",
"required": [
"projectId",
"startDate",
"endDate",
"visibilityPercentage",
"averagePosition",
"averageSentimentScore",
"mentionCount",
"validAnswerCount",
"mentionPercentage",
"mentionFrequency"
],
"properties": {
"endDate": {
"type": "string"
},
"promptId": {
"type": "number",
"description": "Saved tracked-prompt identifier associated with this execution."
},
"projectId": {
"type": "number",
"description": "Atomic project that owns this resource."
},
"startDate": {
"type": "string"
},
"mentionCount": {
"type": "number"
},
"averagePosition": {
"type": "number"
},
"mentionFrequency": {
"anyOf": [
{
"type": "null"
},
{
"type": "string",
"const": "high"
},
{
"type": "string",
"const": "medium"
},
{
"type": "string",
"const": "low"
}
]
},
"validAnswerCount": {
"type": "number"
},
"mentionPercentage": {
"type": "number"
},
"visibilityPercentage": {
"type": "number"
},
"averageSentimentScore": {
"anyOf": [
{
"type": "null"
},
{
"type": "number"
}
]
}
},
"description": "Operation data; optional fields may be absent."
},
"error": {
"type": "string",
"description": "Why the operation failed."
},
"details": {
"type": "object",
"description": "Diagnostics keyed by errorCode."
},
"message": {
"type": "string",
"description": "Outcome or recovery instructions. Project selection means no action ran."
},
"success": {
"type": "boolean",
"description": "Operation success; on false inspect error/errorCode."
},
"upgrade": {
"type": "object",
"description": "Plan-upgrade guidance for an unavailable capability."
},
"category": {
"type": "string",
"description": "Failure category, such as invalid_input or plan_required."
},
"expected": {
"type": "boolean",
"description": "Whether this is an anticipated access, input, plan or state failure."
},
"projects": {
"type": "array",
"items": {
"type": "object",
"properties": {
"id": {
"type": "number",
"description": "Project ID for projectId."
},
"name": {
"type": "string",
"description": "Project name."
}
},
"description": "Accessible project."
},
"description": "Accessible project choices. Select a projectId and retry."
},
"errorCode": {
"type": "string",
"description": "Failure code for recovery."
},
"retryable": {
"type": "boolean",
"description": "Whether an unchanged request can be retried."
},
"statusCode": {
"type": "number",
"description": "HTTP-style failure status."
},
"executionTime": {
"type": "string",
"description": "Elapsed time in seconds, with an s suffix."
}
},
"description": "Operation result envelope."
},
"annotations": {
"readOnlyHint": true,
"openWorldHint": false,
"idempotentHint": true,
"destructiveHint": false
}
}
The title clearly communicates the tool’s action and subject. Keep it concise.
Description96/100
Get one AI-search run by runId, including isTest (true for one-off tests, false for saved tracking), full raw answer/markdown, own-brand and competitor classifications, citations, prompt, model, status and timestamp.
Read a runId from list_ai_search_prompt_runs to inspect its raw answer and evidence. This does not run a prompt; test_ai_search_prompt_run starts a new one-off test.
The description explains the capability, when to use it, and what to expect.
Inputs88/100
Remove validation rules already expressed in this field’s schema; describe its meaning and usage instead.
runId
Saved AI-search answer run ID from list_ai_search_prompt_runs; it may identify a tracked run or a one-off test.
Remove validation rules already expressed in this field’s schema; describe its meaning and usage instead.
projectId
Atomic project ID from list_projects. Omit to use the configured project; if asked to choose, select one of the accessible returned IDs.
Clear enough to supply this argument.
context
Short purpose of this call for the activity log. Exclude personal data and private source content.
Remove validation rules already expressed in this field’s schema; describe its meaning and usage instead.
llm_model
Use the exact model ID executing this call, from runtime/system context, for usage attribution. Supply it on every Atomic MCP tool call, including discovery and feedback, and update it if the model changes. Use the model ID rather than the client app name. If unavailable, omit it; never guess or ask the user.
The title clearly communicates the tool’s action and subject. Keep it concise.
Description92/100
Get AI-search statistics for one prompt ID: visibility, average position, sentiment score, mentionCount, validAnswerCount, mentionPercentage and derived high/medium/low label.
Use promptId from get_project_prompts for one tracked prompt's aggregate. Use project_stats for the whole project or stats_timeseries for trends; this does not start tracking or model calls.
The description explains the capability, when to use it, and what to expect.
Inputs83/100
Remove validation rules already expressed in this field’s schema; describe its meaning and usage instead.
startDate
Start date in ISO format (YYYY-MM-DD). If not provided, defaults to 30 days ago.
Remove validation rules already expressed in this field’s schema; describe its meaning and usage instead.
endDate
End date in ISO format (YYYY-MM-DD). If not provided, defaults to today.
Remove validation rules already expressed in this field’s schema; describe its meaning and usage instead.
promptId
Saved tracked prompt ID from get_project_prompts, not a one-off test run ID.
Clear enough to supply this argument.
engines
AI-search engine identifiers to include. Discover engine availability with get_ai_search_generative_engines.
Remove validation rules already expressed in this field’s schema; describe its meaning and usage instead.
category
Category used to classify or filter the returned items; use the values shown by the current list or get tool.
Remove validation rules already expressed in this field’s schema; describe its meaning and usage instead.
isActive
Whether this configuration is enabled for ongoing execution or tracking.
Explain the meaning of this value, not just its name.
topicId
Existing prompt-topic ID from get_project_prompt_topics; this groups tracked questions.
Clear enough to supply this argument.
projectId
Atomic project ID from list_projects. Omit to use the configured project; if asked to choose, select one of the accessible returned IDs.
Clear enough to supply this argument.
context
Short purpose of this call for the activity log. Exclude personal data and private source content.
Clear enough to supply this argument.
llm_model
Use the exact model ID executing this call, from runtime/system context, for usage attribution. Supply it on every Atomic MCP tool call, including discovery and feedback, and update it if the model changes. Use the model ID rather than the client app name. If unavailable, omit it; never guess or ask the user.
Align the output schema with the tool’s documented result.
View output schema
{
"type": "object",
"required": [
"success"
],
"properties": {
"url": {
"type": "string",
"description": "Link for resolving the failure or completing the operation."
},
"data": {
"type": "object",
"required": [
"projectId",
"startDate",
"endDate",
"visibilityPercentage",
"averagePosition",
"averageSentimentScore",
"mentionCount",
"validAnswerCount",
"mentionPercentage",
"mentionFrequency"
],
"properties": {
"endDate": {
"type": "string"
},
"promptId": {
"type": "number",
"description": "Saved tracked-prompt identifier associated with this execution."
},
"projectId": {
"type": "number",
"description": "Atomic project that owns this resource."
},
"startDate": {
"type": "string"
},
"mentionCount": {
"type": "number"
},
"averagePosition": {
"type": "number"
},
"mentionFrequency": {
"anyOf": [
{
"type": "null"
},
{
"type": "string",
"const": "high"
},
{
"type": "string",
"const": "medium"
},
{
"type": "string",
"const": "low"
}
]
},
"validAnswerCount": {
"type": "number"
},
"mentionPercentage": {
"type": "number"
},
"visibilityPercentage": {
"type": "number"
},
"averageSentimentScore": {
"anyOf": [
{
"type": "null"
},
{
"type": "number"
}
]
}
},
"description": "Operation data; optional fields may be absent."
},
"error": {
"type": "string",
"description": "Why the operation failed."
},
"details": {
"type": "object",
"description": "Diagnostics keyed by errorCode."
},
"message": {
"type": "string",
"description": "Outcome or recovery instructions. Project selection means no action ran."
},
"success": {
"type": "boolean",
"description": "Operation success; on false inspect error/errorCode."
},
"upgrade": {
"type": "object",
"description": "Plan-upgrade guidance for an unavailable capability."
},
"category": {
"type": "string",
"description": "Failure category, such as invalid_input or plan_required."
},
"expected": {
"type": "boolean",
"description": "Whether this is an anticipated access, input, plan or state failure."
},
"projects": {
"type": "array",
"items": {
"type": "object",
"properties": {
"id": {
"type": "number",
"description": "Project ID for projectId."
},
"name": {
"type": "string",
"description": "Project name."
}
},
"description": "Accessible project."
},
"description": "Accessible project choices. Select a projectId and retry."
},
"errorCode": {
"type": "string",
"description": "Failure code for recovery."
},
"retryable": {
"type": "boolean",
"description": "Whether an unchanged request can be retried."
},
"statusCode": {
"type": "number",
"description": "HTTP-style failure status."
},
"executionTime": {
"type": "string",
"description": "Elapsed time in seconds, with an s suffix."
}
},
"description": "Operation result envelope."
}
Original tool metadata
{
"name": "get_ai_search_prompt_stats",
"title": "Get AI search prompt stats",
"description": "Get AI-search statistics for one prompt ID: visibility, average position, sentiment score, mentionCount, validAnswerCount, mentionPercentage and derived high/medium/low label.\n\nUse promptId from get_project_prompts for one tracked prompt's aggregate. Use project_stats for the whole project or stats_timeseries for trends; this does not start tracking or model calls.",
"inputSchema": {
"type": "object",
"required": [
"promptId"
],
"properties": {
"context": {
"type": "string",
"maxLength": 120,
"description": "Short purpose of this call for the activity log. Exclude personal data and private source content."
},
"endDate": {
"type": "string",
"description": "End date in ISO format (YYYY-MM-DD). If not provided, defaults to today."
},
"engines": {
"type": "array",
"items": {
"enum": [
"chatgpt",
"ai_mode",
"perplexity",
"copilot",
"ai_overview",
"naver",
"wenxin",
"deepseek",
"gemini",
"claude",
"grok"
],
"type": "string"
},
"description": "AI-search engine identifiers to include. Discover engine availability with get_ai_search_generative_engines.",
"uniqueItems": true
},
"topicId": {
"type": "number",
"minimum": 1,
"multipleOf": 1,
"description": "Existing prompt-topic ID from get_project_prompt_topics; this groups tracked questions."
},
"category": {
"enum": [
"awareness",
"consideration",
"decision",
"branded"
],
"type": "string",
"description": "Category used to classify or filter the returned items; use the values shown by the current list or get tool."
},
"isActive": {
"type": "boolean",
"description": "Whether this configuration is enabled for ongoing execution or tracking."
},
"promptId": {
"type": "number",
"minimum": 1,
"multipleOf": 1,
"description": "Saved tracked prompt ID from get_project_prompts, not a one-off test run ID."
},
"llm_model": {
"type": "string",
"maxLength": 128,
"description": "Use the exact model ID executing this call, from runtime/system context, for usage attribution. Supply it on every Atomic MCP tool call, including discovery and feedback, and update it if the model changes. Use the model ID rather than the client app name. If unavailable, omit it; never guess or ask the user."
},
"projectId": {
"type": "number",
"description": "Atomic project ID from list_projects. Omit to use the configured project; if asked to choose, select one of the accessible returned IDs."
},
"startDate": {
"type": "string",
"description": "Start date in ISO format (YYYY-MM-DD). If not provided, defaults to 30 days ago."
}
},
"additionalProperties": false
},
"outputSchema": {
"type": "object",
"required": [
"success"
],
"properties": {
"url": {
"type": "string",
"description": "Link for resolving the failure or completing the operation."
},
"data": {
"type": "object",
"required": [
"projectId",
"startDate",
"endDate",
"visibilityPercentage",
"averagePosition",
"averageSentimentScore",
"mentionCount",
"validAnswerCount",
"mentionPercentage",
"mentionFrequency"
],
"properties": {
"endDate": {
"type": "string"
},
"promptId": {
"type": "number",
"description": "Saved tracked-prompt identifier associated with this execution."
},
"projectId": {
"type": "number",
"description": "Atomic project that owns this resource."
},
"startDate": {
"type": "string"
},
"mentionCount": {
"type": "number"
},
"averagePosition": {
"type": "number"
},
"mentionFrequency": {
"anyOf": [
{
"type": "null"
},
{
"type": "string",
"const": "high"
},
{
"type": "string",
"const": "medium"
},
{
"type": "string",
"const": "low"
}
]
},
"validAnswerCount": {
"type": "number"
},
"mentionPercentage": {
"type": "number"
},
"visibilityPercentage": {
"type": "number"
},
"averageSentimentScore": {
"anyOf": [
{
"type": "null"
},
{
"type": "number"
}
]
}
},
"description": "Operation data; optional fields may be absent."
},
"error": {
"type": "string",
"description": "Why the operation failed."
},
"details": {
"type": "object",
"description": "Diagnostics keyed by errorCode."
},
"message": {
"type": "string",
"description": "Outcome or recovery instructions. Project selection means no action ran."
},
"success": {
"type": "boolean",
"description": "Operation success; on false inspect error/errorCode."
},
"upgrade": {
"type": "object",
"description": "Plan-upgrade guidance for an unavailable capability."
},
"category": {
"type": "string",
"description": "Failure category, such as invalid_input or plan_required."
},
"expected": {
"type": "boolean",
"description": "Whether this is an anticipated access, input, plan or state failure."
},
"projects": {
"type": "array",
"items": {
"type": "object",
"properties": {
"id": {
"type": "number",
"description": "Project ID for projectId."
},
"name": {
"type": "string",
"description": "Project name."
}
},
"description": "Accessible project."
},
"description": "Accessible project choices. Select a projectId and retry."
},
"errorCode": {
"type": "string",
"description": "Failure code for recovery."
},
"retryable": {
"type": "boolean",
"description": "Whether an unchanged request can be retried."
},
"statusCode": {
"type": "number",
"description": "HTTP-style failure status."
},
"executionTime": {
"type": "string",
"description": "Elapsed time in seconds, with an s suffix."
}
},
"description": "Operation result envelope."
},
"annotations": {
"readOnlyHint": true,
"openWorldHint": false,
"idempotentHint": true,
"destructiveHint": false
}
}
The title clearly communicates the tool’s action and subject. Keep it concise.
Description92/100
Read selected and available AI-search engines, plan limits, active prompt count and remaining capacity.
Use before set_ai_search_selected_engines to inspect saved engine selection and plan capacity. This is configuration/capacity data, not AI-referral traffic or a new model run.
The description explains the capability, when to use it, and what to expect.
Inputs92/100
Remove validation rules already expressed in this field’s schema; describe its meaning and usage instead.
projectId
Atomic project ID from list_projects. Omit to use the configured project; if asked to choose, select one of the accessible returned IDs.
Clear enough to supply this argument.
context
Short purpose of this call for the activity log. Exclude personal data and private source content.
Remove validation rules already expressed in this field’s schema; describe its meaning and usage instead.
llm_model
Use the exact model ID executing this call, from runtime/system context, for usage attribution. Supply it on every Atomic MCP tool call, including discovery and feedback, and update it if the model changes. Use the model ID rather than the client app name. If unavailable, omit it; never guess or ask the user.
The title clearly communicates the tool’s action and subject. Keep it concise.
Description93/100
Get weekly AI-search statistics in one call. UTC Monday-based weeks; partial boundary weeks are clipped to the selected dates. Includes empty weeks. Optional promptId narrows to one prompt.
Use for trends across the selected saved tracking period; project_stats is the period aggregate. This reads recorded answers and does not schedule or run new prompts.
The description explains the capability, when to use it, and what to expect.
Inputs82/100
Remove validation rules already expressed in this field’s schema; describe its meaning and usage instead.
startDate
Start date in ISO format (YYYY-MM-DD). If not provided, defaults to 30 days ago.
Remove validation rules already expressed in this field’s schema; describe its meaning and usage instead.
endDate
End date in ISO format (YYYY-MM-DD). If not provided, defaults to today.
Remove validation rules already expressed in this field’s schema; describe its meaning and usage instead.
promptId
Saved tracked prompt ID from get_project_prompts, not a one-off test run ID.
Remove validation rules already expressed in this field’s schema; describe its meaning and usage instead.
engines
AI-search engine identifiers to include. Discover engine availability with get_ai_search_generative_engines.
Remove validation rules already expressed in this field’s schema; describe its meaning and usage instead.
category
Category used to classify or filter the returned items; use the values shown by the current list or get tool.
Remove validation rules already expressed in this field’s schema; describe its meaning and usage instead.
isActive
Whether this configuration is enabled for ongoing execution or tracking.
Explain the meaning of this value, not just its name.
topicId
Existing prompt-topic ID from get_project_prompt_topics; this groups tracked questions.
Remove validation rules already expressed in this field’s schema; describe its meaning and usage instead.
granularity
Time bucket used to group reporting observations.
Clear enough to supply this argument.
projectId
Atomic project ID from list_projects. Omit to use the configured project; if asked to choose, select one of the accessible returned IDs.
Clear enough to supply this argument.
context
Short purpose of this call for the activity log. Exclude personal data and private source content.
Clear enough to supply this argument.
llm_model
Use the exact model ID executing this call, from runtime/system context, for usage attribution. Supply it on every Atomic MCP tool call, including discovery and feedback, and update it if the model changes. Use the model ID rather than the client app name. If unavailable, omit it; never guess or ask the user.
Declare the result fields and their types in the output schema.
View output schema
{
"type": "object",
"required": [
"success"
],
"properties": {
"url": {
"type": "string",
"description": "Link for resolving the failure or completing the operation."
},
"data": {
"type": "object",
"required": [
"granularity",
"buckets"
],
"properties": {
"buckets": {
"type": "array",
"items": {
"type": "object",
"required": [
"projectId",
"startDate",
"endDate",
"visibilityPercentage",
"averagePosition",
"averageSentimentScore",
"mentionCount",
"validAnswerCount",
"mentionPercentage",
"mentionFrequency",
"weekStart"
],
"properties": {
"endDate": {
"type": "string"
},
"promptId": {
"type": "number",
"description": "Saved tracked-prompt identifier associated with this execution."
},
"projectId": {
"type": "number",
"description": "Atomic project that owns this resource."
},
"startDate": {
"type": "string"
},
"weekStart": {
"type": "string"
},
"mentionCount": {
"type": "number"
},
"averagePosition": {
"type": "number"
},
"mentionFrequency": {
"anyOf": [
{
"type": "null"
},
{
"type": "string",
"const": "high"
},
{
"type": "string",
"const": "medium"
},
{
"type": "string",
"const": "low"
}
]
},
"validAnswerCount": {
"type": "number"
},
"mentionPercentage": {
"type": "number"
},
"visibilityPercentage": {
"type": "number"
},
"averageSentimentScore": {
"anyOf": [
{
"type": "null"
},
{
"type": "number"
}
]
}
}
}
},
"granularity": {
"type": "string",
"const": "week"
}
},
"description": "Operation data; optional fields may be absent."
},
"error": {
"type": "string",
"description": "Why the operation failed."
},
"details": {
"type": "object",
"description": "Diagnostics keyed by errorCode."
},
"message": {
"type": "string",
"description": "Outcome or recovery instructions. Project selection means no action ran."
},
"success": {
"type": "boolean",
"description": "Operation success; on false inspect error/errorCode."
},
"upgrade": {
"type": "object",
"description": "Plan-upgrade guidance for an unavailable capability."
},
"category": {
"type": "string",
"description": "Failure category, such as invalid_input or plan_required."
},
"expected": {
"type": "boolean",
"description": "Whether this is an anticipated access, input, plan or state failure."
},
"projects": {
"type": "array",
"items": {
"type": "object",
"properties": {
"id": {
"type": "number",
"description": "Project ID for projectId."
},
"name": {
"type": "string",
"description": "Project name."
}
},
"description": "Accessible project."
},
"description": "Accessible project choices. Select a projectId and retry."
},
"errorCode": {
"type": "string",
"description": "Failure code for recovery."
},
"retryable": {
"type": "boolean",
"description": "Whether an unchanged request can be retried."
},
"statusCode": {
"type": "number",
"description": "HTTP-style failure status."
},
"executionTime": {
"type": "string",
"description": "Elapsed time in seconds, with an s suffix."
}
},
"description": "Operation result envelope."
}
Original tool metadata
{
"name": "get_ai_search_stats_timeseries",
"title": "Get AI search stats timeseries",
"description": "Get weekly AI-search statistics in one call. UTC Monday-based weeks; partial boundary weeks are clipped to the selected dates. Includes empty weeks. Optional promptId narrows to one prompt.\n\nUse for trends across the selected saved tracking period; project_stats is the period aggregate. This reads recorded answers and does not schedule or run new prompts.",
"inputSchema": {
"type": "object",
"required": [],
"properties": {
"context": {
"type": "string",
"maxLength": 120,
"description": "Short purpose of this call for the activity log. Exclude personal data and private source content."
},
"endDate": {
"type": "string",
"description": "End date in ISO format (YYYY-MM-DD). If not provided, defaults to today."
},
"engines": {
"type": "array",
"items": {
"enum": [
"chatgpt",
"ai_mode",
"perplexity",
"copilot",
"ai_overview",
"naver",
"wenxin",
"deepseek",
"gemini",
"claude",
"grok"
],
"type": "string"
},
"description": "AI-search engine identifiers to include. Discover engine availability with get_ai_search_generative_engines.",
"uniqueItems": true
},
"topicId": {
"type": "number",
"minimum": 1,
"multipleOf": 1,
"description": "Existing prompt-topic ID from get_project_prompt_topics; this groups tracked questions."
},
"category": {
"enum": [
"awareness",
"consideration",
"decision",
"branded"
],
"type": "string",
"description": "Category used to classify or filter the returned items; use the values shown by the current list or get tool."
},
"isActive": {
"type": "boolean",
"description": "Whether this configuration is enabled for ongoing execution or tracking."
},
"promptId": {
"type": "number",
"minimum": 1,
"multipleOf": 1,
"description": "Saved tracked prompt ID from get_project_prompts, not a one-off test run ID."
},
"llm_model": {
"type": "string",
"maxLength": 128,
"description": "Use the exact model ID executing this call, from runtime/system context, for usage attribution. Supply it on every Atomic MCP tool call, including discovery and feedback, and update it if the model changes. Use the model ID rather than the client app name. If unavailable, omit it; never guess or ask the user."
},
"projectId": {
"type": "number",
"description": "Atomic project ID from list_projects. Omit to use the configured project; if asked to choose, select one of the accessible returned IDs."
},
"startDate": {
"type": "string",
"description": "Start date in ISO format (YYYY-MM-DD). If not provided, defaults to 30 days ago."
},
"granularity": {
"enum": [
"week"
],
"type": "string",
"default": "week",
"description": "Time bucket used to group reporting observations."
}
},
"additionalProperties": false
},
"outputSchema": {
"type": "object",
"required": [
"success"
],
"properties": {
"url": {
"type": "string",
"description": "Link for resolving the failure or completing the operation."
},
"data": {
"type": "object",
"required": [
"granularity",
"buckets"
],
"properties": {
"buckets": {
"type": "array",
"items": {
"type": "object",
"required": [
"projectId",
"startDate",
"endDate",
"visibilityPercentage",
"averagePosition",
"averageSentimentScore",
"mentionCount",
"validAnswerCount",
"mentionPercentage",
"mentionFrequency",
"weekStart"
],
"properties": {
"endDate": {
"type": "string"
},
"promptId": {
"type": "number",
"description": "Saved tracked-prompt identifier associated with this execution."
},
"projectId": {
"type": "number",
"description": "Atomic project that owns this resource."
},
"startDate": {
"type": "string"
},
"weekStart": {
"type": "string"
},
"mentionCount": {
"type": "number"
},
"averagePosition": {
"type": "number"
},
"mentionFrequency": {
"anyOf": [
{
"type": "null"
},
{
"type": "string",
"const": "high"
},
{
"type": "string",
"const": "medium"
},
{
"type": "string",
"const": "low"
}
]
},
"validAnswerCount": {
"type": "number"
},
"mentionPercentage": {
"type": "number"
},
"visibilityPercentage": {
"type": "number"
},
"averageSentimentScore": {
"anyOf": [
{
"type": "null"
},
{
"type": "number"
}
]
}
}
}
},
"granularity": {
"type": "string",
"const": "week"
}
},
"description": "Operation data; optional fields may be absent."
},
"error": {
"type": "string",
"description": "Why the operation failed."
},
"details": {
"type": "object",
"description": "Diagnostics keyed by errorCode."
},
"message": {
"type": "string",
"description": "Outcome or recovery instructions. Project selection means no action ran."
},
"success": {
"type": "boolean",
"description": "Operation success; on false inspect error/errorCode."
},
"upgrade": {
"type": "object",
"description": "Plan-upgrade guidance for an unavailable capability."
},
"category": {
"type": "string",
"description": "Failure category, such as invalid_input or plan_required."
},
"expected": {
"type": "boolean",
"description": "Whether this is an anticipated access, input, plan or state failure."
},
"projects": {
"type": "array",
"items": {
"type": "object",
"properties": {
"id": {
"type": "number",
"description": "Project ID for projectId."
},
"name": {
"type": "string",
"description": "Project name."
}
},
"description": "Accessible project."
},
"description": "Accessible project choices. Select a projectId and retry."
},
"errorCode": {
"type": "string",
"description": "Failure code for recovery."
},
"retryable": {
"type": "boolean",
"description": "Whether an unchanged request can be retried."
},
"statusCode": {
"type": "number",
"description": "HTTP-style failure status."
},
"executionTime": {
"type": "string",
"description": "Elapsed time in seconds, with an s suffix."
}
},
"description": "Operation result envelope."
},
"annotations": {
"readOnlyHint": true,
"openWorldHint": false,
"idempotentHint": true,
"destructiveHint": false
}
}
Shorten the title to an action and subject; move usage details into the description.
Description96/100
Get content analysis and opportunities for a project. Returns opportunities with page value scores (0-100) that indicate the business value of each page based on conversions, engagement, and key events. Results are sorted by page value (descending) by default to prioritize high-value pages. Useful for data analysis, identifying content refresh opportunities, and content optimization. startDate and endDate are recommended - if not provided, defaults to last 30 days.
Reads saved project opportunity analysis; it does not create or refresh content. Use get_content_by_id for an existing draft and get_competitor_content_gaps for competitor-specific coverage.
The description explains the capability, when to use it, and what to expect.
Inputs80/100
Remove validation rules already expressed in this field’s schema; describe its meaning and usage instead.
startDate
Start date in ISO format (YYYY-MM-DD). If not provided, defaults to 30 days ago.
Remove validation rules already expressed in this field’s schema; describe its meaning and usage instead.
endDate
End date in ISO format (YYYY-MM-DD). If not provided, defaults to today.
Remove validation rules already expressed in this field’s schema; describe its meaning and usage instead.
page
Page number (1-based). Default: 1. Use with limit for pagination.
Remove validation rules already expressed in this field’s schema; describe its meaning and usage instead.
limit
Number of items per page. Default: 10, Max: 100. Use with page for pagination.
Remove validation rules already expressed in this field’s schema; describe its meaning and usage instead.
search
Search query to filter results (searches in relevant text fields)
Explain the meaning of this value, not just its name.
sortBy
Field name to sort by (e.g., "updatedAt", "title", "clicks")
Explain the meaning of this value, not just its name.
sortOrder
Sort order: "asc" for ascending, "desc" for descending. Default: "desc"
Clear enough to supply this argument.
projectId
Atomic project ID from list_projects. Omit to use the configured project; if asked to choose, select one of the accessible returned IDs.
Clear enough to supply this argument.
context
Short purpose of this call for the activity log. Exclude personal data and private source content.
Clear enough to supply this argument.
llm_model
Use the exact model ID executing this call, from runtime/system context, for usage attribution. Supply it on every Atomic MCP tool call, including discovery and feedback, and update it if the model changes. Use the model ID rather than the client app name. If unavailable, omit it; never guess or ask the user.
Align the output schema with the tool’s documented result.
View output schema
{
"type": "object",
"required": [
"success"
],
"properties": {
"url": {
"type": "string",
"description": "Link for resolving the failure or completing the operation."
},
"data": {
"type": "object",
"required": [
"data",
"total",
"page",
"limit",
"totalPages",
"nextPage"
],
"properties": {
"data": {
"type": "array",
"items": {
"type": "object",
"required": [
"category",
"subcategory",
"opportunity",
"impact"
],
"properties": {
"url": {
"type": "string",
"description": "URL returned for this resource or operation."
},
"impact": {
"enum": [
"high",
"medium",
"low"
],
"type": "string"
},
"metrics": {
"type": "object",
"description": "Nested operation-specific fields."
},
"category": {
"type": "string",
"description": "Classification of this resource or observation."
},
"keywords": {
"type": "array",
"items": {
"type": "string"
}
},
"pageValue": {
"type": "object",
"description": "Nested operation-specific fields."
},
"opportunity": {
"type": "string"
},
"subcategory": {
"type": "string"
}
}
},
"description": "Result items or operation data inside this returned payload. Pagination fields describe only this result page."
},
"page": {
"type": "number",
"description": "Page number represented by these items."
},
"limit": {
"type": "number",
"description": "Maximum number of items requested for this page."
},
"total": {
"type": "number",
"description": "Total number of matching items across all result pages."
},
"nextPage": {
"anyOf": [
{
"type": "null"
},
{
"type": "number"
}
],
"description": "Next page to request when more results exist; use the returned value rather than constructing a cursor."
},
"totalPages": {
"type": "number",
"description": "Total number of result pages for the current filter and page size."
}
},
"description": "Operation data; optional fields may be absent."
},
"error": {
"type": "string",
"description": "Why the operation failed."
},
"details": {
"type": "object",
"description": "Diagnostics keyed by errorCode."
},
"message": {
"type": "string",
"description": "Outcome or recovery instructions. Project selection means no action ran."
},
"success": {
"type": "boolean",
"description": "Operation success; on false inspect error/errorCode."
},
"upgrade": {
"type": "object",
"description": "Plan-upgrade guidance for an unavailable capability."
},
"category": {
"type": "string",
"description": "Failure category, such as invalid_input or plan_required."
},
"expected": {
"type": "boolean",
"description": "Whether this is an anticipated access, input, plan or state failure."
},
"projects": {
"type": "array",
"items": {
"type": "object",
"properties": {
"id": {
"type": "number",
"description": "Project ID for projectId."
},
"name": {
"type": "string",
"description": "Project name."
}
},
"description": "Accessible project."
},
"description": "Accessible project choices. Select a projectId and retry."
},
"errorCode": {
"type": "string",
"description": "Failure code for recovery."
},
"retryable": {
"type": "boolean",
"description": "Whether an unchanged request can be retried."
},
"statusCode": {
"type": "number",
"description": "HTTP-style failure status."
},
"executionTime": {
"type": "string",
"description": "Elapsed time in seconds, with an s suffix."
}
},
"description": "Operation result envelope."
}
Original tool metadata
{
"name": "get_all_opportunities_and_content_analysis",
"title": "Get content opportunities and analysis",
"description": "Get content analysis and opportunities for a project. Returns opportunities with page value scores (0-100) that indicate the business value of each page based on conversions, engagement, and key events. Results are sorted by page value (descending) by default to prioritize high-value pages. Useful for data analysis, identifying content refresh opportunities, and content optimization. startDate and endDate are recommended - if not provided, defaults to last 30 days.\n\nReads saved project opportunity analysis; it does not create or refresh content. Use get_content_by_id for an existing draft and get_competitor_content_gaps for competitor-specific coverage.",
"inputSchema": {
"type": "object",
"required": [],
"properties": {
"page": {
"type": "number",
"minimum": 1,
"description": "Page number (1-based). Default: 1. Use with limit for pagination."
},
"limit": {
"type": "number",
"default": 10,
"maximum": 100,
"minimum": 1,
"description": "Number of items per page. Default: 10, Max: 100. Use with page for pagination."
},
"search": {
"type": "string",
"description": "Search query to filter results (searches in relevant text fields)"
},
"sortBy": {
"type": "string",
"description": "Field name to sort by (e.g., \"updatedAt\", \"title\", \"clicks\")"
},
"context": {
"type": "string",
"maxLength": 120,
"description": "Short purpose of this call for the activity log. Exclude personal data and private source content."
},
"endDate": {
"type": "string",
"description": "End date in ISO format (YYYY-MM-DD). If not provided, defaults to today."
},
"llm_model": {
"type": "string",
"maxLength": 128,
"description": "Use the exact model ID executing this call, from runtime/system context, for usage attribution. Supply it on every Atomic MCP tool call, including discovery and feedback, and update it if the model changes. Use the model ID rather than the client app name. If unavailable, omit it; never guess or ask the user."
},
"projectId": {
"type": "number",
"description": "Atomic project ID from list_projects. Omit to use the configured project; if asked to choose, select one of the accessible returned IDs."
},
"sortOrder": {
"enum": [
"asc",
"desc"
],
"type": "string",
"default": "desc",
"description": "Sort order: \"asc\" for ascending, \"desc\" for descending. Default: \"desc\""
},
"startDate": {
"type": "string",
"description": "Start date in ISO format (YYYY-MM-DD). If not provided, defaults to 30 days ago."
}
}
},
"outputSchema": {
"type": "object",
"required": [
"success"
],
"properties": {
"url": {
"type": "string",
"description": "Link for resolving the failure or completing the operation."
},
"data": {
"type": "object",
"required": [
"data",
"total",
"page",
"limit",
"totalPages",
"nextPage"
],
"properties": {
"data": {
"type": "array",
"items": {
"type": "object",
"required": [
"category",
"subcategory",
"opportunity",
"impact"
],
"properties": {
"url": {
"type": "string",
"description": "URL returned for this resource or operation."
},
"impact": {
"enum": [
"high",
"medium",
"low"
],
"type": "string"
},
"metrics": {
"type": "object",
"description": "Nested operation-specific fields."
},
"category": {
"type": "string",
"description": "Classification of this resource or observation."
},
"keywords": {
"type": "array",
"items": {
"type": "string"
}
},
"pageValue": {
"type": "object",
"description": "Nested operation-specific fields."
},
"opportunity": {
"type": "string"
},
"subcategory": {
"type": "string"
}
}
},
"description": "Result items or operation data inside this returned payload. Pagination fields describe only this result page."
},
"page": {
"type": "number",
"description": "Page number represented by these items."
},
"limit": {
"type": "number",
"description": "Maximum number of items requested for this page."
},
"total": {
"type": "number",
"description": "Total number of matching items across all result pages."
},
"nextPage": {
"anyOf": [
{
"type": "null"
},
{
"type": "number"
}
],
"description": "Next page to request when more results exist; use the returned value rather than constructing a cursor."
},
"totalPages": {
"type": "number",
"description": "Total number of result pages for the current filter and page size."
}
},
"description": "Operation data; optional fields may be absent."
},
"error": {
"type": "string",
"description": "Why the operation failed."
},
"details": {
"type": "object",
"description": "Diagnostics keyed by errorCode."
},
"message": {
"type": "string",
"description": "Outcome or recovery instructions. Project selection means no action ran."
},
"success": {
"type": "boolean",
"description": "Operation success; on false inspect error/errorCode."
},
"upgrade": {
"type": "object",
"description": "Plan-upgrade guidance for an unavailable capability."
},
"category": {
"type": "string",
"description": "Failure category, such as invalid_input or plan_required."
},
"expected": {
"type": "boolean",
"description": "Whether this is an anticipated access, input, plan or state failure."
},
"projects": {
"type": "array",
"items": {
"type": "object",
"properties": {
"id": {
"type": "number",
"description": "Project ID for projectId."
},
"name": {
"type": "string",
"description": "Project name."
}
},
"description": "Accessible project."
},
"description": "Accessible project choices. Select a projectId and retry."
},
"errorCode": {
"type": "string",
"description": "Failure code for recovery."
},
"retryable": {
"type": "boolean",
"description": "Whether an unchanged request can be retried."
},
"statusCode": {
"type": "number",
"description": "HTTP-style failure status."
},
"executionTime": {
"type": "string",
"description": "Elapsed time in seconds, with an s suffix."
}
},
"description": "Operation result envelope."
},
"annotations": {
"readOnlyHint": true,
"openWorldHint": false,
"idempotentHint": true,
"destructiveHint": false
}
}
The title clearly communicates the tool’s action and subject. Keep it concise.
Description92/100
Get visible agents available to the current project, including predefined system agents and custom project agents. Hidden automation-only agents are excluded. Use this only when selecting an explicit existing agent for an automation; otherwise omit agentId so create_agent_automation creates a hidden automation-only agent.
The description explains the capability, when to use it, and what to expect.
Inputs92/100
Remove validation rules already expressed in this field’s schema; describe its meaning and usage instead.
projectId
Atomic project ID from list_projects. Omit to use the configured project; if asked to choose, select one of the accessible returned IDs.
Clear enough to supply this argument.
context
Short purpose of this call for the activity log. Exclude personal data and private source content.
Remove validation rules already expressed in this field’s schema; describe its meaning and usage instead.
llm_model
Use the exact model ID executing this call, from runtime/system context, for usage attribution. Supply it on every Atomic MCP tool call, including discovery and feedback, and update it if the model changes. Use the model ID rather than the client app name. If unavailable, omit it; never guess or ask the user.
The title clearly communicates the tool’s action and subject. Keep it concise.
Description94/100
Get the default brand kit for a project. Returns the full brand-kit state, including name, website URL, tone, voice, target audience, user perspective, brand point of view, competitors, author persona, writing rules, writing sample, brandMentionVariations for branded keyword and AI citation mention matching, SERP location, chart colors, chart text color, chart font, and content featured-image settings such as visual rules, saved named featuredImagePalettes, featuredImageAutoRotatePalettes, fixed featuredImageSelectedPaletteId, palette, color mode, dark/light background logo URLs, logo position, and visual layout. CRITICAL: Always use this tool before creating or editing content, and before updating the brand kit, so you preserve existing values and stay aligned with the project brand system.
The description explains the capability, when to use it, and what to expect.
Inputs92/100
Remove validation rules already expressed in this field’s schema; describe its meaning and usage instead.
projectId
Atomic project ID from list_projects. Omit to use the configured project; if asked to choose, select one of the accessible returned IDs.
Clear enough to supply this argument.
context
Short purpose of this call for the activity log. Exclude personal data and private source content.
Remove validation rules already expressed in this field’s schema; describe its meaning and usage instead.
llm_model
Use the exact model ID executing this call, from runtime/system context, for usage attribution. Supply it on every Atomic MCP tool call, including discovery and feedback, and update it if the model changes. Use the model ID rather than the client app name. If unavailable, omit it; never guess or ask the user.
The title clearly communicates the tool’s action and subject. Keep it concise.
Description78/100
Read the current Buffer post content, media and schedule by its existing ID.
Describe the returned information so the agent knows whether it will answer the request.
Inputs85/100
Remove validation rules already expressed in this field’s schema; describe its meaning and usage instead.
connectionId
Workspace Google connection identifier from list_workspace_google_connections.
Remove validation rules already expressed in this field’s schema; describe its meaning and usage instead.
postId
Native post identifier from list_buffer_posts or get_buffer_post.
Clear enough to supply this argument.
projectId
Atomic project ID from list_projects. Omit to use the configured project; if asked to choose, select one of the accessible returned IDs.
Clear enough to supply this argument.
context
Short purpose of this call for the activity log. Exclude personal data and private source content.
Remove validation rules already expressed in this field’s schema; describe its meaning and usage instead.
llm_model
Use the exact model ID executing this call, from runtime/system context, for usage attribution. Supply it on every Atomic MCP tool call, including discovery and feedback, and update it if the model changes. Use the model ID rather than the client app name. If unavailable, omit it; never guess or ask the user.
Remove validation rules already expressed in this field’s schema; describe its meaning and usage instead.
{
"type": "object",
"required": [
"success"
],
"properties": {
"url": {
"type": "string",
"description": "Link for resolving the failure or completing the operation."
},
"data": {
"type": "object",
"required": [
"id",
"channelId",
"status"
],
"properties": {
"id": {
"type": "string",
"description": "Identifier of this returned resource. Use it for subsequent reads or edits of the same resource."
},
"url": {
"type": "string",
"description": "URL returned for this resource or operation."
},
"text": {
"type": "string"
},
"dueAt": {
"type": "string"
},
"error": {
"type": "string",
"description": "Failure details reported by this operation or its provider."
},
"assets": {
"type": "array",
"items": {
"type": "object",
"properties": {},
"additionalProperties": {
"description": "JSON returned by the connected provider or selected operation; its fields depend on that operation."
}
}
},
"status": {
"type": "string",
"description": "Current saved or execution state reported by the operation."
},
"channelId": {
"type": "string"
}
},
"description": "Operation data; optional fields may be absent."
},
"error": {
"type": "string",
"description": "Why the operation failed."
},
"details": {
"type": "object",
"description": "Diagnostics keyed by errorCode."
},
"message": {
"type": "string",
"description": "Outcome or recovery instructions. Project selection means no action ran."
},
"success": {
"type": "boolean",
"description": "Operation success; on false inspect error/errorCode."
},
"upgrade": {
"type": "object",
"description": "Plan-upgrade guidance for an unavailable capability."
},
"category": {
"type": "string",
"description": "Failure category, such as invalid_input or plan_required."
},
"expected": {
"type": "boolean",
"description": "Whether this is an anticipated access, input, plan or state failure."
},
"projects": {
"type": "array",
"items": {
"type": "object",
"properties": {
"id": {
"type": "number",
"description": "Project ID for projectId."
},
"name": {
"type": "string",
"description": "Project name."
}
},
"description": "Accessible project."
},
"description": "Accessible project choices. Select a projectId and retry."
},
"errorCode": {
"type": "string",
"description": "Failure code for recovery."
},
"retryable": {
"type": "boolean",
"description": "Whether an unchanged request can be retried."
},
"statusCode": {
"type": "number",
"description": "HTTP-style failure status."
},
"executionTime": {
"type": "string",
"description": "Elapsed time in seconds, with an s suffix."
}
},
"description": "Operation result envelope."
}
Original tool metadata
{
"name": "get_buffer_post",
"title": "Get buffer post",
"description": "Read the current Buffer post content, media and schedule by its existing ID.",
"inputSchema": {
"type": "object",
"required": [
"connectionId",
"postId"
],
"properties": {
"postId": {
"type": "string",
"description": "Native post identifier from list_buffer_posts or get_buffer_post."
},
"context": {
"type": "string",
"maxLength": 120,
"description": "Short purpose of this call for the activity log. Exclude personal data and private source content."
},
"llm_model": {
"type": "string",
"maxLength": 128,
"description": "Use the exact model ID executing this call, from runtime/system context, for usage attribution. Supply it on every Atomic MCP tool call, including discovery and feedback, and update it if the model changes. Use the model ID rather than the client app name. If unavailable, omit it; never guess or ask the user."
},
"projectId": {
"type": "number",
"description": "Atomic project ID from list_projects. Omit to use the configured project; if asked to choose, select one of the accessible returned IDs."
},
"connectionId": {
"type": "number",
"minimum": 1,
"description": "Workspace Google connection identifier from list_workspace_google_connections."
}
},
"additionalProperties": false
},
"outputSchema": {
"type": "object",
"required": [
"success"
],
"properties": {
"url": {
"type": "string",
"description": "Link for resolving the failure or completing the operation."
},
"data": {
"type": "object",
"required": [
"id",
"channelId",
"status"
],
"properties": {
"id": {
"type": "string",
"description": "Identifier of this returned resource. Use it for subsequent reads or edits of the same resource."
},
"url": {
"type": "string",
"description": "URL returned for this resource or operation."
},
"text": {
"type": "string"
},
"dueAt": {
"type": "string"
},
"error": {
"type": "string",
"description": "Failure details reported by this operation or its provider."
},
"assets": {
"type": "array",
"items": {
"type": "object",
"properties": {},
"additionalProperties": {
"description": "JSON returned by the connected provider or selected operation; its fields depend on that operation."
}
}
},
"status": {
"type": "string",
"description": "Current saved or execution state reported by the operation."
},
"channelId": {
"type": "string"
}
},
"description": "Operation data; optional fields may be absent."
},
"error": {
"type": "string",
"description": "Why the operation failed."
},
"details": {
"type": "object",
"description": "Diagnostics keyed by errorCode."
},
"message": {
"type": "string",
"description": "Outcome or recovery instructions. Project selection means no action ran."
},
"success": {
"type": "boolean",
"description": "Operation success; on false inspect error/errorCode."
},
"upgrade": {
"type": "object",
"description": "Plan-upgrade guidance for an unavailable capability."
},
"category": {
"type": "string",
"description": "Failure category, such as invalid_input or plan_required."
},
"expected": {
"type": "boolean",
"description": "Whether this is an anticipated access, input, plan or state failure."
},
"projects": {
"type": "array",
"items": {
"type": "object",
"properties": {
"id": {
"type": "number",
"description": "Project ID for projectId."
},
"name": {
"type": "string",
"description": "Project name."
}
},
"description": "Accessible project."
},
"description": "Accessible project choices. Select a projectId and retry."
},
"errorCode": {
"type": "string",
"description": "Failure code for recovery."
},
"retryable": {
"type": "boolean",
"description": "Whether an unchanged request can be retried."
},
"statusCode": {
"type": "number",
"description": "HTTP-style failure status."
},
"executionTime": {
"type": "string",
"description": "Elapsed time in seconds, with an s suffix."
}
},
"description": "Operation result envelope."
},
"annotations": {
"readOnlyHint": true,
"openWorldHint": true,
"idempotentHint": true,
"destructiveHint": false
}
}
The title clearly communicates the tool’s action and subject. Keep it concise.
Description91/100
Identify backlink and competitor-citation outreach opportunities from AI-search citations. It classifies cited domains as link insertion, missing-brand, or competitor replacement opportunities, scrapes the cited page, extracts an anchor phrase, and shortlists up to 20 relevant published pages from project knowledge, and evaluates the best backlink destination. Processes up to three citations concurrently with live progress in agent chat.
Analyzes existing citation evidence and can use metered classification. Recommendations are outreach candidates, not verified backlinks or sent messages; use get_citations for source evidence.
The description explains the capability, when to use it, and what to expect.
Inputs86/100
Remove validation rules already expressed in this field’s schema; describe its meaning and usage instead.
startDate
Start date in ISO format (YYYY-MM-DD). If not provided, defaults to 30 days ago.
Remove validation rules already expressed in this field’s schema; describe its meaning and usage instead.
endDate
End date in ISO format (YYYY-MM-DD). If not provided, defaults to today.
Remove validation rules already expressed in this field’s schema; describe its meaning and usage instead.
models
Optional AI search engine filters. Omit or pass an empty array to include all models.
Remove validation rules already expressed in this field’s schema; describe its meaning and usage instead.
maxCitations
Maximum number of unique cited pages to analyze (default 50, max 200).
Remove validation rules already expressed in this field’s schema; describe its meaning and usage instead.
perWebsiteLimit
Maximum opportunities returned per cited website/domain (default 3, max 20).
Remove validation rules already expressed in this field’s schema; describe its meaning and usage instead.
minConfidence
Minimum target-match confidence required to mark an opportunity as actionable (default 0.78).
Remove validation rules already expressed in this field’s schema; describe its meaning and usage instead.
sourceUrl
Optional blog/article URL to classify directly as an outreach opportunity, including competitor mentions found on the page.
Clear enough to supply this argument.
includeNonActionable
When true (default), include non-actionable citations with reasons. When false, return actionable outreach opportunities only.
Clear enough to supply this argument.
projectId
Atomic project ID from list_projects. Omit to use the configured project; if asked to choose, select one of the accessible returned IDs.
Clear enough to supply this argument.
context
Short purpose of this call for the activity log. Exclude personal data and private source content.
Clear enough to supply this argument.
llm_model
Use the exact model ID executing this call, from runtime/system context, for usage attribution. Supply it on every Atomic MCP tool call, including discovery and feedback, and update it if the model changes. Use the model ID rather than the client app name. If unavailable, omit it; never guess or ask the user.
Align the output schema with the tool’s documented result.
View output schema
{
"type": "object",
"required": [
"success"
],
"properties": {
"url": {
"type": "string",
"description": "Link for resolving the failure or completing the operation."
},
"data": {
"type": "object",
"required": [
"websites",
"summary"
],
"properties": {
"summary": {
"type": "object",
"required": [
"processedCitations",
"returnedOpportunities",
"returnedWebsites",
"actionableReturned",
"minConfidence"
],
"properties": {
"minConfidence": {
"type": "number"
},
"returnedWebsites": {
"type": "number"
},
"actionableReturned": {
"type": "number"
},
"processedCitations": {
"type": "number"
},
"returnedOpportunities": {
"type": "number"
}
}
},
"websites": {
"type": "array",
"items": {
"type": "object",
"required": [
"website",
"totalCitations",
"actionableCitations",
"opportunities"
],
"properties": {
"website": {
"type": "string"
},
"opportunities": {
"type": "array",
"items": {
"type": "object",
"description": "Nested operation-specific fields."
}
},
"totalCitations": {
"type": "number"
},
"actionableCitations": {
"type": "number"
}
}
}
}
},
"description": "Operation data; optional fields may be absent."
},
"error": {
"type": "string",
"description": "Why the operation failed."
},
"details": {
"type": "object",
"description": "Diagnostics keyed by errorCode."
},
"message": {
"type": "string",
"description": "Outcome or recovery instructions. Project selection means no action ran."
},
"success": {
"type": "boolean",
"description": "Operation success; on false inspect error/errorCode."
},
"upgrade": {
"type": "object",
"description": "Plan-upgrade guidance for an unavailable capability."
},
"category": {
"type": "string",
"description": "Failure category, such as invalid_input or plan_required."
},
"expected": {
"type": "boolean",
"description": "Whether this is an anticipated access, input, plan or state failure."
},
"projects": {
"type": "array",
"items": {
"type": "object",
"properties": {
"id": {
"type": "number",
"description": "Project ID for projectId."
},
"name": {
"type": "string",
"description": "Project name."
}
},
"description": "Accessible project."
},
"description": "Accessible project choices. Select a projectId and retry."
},
"errorCode": {
"type": "string",
"description": "Failure code for recovery."
},
"retryable": {
"type": "boolean",
"description": "Whether an unchanged request can be retried."
},
"statusCode": {
"type": "number",
"description": "HTTP-style failure status."
},
"executionTime": {
"type": "string",
"description": "Elapsed time in seconds, with an s suffix."
}
},
"description": "Operation result envelope."
}
Original tool metadata
{
"name": "get_citation_backlink_opportunities",
"title": "Get citation backlink opportunities",
"description": "Identify backlink and competitor-citation outreach opportunities from AI-search citations. It classifies cited domains as link insertion, missing-brand, or competitor replacement opportunities, scrapes the cited page, extracts an anchor phrase, and shortlists up to 20 relevant published pages from project knowledge, and evaluates the best backlink destination. Processes up to three citations concurrently with live progress in agent chat.\n\nAnalyzes existing citation evidence and can use metered classification. Recommendations are outreach candidates, not verified backlinks or sent messages; use get_citations for source evidence.",
"inputSchema": {
"type": "object",
"required": [],
"properties": {
"models": {
"type": "array",
"items": {
"enum": [
"chatgpt",
"ai_mode",
"perplexity",
"copilot",
"ai_overview",
"naver",
"wenxin",
"deepseek",
"gemini",
"claude",
"grok"
],
"type": "string"
},
"description": "Optional AI search engine filters. Omit or pass an empty array to include all models.",
"uniqueItems": true
},
"context": {
"type": "string",
"maxLength": 120,
"description": "Short purpose of this call for the activity log. Exclude personal data and private source content."
},
"endDate": {
"type": "string",
"description": "End date in ISO format (YYYY-MM-DD). If not provided, defaults to today."
},
"llm_model": {
"type": "string",
"maxLength": 128,
"description": "Use the exact model ID executing this call, from runtime/system context, for usage attribution. Supply it on every Atomic MCP tool call, including discovery and feedback, and update it if the model changes. Use the model ID rather than the client app name. If unavailable, omit it; never guess or ask the user."
},
"projectId": {
"type": "number",
"description": "Atomic project ID from list_projects. Omit to use the configured project; if asked to choose, select one of the accessible returned IDs."
},
"sourceUrl": {
"type": "string",
"description": "Optional blog/article URL to classify directly as an outreach opportunity, including competitor mentions found on the page."
},
"startDate": {
"type": "string",
"description": "Start date in ISO format (YYYY-MM-DD). If not provided, defaults to 30 days ago."
},
"maxCitations": {
"type": "number",
"maximum": 200,
"minimum": 1,
"description": "Maximum number of unique cited pages to analyze (default 50, max 200)."
},
"minConfidence": {
"type": "number",
"maximum": 1,
"minimum": 0,
"description": "Minimum target-match confidence required to mark an opportunity as actionable (default 0.78)."
},
"perWebsiteLimit": {
"type": "number",
"maximum": 20,
"minimum": 1,
"description": "Maximum opportunities returned per cited website/domain (default 3, max 20)."
},
"includeNonActionable": {
"type": "boolean",
"description": "When true (default), include non-actionable citations with reasons. When false, return actionable outreach opportunities only."
}
}
},
"outputSchema": {
"type": "object",
"required": [
"success"
],
"properties": {
"url": {
"type": "string",
"description": "Link for resolving the failure or completing the operation."
},
"data": {
"type": "object",
"required": [
"websites",
"summary"
],
"properties": {
"summary": {
"type": "object",
"required": [
"processedCitations",
"returnedOpportunities",
"returnedWebsites",
"actionableReturned",
"minConfidence"
],
"properties": {
"minConfidence": {
"type": "number"
},
"returnedWebsites": {
"type": "number"
},
"actionableReturned": {
"type": "number"
},
"processedCitations": {
"type": "number"
},
"returnedOpportunities": {
"type": "number"
}
}
},
"websites": {
"type": "array",
"items": {
"type": "object",
"required": [
"website",
"totalCitations",
"actionableCitations",
"opportunities"
],
"properties": {
"website": {
"type": "string"
},
"opportunities": {
"type": "array",
"items": {
"type": "object",
"description": "Nested operation-specific fields."
}
},
"totalCitations": {
"type": "number"
},
"actionableCitations": {
"type": "number"
}
}
}
}
},
"description": "Operation data; optional fields may be absent."
},
"error": {
"type": "string",
"description": "Why the operation failed."
},
"details": {
"type": "object",
"description": "Diagnostics keyed by errorCode."
},
"message": {
"type": "string",
"description": "Outcome or recovery instructions. Project selection means no action ran."
},
"success": {
"type": "boolean",
"description": "Operation success; on false inspect error/errorCode."
},
"upgrade": {
"type": "object",
"description": "Plan-upgrade guidance for an unavailable capability."
},
"category": {
"type": "string",
"description": "Failure category, such as invalid_input or plan_required."
},
"expected": {
"type": "boolean",
"description": "Whether this is an anticipated access, input, plan or state failure."
},
"projects": {
"type": "array",
"items": {
"type": "object",
"properties": {
"id": {
"type": "number",
"description": "Project ID for projectId."
},
"name": {
"type": "string",
"description": "Project name."
}
},
"description": "Accessible project."
},
"description": "Accessible project choices. Select a projectId and retry."
},
"errorCode": {
"type": "string",
"description": "Failure code for recovery."
},
"retryable": {
"type": "boolean",
"description": "Whether an unchanged request can be retried."
},
"statusCode": {
"type": "number",
"description": "HTTP-style failure status."
},
"executionTime": {
"type": "string",
"description": "Elapsed time in seconds, with an s suffix."
}
},
"description": "Operation result envelope."
},
"annotations": {
"readOnlyHint": false,
"openWorldHint": true,
"idempotentHint": false,
"destructiveHint": false
}
}
The title clearly communicates the tool’s action and subject. Keep it concise.
Description94/100
Get citations data for a project. Useful for analyzing where your brand is being cited in AI search results, tracking brand mentions, understanding citation sources, and identifying backlink opportunities. Returns citations with URL, domain, prompt, model, type, sentiment, and brand information.
Reads recorded citation evidence, not live backlink verification. Use citation backlink opportunities for prioritization; do not present a cited page as an acquired link.
The description explains the capability, when to use it, and what to expect.
Inputs78/100
Remove validation rules already expressed in this field’s schema; describe its meaning and usage instead.
page
Page number (1-based). Default: 1. Use with limit for pagination.
Remove validation rules already expressed in this field’s schema; describe its meaning and usage instead.
limit
Number of items per page. Default: 10, Max: 100. Use with page for pagination.
Remove validation rules already expressed in this field’s schema; describe its meaning and usage instead.
search
Search query to filter results (searches in relevant text fields)
Explain the meaning of this value, not just its name.
sortBy
Field name to sort by (e.g., "updatedAt", "title", "clicks")
Explain the meaning of this value, not just its name.
sortOrder
Sort order: "asc" for ascending, "desc" for descending. Default: "desc"
Remove validation rules already expressed in this field’s schema; describe its meaning and usage instead.
startDate
Start date in ISO format (YYYY-MM-DD). If not provided, defaults to 30 days ago.
Clear enough to supply this argument.
endDate
End date in ISO format (YYYY-MM-DD). If not provided, defaults to today.
Remove validation rules already expressed in this field’s schema; describe its meaning and usage instead.
projectId
Atomic project ID from list_projects. Omit to use the configured project; if asked to choose, select one of the accessible returned IDs.
Clear enough to supply this argument.
context
Short purpose of this call for the activity log. Exclude personal data and private source content.
Clear enough to supply this argument.
llm_model
Use the exact model ID executing this call, from runtime/system context, for usage attribution. Supply it on every Atomic MCP tool call, including discovery and feedback, and update it if the model changes. Use the model ID rather than the client app name. If unavailable, omit it; never guess or ask the user.
Remove validation rules already expressed in this field’s schema; describe its meaning and usage instead.
{
"type": "object",
"required": [
"success"
],
"properties": {
"url": {
"type": "string",
"description": "Link for resolving the failure or completing the operation."
},
"data": {
"type": "object",
"required": [
"data",
"total",
"page",
"limit",
"totalPages",
"nextPage"
],
"properties": {
"data": {
"type": "array",
"items": {
"type": "object",
"required": [
"id",
"url",
"domain",
"prompt",
"model",
"type",
"createdAt"
],
"properties": {
"id": {
"type": "number",
"description": "Identifier of this returned resource. Use it for subsequent reads or edits of the same resource."
},
"url": {
"type": "string",
"description": "URL returned for this resource or operation."
},
"type": {
"type": "string",
"description": "Kind of the returned item; determines how its operation-specific fields should be interpreted."
},
"brand": {
"type": "string"
},
"model": {
"type": "string",
"description": "Model identifier used for the reported generation or AI-search run."
},
"domain": {
"type": "string",
"description": "Website domain associated with this result."
},
"prompt": {
"type": "string",
"description": "Prompt text used for the tracked or tested AI-search run."
},
"position": {
"type": "number",
"description": "Saved ordering position or visual editor coordinates for this item."
},
"createdAt": {
"type": "string",
"format": "date-time",
"description": "Date and time this record was created, serialized as ISO 8601."
},
"sentiment": {
"enum": [
"positive",
"neutral",
"negative"
],
"type": "string"
}
}
},
"description": "Result items or operation data inside this returned payload. Pagination fields describe only this result page."
},
"page": {
"type": "number",
"description": "Page number represented by these items."
},
"limit": {
"type": "number",
"description": "Maximum number of items requested for this page."
},
"total": {
"type": "number",
"description": "Total number of matching items across all result pages."
},
"nextPage": {
"anyOf": [
{
"type": "null"
},
{
"type": "number"
}
],
"description": "Next page to request when more results exist; use the returned value rather than constructing a cursor."
},
"totalPages": {
"type": "number",
"description": "Total number of result pages for the current filter and page size."
}
},
"description": "Operation data; optional fields may be absent."
},
"error": {
"type": "string",
"description": "Why the operation failed."
},
"details": {
"type": "object",
"description": "Diagnostics keyed by errorCode."
},
"message": {
"type": "string",
"description": "Outcome or recovery instructions. Project selection means no action ran."
},
"success": {
"type": "boolean",
"description": "Operation success; on false inspect error/errorCode."
},
"upgrade": {
"type": "object",
"description": "Plan-upgrade guidance for an unavailable capability."
},
"category": {
"type": "string",
"description": "Failure category, such as invalid_input or plan_required."
},
"expected": {
"type": "boolean",
"description": "Whether this is an anticipated access, input, plan or state failure."
},
"projects": {
"type": "array",
"items": {
"type": "object",
"properties": {
"id": {
"type": "number",
"description": "Project ID for projectId."
},
"name": {
"type": "string",
"description": "Project name."
}
},
"description": "Accessible project."
},
"description": "Accessible project choices. Select a projectId and retry."
},
"errorCode": {
"type": "string",
"description": "Failure code for recovery."
},
"retryable": {
"type": "boolean",
"description": "Whether an unchanged request can be retried."
},
"statusCode": {
"type": "number",
"description": "HTTP-style failure status."
},
"executionTime": {
"type": "string",
"description": "Elapsed time in seconds, with an s suffix."
}
},
"description": "Operation result envelope."
}
Original tool metadata
{
"name": "get_citations",
"title": "Get citations",
"description": "Get citations data for a project. Useful for analyzing where your brand is being cited in AI search results, tracking brand mentions, understanding citation sources, and identifying backlink opportunities. Returns citations with URL, domain, prompt, model, type, sentiment, and brand information.\n\nReads recorded citation evidence, not live backlink verification. Use citation backlink opportunities for prioritization; do not present a cited page as an acquired link.",
"inputSchema": {
"type": "object",
"required": [],
"properties": {
"page": {
"type": "number",
"minimum": 1,
"description": "Page number (1-based). Default: 1. Use with limit for pagination."
},
"limit": {
"type": "number",
"default": 10,
"maximum": 100,
"minimum": 1,
"description": "Number of items per page. Default: 10, Max: 100. Use with page for pagination."
},
"search": {
"type": "string",
"description": "Search query to filter results (searches in relevant text fields)"
},
"sortBy": {
"type": "string",
"description": "Field name to sort by (e.g., \"updatedAt\", \"title\", \"clicks\")"
},
"context": {
"type": "string",
"maxLength": 120,
"description": "Short purpose of this call for the activity log. Exclude personal data and private source content."
},
"endDate": {
"type": "string",
"description": "End date in ISO format (YYYY-MM-DD). If not provided, defaults to today."
},
"llm_model": {
"type": "string",
"maxLength": 128,
"description": "Use the exact model ID executing this call, from runtime/system context, for usage attribution. Supply it on every Atomic MCP tool call, including discovery and feedback, and update it if the model changes. Use the model ID rather than the client app name. If unavailable, omit it; never guess or ask the user."
},
"projectId": {
"type": "number",
"description": "Atomic project ID from list_projects. Omit to use the configured project; if asked to choose, select one of the accessible returned IDs."
},
"sortOrder": {
"enum": [
"asc",
"desc"
],
"type": "string",
"default": "desc",
"description": "Sort order: \"asc\" for ascending, \"desc\" for descending. Default: \"desc\""
},
"startDate": {
"type": "string",
"description": "Start date in ISO format (YYYY-MM-DD). If not provided, defaults to 30 days ago."
}
}
},
"outputSchema": {
"type": "object",
"required": [
"success"
],
"properties": {
"url": {
"type": "string",
"description": "Link for resolving the failure or completing the operation."
},
"data": {
"type": "object",
"required": [
"data",
"total",
"page",
"limit",
"totalPages",
"nextPage"
],
"properties": {
"data": {
"type": "array",
"items": {
"type": "object",
"required": [
"id",
"url",
"domain",
"prompt",
"model",
"type",
"createdAt"
],
"properties": {
"id": {
"type": "number",
"description": "Identifier of this returned resource. Use it for subsequent reads or edits of the same resource."
},
"url": {
"type": "string",
"description": "URL returned for this resource or operation."
},
"type": {
"type": "string",
"description": "Kind of the returned item; determines how its operation-specific fields should be interpreted."
},
"brand": {
"type": "string"
},
"model": {
"type": "string",
"description": "Model identifier used for the reported generation or AI-search run."
},
"domain": {
"type": "string",
"description": "Website domain associated with this result."
},
"prompt": {
"type": "string",
"description": "Prompt text used for the tracked or tested AI-search run."
},
"position": {
"type": "number",
"description": "Saved ordering position or visual editor coordinates for this item."
},
"createdAt": {
"type": "string",
"format": "date-time",
"description": "Date and time this record was created, serialized as ISO 8601."
},
"sentiment": {
"enum": [
"positive",
"neutral",
"negative"
],
"type": "string"
}
}
},
"description": "Result items or operation data inside this returned payload. Pagination fields describe only this result page."
},
"page": {
"type": "number",
"description": "Page number represented by these items."
},
"limit": {
"type": "number",
"description": "Maximum number of items requested for this page."
},
"total": {
"type": "number",
"description": "Total number of matching items across all result pages."
},
"nextPage": {
"anyOf": [
{
"type": "null"
},
{
"type": "number"
}
],
"description": "Next page to request when more results exist; use the returned value rather than constructing a cursor."
},
"totalPages": {
"type": "number",
"description": "Total number of result pages for the current filter and page size."
}
},
"description": "Operation data; optional fields may be absent."
},
"error": {
"type": "string",
"description": "Why the operation failed."
},
"details": {
"type": "object",
"description": "Diagnostics keyed by errorCode."
},
"message": {
"type": "string",
"description": "Outcome or recovery instructions. Project selection means no action ran."
},
"success": {
"type": "boolean",
"description": "Operation success; on false inspect error/errorCode."
},
"upgrade": {
"type": "object",
"description": "Plan-upgrade guidance for an unavailable capability."
},
"category": {
"type": "string",
"description": "Failure category, such as invalid_input or plan_required."
},
"expected": {
"type": "boolean",
"description": "Whether this is an anticipated access, input, plan or state failure."
},
"projects": {
"type": "array",
"items": {
"type": "object",
"properties": {
"id": {
"type": "number",
"description": "Project ID for projectId."
},
"name": {
"type": "string",
"description": "Project name."
}
},
"description": "Accessible project."
},
"description": "Accessible project choices. Select a projectId and retry."
},
"errorCode": {
"type": "string",
"description": "Failure code for recovery."
},
"retryable": {
"type": "boolean",
"description": "Whether an unchanged request can be retried."
},
"statusCode": {
"type": "number",
"description": "HTTP-style failure status."
},
"executionTime": {
"type": "string",
"description": "Elapsed time in seconds, with an s suffix."
}
},
"description": "Operation result envelope."
},
"annotations": {
"readOnlyHint": true,
"openWorldHint": true,
"idempotentHint": true,
"destructiveHint": false
}
}
The title clearly communicates the tool’s action and subject. Keep it concise.
Description95/100
Get detailed content-gap classification for one tracked competitor, including each competitor URL, matched project URL when covered, reason, confidence, category, and recent scan summaries.
Use competitorId from get_project_competitors for one competitor's URL-level coverage. get_competitor_content_gaps lists the cross-competitor overview; neither call rewrites tracked pages.
The description explains the capability, when to use it, and what to expect.
Inputs88/100
Remove validation rules already expressed in this field’s schema; describe its meaning and usage instead.
competitorId
Tracked competitor ID from get_project_competitors; pending suggestions are not tracked competitor records.
Clear enough to supply this argument.
projectId
Atomic project ID from list_projects. Omit to use the configured project; if asked to choose, select one of the accessible returned IDs.
Clear enough to supply this argument.
context
Short purpose of this call for the activity log. Exclude personal data and private source content.
Remove validation rules already expressed in this field’s schema; describe its meaning and usage instead.
llm_model
Use the exact model ID executing this call, from runtime/system context, for usage attribution. Supply it on every Atomic MCP tool call, including discovery and feedback, and update it if the model changes. Use the model ID rather than the client app name. If unavailable, omit it; never guess or ask the user.
Remove validation rules already expressed in this field’s schema; describe its meaning and usage instead.
The title clearly communicates the tool’s action and subject. Keep it concise.
Description93/100
List competitor pages across the current project and show whether each page is missing, covered by an existing project URL, or not classified yet. Supports filtering by competitor, coverage, sitemap change type, search, and pagination.
Reads the saved coverage overview across competitors. Use get_competitor_content_gap_details for a selected competitor's evidence; adding tracking is a separate operation.
The description explains the capability, when to use it, and what to expect.
Inputs82/100
Explain the meaning of this value, not just its name.
competitorId
Tracked competitor ID from get_project_competitors; pending suggestions are not tracked competitor records.
Clear enough to supply this argument.
coverage
Optional coverage filter. Use missing for competitor pages without an equivalent project page, covered for matched project pages, and unclassified when no coverage classification exists yet.
Clear enough to supply this argument.
changeType
Optional sitemap change type filter.
Explain the meaning of this value, not just its name.
page
Page number (1-based). Default: 1. Use with limit for pagination.
Remove validation rules already expressed in this field’s schema; describe its meaning and usage instead.
limit
Number of items per page. Default: 10, Max: 100. Use with page for pagination.
Remove validation rules already expressed in this field’s schema; describe its meaning and usage instead.
search
Search query to filter results (searches in relevant text fields)
Explain the meaning of this value, not just its name.
sortBy
Field name to sort by (e.g., "updatedAt", "title", "clicks")
Explain the meaning of this value, not just its name.
sortOrder
Sort order: "asc" for ascending, "desc" for descending. Default: "desc"
Clear enough to supply this argument.
projectId
Atomic project ID from list_projects. Omit to use the configured project; if asked to choose, select one of the accessible returned IDs.
Clear enough to supply this argument.
context
Short purpose of this call for the activity log. Exclude personal data and private source content.
Clear enough to supply this argument.
llm_model
Use the exact model ID executing this call, from runtime/system context, for usage attribution. Supply it on every Atomic MCP tool call, including discovery and feedback, and update it if the model changes. Use the model ID rather than the client app name. If unavailable, omit it; never guess or ask the user.
Declare the result fields and their types in the output schema.
View output schema
{
"type": "object",
"required": [
"success"
],
"properties": {
"url": {
"type": "string",
"description": "Link for resolving the failure or completing the operation."
},
"data": {
"type": "object",
"required": [
"projectId",
"rows"
],
"properties": {
"rows": {
"type": "object",
"required": [
"data",
"total",
"page",
"limit",
"totalPages",
"nextPage"
],
"properties": {
"data": {
"type": "array",
"items": {
"type": "object",
"description": "Nested operation-specific fields."
},
"description": "Result items or operation data inside this returned payload. Pagination fields describe only this result page."
},
"page": {
"type": "number",
"description": "Page number represented by these items."
},
"limit": {
"type": "number",
"description": "Maximum number of items requested for this page."
},
"total": {
"type": "number",
"description": "Total number of matching items across all result pages."
},
"nextPage": {
"anyOf": [
{
"type": "null"
},
{
"type": "number"
}
],
"description": "Next page to request when more results exist; use the returned value rather than constructing a cursor."
},
"totalPages": {
"type": "number",
"description": "Total number of result pages for the current filter and page size."
}
},
"description": "Rows returned for the selected sheet, table or reporting query."
},
"projectId": {
"type": "number",
"description": "Atomic project that owns this resource."
}
},
"description": "Operation data; optional fields may be absent."
},
"error": {
"type": "string",
"description": "Why the operation failed."
},
"details": {
"type": "object",
"description": "Diagnostics keyed by errorCode."
},
"message": {
"type": "string",
"description": "Outcome or recovery instructions. Project selection means no action ran."
},
"success": {
"type": "boolean",
"description": "Operation success; on false inspect error/errorCode."
},
"upgrade": {
"type": "object",
"description": "Plan-upgrade guidance for an unavailable capability."
},
"category": {
"type": "string",
"description": "Failure category, such as invalid_input or plan_required."
},
"expected": {
"type": "boolean",
"description": "Whether this is an anticipated access, input, plan or state failure."
},
"projects": {
"type": "array",
"items": {
"type": "object",
"properties": {
"id": {
"type": "number",
"description": "Project ID for projectId."
},
"name": {
"type": "string",
"description": "Project name."
}
},
"description": "Accessible project."
},
"description": "Accessible project choices. Select a projectId and retry."
},
"errorCode": {
"type": "string",
"description": "Failure code for recovery."
},
"retryable": {
"type": "boolean",
"description": "Whether an unchanged request can be retried."
},
"statusCode": {
"type": "number",
"description": "HTTP-style failure status."
},
"executionTime": {
"type": "string",
"description": "Elapsed time in seconds, with an s suffix."
}
},
"description": "Operation result envelope."
}
Original tool metadata
{
"name": "get_competitor_content_gaps",
"title": "Get competitor content gaps",
"description": "List competitor pages across the current project and show whether each page is missing, covered by an existing project URL, or not classified yet. Supports filtering by competitor, coverage, sitemap change type, search, and pagination.\n\nReads the saved coverage overview across competitors. Use get_competitor_content_gap_details for a selected competitor's evidence; adding tracking is a separate operation.",
"inputSchema": {
"type": "object",
"required": [],
"properties": {
"page": {
"type": "number",
"minimum": 1,
"description": "Page number (1-based). Default: 1. Use with limit for pagination."
},
"limit": {
"type": "number",
"default": 10,
"maximum": 100,
"minimum": 1,
"description": "Number of items per page. Default: 10, Max: 100. Use with page for pagination."
},
"search": {
"type": "string",
"description": "Search query to filter results (searches in relevant text fields)"
},
"sortBy": {
"type": "string",
"description": "Field name to sort by (e.g., \"updatedAt\", \"title\", \"clicks\")"
},
"context": {
"type": "string",
"maxLength": 120,
"description": "Short purpose of this call for the activity log. Exclude personal data and private source content."
},
"coverage": {
"enum": [
"covered",
"missing",
"unclassified"
],
"type": "string",
"description": "Optional coverage filter. Use missing for competitor pages without an equivalent project page, covered for matched project pages, and unclassified when no coverage classification exists yet."
},
"llm_model": {
"type": "string",
"maxLength": 128,
"description": "Use the exact model ID executing this call, from runtime/system context, for usage attribution. Supply it on every Atomic MCP tool call, including discovery and feedback, and update it if the model changes. Use the model ID rather than the client app name. If unavailable, omit it; never guess or ask the user."
},
"projectId": {
"type": "number",
"description": "Atomic project ID from list_projects. Omit to use the configured project; if asked to choose, select one of the accessible returned IDs."
},
"sortOrder": {
"enum": [
"asc",
"desc"
],
"type": "string",
"default": "desc",
"description": "Sort order: \"asc\" for ascending, \"desc\" for descending. Default: \"desc\""
},
"changeType": {
"enum": [
"ADDED",
"REMOVED",
"MODIFIED",
"UNCHANGED"
],
"type": "string",
"description": "Optional sitemap change type filter."
},
"competitorId": {
"type": "number",
"description": "Tracked competitor ID from get_project_competitors; pending suggestions are not tracked competitor records."
}
}
},
"outputSchema": {
"type": "object",
"required": [
"success"
],
"properties": {
"url": {
"type": "string",
"description": "Link for resolving the failure or completing the operation."
},
"data": {
"type": "object",
"required": [
"projectId",
"rows"
],
"properties": {
"rows": {
"type": "object",
"required": [
"data",
"total",
"page",
"limit",
"totalPages",
"nextPage"
],
"properties": {
"data": {
"type": "array",
"items": {
"type": "object",
"description": "Nested operation-specific fields."
},
"description": "Result items or operation data inside this returned payload. Pagination fields describe only this result page."
},
"page": {
"type": "number",
"description": "Page number represented by these items."
},
"limit": {
"type": "number",
"description": "Maximum number of items requested for this page."
},
"total": {
"type": "number",
"description": "Total number of matching items across all result pages."
},
"nextPage": {
"anyOf": [
{
"type": "null"
},
{
"type": "number"
}
],
"description": "Next page to request when more results exist; use the returned value rather than constructing a cursor."
},
"totalPages": {
"type": "number",
"description": "Total number of result pages for the current filter and page size."
}
},
"description": "Rows returned for the selected sheet, table or reporting query."
},
"projectId": {
"type": "number",
"description": "Atomic project that owns this resource."
}
},
"description": "Operation data; optional fields may be absent."
},
"error": {
"type": "string",
"description": "Why the operation failed."
},
"details": {
"type": "object",
"description": "Diagnostics keyed by errorCode."
},
"message": {
"type": "string",
"description": "Outcome or recovery instructions. Project selection means no action ran."
},
"success": {
"type": "boolean",
"description": "Operation success; on false inspect error/errorCode."
},
"upgrade": {
"type": "object",
"description": "Plan-upgrade guidance for an unavailable capability."
},
"category": {
"type": "string",
"description": "Failure category, such as invalid_input or plan_required."
},
"expected": {
"type": "boolean",
"description": "Whether this is an anticipated access, input, plan or state failure."
},
"projects": {
"type": "array",
"items": {
"type": "object",
"properties": {
"id": {
"type": "number",
"description": "Project ID for projectId."
},
"name": {
"type": "string",
"description": "Project name."
}
},
"description": "Accessible project."
},
"description": "Accessible project choices. Select a projectId and retry."
},
"errorCode": {
"type": "string",
"description": "Failure code for recovery."
},
"retryable": {
"type": "boolean",
"description": "Whether an unchanged request can be retried."
},
"statusCode": {
"type": "number",
"description": "HTTP-style failure status."
},
"executionTime": {
"type": "string",
"description": "Elapsed time in seconds, with an s suffix."
}
},
"description": "Operation result envelope."
},
"annotations": {
"readOnlyHint": true,
"openWorldHint": false,
"idempotentHint": true,
"destructiveHint": false
}
}
The title clearly communicates the tool’s action and subject. Keep it concise.
Description96/100
Get a specific saved content item by ID. This retrieves content that has been created and saved in the system, not arbitrary website content. Useful for retrieving the full content (in markdown format) of an existing saved content piece. Returns the content in markdown format for easy editing, all available versions with their IDs, and a direct link (editorUrl) to open the content in the editor. IMPORTANT: Always include the editorUrl as a clickable markdown link in your response so users can open the content in a new tab. Format: [Open in Editor](editorUrl). Use the version IDs with update_content_version to edit specific versions.
The description explains the capability, when to use it, and what to expect.
Inputs94/100
Remove validation rules already expressed in this field’s schema; describe its meaning and usage instead.
contentId
The ID of the saved content to retrieve
Clear enough to supply this argument.
projectId
Atomic project ID from list_projects. Omit to use the configured project; if asked to choose, select one of the accessible returned IDs.
Clear enough to supply this argument.
context
Short purpose of this call for the activity log. Exclude personal data and private source content.
Remove validation rules already expressed in this field’s schema; describe its meaning and usage instead.
llm_model
Use the exact model ID executing this call, from runtime/system context, for usage attribution. Supply it on every Atomic MCP tool call, including discovery and feedback, and update it if the model changes. Use the model ID rather than the client app name. If unavailable, omit it; never guess or ask the user.
Align the output schema with the tool’s documented result.
View output schema
{
"type": "object",
"required": [
"success"
],
"properties": {
"url": {
"type": "string",
"description": "Link for resolving the failure or completing the operation."
},
"data": {
"type": "object",
"required": [
"id",
"title",
"fullDescription",
"metaDescription",
"imageUrl",
"keyword",
"status",
"wordCount",
"seoScore",
"content",
"versions",
"editorUrl"
],
"properties": {
"id": {
"type": "string",
"description": "Identifier of this returned resource. Use it for subsequent reads or edits of the same resource."
},
"url": {
"type": "string",
"description": "URL returned for this resource or operation."
},
"title": {
"type": "string",
"description": "Display or content title of this returned item."
},
"status": {
"type": "string",
"description": "Current saved or execution state reported by the operation."
},
"content": {
"type": "string",
"description": "Returned content body in the format described by the containing resource."
},
"keyword": {
"type": "string"
},
"imageUrl": {
"type": "string",
"description": "URL of the generated, uploaded or selected image."
},
"seoScore": {
"type": "number",
"description": "Saved SEO quality score for this content item."
},
"versions": {
"type": "array",
"items": {
"type": "object",
"required": [
"id",
"versionNumber",
"title",
"isActive"
],
"properties": {
"id": {
"type": "number",
"description": "Identifier of this returned resource. Use it for subsequent reads or edits of the same resource."
},
"title": {
"type": "string",
"description": "Display or content title of this returned item."
},
"isActive": {
"type": "boolean",
"description": "Whether this saved configuration is enabled."
},
"versionNumber": {
"type": "number"
}
}
}
},
"editorUrl": {
"type": "string",
"description": "Atomic editor URL for inspecting or editing this content item."
},
"updatedAt": {
"type": "string",
"format": "date-time",
"description": "Date and time this record was last updated, serialized as ISO 8601."
},
"wordCount": {
"type": "number",
"description": "Number of words in this content item."
},
"fullDescription": {
"type": "string",
"description": "Saved full content body or description."
},
"metaDescription": {
"type": "string",
"description": "Saved page meta description used in search snippets."
}
},
"description": "Operation data; optional fields may be absent."
},
"error": {
"type": "string",
"description": "Why the operation failed."
},
"details": {
"type": "object",
"description": "Diagnostics keyed by errorCode."
},
"message": {
"type": "string",
"description": "Outcome or recovery instructions. Project selection means no action ran."
},
"success": {
"type": "boolean",
"description": "Operation success; on false inspect error/errorCode."
},
"upgrade": {
"type": "object",
"description": "Plan-upgrade guidance for an unavailable capability."
},
"category": {
"type": "string",
"description": "Failure category, such as invalid_input or plan_required."
},
"expected": {
"type": "boolean",
"description": "Whether this is an anticipated access, input, plan or state failure."
},
"projects": {
"type": "array",
"items": {
"type": "object",
"properties": {
"id": {
"type": "number",
"description": "Project ID for projectId."
},
"name": {
"type": "string",
"description": "Project name."
}
},
"description": "Accessible project."
},
"description": "Accessible project choices. Select a projectId and retry."
},
"errorCode": {
"type": "string",
"description": "Failure code for recovery."
},
"retryable": {
"type": "boolean",
"description": "Whether an unchanged request can be retried."
},
"statusCode": {
"type": "number",
"description": "HTTP-style failure status."
},
"executionTime": {
"type": "string",
"description": "Elapsed time in seconds, with an s suffix."
}
},
"description": "Operation result envelope."
}
Original tool metadata
{
"name": "get_content_by_id",
"title": "Get content by ID",
"description": "Get a specific saved content item by ID. This retrieves content that has been created and saved in the system, not arbitrary website content. Useful for retrieving the full content (in markdown format) of an existing saved content piece. Returns the content in markdown format for easy editing, all available versions with their IDs, and a direct link (editorUrl) to open the content in the editor. IMPORTANT: Always include the editorUrl as a clickable markdown link in your response so users can open the content in a new tab. Format: [Open in Editor](editorUrl). Use the version IDs with update_content_version to edit specific versions.",
"inputSchema": {
"type": "object",
"required": [
"contentId"
],
"properties": {
"context": {
"type": "string",
"maxLength": 120,
"description": "Short purpose of this call for the activity log. Exclude personal data and private source content."
},
"contentId": {
"type": "string",
"description": "The ID of the saved content to retrieve"
},
"llm_model": {
"type": "string",
"maxLength": 128,
"description": "Use the exact model ID executing this call, from runtime/system context, for usage attribution. Supply it on every Atomic MCP tool call, including discovery and feedback, and update it if the model changes. Use the model ID rather than the client app name. If unavailable, omit it; never guess or ask the user."
},
"projectId": {
"type": "number",
"description": "Atomic project ID from list_projects. Omit to use the configured project; if asked to choose, select one of the accessible returned IDs."
}
}
},
"outputSchema": {
"type": "object",
"required": [
"success"
],
"properties": {
"url": {
"type": "string",
"description": "Link for resolving the failure or completing the operation."
},
"data": {
"type": "object",
"required": [
"id",
"title",
"fullDescription",
"metaDescription",
"imageUrl",
"keyword",
"status",
"wordCount",
"seoScore",
"content",
"versions",
"editorUrl"
],
"properties": {
"id": {
"type": "string",
"description": "Identifier of this returned resource. Use it for subsequent reads or edits of the same resource."
},
"url": {
"type": "string",
"description": "URL returned for this resource or operation."
},
"title": {
"type": "string",
"description": "Display or content title of this returned item."
},
"status": {
"type": "string",
"description": "Current saved or execution state reported by the operation."
},
"content": {
"type": "string",
"description": "Returned content body in the format described by the containing resource."
},
"keyword": {
"type": "string"
},
"imageUrl": {
"type": "string",
"description": "URL of the generated, uploaded or selected image."
},
"seoScore": {
"type": "number",
"description": "Saved SEO quality score for this content item."
},
"versions": {
"type": "array",
"items": {
"type": "object",
"required": [
"id",
"versionNumber",
"title",
"isActive"
],
"properties": {
"id": {
"type": "number",
"description": "Identifier of this returned resource. Use it for subsequent reads or edits of the same resource."
},
"title": {
"type": "string",
"description": "Display or content title of this returned item."
},
"isActive": {
"type": "boolean",
"description": "Whether this saved configuration is enabled."
},
"versionNumber": {
"type": "number"
}
}
}
},
"editorUrl": {
"type": "string",
"description": "Atomic editor URL for inspecting or editing this content item."
},
"updatedAt": {
"type": "string",
"format": "date-time",
"description": "Date and time this record was last updated, serialized as ISO 8601."
},
"wordCount": {
"type": "number",
"description": "Number of words in this content item."
},
"fullDescription": {
"type": "string",
"description": "Saved full content body or description."
},
"metaDescription": {
"type": "string",
"description": "Saved page meta description used in search snippets."
}
},
"description": "Operation data; optional fields may be absent."
},
"error": {
"type": "string",
"description": "Why the operation failed."
},
"details": {
"type": "object",
"description": "Diagnostics keyed by errorCode."
},
"message": {
"type": "string",
"description": "Outcome or recovery instructions. Project selection means no action ran."
},
"success": {
"type": "boolean",
"description": "Operation success; on false inspect error/errorCode."
},
"upgrade": {
"type": "object",
"description": "Plan-upgrade guidance for an unavailable capability."
},
"category": {
"type": "string",
"description": "Failure category, such as invalid_input or plan_required."
},
"expected": {
"type": "boolean",
"description": "Whether this is an anticipated access, input, plan or state failure."
},
"projects": {
"type": "array",
"items": {
"type": "object",
"properties": {
"id": {
"type": "number",
"description": "Project ID for projectId."
},
"name": {
"type": "string",
"description": "Project name."
}
},
"description": "Accessible project."
},
"description": "Accessible project choices. Select a projectId and retry."
},
"errorCode": {
"type": "string",
"description": "Failure code for recovery."
},
"retryable": {
"type": "boolean",
"description": "Whether an unchanged request can be retried."
},
"statusCode": {
"type": "number",
"description": "HTTP-style failure status."
},
"executionTime": {
"type": "string",
"description": "Elapsed time in seconds, with an s suffix."
}
},
"description": "Operation result envelope."
},
"annotations": {
"readOnlyHint": true,
"openWorldHint": false,
"idempotentHint": true,
"destructiveHint": false
}
}
The title clearly communicates the tool’s action and subject. Keep it concise.
Description93/100
Get all saved content items for a project. This returns only content that has been created and saved in the system, not all content that exists on the website. Useful for retrieving saved content pieces, articles, or pages that have been tracked or created through the platform. IMPORTANT: Each content item in the response includes an editorUrl field - this is a direct link to open the content in the editor. Always include the editorUrl as a clickable markdown link in your response so users can easily access the content. Format: [Open in Editor](editorUrl).
The description explains the capability, when to use it, and what to expect.
Inputs81/100
Remove validation rules already expressed in this field’s schema; describe its meaning and usage instead.
page
Page number (1-based). Default: 1. Use with limit for pagination.
Remove validation rules already expressed in this field’s schema; describe its meaning and usage instead.
limit
Number of items per page. Default: 10, Max: 100. Use with page for pagination.
Remove validation rules already expressed in this field’s schema; describe its meaning and usage instead.
search
Search query to filter results (searches in relevant text fields)
Explain the meaning of this value, not just its name.
sortBy
Field name to sort by (e.g., "updatedAt", "title", "clicks")
Clear enough to supply this argument.
sortOrder
Sort order: "asc" for ascending, "desc" for descending. Default: "desc"
Remove validation rules already expressed in this field’s schema; describe its meaning and usage instead.
projectId
Atomic project ID from list_projects. Omit to use the configured project; if asked to choose, select one of the accessible returned IDs.
Clear enough to supply this argument.
context
Short purpose of this call for the activity log. Exclude personal data and private source content.
Remove validation rules already expressed in this field’s schema; describe its meaning and usage instead.
llm_model
Use the exact model ID executing this call, from runtime/system context, for usage attribution. Supply it on every Atomic MCP tool call, including discovery and feedback, and update it if the model changes. Use the model ID rather than the client app name. If unavailable, omit it; never guess or ask the user.
Align the output schema with the tool’s documented result.
View output schema
{
"type": "object",
"required": [
"success"
],
"properties": {
"url": {
"type": "string",
"description": "Link for resolving the failure or completing the operation."
},
"data": {
"type": "object",
"required": [
"data",
"total",
"page",
"limit",
"totalPages",
"nextPage"
],
"properties": {
"data": {
"type": "array",
"items": {
"type": "object",
"required": [
"id",
"title",
"fullDescription",
"metaDescription",
"status",
"wordCount",
"seoScore",
"editorUrl"
],
"properties": {
"id": {
"type": "string",
"description": "Identifier of this returned resource. Use it for subsequent reads or edits of the same resource."
},
"url": {
"type": "string",
"description": "URL returned for this resource or operation."
},
"title": {
"type": "string",
"description": "Display or content title of this returned item."
},
"status": {
"type": "string",
"description": "Current saved or execution state reported by the operation."
},
"seoScore": {
"type": "number",
"description": "Saved SEO quality score for this content item."
},
"editorUrl": {
"type": "string",
"description": "Atomic editor URL for inspecting or editing this content item."
},
"updatedAt": {
"type": "string",
"format": "date-time",
"description": "Date and time this record was last updated, serialized as ISO 8601."
},
"wordCount": {
"type": "number",
"description": "Number of words in this content item."
},
"fullDescription": {
"type": "string",
"description": "Saved full content body or description."
},
"metaDescription": {
"type": "string",
"description": "Saved page meta description used in search snippets."
}
}
},
"description": "Result items or operation data inside this returned payload. Pagination fields describe only this result page."
},
"page": {
"type": "number",
"description": "Page number represented by these items."
},
"limit": {
"type": "number",
"description": "Maximum number of items requested for this page."
},
"total": {
"type": "number",
"description": "Total number of matching items across all result pages."
},
"nextPage": {
"anyOf": [
{
"type": "null"
},
{
"type": "number"
}
],
"description": "Next page to request when more results exist; use the returned value rather than constructing a cursor."
},
"totalPages": {
"type": "number",
"description": "Total number of result pages for the current filter and page size."
}
},
"description": "Operation data; optional fields may be absent."
},
"error": {
"type": "string",
"description": "Why the operation failed."
},
"details": {
"type": "object",
"description": "Diagnostics keyed by errorCode."
},
"message": {
"type": "string",
"description": "Outcome or recovery instructions. Project selection means no action ran."
},
"success": {
"type": "boolean",
"description": "Operation success; on false inspect error/errorCode."
},
"upgrade": {
"type": "object",
"description": "Plan-upgrade guidance for an unavailable capability."
},
"category": {
"type": "string",
"description": "Failure category, such as invalid_input or plan_required."
},
"expected": {
"type": "boolean",
"description": "Whether this is an anticipated access, input, plan or state failure."
},
"projects": {
"type": "array",
"items": {
"type": "object",
"properties": {
"id": {
"type": "number",
"description": "Project ID for projectId."
},
"name": {
"type": "string",
"description": "Project name."
}
},
"description": "Accessible project."
},
"description": "Accessible project choices. Select a projectId and retry."
},
"errorCode": {
"type": "string",
"description": "Failure code for recovery."
},
"retryable": {
"type": "boolean",
"description": "Whether an unchanged request can be retried."
},
"statusCode": {
"type": "number",
"description": "HTTP-style failure status."
},
"executionTime": {
"type": "string",
"description": "Elapsed time in seconds, with an s suffix."
}
},
"description": "Operation result envelope."
}
Original tool metadata
{
"name": "get_contents",
"title": "List saved content",
"description": "Get all saved content items for a project. This returns only content that has been created and saved in the system, not all content that exists on the website. Useful for retrieving saved content pieces, articles, or pages that have been tracked or created through the platform. IMPORTANT: Each content item in the response includes an editorUrl field - this is a direct link to open the content in the editor. Always include the editorUrl as a clickable markdown link in your response so users can easily access the content. Format: [Open in Editor](editorUrl).",
"inputSchema": {
"type": "object",
"required": [],
"properties": {
"page": {
"type": "number",
"minimum": 1,
"description": "Page number (1-based). Default: 1. Use with limit for pagination."
},
"limit": {
"type": "number",
"default": 10,
"maximum": 100,
"minimum": 1,
"description": "Number of items per page. Default: 10, Max: 100. Use with page for pagination."
},
"search": {
"type": "string",
"description": "Search query to filter results (searches in relevant text fields)"
},
"sortBy": {
"type": "string",
"description": "Field name to sort by (e.g., \"updatedAt\", \"title\", \"clicks\")"
},
"context": {
"type": "string",
"maxLength": 120,
"description": "Short purpose of this call for the activity log. Exclude personal data and private source content."
},
"llm_model": {
"type": "string",
"maxLength": 128,
"description": "Use the exact model ID executing this call, from runtime/system context, for usage attribution. Supply it on every Atomic MCP tool call, including discovery and feedback, and update it if the model changes. Use the model ID rather than the client app name. If unavailable, omit it; never guess or ask the user."
},
"projectId": {
"type": "number",
"description": "Atomic project ID from list_projects. Omit to use the configured project; if asked to choose, select one of the accessible returned IDs."
},
"sortOrder": {
"enum": [
"asc",
"desc"
],
"type": "string",
"default": "desc",
"description": "Sort order: \"asc\" for ascending, \"desc\" for descending. Default: \"desc\""
}
}
},
"outputSchema": {
"type": "object",
"required": [
"success"
],
"properties": {
"url": {
"type": "string",
"description": "Link for resolving the failure or completing the operation."
},
"data": {
"type": "object",
"required": [
"data",
"total",
"page",
"limit",
"totalPages",
"nextPage"
],
"properties": {
"data": {
"type": "array",
"items": {
"type": "object",
"required": [
"id",
"title",
"fullDescription",
"metaDescription",
"status",
"wordCount",
"seoScore",
"editorUrl"
],
"properties": {
"id": {
"type": "string",
"description": "Identifier of this returned resource. Use it for subsequent reads or edits of the same resource."
},
"url": {
"type": "string",
"description": "URL returned for this resource or operation."
},
"title": {
"type": "string",
"description": "Display or content title of this returned item."
},
"status": {
"type": "string",
"description": "Current saved or execution state reported by the operation."
},
"seoScore": {
"type": "number",
"description": "Saved SEO quality score for this content item."
},
"editorUrl": {
"type": "string",
"description": "Atomic editor URL for inspecting or editing this content item."
},
"updatedAt": {
"type": "string",
"format": "date-time",
"description": "Date and time this record was last updated, serialized as ISO 8601."
},
"wordCount": {
"type": "number",
"description": "Number of words in this content item."
},
"fullDescription": {
"type": "string",
"description": "Saved full content body or description."
},
"metaDescription": {
"type": "string",
"description": "Saved page meta description used in search snippets."
}
}
},
"description": "Result items or operation data inside this returned payload. Pagination fields describe only this result page."
},
"page": {
"type": "number",
"description": "Page number represented by these items."
},
"limit": {
"type": "number",
"description": "Maximum number of items requested for this page."
},
"total": {
"type": "number",
"description": "Total number of matching items across all result pages."
},
"nextPage": {
"anyOf": [
{
"type": "null"
},
{
"type": "number"
}
],
"description": "Next page to request when more results exist; use the returned value rather than constructing a cursor."
},
"totalPages": {
"type": "number",
"description": "Total number of result pages for the current filter and page size."
}
},
"description": "Operation data; optional fields may be absent."
},
"error": {
"type": "string",
"description": "Why the operation failed."
},
"details": {
"type": "object",
"description": "Diagnostics keyed by errorCode."
},
"message": {
"type": "string",
"description": "Outcome or recovery instructions. Project selection means no action ran."
},
"success": {
"type": "boolean",
"description": "Operation success; on false inspect error/errorCode."
},
"upgrade": {
"type": "object",
"description": "Plan-upgrade guidance for an unavailable capability."
},
"category": {
"type": "string",
"description": "Failure category, such as invalid_input or plan_required."
},
"expected": {
"type": "boolean",
"description": "Whether this is an anticipated access, input, plan or state failure."
},
"projects": {
"type": "array",
"items": {
"type": "object",
"properties": {
"id": {
"type": "number",
"description": "Project ID for projectId."
},
"name": {
"type": "string",
"description": "Project name."
}
},
"description": "Accessible project."
},
"description": "Accessible project choices. Select a projectId and retry."
},
"errorCode": {
"type": "string",
"description": "Failure code for recovery."
},
"retryable": {
"type": "boolean",
"description": "Whether an unchanged request can be retried."
},
"statusCode": {
"type": "number",
"description": "HTTP-style failure status."
},
"executionTime": {
"type": "string",
"description": "Elapsed time in seconds, with an s suffix."
}
},
"description": "Operation result envelope."
},
"annotations": {
"readOnlyHint": true,
"openWorldHint": false,
"idempotentHint": true,
"destructiveHint": false
}
}
The title clearly communicates the tool’s action and subject. Keep it concise.
Description98/100
Get a specific DATA REPORT (dashboard/visualization) by ID. This retrieves VISUAL ANALYTICS REPORTS with charts and data displays - NOT workflows or automation. Use this ONLY when the user asks about a specific report, dashboard, or data visualization. DO NOT use for workflows. IMPORTANT: The response includes a publicUrl field - this is a shareable public link. When present, include the publicUrl in your response as a clickable markdown link (format: [View Report](publicUrl)).
The description explains the capability, when to use it, and what to expect.
Inputs81/100
Remove validation rules already expressed in this field’s schema; describe its meaning and usage instead.
reportId
The ID of the custom report to retrieve
Remove validation rules already expressed in this field’s schema; describe its meaning and usage instead.
projectId
Atomic project ID from list_projects. Omit to use the configured project; if asked to choose, select one of the accessible returned IDs.
Clear enough to supply this argument.
context
Short purpose of this call for the activity log. Exclude personal data and private source content.
Remove validation rules already expressed in this field’s schema; describe its meaning and usage instead.
llm_model
Use the exact model ID executing this call, from runtime/system context, for usage attribution. Supply it on every Atomic MCP tool call, including discovery and feedback, and update it if the model changes. Use the model ID rather than the client app name. If unavailable, omit it; never guess or ask the user.
Remove validation rules already expressed in this field’s schema; describe its meaning and usage instead.
The title clearly communicates the tool’s action and subject. Keep it concise.
Description87/100
Get saved workspace-level custom report templates for the current project workspace. Use this before editing a template so you can identify the correct templateId. These templates store reusable custom report layouts and can be used to create new reports.
The description explains the capability, when to use it, and what to expect.
Inputs78/100
Remove validation rules already expressed in this field’s schema; describe its meaning and usage instead.
page
Page number (1-based). Default: 1. Use with limit for pagination.
Remove validation rules already expressed in this field’s schema; describe its meaning and usage instead.
limit
Number of items per page. Default: 10, Max: 100. Use with page for pagination.
Remove validation rules already expressed in this field’s schema; describe its meaning and usage instead.
search
Search query to filter results (searches in relevant text fields)
Explain the meaning of this value, not just its name.
sortBy
Field name to sort by (e.g., "updatedAt", "title", "clicks")
Clear enough to supply this argument.
sortOrder
Sort order: "asc" for ascending, "desc" for descending. Default: "desc"
Remove validation rules already expressed in this field’s schema; describe its meaning and usage instead.
projectId
Atomic project ID from list_projects. Omit to use the configured project; if asked to choose, select one of the accessible returned IDs.
Clear enough to supply this argument.
context
Short purpose of this call for the activity log. Exclude personal data and private source content.
Remove validation rules already expressed in this field’s schema; describe its meaning and usage instead.
llm_model
Use the exact model ID executing this call, from runtime/system context, for usage attribution. Supply it on every Atomic MCP tool call, including discovery and feedback, and update it if the model changes. Use the model ID rather than the client app name. If unavailable, omit it; never guess or ask the user.
Remove validation rules already expressed in this field’s schema; describe its meaning and usage instead.
{
"type": "object",
"required": [
"success"
],
"properties": {
"url": {
"type": "string",
"description": "Link for resolving the failure or completing the operation."
},
"data": {
"type": "object",
"required": [
"data",
"total",
"page",
"limit",
"totalPages",
"nextPage"
],
"properties": {
"data": {
"type": "array",
"items": {
"type": "object",
"required": [
"name",
"workspaceId",
"createdAt",
"updatedAt",
"config"
],
"properties": {
"id": {
"type": "number",
"description": "Identifier of this returned resource. Use it for subsequent reads or edits of the same resource."
},
"name": {
"type": "string",
"description": "Human-readable name of this resource."
},
"config": {
"type": "object",
"description": "Saved configuration specific to this resource's type."
},
"createdAt": {
"type": "string",
"format": "date-time",
"description": "Date and time this record was created, serialized as ISO 8601."
},
"updatedAt": {
"type": "string",
"format": "date-time",
"description": "Date and time this record was last updated, serialized as ISO 8601."
},
"description": {
"type": "string",
"description": "Saved description of this resource or its purpose."
},
"workspaceId": {
"type": "number",
"description": "Atomic workspace that owns this project or resource."
}
}
},
"description": "Result items or operation data inside this returned payload. Pagination fields describe only this result page."
},
"page": {
"type": "number",
"description": "Page number represented by these items."
},
"limit": {
"type": "number",
"description": "Maximum number of items requested for this page."
},
"total": {
"type": "number",
"description": "Total number of matching items across all result pages."
},
"nextPage": {
"anyOf": [
{
"type": "null"
},
{
"type": "number"
}
],
"description": "Next page to request when more results exist; use the returned value rather than constructing a cursor."
},
"totalPages": {
"type": "number",
"description": "Total number of result pages for the current filter and page size."
}
},
"description": "Operation data; optional fields may be absent."
},
"error": {
"type": "string",
"description": "Why the operation failed."
},
"details": {
"type": "object",
"description": "Diagnostics keyed by errorCode."
},
"message": {
"type": "string",
"description": "Outcome or recovery instructions. Project selection means no action ran."
},
"success": {
"type": "boolean",
"description": "Operation success; on false inspect error/errorCode."
},
"upgrade": {
"type": "object",
"description": "Plan-upgrade guidance for an unavailable capability."
},
"category": {
"type": "string",
"description": "Failure category, such as invalid_input or plan_required."
},
"expected": {
"type": "boolean",
"description": "Whether this is an anticipated access, input, plan or state failure."
},
"projects": {
"type": "array",
"items": {
"type": "object",
"properties": {
"id": {
"type": "number",
"description": "Project ID for projectId."
},
"name": {
"type": "string",
"description": "Project name."
}
},
"description": "Accessible project."
},
"description": "Accessible project choices. Select a projectId and retry."
},
"errorCode": {
"type": "string",
"description": "Failure code for recovery."
},
"retryable": {
"type": "boolean",
"description": "Whether an unchanged request can be retried."
},
"statusCode": {
"type": "number",
"description": "HTTP-style failure status."
},
"executionTime": {
"type": "string",
"description": "Elapsed time in seconds, with an s suffix."
}
},
"description": "Operation result envelope."
}
Original tool metadata
{
"name": "get_custom_report_templates",
"title": "Get custom report templates",
"description": "Get saved workspace-level custom report templates for the current project workspace. Use this before editing a template so you can identify the correct templateId. These templates store reusable custom report layouts and can be used to create new reports.",
"inputSchema": {
"type": "object",
"required": [],
"properties": {
"page": {
"type": "number",
"minimum": 1,
"description": "Page number (1-based). Default: 1. Use with limit for pagination."
},
"limit": {
"type": "number",
"default": 10,
"maximum": 100,
"minimum": 1,
"description": "Number of items per page. Default: 10, Max: 100. Use with page for pagination."
},
"search": {
"type": "string",
"description": "Search query to filter results (searches in relevant text fields)"
},
"sortBy": {
"type": "string",
"description": "Field name to sort by (e.g., \"updatedAt\", \"title\", \"clicks\")"
},
"context": {
"type": "string",
"maxLength": 120,
"description": "Short purpose of this call for the activity log. Exclude personal data and private source content."
},
"llm_model": {
"type": "string",
"maxLength": 128,
"description": "Use the exact model ID executing this call, from runtime/system context, for usage attribution. Supply it on every Atomic MCP tool call, including discovery and feedback, and update it if the model changes. Use the model ID rather than the client app name. If unavailable, omit it; never guess or ask the user."
},
"projectId": {
"type": "number",
"description": "Atomic project ID from list_projects. Omit to use the configured project; if asked to choose, select one of the accessible returned IDs."
},
"sortOrder": {
"enum": [
"asc",
"desc"
],
"type": "string",
"default": "desc",
"description": "Sort order: \"asc\" for ascending, \"desc\" for descending. Default: \"desc\""
}
}
},
"outputSchema": {
"type": "object",
"required": [
"success"
],
"properties": {
"url": {
"type": "string",
"description": "Link for resolving the failure or completing the operation."
},
"data": {
"type": "object",
"required": [
"data",
"total",
"page",
"limit",
"totalPages",
"nextPage"
],
"properties": {
"data": {
"type": "array",
"items": {
"type": "object",
"required": [
"name",
"workspaceId",
"createdAt",
"updatedAt",
"config"
],
"properties": {
"id": {
"type": "number",
"description": "Identifier of this returned resource. Use it for subsequent reads or edits of the same resource."
},
"name": {
"type": "string",
"description": "Human-readable name of this resource."
},
"config": {
"type": "object",
"description": "Saved configuration specific to this resource's type."
},
"createdAt": {
"type": "string",
"format": "date-time",
"description": "Date and time this record was created, serialized as ISO 8601."
},
"updatedAt": {
"type": "string",
"format": "date-time",
"description": "Date and time this record was last updated, serialized as ISO 8601."
},
"description": {
"type": "string",
"description": "Saved description of this resource or its purpose."
},
"workspaceId": {
"type": "number",
"description": "Atomic workspace that owns this project or resource."
}
}
},
"description": "Result items or operation data inside this returned payload. Pagination fields describe only this result page."
},
"page": {
"type": "number",
"description": "Page number represented by these items."
},
"limit": {
"type": "number",
"description": "Maximum number of items requested for this page."
},
"total": {
"type": "number",
"description": "Total number of matching items across all result pages."
},
"nextPage": {
"anyOf": [
{
"type": "null"
},
{
"type": "number"
}
],
"description": "Next page to request when more results exist; use the returned value rather than constructing a cursor."
},
"totalPages": {
"type": "number",
"description": "Total number of result pages for the current filter and page size."
}
},
"description": "Operation data; optional fields may be absent."
},
"error": {
"type": "string",
"description": "Why the operation failed."
},
"details": {
"type": "object",
"description": "Diagnostics keyed by errorCode."
},
"message": {
"type": "string",
"description": "Outcome or recovery instructions. Project selection means no action ran."
},
"success": {
"type": "boolean",
"description": "Operation success; on false inspect error/errorCode."
},
"upgrade": {
"type": "object",
"description": "Plan-upgrade guidance for an unavailable capability."
},
"category": {
"type": "string",
"description": "Failure category, such as invalid_input or plan_required."
},
"expected": {
"type": "boolean",
"description": "Whether this is an anticipated access, input, plan or state failure."
},
"projects": {
"type": "array",
"items": {
"type": "object",
"properties": {
"id": {
"type": "number",
"description": "Project ID for projectId."
},
"name": {
"type": "string",
"description": "Project name."
}
},
"description": "Accessible project."
},
"description": "Accessible project choices. Select a projectId and retry."
},
"errorCode": {
"type": "string",
"description": "Failure code for recovery."
},
"retryable": {
"type": "boolean",
"description": "Whether an unchanged request can be retried."
},
"statusCode": {
"type": "number",
"description": "HTTP-style failure status."
},
"executionTime": {
"type": "string",
"description": "Elapsed time in seconds, with an s suffix."
}
},
"description": "Operation result envelope."
},
"annotations": {
"readOnlyHint": true,
"openWorldHint": false,
"idempotentHint": true,
"destructiveHint": false
}
}
The title clearly communicates the tool’s action and subject. Keep it concise.
Description93/100
Read native chart/table results for up to 20 saved report data widgets, including private reports authorized in the current project. Required fallback dates use YYYY-MM-DD; widget dates take precedence exactly as in native report preview. No fake data or report mutations. Returns native results per widget and resolved current dates. Effective comparison periods are returned from native source metadata when provided; each other widget has comparison.status=unavailable. Do not infer them or treat empty results as successful data verification. Does not verify browser rendering or public accessibility.
Reads native data sources without editing the report. Empty results or unavailable comparison metadata are not proof of a successful browser-rendering check.
The description explains the capability, when to use it, and what to expect.
Inputs67/100
Clarify units, where to obtain this value, or conventions not already expressed in the schema.
reportId
Saved custom report identifier from get_custom_reports.
Clear enough to supply this argument.
startDate
Beginning of the reporting window in the date format accepted by this field.
Clarify units, where to obtain this value, or conventions not already expressed in the schema.
endDate
End of the reporting window in the date format accepted by this field.
Clarify units, where to obtain this value, or conventions not already expressed in the schema.
widgetIds
Report widget identifiers to execute, obtained from get_custom_report_by_id.
Remove validation rules already expressed in this field’s schema; describe its meaning and usage instead.
projectId
Atomic project ID from list_projects. Omit to use the configured project; if asked to choose, select one of the accessible returned IDs.
Clear enough to supply this argument.
context
Short purpose of this call for the activity log. Exclude personal data and private source content.
Remove validation rules already expressed in this field’s schema; describe its meaning and usage instead.
llm_model
Use the exact model ID executing this call, from runtime/system context, for usage attribution. Supply it on every Atomic MCP tool call, including discovery and feedback, and update it if the model changes. Use the model ID rather than the client app name. If unavailable, omit it; never guess or ask the user.
Remove validation rules already expressed in this field’s schema; describe its meaning and usage instead.
{
"type": "object",
"required": [
"success"
],
"properties": {
"url": {
"type": "string",
"description": "Link for resolving the failure or completing the operation."
},
"data": {
"type": "object",
"required": [
"reportId",
"results",
"limitations"
],
"properties": {
"results": {
"type": "array",
"items": {
"type": "object",
"required": [
"widgetId",
"dataSource",
"sourceSection",
"currentDates",
"comparison"
],
"properties": {
"widgetId": {
"type": "string",
"description": "Saved report widget ID whose native data is returned."
},
"comparison": {
"type": "object",
"description": "Availability and source evidence for the effective comparison period; unavailable must not be inferred."
},
"dataSource": {
"enum": [
"funnel",
"cluster",
"entity",
"search-analytics",
"keywords",
"questions",
"pages",
"devices",
"ai-search",
"organic-traffic",
"conversions",
"geography",
"referrals",
"seo-audit",
"ai-prompts",
"ai-prompts-home",
"ai-competitors",
"ai-citations",
"ai-mentions",
"ai-platforms",
"ai-sentiment",
"zero-click-pages"
],
"type": "string",
"description": "Native analytics source selected by this report widget."
},
"currentDates": {
"type": "object",
"description": "Effective current date range after the saved widget overrides are applied."
},
"nativeResults": {
"description": "Native chart/table data for the selected report widget; its shape depends on dataSource/sourceSection."
},
"sourceSection": {
"enum": [
"distribution",
"performance",
"total",
"by-source",
"by-page",
"by-country"
],
"type": "string",
"description": "Selected source metric/section used to resolve the widget data."
}
}
},
"description": "Per-item or per-step outcomes for this operation; inspect each status rather than assuming the batch succeeded."
},
"reportId": {
"type": "number"
},
"limitations": {
"type": "array",
"items": {
"type": "string"
},
"description": "Known limits of this result and conclusions it does not establish."
}
},
"description": "Operation data; optional fields may be absent."
},
"error": {
"type": "string",
"description": "Why the operation failed."
},
"details": {
"type": "object",
"description": "Diagnostics keyed by errorCode."
},
"message": {
"type": "string",
"description": "Outcome or recovery instructions. Project selection means no action ran."
},
"success": {
"type": "boolean",
"description": "Operation success; on false inspect error/errorCode."
},
"upgrade": {
"type": "object",
"description": "Plan-upgrade guidance for an unavailable capability."
},
"category": {
"type": "string",
"description": "Failure category, such as invalid_input or plan_required."
},
"expected": {
"type": "boolean",
"description": "Whether this is an anticipated access, input, plan or state failure."
},
"projects": {
"type": "array",
"items": {
"type": "object",
"properties": {
"id": {
"type": "number",
"description": "Project ID for projectId."
},
"name": {
"type": "string",
"description": "Project name."
}
},
"description": "Accessible project."
},
"description": "Accessible project choices. Select a projectId and retry."
},
"errorCode": {
"type": "string",
"description": "Failure code for recovery."
},
"retryable": {
"type": "boolean",
"description": "Whether an unchanged request can be retried."
},
"statusCode": {
"type": "number",
"description": "HTTP-style failure status."
},
"executionTime": {
"type": "string",
"description": "Elapsed time in seconds, with an s suffix."
}
},
"description": "Operation result envelope."
}
Original tool metadata
{
"name": "get_custom_report_widget_results",
"title": "Get custom report widget results",
"description": "Read native chart/table results for up to 20 saved report data widgets, including private reports authorized in the current project. Required fallback dates use YYYY-MM-DD; widget dates take precedence exactly as in native report preview. No fake data or report mutations. Returns native results per widget and resolved current dates. Effective comparison periods are returned from native source metadata when provided; each other widget has comparison.status=unavailable. Do not infer them or treat empty results as successful data verification. Does not verify browser rendering or public accessibility.\n\nReads native data sources without editing the report. Empty results or unavailable comparison metadata are not proof of a successful browser-rendering check.",
"inputSchema": {
"type": "object",
"required": [
"reportId",
"startDate",
"endDate"
],
"properties": {
"context": {
"type": "string",
"maxLength": 120,
"description": "Short purpose of this call for the activity log. Exclude personal data and private source content."
},
"endDate": {
"type": "string",
"description": "End of the reporting window in the date format accepted by this field."
},
"reportId": {
"type": "number",
"minimum": 1,
"description": "Saved custom report identifier from get_custom_reports."
},
"llm_model": {
"type": "string",
"maxLength": 128,
"description": "Use the exact model ID executing this call, from runtime/system context, for usage attribution. Supply it on every Atomic MCP tool call, including discovery and feedback, and update it if the model changes. Use the model ID rather than the client app name. If unavailable, omit it; never guess or ask the user."
},
"projectId": {
"type": "number",
"description": "Atomic project ID from list_projects. Omit to use the configured project; if asked to choose, select one of the accessible returned IDs."
},
"startDate": {
"type": "string",
"description": "Beginning of the reporting window in the date format accepted by this field."
},
"widgetIds": {
"type": "array",
"items": {
"type": "string"
},
"maxItems": 20,
"minItems": 1,
"description": "Report widget identifiers to execute, obtained from get_custom_report_by_id."
}
},
"additionalProperties": false
},
"outputSchema": {
"type": "object",
"required": [
"success"
],
"properties": {
"url": {
"type": "string",
"description": "Link for resolving the failure or completing the operation."
},
"data": {
"type": "object",
"required": [
"reportId",
"results",
"limitations"
],
"properties": {
"results": {
"type": "array",
"items": {
"type": "object",
"required": [
"widgetId",
"dataSource",
"sourceSection",
"currentDates",
"comparison"
],
"properties": {
"widgetId": {
"type": "string",
"description": "Saved report widget ID whose native data is returned."
},
"comparison": {
"type": "object",
"description": "Availability and source evidence for the effective comparison period; unavailable must not be inferred."
},
"dataSource": {
"enum": [
"funnel",
"cluster",
"entity",
"search-analytics",
"keywords",
"questions",
"pages",
"devices",
"ai-search",
"organic-traffic",
"conversions",
"geography",
"referrals",
"seo-audit",
"ai-prompts",
"ai-prompts-home",
"ai-competitors",
"ai-citations",
"ai-mentions",
"ai-platforms",
"ai-sentiment",
"zero-click-pages"
],
"type": "string",
"description": "Native analytics source selected by this report widget."
},
"currentDates": {
"type": "object",
"description": "Effective current date range after the saved widget overrides are applied."
},
"nativeResults": {
"description": "Native chart/table data for the selected report widget; its shape depends on dataSource/sourceSection."
},
"sourceSection": {
"enum": [
"distribution",
"performance",
"total",
"by-source",
"by-page",
"by-country"
],
"type": "string",
"description": "Selected source metric/section used to resolve the widget data."
}
}
},
"description": "Per-item or per-step outcomes for this operation; inspect each status rather than assuming the batch succeeded."
},
"reportId": {
"type": "number"
},
"limitations": {
"type": "array",
"items": {
"type": "string"
},
"description": "Known limits of this result and conclusions it does not establish."
}
},
"description": "Operation data; optional fields may be absent."
},
"error": {
"type": "string",
"description": "Why the operation failed."
},
"details": {
"type": "object",
"description": "Diagnostics keyed by errorCode."
},
"message": {
"type": "string",
"description": "Outcome or recovery instructions. Project selection means no action ran."
},
"success": {
"type": "boolean",
"description": "Operation success; on false inspect error/errorCode."
},
"upgrade": {
"type": "object",
"description": "Plan-upgrade guidance for an unavailable capability."
},
"category": {
"type": "string",
"description": "Failure category, such as invalid_input or plan_required."
},
"expected": {
"type": "boolean",
"description": "Whether this is an anticipated access, input, plan or state failure."
},
"projects": {
"type": "array",
"items": {
"type": "object",
"properties": {
"id": {
"type": "number",
"description": "Project ID for projectId."
},
"name": {
"type": "string",
"description": "Project name."
}
},
"description": "Accessible project."
},
"description": "Accessible project choices. Select a projectId and retry."
},
"errorCode": {
"type": "string",
"description": "Failure code for recovery."
},
"retryable": {
"type": "boolean",
"description": "Whether an unchanged request can be retried."
},
"statusCode": {
"type": "number",
"description": "HTTP-style failure status."
},
"executionTime": {
"type": "string",
"description": "Elapsed time in seconds, with an s suffix."
}
},
"description": "Operation result envelope."
},
"annotations": {
"readOnlyHint": true,
"openWorldHint": true,
"idempotentHint": true,
"destructiveHint": false
}
}
The title clearly communicates the tool’s action and subject. Keep it concise.
Description97/100
Get all custom DATA REPORTS (dashboards/visualizations) for a project. These are VISUAL REPORTS with charts and data displays - NOT workflows or automation. Use this ONLY when the user asks about viewing analytics reports, dashboards, or data visualizations. DO NOT use this for workflows, workflow steps, or automation tasks. IMPORTANT: Each report in the response includes a publicUrl field - this is a shareable public link. When present, include the publicUrl in your response as a clickable link so users can view the report.
The description explains the capability, when to use it, and what to expect.
Inputs84/100
Remove validation rules already expressed in this field’s schema; describe its meaning and usage instead.
page
Page number (1-based). Default: 1. Use with limit for pagination.
Remove validation rules already expressed in this field’s schema; describe its meaning and usage instead.
limit
Number of items per page. Default: 10, Max: 100. Use with page for pagination.
Remove validation rules already expressed in this field’s schema; describe its meaning and usage instead.
search
Search query to filter results (searches in relevant text fields)
Explain the meaning of this value, not just its name.
sortBy
Field name to sort by (e.g., "updatedAt", "title", "clicks")
Clear enough to supply this argument.
sortOrder
Sort order: "asc" for ascending, "desc" for descending. Default: "desc"
Remove validation rules already expressed in this field’s schema; describe its meaning and usage instead.
projectId
Atomic project ID from list_projects. Omit to use the configured project; if asked to choose, select one of the accessible returned IDs.
Clear enough to supply this argument.
context
Short purpose of this call for the activity log. Exclude personal data and private source content.
Clear enough to supply this argument.
llm_model
Use the exact model ID executing this call, from runtime/system context, for usage attribution. Supply it on every Atomic MCP tool call, including discovery and feedback, and update it if the model changes. Use the model ID rather than the client app name. If unavailable, omit it; never guess or ask the user.
Align the output schema with the tool’s documented result.
View output schema
{
"type": "object",
"required": [
"success"
],
"properties": {
"url": {
"type": "string",
"description": "Link for resolving the failure or completing the operation."
},
"data": {
"type": "object",
"required": [
"data",
"total",
"page",
"limit",
"totalPages",
"nextPage"
],
"properties": {
"data": {
"type": "array",
"items": {
"type": "object",
"required": [
"name",
"projectId",
"createdAt",
"updatedAt",
"config"
],
"properties": {
"id": {
"type": "number",
"description": "Identifier of this returned resource. Use it for subsequent reads or edits of the same resource."
},
"name": {
"type": "string",
"description": "Human-readable name of this resource."
},
"config": {
"type": "object",
"description": "Saved configuration specific to this resource's type."
},
"project": {
"type": "object",
"description": "Project context associated with this resource."
},
"branding": {
"anyOf": [
{
"type": "null"
},
{
"type": "object",
"description": "Nested operation-specific fields."
}
]
},
"createdAt": {
"type": "string",
"format": "date-time",
"description": "Date and time this record was created, serialized as ISO 8601."
},
"projectId": {
"type": "number",
"description": "Atomic project that owns this resource."
},
"publicUrl": {
"type": "string"
},
"updatedAt": {
"type": "string",
"format": "date-time",
"description": "Date and time this record was last updated, serialized as ISO 8601."
},
"publicSlug": {
"type": "string"
},
"description": {
"type": "string",
"description": "Saved description of this resource or its purpose."
},
"isPublished": {
"type": "boolean"
},
"customDomain": {
"type": "string"
},
"customDomainId": {
"anyOf": [
{
"type": "null"
},
{
"type": "number"
}
]
},
"collectionFolderId": {
"anyOf": [
{
"type": "null"
},
{
"type": "number"
}
],
"description": "Folder containing this item in its Atomic collection; null means top level."
},
"projectCustomDomain": {
"anyOf": [
{
"type": "null"
},
{
"type": "object",
"description": "Nested operation-specific fields."
}
]
},
"isSearchIndexingEnabled": {
"type": "boolean"
}
}
},
"description": "Result items or operation data inside this returned payload. Pagination fields describe only this result page."
},
"page": {
"type": "number",
"description": "Page number represented by these items."
},
"limit": {
"type": "number",
"description": "Maximum number of items requested for this page."
},
"total": {
"type": "number",
"description": "Total number of matching items across all result pages."
},
"nextPage": {
"anyOf": [
{
"type": "null"
},
{
"type": "number"
}
],
"description": "Next page to request when more results exist; use the returned value rather than constructing a cursor."
},
"totalPages": {
"type": "number",
"description": "Total number of result pages for the current filter and page size."
}
},
"description": "Operation data; optional fields may be absent."
},
"error": {
"type": "string",
"description": "Why the operation failed."
},
"details": {
"type": "object",
"description": "Diagnostics keyed by errorCode."
},
"message": {
"type": "string",
"description": "Outcome or recovery instructions. Project selection means no action ran."
},
"success": {
"type": "boolean",
"description": "Operation success; on false inspect error/errorCode."
},
"upgrade": {
"type": "object",
"description": "Plan-upgrade guidance for an unavailable capability."
},
"category": {
"type": "string",
"description": "Failure category, such as invalid_input or plan_required."
},
"expected": {
"type": "boolean",
"description": "Whether this is an anticipated access, input, plan or state failure."
},
"projects": {
"type": "array",
"items": {
"type": "object",
"properties": {
"id": {
"type": "number",
"description": "Project ID for projectId."
},
"name": {
"type": "string",
"description": "Project name."
}
},
"description": "Accessible project."
},
"description": "Accessible project choices. Select a projectId and retry."
},
"errorCode": {
"type": "string",
"description": "Failure code for recovery."
},
"retryable": {
"type": "boolean",
"description": "Whether an unchanged request can be retried."
},
"statusCode": {
"type": "number",
"description": "HTTP-style failure status."
},
"executionTime": {
"type": "string",
"description": "Elapsed time in seconds, with an s suffix."
}
},
"description": "Operation result envelope."
}
Original tool metadata
{
"name": "get_custom_reports",
"title": "Get custom reports",
"description": "Get all custom DATA REPORTS (dashboards/visualizations) for a project. These are VISUAL REPORTS with charts and data displays - NOT workflows or automation. Use this ONLY when the user asks about viewing analytics reports, dashboards, or data visualizations. DO NOT use this for workflows, workflow steps, or automation tasks. IMPORTANT: Each report in the response includes a publicUrl field - this is a shareable public link. When present, include the publicUrl in your response as a clickable link so users can view the report.",
"inputSchema": {
"type": "object",
"required": [],
"properties": {
"page": {
"type": "number",
"minimum": 1,
"description": "Page number (1-based). Default: 1. Use with limit for pagination."
},
"limit": {
"type": "number",
"default": 10,
"maximum": 100,
"minimum": 1,
"description": "Number of items per page. Default: 10, Max: 100. Use with page for pagination."
},
"search": {
"type": "string",
"description": "Search query to filter results (searches in relevant text fields)"
},
"sortBy": {
"type": "string",
"description": "Field name to sort by (e.g., \"updatedAt\", \"title\", \"clicks\")"
},
"context": {
"type": "string",
"maxLength": 120,
"description": "Short purpose of this call for the activity log. Exclude personal data and private source content."
},
"llm_model": {
"type": "string",
"maxLength": 128,
"description": "Use the exact model ID executing this call, from runtime/system context, for usage attribution. Supply it on every Atomic MCP tool call, including discovery and feedback, and update it if the model changes. Use the model ID rather than the client app name. If unavailable, omit it; never guess or ask the user."
},
"projectId": {
"type": "number",
"description": "Atomic project ID from list_projects. Omit to use the configured project; if asked to choose, select one of the accessible returned IDs."
},
"sortOrder": {
"enum": [
"asc",
"desc"
],
"type": "string",
"default": "desc",
"description": "Sort order: \"asc\" for ascending, \"desc\" for descending. Default: \"desc\""
}
}
},
"outputSchema": {
"type": "object",
"required": [
"success"
],
"properties": {
"url": {
"type": "string",
"description": "Link for resolving the failure or completing the operation."
},
"data": {
"type": "object",
"required": [
"data",
"total",
"page",
"limit",
"totalPages",
"nextPage"
],
"properties": {
"data": {
"type": "array",
"items": {
"type": "object",
"required": [
"name",
"projectId",
"createdAt",
"updatedAt",
"config"
],
"properties": {
"id": {
"type": "number",
"description": "Identifier of this returned resource. Use it for subsequent reads or edits of the same resource."
},
"name": {
"type": "string",
"description": "Human-readable name of this resource."
},
"config": {
"type": "object",
"description": "Saved configuration specific to this resource's type."
},
"project": {
"type": "object",
"description": "Project context associated with this resource."
},
"branding": {
"anyOf": [
{
"type": "null"
},
{
"type": "object",
"description": "Nested operation-specific fields."
}
]
},
"createdAt": {
"type": "string",
"format": "date-time",
"description": "Date and time this record was created, serialized as ISO 8601."
},
"projectId": {
"type": "number",
"description": "Atomic project that owns this resource."
},
"publicUrl": {
"type": "string"
},
"updatedAt": {
"type": "string",
"format": "date-time",
"description": "Date and time this record was last updated, serialized as ISO 8601."
},
"publicSlug": {
"type": "string"
},
"description": {
"type": "string",
"description": "Saved description of this resource or its purpose."
},
"isPublished": {
"type": "boolean"
},
"customDomain": {
"type": "string"
},
"customDomainId": {
"anyOf": [
{
"type": "null"
},
{
"type": "number"
}
]
},
"collectionFolderId": {
"anyOf": [
{
"type": "null"
},
{
"type": "number"
}
],
"description": "Folder containing this item in its Atomic collection; null means top level."
},
"projectCustomDomain": {
"anyOf": [
{
"type": "null"
},
{
"type": "object",
"description": "Nested operation-specific fields."
}
]
},
"isSearchIndexingEnabled": {
"type": "boolean"
}
}
},
"description": "Result items or operation data inside this returned payload. Pagination fields describe only this result page."
},
"page": {
"type": "number",
"description": "Page number represented by these items."
},
"limit": {
"type": "number",
"description": "Maximum number of items requested for this page."
},
"total": {
"type": "number",
"description": "Total number of matching items across all result pages."
},
"nextPage": {
"anyOf": [
{
"type": "null"
},
{
"type": "number"
}
],
"description": "Next page to request when more results exist; use the returned value rather than constructing a cursor."
},
"totalPages": {
"type": "number",
"description": "Total number of result pages for the current filter and page size."
}
},
"description": "Operation data; optional fields may be absent."
},
"error": {
"type": "string",
"description": "Why the operation failed."
},
"details": {
"type": "object",
"description": "Diagnostics keyed by errorCode."
},
"message": {
"type": "string",
"description": "Outcome or recovery instructions. Project selection means no action ran."
},
"success": {
"type": "boolean",
"description": "Operation success; on false inspect error/errorCode."
},
"upgrade": {
"type": "object",
"description": "Plan-upgrade guidance for an unavailable capability."
},
"category": {
"type": "string",
"description": "Failure category, such as invalid_input or plan_required."
},
"expected": {
"type": "boolean",
"description": "Whether this is an anticipated access, input, plan or state failure."
},
"projects": {
"type": "array",
"items": {
"type": "object",
"properties": {
"id": {
"type": "number",
"description": "Project ID for projectId."
},
"name": {
"type": "string",
"description": "Project name."
}
},
"description": "Accessible project."
},
"description": "Accessible project choices. Select a projectId and retry."
},
"errorCode": {
"type": "string",
"description": "Failure code for recovery."
},
"retryable": {
"type": "boolean",
"description": "Whether an unchanged request can be retried."
},
"statusCode": {
"type": "number",
"description": "HTTP-style failure status."
},
"executionTime": {
"type": "string",
"description": "Elapsed time in seconds, with an s suffix."
}
},
"description": "Operation result envelope."
},
"annotations": {
"readOnlyHint": true,
"openWorldHint": false,
"idempotentHint": true,
"destructiveHint": false
}
}
The title clearly communicates the tool’s action and subject. Keep it concise.
Description90/100
Get all configured project email connectors/mailboxes. Active connectors can send; readableConnectors use connected Microsoft OAuth or complete IMAP settings and can be used with search_email_messages and get_email_messages.
The description explains the capability, when to use it, and what to expect.
Inputs92/100
Remove validation rules already expressed in this field’s schema; describe its meaning and usage instead.
projectId
Atomic project ID from list_projects. Omit to use the configured project; if asked to choose, select one of the accessible returned IDs.
Clear enough to supply this argument.
context
Short purpose of this call for the activity log. Exclude personal data and private source content.
Remove validation rules already expressed in this field’s schema; describe its meaning and usage instead.
llm_model
Use the exact model ID executing this call, from runtime/system context, for usage attribution. Supply it on every Atomic MCP tool call, including discovery and feedback, and update it if the model changes. Use the model ID rather than the client app name. If unavailable, omit it; never guess or ask the user.
The title clearly communicates the tool’s action and subject. Keep it concise.
Description91/100
Read up to 20 explicitly selected project mailbox messages by immutable IMAP UID or Microsoft providerMessageId. Returns raw RFC822 content capped at 200,000 characters plus threading metadata. This tool has no mailbox write or send capability.
The description explains the capability, when to use it, and what to expect.
Inputs84/100
Clarify units, where to obtain this value, or conventions not already expressed in the schema.
emailConnectorId
Connector ID. Optional only when one readable connector exists.
Clarify units, where to obtain this value, or conventions not already expressed in the schema.
messages › items › folder
Mailbox folder to inspect; discover provider folder identifiers from the email connection when available.
Clear enough to supply this argument.
messages › items › uid
Message UID within the selected mailbox folder; use the value returned by the message listing.
Clear enough to supply this argument.
messages › items › providerMessageId
Provider-owned message identifier returned by an email read or search.
Clear enough to supply this argument.
projectId
Atomic project ID from list_projects. Omit to use the configured project; if asked to choose, select one of the accessible returned IDs.
Clear enough to supply this argument.
context
Short purpose of this call for the activity log. Exclude personal data and private source content.
Remove validation rules already expressed in this field’s schema; describe its meaning and usage instead.
llm_model
Use the exact model ID executing this call, from runtime/system context, for usage attribution. Supply it on every Atomic MCP tool call, including discovery and feedback, and update it if the model changes. Use the model ID rather than the client app name. If unavailable, omit it; never guess or ask the user.
Remove validation rules already expressed in this field’s schema; describe its meaning and usage instead.
The title clearly communicates the tool’s action and subject. Keep it concise.
Description93/100
Get Google Analytics 4 referral traffic data for a project. Useful for analyzing which external websites are sending traffic, understanding referral sources, and identifying top referral partners. Supports filtering by sessionSource, country, page, and device using ga4Filter. If the user has applied filters on the analytics page, use ga4Filter to apply the same filters to this data. If startDate and endDate are not provided, defaults to last 30 days.
TREND DATA: Each referral source includes a "trends" object showing how sessions changed compared to the previous period:
- sessions: percentage change (e.g., 15 = +15% growth, -10 = -10% decline)
Use trends to identify:
- Growing referral sources worth nurturing
- Declining referral sources that may indicate lost backlinks or partnerships
Reads connected GA4 referral traffic, not GSC search clicks or tracked AI-answer mentions. Match requested dates and filters before comparing sources; no analytics settings are changed.
The description explains the capability, when to use it, and what to expect.
Inputs75/100
Remove validation rules already expressed in this field’s schema; describe its meaning and usage instead.
startDate
Start date in ISO format (YYYY-MM-DD). If not provided, defaults to 30 days ago.
Remove validation rules already expressed in this field’s schema; describe its meaning and usage instead.
endDate
End date in ISO format (YYYY-MM-DD). If not provided, defaults to today.
Remove validation rules already expressed in this field’s schema; describe its meaning and usage instead.
ga4Filter › items › dimension
The dimension to filter on (required)
Remove validation rules already expressed in this field’s schema; describe its meaning and usage instead.
ga4Filter › items › operator
The comparison operator (required)
Remove validation rules already expressed in this field’s schema; describe its meaning and usage instead.
ga4Filter › items › expression
The value to match against (required)
Remove validation rules already expressed in this field’s schema; describe its meaning and usage instead.
page
Page number (1-based). Default: 1. Use with limit for pagination.
Remove validation rules already expressed in this field’s schema; describe its meaning and usage instead.
limit
Number of items per page. Default: 10, Max: 100. Use with page for pagination.
Remove validation rules already expressed in this field’s schema; describe its meaning and usage instead.
search
Search query to filter results (searches in relevant text fields)
Remove validation rules already expressed in this field’s schema; describe its meaning and usage instead.
sortBy
Field name to sort by (e.g., "updatedAt", "title", "clicks")
Explain the meaning of this value, not just its name.
sortOrder
Sort order: "asc" for ascending, "desc" for descending. Default: "desc"
Explain the meaning of this value, not just its name.
projectId
Atomic project ID from list_projects. Omit to use the configured project; if asked to choose, select one of the accessible returned IDs.
Remove validation rules already expressed in this field’s schema; describe its meaning and usage instead.
context
Short purpose of this call for the activity log. Exclude personal data and private source content.
Clear enough to supply this argument.
llm_model
Use the exact model ID executing this call, from runtime/system context, for usage attribution. Supply it on every Atomic MCP tool call, including discovery and feedback, and update it if the model changes. Use the model ID rather than the client app name. If unavailable, omit it; never guess or ask the user.
{
"type": "object",
"required": [
"success"
],
"properties": {
"url": {
"type": "string",
"description": "Link for resolving the failure or completing the operation."
},
"data": {
"type": "object",
"required": [
"data",
"total",
"page",
"limit",
"totalPages",
"nextPage"
],
"properties": {
"data": {
"type": "array",
"items": {
"type": "object",
"required": [
"source",
"sessions"
],
"properties": {
"source": {
"type": "string"
},
"trends": {
"type": "object",
"description": "Trend data showing how sessions changed compared to the previous period of equal length.\n- sessions: percentage change (15 = +15% growth, -10 = -10% decline)"
},
"sessions": {
"type": "number"
}
}
},
"description": "Result items or operation data inside this returned payload. Pagination fields describe only this result page."
},
"page": {
"type": "number",
"description": "Page number represented by these items."
},
"limit": {
"type": "number",
"description": "Maximum number of items requested for this page."
},
"total": {
"type": "number",
"description": "Total number of matching items across all result pages."
},
"nextPage": {
"anyOf": [
{
"type": "null"
},
{
"type": "number"
}
],
"description": "Next page to request when more results exist; use the returned value rather than constructing a cursor."
},
"totalPages": {
"type": "number",
"description": "Total number of result pages for the current filter and page size."
}
},
"description": "Operation data; optional fields may be absent."
},
"error": {
"type": "string",
"description": "Why the operation failed."
},
"details": {
"type": "object",
"description": "Diagnostics keyed by errorCode."
},
"message": {
"type": "string",
"description": "Outcome or recovery instructions. Project selection means no action ran."
},
"success": {
"type": "boolean",
"description": "Operation success; on false inspect error/errorCode."
},
"upgrade": {
"type": "object",
"description": "Plan-upgrade guidance for an unavailable capability."
},
"category": {
"type": "string",
"description": "Failure category, such as invalid_input or plan_required."
},
"expected": {
"type": "boolean",
"description": "Whether this is an anticipated access, input, plan or state failure."
},
"projects": {
"type": "array",
"items": {
"type": "object",
"properties": {
"id": {
"type": "number",
"description": "Project ID for projectId."
},
"name": {
"type": "string",
"description": "Project name."
}
},
"description": "Accessible project."
},
"description": "Accessible project choices. Select a projectId and retry."
},
"errorCode": {
"type": "string",
"description": "Failure code for recovery."
},
"retryable": {
"type": "boolean",
"description": "Whether an unchanged request can be retried."
},
"statusCode": {
"type": "number",
"description": "HTTP-style failure status."
},
"executionTime": {
"type": "string",
"description": "Elapsed time in seconds, with an s suffix."
}
},
"description": "Operation result envelope."
}
Original tool metadata
{
"name": "get_ga4_referrals",
"title": "Get GA4 referrals",
"description": "Get Google Analytics 4 referral traffic data for a project. Useful for analyzing which external websites are sending traffic, understanding referral sources, and identifying top referral partners. Supports filtering by sessionSource, country, page, and device using ga4Filter. If the user has applied filters on the analytics page, use ga4Filter to apply the same filters to this data. If startDate and endDate are not provided, defaults to last 30 days.\n\nTREND DATA: Each referral source includes a \"trends\" object showing how sessions changed compared to the previous period:\n- sessions: percentage change (e.g., 15 = +15% growth, -10 = -10% decline)\n\nUse trends to identify:\n- Growing referral sources worth nurturing\n- Declining referral sources that may indicate lost backlinks or partnerships\n\nReads connected GA4 referral traffic, not GSC search clicks or tracked AI-answer mentions. Match requested dates and filters before comparing sources; no analytics settings are changed.",
"inputSchema": {
"type": "object",
"required": [],
"properties": {
"page": {
"type": "number",
"minimum": 1,
"description": "Page number (1-based). Default: 1. Use with limit for pagination."
},
"limit": {
"type": "number",
"default": 10,
"maximum": 100,
"minimum": 1,
"description": "Number of items per page. Default: 10, Max: 100. Use with page for pagination."
},
"search": {
"type": "string",
"description": "Search query to filter results (searches in relevant text fields)"
},
"sortBy": {
"type": "string",
"description": "Field name to sort by (e.g., \"updatedAt\", \"title\", \"clicks\")"
},
"context": {
"type": "string",
"maxLength": 120,
"description": "Short purpose of this call for the activity log. Exclude personal data and private source content."
},
"endDate": {
"type": "string",
"description": "End date in ISO format (YYYY-MM-DD). If not provided, defaults to today."
},
"ga4Filter": {
"type": "array",
"items": {
"type": "object",
"properties": {
"operator": {
"enum": [
"contains",
"equals",
"notContains",
"notEquals"
],
"type": "string",
"description": "The comparison operator (required)"
},
"dimension": {
"enum": [
"sessionSource",
"country",
"page",
"device"
],
"type": "string",
"description": "The dimension to filter on (required)"
},
"expression": {
"type": "string",
"description": "The value to match against (required)"
}
},
"description": "A GA4 filter object with dimension, operator, and expression"
},
"description": "GA4 (Google Analytics 4) filters to apply. Use this when the user has applied filters on the analytics page or wants to filter data. Each filter object has:\n- dimension: The field to filter on. Valid values: \"sessionSource\" (traffic source like google, direct, etc.), \"country\" (3-letter country code), \"page\" (URL path), \"device\" (mobile/desktop/tablet).\n- operator: How to match. Valid values: \"contains\", \"equals\", \"notContains\", \"notEquals\".\n- expression: The value to match against.\nExample: [{\"dimension\": \"sessionSource\", \"operator\": \"equals\", \"expression\": \"google\"}] filters to traffic from Google."
},
"llm_model": {
"type": "string",
"maxLength": 128,
"description": "Use the exact model ID executing this call, from runtime/system context, for usage attribution. Supply it on every Atomic MCP tool call, including discovery and feedback, and update it if the model changes. Use the model ID rather than the client app name. If unavailable, omit it; never guess or ask the user."
},
"projectId": {
"type": "number",
"description": "Atomic project ID from list_projects. Omit to use the configured project; if asked to choose, select one of the accessible returned IDs."
},
"sortOrder": {
"enum": [
"asc",
"desc"
],
"type": "string",
"default": "desc",
"description": "Sort order: \"asc\" for ascending, \"desc\" for descending. Default: \"desc\""
},
"startDate": {
"type": "string",
"description": "Start date in ISO format (YYYY-MM-DD). If not provided, defaults to 30 days ago."
}
}
},
"outputSchema": {
"type": "object",
"required": [
"success"
],
"properties": {
"url": {
"type": "string",
"description": "Link for resolving the failure or completing the operation."
},
"data": {
"type": "object",
"required": [
"data",
"total",
"page",
"limit",
"totalPages",
"nextPage"
],
"properties": {
"data": {
"type": "array",
"items": {
"type": "object",
"required": [
"source",
"sessions"
],
"properties": {
"source": {
"type": "string"
},
"trends": {
"type": "object",
"description": "Trend data showing how sessions changed compared to the previous period of equal length.\n- sessions: percentage change (15 = +15% growth, -10 = -10% decline)"
},
"sessions": {
"type": "number"
}
}
},
"description": "Result items or operation data inside this returned payload. Pagination fields describe only this result page."
},
"page": {
"type": "number",
"description": "Page number represented by these items."
},
"limit": {
"type": "number",
"description": "Maximum number of items requested for this page."
},
"total": {
"type": "number",
"description": "Total number of matching items across all result pages."
},
"nextPage": {
"anyOf": [
{
"type": "null"
},
{
"type": "number"
}
],
"description": "Next page to request when more results exist; use the returned value rather than constructing a cursor."
},
"totalPages": {
"type": "number",
"description": "Total number of result pages for the current filter and page size."
}
},
"description": "Operation data; optional fields may be absent."
},
"error": {
"type": "string",
"description": "Why the operation failed."
},
"details": {
"type": "object",
"description": "Diagnostics keyed by errorCode."
},
"message": {
"type": "string",
"description": "Outcome or recovery instructions. Project selection means no action ran."
},
"success": {
"type": "boolean",
"description": "Operation success; on false inspect error/errorCode."
},
"upgrade": {
"type": "object",
"description": "Plan-upgrade guidance for an unavailable capability."
},
"category": {
"type": "string",
"description": "Failure category, such as invalid_input or plan_required."
},
"expected": {
"type": "boolean",
"description": "Whether this is an anticipated access, input, plan or state failure."
},
"projects": {
"type": "array",
"items": {
"type": "object",
"properties": {
"id": {
"type": "number",
"description": "Project ID for projectId."
},
"name": {
"type": "string",
"description": "Project name."
}
},
"description": "Accessible project."
},
"description": "Accessible project choices. Select a projectId and retry."
},
"errorCode": {
"type": "string",
"description": "Failure code for recovery."
},
"retryable": {
"type": "boolean",
"description": "Whether an unchanged request can be retried."
},
"statusCode": {
"type": "number",
"description": "HTTP-style failure status."
},
"executionTime": {
"type": "string",
"description": "Elapsed time in seconds, with an s suffix."
}
},
"description": "Operation result envelope."
},
"annotations": {
"readOnlyHint": true,
"openWorldHint": true,
"idempotentHint": true,
"destructiveHint": false
}
}
The title clearly communicates the tool’s action and subject. Keep it concise.
Description89/100
List a grid's sheets with each sheet's column names and types. Does not return rows or cells.
The description explains the capability, when to use it, and what to expect.
Inputs88/100
Remove validation rules already expressed in this field’s schema; describe its meaning and usage instead.
gridId
Existing project grid ID from get_grids or create_grid.
Clear enough to supply this argument.
projectId
Atomic project ID from list_projects. Omit to use the configured project; if asked to choose, select one of the accessible returned IDs.
Clear enough to supply this argument.
context
Short purpose of this call for the activity log. Exclude personal data and private source content.
Remove validation rules already expressed in this field’s schema; describe its meaning and usage instead.
llm_model
Use the exact model ID executing this call, from runtime/system context, for usage attribution. Supply it on every Atomic MCP tool call, including discovery and feedback, and update it if the model changes. Use the model ID rather than the client app name. If unavailable, omit it; never guess or ask the user.
Remove validation rules already expressed in this field’s schema; describe its meaning and usage instead.
{
"type": "object",
"required": [
"success"
],
"properties": {
"url": {
"type": "string",
"description": "Link for resolving the failure or completing the operation."
},
"data": {
"type": "array",
"items": {
"type": "object",
"required": [
"name",
"position",
"columns"
],
"properties": {
"id": {
"type": "number",
"description": "Identifier of this returned resource. Use it for subsequent reads or edits of the same resource."
},
"name": {
"type": "string",
"description": "Human-readable name of this resource."
},
"columns": {
"type": "array",
"items": {
"type": "object",
"description": "Nested operation-specific fields."
},
"description": "Column definitions returned for the selected sheet or table."
},
"position": {
"type": "number",
"description": "Saved ordering position or visual editor coordinates for this item."
}
}
},
"description": "Operation data; optional fields may be absent."
},
"error": {
"type": "string",
"description": "Why the operation failed."
},
"details": {
"type": "object",
"description": "Diagnostics keyed by errorCode."
},
"message": {
"type": "string",
"description": "Outcome or recovery instructions. Project selection means no action ran."
},
"success": {
"type": "boolean",
"description": "Operation success; on false inspect error/errorCode."
},
"upgrade": {
"type": "object",
"description": "Plan-upgrade guidance for an unavailable capability."
},
"category": {
"type": "string",
"description": "Failure category, such as invalid_input or plan_required."
},
"expected": {
"type": "boolean",
"description": "Whether this is an anticipated access, input, plan or state failure."
},
"projects": {
"type": "array",
"items": {
"type": "object",
"properties": {
"id": {
"type": "number",
"description": "Project ID for projectId."
},
"name": {
"type": "string",
"description": "Project name."
}
},
"description": "Accessible project."
},
"description": "Accessible project choices. Select a projectId and retry."
},
"errorCode": {
"type": "string",
"description": "Failure code for recovery."
},
"retryable": {
"type": "boolean",
"description": "Whether an unchanged request can be retried."
},
"statusCode": {
"type": "number",
"description": "HTTP-style failure status."
},
"executionTime": {
"type": "string",
"description": "Elapsed time in seconds, with an s suffix."
}
},
"description": "Operation result envelope."
}
Original tool metadata
{
"name": "get_grid",
"title": "Get grid",
"description": "List a grid's sheets with each sheet's column names and types. Does not return rows or cells.",
"inputSchema": {
"type": "object",
"required": [
"gridId"
],
"properties": {
"gridId": {
"type": "number",
"description": "Existing project grid ID from get_grids or create_grid."
},
"context": {
"type": "string",
"maxLength": 120,
"description": "Short purpose of this call for the activity log. Exclude personal data and private source content."
},
"llm_model": {
"type": "string",
"maxLength": 128,
"description": "Use the exact model ID executing this call, from runtime/system context, for usage attribution. Supply it on every Atomic MCP tool call, including discovery and feedback, and update it if the model changes. Use the model ID rather than the client app name. If unavailable, omit it; never guess or ask the user."
},
"projectId": {
"type": "number",
"description": "Atomic project ID from list_projects. Omit to use the configured project; if asked to choose, select one of the accessible returned IDs."
}
}
},
"outputSchema": {
"type": "object",
"required": [
"success"
],
"properties": {
"url": {
"type": "string",
"description": "Link for resolving the failure or completing the operation."
},
"data": {
"type": "array",
"items": {
"type": "object",
"required": [
"name",
"position",
"columns"
],
"properties": {
"id": {
"type": "number",
"description": "Identifier of this returned resource. Use it for subsequent reads or edits of the same resource."
},
"name": {
"type": "string",
"description": "Human-readable name of this resource."
},
"columns": {
"type": "array",
"items": {
"type": "object",
"description": "Nested operation-specific fields."
},
"description": "Column definitions returned for the selected sheet or table."
},
"position": {
"type": "number",
"description": "Saved ordering position or visual editor coordinates for this item."
}
}
},
"description": "Operation data; optional fields may be absent."
},
"error": {
"type": "string",
"description": "Why the operation failed."
},
"details": {
"type": "object",
"description": "Diagnostics keyed by errorCode."
},
"message": {
"type": "string",
"description": "Outcome or recovery instructions. Project selection means no action ran."
},
"success": {
"type": "boolean",
"description": "Operation success; on false inspect error/errorCode."
},
"upgrade": {
"type": "object",
"description": "Plan-upgrade guidance for an unavailable capability."
},
"category": {
"type": "string",
"description": "Failure category, such as invalid_input or plan_required."
},
"expected": {
"type": "boolean",
"description": "Whether this is an anticipated access, input, plan or state failure."
},
"projects": {
"type": "array",
"items": {
"type": "object",
"properties": {
"id": {
"type": "number",
"description": "Project ID for projectId."
},
"name": {
"type": "string",
"description": "Project name."
}
},
"description": "Accessible project."
},
"description": "Accessible project choices. Select a projectId and retry."
},
"errorCode": {
"type": "string",
"description": "Failure code for recovery."
},
"retryable": {
"type": "boolean",
"description": "Whether an unchanged request can be retried."
},
"statusCode": {
"type": "number",
"description": "HTTP-style failure status."
},
"executionTime": {
"type": "string",
"description": "Elapsed time in seconds, with an s suffix."
}
},
"description": "Operation result envelope."
},
"annotations": {
"readOnlyHint": true,
"openWorldHint": false,
"idempotentHint": true,
"destructiveHint": false
}
}
The title clearly communicates the tool’s action and subject. Keep it concise.
Description91/100
Inspect one grid JSON cell without loading its full ledger. Start at path=[] mode=inspect to get exact serialized byte sizes, fingerprint and paginated child shapes. Follow nextOffset to null and recursively visit EVERY child to discover unknown ownership fields. Pass the SAME expectedFingerprint for all continuations and descendant/value reads; a changed document returns409 and requires restarting. Path segments are literal object keys (strings) or array indexes (numbers), never JSONPath; depth32, key256bytes, path4096bytes. mode=value returns COMPLETE valueJson text (preserves large numeric literals; SQL null is null, JSON null is "null") or an explicit oversized error; no values are truncated. Large scalar strings cannot be chunked; their shape/size is readable but oversized value reads block completeness. Inspecting shapes alone is not complete value or ownership proof. No data mutation or permission grant.
The description explains the capability, when to use it, and what to expect.
Inputs82/100
Remove validation rules already expressed in this field’s schema; describe its meaning and usage instead.
sheetId
Sheet ID from get_grid or create_grid_sheet; the selected sheet must belong to the current project.
Remove validation rules already expressed in this field’s schema; describe its meaning and usage instead.
rowId
Existing row ID from get_grid_sheet_rows/get_grid_sheet, not its mutable visual position.
Remove validation rules already expressed in this field’s schema; describe its meaning and usage instead.
columnId
Existing column ID from the selected sheet in get_grid/get_grid_sheet, not the display name or position.
Clear enough to supply this argument.
mode
Operation mode selecting how the supplied arguments are interpreted.
Remove validation rules already expressed in this field’s schema; describe its meaning and usage instead.
path
Exact JSON field path within the selected grid cell or native document.
Remove validation rules already expressed in this field’s schema; describe its meaning and usage instead.
offset
Number of matching items to skip before returning this result batch.
Remove validation rules already expressed in this field’s schema; describe its meaning and usage instead.
limit
Maximum number of matching results to return in this request.
Remove validation rules already expressed in this field’s schema; describe its meaning and usage instead.
expectedFingerprint
Fingerprint from the latest read, used to reject edits based on stale state.
Remove validation rules already expressed in this field’s schema; describe its meaning and usage instead.
projectId
Atomic project ID from list_projects. Omit to use the configured project; if asked to choose, select one of the accessible returned IDs.
Remove validation rules already expressed in this field’s schema; describe its meaning and usage instead.
context
Short purpose of this call for the activity log. Exclude personal data and private source content.
Clear enough to supply this argument.
llm_model
Use the exact model ID executing this call, from runtime/system context, for usage attribution. Supply it on every Atomic MCP tool call, including discovery and feedback, and update it if the model changes. Use the model ID rather than the client app name. If unavailable, omit it; never guess or ask the user.
{
"type": "object",
"required": [
"success"
],
"properties": {
"url": {
"type": "string",
"description": "Link for resolving the failure or completing the operation."
},
"data": {
"type": "object",
"required": [
"cellId",
"sheetId",
"rowId",
"columnId",
"fingerprint",
"documentBytes",
"path",
"mode",
"node"
],
"properties": {
"mode": {
"enum": [
"value",
"inspect"
],
"type": "string"
},
"node": {
"type": "object",
"required": [
"type",
"serializedBytes",
"childCount"
],
"properties": {
"type": {
"type": "string",
"description": "Kind of the returned item; determines how its operation-specific fields should be interpreted."
},
"childCount": {
"type": "number"
},
"serializedBytes": {
"type": "number"
}
}
},
"path": {
"type": "array",
"items": {
"anyOf": [
{
"type": "string"
},
{
"type": "number"
}
]
}
},
"rowId": {
"type": "number",
"description": "Grid row identifier for this item."
},
"cellId": {
"type": "number"
},
"sheetId": {
"type": "number",
"description": "Grid sheet that owns this row, column or cell."
},
"children": {
"type": "array",
"items": {
"type": "object",
"required": [
"segment",
"node"
],
"properties": {
"node": {
"type": "object",
"description": "Nested operation-specific fields."
},
"segment": {
"anyOf": [
{
"type": "string"
},
{
"type": "number"
}
]
}
}
},
"description": "Shape-only child page. Every entry is visited by following nextOffset to null."
},
"columnId": {
"type": "number",
"description": "Grid column identifier for this item."
},
"valueJson": {
"anyOf": [
{
"type": "null"
},
{
"type": "string"
}
],
"description": "Complete stored JSON text in mode=value, preserving large numeric literals. SQL NULL is null; JSON null is \"null\"."
},
"nextOffset": {
"anyOf": [
{
"type": "null"
},
{
"type": "number"
}
],
"description": "Offset for the next result page; null means this listing is complete."
},
"fingerprint": {
"type": "string"
},
"documentBytes": {
"type": "number"
}
},
"description": "Operation data; optional fields may be absent."
},
"error": {
"type": "string",
"description": "Why the operation failed."
},
"details": {
"type": "object",
"description": "Diagnostics keyed by errorCode."
},
"message": {
"type": "string",
"description": "Outcome or recovery instructions. Project selection means no action ran."
},
"success": {
"type": "boolean",
"description": "Operation success; on false inspect error/errorCode."
},
"upgrade": {
"type": "object",
"description": "Plan-upgrade guidance for an unavailable capability."
},
"category": {
"type": "string",
"description": "Failure category, such as invalid_input or plan_required."
},
"expected": {
"type": "boolean",
"description": "Whether this is an anticipated access, input, plan or state failure."
},
"projects": {
"type": "array",
"items": {
"type": "object",
"properties": {
"id": {
"type": "number",
"description": "Project ID for projectId."
},
"name": {
"type": "string",
"description": "Project name."
}
},
"description": "Accessible project."
},
"description": "Accessible project choices. Select a projectId and retry."
},
"errorCode": {
"type": "string",
"description": "Failure code for recovery."
},
"retryable": {
"type": "boolean",
"description": "Whether an unchanged request can be retried."
},
"statusCode": {
"type": "number",
"description": "HTTP-style failure status."
},
"executionTime": {
"type": "string",
"description": "Elapsed time in seconds, with an s suffix."
}
},
"description": "Operation result envelope."
}
Original tool metadata
{
"name": "get_grid_cell_json",
"title": "Get grid cell JSON",
"description": "Inspect one grid JSON cell without loading its full ledger. Start at path=[] mode=inspect to get exact serialized byte sizes, fingerprint and paginated child shapes. Follow nextOffset to null and recursively visit EVERY child to discover unknown ownership fields. Pass the SAME expectedFingerprint for all continuations and descendant/value reads; a changed document returns409 and requires restarting. Path segments are literal object keys (strings) or array indexes (numbers), never JSONPath; depth32, key256bytes, path4096bytes. mode=value returns COMPLETE valueJson text (preserves large numeric literals; SQL null is null, JSON null is \"null\") or an explicit oversized error; no values are truncated. Large scalar strings cannot be chunked; their shape/size is readable but oversized value reads block completeness. Inspecting shapes alone is not complete value or ownership proof. No data mutation or permission grant.",
"inputSchema": {
"type": "object",
"required": [
"sheetId",
"rowId",
"columnId"
],
"properties": {
"mode": {
"enum": [
"inspect",
"value"
],
"type": "string",
"default": "inspect",
"description": "Operation mode selecting how the supplied arguments are interpreted."
},
"path": {
"type": "array",
"items": {
"oneOf": [
{
"type": "string",
"maxLength": 256
},
{
"type": "number",
"maximum": 4294967295,
"minimum": 0,
"multipleOf": 1
}
]
},
"default": [],
"maxItems": 32,
"description": "Exact JSON field path within the selected grid cell or native document."
},
"limit": {
"type": "number",
"default": 25,
"maximum": 100,
"minimum": 1,
"multipleOf": 1,
"description": "Maximum number of matching results to return in this request."
},
"rowId": {
"type": "number",
"minimum": 1,
"multipleOf": 1,
"description": "Existing row ID from get_grid_sheet_rows/get_grid_sheet, not its mutable visual position."
},
"offset": {
"type": "number",
"default": 0,
"minimum": 0,
"multipleOf": 1,
"description": "Number of matching items to skip before returning this result batch."
},
"context": {
"type": "string",
"maxLength": 120,
"description": "Short purpose of this call for the activity log. Exclude personal data and private source content."
},
"sheetId": {
"type": "number",
"minimum": 1,
"multipleOf": 1,
"description": "Sheet ID from get_grid or create_grid_sheet; the selected sheet must belong to the current project."
},
"columnId": {
"type": "number",
"minimum": 1,
"multipleOf": 1,
"description": "Existing column ID from the selected sheet in get_grid/get_grid_sheet, not the display name or position."
},
"llm_model": {
"type": "string",
"maxLength": 128,
"description": "Use the exact model ID executing this call, from runtime/system context, for usage attribution. Supply it on every Atomic MCP tool call, including discovery and feedback, and update it if the model changes. Use the model ID rather than the client app name. If unavailable, omit it; never guess or ask the user."
},
"projectId": {
"type": "number",
"description": "Atomic project ID from list_projects. Omit to use the configured project; if asked to choose, select one of the accessible returned IDs."
},
"expectedFingerprint": {
"type": "string",
"pattern": "^[a-f0-9]{64}$",
"description": "Fingerprint from the latest read, used to reject edits based on stale state."
}
}
},
"outputSchema": {
"type": "object",
"required": [
"success"
],
"properties": {
"url": {
"type": "string",
"description": "Link for resolving the failure or completing the operation."
},
"data": {
"type": "object",
"required": [
"cellId",
"sheetId",
"rowId",
"columnId",
"fingerprint",
"documentBytes",
"path",
"mode",
"node"
],
"properties": {
"mode": {
"enum": [
"value",
"inspect"
],
"type": "string"
},
"node": {
"type": "object",
"required": [
"type",
"serializedBytes",
"childCount"
],
"properties": {
"type": {
"type": "string",
"description": "Kind of the returned item; determines how its operation-specific fields should be interpreted."
},
"childCount": {
"type": "number"
},
"serializedBytes": {
"type": "number"
}
}
},
"path": {
"type": "array",
"items": {
"anyOf": [
{
"type": "string"
},
{
"type": "number"
}
]
}
},
"rowId": {
"type": "number",
"description": "Grid row identifier for this item."
},
"cellId": {
"type": "number"
},
"sheetId": {
"type": "number",
"description": "Grid sheet that owns this row, column or cell."
},
"children": {
"type": "array",
"items": {
"type": "object",
"required": [
"segment",
"node"
],
"properties": {
"node": {
"type": "object",
"description": "Nested operation-specific fields."
},
"segment": {
"anyOf": [
{
"type": "string"
},
{
"type": "number"
}
]
}
}
},
"description": "Shape-only child page. Every entry is visited by following nextOffset to null."
},
"columnId": {
"type": "number",
"description": "Grid column identifier for this item."
},
"valueJson": {
"anyOf": [
{
"type": "null"
},
{
"type": "string"
}
],
"description": "Complete stored JSON text in mode=value, preserving large numeric literals. SQL NULL is null; JSON null is \"null\"."
},
"nextOffset": {
"anyOf": [
{
"type": "null"
},
{
"type": "number"
}
],
"description": "Offset for the next result page; null means this listing is complete."
},
"fingerprint": {
"type": "string"
},
"documentBytes": {
"type": "number"
}
},
"description": "Operation data; optional fields may be absent."
},
"error": {
"type": "string",
"description": "Why the operation failed."
},
"details": {
"type": "object",
"description": "Diagnostics keyed by errorCode."
},
"message": {
"type": "string",
"description": "Outcome or recovery instructions. Project selection means no action ran."
},
"success": {
"type": "boolean",
"description": "Operation success; on false inspect error/errorCode."
},
"upgrade": {
"type": "object",
"description": "Plan-upgrade guidance for an unavailable capability."
},
"category": {
"type": "string",
"description": "Failure category, such as invalid_input or plan_required."
},
"expected": {
"type": "boolean",
"description": "Whether this is an anticipated access, input, plan or state failure."
},
"projects": {
"type": "array",
"items": {
"type": "object",
"properties": {
"id": {
"type": "number",
"description": "Project ID for projectId."
},
"name": {
"type": "string",
"description": "Project name."
}
},
"description": "Accessible project."
},
"description": "Accessible project choices. Select a projectId and retry."
},
"errorCode": {
"type": "string",
"description": "Failure code for recovery."
},
"retryable": {
"type": "boolean",
"description": "Whether an unchanged request can be retried."
},
"statusCode": {
"type": "number",
"description": "HTTP-style failure status."
},
"executionTime": {
"type": "string",
"description": "Elapsed time in seconds, with an s suffix."
}
},
"description": "Operation result envelope."
},
"annotations": {
"readOnlyHint": true,
"openWorldHint": false,
"idempotentHint": true,
"destructiveHint": false
}
}
The title clearly communicates the tool’s action and subject. Keep it concise.
Description93/100
Get one complete grid sheet by ID, including its columns, rows, and cells. For large sheets, producers, or scans, use get_grid_sheet_rows for bounded pagination instead.
The description explains the capability, when to use it, and what to expect.
Inputs94/100
Remove validation rules already expressed in this field’s schema; describe its meaning and usage instead.
sheetId
Sheet ID from get_grid or create_grid_sheet; the selected sheet must belong to the current project.
Clear enough to supply this argument.
projectId
Atomic project ID from list_projects. Omit to use the configured project; if asked to choose, select one of the accessible returned IDs.
Clear enough to supply this argument.
context
Short purpose of this call for the activity log. Exclude personal data and private source content.
Remove validation rules already expressed in this field’s schema; describe its meaning and usage instead.
llm_model
Use the exact model ID executing this call, from runtime/system context, for usage attribution. Supply it on every Atomic MCP tool call, including discovery and feedback, and update it if the model changes. Use the model ID rather than the client app name. If unavailable, omit it; never guess or ask the user.
{
"type": "object",
"required": [
"success"
],
"properties": {
"url": {
"type": "string",
"description": "Link for resolving the failure or completing the operation."
},
"data": {
"type": "object",
"required": [
"columns",
"rows",
"cells",
"gridId",
"name",
"position",
"createdAt",
"updatedAt"
],
"properties": {
"id": {
"type": "number",
"description": "Identifier of this returned resource. Use it for subsequent reads or edits of the same resource."
},
"name": {
"type": "string",
"description": "Human-readable name of this resource."
},
"rows": {
"type": "array",
"items": {
"type": "object",
"required": [
"sheetId",
"position",
"createdAt",
"updatedAt"
],
"properties": {
"id": {
"type": "number",
"description": "Identifier of this returned resource. Use it for subsequent reads or edits of the same resource."
},
"sheetId": {
"type": "number",
"description": "Grid sheet that owns this row, column or cell."
},
"position": {
"type": "number",
"description": "Saved ordering position or visual editor coordinates for this item."
},
"createdAt": {
"type": "string",
"format": "date-time",
"description": "Date and time this record was created, serialized as ISO 8601."
},
"updatedAt": {
"type": "string",
"format": "date-time",
"description": "Date and time this record was last updated, serialized as ISO 8601."
}
}
},
"description": "Rows returned for the selected sheet, table or reporting query."
},
"cells": {
"type": "array",
"items": {
"type": "object",
"required": [
"rowId",
"columnId",
"status",
"createdAt",
"updatedAt"
],
"properties": {
"id": {
"type": "number",
"description": "Identifier of this returned resource. Use it for subsequent reads or edits of the same resource."
},
"error": {
"anyOf": [
{
"type": "null"
},
{
"type": "string"
}
],
"description": "Failure details reported by this operation or its provider."
},
"rowId": {
"type": "number",
"description": "Grid row identifier for this item."
},
"value": {
"description": "Returned value for the containing field, setting or observation."
},
"status": {
"enum": [
"EMPTY",
"PENDING",
"RUNNING",
"WAITING_FOR_APPROVAL",
"COMPLETED",
"FAILED",
"CANCELED"
],
"type": "string",
"description": "Current saved or execution state reported by the operation."
},
"columnId": {
"type": "number",
"description": "Grid column identifier for this item."
},
"createdAt": {
"type": "string",
"format": "date-time",
"description": "Date and time this record was created, serialized as ISO 8601."
},
"updatedAt": {
"type": "string",
"format": "date-time",
"description": "Date and time this record was last updated, serialized as ISO 8601."
},
"scheduledAt": {
"anyOf": [
{
"type": "null"
},
{
"type": "string",
"format": "date-time",
"description": "Timestamp serialized as an ISO 8601 date and time."
}
],
"description": "Date and time this task or publication is scheduled to run."
},
"workflowRunId": {
"anyOf": [
{
"type": "null"
},
{
"type": "number"
}
],
"description": "Workflow execution associated with this result, distinct from its definition ID."
},
"workflowStepTestRunId": {
"anyOf": [
{
"type": "null"
},
{
"type": "number"
}
],
"description": "Existing workflow step test execution associated with this result."
}
}
}
},
"gridId": {
"type": "number",
"description": "Grid that owns these sheets or results."
},
"columns": {
"type": "array",
"items": {
"type": "object",
"required": [
"sheetId",
"name",
"type",
"position",
"config",
"createdAt",
"updatedAt"
],
"properties": {
"id": {
"type": "number",
"description": "Identifier of this returned resource. Use it for subsequent reads or edits of the same resource."
},
"name": {
"type": "string",
"description": "Human-readable name of this resource."
},
"type": {
"enum": [
"TEXT",
"LONG_TEXT",
"NUMBER",
"CONTENT",
"URL",
"DATE",
"DATETIME",
"SINGLE_SELECT",
"JSON",
"SOCIAL_POST",
"IMAGE_URL",
"FILE",
"WORKFLOW_STEP",
"WORKFLOW"
],
"type": "string",
"description": "Kind of the returned item; determines how its operation-specific fields should be interpreted."
},
"config": {
"type": "object",
"description": "Saved configuration specific to this resource's type."
},
"sheetId": {
"type": "number",
"description": "Grid sheet that owns this row, column or cell."
},
"position": {
"type": "number",
"description": "Saved ordering position or visual editor coordinates for this item."
},
"createdAt": {
"type": "string",
"format": "date-time",
"description": "Date and time this record was created, serialized as ISO 8601."
},
"updatedAt": {
"type": "string",
"format": "date-time",
"description": "Date and time this record was last updated, serialized as ISO 8601."
}
}
},
"description": "Column definitions returned for the selected sheet or table."
},
"position": {
"type": "number",
"description": "Saved ordering position or visual editor coordinates for this item."
},
"createdAt": {
"type": "string",
"format": "date-time",
"description": "Date and time this record was created, serialized as ISO 8601."
},
"updatedAt": {
"type": "string",
"format": "date-time",
"description": "Date and time this record was last updated, serialized as ISO 8601."
}
},
"description": "Operation data; optional fields may be absent."
},
"error": {
"type": "string",
"description": "Why the operation failed."
},
"details": {
"type": "object",
"description": "Diagnostics keyed by errorCode."
},
"message": {
"type": "string",
"description": "Outcome or recovery instructions. Project selection means no action ran."
},
"success": {
"type": "boolean",
"description": "Operation success; on false inspect error/errorCode."
},
"upgrade": {
"type": "object",
"description": "Plan-upgrade guidance for an unavailable capability."
},
"category": {
"type": "string",
"description": "Failure category, such as invalid_input or plan_required."
},
"expected": {
"type": "boolean",
"description": "Whether this is an anticipated access, input, plan or state failure."
},
"projects": {
"type": "array",
"items": {
"type": "object",
"properties": {
"id": {
"type": "number",
"description": "Project ID for projectId."
},
"name": {
"type": "string",
"description": "Project name."
}
},
"description": "Accessible project."
},
"description": "Accessible project choices. Select a projectId and retry."
},
"errorCode": {
"type": "string",
"description": "Failure code for recovery."
},
"retryable": {
"type": "boolean",
"description": "Whether an unchanged request can be retried."
},
"statusCode": {
"type": "number",
"description": "HTTP-style failure status."
},
"executionTime": {
"type": "string",
"description": "Elapsed time in seconds, with an s suffix."
}
},
"description": "Operation result envelope."
}
Original tool metadata
{
"name": "get_grid_sheet",
"title": "Get grid sheet",
"description": "Get one complete grid sheet by ID, including its columns, rows, and cells. For large sheets, producers, or scans, use get_grid_sheet_rows for bounded pagination instead.",
"inputSchema": {
"type": "object",
"required": [
"sheetId"
],
"properties": {
"context": {
"type": "string",
"maxLength": 120,
"description": "Short purpose of this call for the activity log. Exclude personal data and private source content."
},
"sheetId": {
"type": "number",
"description": "Sheet ID from get_grid or create_grid_sheet; the selected sheet must belong to the current project."
},
"llm_model": {
"type": "string",
"maxLength": 128,
"description": "Use the exact model ID executing this call, from runtime/system context, for usage attribution. Supply it on every Atomic MCP tool call, including discovery and feedback, and update it if the model changes. Use the model ID rather than the client app name. If unavailable, omit it; never guess or ask the user."
},
"projectId": {
"type": "number",
"description": "Atomic project ID from list_projects. Omit to use the configured project; if asked to choose, select one of the accessible returned IDs."
}
}
},
"outputSchema": {
"type": "object",
"required": [
"success"
],
"properties": {
"url": {
"type": "string",
"description": "Link for resolving the failure or completing the operation."
},
"data": {
"type": "object",
"required": [
"columns",
"rows",
"cells",
"gridId",
"name",
"position",
"createdAt",
"updatedAt"
],
"properties": {
"id": {
"type": "number",
"description": "Identifier of this returned resource. Use it for subsequent reads or edits of the same resource."
},
"name": {
"type": "string",
"description": "Human-readable name of this resource."
},
"rows": {
"type": "array",
"items": {
"type": "object",
"required": [
"sheetId",
"position",
"createdAt",
"updatedAt"
],
"properties": {
"id": {
"type": "number",
"description": "Identifier of this returned resource. Use it for subsequent reads or edits of the same resource."
},
"sheetId": {
"type": "number",
"description": "Grid sheet that owns this row, column or cell."
},
"position": {
"type": "number",
"description": "Saved ordering position or visual editor coordinates for this item."
},
"createdAt": {
"type": "string",
"format": "date-time",
"description": "Date and time this record was created, serialized as ISO 8601."
},
"updatedAt": {
"type": "string",
"format": "date-time",
"description": "Date and time this record was last updated, serialized as ISO 8601."
}
}
},
"description": "Rows returned for the selected sheet, table or reporting query."
},
"cells": {
"type": "array",
"items": {
"type": "object",
"required": [
"rowId",
"columnId",
"status",
"createdAt",
"updatedAt"
],
"properties": {
"id": {
"type": "number",
"description": "Identifier of this returned resource. Use it for subsequent reads or edits of the same resource."
},
"error": {
"anyOf": [
{
"type": "null"
},
{
"type": "string"
}
],
"description": "Failure details reported by this operation or its provider."
},
"rowId": {
"type": "number",
"description": "Grid row identifier for this item."
},
"value": {
"description": "Returned value for the containing field, setting or observation."
},
"status": {
"enum": [
"EMPTY",
"PENDING",
"RUNNING",
"WAITING_FOR_APPROVAL",
"COMPLETED",
"FAILED",
"CANCELED"
],
"type": "string",
"description": "Current saved or execution state reported by the operation."
},
"columnId": {
"type": "number",
"description": "Grid column identifier for this item."
},
"createdAt": {
"type": "string",
"format": "date-time",
"description": "Date and time this record was created, serialized as ISO 8601."
},
"updatedAt": {
"type": "string",
"format": "date-time",
"description": "Date and time this record was last updated, serialized as ISO 8601."
},
"scheduledAt": {
"anyOf": [
{
"type": "null"
},
{
"type": "string",
"format": "date-time",
"description": "Timestamp serialized as an ISO 8601 date and time."
}
],
"description": "Date and time this task or publication is scheduled to run."
},
"workflowRunId": {
"anyOf": [
{
"type": "null"
},
{
"type": "number"
}
],
"description": "Workflow execution associated with this result, distinct from its definition ID."
},
"workflowStepTestRunId": {
"anyOf": [
{
"type": "null"
},
{
"type": "number"
}
],
"description": "Existing workflow step test execution associated with this result."
}
}
}
},
"gridId": {
"type": "number",
"description": "Grid that owns these sheets or results."
},
"columns": {
"type": "array",
"items": {
"type": "object",
"required": [
"sheetId",
"name",
"type",
"position",
"config",
"createdAt",
"updatedAt"
],
"properties": {
"id": {
"type": "number",
"description": "Identifier of this returned resource. Use it for subsequent reads or edits of the same resource."
},
"name": {
"type": "string",
"description": "Human-readable name of this resource."
},
"type": {
"enum": [
"TEXT",
"LONG_TEXT",
"NUMBER",
"CONTENT",
"URL",
"DATE",
"DATETIME",
"SINGLE_SELECT",
"JSON",
"SOCIAL_POST",
"IMAGE_URL",
"FILE",
"WORKFLOW_STEP",
"WORKFLOW"
],
"type": "string",
"description": "Kind of the returned item; determines how its operation-specific fields should be interpreted."
},
"config": {
"type": "object",
"description": "Saved configuration specific to this resource's type."
},
"sheetId": {
"type": "number",
"description": "Grid sheet that owns this row, column or cell."
},
"position": {
"type": "number",
"description": "Saved ordering position or visual editor coordinates for this item."
},
"createdAt": {
"type": "string",
"format": "date-time",
"description": "Date and time this record was created, serialized as ISO 8601."
},
"updatedAt": {
"type": "string",
"format": "date-time",
"description": "Date and time this record was last updated, serialized as ISO 8601."
}
}
},
"description": "Column definitions returned for the selected sheet or table."
},
"position": {
"type": "number",
"description": "Saved ordering position or visual editor coordinates for this item."
},
"createdAt": {
"type": "string",
"format": "date-time",
"description": "Date and time this record was created, serialized as ISO 8601."
},
"updatedAt": {
"type": "string",
"format": "date-time",
"description": "Date and time this record was last updated, serialized as ISO 8601."
}
},
"description": "Operation data; optional fields may be absent."
},
"error": {
"type": "string",
"description": "Why the operation failed."
},
"details": {
"type": "object",
"description": "Diagnostics keyed by errorCode."
},
"message": {
"type": "string",
"description": "Outcome or recovery instructions. Project selection means no action ran."
},
"success": {
"type": "boolean",
"description": "Operation success; on false inspect error/errorCode."
},
"upgrade": {
"type": "object",
"description": "Plan-upgrade guidance for an unavailable capability."
},
"category": {
"type": "string",
"description": "Failure category, such as invalid_input or plan_required."
},
"expected": {
"type": "boolean",
"description": "Whether this is an anticipated access, input, plan or state failure."
},
"projects": {
"type": "array",
"items": {
"type": "object",
"properties": {
"id": {
"type": "number",
"description": "Project ID for projectId."
},
"name": {
"type": "string",
"description": "Project name."
}
},
"description": "Accessible project."
},
"description": "Accessible project choices. Select a projectId and retry."
},
"errorCode": {
"type": "string",
"description": "Failure code for recovery."
},
"retryable": {
"type": "boolean",
"description": "Whether an unchanged request can be retried."
},
"statusCode": {
"type": "number",
"description": "HTTP-style failure status."
},
"executionTime": {
"type": "string",
"description": "Elapsed time in seconds, with an s suffix."
}
},
"description": "Operation result envelope."
},
"annotations": {
"readOnlyHint": true,
"openWorldHint": false,
"idempotentHint": true,
"destructiveHint": false
}
}
The title clearly communicates the tool’s action and subject. Keep it concise.
Description94/100
Read a bounded grid sheet page without the full archive. Rows are ordered by immutable ID, not position. Start with afterRowId 0; repeat with returned nextAfterRowId and the same throughRowId and columnIds until nextAfterRowId is null. Pages may be shorter than limit due to a byte budget. Columns include names/types/positions, not workflow configs. Values are complete, never truncated. A row larger than the page size target is returned intact on its own. A scan excludes new appended rows but is not a cross-request snapshot of edits or deletions.
The description explains the capability, when to use it, and what to expect.
Inputs72/100
Remove validation rules already expressed in this field’s schema; describe its meaning and usage instead.
sheetId
Sheet ID from get_grid or create_grid_sheet; the selected sheet must belong to the current project.
Remove validation rules already expressed in this field’s schema; describe its meaning and usage instead.
limit
Maximum number of matching results to return in this request.
Remove validation rules already expressed in this field’s schema; describe its meaning and usage instead.
afterRowId
Existing row after which to place the new or moved row; obtain it from get_grid_sheet_rows.
Resolve the mismatch between this description and its schema constraints.
throughRowId
Upper ID from the first page; omit only when starting a new scan.
Remove validation rules already expressed in this field’s schema; describe its meaning and usage instead.
columnIds
Ordered grid column identifiers from get_grid_sheet.
Remove validation rules already expressed in this field’s schema; describe its meaning and usage instead.
projectId
Atomic project ID from list_projects. Omit to use the configured project; if asked to choose, select one of the accessible returned IDs.
Clear enough to supply this argument.
context
Short purpose of this call for the activity log. Exclude personal data and private source content.
Remove validation rules already expressed in this field’s schema; describe its meaning and usage instead.
llm_model
Use the exact model ID executing this call, from runtime/system context, for usage attribution. Supply it on every Atomic MCP tool call, including discovery and feedback, and update it if the model changes. Use the model ID rather than the client app name. If unavailable, omit it; never guess or ask the user.
Align the output schema with the tool’s documented result.
View output schema
{
"type": "object",
"required": [
"success"
],
"properties": {
"url": {
"type": "string",
"description": "Link for resolving the failure or completing the operation."
},
"data": {
"type": "object",
"required": [
"sheet",
"columns",
"rows",
"cells",
"throughRowId",
"nextAfterRowId"
],
"properties": {
"rows": {
"type": "array",
"items": {
"type": "object",
"required": [
"sheetId",
"position",
"createdAt",
"updatedAt"
],
"properties": {
"id": {
"type": "number",
"description": "Identifier of this returned resource. Use it for subsequent reads or edits of the same resource."
},
"sheetId": {
"type": "number",
"description": "Grid sheet that owns this row, column or cell."
},
"position": {
"type": "number",
"description": "Saved ordering position or visual editor coordinates for this item."
},
"createdAt": {
"type": "string",
"format": "date-time",
"description": "Date and time this record was created, serialized as ISO 8601."
},
"updatedAt": {
"type": "string",
"format": "date-time",
"description": "Date and time this record was last updated, serialized as ISO 8601."
}
}
},
"description": "Rows returned for the selected sheet, table or reporting query."
},
"cells": {
"type": "array",
"items": {
"type": "object",
"required": [
"rowId",
"columnId",
"status",
"createdAt",
"updatedAt"
],
"properties": {
"id": {
"type": "number",
"description": "Identifier of this returned resource. Use it for subsequent reads or edits of the same resource."
},
"error": {
"anyOf": [
{
"type": "null"
},
{
"type": "string"
}
],
"description": "Failure details reported by this operation or its provider."
},
"rowId": {
"type": "number",
"description": "Grid row identifier for this item."
},
"value": {
"description": "Returned value for the containing field, setting or observation."
},
"status": {
"enum": [
"EMPTY",
"PENDING",
"RUNNING",
"WAITING_FOR_APPROVAL",
"COMPLETED",
"FAILED",
"CANCELED"
],
"type": "string",
"description": "Current saved or execution state reported by the operation."
},
"columnId": {
"type": "number",
"description": "Grid column identifier for this item."
},
"createdAt": {
"type": "string",
"format": "date-time",
"description": "Date and time this record was created, serialized as ISO 8601."
},
"updatedAt": {
"type": "string",
"format": "date-time",
"description": "Date and time this record was last updated, serialized as ISO 8601."
},
"scheduledAt": {
"anyOf": [
{
"type": "null"
},
{
"type": "string",
"format": "date-time",
"description": "Timestamp serialized as an ISO 8601 date and time."
}
],
"description": "Date and time this task or publication is scheduled to run."
},
"workflowRunId": {
"anyOf": [
{
"type": "null"
},
{
"type": "number"
}
],
"description": "Workflow execution associated with this result, distinct from its definition ID."
},
"workflowStepTestRunId": {
"anyOf": [
{
"type": "null"
},
{
"type": "number"
}
],
"description": "Existing workflow step test execution associated with this result."
}
}
}
},
"sheet": {
"type": "object",
"required": [
"gridId",
"name",
"position",
"createdAt",
"updatedAt"
],
"properties": {
"id": {
"type": "number",
"description": "Identifier of this returned resource. Use it for subsequent reads or edits of the same resource."
},
"name": {
"type": "string",
"description": "Human-readable name of this resource."
},
"gridId": {
"type": "number",
"description": "Grid that owns these sheets or results."
},
"position": {
"type": "number",
"description": "Saved ordering position or visual editor coordinates for this item."
},
"createdAt": {
"type": "string",
"format": "date-time",
"description": "Date and time this record was created, serialized as ISO 8601."
},
"updatedAt": {
"type": "string",
"format": "date-time",
"description": "Date and time this record was last updated, serialized as ISO 8601."
}
}
},
"columns": {
"type": "array",
"items": {
"type": "object",
"required": [
"position",
"name",
"type",
"sheetId"
],
"properties": {
"id": {
"type": "number",
"description": "Identifier of this returned resource. Use it for subsequent reads or edits of the same resource."
},
"name": {
"type": "string",
"description": "Human-readable name of this resource."
},
"type": {
"enum": [
"TEXT",
"LONG_TEXT",
"NUMBER",
"CONTENT",
"URL",
"DATE",
"DATETIME",
"SINGLE_SELECT",
"JSON",
"SOCIAL_POST",
"IMAGE_URL",
"FILE",
"WORKFLOW_STEP",
"WORKFLOW"
],
"type": "string",
"description": "Kind of the returned item; determines how its operation-specific fields should be interpreted."
},
"sheetId": {
"type": "number",
"description": "Grid sheet that owns this row, column or cell."
},
"position": {
"type": "number",
"description": "Saved ordering position or visual editor coordinates for this item."
}
}
},
"description": "Column definitions returned for the selected sheet or table."
},
"throughRowId": {
"type": "number"
},
"nextAfterRowId": {
"anyOf": [
{
"type": "null"
},
{
"type": "number"
}
]
}
},
"description": "Operation data; optional fields may be absent."
},
"error": {
"type": "string",
"description": "Why the operation failed."
},
"details": {
"type": "object",
"description": "Diagnostics keyed by errorCode."
},
"message": {
"type": "string",
"description": "Outcome or recovery instructions. Project selection means no action ran."
},
"success": {
"type": "boolean",
"description": "Operation success; on false inspect error/errorCode."
},
"upgrade": {
"type": "object",
"description": "Plan-upgrade guidance for an unavailable capability."
},
"category": {
"type": "string",
"description": "Failure category, such as invalid_input or plan_required."
},
"expected": {
"type": "boolean",
"description": "Whether this is an anticipated access, input, plan or state failure."
},
"projects": {
"type": "array",
"items": {
"type": "object",
"properties": {
"id": {
"type": "number",
"description": "Project ID for projectId."
},
"name": {
"type": "string",
"description": "Project name."
}
},
"description": "Accessible project."
},
"description": "Accessible project choices. Select a projectId and retry."
},
"errorCode": {
"type": "string",
"description": "Failure code for recovery."
},
"retryable": {
"type": "boolean",
"description": "Whether an unchanged request can be retried."
},
"statusCode": {
"type": "number",
"description": "HTTP-style failure status."
},
"executionTime": {
"type": "string",
"description": "Elapsed time in seconds, with an s suffix."
}
},
"description": "Operation result envelope."
}
Original tool metadata
{
"name": "get_grid_sheet_rows",
"title": "Get grid sheet rows",
"description": "Read a bounded grid sheet page without the full archive. Rows are ordered by immutable ID, not position. Start with afterRowId 0; repeat with returned nextAfterRowId and the same throughRowId and columnIds until nextAfterRowId is null. Pages may be shorter than limit due to a byte budget. Columns include names/types/positions, not workflow configs. Values are complete, never truncated. A row larger than the page size target is returned intact on its own. A scan excludes new appended rows but is not a cross-request snapshot of edits or deletions.",
"inputSchema": {
"type": "object",
"required": [
"sheetId"
],
"properties": {
"limit": {
"type": "number",
"default": 25,
"maximum": 100,
"minimum": 1,
"multipleOf": 1,
"description": "Maximum number of matching results to return in this request."
},
"context": {
"type": "string",
"maxLength": 120,
"description": "Short purpose of this call for the activity log. Exclude personal data and private source content."
},
"sheetId": {
"type": "number",
"minimum": 1,
"multipleOf": 1,
"description": "Sheet ID from get_grid or create_grid_sheet; the selected sheet must belong to the current project."
},
"columnIds": {
"type": "array",
"items": {
"type": "number",
"minimum": 1,
"multipleOf": 1
},
"maxItems": 50,
"minItems": 1,
"description": "Ordered grid column identifiers from get_grid_sheet.",
"uniqueItems": true
},
"llm_model": {
"type": "string",
"maxLength": 128,
"description": "Use the exact model ID executing this call, from runtime/system context, for usage attribution. Supply it on every Atomic MCP tool call, including discovery and feedback, and update it if the model changes. Use the model ID rather than the client app name. If unavailable, omit it; never guess or ask the user."
},
"projectId": {
"type": "number",
"description": "Atomic project ID from list_projects. Omit to use the configured project; if asked to choose, select one of the accessible returned IDs."
},
"afterRowId": {
"type": "number",
"default": 0,
"minimum": 0,
"multipleOf": 1,
"description": "Existing row after which to place the new or moved row; obtain it from get_grid_sheet_rows."
},
"throughRowId": {
"type": "number",
"minimum": 0,
"multipleOf": 1,
"description": "Upper ID from the first page; omit only when starting a new scan."
}
}
},
"outputSchema": {
"type": "object",
"required": [
"success"
],
"properties": {
"url": {
"type": "string",
"description": "Link for resolving the failure or completing the operation."
},
"data": {
"type": "object",
"required": [
"sheet",
"columns",
"rows",
"cells",
"throughRowId",
"nextAfterRowId"
],
"properties": {
"rows": {
"type": "array",
"items": {
"type": "object",
"required": [
"sheetId",
"position",
"createdAt",
"updatedAt"
],
"properties": {
"id": {
"type": "number",
"description": "Identifier of this returned resource. Use it for subsequent reads or edits of the same resource."
},
"sheetId": {
"type": "number",
"description": "Grid sheet that owns this row, column or cell."
},
"position": {
"type": "number",
"description": "Saved ordering position or visual editor coordinates for this item."
},
"createdAt": {
"type": "string",
"format": "date-time",
"description": "Date and time this record was created, serialized as ISO 8601."
},
"updatedAt": {
"type": "string",
"format": "date-time",
"description": "Date and time this record was last updated, serialized as ISO 8601."
}
}
},
"description": "Rows returned for the selected sheet, table or reporting query."
},
"cells": {
"type": "array",
"items": {
"type": "object",
"required": [
"rowId",
"columnId",
"status",
"createdAt",
"updatedAt"
],
"properties": {
"id": {
"type": "number",
"description": "Identifier of this returned resource. Use it for subsequent reads or edits of the same resource."
},
"error": {
"anyOf": [
{
"type": "null"
},
{
"type": "string"
}
],
"description": "Failure details reported by this operation or its provider."
},
"rowId": {
"type": "number",
"description": "Grid row identifier for this item."
},
"value": {
"description": "Returned value for the containing field, setting or observation."
},
"status": {
"enum": [
"EMPTY",
"PENDING",
"RUNNING",
"WAITING_FOR_APPROVAL",
"COMPLETED",
"FAILED",
"CANCELED"
],
"type": "string",
"description": "Current saved or execution state reported by the operation."
},
"columnId": {
"type": "number",
"description": "Grid column identifier for this item."
},
"createdAt": {
"type": "string",
"format": "date-time",
"description": "Date and time this record was created, serialized as ISO 8601."
},
"updatedAt": {
"type": "string",
"format": "date-time",
"description": "Date and time this record was last updated, serialized as ISO 8601."
},
"scheduledAt": {
"anyOf": [
{
"type": "null"
},
{
"type": "string",
"format": "date-time",
"description": "Timestamp serialized as an ISO 8601 date and time."
}
],
"description": "Date and time this task or publication is scheduled to run."
},
"workflowRunId": {
"anyOf": [
{
"type": "null"
},
{
"type": "number"
}
],
"description": "Workflow execution associated with this result, distinct from its definition ID."
},
"workflowStepTestRunId": {
"anyOf": [
{
"type": "null"
},
{
"type": "number"
}
],
"description": "Existing workflow step test execution associated with this result."
}
}
}
},
"sheet": {
"type": "object",
"required": [
"gridId",
"name",
"position",
"createdAt",
"updatedAt"
],
"properties": {
"id": {
"type": "number",
"description": "Identifier of this returned resource. Use it for subsequent reads or edits of the same resource."
},
"name": {
"type": "string",
"description": "Human-readable name of this resource."
},
"gridId": {
"type": "number",
"description": "Grid that owns these sheets or results."
},
"position": {
"type": "number",
"description": "Saved ordering position or visual editor coordinates for this item."
},
"createdAt": {
"type": "string",
"format": "date-time",
"description": "Date and time this record was created, serialized as ISO 8601."
},
"updatedAt": {
"type": "string",
"format": "date-time",
"description": "Date and time this record was last updated, serialized as ISO 8601."
}
}
},
"columns": {
"type": "array",
"items": {
"type": "object",
"required": [
"position",
"name",
"type",
"sheetId"
],
"properties": {
"id": {
"type": "number",
"description": "Identifier of this returned resource. Use it for subsequent reads or edits of the same resource."
},
"name": {
"type": "string",
"description": "Human-readable name of this resource."
},
"type": {
"enum": [
"TEXT",
"LONG_TEXT",
"NUMBER",
"CONTENT",
"URL",
"DATE",
"DATETIME",
"SINGLE_SELECT",
"JSON",
"SOCIAL_POST",
"IMAGE_URL",
"FILE",
"WORKFLOW_STEP",
"WORKFLOW"
],
"type": "string",
"description": "Kind of the returned item; determines how its operation-specific fields should be interpreted."
},
"sheetId": {
"type": "number",
"description": "Grid sheet that owns this row, column or cell."
},
"position": {
"type": "number",
"description": "Saved ordering position or visual editor coordinates for this item."
}
}
},
"description": "Column definitions returned for the selected sheet or table."
},
"throughRowId": {
"type": "number"
},
"nextAfterRowId": {
"anyOf": [
{
"type": "null"
},
{
"type": "number"
}
]
}
},
"description": "Operation data; optional fields may be absent."
},
"error": {
"type": "string",
"description": "Why the operation failed."
},
"details": {
"type": "object",
"description": "Diagnostics keyed by errorCode."
},
"message": {
"type": "string",
"description": "Outcome or recovery instructions. Project selection means no action ran."
},
"success": {
"type": "boolean",
"description": "Operation success; on false inspect error/errorCode."
},
"upgrade": {
"type": "object",
"description": "Plan-upgrade guidance for an unavailable capability."
},
"category": {
"type": "string",
"description": "Failure category, such as invalid_input or plan_required."
},
"expected": {
"type": "boolean",
"description": "Whether this is an anticipated access, input, plan or state failure."
},
"projects": {
"type": "array",
"items": {
"type": "object",
"properties": {
"id": {
"type": "number",
"description": "Project ID for projectId."
},
"name": {
"type": "string",
"description": "Project name."
}
},
"description": "Accessible project."
},
"description": "Accessible project choices. Select a projectId and retry."
},
"errorCode": {
"type": "string",
"description": "Failure code for recovery."
},
"retryable": {
"type": "boolean",
"description": "Whether an unchanged request can be retried."
},
"statusCode": {
"type": "number",
"description": "HTTP-style failure status."
},
"executionTime": {
"type": "string",
"description": "Elapsed time in seconds, with an s suffix."
}
},
"description": "Operation result envelope."
},
"annotations": {
"readOnlyHint": true,
"openWorldHint": false,
"idempotentHint": true,
"destructiveHint": false
}
}
The title clearly communicates the tool’s action and subject. Keep it concise.
Description86/100
List all grids in the current project. Use this before choosing an existing grid for generated sheet data or workflow-backed grid automation.
The description explains the capability, when to use it, and what to expect.
Inputs92/100
Remove validation rules already expressed in this field’s schema; describe its meaning and usage instead.
projectId
Atomic project ID from list_projects. Omit to use the configured project; if asked to choose, select one of the accessible returned IDs.
Clear enough to supply this argument.
context
Short purpose of this call for the activity log. Exclude personal data and private source content.
Remove validation rules already expressed in this field’s schema; describe its meaning and usage instead.
llm_model
Use the exact model ID executing this call, from runtime/system context, for usage attribution. Supply it on every Atomic MCP tool call, including discovery and feedback, and update it if the model changes. Use the model ID rather than the client app name. If unavailable, omit it; never guess or ask the user.
{
"type": "object",
"required": [
"success"
],
"properties": {
"url": {
"type": "string",
"description": "Link for resolving the failure or completing the operation."
},
"data": {
"type": "array",
"items": {
"type": "object",
"required": [
"projectId",
"name",
"createdAt",
"updatedAt"
],
"properties": {
"id": {
"type": "number",
"description": "Identifier of this returned resource. Use it for subsequent reads or edits of the same resource."
},
"name": {
"type": "string",
"description": "Human-readable name of this resource."
},
"createdAt": {
"type": "string",
"format": "date-time",
"description": "Date and time this record was created, serialized as ISO 8601."
},
"projectId": {
"type": "number",
"description": "Atomic project that owns this resource."
},
"updatedAt": {
"type": "string",
"format": "date-time",
"description": "Date and time this record was last updated, serialized as ISO 8601."
},
"description": {
"anyOf": [
{
"type": "null"
},
{
"type": "string"
}
],
"description": "Saved description of this resource or its purpose."
},
"collectionFolderId": {
"anyOf": [
{
"type": "null"
},
{
"type": "number"
}
],
"description": "Folder containing this item in its Atomic collection; null means top level."
}
}
},
"description": "Operation data; optional fields may be absent."
},
"error": {
"type": "string",
"description": "Why the operation failed."
},
"details": {
"type": "object",
"description": "Diagnostics keyed by errorCode."
},
"message": {
"type": "string",
"description": "Outcome or recovery instructions. Project selection means no action ran."
},
"success": {
"type": "boolean",
"description": "Operation success; on false inspect error/errorCode."
},
"upgrade": {
"type": "object",
"description": "Plan-upgrade guidance for an unavailable capability."
},
"category": {
"type": "string",
"description": "Failure category, such as invalid_input or plan_required."
},
"expected": {
"type": "boolean",
"description": "Whether this is an anticipated access, input, plan or state failure."
},
"projects": {
"type": "array",
"items": {
"type": "object",
"properties": {
"id": {
"type": "number",
"description": "Project ID for projectId."
},
"name": {
"type": "string",
"description": "Project name."
}
},
"description": "Accessible project."
},
"description": "Accessible project choices. Select a projectId and retry."
},
"errorCode": {
"type": "string",
"description": "Failure code for recovery."
},
"retryable": {
"type": "boolean",
"description": "Whether an unchanged request can be retried."
},
"statusCode": {
"type": "number",
"description": "HTTP-style failure status."
},
"executionTime": {
"type": "string",
"description": "Elapsed time in seconds, with an s suffix."
}
},
"description": "Operation result envelope."
}
Original tool metadata
{
"name": "get_grids",
"title": "Get grids",
"description": "List all grids in the current project. Use this before choosing an existing grid for generated sheet data or workflow-backed grid automation.",
"inputSchema": {
"type": "object",
"required": [],
"properties": {
"context": {
"type": "string",
"maxLength": 120,
"description": "Short purpose of this call for the activity log. Exclude personal data and private source content."
},
"llm_model": {
"type": "string",
"maxLength": 128,
"description": "Use the exact model ID executing this call, from runtime/system context, for usage attribution. Supply it on every Atomic MCP tool call, including discovery and feedback, and update it if the model changes. Use the model ID rather than the client app name. If unavailable, omit it; never guess or ask the user."
},
"projectId": {
"type": "number",
"description": "Atomic project ID from list_projects. Omit to use the configured project; if asked to choose, select one of the accessible returned IDs."
}
}
},
"outputSchema": {
"type": "object",
"required": [
"success"
],
"properties": {
"url": {
"type": "string",
"description": "Link for resolving the failure or completing the operation."
},
"data": {
"type": "array",
"items": {
"type": "object",
"required": [
"projectId",
"name",
"createdAt",
"updatedAt"
],
"properties": {
"id": {
"type": "number",
"description": "Identifier of this returned resource. Use it for subsequent reads or edits of the same resource."
},
"name": {
"type": "string",
"description": "Human-readable name of this resource."
},
"createdAt": {
"type": "string",
"format": "date-time",
"description": "Date and time this record was created, serialized as ISO 8601."
},
"projectId": {
"type": "number",
"description": "Atomic project that owns this resource."
},
"updatedAt": {
"type": "string",
"format": "date-time",
"description": "Date and time this record was last updated, serialized as ISO 8601."
},
"description": {
"anyOf": [
{
"type": "null"
},
{
"type": "string"
}
],
"description": "Saved description of this resource or its purpose."
},
"collectionFolderId": {
"anyOf": [
{
"type": "null"
},
{
"type": "number"
}
],
"description": "Folder containing this item in its Atomic collection; null means top level."
}
}
},
"description": "Operation data; optional fields may be absent."
},
"error": {
"type": "string",
"description": "Why the operation failed."
},
"details": {
"type": "object",
"description": "Diagnostics keyed by errorCode."
},
"message": {
"type": "string",
"description": "Outcome or recovery instructions. Project selection means no action ran."
},
"success": {
"type": "boolean",
"description": "Operation success; on false inspect error/errorCode."
},
"upgrade": {
"type": "object",
"description": "Plan-upgrade guidance for an unavailable capability."
},
"category": {
"type": "string",
"description": "Failure category, such as invalid_input or plan_required."
},
"expected": {
"type": "boolean",
"description": "Whether this is an anticipated access, input, plan or state failure."
},
"projects": {
"type": "array",
"items": {
"type": "object",
"properties": {
"id": {
"type": "number",
"description": "Project ID for projectId."
},
"name": {
"type": "string",
"description": "Project name."
}
},
"description": "Accessible project."
},
"description": "Accessible project choices. Select a projectId and retry."
},
"errorCode": {
"type": "string",
"description": "Failure code for recovery."
},
"retryable": {
"type": "boolean",
"description": "Whether an unchanged request can be retried."
},
"statusCode": {
"type": "number",
"description": "HTTP-style failure status."
},
"executionTime": {
"type": "string",
"description": "Elapsed time in seconds, with an s suffix."
}
},
"description": "Operation result envelope."
},
"annotations": {
"readOnlyHint": true,
"openWorldHint": false,
"idempotentHint": true,
"destructiveHint": false
}
}
The title clearly communicates the tool’s action and subject. Keep it concise.
Description89/100
Get Google Search Console geography data for a project. Useful for analyzing search traffic by country, understanding geographic distribution of visitors, and identifying top-performing countries. Supports filtering by query (keyword), page, and device. If the user has applied filters on the analytics page, use gscFilter to apply the same filters to this data. If startDate and endDate are not provided, defaults to last 30 days.
TREND DATA: Each country includes a "trends" object showing how metrics changed compared to the previous period of equal length:
- clicks/impressions/ctr: percentage change (e.g., 15 = +15% growth, -10 = -10% decline)
- position: absolute change (negative = improvement, positive = decline)
Use trends to identify:
- Growing markets (positive clicks/impressions trends)
- Declining markets that may need localized content
- Geographic performance changes over time
Use for geographic segmentation of connected Search Console performance. get_gsc_pages and get_gsc_keywords group the same search scope differently; do not compare unlike filters/date ranges.
The description explains the capability, when to use it, and what to expect.
Inputs75/100
Remove validation rules already expressed in this field’s schema; describe its meaning and usage instead.
startDate
Start date in ISO format (YYYY-MM-DD). If not provided, defaults to 30 days ago.
Remove validation rules already expressed in this field’s schema; describe its meaning and usage instead.
endDate
End date in ISO format (YYYY-MM-DD). If not provided, defaults to today.
Remove validation rules already expressed in this field’s schema; describe its meaning and usage instead.
gscFilter › items › dimension
The dimension to filter on (required)
Remove validation rules already expressed in this field’s schema; describe its meaning and usage instead.
gscFilter › items › operator
The comparison operator (required)
Remove validation rules already expressed in this field’s schema; describe its meaning and usage instead.
gscFilter › items › expression
The value to match against (required)
Remove validation rules already expressed in this field’s schema; describe its meaning and usage instead.
page
Page number (1-based). Default: 1. Use with limit for pagination.
Remove validation rules already expressed in this field’s schema; describe its meaning and usage instead.
limit
Number of items per page. Default: 10, Max: 100. Use with page for pagination.
Remove validation rules already expressed in this field’s schema; describe its meaning and usage instead.
search
Search query to filter results (searches in relevant text fields)
Remove validation rules already expressed in this field’s schema; describe its meaning and usage instead.
sortBy
Field name to sort by (e.g., "updatedAt", "title", "clicks")
Explain the meaning of this value, not just its name.
sortOrder
Sort order: "asc" for ascending, "desc" for descending. Default: "desc"
Explain the meaning of this value, not just its name.
projectId
Atomic project ID from list_projects. Omit to use the configured project; if asked to choose, select one of the accessible returned IDs.
Remove validation rules already expressed in this field’s schema; describe its meaning and usage instead.
context
Short purpose of this call for the activity log. Exclude personal data and private source content.
Clear enough to supply this argument.
llm_model
Use the exact model ID executing this call, from runtime/system context, for usage attribution. Supply it on every Atomic MCP tool call, including discovery and feedback, and update it if the model changes. Use the model ID rather than the client app name. If unavailable, omit it; never guess or ask the user.
{
"type": "object",
"required": [
"success"
],
"properties": {
"url": {
"type": "string",
"description": "Link for resolving the failure or completing the operation."
},
"data": {
"type": "object",
"required": [
"data",
"total",
"page",
"limit",
"totalPages",
"nextPage"
],
"properties": {
"data": {
"type": "array",
"items": {
"type": "object",
"required": [
"country",
"clicks",
"impressions",
"ctr",
"position"
],
"properties": {
"ctr": {
"type": "number"
},
"clicks": {
"type": "number"
},
"trends": {
"type": "object",
"description": "Trend data showing how metrics changed compared to the previous period of equal length.\nFor example, if querying last 30 days, trends compare to the 30 days before that.\n- clicks/impressions/ctr: percentage change (15 = +15% growth, -10 = -10% decline)\n- position: absolute change (negative = improvement, e.g., -2 means moved up 2 positions)"
},
"country": {
"type": "string"
},
"position": {
"type": "number",
"description": "Saved ordering position or visual editor coordinates for this item."
},
"impressions": {
"type": "number"
}
}
},
"description": "Result items or operation data inside this returned payload. Pagination fields describe only this result page."
},
"page": {
"type": "number",
"description": "Page number represented by these items."
},
"limit": {
"type": "number",
"description": "Maximum number of items requested for this page."
},
"total": {
"type": "number",
"description": "Total number of matching items across all result pages."
},
"nextPage": {
"anyOf": [
{
"type": "null"
},
{
"type": "number"
}
],
"description": "Next page to request when more results exist; use the returned value rather than constructing a cursor."
},
"totalPages": {
"type": "number",
"description": "Total number of result pages for the current filter and page size."
}
},
"description": "Operation data; optional fields may be absent."
},
"error": {
"type": "string",
"description": "Why the operation failed."
},
"details": {
"type": "object",
"description": "Diagnostics keyed by errorCode."
},
"message": {
"type": "string",
"description": "Outcome or recovery instructions. Project selection means no action ran."
},
"success": {
"type": "boolean",
"description": "Operation success; on false inspect error/errorCode."
},
"upgrade": {
"type": "object",
"description": "Plan-upgrade guidance for an unavailable capability."
},
"category": {
"type": "string",
"description": "Failure category, such as invalid_input or plan_required."
},
"expected": {
"type": "boolean",
"description": "Whether this is an anticipated access, input, plan or state failure."
},
"projects": {
"type": "array",
"items": {
"type": "object",
"properties": {
"id": {
"type": "number",
"description": "Project ID for projectId."
},
"name": {
"type": "string",
"description": "Project name."
}
},
"description": "Accessible project."
},
"description": "Accessible project choices. Select a projectId and retry."
},
"errorCode": {
"type": "string",
"description": "Failure code for recovery."
},
"retryable": {
"type": "boolean",
"description": "Whether an unchanged request can be retried."
},
"statusCode": {
"type": "number",
"description": "HTTP-style failure status."
},
"executionTime": {
"type": "string",
"description": "Elapsed time in seconds, with an s suffix."
}
},
"description": "Operation result envelope."
}
Original tool metadata
{
"name": "get_gsc_countries",
"title": "Get GSC countries",
"description": "Get Google Search Console geography data for a project. Useful for analyzing search traffic by country, understanding geographic distribution of visitors, and identifying top-performing countries. Supports filtering by query (keyword), page, and device. If the user has applied filters on the analytics page, use gscFilter to apply the same filters to this data. If startDate and endDate are not provided, defaults to last 30 days.\n\nTREND DATA: Each country includes a \"trends\" object showing how metrics changed compared to the previous period of equal length:\n- clicks/impressions/ctr: percentage change (e.g., 15 = +15% growth, -10 = -10% decline)\n- position: absolute change (negative = improvement, positive = decline)\n\nUse trends to identify:\n- Growing markets (positive clicks/impressions trends)\n- Declining markets that may need localized content\n- Geographic performance changes over time\n\nUse for geographic segmentation of connected Search Console performance. get_gsc_pages and get_gsc_keywords group the same search scope differently; do not compare unlike filters/date ranges.",
"inputSchema": {
"type": "object",
"required": [],
"properties": {
"page": {
"type": "number",
"minimum": 1,
"description": "Page number (1-based). Default: 1. Use with limit for pagination."
},
"limit": {
"type": "number",
"default": 10,
"maximum": 100,
"minimum": 1,
"description": "Number of items per page. Default: 10, Max: 100. Use with page for pagination."
},
"search": {
"type": "string",
"description": "Search query to filter results (searches in relevant text fields)"
},
"sortBy": {
"type": "string",
"description": "Field name to sort by (e.g., \"updatedAt\", \"title\", \"clicks\")"
},
"context": {
"type": "string",
"maxLength": 120,
"description": "Short purpose of this call for the activity log. Exclude personal data and private source content."
},
"endDate": {
"type": "string",
"description": "End date in ISO format (YYYY-MM-DD). If not provided, defaults to today."
},
"gscFilter": {
"type": "array",
"items": {
"type": "object",
"properties": {
"operator": {
"enum": [
"contains",
"equals",
"notContains",
"notEquals"
],
"type": "string",
"description": "The comparison operator (required)"
},
"dimension": {
"enum": [
"query",
"page",
"device",
"country"
],
"type": "string",
"description": "The dimension to filter on (required)"
},
"expression": {
"type": "string",
"description": "The value to match against (required)"
}
},
"description": "A GSC filter object with dimension, operator, and expression"
},
"description": "GSC (Google Search Console) filters to apply. Use this when the user has applied filters on the analytics page or wants to filter data. Each filter object has:\n- dimension: The field to filter on. Valid values: \"query\" (keyword/search term), \"page\" (URL), \"device\" (mobile/desktop/tablet), \"country\" (3-letter country code).\n- operator: How to match. Valid values: \"contains\", \"equals\", \"notContains\", \"notEquals\".\n- expression: The value to match against.\nExample: [{\"dimension\": \"page\", \"operator\": \"contains\", \"expression\": \"/blog/\"}] filters to pages containing \"/blog/\" in the URL."
},
"llm_model": {
"type": "string",
"maxLength": 128,
"description": "Use the exact model ID executing this call, from runtime/system context, for usage attribution. Supply it on every Atomic MCP tool call, including discovery and feedback, and update it if the model changes. Use the model ID rather than the client app name. If unavailable, omit it; never guess or ask the user."
},
"projectId": {
"type": "number",
"description": "Atomic project ID from list_projects. Omit to use the configured project; if asked to choose, select one of the accessible returned IDs."
},
"sortOrder": {
"enum": [
"asc",
"desc"
],
"type": "string",
"default": "desc",
"description": "Sort order: \"asc\" for ascending, \"desc\" for descending. Default: \"desc\""
},
"startDate": {
"type": "string",
"description": "Start date in ISO format (YYYY-MM-DD). If not provided, defaults to 30 days ago."
}
}
},
"outputSchema": {
"type": "object",
"required": [
"success"
],
"properties": {
"url": {
"type": "string",
"description": "Link for resolving the failure or completing the operation."
},
"data": {
"type": "object",
"required": [
"data",
"total",
"page",
"limit",
"totalPages",
"nextPage"
],
"properties": {
"data": {
"type": "array",
"items": {
"type": "object",
"required": [
"country",
"clicks",
"impressions",
"ctr",
"position"
],
"properties": {
"ctr": {
"type": "number"
},
"clicks": {
"type": "number"
},
"trends": {
"type": "object",
"description": "Trend data showing how metrics changed compared to the previous period of equal length.\nFor example, if querying last 30 days, trends compare to the 30 days before that.\n- clicks/impressions/ctr: percentage change (15 = +15% growth, -10 = -10% decline)\n- position: absolute change (negative = improvement, e.g., -2 means moved up 2 positions)"
},
"country": {
"type": "string"
},
"position": {
"type": "number",
"description": "Saved ordering position or visual editor coordinates for this item."
},
"impressions": {
"type": "number"
}
}
},
"description": "Result items or operation data inside this returned payload. Pagination fields describe only this result page."
},
"page": {
"type": "number",
"description": "Page number represented by these items."
},
"limit": {
"type": "number",
"description": "Maximum number of items requested for this page."
},
"total": {
"type": "number",
"description": "Total number of matching items across all result pages."
},
"nextPage": {
"anyOf": [
{
"type": "null"
},
{
"type": "number"
}
],
"description": "Next page to request when more results exist; use the returned value rather than constructing a cursor."
},
"totalPages": {
"type": "number",
"description": "Total number of result pages for the current filter and page size."
}
},
"description": "Operation data; optional fields may be absent."
},
"error": {
"type": "string",
"description": "Why the operation failed."
},
"details": {
"type": "object",
"description": "Diagnostics keyed by errorCode."
},
"message": {
"type": "string",
"description": "Outcome or recovery instructions. Project selection means no action ran."
},
"success": {
"type": "boolean",
"description": "Operation success; on false inspect error/errorCode."
},
"upgrade": {
"type": "object",
"description": "Plan-upgrade guidance for an unavailable capability."
},
"category": {
"type": "string",
"description": "Failure category, such as invalid_input or plan_required."
},
"expected": {
"type": "boolean",
"description": "Whether this is an anticipated access, input, plan or state failure."
},
"projects": {
"type": "array",
"items": {
"type": "object",
"properties": {
"id": {
"type": "number",
"description": "Project ID for projectId."
},
"name": {
"type": "string",
"description": "Project name."
}
},
"description": "Accessible project."
},
"description": "Accessible project choices. Select a projectId and retry."
},
"errorCode": {
"type": "string",
"description": "Failure code for recovery."
},
"retryable": {
"type": "boolean",
"description": "Whether an unchanged request can be retried."
},
"statusCode": {
"type": "number",
"description": "HTTP-style failure status."
},
"executionTime": {
"type": "string",
"description": "Elapsed time in seconds, with an s suffix."
}
},
"description": "Operation result envelope."
},
"annotations": {
"readOnlyHint": true,
"openWorldHint": true,
"idempotentHint": true,
"destructiveHint": false
}
}
The title clearly communicates the tool’s action and subject. Keep it concise.
Description88/100
Get Google Search Console device data for a project. Useful for analyzing search traffic by device type (desktop, mobile, tablet), understanding device distribution, and identifying device-specific performance. Supports filtering by query (keyword), page, and country. If the user has applied filters on the analytics page, use gscFilter to apply the same filters to this data. If startDate and endDate are not provided, defaults to last 30 days.
TREND DATA: Each device type includes a "trends" object showing how metrics changed compared to the previous period:
- clicks/impressions/ctr: percentage change (e.g., 15 = +15% growth, -10 = -10% decline)
- position: absolute change (negative = improvement, positive = decline)
Use trends to identify:
- Mobile vs desktop traffic shifts
- Device-specific performance changes that may indicate UX issues
Use for device segmentation of connected Search Console performance. Reads metrics only; use get_gsc_pages for page-level investigation and preserve matching filters/date ranges.
The description explains the capability, when to use it, and what to expect.
Inputs77/100
Remove validation rules already expressed in this field’s schema; describe its meaning and usage instead.
startDate
Start date in ISO format (YYYY-MM-DD). If not provided, defaults to 30 days ago.
Remove validation rules already expressed in this field’s schema; describe its meaning and usage instead.
endDate
End date in ISO format (YYYY-MM-DD). If not provided, defaults to today.
Remove validation rules already expressed in this field’s schema; describe its meaning and usage instead.
gscFilter › items › dimension
The dimension to filter on (required)
Remove validation rules already expressed in this field’s schema; describe its meaning and usage instead.
gscFilter › items › operator
The comparison operator (required)
Remove validation rules already expressed in this field’s schema; describe its meaning and usage instead.
gscFilter › items › expression
The value to match against (required)
Remove validation rules already expressed in this field’s schema; describe its meaning and usage instead.
page
Page number (1-based). Default: 1. Use with limit for pagination.
Remove validation rules already expressed in this field’s schema; describe its meaning and usage instead.
limit
Number of items per page. Default: 10, Max: 100. Use with page for pagination.
Remove validation rules already expressed in this field’s schema; describe its meaning and usage instead.
search
Search query to filter results (searches in relevant text fields)
Remove validation rules already expressed in this field’s schema; describe its meaning and usage instead.
sortBy
Field name to sort by (e.g., "updatedAt", "title", "clicks")
Explain the meaning of this value, not just its name.
sortOrder
Sort order: "asc" for ascending, "desc" for descending. Default: "desc"
Explain the meaning of this value, not just its name.
projectId
Atomic project ID from list_projects. Omit to use the configured project; if asked to choose, select one of the accessible returned IDs.
Clear enough to supply this argument.
context
Short purpose of this call for the activity log. Exclude personal data and private source content.
Clear enough to supply this argument.
llm_model
Use the exact model ID executing this call, from runtime/system context, for usage attribution. Supply it on every Atomic MCP tool call, including discovery and feedback, and update it if the model changes. Use the model ID rather than the client app name. If unavailable, omit it; never guess or ask the user.
Align the output schema with the tool’s documented result.
View output schema
{
"type": "object",
"required": [
"success"
],
"properties": {
"url": {
"type": "string",
"description": "Link for resolving the failure or completing the operation."
},
"data": {
"type": "object",
"required": [
"data",
"total",
"page",
"limit",
"totalPages",
"nextPage"
],
"properties": {
"data": {
"type": "array",
"items": {
"type": "object",
"required": [
"device",
"clicks",
"impressions",
"ctr",
"position"
],
"properties": {
"ctr": {
"type": "number"
},
"clicks": {
"type": "number"
},
"device": {
"type": "string"
},
"trends": {
"type": "object",
"description": "Trend data showing how metrics changed compared to the previous period of equal length.\n- clicks/impressions/ctr: percentage change (15 = +15% growth, -10 = -10% decline)\n- position: absolute change (negative = improvement)"
},
"position": {
"type": "number",
"description": "Saved ordering position or visual editor coordinates for this item."
},
"impressions": {
"type": "number"
}
}
},
"description": "Result items or operation data inside this returned payload. Pagination fields describe only this result page."
},
"page": {
"type": "number",
"description": "Page number represented by these items."
},
"limit": {
"type": "number",
"description": "Maximum number of items requested for this page."
},
"total": {
"type": "number",
"description": "Total number of matching items across all result pages."
},
"nextPage": {
"anyOf": [
{
"type": "null"
},
{
"type": "number"
}
],
"description": "Next page to request when more results exist; use the returned value rather than constructing a cursor."
},
"totalPages": {
"type": "number",
"description": "Total number of result pages for the current filter and page size."
}
},
"description": "Operation data; optional fields may be absent."
},
"error": {
"type": "string",
"description": "Why the operation failed."
},
"details": {
"type": "object",
"description": "Diagnostics keyed by errorCode."
},
"message": {
"type": "string",
"description": "Outcome or recovery instructions. Project selection means no action ran."
},
"success": {
"type": "boolean",
"description": "Operation success; on false inspect error/errorCode."
},
"upgrade": {
"type": "object",
"description": "Plan-upgrade guidance for an unavailable capability."
},
"category": {
"type": "string",
"description": "Failure category, such as invalid_input or plan_required."
},
"expected": {
"type": "boolean",
"description": "Whether this is an anticipated access, input, plan or state failure."
},
"projects": {
"type": "array",
"items": {
"type": "object",
"properties": {
"id": {
"type": "number",
"description": "Project ID for projectId."
},
"name": {
"type": "string",
"description": "Project name."
}
},
"description": "Accessible project."
},
"description": "Accessible project choices. Select a projectId and retry."
},
"errorCode": {
"type": "string",
"description": "Failure code for recovery."
},
"retryable": {
"type": "boolean",
"description": "Whether an unchanged request can be retried."
},
"statusCode": {
"type": "number",
"description": "HTTP-style failure status."
},
"executionTime": {
"type": "string",
"description": "Elapsed time in seconds, with an s suffix."
}
},
"description": "Operation result envelope."
}
Original tool metadata
{
"name": "get_gsc_devices",
"title": "Get GSC devices",
"description": "Get Google Search Console device data for a project. Useful for analyzing search traffic by device type (desktop, mobile, tablet), understanding device distribution, and identifying device-specific performance. Supports filtering by query (keyword), page, and country. If the user has applied filters on the analytics page, use gscFilter to apply the same filters to this data. If startDate and endDate are not provided, defaults to last 30 days.\n\nTREND DATA: Each device type includes a \"trends\" object showing how metrics changed compared to the previous period:\n- clicks/impressions/ctr: percentage change (e.g., 15 = +15% growth, -10 = -10% decline)\n- position: absolute change (negative = improvement, positive = decline)\n\nUse trends to identify:\n- Mobile vs desktop traffic shifts\n- Device-specific performance changes that may indicate UX issues\n\nUse for device segmentation of connected Search Console performance. Reads metrics only; use get_gsc_pages for page-level investigation and preserve matching filters/date ranges.",
"inputSchema": {
"type": "object",
"required": [],
"properties": {
"page": {
"type": "number",
"minimum": 1,
"description": "Page number (1-based). Default: 1. Use with limit for pagination."
},
"limit": {
"type": "number",
"default": 10,
"maximum": 100,
"minimum": 1,
"description": "Number of items per page. Default: 10, Max: 100. Use with page for pagination."
},
"search": {
"type": "string",
"description": "Search query to filter results (searches in relevant text fields)"
},
"sortBy": {
"type": "string",
"description": "Field name to sort by (e.g., \"updatedAt\", \"title\", \"clicks\")"
},
"context": {
"type": "string",
"maxLength": 120,
"description": "Short purpose of this call for the activity log. Exclude personal data and private source content."
},
"endDate": {
"type": "string",
"description": "End date in ISO format (YYYY-MM-DD). If not provided, defaults to today."
},
"gscFilter": {
"type": "array",
"items": {
"type": "object",
"properties": {
"operator": {
"enum": [
"contains",
"equals",
"notContains",
"notEquals"
],
"type": "string",
"description": "The comparison operator (required)"
},
"dimension": {
"enum": [
"query",
"page",
"device",
"country"
],
"type": "string",
"description": "The dimension to filter on (required)"
},
"expression": {
"type": "string",
"description": "The value to match against (required)"
}
},
"description": "A GSC filter object with dimension, operator, and expression"
},
"description": "GSC (Google Search Console) filters to apply. Use this when the user has applied filters on the analytics page or wants to filter data. Each filter object has:\n- dimension: The field to filter on. Valid values: \"query\" (keyword/search term), \"page\" (URL), \"device\" (mobile/desktop/tablet), \"country\" (3-letter country code).\n- operator: How to match. Valid values: \"contains\", \"equals\", \"notContains\", \"notEquals\".\n- expression: The value to match against.\nExample: [{\"dimension\": \"page\", \"operator\": \"contains\", \"expression\": \"/blog/\"}] filters to pages containing \"/blog/\" in the URL."
},
"llm_model": {
"type": "string",
"maxLength": 128,
"description": "Use the exact model ID executing this call, from runtime/system context, for usage attribution. Supply it on every Atomic MCP tool call, including discovery and feedback, and update it if the model changes. Use the model ID rather than the client app name. If unavailable, omit it; never guess or ask the user."
},
"projectId": {
"type": "number",
"description": "Atomic project ID from list_projects. Omit to use the configured project; if asked to choose, select one of the accessible returned IDs."
},
"sortOrder": {
"enum": [
"asc",
"desc"
],
"type": "string",
"default": "desc",
"description": "Sort order: \"asc\" for ascending, \"desc\" for descending. Default: \"desc\""
},
"startDate": {
"type": "string",
"description": "Start date in ISO format (YYYY-MM-DD). If not provided, defaults to 30 days ago."
}
}
},
"outputSchema": {
"type": "object",
"required": [
"success"
],
"properties": {
"url": {
"type": "string",
"description": "Link for resolving the failure or completing the operation."
},
"data": {
"type": "object",
"required": [
"data",
"total",
"page",
"limit",
"totalPages",
"nextPage"
],
"properties": {
"data": {
"type": "array",
"items": {
"type": "object",
"required": [
"device",
"clicks",
"impressions",
"ctr",
"position"
],
"properties": {
"ctr": {
"type": "number"
},
"clicks": {
"type": "number"
},
"device": {
"type": "string"
},
"trends": {
"type": "object",
"description": "Trend data showing how metrics changed compared to the previous period of equal length.\n- clicks/impressions/ctr: percentage change (15 = +15% growth, -10 = -10% decline)\n- position: absolute change (negative = improvement)"
},
"position": {
"type": "number",
"description": "Saved ordering position or visual editor coordinates for this item."
},
"impressions": {
"type": "number"
}
}
},
"description": "Result items or operation data inside this returned payload. Pagination fields describe only this result page."
},
"page": {
"type": "number",
"description": "Page number represented by these items."
},
"limit": {
"type": "number",
"description": "Maximum number of items requested for this page."
},
"total": {
"type": "number",
"description": "Total number of matching items across all result pages."
},
"nextPage": {
"anyOf": [
{
"type": "null"
},
{
"type": "number"
}
],
"description": "Next page to request when more results exist; use the returned value rather than constructing a cursor."
},
"totalPages": {
"type": "number",
"description": "Total number of result pages for the current filter and page size."
}
},
"description": "Operation data; optional fields may be absent."
},
"error": {
"type": "string",
"description": "Why the operation failed."
},
"details": {
"type": "object",
"description": "Diagnostics keyed by errorCode."
},
"message": {
"type": "string",
"description": "Outcome or recovery instructions. Project selection means no action ran."
},
"success": {
"type": "boolean",
"description": "Operation success; on false inspect error/errorCode."
},
"upgrade": {
"type": "object",
"description": "Plan-upgrade guidance for an unavailable capability."
},
"category": {
"type": "string",
"description": "Failure category, such as invalid_input or plan_required."
},
"expected": {
"type": "boolean",
"description": "Whether this is an anticipated access, input, plan or state failure."
},
"projects": {
"type": "array",
"items": {
"type": "object",
"properties": {
"id": {
"type": "number",
"description": "Project ID for projectId."
},
"name": {
"type": "string",
"description": "Project name."
}
},
"description": "Accessible project."
},
"description": "Accessible project choices. Select a projectId and retry."
},
"errorCode": {
"type": "string",
"description": "Failure code for recovery."
},
"retryable": {
"type": "boolean",
"description": "Whether an unchanged request can be retried."
},
"statusCode": {
"type": "number",
"description": "HTTP-style failure status."
},
"executionTime": {
"type": "string",
"description": "Elapsed time in seconds, with an s suffix."
}
},
"description": "Operation result envelope."
},
"annotations": {
"readOnlyHint": true,
"openWorldHint": true,
"idempotentHint": true,
"destructiveHint": false
}
}
The title clearly communicates the tool’s action and subject. Keep it concise.
Description94/100
Get Google Search Console keywords data for a project. Useful for analyzing search performance, keyword rankings, and traffic data. Supports filtering by page, device, and country. If the user has applied filters on the analytics page, use gscFilter to apply the same filters to this data. If startDate and endDate are not provided, defaults to last 30 days.
TREND DATA: Each keyword includes a "trends" object showing how metrics changed compared to the previous period of equal length:
- clicks/impressions/ctr: percentage change (e.g., 15 = +15% growth, -10 = -10% decline)
- position: absolute change (negative = improvement, e.g., -2 means keyword moved up 2 positions in rankings)
Use trends to identify:
- Growing keywords (positive clicks/impressions trends) - good for content expansion
- Declining keywords (negative trends) - may need content optimization
- Ranking improvements (negative position trends) or drops (positive position trends)
Use for query-level Search Console performance; get_gsc_pages is URL-level performance. This reads the connected source and does not change rankings, indexing or saved content.
The description explains the capability, when to use it, and what to expect.
Inputs75/100
Remove validation rules already expressed in this field’s schema; describe its meaning and usage instead.
startDate
Start date in ISO format (YYYY-MM-DD). If not provided, defaults to 30 days ago.
Remove validation rules already expressed in this field’s schema; describe its meaning and usage instead.
endDate
End date in ISO format (YYYY-MM-DD). If not provided, defaults to today.
Remove validation rules already expressed in this field’s schema; describe its meaning and usage instead.
gscFilter › items › dimension
The dimension to filter on (required)
Remove validation rules already expressed in this field’s schema; describe its meaning and usage instead.
gscFilter › items › operator
The comparison operator (required)
Remove validation rules already expressed in this field’s schema; describe its meaning and usage instead.
gscFilter › items › expression
The value to match against (required)
Remove validation rules already expressed in this field’s schema; describe its meaning and usage instead.
page
Page number (1-based). Default: 1. Use with limit for pagination.
Remove validation rules already expressed in this field’s schema; describe its meaning and usage instead.
limit
Number of items per page. Default: 10, Max: 100. Use with page for pagination.
Remove validation rules already expressed in this field’s schema; describe its meaning and usage instead.
search
Search query to filter results (searches in relevant text fields)
Remove validation rules already expressed in this field’s schema; describe its meaning and usage instead.
sortBy
Field name to sort by (e.g., "updatedAt", "title", "clicks")
Explain the meaning of this value, not just its name.
sortOrder
Sort order: "asc" for ascending, "desc" for descending. Default: "desc"
Explain the meaning of this value, not just its name.
projectId
Atomic project ID from list_projects. Omit to use the configured project; if asked to choose, select one of the accessible returned IDs.
Remove validation rules already expressed in this field’s schema; describe its meaning and usage instead.
context
Short purpose of this call for the activity log. Exclude personal data and private source content.
Clear enough to supply this argument.
llm_model
Use the exact model ID executing this call, from runtime/system context, for usage attribution. Supply it on every Atomic MCP tool call, including discovery and feedback, and update it if the model changes. Use the model ID rather than the client app name. If unavailable, omit it; never guess or ask the user.
{
"type": "object",
"required": [
"success"
],
"properties": {
"url": {
"type": "string",
"description": "Link for resolving the failure or completing the operation."
},
"data": {
"type": "object",
"required": [
"data",
"total",
"page",
"limit",
"totalPages",
"nextPage"
],
"properties": {
"data": {
"type": "array",
"items": {
"type": "object",
"required": [
"keyword",
"clicks",
"impressions",
"ctr",
"position"
],
"properties": {
"ctr": {
"type": "number"
},
"clicks": {
"type": "number"
},
"trends": {
"type": "object",
"description": "Trend data showing how metrics changed compared to the previous period of equal length.\nFor example, if querying last 30 days, trends compare to the 30 days before that.\n- clicks/impressions/ctr: percentage change (15 = +15% growth, -10 = -10% decline)\n- position: absolute change (negative = improvement, e.g., -2 means moved up 2 positions)"
},
"keyword": {
"type": "string"
},
"position": {
"type": "number",
"description": "Saved ordering position or visual editor coordinates for this item."
},
"impressions": {
"type": "number"
}
}
},
"description": "Result items or operation data inside this returned payload. Pagination fields describe only this result page."
},
"page": {
"type": "number",
"description": "Page number represented by these items."
},
"limit": {
"type": "number",
"description": "Maximum number of items requested for this page."
},
"total": {
"type": "number",
"description": "Total number of matching items across all result pages."
},
"nextPage": {
"anyOf": [
{
"type": "null"
},
{
"type": "number"
}
],
"description": "Next page to request when more results exist; use the returned value rather than constructing a cursor."
},
"totalPages": {
"type": "number",
"description": "Total number of result pages for the current filter and page size."
}
},
"description": "Operation data; optional fields may be absent."
},
"error": {
"type": "string",
"description": "Why the operation failed."
},
"details": {
"type": "object",
"description": "Diagnostics keyed by errorCode."
},
"message": {
"type": "string",
"description": "Outcome or recovery instructions. Project selection means no action ran."
},
"success": {
"type": "boolean",
"description": "Operation success; on false inspect error/errorCode."
},
"upgrade": {
"type": "object",
"description": "Plan-upgrade guidance for an unavailable capability."
},
"category": {
"type": "string",
"description": "Failure category, such as invalid_input or plan_required."
},
"expected": {
"type": "boolean",
"description": "Whether this is an anticipated access, input, plan or state failure."
},
"projects": {
"type": "array",
"items": {
"type": "object",
"properties": {
"id": {
"type": "number",
"description": "Project ID for projectId."
},
"name": {
"type": "string",
"description": "Project name."
}
},
"description": "Accessible project."
},
"description": "Accessible project choices. Select a projectId and retry."
},
"errorCode": {
"type": "string",
"description": "Failure code for recovery."
},
"retryable": {
"type": "boolean",
"description": "Whether an unchanged request can be retried."
},
"statusCode": {
"type": "number",
"description": "HTTP-style failure status."
},
"executionTime": {
"type": "string",
"description": "Elapsed time in seconds, with an s suffix."
}
},
"description": "Operation result envelope."
}
Original tool metadata
{
"name": "get_gsc_keywords",
"title": "Get GSC keywords",
"description": "Get Google Search Console keywords data for a project. Useful for analyzing search performance, keyword rankings, and traffic data. Supports filtering by page, device, and country. If the user has applied filters on the analytics page, use gscFilter to apply the same filters to this data. If startDate and endDate are not provided, defaults to last 30 days.\n\nTREND DATA: Each keyword includes a \"trends\" object showing how metrics changed compared to the previous period of equal length:\n- clicks/impressions/ctr: percentage change (e.g., 15 = +15% growth, -10 = -10% decline)\n- position: absolute change (negative = improvement, e.g., -2 means keyword moved up 2 positions in rankings)\n\nUse trends to identify:\n- Growing keywords (positive clicks/impressions trends) - good for content expansion\n- Declining keywords (negative trends) - may need content optimization\n- Ranking improvements (negative position trends) or drops (positive position trends)\n\nUse for query-level Search Console performance; get_gsc_pages is URL-level performance. This reads the connected source and does not change rankings, indexing or saved content.",
"inputSchema": {
"type": "object",
"required": [],
"properties": {
"page": {
"type": "number",
"minimum": 1,
"description": "Page number (1-based). Default: 1. Use with limit for pagination."
},
"limit": {
"type": "number",
"default": 10,
"maximum": 100,
"minimum": 1,
"description": "Number of items per page. Default: 10, Max: 100. Use with page for pagination."
},
"search": {
"type": "string",
"description": "Search query to filter results (searches in relevant text fields)"
},
"sortBy": {
"type": "string",
"description": "Field name to sort by (e.g., \"updatedAt\", \"title\", \"clicks\")"
},
"context": {
"type": "string",
"maxLength": 120,
"description": "Short purpose of this call for the activity log. Exclude personal data and private source content."
},
"endDate": {
"type": "string",
"description": "End date in ISO format (YYYY-MM-DD). If not provided, defaults to today."
},
"gscFilter": {
"type": "array",
"items": {
"type": "object",
"properties": {
"operator": {
"enum": [
"contains",
"equals",
"notContains",
"notEquals"
],
"type": "string",
"description": "The comparison operator (required)"
},
"dimension": {
"enum": [
"query",
"page",
"device",
"country"
],
"type": "string",
"description": "The dimension to filter on (required)"
},
"expression": {
"type": "string",
"description": "The value to match against (required)"
}
},
"description": "A GSC filter object with dimension, operator, and expression"
},
"description": "GSC (Google Search Console) filters to apply. Use this when the user has applied filters on the analytics page or wants to filter data. Each filter object has:\n- dimension: The field to filter on. Valid values: \"query\" (keyword/search term), \"page\" (URL), \"device\" (mobile/desktop/tablet), \"country\" (3-letter country code).\n- operator: How to match. Valid values: \"contains\", \"equals\", \"notContains\", \"notEquals\".\n- expression: The value to match against.\nExample: [{\"dimension\": \"page\", \"operator\": \"contains\", \"expression\": \"/blog/\"}] filters to pages containing \"/blog/\" in the URL."
},
"llm_model": {
"type": "string",
"maxLength": 128,
"description": "Use the exact model ID executing this call, from runtime/system context, for usage attribution. Supply it on every Atomic MCP tool call, including discovery and feedback, and update it if the model changes. Use the model ID rather than the client app name. If unavailable, omit it; never guess or ask the user."
},
"projectId": {
"type": "number",
"description": "Atomic project ID from list_projects. Omit to use the configured project; if asked to choose, select one of the accessible returned IDs."
},
"sortOrder": {
"enum": [
"asc",
"desc"
],
"type": "string",
"default": "desc",
"description": "Sort order: \"asc\" for ascending, \"desc\" for descending. Default: \"desc\""
},
"startDate": {
"type": "string",
"description": "Start date in ISO format (YYYY-MM-DD). If not provided, defaults to 30 days ago."
}
}
},
"outputSchema": {
"type": "object",
"required": [
"success"
],
"properties": {
"url": {
"type": "string",
"description": "Link for resolving the failure or completing the operation."
},
"data": {
"type": "object",
"required": [
"data",
"total",
"page",
"limit",
"totalPages",
"nextPage"
],
"properties": {
"data": {
"type": "array",
"items": {
"type": "object",
"required": [
"keyword",
"clicks",
"impressions",
"ctr",
"position"
],
"properties": {
"ctr": {
"type": "number"
},
"clicks": {
"type": "number"
},
"trends": {
"type": "object",
"description": "Trend data showing how metrics changed compared to the previous period of equal length.\nFor example, if querying last 30 days, trends compare to the 30 days before that.\n- clicks/impressions/ctr: percentage change (15 = +15% growth, -10 = -10% decline)\n- position: absolute change (negative = improvement, e.g., -2 means moved up 2 positions)"
},
"keyword": {
"type": "string"
},
"position": {
"type": "number",
"description": "Saved ordering position or visual editor coordinates for this item."
},
"impressions": {
"type": "number"
}
}
},
"description": "Result items or operation data inside this returned payload. Pagination fields describe only this result page."
},
"page": {
"type": "number",
"description": "Page number represented by these items."
},
"limit": {
"type": "number",
"description": "Maximum number of items requested for this page."
},
"total": {
"type": "number",
"description": "Total number of matching items across all result pages."
},
"nextPage": {
"anyOf": [
{
"type": "null"
},
{
"type": "number"
}
],
"description": "Next page to request when more results exist; use the returned value rather than constructing a cursor."
},
"totalPages": {
"type": "number",
"description": "Total number of result pages for the current filter and page size."
}
},
"description": "Operation data; optional fields may be absent."
},
"error": {
"type": "string",
"description": "Why the operation failed."
},
"details": {
"type": "object",
"description": "Diagnostics keyed by errorCode."
},
"message": {
"type": "string",
"description": "Outcome or recovery instructions. Project selection means no action ran."
},
"success": {
"type": "boolean",
"description": "Operation success; on false inspect error/errorCode."
},
"upgrade": {
"type": "object",
"description": "Plan-upgrade guidance for an unavailable capability."
},
"category": {
"type": "string",
"description": "Failure category, such as invalid_input or plan_required."
},
"expected": {
"type": "boolean",
"description": "Whether this is an anticipated access, input, plan or state failure."
},
"projects": {
"type": "array",
"items": {
"type": "object",
"properties": {
"id": {
"type": "number",
"description": "Project ID for projectId."
},
"name": {
"type": "string",
"description": "Project name."
}
},
"description": "Accessible project."
},
"description": "Accessible project choices. Select a projectId and retry."
},
"errorCode": {
"type": "string",
"description": "Failure code for recovery."
},
"retryable": {
"type": "boolean",
"description": "Whether an unchanged request can be retried."
},
"statusCode": {
"type": "number",
"description": "HTTP-style failure status."
},
"executionTime": {
"type": "string",
"description": "Elapsed time in seconds, with an s suffix."
}
},
"description": "Operation result envelope."
},
"annotations": {
"readOnlyHint": true,
"openWorldHint": true,
"idempotentHint": true,
"destructiveHint": false
}
}
The title clearly communicates the tool’s action and subject. Keep it concise.
Description91/100
Get Google Search Console landing pages data for a project. Useful for analyzing which pages receive the most search traffic, clicks, impressions, and their average position. Supports filtering by query (keyword), device, and country. If the user has applied filters on the analytics page, use gscFilter to apply the same filters to this data. If startDate and endDate are not provided, defaults to last 30 days.
TREND DATA: Each page includes a "trends" object showing how metrics changed compared to the previous period of equal length:
- clicks/impressions/ctr: percentage change (e.g., 15 = +15% growth, -10 = -10% decline)
- position: absolute change (negative = improvement, e.g., -2 means page moved up 2 positions in rankings)
Use trends to identify:
- Rising pages (positive clicks/impressions trends)
- Declining pages (negative trends) that may need content refresh
- Ranking improvements (negative position trends) or drops (positive position trends)
Use for landing-page Search Console performance. get_contents lists Atomic drafts instead; get_gsc_url_indexing_status checks one URL's indexing evidence rather than traffic.
The description explains the capability, when to use it, and what to expect.
Inputs75/100
Remove validation rules already expressed in this field’s schema; describe its meaning and usage instead.
startDate
Start date in ISO format (YYYY-MM-DD). If not provided, defaults to 30 days ago.
Remove validation rules already expressed in this field’s schema; describe its meaning and usage instead.
endDate
End date in ISO format (YYYY-MM-DD). If not provided, defaults to today.
Remove validation rules already expressed in this field’s schema; describe its meaning and usage instead.
gscFilter › items › dimension
The dimension to filter on (required)
Remove validation rules already expressed in this field’s schema; describe its meaning and usage instead.
gscFilter › items › operator
The comparison operator (required)
Remove validation rules already expressed in this field’s schema; describe its meaning and usage instead.
gscFilter › items › expression
The value to match against (required)
Remove validation rules already expressed in this field’s schema; describe its meaning and usage instead.
page
Page number (1-based). Default: 1. Use with limit for pagination.
Remove validation rules already expressed in this field’s schema; describe its meaning and usage instead.
limit
Number of items per page. Default: 10, Max: 100. Use with page for pagination.
Remove validation rules already expressed in this field’s schema; describe its meaning and usage instead.
search
Search query to filter results (searches in relevant text fields)
Remove validation rules already expressed in this field’s schema; describe its meaning and usage instead.
sortBy
Field name to sort by (e.g., "updatedAt", "title", "clicks")
Explain the meaning of this value, not just its name.
sortOrder
Sort order: "asc" for ascending, "desc" for descending. Default: "desc"
Explain the meaning of this value, not just its name.
projectId
Atomic project ID from list_projects. Omit to use the configured project; if asked to choose, select one of the accessible returned IDs.
Remove validation rules already expressed in this field’s schema; describe its meaning and usage instead.
context
Short purpose of this call for the activity log. Exclude personal data and private source content.
Clear enough to supply this argument.
llm_model
Use the exact model ID executing this call, from runtime/system context, for usage attribution. Supply it on every Atomic MCP tool call, including discovery and feedback, and update it if the model changes. Use the model ID rather than the client app name. If unavailable, omit it; never guess or ask the user.
Align the output schema with the tool’s documented result.
View output schema
{
"type": "object",
"required": [
"success"
],
"properties": {
"url": {
"type": "string",
"description": "Link for resolving the failure or completing the operation."
},
"data": {
"type": "object",
"required": [
"data",
"total",
"page",
"limit",
"totalPages",
"nextPage"
],
"properties": {
"data": {
"type": "array",
"items": {
"type": "object",
"required": [
"page",
"clicks",
"impressions",
"ctr",
"position"
],
"properties": {
"ctr": {
"type": "number"
},
"page": {
"type": "string",
"description": "Page number represented by these items."
},
"clicks": {
"type": "number"
},
"trends": {
"type": "object",
"description": "Trend data showing how metrics changed compared to the previous period of equal length.\nFor example, if querying last 30 days, trends compare to the 30 days before that.\n- clicks/impressions/ctr: percentage change (15 = +15% growth, -10 = -10% decline)\n- position: absolute change (negative = improvement, e.g., -2 means moved up 2 positions)"
},
"position": {
"type": "number",
"description": "Saved ordering position or visual editor coordinates for this item."
},
"impressions": {
"type": "number"
}
}
},
"description": "Result items or operation data inside this returned payload. Pagination fields describe only this result page."
},
"page": {
"type": "number",
"description": "Page number represented by these items."
},
"limit": {
"type": "number",
"description": "Maximum number of items requested for this page."
},
"total": {
"type": "number",
"description": "Total number of matching items across all result pages."
},
"nextPage": {
"anyOf": [
{
"type": "null"
},
{
"type": "number"
}
],
"description": "Next page to request when more results exist; use the returned value rather than constructing a cursor."
},
"totalPages": {
"type": "number",
"description": "Total number of result pages for the current filter and page size."
}
},
"description": "Operation data; optional fields may be absent."
},
"error": {
"type": "string",
"description": "Why the operation failed."
},
"details": {
"type": "object",
"description": "Diagnostics keyed by errorCode."
},
"message": {
"type": "string",
"description": "Outcome or recovery instructions. Project selection means no action ran."
},
"success": {
"type": "boolean",
"description": "Operation success; on false inspect error/errorCode."
},
"upgrade": {
"type": "object",
"description": "Plan-upgrade guidance for an unavailable capability."
},
"category": {
"type": "string",
"description": "Failure category, such as invalid_input or plan_required."
},
"expected": {
"type": "boolean",
"description": "Whether this is an anticipated access, input, plan or state failure."
},
"projects": {
"type": "array",
"items": {
"type": "object",
"properties": {
"id": {
"type": "number",
"description": "Project ID for projectId."
},
"name": {
"type": "string",
"description": "Project name."
}
},
"description": "Accessible project."
},
"description": "Accessible project choices. Select a projectId and retry."
},
"errorCode": {
"type": "string",
"description": "Failure code for recovery."
},
"retryable": {
"type": "boolean",
"description": "Whether an unchanged request can be retried."
},
"statusCode": {
"type": "number",
"description": "HTTP-style failure status."
},
"executionTime": {
"type": "string",
"description": "Elapsed time in seconds, with an s suffix."
}
},
"description": "Operation result envelope."
}
Original tool metadata
{
"name": "get_gsc_pages",
"title": "Get GSC pages",
"description": "Get Google Search Console landing pages data for a project. Useful for analyzing which pages receive the most search traffic, clicks, impressions, and their average position. Supports filtering by query (keyword), device, and country. If the user has applied filters on the analytics page, use gscFilter to apply the same filters to this data. If startDate and endDate are not provided, defaults to last 30 days.\n\nTREND DATA: Each page includes a \"trends\" object showing how metrics changed compared to the previous period of equal length:\n- clicks/impressions/ctr: percentage change (e.g., 15 = +15% growth, -10 = -10% decline)\n- position: absolute change (negative = improvement, e.g., -2 means page moved up 2 positions in rankings)\n\nUse trends to identify:\n- Rising pages (positive clicks/impressions trends)\n- Declining pages (negative trends) that may need content refresh\n- Ranking improvements (negative position trends) or drops (positive position trends)\n\nUse for landing-page Search Console performance. get_contents lists Atomic drafts instead; get_gsc_url_indexing_status checks one URL's indexing evidence rather than traffic.",
"inputSchema": {
"type": "object",
"required": [],
"properties": {
"page": {
"type": "number",
"minimum": 1,
"description": "Page number (1-based). Default: 1. Use with limit for pagination."
},
"limit": {
"type": "number",
"default": 10,
"maximum": 100,
"minimum": 1,
"description": "Number of items per page. Default: 10, Max: 100. Use with page for pagination."
},
"search": {
"type": "string",
"description": "Search query to filter results (searches in relevant text fields)"
},
"sortBy": {
"type": "string",
"description": "Field name to sort by (e.g., \"updatedAt\", \"title\", \"clicks\")"
},
"context": {
"type": "string",
"maxLength": 120,
"description": "Short purpose of this call for the activity log. Exclude personal data and private source content."
},
"endDate": {
"type": "string",
"description": "End date in ISO format (YYYY-MM-DD). If not provided, defaults to today."
},
"gscFilter": {
"type": "array",
"items": {
"type": "object",
"properties": {
"operator": {
"enum": [
"contains",
"equals",
"notContains",
"notEquals"
],
"type": "string",
"description": "The comparison operator (required)"
},
"dimension": {
"enum": [
"query",
"page",
"device",
"country"
],
"type": "string",
"description": "The dimension to filter on (required)"
},
"expression": {
"type": "string",
"description": "The value to match against (required)"
}
},
"description": "A GSC filter object with dimension, operator, and expression"
},
"description": "GSC (Google Search Console) filters to apply. Use this when the user has applied filters on the analytics page or wants to filter data. Each filter object has:\n- dimension: The field to filter on. Valid values: \"query\" (keyword/search term), \"page\" (URL), \"device\" (mobile/desktop/tablet), \"country\" (3-letter country code).\n- operator: How to match. Valid values: \"contains\", \"equals\", \"notContains\", \"notEquals\".\n- expression: The value to match against.\nExample: [{\"dimension\": \"page\", \"operator\": \"contains\", \"expression\": \"/blog/\"}] filters to pages containing \"/blog/\" in the URL."
},
"llm_model": {
"type": "string",
"maxLength": 128,
"description": "Use the exact model ID executing this call, from runtime/system context, for usage attribution. Supply it on every Atomic MCP tool call, including discovery and feedback, and update it if the model changes. Use the model ID rather than the client app name. If unavailable, omit it; never guess or ask the user."
},
"projectId": {
"type": "number",
"description": "Atomic project ID from list_projects. Omit to use the configured project; if asked to choose, select one of the accessible returned IDs."
},
"sortOrder": {
"enum": [
"asc",
"desc"
],
"type": "string",
"default": "desc",
"description": "Sort order: \"asc\" for ascending, \"desc\" for descending. Default: \"desc\""
},
"startDate": {
"type": "string",
"description": "Start date in ISO format (YYYY-MM-DD). If not provided, defaults to 30 days ago."
}
}
},
"outputSchema": {
"type": "object",
"required": [
"success"
],
"properties": {
"url": {
"type": "string",
"description": "Link for resolving the failure or completing the operation."
},
"data": {
"type": "object",
"required": [
"data",
"total",
"page",
"limit",
"totalPages",
"nextPage"
],
"properties": {
"data": {
"type": "array",
"items": {
"type": "object",
"required": [
"page",
"clicks",
"impressions",
"ctr",
"position"
],
"properties": {
"ctr": {
"type": "number"
},
"page": {
"type": "string",
"description": "Page number represented by these items."
},
"clicks": {
"type": "number"
},
"trends": {
"type": "object",
"description": "Trend data showing how metrics changed compared to the previous period of equal length.\nFor example, if querying last 30 days, trends compare to the 30 days before that.\n- clicks/impressions/ctr: percentage change (15 = +15% growth, -10 = -10% decline)\n- position: absolute change (negative = improvement, e.g., -2 means moved up 2 positions)"
},
"position": {
"type": "number",
"description": "Saved ordering position or visual editor coordinates for this item."
},
"impressions": {
"type": "number"
}
}
},
"description": "Result items or operation data inside this returned payload. Pagination fields describe only this result page."
},
"page": {
"type": "number",
"description": "Page number represented by these items."
},
"limit": {
"type": "number",
"description": "Maximum number of items requested for this page."
},
"total": {
"type": "number",
"description": "Total number of matching items across all result pages."
},
"nextPage": {
"anyOf": [
{
"type": "null"
},
{
"type": "number"
}
],
"description": "Next page to request when more results exist; use the returned value rather than constructing a cursor."
},
"totalPages": {
"type": "number",
"description": "Total number of result pages for the current filter and page size."
}
},
"description": "Operation data; optional fields may be absent."
},
"error": {
"type": "string",
"description": "Why the operation failed."
},
"details": {
"type": "object",
"description": "Diagnostics keyed by errorCode."
},
"message": {
"type": "string",
"description": "Outcome or recovery instructions. Project selection means no action ran."
},
"success": {
"type": "boolean",
"description": "Operation success; on false inspect error/errorCode."
},
"upgrade": {
"type": "object",
"description": "Plan-upgrade guidance for an unavailable capability."
},
"category": {
"type": "string",
"description": "Failure category, such as invalid_input or plan_required."
},
"expected": {
"type": "boolean",
"description": "Whether this is an anticipated access, input, plan or state failure."
},
"projects": {
"type": "array",
"items": {
"type": "object",
"properties": {
"id": {
"type": "number",
"description": "Project ID for projectId."
},
"name": {
"type": "string",
"description": "Project name."
}
},
"description": "Accessible project."
},
"description": "Accessible project choices. Select a projectId and retry."
},
"errorCode": {
"type": "string",
"description": "Failure code for recovery."
},
"retryable": {
"type": "boolean",
"description": "Whether an unchanged request can be retried."
},
"statusCode": {
"type": "number",
"description": "HTTP-style failure status."
},
"executionTime": {
"type": "string",
"description": "Elapsed time in seconds, with an s suffix."
}
},
"description": "Operation result envelope."
},
"annotations": {
"readOnlyHint": true,
"openWorldHint": true,
"idempotentHint": true,
"destructiveHint": false
}
}
The title clearly communicates the tool’s action and subject. Keep it concise.
Description88/100
Read live Google Search Console URL indexing status, coverage state, last crawl and declared/Google canonical. Requires connected GSC and a URL within its site. Does not submit URLs for indexing.
The description explains the capability, when to use it, and what to expect.
Inputs94/100
Remove validation rules already expressed in this field’s schema; describe its meaning and usage instead.
url
Absolute URL within the project GSC property.
Clear enough to supply this argument.
projectId
Atomic project ID from list_projects. Omit to use the configured project; if asked to choose, select one of the accessible returned IDs.
Clear enough to supply this argument.
context
Short purpose of this call for the activity log. Exclude personal data and private source content.
Remove validation rules already expressed in this field’s schema; describe its meaning and usage instead.
llm_model
Use the exact model ID executing this call, from runtime/system context, for usage attribution. Supply it on every Atomic MCP tool call, including discovery and feedback, and update it if the model changes. Use the model ID rather than the client app name. If unavailable, omit it; never guess or ask the user.
The title clearly communicates the tool’s action and subject. Keep it concise.
Description92/100
Generate internal link recommendations from project knowledge for markdown content. Returns high-confidence URLs and suggested anchor text.
Uses project knowledge and metered relevance evaluation to suggest URLs/anchors for supplied text. It does not insert links or publish; get_internal_links reads existing link structure.
The description explains the capability, when to use it, and what to expect.
Inputs88/100
Remove validation rules already expressed in this field’s schema; describe its meaning and usage instead.
content
Markdown content where internal links should be recommended
Clear enough to supply this argument.
limit
Maximum recommendation count (default 20)
Remove validation rules already expressed in this field’s schema; describe its meaning and usage instead.
confidenceThreshold
Minimum confidence threshold between 0 and 1 (default 0.82)
Remove validation rules already expressed in this field’s schema; describe its meaning and usage instead.
projectId
Atomic project ID from list_projects. Omit to use the configured project; if asked to choose, select one of the accessible returned IDs.
Clear enough to supply this argument.
context
Short purpose of this call for the activity log. Exclude personal data and private source content.
Remove validation rules already expressed in this field’s schema; describe its meaning and usage instead.
llm_model
Use the exact model ID executing this call, from runtime/system context, for usage attribution. Supply it on every Atomic MCP tool call, including discovery and feedback, and update it if the model changes. Use the model ID rather than the client app name. If unavailable, omit it; never guess or ask the user.
{
"type": "object",
"required": [
"success"
],
"properties": {
"url": {
"type": "string",
"description": "Link for resolving the failure or completing the operation."
},
"data": {
"type": "object",
"required": [
"data"
],
"properties": {
"data": {
"type": "array",
"items": {
"type": "object",
"required": [
"url",
"anchorText",
"confidence"
],
"properties": {
"url": {
"type": "string",
"description": "URL returned for this resource or operation."
},
"title": {
"type": "string",
"description": "Display or content title of this returned item."
},
"snippet": {
"type": "string"
},
"anchorText": {
"type": "string"
},
"confidence": {
"type": "number",
"description": "Reported match confidence on a 0–1 scale; assess the attached evidence before acting."
},
"sectionHeading": {
"type": "string"
}
}
},
"description": "Result items or operation data inside this returned payload. Pagination fields describe only this result page."
},
"warning": {
"type": "string",
"description": "Caution or partial-result explanation that must be preserved when presenting this result."
}
},
"description": "Operation data; optional fields may be absent."
},
"error": {
"type": "string",
"description": "Why the operation failed."
},
"details": {
"type": "object",
"description": "Diagnostics keyed by errorCode."
},
"message": {
"type": "string",
"description": "Outcome or recovery instructions. Project selection means no action ran."
},
"success": {
"type": "boolean",
"description": "Operation success; on false inspect error/errorCode."
},
"upgrade": {
"type": "object",
"description": "Plan-upgrade guidance for an unavailable capability."
},
"category": {
"type": "string",
"description": "Failure category, such as invalid_input or plan_required."
},
"expected": {
"type": "boolean",
"description": "Whether this is an anticipated access, input, plan or state failure."
},
"projects": {
"type": "array",
"items": {
"type": "object",
"properties": {
"id": {
"type": "number",
"description": "Project ID for projectId."
},
"name": {
"type": "string",
"description": "Project name."
}
},
"description": "Accessible project."
},
"description": "Accessible project choices. Select a projectId and retry."
},
"errorCode": {
"type": "string",
"description": "Failure code for recovery."
},
"retryable": {
"type": "boolean",
"description": "Whether an unchanged request can be retried."
},
"statusCode": {
"type": "number",
"description": "HTTP-style failure status."
},
"executionTime": {
"type": "string",
"description": "Elapsed time in seconds, with an s suffix."
}
},
"description": "Operation result envelope."
}
Original tool metadata
{
"name": "get_internal_link_recommendations",
"title": "Get internal link recommendations",
"description": "Generate internal link recommendations from project knowledge for markdown content. Returns high-confidence URLs and suggested anchor text.\n\nUses project knowledge and metered relevance evaluation to suggest URLs/anchors for supplied text. It does not insert links or publish; get_internal_links reads existing link structure.",
"inputSchema": {
"type": "object",
"required": [
"content"
],
"properties": {
"limit": {
"type": "number",
"description": "Maximum recommendation count (default 20)"
},
"content": {
"type": "string",
"description": "Markdown content where internal links should be recommended"
},
"context": {
"type": "string",
"maxLength": 120,
"description": "Short purpose of this call for the activity log. Exclude personal data and private source content."
},
"llm_model": {
"type": "string",
"maxLength": 128,
"description": "Use the exact model ID executing this call, from runtime/system context, for usage attribution. Supply it on every Atomic MCP tool call, including discovery and feedback, and update it if the model changes. Use the model ID rather than the client app name. If unavailable, omit it; never guess or ask the user."
},
"projectId": {
"type": "number",
"description": "Atomic project ID from list_projects. Omit to use the configured project; if asked to choose, select one of the accessible returned IDs."
},
"confidenceThreshold": {
"type": "number",
"description": "Minimum confidence threshold between 0 and 1 (default 0.82)"
}
}
},
"outputSchema": {
"type": "object",
"required": [
"success"
],
"properties": {
"url": {
"type": "string",
"description": "Link for resolving the failure or completing the operation."
},
"data": {
"type": "object",
"required": [
"data"
],
"properties": {
"data": {
"type": "array",
"items": {
"type": "object",
"required": [
"url",
"anchorText",
"confidence"
],
"properties": {
"url": {
"type": "string",
"description": "URL returned for this resource or operation."
},
"title": {
"type": "string",
"description": "Display or content title of this returned item."
},
"snippet": {
"type": "string"
},
"anchorText": {
"type": "string"
},
"confidence": {
"type": "number",
"description": "Reported match confidence on a 0–1 scale; assess the attached evidence before acting."
},
"sectionHeading": {
"type": "string"
}
}
},
"description": "Result items or operation data inside this returned payload. Pagination fields describe only this result page."
},
"warning": {
"type": "string",
"description": "Caution or partial-result explanation that must be preserved when presenting this result."
}
},
"description": "Operation data; optional fields may be absent."
},
"error": {
"type": "string",
"description": "Why the operation failed."
},
"details": {
"type": "object",
"description": "Diagnostics keyed by errorCode."
},
"message": {
"type": "string",
"description": "Outcome or recovery instructions. Project selection means no action ran."
},
"success": {
"type": "boolean",
"description": "Operation success; on false inspect error/errorCode."
},
"upgrade": {
"type": "object",
"description": "Plan-upgrade guidance for an unavailable capability."
},
"category": {
"type": "string",
"description": "Failure category, such as invalid_input or plan_required."
},
"expected": {
"type": "boolean",
"description": "Whether this is an anticipated access, input, plan or state failure."
},
"projects": {
"type": "array",
"items": {
"type": "object",
"properties": {
"id": {
"type": "number",
"description": "Project ID for projectId."
},
"name": {
"type": "string",
"description": "Project name."
}
},
"description": "Accessible project."
},
"description": "Accessible project choices. Select a projectId and retry."
},
"errorCode": {
"type": "string",
"description": "Failure code for recovery."
},
"retryable": {
"type": "boolean",
"description": "Whether an unchanged request can be retried."
},
"statusCode": {
"type": "number",
"description": "HTTP-style failure status."
},
"executionTime": {
"type": "string",
"description": "Elapsed time in seconds, with an s suffix."
}
},
"description": "Operation result envelope."
},
"annotations": {
"readOnlyHint": false,
"openWorldHint": true,
"idempotentHint": false,
"destructiveHint": false
}
}
The title clearly communicates the tool’s action and subject. Keep it concise.
Description90/100
Get internal linking data for a project. Useful for interlinking analysis, finding orphan pages, and optimizing internal link structure.
Reads saved internal-link structure for the project. Use get_internal_link_recommendations to propose links for a draft; neither retrieval authorizes editing existing pages.
The description explains the capability, when to use it, and what to expect.
Inputs75/100
Remove validation rules already expressed in this field’s schema; describe its meaning and usage instead.
page
Page number (1-based). Default: 1. Use with limit for pagination.
Remove validation rules already expressed in this field’s schema; describe its meaning and usage instead.
limit
Number of items per page. Default: 10, Max: 100. Use with page for pagination.
Remove validation rules already expressed in this field’s schema; describe its meaning and usage instead.
search
Search query to filter results (searches in relevant text fields)
Explain the meaning of this value, not just its name.
sortBy
Field name to sort by (e.g., "updatedAt", "title", "clicks")
Explain the meaning of this value, not just its name.
sortOrder
Sort order: "asc" for ascending, "desc" for descending. Default: "desc"
Remove validation rules already expressed in this field’s schema; describe its meaning and usage instead.
projectId
Atomic project ID from list_projects. Omit to use the configured project; if asked to choose, select one of the accessible returned IDs.
Clear enough to supply this argument.
context
Short purpose of this call for the activity log. Exclude personal data and private source content.
Remove validation rules already expressed in this field’s schema; describe its meaning and usage instead.
llm_model
Use the exact model ID executing this call, from runtime/system context, for usage attribution. Supply it on every Atomic MCP tool call, including discovery and feedback, and update it if the model changes. Use the model ID rather than the client app name. If unavailable, omit it; never guess or ask the user.
Declare the result fields and their types in the output schema.
View output schema
{
"type": "object",
"required": [
"success"
],
"properties": {
"url": {
"type": "string",
"description": "Link for resolving the failure or completing the operation."
},
"data": {
"type": "object",
"required": [
"data",
"total",
"page",
"limit",
"totalPages",
"nextPage"
],
"properties": {
"data": {
"type": "array",
"items": {
"type": "object",
"required": [
"url",
"outgoingLinks",
"incomingLinks",
"linkHealth"
],
"properties": {
"url": {
"type": "string",
"description": "URL returned for this resource or operation."
},
"linkHealth": {
"enum": [
"healthy",
"too_few",
"too_many",
"orphan"
],
"type": "string"
},
"incomingLinks": {
"type": "number"
},
"outgoingLinks": {
"type": "number"
}
}
},
"description": "Result items or operation data inside this returned payload. Pagination fields describe only this result page."
},
"page": {
"type": "number",
"description": "Page number represented by these items."
},
"limit": {
"type": "number",
"description": "Maximum number of items requested for this page."
},
"total": {
"type": "number",
"description": "Total number of matching items across all result pages."
},
"nextPage": {
"anyOf": [
{
"type": "null"
},
{
"type": "number"
}
],
"description": "Next page to request when more results exist; use the returned value rather than constructing a cursor."
},
"totalPages": {
"type": "number",
"description": "Total number of result pages for the current filter and page size."
}
},
"description": "Operation data; optional fields may be absent."
},
"error": {
"type": "string",
"description": "Why the operation failed."
},
"details": {
"type": "object",
"description": "Diagnostics keyed by errorCode."
},
"message": {
"type": "string",
"description": "Outcome or recovery instructions. Project selection means no action ran."
},
"success": {
"type": "boolean",
"description": "Operation success; on false inspect error/errorCode."
},
"upgrade": {
"type": "object",
"description": "Plan-upgrade guidance for an unavailable capability."
},
"category": {
"type": "string",
"description": "Failure category, such as invalid_input or plan_required."
},
"expected": {
"type": "boolean",
"description": "Whether this is an anticipated access, input, plan or state failure."
},
"projects": {
"type": "array",
"items": {
"type": "object",
"properties": {
"id": {
"type": "number",
"description": "Project ID for projectId."
},
"name": {
"type": "string",
"description": "Project name."
}
},
"description": "Accessible project."
},
"description": "Accessible project choices. Select a projectId and retry."
},
"errorCode": {
"type": "string",
"description": "Failure code for recovery."
},
"retryable": {
"type": "boolean",
"description": "Whether an unchanged request can be retried."
},
"statusCode": {
"type": "number",
"description": "HTTP-style failure status."
},
"executionTime": {
"type": "string",
"description": "Elapsed time in seconds, with an s suffix."
}
},
"description": "Operation result envelope."
}
Original tool metadata
{
"name": "get_internal_links",
"title": "Get internal links",
"description": "Get internal linking data for a project. Useful for interlinking analysis, finding orphan pages, and optimizing internal link structure.\n\nReads saved internal-link structure for the project. Use get_internal_link_recommendations to propose links for a draft; neither retrieval authorizes editing existing pages.",
"inputSchema": {
"type": "object",
"required": [],
"properties": {
"page": {
"type": "number",
"minimum": 1,
"description": "Page number (1-based). Default: 1. Use with limit for pagination."
},
"limit": {
"type": "number",
"default": 10,
"maximum": 100,
"minimum": 1,
"description": "Number of items per page. Default: 10, Max: 100. Use with page for pagination."
},
"search": {
"type": "string",
"description": "Search query to filter results (searches in relevant text fields)"
},
"sortBy": {
"type": "string",
"description": "Field name to sort by (e.g., \"updatedAt\", \"title\", \"clicks\")"
},
"context": {
"type": "string",
"maxLength": 120,
"description": "Short purpose of this call for the activity log. Exclude personal data and private source content."
},
"llm_model": {
"type": "string",
"maxLength": 128,
"description": "Use the exact model ID executing this call, from runtime/system context, for usage attribution. Supply it on every Atomic MCP tool call, including discovery and feedback, and update it if the model changes. Use the model ID rather than the client app name. If unavailable, omit it; never guess or ask the user."
},
"projectId": {
"type": "number",
"description": "Atomic project ID from list_projects. Omit to use the configured project; if asked to choose, select one of the accessible returned IDs."
},
"sortOrder": {
"enum": [
"asc",
"desc"
],
"type": "string",
"default": "desc",
"description": "Sort order: \"asc\" for ascending, \"desc\" for descending. Default: \"desc\""
}
}
},
"outputSchema": {
"type": "object",
"required": [
"success"
],
"properties": {
"url": {
"type": "string",
"description": "Link for resolving the failure or completing the operation."
},
"data": {
"type": "object",
"required": [
"data",
"total",
"page",
"limit",
"totalPages",
"nextPage"
],
"properties": {
"data": {
"type": "array",
"items": {
"type": "object",
"required": [
"url",
"outgoingLinks",
"incomingLinks",
"linkHealth"
],
"properties": {
"url": {
"type": "string",
"description": "URL returned for this resource or operation."
},
"linkHealth": {
"enum": [
"healthy",
"too_few",
"too_many",
"orphan"
],
"type": "string"
},
"incomingLinks": {
"type": "number"
},
"outgoingLinks": {
"type": "number"
}
}
},
"description": "Result items or operation data inside this returned payload. Pagination fields describe only this result page."
},
"page": {
"type": "number",
"description": "Page number represented by these items."
},
"limit": {
"type": "number",
"description": "Maximum number of items requested for this page."
},
"total": {
"type": "number",
"description": "Total number of matching items across all result pages."
},
"nextPage": {
"anyOf": [
{
"type": "null"
},
{
"type": "number"
}
],
"description": "Next page to request when more results exist; use the returned value rather than constructing a cursor."
},
"totalPages": {
"type": "number",
"description": "Total number of result pages for the current filter and page size."
}
},
"description": "Operation data; optional fields may be absent."
},
"error": {
"type": "string",
"description": "Why the operation failed."
},
"details": {
"type": "object",
"description": "Diagnostics keyed by errorCode."
},
"message": {
"type": "string",
"description": "Outcome or recovery instructions. Project selection means no action ran."
},
"success": {
"type": "boolean",
"description": "Operation success; on false inspect error/errorCode."
},
"upgrade": {
"type": "object",
"description": "Plan-upgrade guidance for an unavailable capability."
},
"category": {
"type": "string",
"description": "Failure category, such as invalid_input or plan_required."
},
"expected": {
"type": "boolean",
"description": "Whether this is an anticipated access, input, plan or state failure."
},
"projects": {
"type": "array",
"items": {
"type": "object",
"properties": {
"id": {
"type": "number",
"description": "Project ID for projectId."
},
"name": {
"type": "string",
"description": "Project name."
}
},
"description": "Accessible project."
},
"description": "Accessible project choices. Select a projectId and retry."
},
"errorCode": {
"type": "string",
"description": "Failure code for recovery."
},
"retryable": {
"type": "boolean",
"description": "Whether an unchanged request can be retried."
},
"statusCode": {
"type": "number",
"description": "HTTP-style failure status."
},
"executionTime": {
"type": "string",
"description": "Elapsed time in seconds, with an s suffix."
}
},
"description": "Operation result envelope."
},
"annotations": {
"readOnlyHint": true,
"openWorldHint": false,
"idempotentHint": true,
"destructiveHint": false
}
}
The title clearly communicates the tool’s action and subject. Keep it concise.
Description93/100
Get one knowledge base, its readiness summary, and its root folder/file counts. Use list_knowledge_bases first if you do not know the ID.
The description explains the capability, when to use it, and what to expect.
Inputs81/100
Remove validation rules already expressed in this field’s schema; describe its meaning and usage instead.
knowledgeBaseId
Destination or search-scope knowledge-base ID from list_knowledge_bases; the base must be accessible in this project.
Remove validation rules already expressed in this field’s schema; describe its meaning and usage instead.
projectId
Atomic project ID from list_projects. Omit to use the configured project; if asked to choose, select one of the accessible returned IDs.
Clear enough to supply this argument.
context
Short purpose of this call for the activity log. Exclude personal data and private source content.
Remove validation rules already expressed in this field’s schema; describe its meaning and usage instead.
llm_model
Use the exact model ID executing this call, from runtime/system context, for usage attribution. Supply it on every Atomic MCP tool call, including discovery and feedback, and update it if the model changes. Use the model ID rather than the client app name. If unavailable, omit it; never guess or ask the user.
Remove validation rules already expressed in this field’s schema; describe its meaning and usage instead.
{
"type": "object",
"required": [
"success"
],
"properties": {
"url": {
"type": "string",
"description": "Link for resolving the failure or completing the operation."
},
"data": {
"type": "object",
"required": [
"fileCount",
"readyCount",
"pendingCount",
"processingCount",
"failedCount",
"staleCount",
"id",
"projectId",
"name",
"description",
"rootPath",
"createdAt",
"updatedAt",
"folderCount",
"rootFolderCount",
"rootFileCount"
],
"properties": {
"id": {
"type": "number",
"description": "Identifier of this returned resource. Use it for subsequent reads or edits of the same resource."
},
"name": {
"type": "string",
"description": "Human-readable name of this resource."
},
"rootPath": {
"type": "string"
},
"createdAt": {
"type": "string",
"format": "date-time",
"description": "Date and time this record was created, serialized as ISO 8601."
},
"fileCount": {
"type": "number"
},
"projectId": {
"type": "number",
"description": "Atomic project that owns this resource."
},
"updatedAt": {
"type": "string",
"format": "date-time",
"description": "Date and time this record was last updated, serialized as ISO 8601."
},
"readyCount": {
"type": "number"
},
"staleCount": {
"type": "number"
},
"description": {
"type": "string",
"description": "Saved description of this resource or its purpose."
},
"failedCount": {
"type": "number"
},
"folderCount": {
"type": "number"
},
"pendingCount": {
"type": "number"
},
"lastIndexedAt": {
"anyOf": [
{
"type": "null"
},
{
"type": "string",
"format": "date-time",
"description": "Timestamp serialized as an ISO 8601 date and time."
}
]
},
"rootFileCount": {
"type": "number"
},
"processingCount": {
"type": "number"
},
"rootFolderCount": {
"type": "number"
}
},
"description": "Operation data; optional fields may be absent."
},
"error": {
"type": "string",
"description": "Why the operation failed."
},
"details": {
"type": "object",
"description": "Diagnostics keyed by errorCode."
},
"message": {
"type": "string",
"description": "Outcome or recovery instructions. Project selection means no action ran."
},
"success": {
"type": "boolean",
"description": "Operation success; on false inspect error/errorCode."
},
"upgrade": {
"type": "object",
"description": "Plan-upgrade guidance for an unavailable capability."
},
"category": {
"type": "string",
"description": "Failure category, such as invalid_input or plan_required."
},
"expected": {
"type": "boolean",
"description": "Whether this is an anticipated access, input, plan or state failure."
},
"projects": {
"type": "array",
"items": {
"type": "object",
"properties": {
"id": {
"type": "number",
"description": "Project ID for projectId."
},
"name": {
"type": "string",
"description": "Project name."
}
},
"description": "Accessible project."
},
"description": "Accessible project choices. Select a projectId and retry."
},
"errorCode": {
"type": "string",
"description": "Failure code for recovery."
},
"retryable": {
"type": "boolean",
"description": "Whether an unchanged request can be retried."
},
"statusCode": {
"type": "number",
"description": "HTTP-style failure status."
},
"executionTime": {
"type": "string",
"description": "Elapsed time in seconds, with an s suffix."
}
},
"description": "Operation result envelope."
}
Original tool metadata
{
"name": "get_knowledge_base",
"title": "Get knowledge base",
"description": "Get one knowledge base, its readiness summary, and its root folder/file counts. Use list_knowledge_bases first if you do not know the ID.",
"inputSchema": {
"type": "object",
"required": [
"knowledgeBaseId"
],
"properties": {
"context": {
"type": "string",
"maxLength": 120,
"description": "Short purpose of this call for the activity log. Exclude personal data and private source content."
},
"llm_model": {
"type": "string",
"maxLength": 128,
"description": "Use the exact model ID executing this call, from runtime/system context, for usage attribution. Supply it on every Atomic MCP tool call, including discovery and feedback, and update it if the model changes. Use the model ID rather than the client app name. If unavailable, omit it; never guess or ask the user."
},
"projectId": {
"type": "number",
"description": "Atomic project ID from list_projects. Omit to use the configured project; if asked to choose, select one of the accessible returned IDs."
},
"knowledgeBaseId": {
"type": "number",
"minimum": 1,
"multipleOf": 1,
"description": "Destination or search-scope knowledge-base ID from list_knowledge_bases; the base must be accessible in this project."
}
},
"additionalProperties": false
},
"outputSchema": {
"type": "object",
"required": [
"success"
],
"properties": {
"url": {
"type": "string",
"description": "Link for resolving the failure or completing the operation."
},
"data": {
"type": "object",
"required": [
"fileCount",
"readyCount",
"pendingCount",
"processingCount",
"failedCount",
"staleCount",
"id",
"projectId",
"name",
"description",
"rootPath",
"createdAt",
"updatedAt",
"folderCount",
"rootFolderCount",
"rootFileCount"
],
"properties": {
"id": {
"type": "number",
"description": "Identifier of this returned resource. Use it for subsequent reads or edits of the same resource."
},
"name": {
"type": "string",
"description": "Human-readable name of this resource."
},
"rootPath": {
"type": "string"
},
"createdAt": {
"type": "string",
"format": "date-time",
"description": "Date and time this record was created, serialized as ISO 8601."
},
"fileCount": {
"type": "number"
},
"projectId": {
"type": "number",
"description": "Atomic project that owns this resource."
},
"updatedAt": {
"type": "string",
"format": "date-time",
"description": "Date and time this record was last updated, serialized as ISO 8601."
},
"readyCount": {
"type": "number"
},
"staleCount": {
"type": "number"
},
"description": {
"type": "string",
"description": "Saved description of this resource or its purpose."
},
"failedCount": {
"type": "number"
},
"folderCount": {
"type": "number"
},
"pendingCount": {
"type": "number"
},
"lastIndexedAt": {
"anyOf": [
{
"type": "null"
},
{
"type": "string",
"format": "date-time",
"description": "Timestamp serialized as an ISO 8601 date and time."
}
]
},
"rootFileCount": {
"type": "number"
},
"processingCount": {
"type": "number"
},
"rootFolderCount": {
"type": "number"
}
},
"description": "Operation data; optional fields may be absent."
},
"error": {
"type": "string",
"description": "Why the operation failed."
},
"details": {
"type": "object",
"description": "Diagnostics keyed by errorCode."
},
"message": {
"type": "string",
"description": "Outcome or recovery instructions. Project selection means no action ran."
},
"success": {
"type": "boolean",
"description": "Operation success; on false inspect error/errorCode."
},
"upgrade": {
"type": "object",
"description": "Plan-upgrade guidance for an unavailable capability."
},
"category": {
"type": "string",
"description": "Failure category, such as invalid_input or plan_required."
},
"expected": {
"type": "boolean",
"description": "Whether this is an anticipated access, input, plan or state failure."
},
"projects": {
"type": "array",
"items": {
"type": "object",
"properties": {
"id": {
"type": "number",
"description": "Project ID for projectId."
},
"name": {
"type": "string",
"description": "Project name."
}
},
"description": "Accessible project."
},
"description": "Accessible project choices. Select a projectId and retry."
},
"errorCode": {
"type": "string",
"description": "Failure code for recovery."
},
"retryable": {
"type": "boolean",
"description": "Whether an unchanged request can be retried."
},
"statusCode": {
"type": "number",
"description": "HTTP-style failure status."
},
"executionTime": {
"type": "string",
"description": "Elapsed time in seconds, with an s suffix."
}
},
"description": "Operation result envelope."
},
"annotations": {
"readOnlyHint": true,
"openWorldHint": false,
"idempotentHint": true,
"destructiveHint": false
}
}
The title clearly communicates the tool’s action and subject. Keep it concise.
Description82/100
Get one canonical knowledge markdown file, its source/enrichment metadata, indexing readiness, and exact published segments when available.
The description explains the capability, when to use it, and what to expect.
Inputs81/100
Remove validation rules already expressed in this field’s schema; describe its meaning and usage instead.
fileId
Explicit knowledge file ID to retrieve.
Remove validation rules already expressed in this field’s schema; describe its meaning and usage instead.
markdownOffset
Zero-based character offset for canonical and published markdown.
Remove validation rules already expressed in this field’s schema; describe its meaning and usage instead.
markdownLimit
Maximum markdown characters returned per version.
Remove validation rules already expressed in this field’s schema; describe its meaning and usage instead.
segmentOffset
Zero-based published segment offset.
Remove validation rules already expressed in this field’s schema; describe its meaning and usage instead.
segmentLimit
Maximum published segments returned.
Remove validation rules already expressed in this field’s schema; describe its meaning and usage instead.
projectId
Atomic project ID from list_projects. Omit to use the configured project; if asked to choose, select one of the accessible returned IDs.
Clear enough to supply this argument.
context
Short purpose of this call for the activity log. Exclude personal data and private source content.
Remove validation rules already expressed in this field’s schema; describe its meaning and usage instead.
llm_model
Use the exact model ID executing this call, from runtime/system context, for usage attribution. Supply it on every Atomic MCP tool call, including discovery and feedback, and update it if the model changes. Use the model ID rather than the client app name. If unavailable, omit it; never guess or ask the user.
Describe the returned fields so an agent can interpret the result.
View output schema
{
"type": "object",
"required": [
"success"
],
"properties": {
"url": {
"type": "string",
"description": "Link for resolving the failure or completing the operation."
},
"data": {
"type": "object",
"required": [
"pagination"
],
"properties": {
"file": {
"description": "JSON returned by the connected provider or selected operation; its fields depend on that operation."
},
"indexing": {
"description": "JSON returned by the connected provider or selected operation; its fields depend on that operation."
},
"published": {
"description": "Whether the operation verified or reported publication; this alone does not prove rendered HTML correctness."
},
"pagination": {
"type": "object",
"required": [
"canonicalMarkdown",
"publishedMarkdown",
"segments"
],
"properties": {
"segments": {
"type": "object",
"required": [
"offset",
"limit"
],
"properties": {
"limit": {
"type": "number",
"description": "Maximum number of items requested for this page."
},
"total": {
"description": "Total number of matching items across all result pages."
},
"offset": {
"type": "number",
"description": "Zero-based result offset represented by this page."
},
"nextOffset": {
"description": "Offset for the next result page; null means this listing is complete."
}
}
},
"canonicalMarkdown": {
"type": "object",
"required": [
"offset",
"limit"
],
"properties": {
"limit": {
"type": "number",
"description": "Maximum number of items requested for this page."
},
"offset": {
"type": "number",
"description": "Zero-based result offset represented by this page."
},
"nextOffset": {
"description": "Offset for the next result page; null means this listing is complete."
},
"totalCharacters": {
"description": "JSON returned by the connected provider or selected operation; its fields depend on that operation."
}
}
},
"publishedMarkdown": {
"anyOf": [
{
"type": "null"
},
{
"type": "object",
"required": [
"offset",
"limit"
],
"properties": {
"limit": {
"type": "number",
"description": "Maximum number of items requested for this page."
},
"offset": {
"type": "number",
"description": "Zero-based result offset represented by this page."
},
"nextOffset": {
"description": "Offset for the next result page; null means this listing is complete."
},
"totalCharacters": {
"description": "JSON returned by the connected provider or selected operation; its fields depend on that operation."
}
}
}
]
}
},
"description": "Pagination state for the returned page, including its continuation offset."
}
},
"description": "Operation data; optional fields may be absent."
},
"error": {
"type": "string",
"description": "Why the operation failed."
},
"details": {
"type": "object",
"description": "Diagnostics keyed by errorCode."
},
"message": {
"type": "string",
"description": "Outcome or recovery instructions. Project selection means no action ran."
},
"success": {
"type": "boolean",
"description": "Operation success; on false inspect error/errorCode."
},
"upgrade": {
"type": "object",
"description": "Plan-upgrade guidance for an unavailable capability."
},
"category": {
"type": "string",
"description": "Failure category, such as invalid_input or plan_required."
},
"expected": {
"type": "boolean",
"description": "Whether this is an anticipated access, input, plan or state failure."
},
"projects": {
"type": "array",
"items": {
"type": "object",
"properties": {
"id": {
"type": "number",
"description": "Project ID for projectId."
},
"name": {
"type": "string",
"description": "Project name."
}
},
"description": "Accessible project."
},
"description": "Accessible project choices. Select a projectId and retry."
},
"errorCode": {
"type": "string",
"description": "Failure code for recovery."
},
"retryable": {
"type": "boolean",
"description": "Whether an unchanged request can be retried."
},
"statusCode": {
"type": "number",
"description": "HTTP-style failure status."
},
"executionTime": {
"type": "string",
"description": "Elapsed time in seconds, with an s suffix."
}
},
"description": "Operation result envelope."
}
Original tool metadata
{
"name": "get_knowledge_file",
"title": "Get knowledge file",
"description": "Get one canonical knowledge markdown file, its source/enrichment metadata, indexing readiness, and exact published segments when available.",
"inputSchema": {
"type": "object",
"required": [
"fileId"
],
"properties": {
"fileId": {
"type": "number",
"minimum": 1,
"multipleOf": 1,
"description": "Explicit knowledge file ID to retrieve."
},
"context": {
"type": "string",
"maxLength": 120,
"description": "Short purpose of this call for the activity log. Exclude personal data and private source content."
},
"llm_model": {
"type": "string",
"maxLength": 128,
"description": "Use the exact model ID executing this call, from runtime/system context, for usage attribution. Supply it on every Atomic MCP tool call, including discovery and feedback, and update it if the model changes. Use the model ID rather than the client app name. If unavailable, omit it; never guess or ask the user."
},
"projectId": {
"type": "number",
"description": "Atomic project ID from list_projects. Omit to use the configured project; if asked to choose, select one of the accessible returned IDs."
},
"segmentLimit": {
"type": "number",
"default": 20,
"maximum": 100,
"minimum": 1,
"multipleOf": 1,
"description": "Maximum published segments returned."
},
"markdownLimit": {
"type": "number",
"default": 50000,
"maximum": 100000,
"minimum": 1,
"multipleOf": 1,
"description": "Maximum markdown characters returned per version."
},
"segmentOffset": {
"type": "number",
"default": 0,
"minimum": 0,
"multipleOf": 1,
"description": "Zero-based published segment offset."
},
"markdownOffset": {
"type": "number",
"default": 0,
"minimum": 0,
"multipleOf": 1,
"description": "Zero-based character offset for canonical and published markdown."
}
},
"additionalProperties": false
},
"outputSchema": {
"type": "object",
"required": [
"success"
],
"properties": {
"url": {
"type": "string",
"description": "Link for resolving the failure or completing the operation."
},
"data": {
"type": "object",
"required": [
"pagination"
],
"properties": {
"file": {
"description": "JSON returned by the connected provider or selected operation; its fields depend on that operation."
},
"indexing": {
"description": "JSON returned by the connected provider or selected operation; its fields depend on that operation."
},
"published": {
"description": "Whether the operation verified or reported publication; this alone does not prove rendered HTML correctness."
},
"pagination": {
"type": "object",
"required": [
"canonicalMarkdown",
"publishedMarkdown",
"segments"
],
"properties": {
"segments": {
"type": "object",
"required": [
"offset",
"limit"
],
"properties": {
"limit": {
"type": "number",
"description": "Maximum number of items requested for this page."
},
"total": {
"description": "Total number of matching items across all result pages."
},
"offset": {
"type": "number",
"description": "Zero-based result offset represented by this page."
},
"nextOffset": {
"description": "Offset for the next result page; null means this listing is complete."
}
}
},
"canonicalMarkdown": {
"type": "object",
"required": [
"offset",
"limit"
],
"properties": {
"limit": {
"type": "number",
"description": "Maximum number of items requested for this page."
},
"offset": {
"type": "number",
"description": "Zero-based result offset represented by this page."
},
"nextOffset": {
"description": "Offset for the next result page; null means this listing is complete."
},
"totalCharacters": {
"description": "JSON returned by the connected provider or selected operation; its fields depend on that operation."
}
}
},
"publishedMarkdown": {
"anyOf": [
{
"type": "null"
},
{
"type": "object",
"required": [
"offset",
"limit"
],
"properties": {
"limit": {
"type": "number",
"description": "Maximum number of items requested for this page."
},
"offset": {
"type": "number",
"description": "Zero-based result offset represented by this page."
},
"nextOffset": {
"description": "Offset for the next result page; null means this listing is complete."
},
"totalCharacters": {
"description": "JSON returned by the connected provider or selected operation; its fields depend on that operation."
}
}
}
]
}
},
"description": "Pagination state for the returned page, including its continuation offset."
}
},
"description": "Operation data; optional fields may be absent."
},
"error": {
"type": "string",
"description": "Why the operation failed."
},
"details": {
"type": "object",
"description": "Diagnostics keyed by errorCode."
},
"message": {
"type": "string",
"description": "Outcome or recovery instructions. Project selection means no action ran."
},
"success": {
"type": "boolean",
"description": "Operation success; on false inspect error/errorCode."
},
"upgrade": {
"type": "object",
"description": "Plan-upgrade guidance for an unavailable capability."
},
"category": {
"type": "string",
"description": "Failure category, such as invalid_input or plan_required."
},
"expected": {
"type": "boolean",
"description": "Whether this is an anticipated access, input, plan or state failure."
},
"projects": {
"type": "array",
"items": {
"type": "object",
"properties": {
"id": {
"type": "number",
"description": "Project ID for projectId."
},
"name": {
"type": "string",
"description": "Project name."
}
},
"description": "Accessible project."
},
"description": "Accessible project choices. Select a projectId and retry."
},
"errorCode": {
"type": "string",
"description": "Failure code for recovery."
},
"retryable": {
"type": "boolean",
"description": "Whether an unchanged request can be retried."
},
"statusCode": {
"type": "number",
"description": "HTTP-style failure status."
},
"executionTime": {
"type": "string",
"description": "Elapsed time in seconds, with an s suffix."
}
},
"description": "Operation result envelope."
},
"annotations": {
"readOnlyHint": true,
"openWorldHint": false,
"idempotentHint": true,
"destructiveHint": false
}
}
The title clearly communicates the tool’s action and subject. Keep it concise.
Description79/100
Get the current indexing step, progress, readiness, timestamps, and recoverable error for one knowledge file. Indexed means the current canonical version is published.
The description explains the capability, when to use it, and what to expect.
Inputs90/100
Remove validation rules already expressed in this field’s schema; describe its meaning and usage instead.
fileId
Explicit knowledge file ID to inspect.
Remove validation rules already expressed in this field’s schema; describe its meaning and usage instead.
attemptId
Caller-generated identifier for one intended mutation. Reuse it with the identical payload after an uncertain response; use a new identifier for a different intended action.
Clear enough to supply this argument.
projectId
Atomic project ID from list_projects. Omit to use the configured project; if asked to choose, select one of the accessible returned IDs.
Clear enough to supply this argument.
context
Short purpose of this call for the activity log. Exclude personal data and private source content.
Remove validation rules already expressed in this field’s schema; describe its meaning and usage instead.
llm_model
Use the exact model ID executing this call, from runtime/system context, for usage attribution. Supply it on every Atomic MCP tool call, including discovery and feedback, and update it if the model changes. Use the model ID rather than the client app name. If unavailable, omit it; never guess or ask the user.
Align the title with the capability actually described by this tool.
Description98/100
Report a missing capability whenever no available tool fits your task, even if you can work around it. Describe what you needed and why available tools cannot do it. This records feedback; it does not unlock tools. Do not include secrets or personal data.
The description explains the capability, when to use it, and what to expect.
Inputs75/100
Remove validation rules already expressed in this field’s schema; describe its meaning and usage instead.
context
Missing capability, intended task and why existing tools do not fit. This is product feedback, not a request that executes or unlocks tools. Exclude private content.
Remove validation rules already expressed in this field’s schema; describe its meaning and usage instead.
llm_model
Use the exact model ID executing this call, from runtime/system context, for usage attribution. Supply it on every Atomic MCP tool call, including discovery and feedback, and update it if the model changes. Use the model ID rather than the client app name. If unavailable, omit it; never guess or ask the user.
Remove validation rules already expressed in this field’s schema; describe its meaning and usage instead.
{
"type": "object",
"required": [
"success"
],
"properties": {
"url": {
"type": "string",
"description": "Link for resolving the failure or completing the operation."
},
"data": {
"type": "object",
"required": [
"message"
],
"properties": {
"message": {
"type": "string",
"description": "Confirms feedback was recorded. No tools are unlocked by this operation."
}
},
"description": "Recorded missing-capability feedback."
},
"error": {
"type": "string",
"description": "Why the operation failed."
},
"details": {
"type": "object",
"description": "Diagnostics keyed by errorCode."
},
"message": {
"type": "string",
"description": "Outcome or recovery instructions. Project selection means no action ran."
},
"success": {
"type": "boolean",
"description": "Operation success; on false inspect error/errorCode."
},
"upgrade": {
"type": "object",
"description": "Plan-upgrade guidance for an unavailable capability."
},
"category": {
"type": "string",
"description": "Failure category, such as invalid_input or plan_required."
},
"expected": {
"type": "boolean",
"description": "Whether this is an anticipated access, input, plan or state failure."
},
"projects": {
"type": "array",
"items": {
"type": "object",
"properties": {
"id": {
"type": "number",
"description": "Project ID for projectId."
},
"name": {
"type": "string",
"description": "Project name."
}
},
"description": "Accessible project."
},
"description": "Accessible project choices. Select a projectId and retry."
},
"errorCode": {
"type": "string",
"description": "Failure code for recovery."
},
"retryable": {
"type": "boolean",
"description": "Whether an unchanged request can be retried."
},
"statusCode": {
"type": "number",
"description": "HTTP-style failure status."
},
"executionTime": {
"type": "string",
"description": "Elapsed time in seconds, with an s suffix."
}
},
"description": "Operation result envelope."
}
Original tool metadata
{
"name": "get_more_tools",
"title": "Report a missing capability",
"description": "Report a missing capability whenever no available tool fits your task, even if you can work around it. Describe what you needed and why available tools cannot do it. This records feedback; it does not unlock tools. Do not include secrets or personal data.",
"inputSchema": {
"type": "object",
"required": [
"context"
],
"properties": {
"context": {
"type": "string",
"maxLength": 4000,
"minLength": 1,
"description": "Missing capability, intended task and why existing tools do not fit. This is product feedback, not a request that executes or unlocks tools. Exclude private content."
},
"llm_model": {
"type": "string",
"maxLength": 128,
"description": "Use the exact model ID executing this call, from runtime/system context, for usage attribution. Supply it on every Atomic MCP tool call, including discovery and feedback, and update it if the model changes. Use the model ID rather than the client app name. If unavailable, omit it; never guess or ask the user."
}
},
"additionalProperties": false
},
"outputSchema": {
"type": "object",
"required": [
"success"
],
"properties": {
"url": {
"type": "string",
"description": "Link for resolving the failure or completing the operation."
},
"data": {
"type": "object",
"required": [
"message"
],
"properties": {
"message": {
"type": "string",
"description": "Confirms feedback was recorded. No tools are unlocked by this operation."
}
},
"description": "Recorded missing-capability feedback."
},
"error": {
"type": "string",
"description": "Why the operation failed."
},
"details": {
"type": "object",
"description": "Diagnostics keyed by errorCode."
},
"message": {
"type": "string",
"description": "Outcome or recovery instructions. Project selection means no action ran."
},
"success": {
"type": "boolean",
"description": "Operation success; on false inspect error/errorCode."
},
"upgrade": {
"type": "object",
"description": "Plan-upgrade guidance for an unavailable capability."
},
"category": {
"type": "string",
"description": "Failure category, such as invalid_input or plan_required."
},
"expected": {
"type": "boolean",
"description": "Whether this is an anticipated access, input, plan or state failure."
},
"projects": {
"type": "array",
"items": {
"type": "object",
"properties": {
"id": {
"type": "number",
"description": "Project ID for projectId."
},
"name": {
"type": "string",
"description": "Project name."
}
},
"description": "Accessible project."
},
"description": "Accessible project choices. Select a projectId and retry."
},
"errorCode": {
"type": "string",
"description": "Failure code for recovery."
},
"retryable": {
"type": "boolean",
"description": "Whether an unchanged request can be retried."
},
"statusCode": {
"type": "number",
"description": "HTTP-style failure status."
},
"executionTime": {
"type": "string",
"description": "Elapsed time in seconds, with an s suffix."
}
},
"description": "Operation result envelope."
},
"annotations": {
"readOnlyHint": false,
"openWorldHint": false,
"idempotentHint": false,
"destructiveHint": false
}
}
The title clearly communicates the tool’s action and subject. Keep it concise.
Description90/100
Get solo custom agents belonging to the current project. Returns agents created specifically for this project, excluding AI employees and orchestrators that belong to an AI Employee team. Use get_ai_employee_teams when you need the AI Employees feature.
The description explains the capability, when to use it, and what to expect.
Inputs92/100
Remove validation rules already expressed in this field’s schema; describe its meaning and usage instead.
projectId
Atomic project ID from list_projects. Omit to use the configured project; if asked to choose, select one of the accessible returned IDs.
Clear enough to supply this argument.
context
Short purpose of this call for the activity log. Exclude personal data and private source content.
Remove validation rules already expressed in this field’s schema; describe its meaning and usage instead.
llm_model
Use the exact model ID executing this call, from runtime/system context, for usage attribution. Supply it on every Atomic MCP tool call, including discovery and feedback, and update it if the model changes. Use the model ID rather than the client app name. If unavailable, omit it; never guess or ask the user.
The title clearly communicates the tool’s action and subject. Keep it concise.
Description92/100
List paginated task summaries assigned to the current agent. Use this to inspect your own open work before starting or continuing a substantive request. Prefer this over get_tasks when you only need your queue.
My means the current Atomic agent, not every task assigned to the signed-in human. Without an agent execution context this returns an empty page; use get_tasks for the project queue.
The description explains the capability, when to use it, and what to expect.
Inputs79/100
Remove validation rules already expressed in this field’s schema; describe its meaning and usage instead.
status
Optional status filter
Remove validation rules already expressed in this field’s schema; describe its meaning and usage instead.
page
Optional 1-based page number. Defaults to 1.
Remove validation rules already expressed in this field’s schema; describe its meaning and usage instead.
limit
Optional page size. Defaults to 10 and is capped at 25.
Remove validation rules already expressed in this field’s schema; describe its meaning and usage instead.
projectId
Atomic project ID from list_projects. Omit to use the configured project; if asked to choose, select one of the accessible returned IDs.
Clear enough to supply this argument.
context
Short purpose of this call for the activity log. Exclude personal data and private source content.
Remove validation rules already expressed in this field’s schema; describe its meaning and usage instead.
llm_model
Use the exact model ID executing this call, from runtime/system context, for usage attribution. Supply it on every Atomic MCP tool call, including discovery and feedback, and update it if the model changes. Use the model ID rather than the client app name. If unavailable, omit it; never guess or ask the user.
Remove validation rules already expressed in this field’s schema; describe its meaning and usage instead.
{
"type": "object",
"required": [
"success"
],
"properties": {
"url": {
"type": "string",
"description": "Link for resolving the failure or completing the operation."
},
"data": {
"type": "object",
"required": [
"data",
"page",
"limit",
"hasMore",
"nextPage"
],
"properties": {
"data": {
"type": "array",
"items": {
"type": "object",
"required": [
"projectId",
"title",
"status",
"assignmentMode",
"createdAt",
"updatedAt"
],
"properties": {
"id": {
"type": "number",
"description": "Identifier of this returned resource. Use it for subsequent reads or edits of the same resource."
},
"agent": {
"anyOf": [
{
"type": "null"
},
{
"type": "object",
"description": "Nested operation-specific fields."
}
],
"description": "Saved agent definition or context associated with this result."
},
"title": {
"type": "string",
"description": "Display or content title of this returned item."
},
"status": {
"enum": [
"OPEN",
"IN_PROGRESS",
"DONE",
"BLOCKED",
"CANCELED"
],
"type": "string",
"description": "Current saved or execution state reported by the operation."
},
"agentId": {
"anyOf": [
{
"type": "null"
},
{
"type": "number"
}
],
"description": "Saved Atomic agent associated with this resource or execution."
},
"dueDate": {
"anyOf": [
{
"type": "null"
},
{
"type": "string"
}
]
},
"publicId": {
"type": "string"
},
"checklist": {
"anyOf": [
{
"type": "null"
},
{
"type": "array",
"items": {
"type": "object",
"description": "Nested operation-specific fields."
}
}
]
},
"createdAt": {
"type": "string",
"format": "date-time",
"description": "Date and time this record was created, serialized as ISO 8601."
},
"projectId": {
"type": "number",
"description": "Atomic project that owns this resource."
},
"updatedAt": {
"type": "string",
"format": "date-time",
"description": "Date and time this record was last updated, serialized as ISO 8601."
},
"description": {
"anyOf": [
{
"type": "null"
},
{
"type": "string"
}
],
"description": "Saved description of this resource or its purpose."
},
"assignmentMode": {
"enum": [
"MANUAL",
"AGENT"
],
"type": "string"
},
"sourceConversationId": {
"anyOf": [
{
"type": "null"
},
{
"type": "string"
}
],
"description": "Conversation that produced this saved result."
},
"sourceConversationIds": {
"anyOf": [
{
"type": "null"
},
{
"type": "array",
"items": {
"type": "string"
}
}
]
},
"isGeneralAgentAssignment": {
"type": "boolean"
}
}
},
"description": "Result items or operation data inside this returned payload. Pagination fields describe only this result page."
},
"page": {
"type": "number",
"description": "Page number represented by these items."
},
"limit": {
"type": "number",
"description": "Maximum number of items requested for this page."
},
"hasMore": {
"type": "boolean"
},
"nextPage": {
"anyOf": [
{
"type": "null"
},
{
"type": "number"
}
],
"description": "Next page to request when more results exist; use the returned value rather than constructing a cursor."
}
},
"description": "Operation data; optional fields may be absent."
},
"error": {
"type": "string",
"description": "Why the operation failed."
},
"details": {
"type": "object",
"description": "Diagnostics keyed by errorCode."
},
"message": {
"type": "string",
"description": "Outcome or recovery instructions. Project selection means no action ran."
},
"success": {
"type": "boolean",
"description": "Operation success; on false inspect error/errorCode."
},
"upgrade": {
"type": "object",
"description": "Plan-upgrade guidance for an unavailable capability."
},
"category": {
"type": "string",
"description": "Failure category, such as invalid_input or plan_required."
},
"expected": {
"type": "boolean",
"description": "Whether this is an anticipated access, input, plan or state failure."
},
"projects": {
"type": "array",
"items": {
"type": "object",
"properties": {
"id": {
"type": "number",
"description": "Project ID for projectId."
},
"name": {
"type": "string",
"description": "Project name."
}
},
"description": "Accessible project."
},
"description": "Accessible project choices. Select a projectId and retry."
},
"errorCode": {
"type": "string",
"description": "Failure code for recovery."
},
"retryable": {
"type": "boolean",
"description": "Whether an unchanged request can be retried."
},
"statusCode": {
"type": "number",
"description": "HTTP-style failure status."
},
"executionTime": {
"type": "string",
"description": "Elapsed time in seconds, with an s suffix."
}
},
"description": "Operation result envelope."
}
Original tool metadata
{
"name": "get_my_tasks",
"title": "Get my tasks",
"description": "List paginated task summaries assigned to the current agent. Use this to inspect your own open work before starting or continuing a substantive request. Prefer this over get_tasks when you only need your queue.\n\nMy means the current Atomic agent, not every task assigned to the signed-in human. Without an agent execution context this returns an empty page; use get_tasks for the project queue.",
"inputSchema": {
"type": "object",
"required": [],
"properties": {
"page": {
"type": "number",
"description": "Optional 1-based page number. Defaults to 1."
},
"limit": {
"type": "number",
"description": "Optional page size. Defaults to 10 and is capped at 25."
},
"status": {
"enum": [
"OPEN",
"IN_PROGRESS",
"DONE",
"BLOCKED",
"CANCELED"
],
"type": "string",
"description": "Optional status filter"
},
"context": {
"type": "string",
"maxLength": 120,
"description": "Short purpose of this call for the activity log. Exclude personal data and private source content."
},
"llm_model": {
"type": "string",
"maxLength": 128,
"description": "Use the exact model ID executing this call, from runtime/system context, for usage attribution. Supply it on every Atomic MCP tool call, including discovery and feedback, and update it if the model changes. Use the model ID rather than the client app name. If unavailable, omit it; never guess or ask the user."
},
"projectId": {
"type": "number",
"description": "Atomic project ID from list_projects. Omit to use the configured project; if asked to choose, select one of the accessible returned IDs."
}
}
},
"outputSchema": {
"type": "object",
"required": [
"success"
],
"properties": {
"url": {
"type": "string",
"description": "Link for resolving the failure or completing the operation."
},
"data": {
"type": "object",
"required": [
"data",
"page",
"limit",
"hasMore",
"nextPage"
],
"properties": {
"data": {
"type": "array",
"items": {
"type": "object",
"required": [
"projectId",
"title",
"status",
"assignmentMode",
"createdAt",
"updatedAt"
],
"properties": {
"id": {
"type": "number",
"description": "Identifier of this returned resource. Use it for subsequent reads or edits of the same resource."
},
"agent": {
"anyOf": [
{
"type": "null"
},
{
"type": "object",
"description": "Nested operation-specific fields."
}
],
"description": "Saved agent definition or context associated with this result."
},
"title": {
"type": "string",
"description": "Display or content title of this returned item."
},
"status": {
"enum": [
"OPEN",
"IN_PROGRESS",
"DONE",
"BLOCKED",
"CANCELED"
],
"type": "string",
"description": "Current saved or execution state reported by the operation."
},
"agentId": {
"anyOf": [
{
"type": "null"
},
{
"type": "number"
}
],
"description": "Saved Atomic agent associated with this resource or execution."
},
"dueDate": {
"anyOf": [
{
"type": "null"
},
{
"type": "string"
}
]
},
"publicId": {
"type": "string"
},
"checklist": {
"anyOf": [
{
"type": "null"
},
{
"type": "array",
"items": {
"type": "object",
"description": "Nested operation-specific fields."
}
}
]
},
"createdAt": {
"type": "string",
"format": "date-time",
"description": "Date and time this record was created, serialized as ISO 8601."
},
"projectId": {
"type": "number",
"description": "Atomic project that owns this resource."
},
"updatedAt": {
"type": "string",
"format": "date-time",
"description": "Date and time this record was last updated, serialized as ISO 8601."
},
"description": {
"anyOf": [
{
"type": "null"
},
{
"type": "string"
}
],
"description": "Saved description of this resource or its purpose."
},
"assignmentMode": {
"enum": [
"MANUAL",
"AGENT"
],
"type": "string"
},
"sourceConversationId": {
"anyOf": [
{
"type": "null"
},
{
"type": "string"
}
],
"description": "Conversation that produced this saved result."
},
"sourceConversationIds": {
"anyOf": [
{
"type": "null"
},
{
"type": "array",
"items": {
"type": "string"
}
}
]
},
"isGeneralAgentAssignment": {
"type": "boolean"
}
}
},
"description": "Result items or operation data inside this returned payload. Pagination fields describe only this result page."
},
"page": {
"type": "number",
"description": "Page number represented by these items."
},
"limit": {
"type": "number",
"description": "Maximum number of items requested for this page."
},
"hasMore": {
"type": "boolean"
},
"nextPage": {
"anyOf": [
{
"type": "null"
},
{
"type": "number"
}
],
"description": "Next page to request when more results exist; use the returned value rather than constructing a cursor."
}
},
"description": "Operation data; optional fields may be absent."
},
"error": {
"type": "string",
"description": "Why the operation failed."
},
"details": {
"type": "object",
"description": "Diagnostics keyed by errorCode."
},
"message": {
"type": "string",
"description": "Outcome or recovery instructions. Project selection means no action ran."
},
"success": {
"type": "boolean",
"description": "Operation success; on false inspect error/errorCode."
},
"upgrade": {
"type": "object",
"description": "Plan-upgrade guidance for an unavailable capability."
},
"category": {
"type": "string",
"description": "Failure category, such as invalid_input or plan_required."
},
"expected": {
"type": "boolean",
"description": "Whether this is an anticipated access, input, plan or state failure."
},
"projects": {
"type": "array",
"items": {
"type": "object",
"properties": {
"id": {
"type": "number",
"description": "Project ID for projectId."
},
"name": {
"type": "string",
"description": "Project name."
}
},
"description": "Accessible project."
},
"description": "Accessible project choices. Select a projectId and retry."
},
"errorCode": {
"type": "string",
"description": "Failure code for recovery."
},
"retryable": {
"type": "boolean",
"description": "Whether an unchanged request can be retried."
},
"statusCode": {
"type": "number",
"description": "HTTP-style failure status."
},
"executionTime": {
"type": "string",
"description": "Elapsed time in seconds, with an s suffix."
}
},
"description": "Operation result envelope."
},
"annotations": {
"readOnlyHint": true,
"openWorldHint": false,
"idempotentHint": true,
"destructiveHint": false
}
}
The title clearly communicates the tool’s action and subject. Keep it concise.
Description97/100
Get active canonical payment plans, including IDs, prices, billing intervals and products. Choose a project plan before create_project or interactive workspace billing. Billing changes use the workspace subscription currency and interval.
Reads plan IDs and current pricing metadata without changing subscriptions. Use the returned ID for the intended product/project; creating a checkout link does not complete a purchase.
The description explains the capability, when to use it, and what to expect.
Inputs75/100
Remove validation rules already expressed in this field’s schema; describe its meaning and usage instead.
context
Short purpose of this call for the activity log. Exclude personal data and private source content.
Remove validation rules already expressed in this field’s schema; describe its meaning and usage instead.
llm_model
Use the exact model ID executing this call, from runtime/system context, for usage attribution. Supply it on every Atomic MCP tool call, including discovery and feedback, and update it if the model changes. Use the model ID rather than the client app name. If unavailable, omit it; never guess or ask the user.
Remove validation rules already expressed in this field’s schema; describe its meaning and usage instead.
Align the output schema with the tool’s documented result.
View output schema
{
"type": "object",
"required": [
"success"
],
"properties": {
"url": {
"type": "string",
"description": "Link for resolving the failure or completing the operation."
},
"data": {
"type": "array",
"items": {
"type": "object",
"required": [
"paymentProductId",
"name",
"billingInterval",
"price",
"isActive"
],
"properties": {
"id": {
"type": "number",
"description": "Identifier of this returned resource. Use it for subsequent reads or edits of the same resource."
},
"name": {
"type": "string",
"description": "Human-readable name of this resource."
},
"price": {
"type": "number",
"description": "Listed plan price in the currency and billing interval of this plan record."
},
"isActive": {
"type": "boolean",
"description": "Whether this saved configuration is enabled."
},
"aiCredits": {
"type": "number",
"description": "AI-credit allowance or balance reported for the workspace or plan."
},
"createdAt": {
"type": "string",
"format": "date-time",
"description": "Date and time this record was created, serialized as ISO 8601."
},
"updatedAt": {
"type": "string",
"format": "date-time",
"description": "Date and time this record was last updated, serialized as ISO 8601."
},
"stripePriceId": {
"type": "string",
"description": "Provider price identifier used to create the selected subscription checkout."
},
"paymentProduct": {
"type": "object",
"required": [
"name"
],
"properties": {
"id": {
"type": "number",
"description": "Identifier of this returned resource. Use it for subsequent reads or edits of the same resource."
},
"name": {
"type": "string",
"description": "Human-readable name of this resource."
},
"createdAt": {
"type": "string",
"format": "date-time",
"description": "Date and time this record was created, serialized as ISO 8601."
},
"updatedAt": {
"type": "string",
"format": "date-time",
"description": "Date and time this record was last updated, serialized as ISO 8601."
},
"paymentPlans": {
"type": "array",
"items": {
"type": "object",
"description": "Nested operation-specific fields."
}
}
}
},
"billingInterval": {
"enum": [
"monthly",
"yearly"
],
"type": "string",
"description": "Billing cadence associated with the listed price."
},
"trialPeriodDays": {
"type": "number",
"description": "Trial duration in days for this plan."
},
"paymentProductId": {
"type": "number",
"description": "Atomic product ID that owns this payment plan."
}
}
},
"description": "Operation data; optional fields may be absent."
},
"error": {
"type": "string",
"description": "Why the operation failed."
},
"details": {
"type": "object",
"description": "Diagnostics keyed by errorCode."
},
"message": {
"type": "string",
"description": "Outcome or recovery instructions. Project selection means no action ran."
},
"success": {
"type": "boolean",
"description": "Operation success; on false inspect error/errorCode."
},
"upgrade": {
"type": "object",
"description": "Plan-upgrade guidance for an unavailable capability."
},
"category": {
"type": "string",
"description": "Failure category, such as invalid_input or plan_required."
},
"expected": {
"type": "boolean",
"description": "Whether this is an anticipated access, input, plan or state failure."
},
"projects": {
"type": "array",
"items": {
"type": "object",
"properties": {
"id": {
"type": "number",
"description": "Project ID for projectId."
},
"name": {
"type": "string",
"description": "Project name."
}
},
"description": "Accessible project."
},
"description": "Accessible project choices. Select a projectId and retry."
},
"errorCode": {
"type": "string",
"description": "Failure code for recovery."
},
"retryable": {
"type": "boolean",
"description": "Whether an unchanged request can be retried."
},
"statusCode": {
"type": "number",
"description": "HTTP-style failure status."
},
"executionTime": {
"type": "string",
"description": "Elapsed time in seconds, with an s suffix."
}
},
"description": "Operation result envelope."
}
Original tool metadata
{
"name": "get_payment_plans",
"title": "Get payment plans",
"description": "Get active canonical payment plans, including IDs, prices, billing intervals and products. Choose a project plan before create_project or interactive workspace billing. Billing changes use the workspace subscription currency and interval.\n\nReads plan IDs and current pricing metadata without changing subscriptions. Use the returned ID for the intended product/project; creating a checkout link does not complete a purchase.",
"inputSchema": {
"type": "object",
"required": [],
"properties": {
"context": {
"type": "string",
"maxLength": 120,
"description": "Short purpose of this call for the activity log. Exclude personal data and private source content."
},
"llm_model": {
"type": "string",
"maxLength": 128,
"description": "Use the exact model ID executing this call, from runtime/system context, for usage attribution. Supply it on every Atomic MCP tool call, including discovery and feedback, and update it if the model changes. Use the model ID rather than the client app name. If unavailable, omit it; never guess or ask the user."
}
},
"additionalProperties": false
},
"outputSchema": {
"type": "object",
"required": [
"success"
],
"properties": {
"url": {
"type": "string",
"description": "Link for resolving the failure or completing the operation."
},
"data": {
"type": "array",
"items": {
"type": "object",
"required": [
"paymentProductId",
"name",
"billingInterval",
"price",
"isActive"
],
"properties": {
"id": {
"type": "number",
"description": "Identifier of this returned resource. Use it for subsequent reads or edits of the same resource."
},
"name": {
"type": "string",
"description": "Human-readable name of this resource."
},
"price": {
"type": "number",
"description": "Listed plan price in the currency and billing interval of this plan record."
},
"isActive": {
"type": "boolean",
"description": "Whether this saved configuration is enabled."
},
"aiCredits": {
"type": "number",
"description": "AI-credit allowance or balance reported for the workspace or plan."
},
"createdAt": {
"type": "string",
"format": "date-time",
"description": "Date and time this record was created, serialized as ISO 8601."
},
"updatedAt": {
"type": "string",
"format": "date-time",
"description": "Date and time this record was last updated, serialized as ISO 8601."
},
"stripePriceId": {
"type": "string",
"description": "Provider price identifier used to create the selected subscription checkout."
},
"paymentProduct": {
"type": "object",
"required": [
"name"
],
"properties": {
"id": {
"type": "number",
"description": "Identifier of this returned resource. Use it for subsequent reads or edits of the same resource."
},
"name": {
"type": "string",
"description": "Human-readable name of this resource."
},
"createdAt": {
"type": "string",
"format": "date-time",
"description": "Date and time this record was created, serialized as ISO 8601."
},
"updatedAt": {
"type": "string",
"format": "date-time",
"description": "Date and time this record was last updated, serialized as ISO 8601."
},
"paymentPlans": {
"type": "array",
"items": {
"type": "object",
"description": "Nested operation-specific fields."
}
}
}
},
"billingInterval": {
"enum": [
"monthly",
"yearly"
],
"type": "string",
"description": "Billing cadence associated with the listed price."
},
"trialPeriodDays": {
"type": "number",
"description": "Trial duration in days for this plan."
},
"paymentProductId": {
"type": "number",
"description": "Atomic product ID that owns this payment plan."
}
}
},
"description": "Operation data; optional fields may be absent."
},
"error": {
"type": "string",
"description": "Why the operation failed."
},
"details": {
"type": "object",
"description": "Diagnostics keyed by errorCode."
},
"message": {
"type": "string",
"description": "Outcome or recovery instructions. Project selection means no action ran."
},
"success": {
"type": "boolean",
"description": "Operation success; on false inspect error/errorCode."
},
"upgrade": {
"type": "object",
"description": "Plan-upgrade guidance for an unavailable capability."
},
"category": {
"type": "string",
"description": "Failure category, such as invalid_input or plan_required."
},
"expected": {
"type": "boolean",
"description": "Whether this is an anticipated access, input, plan or state failure."
},
"projects": {
"type": "array",
"items": {
"type": "object",
"properties": {
"id": {
"type": "number",
"description": "Project ID for projectId."
},
"name": {
"type": "string",
"description": "Project name."
}
},
"description": "Accessible project."
},
"description": "Accessible project choices. Select a projectId and retry."
},
"errorCode": {
"type": "string",
"description": "Failure code for recovery."
},
"retryable": {
"type": "boolean",
"description": "Whether an unchanged request can be retried."
},
"statusCode": {
"type": "number",
"description": "HTTP-style failure status."
},
"executionTime": {
"type": "string",
"description": "Elapsed time in seconds, with an s suffix."
}
},
"description": "Operation result envelope."
},
"annotations": {
"readOnlyHint": true,
"openWorldHint": false,
"idempotentHint": true,
"destructiveHint": false
}
}
The title clearly communicates the tool’s action and subject. Keep it concise.
Description94/100
Get all predefined/public agents available in the system. These are system-provided agents that are available to all users and projects. They typically have specialized capabilities for common tasks like SEO analysis, content writing, data analysis, etc.
Use for system agent definitions; get_my_agents lists project custom agents and get_available_agents combines visible choices. Reading a definition does not execute it.
The description explains the capability, when to use it, and what to expect.
Inputs92/100
Remove validation rules already expressed in this field’s schema; describe its meaning and usage instead.
projectId
Atomic project ID from list_projects. Omit to use the configured project; if asked to choose, select one of the accessible returned IDs.
Clear enough to supply this argument.
context
Short purpose of this call for the activity log. Exclude personal data and private source content.
Remove validation rules already expressed in this field’s schema; describe its meaning and usage instead.
llm_model
Use the exact model ID executing this call, from runtime/system context, for usage attribution. Supply it on every Atomic MCP tool call, including discovery and feedback, and update it if the model changes. Use the model ID rather than the client app name. If unavailable, omit it; never guess or ask the user.
The title clearly communicates the tool’s action and subject. Keep it concise.
Description92/100
Get the current status or completed canonical pageStructure for a programmatic market research run.
Reads saved research status/results only. programmatic_market_research starts new paid work; wait_for_programmatic_market_research waits for an existing run.
The description explains the capability, when to use it, and what to expect.
Inputs88/100
Remove validation rules already expressed in this field’s schema; describe its meaning and usage instead.
researchId
Research ID returned by programmatic_market_research.
Clear enough to supply this argument.
projectId
Atomic project ID from list_projects. Omit to use the configured project; if asked to choose, select one of the accessible returned IDs.
Clear enough to supply this argument.
context
Short purpose of this call for the activity log. Exclude personal data and private source content.
Remove validation rules already expressed in this field’s schema; describe its meaning and usage instead.
llm_model
Use the exact model ID executing this call, from runtime/system context, for usage attribution. Supply it on every Atomic MCP tool call, including discovery and feedback, and update it if the model changes. Use the model ID rather than the client app name. If unavailable, omit it; never guess or ask the user.
Remove validation rules already expressed in this field’s schema; describe its meaning and usage instead.
{
"type": "object",
"required": [
"success"
],
"properties": {
"url": {
"type": "string",
"description": "Link for resolving the failure or completing the operation."
},
"data": {
"type": "object",
"required": [
"data"
],
"properties": {
"data": {
"type": "object",
"required": [
"status",
"createdAt",
"updatedAt"
],
"properties": {
"status": {
"enum": [
"queued",
"running",
"completed",
"failed"
],
"type": "string",
"description": "Current saved or execution state reported by the operation."
},
"createdAt": {
"type": "string",
"format": "date-time",
"description": "Date and time this record was created, serialized as ISO 8601."
},
"updatedAt": {
"type": "string",
"format": "date-time",
"description": "Date and time this record was last updated, serialized as ISO 8601."
},
"researchId": {
"type": "number",
"description": "Saved market research identifier for subsequent result or wait tools."
},
"errorMessage": {
"type": "string",
"description": "Explanation of why this run or item could not be processed."
}
},
"description": "Result items or operation data inside this returned payload. Pagination fields describe only this result page.",
"additionalProperties": {
"description": "JSON returned by the connected provider or selected operation; its fields depend on that operation."
}
}
},
"description": "Operation data; optional fields may be absent."
},
"error": {
"type": "string",
"description": "Why the operation failed."
},
"details": {
"type": "object",
"description": "Diagnostics keyed by errorCode."
},
"message": {
"type": "string",
"description": "Outcome or recovery instructions. Project selection means no action ran."
},
"success": {
"type": "boolean",
"description": "Operation success; on false inspect error/errorCode."
},
"upgrade": {
"type": "object",
"description": "Plan-upgrade guidance for an unavailable capability."
},
"category": {
"type": "string",
"description": "Failure category, such as invalid_input or plan_required."
},
"expected": {
"type": "boolean",
"description": "Whether this is an anticipated access, input, plan or state failure."
},
"projects": {
"type": "array",
"items": {
"type": "object",
"properties": {
"id": {
"type": "number",
"description": "Project ID for projectId."
},
"name": {
"type": "string",
"description": "Project name."
}
},
"description": "Accessible project."
},
"description": "Accessible project choices. Select a projectId and retry."
},
"errorCode": {
"type": "string",
"description": "Failure code for recovery."
},
"retryable": {
"type": "boolean",
"description": "Whether an unchanged request can be retried."
},
"statusCode": {
"type": "number",
"description": "HTTP-style failure status."
},
"executionTime": {
"type": "string",
"description": "Elapsed time in seconds, with an s suffix."
}
},
"description": "Operation result envelope."
}
Original tool metadata
{
"name": "get_programmatic_market_research",
"title": "Get programmatic market research",
"description": "Get the current status or completed canonical pageStructure for a programmatic market research run.\n\nReads saved research status/results only. programmatic_market_research starts new paid work; wait_for_programmatic_market_research waits for an existing run.",
"inputSchema": {
"type": "object",
"required": [
"researchId"
],
"properties": {
"context": {
"type": "string",
"maxLength": 120,
"description": "Short purpose of this call for the activity log. Exclude personal data and private source content."
},
"llm_model": {
"type": "string",
"maxLength": 128,
"description": "Use the exact model ID executing this call, from runtime/system context, for usage attribution. Supply it on every Atomic MCP tool call, including discovery and feedback, and update it if the model changes. Use the model ID rather than the client app name. If unavailable, omit it; never guess or ask the user."
},
"projectId": {
"type": "number",
"description": "Atomic project ID from list_projects. Omit to use the configured project; if asked to choose, select one of the accessible returned IDs."
},
"researchId": {
"type": "number",
"description": "Research ID returned by programmatic_market_research."
}
}
},
"outputSchema": {
"type": "object",
"required": [
"success"
],
"properties": {
"url": {
"type": "string",
"description": "Link for resolving the failure or completing the operation."
},
"data": {
"type": "object",
"required": [
"data"
],
"properties": {
"data": {
"type": "object",
"required": [
"status",
"createdAt",
"updatedAt"
],
"properties": {
"status": {
"enum": [
"queued",
"running",
"completed",
"failed"
],
"type": "string",
"description": "Current saved or execution state reported by the operation."
},
"createdAt": {
"type": "string",
"format": "date-time",
"description": "Date and time this record was created, serialized as ISO 8601."
},
"updatedAt": {
"type": "string",
"format": "date-time",
"description": "Date and time this record was last updated, serialized as ISO 8601."
},
"researchId": {
"type": "number",
"description": "Saved market research identifier for subsequent result or wait tools."
},
"errorMessage": {
"type": "string",
"description": "Explanation of why this run or item could not be processed."
}
},
"description": "Result items or operation data inside this returned payload. Pagination fields describe only this result page.",
"additionalProperties": {
"description": "JSON returned by the connected provider or selected operation; its fields depend on that operation."
}
}
},
"description": "Operation data; optional fields may be absent."
},
"error": {
"type": "string",
"description": "Why the operation failed."
},
"details": {
"type": "object",
"description": "Diagnostics keyed by errorCode."
},
"message": {
"type": "string",
"description": "Outcome or recovery instructions. Project selection means no action ran."
},
"success": {
"type": "boolean",
"description": "Operation success; on false inspect error/errorCode."
},
"upgrade": {
"type": "object",
"description": "Plan-upgrade guidance for an unavailable capability."
},
"category": {
"type": "string",
"description": "Failure category, such as invalid_input or plan_required."
},
"expected": {
"type": "boolean",
"description": "Whether this is an anticipated access, input, plan or state failure."
},
"projects": {
"type": "array",
"items": {
"type": "object",
"properties": {
"id": {
"type": "number",
"description": "Project ID for projectId."
},
"name": {
"type": "string",
"description": "Project name."
}
},
"description": "Accessible project."
},
"description": "Accessible project choices. Select a projectId and retry."
},
"errorCode": {
"type": "string",
"description": "Failure code for recovery."
},
"retryable": {
"type": "boolean",
"description": "Whether an unchanged request can be retried."
},
"statusCode": {
"type": "number",
"description": "HTTP-style failure status."
},
"executionTime": {
"type": "string",
"description": "Elapsed time in seconds, with an s suffix."
}
},
"description": "Operation result envelope."
},
"annotations": {
"readOnlyHint": true,
"openWorldHint": false,
"idempotentHint": true,
"destructiveHint": false
}
}
The title clearly communicates the tool’s action and subject. Keep it concise.
Description95/100
Inspect saved project settings, connected source IDs, plan, entitlements, AI credits and prompt capacity. Supply the Atomic projectId from list_projects; a workspace ID is not a project ID. This tool can run without a selected project. Saved source IDs do not verify integration health. Requires project settings read permission. Works before MCP entitlement is enabled.
Use for saved project identity/settings and entitlements. get_project_setup_status interprets which setup requirements are missing; neither call connects a source or changes a plan.
The description explains the capability, when to use it, and what to expect.
Inputs75/100
Remove validation rules already expressed in this field’s schema; describe its meaning and usage instead.
projectId
Atomic project ID returned by list_projects.
Remove validation rules already expressed in this field’s schema; describe its meaning and usage instead.
context
Short purpose of this call for the activity log. Exclude personal data and private source content.
Remove validation rules already expressed in this field’s schema; describe its meaning and usage instead.
llm_model
Use the exact model ID executing this call, from runtime/system context, for usage attribution. Supply it on every Atomic MCP tool call, including discovery and feedback, and update it if the model changes. Use the model ID rather than the client app name. If unavailable, omit it; never guess or ask the user.
Remove validation rules already expressed in this field’s schema; describe its meaning and usage instead.
The title clearly communicates the tool’s action and subject. Keep it concise.
Description90/100
Get tracked competitors and pending competitor suggestions for the current project. Use this before content-gap drilldowns when you need competitor ids, sitemap scan status, or suggested competitors that can be accepted in the UI.
The description explains the capability, when to use it, and what to expect.
Inputs81/100
Remove validation rules already expressed in this field’s schema; describe its meaning and usage instead.
itemType
Optional filter for tracked competitors or pending suggestions.
Remove validation rules already expressed in this field’s schema; describe its meaning and usage instead.
page
Page number (1-based). Default: 1. Use with limit for pagination.
Remove validation rules already expressed in this field’s schema; describe its meaning and usage instead.
limit
Number of items per page. Default: 10, Max: 100. Use with page for pagination.
Remove validation rules already expressed in this field’s schema; describe its meaning and usage instead.
search
Search query to filter results (searches in relevant text fields)
Explain the meaning of this value, not just its name.
sortBy
Field name to sort by (e.g., "updatedAt", "title", "clicks")
Clear enough to supply this argument.
sortOrder
Sort order: "asc" for ascending, "desc" for descending. Default: "desc"
Remove validation rules already expressed in this field’s schema; describe its meaning and usage instead.
projectId
Atomic project ID from list_projects. Omit to use the configured project; if asked to choose, select one of the accessible returned IDs.
Clear enough to supply this argument.
context
Short purpose of this call for the activity log. Exclude personal data and private source content.
Clear enough to supply this argument.
llm_model
Use the exact model ID executing this call, from runtime/system context, for usage attribution. Supply it on every Atomic MCP tool call, including discovery and feedback, and update it if the model changes. Use the model ID rather than the client app name. If unavailable, omit it; never guess or ask the user.
Remove validation rules already expressed in this field’s schema; describe its meaning and usage instead.
{
"type": "object",
"required": [
"success"
],
"properties": {
"url": {
"type": "string",
"description": "Link for resolving the failure or completing the operation."
},
"data": {
"type": "object",
"required": [
"data",
"total",
"page",
"limit",
"totalPages",
"nextPage"
],
"properties": {
"data": {
"type": "array",
"items": {
"type": "object",
"required": [
"id",
"projectId",
"url",
"totalPages",
"addedUrls",
"removedUrls",
"sitemapStatus",
"lastScannedAt"
],
"properties": {
"id": {
"type": "number",
"description": "Identifier of this returned resource. Use it for subsequent reads or edits of the same resource."
},
"url": {
"type": "string",
"description": "URL returned for this resource or operation."
},
"brand": {
"anyOf": [
{
"type": "null"
},
{
"type": "string"
}
]
},
"score": {
"anyOf": [
{
"type": "null"
},
{
"type": "number"
}
]
},
"reason": {
"anyOf": [
{
"type": "null"
},
{
"type": "string"
}
],
"description": "Explanation for the reported outcome or decision."
},
"itemType": {
"enum": [
"competitor",
"suggestion"
],
"type": "string"
},
"addedUrls": {
"type": "number"
},
"projectId": {
"type": "number",
"description": "Atomic project that owns this resource."
},
"confidence": {
"anyOf": [
{
"type": "null"
},
{
"type": "number"
}
],
"description": "Reported match confidence on a 0–1 scale; assess the attached evidence before acting."
},
"totalPages": {
"type": "number",
"description": "Total number of result pages for the current filter and page size."
},
"removedUrls": {
"type": "number"
},
"suggestionId": {
"anyOf": [
{
"type": "null"
},
{
"type": "number"
}
]
},
"lastScannedAt": {
"anyOf": [
{
"type": "null"
},
{
"type": "string",
"format": "date-time",
"description": "Timestamp serialized as an ISO 8601 date and time."
}
]
},
"sitemapStatus": {
"anyOf": [
{
"type": "null"
},
{
"type": "string",
"const": "PENDING"
},
{
"type": "string",
"const": "PROCESSING"
},
{
"type": "string",
"const": "COMPLETED"
},
{
"type": "string",
"const": "FAILED"
}
]
},
"matchedOffering": {
"anyOf": [
{
"type": "null"
},
{
"type": "string"
}
]
},
"suggestionStatus": {
"anyOf": [
{
"type": "null"
},
{
"type": "string",
"const": "pending"
},
{
"type": "string",
"const": "accepted"
},
{
"type": "string",
"const": "dismissed"
}
]
}
}
},
"description": "Result items or operation data inside this returned payload. Pagination fields describe only this result page."
},
"page": {
"type": "number",
"description": "Page number represented by these items."
},
"limit": {
"type": "number",
"description": "Maximum number of items requested for this page."
},
"total": {
"type": "number",
"description": "Total number of matching items across all result pages."
},
"nextPage": {
"anyOf": [
{
"type": "null"
},
{
"type": "number"
}
],
"description": "Next page to request when more results exist; use the returned value rather than constructing a cursor."
},
"totalPages": {
"type": "number",
"description": "Total number of result pages for the current filter and page size."
}
},
"description": "Operation data; optional fields may be absent."
},
"error": {
"type": "string",
"description": "Why the operation failed."
},
"details": {
"type": "object",
"description": "Diagnostics keyed by errorCode."
},
"message": {
"type": "string",
"description": "Outcome or recovery instructions. Project selection means no action ran."
},
"success": {
"type": "boolean",
"description": "Operation success; on false inspect error/errorCode."
},
"upgrade": {
"type": "object",
"description": "Plan-upgrade guidance for an unavailable capability."
},
"category": {
"type": "string",
"description": "Failure category, such as invalid_input or plan_required."
},
"expected": {
"type": "boolean",
"description": "Whether this is an anticipated access, input, plan or state failure."
},
"projects": {
"type": "array",
"items": {
"type": "object",
"properties": {
"id": {
"type": "number",
"description": "Project ID for projectId."
},
"name": {
"type": "string",
"description": "Project name."
}
},
"description": "Accessible project."
},
"description": "Accessible project choices. Select a projectId and retry."
},
"errorCode": {
"type": "string",
"description": "Failure code for recovery."
},
"retryable": {
"type": "boolean",
"description": "Whether an unchanged request can be retried."
},
"statusCode": {
"type": "number",
"description": "HTTP-style failure status."
},
"executionTime": {
"type": "string",
"description": "Elapsed time in seconds, with an s suffix."
}
},
"description": "Operation result envelope."
}
Original tool metadata
{
"name": "get_project_competitors",
"title": "Get project competitors",
"description": "Get tracked competitors and pending competitor suggestions for the current project. Use this before content-gap drilldowns when you need competitor ids, sitemap scan status, or suggested competitors that can be accepted in the UI.",
"inputSchema": {
"type": "object",
"required": [],
"properties": {
"page": {
"type": "number",
"minimum": 1,
"description": "Page number (1-based). Default: 1. Use with limit for pagination."
},
"limit": {
"type": "number",
"default": 10,
"maximum": 100,
"minimum": 1,
"description": "Number of items per page. Default: 10, Max: 100. Use with page for pagination."
},
"search": {
"type": "string",
"description": "Search query to filter results (searches in relevant text fields)"
},
"sortBy": {
"type": "string",
"description": "Field name to sort by (e.g., \"updatedAt\", \"title\", \"clicks\")"
},
"context": {
"type": "string",
"maxLength": 120,
"description": "Short purpose of this call for the activity log. Exclude personal data and private source content."
},
"itemType": {
"enum": [
"competitor",
"suggestion"
],
"type": "string",
"description": "Optional filter for tracked competitors or pending suggestions."
},
"llm_model": {
"type": "string",
"maxLength": 128,
"description": "Use the exact model ID executing this call, from runtime/system context, for usage attribution. Supply it on every Atomic MCP tool call, including discovery and feedback, and update it if the model changes. Use the model ID rather than the client app name. If unavailable, omit it; never guess or ask the user."
},
"projectId": {
"type": "number",
"description": "Atomic project ID from list_projects. Omit to use the configured project; if asked to choose, select one of the accessible returned IDs."
},
"sortOrder": {
"enum": [
"asc",
"desc"
],
"type": "string",
"default": "desc",
"description": "Sort order: \"asc\" for ascending, \"desc\" for descending. Default: \"desc\""
}
}
},
"outputSchema": {
"type": "object",
"required": [
"success"
],
"properties": {
"url": {
"type": "string",
"description": "Link for resolving the failure or completing the operation."
},
"data": {
"type": "object",
"required": [
"data",
"total",
"page",
"limit",
"totalPages",
"nextPage"
],
"properties": {
"data": {
"type": "array",
"items": {
"type": "object",
"required": [
"id",
"projectId",
"url",
"totalPages",
"addedUrls",
"removedUrls",
"sitemapStatus",
"lastScannedAt"
],
"properties": {
"id": {
"type": "number",
"description": "Identifier of this returned resource. Use it for subsequent reads or edits of the same resource."
},
"url": {
"type": "string",
"description": "URL returned for this resource or operation."
},
"brand": {
"anyOf": [
{
"type": "null"
},
{
"type": "string"
}
]
},
"score": {
"anyOf": [
{
"type": "null"
},
{
"type": "number"
}
]
},
"reason": {
"anyOf": [
{
"type": "null"
},
{
"type": "string"
}
],
"description": "Explanation for the reported outcome or decision."
},
"itemType": {
"enum": [
"competitor",
"suggestion"
],
"type": "string"
},
"addedUrls": {
"type": "number"
},
"projectId": {
"type": "number",
"description": "Atomic project that owns this resource."
},
"confidence": {
"anyOf": [
{
"type": "null"
},
{
"type": "number"
}
],
"description": "Reported match confidence on a 0–1 scale; assess the attached evidence before acting."
},
"totalPages": {
"type": "number",
"description": "Total number of result pages for the current filter and page size."
},
"removedUrls": {
"type": "number"
},
"suggestionId": {
"anyOf": [
{
"type": "null"
},
{
"type": "number"
}
]
},
"lastScannedAt": {
"anyOf": [
{
"type": "null"
},
{
"type": "string",
"format": "date-time",
"description": "Timestamp serialized as an ISO 8601 date and time."
}
]
},
"sitemapStatus": {
"anyOf": [
{
"type": "null"
},
{
"type": "string",
"const": "PENDING"
},
{
"type": "string",
"const": "PROCESSING"
},
{
"type": "string",
"const": "COMPLETED"
},
{
"type": "string",
"const": "FAILED"
}
]
},
"matchedOffering": {
"anyOf": [
{
"type": "null"
},
{
"type": "string"
}
]
},
"suggestionStatus": {
"anyOf": [
{
"type": "null"
},
{
"type": "string",
"const": "pending"
},
{
"type": "string",
"const": "accepted"
},
{
"type": "string",
"const": "dismissed"
}
]
}
}
},
"description": "Result items or operation data inside this returned payload. Pagination fields describe only this result page."
},
"page": {
"type": "number",
"description": "Page number represented by these items."
},
"limit": {
"type": "number",
"description": "Maximum number of items requested for this page."
},
"total": {
"type": "number",
"description": "Total number of matching items across all result pages."
},
"nextPage": {
"anyOf": [
{
"type": "null"
},
{
"type": "number"
}
],
"description": "Next page to request when more results exist; use the returned value rather than constructing a cursor."
},
"totalPages": {
"type": "number",
"description": "Total number of result pages for the current filter and page size."
}
},
"description": "Operation data; optional fields may be absent."
},
"error": {
"type": "string",
"description": "Why the operation failed."
},
"details": {
"type": "object",
"description": "Diagnostics keyed by errorCode."
},
"message": {
"type": "string",
"description": "Outcome or recovery instructions. Project selection means no action ran."
},
"success": {
"type": "boolean",
"description": "Operation success; on false inspect error/errorCode."
},
"upgrade": {
"type": "object",
"description": "Plan-upgrade guidance for an unavailable capability."
},
"category": {
"type": "string",
"description": "Failure category, such as invalid_input or plan_required."
},
"expected": {
"type": "boolean",
"description": "Whether this is an anticipated access, input, plan or state failure."
},
"projects": {
"type": "array",
"items": {
"type": "object",
"properties": {
"id": {
"type": "number",
"description": "Project ID for projectId."
},
"name": {
"type": "string",
"description": "Project name."
}
},
"description": "Accessible project."
},
"description": "Accessible project choices. Select a projectId and retry."
},
"errorCode": {
"type": "string",
"description": "Failure code for recovery."
},
"retryable": {
"type": "boolean",
"description": "Whether an unchanged request can be retried."
},
"statusCode": {
"type": "number",
"description": "HTTP-style failure status."
},
"executionTime": {
"type": "string",
"description": "Elapsed time in seconds, with an s suffix."
}
},
"description": "Operation result envelope."
},
"annotations": {
"readOnlyHint": true,
"openWorldHint": false,
"idempotentHint": true,
"destructiveHint": false
}
}
The title clearly communicates the tool’s action and subject. Keep it concise.
Description81/100
List AI-search prompt topics and their stable topic IDs for the current project. Requires AI Search read permission.
Describe the returned information so the agent knows whether it will answer the request.
Inputs83/100
Remove validation rules already expressed in this field’s schema; describe its meaning and usage instead.
projectId
Atomic project ID from list_projects. Omit to use the configured project; if asked to choose, select one of the accessible returned IDs.
Clear enough to supply this argument.
context
Short purpose of this call for the activity log. Exclude personal data and private source content.
Remove validation rules already expressed in this field’s schema; describe its meaning and usage instead.
llm_model
Use the exact model ID executing this call, from runtime/system context, for usage attribution. Supply it on every Atomic MCP tool call, including discovery and feedback, and update it if the model changes. Use the model ID rather than the client app name. If unavailable, omit it; never guess or ask the user.
Remove validation rules already expressed in this field’s schema; describe its meaning and usage instead.
{
"type": "object",
"required": [
"success"
],
"properties": {
"url": {
"type": "string",
"description": "Link for resolving the failure or completing the operation."
},
"data": {
"type": "object",
"required": [
"topics"
],
"properties": {
"topics": {
"type": "array",
"items": {
"type": "object",
"required": [
"id",
"projectId",
"name",
"createdAt",
"updatedAt"
],
"properties": {
"id": {
"type": "number",
"description": "Identifier of this returned resource. Use it for subsequent reads or edits of the same resource."
},
"name": {
"type": "string",
"description": "Human-readable name of this resource."
},
"createdAt": {
"type": "string",
"format": "date-time",
"description": "Date and time this record was created, serialized as ISO 8601."
},
"projectId": {
"type": "number",
"description": "Atomic project that owns this resource."
},
"updatedAt": {
"type": "string",
"format": "date-time",
"description": "Date and time this record was last updated, serialized as ISO 8601."
},
"description": {
"anyOf": [
{
"type": "null"
},
{
"type": "string"
}
],
"description": "Saved description of this resource or its purpose."
},
"promptCount": {
"type": "number"
}
}
}
}
},
"description": "Operation data; optional fields may be absent."
},
"error": {
"type": "string",
"description": "Why the operation failed."
},
"details": {
"type": "object",
"description": "Diagnostics keyed by errorCode."
},
"message": {
"type": "string",
"description": "Outcome or recovery instructions. Project selection means no action ran."
},
"success": {
"type": "boolean",
"description": "Operation success; on false inspect error/errorCode."
},
"upgrade": {
"type": "object",
"description": "Plan-upgrade guidance for an unavailable capability."
},
"category": {
"type": "string",
"description": "Failure category, such as invalid_input or plan_required."
},
"expected": {
"type": "boolean",
"description": "Whether this is an anticipated access, input, plan or state failure."
},
"projects": {
"type": "array",
"items": {
"type": "object",
"properties": {
"id": {
"type": "number",
"description": "Project ID for projectId."
},
"name": {
"type": "string",
"description": "Project name."
}
},
"description": "Accessible project."
},
"description": "Accessible project choices. Select a projectId and retry."
},
"errorCode": {
"type": "string",
"description": "Failure code for recovery."
},
"retryable": {
"type": "boolean",
"description": "Whether an unchanged request can be retried."
},
"statusCode": {
"type": "number",
"description": "HTTP-style failure status."
},
"executionTime": {
"type": "string",
"description": "Elapsed time in seconds, with an s suffix."
}
},
"description": "Operation result envelope."
}
Original tool metadata
{
"name": "get_project_prompt_topics",
"title": "Get project prompt topics",
"description": "List AI-search prompt topics and their stable topic IDs for the current project. Requires AI Search read permission.",
"inputSchema": {
"type": "object",
"required": [],
"properties": {
"context": {
"type": "string",
"maxLength": 120,
"description": "Short purpose of this call for the activity log. Exclude personal data and private source content."
},
"llm_model": {
"type": "string",
"maxLength": 128,
"description": "Use the exact model ID executing this call, from runtime/system context, for usage attribution. Supply it on every Atomic MCP tool call, including discovery and feedback, and update it if the model changes. Use the model ID rather than the client app name. If unavailable, omit it; never guess or ask the user."
},
"projectId": {
"type": "number",
"description": "Atomic project ID from list_projects. Omit to use the configured project; if asked to choose, select one of the accessible returned IDs."
}
},
"additionalProperties": false
},
"outputSchema": {
"type": "object",
"required": [
"success"
],
"properties": {
"url": {
"type": "string",
"description": "Link for resolving the failure or completing the operation."
},
"data": {
"type": "object",
"required": [
"topics"
],
"properties": {
"topics": {
"type": "array",
"items": {
"type": "object",
"required": [
"id",
"projectId",
"name",
"createdAt",
"updatedAt"
],
"properties": {
"id": {
"type": "number",
"description": "Identifier of this returned resource. Use it for subsequent reads or edits of the same resource."
},
"name": {
"type": "string",
"description": "Human-readable name of this resource."
},
"createdAt": {
"type": "string",
"format": "date-time",
"description": "Date and time this record was created, serialized as ISO 8601."
},
"projectId": {
"type": "number",
"description": "Atomic project that owns this resource."
},
"updatedAt": {
"type": "string",
"format": "date-time",
"description": "Date and time this record was last updated, serialized as ISO 8601."
},
"description": {
"anyOf": [
{
"type": "null"
},
{
"type": "string"
}
],
"description": "Saved description of this resource or its purpose."
},
"promptCount": {
"type": "number"
}
}
}
}
},
"description": "Operation data; optional fields may be absent."
},
"error": {
"type": "string",
"description": "Why the operation failed."
},
"details": {
"type": "object",
"description": "Diagnostics keyed by errorCode."
},
"message": {
"type": "string",
"description": "Outcome or recovery instructions. Project selection means no action ran."
},
"success": {
"type": "boolean",
"description": "Operation success; on false inspect error/errorCode."
},
"upgrade": {
"type": "object",
"description": "Plan-upgrade guidance for an unavailable capability."
},
"category": {
"type": "string",
"description": "Failure category, such as invalid_input or plan_required."
},
"expected": {
"type": "boolean",
"description": "Whether this is an anticipated access, input, plan or state failure."
},
"projects": {
"type": "array",
"items": {
"type": "object",
"properties": {
"id": {
"type": "number",
"description": "Project ID for projectId."
},
"name": {
"type": "string",
"description": "Project name."
}
},
"description": "Accessible project."
},
"description": "Accessible project choices. Select a projectId and retry."
},
"errorCode": {
"type": "string",
"description": "Failure code for recovery."
},
"retryable": {
"type": "boolean",
"description": "Whether an unchanged request can be retried."
},
"statusCode": {
"type": "number",
"description": "HTTP-style failure status."
},
"executionTime": {
"type": "string",
"description": "Elapsed time in seconds, with an s suffix."
}
},
"description": "Operation result envelope."
},
"annotations": {
"readOnlyHint": true,
"openWorldHint": false,
"idempotentHint": true,
"destructiveHint": false
}
}
The title clearly communicates the tool’s action and subject. Keep it concise.
Description94/100
Get all prompts for a project. Useful for understanding what prompts are being tracked and their performance metrics.
Lists saved tracked questions. Use list_ai_search_prompt_runs for recorded answers or test_ai_search_prompt_run for an unsaved test; reading the list does not consume prompt capacity.
The description explains the capability, when to use it, and what to expect.
Inputs75/100
Explain the meaning of this value, not just its name.
category
Optional category filter to get prompts from a specific category
Explain the meaning of this value, not just its name.
isActive
Filter by active status (default: all prompts)
Clear enough to supply this argument.
page
Page number (1-based). Default: 1. Use with limit for pagination.
Remove validation rules already expressed in this field’s schema; describe its meaning and usage instead.
limit
Number of items per page. Default: 10, Max: 100. Use with page for pagination.
Remove validation rules already expressed in this field’s schema; describe its meaning and usage instead.
search
Search query to filter results (searches in relevant text fields)
Explain the meaning of this value, not just its name.
sortBy
Field name to sort by (e.g., "updatedAt", "title", "clicks")
Explain the meaning of this value, not just its name.
sortOrder
Sort order: "asc" for ascending, "desc" for descending. Default: "desc"
Remove validation rules already expressed in this field’s schema; describe its meaning and usage instead.
projectId
Atomic project ID from list_projects. Omit to use the configured project; if asked to choose, select one of the accessible returned IDs.
Clear enough to supply this argument.
context
Short purpose of this call for the activity log. Exclude personal data and private source content.
Clear enough to supply this argument.
llm_model
Use the exact model ID executing this call, from runtime/system context, for usage attribution. Supply it on every Atomic MCP tool call, including discovery and feedback, and update it if the model changes. Use the model ID rather than the client app name. If unavailable, omit it; never guess or ask the user.
Remove validation rules already expressed in this field’s schema; describe its meaning and usage instead.
{
"type": "object",
"required": [
"success"
],
"properties": {
"url": {
"type": "string",
"description": "Link for resolving the failure or completing the operation."
},
"data": {
"type": "object",
"required": [
"data",
"total",
"page",
"limit",
"totalPages",
"nextPage"
],
"properties": {
"data": {
"type": "array",
"items": {
"type": "object",
"required": [
"id",
"prompt"
],
"properties": {
"id": {
"type": "number",
"description": "Identifier of this returned resource. Use it for subsequent reads or edits of the same resource."
},
"prompt": {
"type": "string",
"description": "Prompt text used for the tracked or tested AI-search run."
},
"status": {
"type": "string",
"description": "Current saved or execution state reported by the operation."
},
"category": {
"type": "string",
"description": "Classification of this resource or observation."
},
"position": {
"type": "number",
"description": "Saved ordering position or visual editor coordinates for this item."
},
"updatedAt": {
"type": "string",
"description": "Date and time this record was last updated, serialized as ISO 8601."
},
"mentionFrequency": {
"anyOf": [
{
"type": "string"
},
{
"type": "number"
}
]
}
}
},
"description": "Result items or operation data inside this returned payload. Pagination fields describe only this result page."
},
"page": {
"type": "number",
"description": "Page number represented by these items."
},
"limit": {
"type": "number",
"description": "Maximum number of items requested for this page."
},
"total": {
"type": "number",
"description": "Total number of matching items across all result pages."
},
"nextPage": {
"anyOf": [
{
"type": "null"
},
{
"type": "number"
}
],
"description": "Next page to request when more results exist; use the returned value rather than constructing a cursor."
},
"totalPages": {
"type": "number",
"description": "Total number of result pages for the current filter and page size."
}
},
"description": "Operation data; optional fields may be absent."
},
"error": {
"type": "string",
"description": "Why the operation failed."
},
"details": {
"type": "object",
"description": "Diagnostics keyed by errorCode."
},
"message": {
"type": "string",
"description": "Outcome or recovery instructions. Project selection means no action ran."
},
"success": {
"type": "boolean",
"description": "Operation success; on false inspect error/errorCode."
},
"upgrade": {
"type": "object",
"description": "Plan-upgrade guidance for an unavailable capability."
},
"category": {
"type": "string",
"description": "Failure category, such as invalid_input or plan_required."
},
"expected": {
"type": "boolean",
"description": "Whether this is an anticipated access, input, plan or state failure."
},
"projects": {
"type": "array",
"items": {
"type": "object",
"properties": {
"id": {
"type": "number",
"description": "Project ID for projectId."
},
"name": {
"type": "string",
"description": "Project name."
}
},
"description": "Accessible project."
},
"description": "Accessible project choices. Select a projectId and retry."
},
"errorCode": {
"type": "string",
"description": "Failure code for recovery."
},
"retryable": {
"type": "boolean",
"description": "Whether an unchanged request can be retried."
},
"statusCode": {
"type": "number",
"description": "HTTP-style failure status."
},
"executionTime": {
"type": "string",
"description": "Elapsed time in seconds, with an s suffix."
}
},
"description": "Operation result envelope."
}
Original tool metadata
{
"name": "get_project_prompts",
"title": "Get project prompts",
"description": "Get all prompts for a project. Useful for understanding what prompts are being tracked and their performance metrics.\n\nLists saved tracked questions. Use list_ai_search_prompt_runs for recorded answers or test_ai_search_prompt_run for an unsaved test; reading the list does not consume prompt capacity.",
"inputSchema": {
"type": "object",
"required": [],
"properties": {
"page": {
"type": "number",
"minimum": 1,
"description": "Page number (1-based). Default: 1. Use with limit for pagination."
},
"limit": {
"type": "number",
"default": 10,
"maximum": 100,
"minimum": 1,
"description": "Number of items per page. Default: 10, Max: 100. Use with page for pagination."
},
"search": {
"type": "string",
"description": "Search query to filter results (searches in relevant text fields)"
},
"sortBy": {
"type": "string",
"description": "Field name to sort by (e.g., \"updatedAt\", \"title\", \"clicks\")"
},
"context": {
"type": "string",
"maxLength": 120,
"description": "Short purpose of this call for the activity log. Exclude personal data and private source content."
},
"category": {
"type": "string",
"description": "Optional category filter to get prompts from a specific category"
},
"isActive": {
"type": "boolean",
"description": "Filter by active status (default: all prompts)"
},
"llm_model": {
"type": "string",
"maxLength": 128,
"description": "Use the exact model ID executing this call, from runtime/system context, for usage attribution. Supply it on every Atomic MCP tool call, including discovery and feedback, and update it if the model changes. Use the model ID rather than the client app name. If unavailable, omit it; never guess or ask the user."
},
"projectId": {
"type": "number",
"description": "Atomic project ID from list_projects. Omit to use the configured project; if asked to choose, select one of the accessible returned IDs."
},
"sortOrder": {
"enum": [
"asc",
"desc"
],
"type": "string",
"default": "desc",
"description": "Sort order: \"asc\" for ascending, \"desc\" for descending. Default: \"desc\""
}
}
},
"outputSchema": {
"type": "object",
"required": [
"success"
],
"properties": {
"url": {
"type": "string",
"description": "Link for resolving the failure or completing the operation."
},
"data": {
"type": "object",
"required": [
"data",
"total",
"page",
"limit",
"totalPages",
"nextPage"
],
"properties": {
"data": {
"type": "array",
"items": {
"type": "object",
"required": [
"id",
"prompt"
],
"properties": {
"id": {
"type": "number",
"description": "Identifier of this returned resource. Use it for subsequent reads or edits of the same resource."
},
"prompt": {
"type": "string",
"description": "Prompt text used for the tracked or tested AI-search run."
},
"status": {
"type": "string",
"description": "Current saved or execution state reported by the operation."
},
"category": {
"type": "string",
"description": "Classification of this resource or observation."
},
"position": {
"type": "number",
"description": "Saved ordering position or visual editor coordinates for this item."
},
"updatedAt": {
"type": "string",
"description": "Date and time this record was last updated, serialized as ISO 8601."
},
"mentionFrequency": {
"anyOf": [
{
"type": "string"
},
{
"type": "number"
}
]
}
}
},
"description": "Result items or operation data inside this returned payload. Pagination fields describe only this result page."
},
"page": {
"type": "number",
"description": "Page number represented by these items."
},
"limit": {
"type": "number",
"description": "Maximum number of items requested for this page."
},
"total": {
"type": "number",
"description": "Total number of matching items across all result pages."
},
"nextPage": {
"anyOf": [
{
"type": "null"
},
{
"type": "number"
}
],
"description": "Next page to request when more results exist; use the returned value rather than constructing a cursor."
},
"totalPages": {
"type": "number",
"description": "Total number of result pages for the current filter and page size."
}
},
"description": "Operation data; optional fields may be absent."
},
"error": {
"type": "string",
"description": "Why the operation failed."
},
"details": {
"type": "object",
"description": "Diagnostics keyed by errorCode."
},
"message": {
"type": "string",
"description": "Outcome or recovery instructions. Project selection means no action ran."
},
"success": {
"type": "boolean",
"description": "Operation success; on false inspect error/errorCode."
},
"upgrade": {
"type": "object",
"description": "Plan-upgrade guidance for an unavailable capability."
},
"category": {
"type": "string",
"description": "Failure category, such as invalid_input or plan_required."
},
"expected": {
"type": "boolean",
"description": "Whether this is an anticipated access, input, plan or state failure."
},
"projects": {
"type": "array",
"items": {
"type": "object",
"properties": {
"id": {
"type": "number",
"description": "Project ID for projectId."
},
"name": {
"type": "string",
"description": "Project name."
}
},
"description": "Accessible project."
},
"description": "Accessible project choices. Select a projectId and retry."
},
"errorCode": {
"type": "string",
"description": "Failure code for recovery."
},
"retryable": {
"type": "boolean",
"description": "Whether an unchanged request can be retried."
},
"statusCode": {
"type": "number",
"description": "HTTP-style failure status."
},
"executionTime": {
"type": "string",
"description": "Elapsed time in seconds, with an s suffix."
}
},
"description": "Operation result envelope."
},
"annotations": {
"readOnlyHint": true,
"openWorldHint": false,
"idempotentHint": true,
"destructiveHint": false
}
}
The title clearly communicates the tool’s action and subject. Keep it concise.
Description96/100
Inspect saved project settings, connected source IDs, plan, entitlements, AI credits and prompt capacity. Also reports configured, missing or permission-restricted setup steps and blockers. Saved configuration does not prove integration health. Requires project settings read permission. Works before MCP entitlement is enabled.
Use to diagnose missing or permission-blocked setup, rather than just inspect saved project fields. get_project is the entity/settings view; source connections and billing remain separate actions.
The description explains the capability, when to use it, and what to expect.
Inputs75/100
Remove validation rules already expressed in this field’s schema; describe its meaning and usage instead.
projectId
Atomic project identifier from list_projects. Select only a project accessible to the acting user.
Remove validation rules already expressed in this field’s schema; describe its meaning and usage instead.
context
Short purpose of this call for the activity log. Exclude personal data and private source content.
Remove validation rules already expressed in this field’s schema; describe its meaning and usage instead.
llm_model
Use the exact model ID executing this call, from runtime/system context, for usage attribution. Supply it on every Atomic MCP tool call, including discovery and feedback, and update it if the model changes. Use the model ID rather than the client app name. If unavailable, omit it; never guess or ask the user.
Remove validation rules already expressed in this field’s schema; describe its meaning and usage instead.
The title clearly communicates the tool’s action and subject. Keep it concise.
Description96/100
Get all configured publishing connections (WordPress, Webflow) for the current project. Returns: connections (list of configured integrations with IDs), hasConnections (boolean), availablePlatforms (platforms that can still be connected), setupUrl (link to settings page), and message (helpful guidance). IMPORTANT: If hasConnections is false, inform the user they need to set up a publishing connection first and provide them with the setupUrl link. Each connection has a unique ID that must be used when publishing content with publish_content.
The description explains the capability, when to use it, and what to expect.
Inputs92/100
Remove validation rules already expressed in this field’s schema; describe its meaning and usage instead.
projectId
Atomic project ID from list_projects. Omit to use the configured project; if asked to choose, select one of the accessible returned IDs.
Clear enough to supply this argument.
context
Short purpose of this call for the activity log. Exclude personal data and private source content.
Remove validation rules already expressed in this field’s schema; describe its meaning and usage instead.
llm_model
Use the exact model ID executing this call, from runtime/system context, for usage attribution. Supply it on every Atomic MCP tool call, including discovery and feedback, and update it if the model changes. Use the model ID rather than the client app name. If unavailable, omit it; never guess or ask the user.
Align the output schema with the tool’s documented result.
View output schema
{
"type": "object",
"required": [
"success"
],
"properties": {
"url": {
"type": "string",
"description": "Link for resolving the failure or completing the operation."
},
"data": {
"type": "object",
"required": [
"connections",
"hasConnections",
"availablePlatforms"
],
"properties": {
"message": {
"type": "string",
"description": "Outcome, explanation or recovery instructions returned by the operation."
},
"setupUrl": {
"type": "string"
},
"connections": {
"type": "array",
"items": {
"type": "object",
"required": [
"id",
"platform",
"name",
"siteUrl",
"isActive",
"defaultStatus"
],
"properties": {
"id": {
"type": "number",
"description": "Identifier of this returned resource. Use it for subsequent reads or edits of the same resource."
},
"name": {
"type": "string",
"description": "Human-readable name of this resource."
},
"siteUrl": {
"type": "string"
},
"isActive": {
"type": "boolean",
"description": "Whether this saved configuration is enabled."
},
"platform": {
"type": "string"
},
"defaultStatus": {
"type": "string"
},
"lastVerifiedAt": {
"type": "string",
"format": "date-time",
"description": "Timestamp serialized as an ISO 8601 date and time."
},
"webflowDesignConnected": {
"type": "boolean"
}
}
}
},
"hasConnections": {
"type": "boolean"
},
"availablePlatforms": {
"type": "array",
"items": {
"type": "object",
"required": [
"platform",
"label",
"description"
],
"properties": {
"label": {
"type": "string",
"description": "Human-readable label reported by the provider."
},
"platform": {
"type": "string"
},
"description": {
"type": "string",
"description": "Saved description of this resource or its purpose."
}
}
}
}
},
"description": "Operation data; optional fields may be absent."
},
"error": {
"type": "string",
"description": "Why the operation failed."
},
"details": {
"type": "object",
"description": "Diagnostics keyed by errorCode."
},
"message": {
"type": "string",
"description": "Outcome or recovery instructions. Project selection means no action ran."
},
"success": {
"type": "boolean",
"description": "Operation success; on false inspect error/errorCode."
},
"upgrade": {
"type": "object",
"description": "Plan-upgrade guidance for an unavailable capability."
},
"category": {
"type": "string",
"description": "Failure category, such as invalid_input or plan_required."
},
"expected": {
"type": "boolean",
"description": "Whether this is an anticipated access, input, plan or state failure."
},
"projects": {
"type": "array",
"items": {
"type": "object",
"properties": {
"id": {
"type": "number",
"description": "Project ID for projectId."
},
"name": {
"type": "string",
"description": "Project name."
}
},
"description": "Accessible project."
},
"description": "Accessible project choices. Select a projectId and retry."
},
"errorCode": {
"type": "string",
"description": "Failure code for recovery."
},
"retryable": {
"type": "boolean",
"description": "Whether an unchanged request can be retried."
},
"statusCode": {
"type": "number",
"description": "HTTP-style failure status."
},
"executionTime": {
"type": "string",
"description": "Elapsed time in seconds, with an s suffix."
}
},
"description": "Operation result envelope."
}
Original tool metadata
{
"name": "get_publishing_connections",
"title": "Get publishing connections",
"description": "Get all configured publishing connections (WordPress, Webflow) for the current project. Returns: connections (list of configured integrations with IDs), hasConnections (boolean), availablePlatforms (platforms that can still be connected), setupUrl (link to settings page), and message (helpful guidance). IMPORTANT: If hasConnections is false, inform the user they need to set up a publishing connection first and provide them with the setupUrl link. Each connection has a unique ID that must be used when publishing content with publish_content.",
"inputSchema": {
"type": "object",
"required": [],
"properties": {
"context": {
"type": "string",
"maxLength": 120,
"description": "Short purpose of this call for the activity log. Exclude personal data and private source content."
},
"llm_model": {
"type": "string",
"maxLength": 128,
"description": "Use the exact model ID executing this call, from runtime/system context, for usage attribution. Supply it on every Atomic MCP tool call, including discovery and feedback, and update it if the model changes. Use the model ID rather than the client app name. If unavailable, omit it; never guess or ask the user."
},
"projectId": {
"type": "number",
"description": "Atomic project ID from list_projects. Omit to use the configured project; if asked to choose, select one of the accessible returned IDs."
}
}
},
"outputSchema": {
"type": "object",
"required": [
"success"
],
"properties": {
"url": {
"type": "string",
"description": "Link for resolving the failure or completing the operation."
},
"data": {
"type": "object",
"required": [
"connections",
"hasConnections",
"availablePlatforms"
],
"properties": {
"message": {
"type": "string",
"description": "Outcome, explanation or recovery instructions returned by the operation."
},
"setupUrl": {
"type": "string"
},
"connections": {
"type": "array",
"items": {
"type": "object",
"required": [
"id",
"platform",
"name",
"siteUrl",
"isActive",
"defaultStatus"
],
"properties": {
"id": {
"type": "number",
"description": "Identifier of this returned resource. Use it for subsequent reads or edits of the same resource."
},
"name": {
"type": "string",
"description": "Human-readable name of this resource."
},
"siteUrl": {
"type": "string"
},
"isActive": {
"type": "boolean",
"description": "Whether this saved configuration is enabled."
},
"platform": {
"type": "string"
},
"defaultStatus": {
"type": "string"
},
"lastVerifiedAt": {
"type": "string",
"format": "date-time",
"description": "Timestamp serialized as an ISO 8601 date and time."
},
"webflowDesignConnected": {
"type": "boolean"
}
}
}
},
"hasConnections": {
"type": "boolean"
},
"availablePlatforms": {
"type": "array",
"items": {
"type": "object",
"required": [
"platform",
"label",
"description"
],
"properties": {
"label": {
"type": "string",
"description": "Human-readable label reported by the provider."
},
"platform": {
"type": "string"
},
"description": {
"type": "string",
"description": "Saved description of this resource or its purpose."
}
}
}
}
},
"description": "Operation data; optional fields may be absent."
},
"error": {
"type": "string",
"description": "Why the operation failed."
},
"details": {
"type": "object",
"description": "Diagnostics keyed by errorCode."
},
"message": {
"type": "string",
"description": "Outcome or recovery instructions. Project selection means no action ran."
},
"success": {
"type": "boolean",
"description": "Operation success; on false inspect error/errorCode."
},
"upgrade": {
"type": "object",
"description": "Plan-upgrade guidance for an unavailable capability."
},
"category": {
"type": "string",
"description": "Failure category, such as invalid_input or plan_required."
},
"expected": {
"type": "boolean",
"description": "Whether this is an anticipated access, input, plan or state failure."
},
"projects": {
"type": "array",
"items": {
"type": "object",
"properties": {
"id": {
"type": "number",
"description": "Project ID for projectId."
},
"name": {
"type": "string",
"description": "Project name."
}
},
"description": "Accessible project."
},
"description": "Accessible project choices. Select a projectId and retry."
},
"errorCode": {
"type": "string",
"description": "Failure code for recovery."
},
"retryable": {
"type": "boolean",
"description": "Whether an unchanged request can be retried."
},
"statusCode": {
"type": "number",
"description": "HTTP-style failure status."
},
"executionTime": {
"type": "string",
"description": "Elapsed time in seconds, with an s suffix."
}
},
"description": "Operation result envelope."
},
"annotations": {
"readOnlyHint": true,
"openWorldHint": false,
"idempotentHint": true,
"destructiveHint": false
}
}
The title clearly communicates the tool’s action and subject. Keep it concise.
Description93/100
Get structured brand sentiment data and programmatic counts and impact-weighted percentages for a project. Each theme includes weight: 1 minor/indirect, 2 material, 3 major/direct; historical themes have weight 1. Neutral/informational themes are counted but excluded from impact-weighted sentiment percentages; their percentage is null. Directional percentages are null when no positive or negative evidence exists. Omits raw evaluation text unless includeRawText is true. Useful for analyzing brand sentiment over time, understanding positive and negative mentions, tracking sentiment trends, and identifying sentiment patterns. If startDate and endDate are not provided, defaults to last 30 days. Maximum date span is 366 days. Complete reports are limited to 5000 rows and 8 MiB; excessive reports fail explicitly, so narrow the date range.
Reads saved brand sentiment evidence and weighted aggregates; it does not generate reviews or change reputation records. Use get_citations for citation-level source evidence.
The description explains the capability, when to use it, and what to expect.
Inputs73/100
Remove validation rules already expressed in this field’s schema; describe its meaning and usage instead.
startDate
Start date in ISO format (YYYY-MM-DD). If not provided, defaults to 30 days ago.
Remove validation rules already expressed in this field’s schema; describe its meaning and usage instead.
endDate
End date in ISO format (YYYY-MM-DD). If not provided, defaults to today.
Remove validation rules already expressed in this field’s schema; describe its meaning and usage instead.
page
Page number (1-based). Default: 1. Use with limit for pagination.
Remove validation rules already expressed in this field’s schema; describe its meaning and usage instead.
limit
Number of items per page. Default: 10, Max: 100. Use with page for pagination.
Remove validation rules already expressed in this field’s schema; describe its meaning and usage instead.
search
Search query to filter results (searches in relevant text fields)
Explain the meaning of this value, not just its name.
sortBy
Field name to sort by (e.g., "updatedAt", "title", "clicks")
Explain the meaning of this value, not just its name.
sortOrder
Sort order: "asc" for ascending, "desc" for descending. Default: "desc"
Explain the meaning of this value, not just its name.
includeRawText
Include raw evaluation text, at most 8192 characters per evaluation; larger narratives fail explicitly. Omitted by default.
Remove validation rules already expressed in this field’s schema; describe its meaning and usage instead.
projectId
Atomic project ID from list_projects. Omit to use the configured project; if asked to choose, select one of the accessible returned IDs.
Clear enough to supply this argument.
context
Short purpose of this call for the activity log. Exclude personal data and private source content.
Clear enough to supply this argument.
llm_model
Use the exact model ID executing this call, from runtime/system context, for usage attribution. Supply it on every Atomic MCP tool call, including discovery and feedback, and update it if the model changes. Use the model ID rather than the client app name. If unavailable, omit it; never guess or ask the user.
Remove validation rules already expressed in this field’s schema; describe its meaning and usage instead.
Declare the result fields and their types in the output schema.
View output schema
{
"type": "object",
"required": [
"success"
],
"properties": {
"url": {
"type": "string",
"description": "Link for resolving the failure or completing the operation."
},
"data": {
"type": "object",
"required": [
"data",
"total",
"page",
"limit",
"totalPages",
"nextPage",
"summary"
],
"properties": {
"data": {
"type": "array",
"items": {
"type": "object",
"required": [
"weight",
"weightAssessmentStatus",
"text",
"sentiment",
"date"
],
"properties": {
"url": {
"type": "string",
"description": "URL returned for this resource or operation."
},
"date": {
"type": "string"
},
"text": {
"type": "string"
},
"weight": {
"type": "number"
},
"country": {
"type": "string"
},
"sentiment": {
"enum": [
"positive",
"neutral",
"negative"
],
"type": "string"
},
"evaluation": {
"type": "string"
},
"highlightText": {
"type": "string"
},
"weightAssessmentStatus": {
"enum": [
"assessed",
"insufficient"
],
"type": "string"
}
}
},
"description": "Result items or operation data inside this returned payload. Pagination fields describe only this result page."
},
"page": {
"type": "number",
"description": "Page number represented by these items."
},
"limit": {
"type": "number",
"description": "Maximum number of items requested for this page."
},
"total": {
"type": "number",
"description": "Total number of matching items across all result pages."
},
"summary": {
"type": "object",
"properties": {},
"additionalProperties": {
"type": "object",
"required": [
"count",
"percentage"
],
"properties": {
"count": {
"type": "number",
"description": "Number of records reported by the provider for this group."
},
"percentage": {
"anyOf": [
{
"type": "null"
},
{
"type": "number"
}
]
}
}
}
},
"nextPage": {
"anyOf": [
{
"type": "null"
},
{
"type": "number"
}
],
"description": "Next page to request when more results exist; use the returned value rather than constructing a cursor."
},
"totalPages": {
"type": "number",
"description": "Total number of result pages for the current filter and page size."
}
},
"description": "Operation data; optional fields may be absent."
},
"error": {
"type": "string",
"description": "Why the operation failed."
},
"details": {
"type": "object",
"description": "Diagnostics keyed by errorCode."
},
"message": {
"type": "string",
"description": "Outcome or recovery instructions. Project selection means no action ran."
},
"success": {
"type": "boolean",
"description": "Operation success; on false inspect error/errorCode."
},
"upgrade": {
"type": "object",
"description": "Plan-upgrade guidance for an unavailable capability."
},
"category": {
"type": "string",
"description": "Failure category, such as invalid_input or plan_required."
},
"expected": {
"type": "boolean",
"description": "Whether this is an anticipated access, input, plan or state failure."
},
"projects": {
"type": "array",
"items": {
"type": "object",
"properties": {
"id": {
"type": "number",
"description": "Project ID for projectId."
},
"name": {
"type": "string",
"description": "Project name."
}
},
"description": "Accessible project."
},
"description": "Accessible project choices. Select a projectId and retry."
},
"errorCode": {
"type": "string",
"description": "Failure code for recovery."
},
"retryable": {
"type": "boolean",
"description": "Whether an unchanged request can be retried."
},
"statusCode": {
"type": "number",
"description": "HTTP-style failure status."
},
"executionTime": {
"type": "string",
"description": "Elapsed time in seconds, with an s suffix."
}
},
"description": "Operation result envelope."
}
Original tool metadata
{
"name": "get_sentiment",
"title": "Get sentiment",
"description": "Get structured brand sentiment data and programmatic counts and impact-weighted percentages for a project. Each theme includes weight: 1 minor/indirect, 2 material, 3 major/direct; historical themes have weight 1. Neutral/informational themes are counted but excluded from impact-weighted sentiment percentages; their percentage is null. Directional percentages are null when no positive or negative evidence exists. Omits raw evaluation text unless includeRawText is true. Useful for analyzing brand sentiment over time, understanding positive and negative mentions, tracking sentiment trends, and identifying sentiment patterns. If startDate and endDate are not provided, defaults to last 30 days. Maximum date span is 366 days. Complete reports are limited to 5000 rows and 8 MiB; excessive reports fail explicitly, so narrow the date range.\n\nReads saved brand sentiment evidence and weighted aggregates; it does not generate reviews or change reputation records. Use get_citations for citation-level source evidence.",
"inputSchema": {
"type": "object",
"required": [],
"properties": {
"page": {
"type": "number",
"minimum": 1,
"description": "Page number (1-based). Default: 1. Use with limit for pagination."
},
"limit": {
"type": "number",
"default": 10,
"maximum": 100,
"minimum": 1,
"description": "Number of items per page. Default: 10, Max: 100. Use with page for pagination."
},
"search": {
"type": "string",
"description": "Search query to filter results (searches in relevant text fields)"
},
"sortBy": {
"type": "string",
"description": "Field name to sort by (e.g., \"updatedAt\", \"title\", \"clicks\")"
},
"context": {
"type": "string",
"maxLength": 120,
"description": "Short purpose of this call for the activity log. Exclude personal data and private source content."
},
"endDate": {
"type": "string",
"description": "End date in ISO format (YYYY-MM-DD). If not provided, defaults to today."
},
"llm_model": {
"type": "string",
"maxLength": 128,
"description": "Use the exact model ID executing this call, from runtime/system context, for usage attribution. Supply it on every Atomic MCP tool call, including discovery and feedback, and update it if the model changes. Use the model ID rather than the client app name. If unavailable, omit it; never guess or ask the user."
},
"projectId": {
"type": "number",
"description": "Atomic project ID from list_projects. Omit to use the configured project; if asked to choose, select one of the accessible returned IDs."
},
"sortOrder": {
"enum": [
"asc",
"desc"
],
"type": "string",
"default": "desc",
"description": "Sort order: \"asc\" for ascending, \"desc\" for descending. Default: \"desc\""
},
"startDate": {
"type": "string",
"description": "Start date in ISO format (YYYY-MM-DD). If not provided, defaults to 30 days ago."
},
"includeRawText": {
"type": "boolean",
"default": false,
"description": "Include raw evaluation text, at most 8192 characters per evaluation; larger narratives fail explicitly. Omitted by default."
}
}
},
"outputSchema": {
"type": "object",
"required": [
"success"
],
"properties": {
"url": {
"type": "string",
"description": "Link for resolving the failure or completing the operation."
},
"data": {
"type": "object",
"required": [
"data",
"total",
"page",
"limit",
"totalPages",
"nextPage",
"summary"
],
"properties": {
"data": {
"type": "array",
"items": {
"type": "object",
"required": [
"weight",
"weightAssessmentStatus",
"text",
"sentiment",
"date"
],
"properties": {
"url": {
"type": "string",
"description": "URL returned for this resource or operation."
},
"date": {
"type": "string"
},
"text": {
"type": "string"
},
"weight": {
"type": "number"
},
"country": {
"type": "string"
},
"sentiment": {
"enum": [
"positive",
"neutral",
"negative"
],
"type": "string"
},
"evaluation": {
"type": "string"
},
"highlightText": {
"type": "string"
},
"weightAssessmentStatus": {
"enum": [
"assessed",
"insufficient"
],
"type": "string"
}
}
},
"description": "Result items or operation data inside this returned payload. Pagination fields describe only this result page."
},
"page": {
"type": "number",
"description": "Page number represented by these items."
},
"limit": {
"type": "number",
"description": "Maximum number of items requested for this page."
},
"total": {
"type": "number",
"description": "Total number of matching items across all result pages."
},
"summary": {
"type": "object",
"properties": {},
"additionalProperties": {
"type": "object",
"required": [
"count",
"percentage"
],
"properties": {
"count": {
"type": "number",
"description": "Number of records reported by the provider for this group."
},
"percentage": {
"anyOf": [
{
"type": "null"
},
{
"type": "number"
}
]
}
}
}
},
"nextPage": {
"anyOf": [
{
"type": "null"
},
{
"type": "number"
}
],
"description": "Next page to request when more results exist; use the returned value rather than constructing a cursor."
},
"totalPages": {
"type": "number",
"description": "Total number of result pages for the current filter and page size."
}
},
"description": "Operation data; optional fields may be absent."
},
"error": {
"type": "string",
"description": "Why the operation failed."
},
"details": {
"type": "object",
"description": "Diagnostics keyed by errorCode."
},
"message": {
"type": "string",
"description": "Outcome or recovery instructions. Project selection means no action ran."
},
"success": {
"type": "boolean",
"description": "Operation success; on false inspect error/errorCode."
},
"upgrade": {
"type": "object",
"description": "Plan-upgrade guidance for an unavailable capability."
},
"category": {
"type": "string",
"description": "Failure category, such as invalid_input or plan_required."
},
"expected": {
"type": "boolean",
"description": "Whether this is an anticipated access, input, plan or state failure."
},
"projects": {
"type": "array",
"items": {
"type": "object",
"properties": {
"id": {
"type": "number",
"description": "Project ID for projectId."
},
"name": {
"type": "string",
"description": "Project name."
}
},
"description": "Accessible project."
},
"description": "Accessible project choices. Select a projectId and retry."
},
"errorCode": {
"type": "string",
"description": "Failure code for recovery."
},
"retryable": {
"type": "boolean",
"description": "Whether an unchanged request can be retried."
},
"statusCode": {
"type": "number",
"description": "HTTP-style failure status."
},
"executionTime": {
"type": "string",
"description": "Elapsed time in seconds, with an s suffix."
}
},
"description": "Operation result envelope."
},
"annotations": {
"readOnlyHint": true,
"openWorldHint": true,
"idempotentHint": true,
"destructiveHint": false
}
}
The title clearly communicates the tool’s action and subject. Keep it concise.
Description87/100
Get SEO audit issues for a project. Useful for technical SEO analysis and identifying site health problems.
Reads findings from auditId, or the latest saved audit when omitted. It does not launch a scan; use recheck_seo_audit_page only to verify one persisted finding after a fix.
The description explains the capability, when to use it, and what to expect.
Inputs89/100
Remove validation rules already expressed in this field’s schema; describe its meaning and usage instead.
auditId
Optional specific audit ID (defaults to latest audit)
Clear enough to supply this argument.
page
Page number (1-based). Default: 1. Use with limit for pagination.
Remove validation rules already expressed in this field’s schema; describe its meaning and usage instead.
limit
Number of items per page. Default: 10, Max: 100. Use with page for pagination.
Remove validation rules already expressed in this field’s schema; describe its meaning and usage instead.
search
Search query to filter results (searches in relevant text fields)
Clear enough to supply this argument.
sortBy
Field name to sort by (e.g., "updatedAt", "title", "clicks")
Clear enough to supply this argument.
sortOrder
Sort order: "asc" for ascending, "desc" for descending. Default: "desc"
Remove validation rules already expressed in this field’s schema; describe its meaning and usage instead.
projectId
Atomic project ID from list_projects. Omit to use the configured project; if asked to choose, select one of the accessible returned IDs.
Clear enough to supply this argument.
context
Short purpose of this call for the activity log. Exclude personal data and private source content.
Clear enough to supply this argument.
llm_model
Use the exact model ID executing this call, from runtime/system context, for usage attribution. Supply it on every Atomic MCP tool call, including discovery and feedback, and update it if the model changes. Use the model ID rather than the client app name. If unavailable, omit it; never guess or ask the user.
Remove validation rules already expressed in this field’s schema; describe its meaning and usage instead.
Declare the result fields and their types in the output schema.
View output schema
{
"type": "object",
"required": [
"success"
],
"properties": {
"url": {
"type": "string",
"description": "Link for resolving the failure or completing the operation."
},
"data": {
"type": "object",
"required": [
"data",
"total",
"page",
"limit",
"totalPages",
"nextPage"
],
"properties": {
"data": {
"type": "array",
"items": {
"type": "object",
"required": [
"auditId",
"issueId",
"pages",
"issueType",
"severity",
"description",
"affectedPages",
"howToFix"
],
"properties": {
"pages": {
"type": "array",
"items": {
"type": "object",
"description": "Nested operation-specific fields."
}
},
"auditId": {
"type": "number"
},
"issueId": {
"type": "number"
},
"howToFix": {
"type": "string"
},
"severity": {
"type": "string"
},
"issueType": {
"type": "string"
},
"description": {
"type": "string",
"description": "Saved description of this resource or its purpose."
},
"affectedPages": {
"type": "number"
}
}
},
"description": "Result items or operation data inside this returned payload. Pagination fields describe only this result page."
},
"page": {
"type": "number",
"description": "Page number represented by these items."
},
"limit": {
"type": "number",
"description": "Maximum number of items requested for this page."
},
"total": {
"type": "number",
"description": "Total number of matching items across all result pages."
},
"nextPage": {
"anyOf": [
{
"type": "null"
},
{
"type": "number"
}
],
"description": "Next page to request when more results exist; use the returned value rather than constructing a cursor."
},
"totalPages": {
"type": "number",
"description": "Total number of result pages for the current filter and page size."
}
},
"description": "Operation data; optional fields may be absent."
},
"error": {
"type": "string",
"description": "Why the operation failed."
},
"details": {
"type": "object",
"description": "Diagnostics keyed by errorCode."
},
"message": {
"type": "string",
"description": "Outcome or recovery instructions. Project selection means no action ran."
},
"success": {
"type": "boolean",
"description": "Operation success; on false inspect error/errorCode."
},
"upgrade": {
"type": "object",
"description": "Plan-upgrade guidance for an unavailable capability."
},
"category": {
"type": "string",
"description": "Failure category, such as invalid_input or plan_required."
},
"expected": {
"type": "boolean",
"description": "Whether this is an anticipated access, input, plan or state failure."
},
"projects": {
"type": "array",
"items": {
"type": "object",
"properties": {
"id": {
"type": "number",
"description": "Project ID for projectId."
},
"name": {
"type": "string",
"description": "Project name."
}
},
"description": "Accessible project."
},
"description": "Accessible project choices. Select a projectId and retry."
},
"errorCode": {
"type": "string",
"description": "Failure code for recovery."
},
"retryable": {
"type": "boolean",
"description": "Whether an unchanged request can be retried."
},
"statusCode": {
"type": "number",
"description": "HTTP-style failure status."
},
"executionTime": {
"type": "string",
"description": "Elapsed time in seconds, with an s suffix."
}
},
"description": "Operation result envelope."
}
Original tool metadata
{
"name": "get_seo_audit_issues",
"title": "Get SEO audit issues",
"description": "Get SEO audit issues for a project. Useful for technical SEO analysis and identifying site health problems.\n\nReads findings from auditId, or the latest saved audit when omitted. It does not launch a scan; use recheck_seo_audit_page only to verify one persisted finding after a fix.",
"inputSchema": {
"type": "object",
"required": [],
"properties": {
"page": {
"type": "number",
"minimum": 1,
"description": "Page number (1-based). Default: 1. Use with limit for pagination."
},
"limit": {
"type": "number",
"default": 10,
"maximum": 100,
"minimum": 1,
"description": "Number of items per page. Default: 10, Max: 100. Use with page for pagination."
},
"search": {
"type": "string",
"description": "Search query to filter results (searches in relevant text fields)"
},
"sortBy": {
"type": "string",
"description": "Field name to sort by (e.g., \"updatedAt\", \"title\", \"clicks\")"
},
"auditId": {
"type": "number",
"description": "Optional specific audit ID (defaults to latest audit)"
},
"context": {
"type": "string",
"maxLength": 120,
"description": "Short purpose of this call for the activity log. Exclude personal data and private source content."
},
"llm_model": {
"type": "string",
"maxLength": 128,
"description": "Use the exact model ID executing this call, from runtime/system context, for usage attribution. Supply it on every Atomic MCP tool call, including discovery and feedback, and update it if the model changes. Use the model ID rather than the client app name. If unavailable, omit it; never guess or ask the user."
},
"projectId": {
"type": "number",
"description": "Atomic project ID from list_projects. Omit to use the configured project; if asked to choose, select one of the accessible returned IDs."
},
"sortOrder": {
"enum": [
"asc",
"desc"
],
"type": "string",
"default": "desc",
"description": "Sort order: \"asc\" for ascending, \"desc\" for descending. Default: \"desc\""
}
}
},
"outputSchema": {
"type": "object",
"required": [
"success"
],
"properties": {
"url": {
"type": "string",
"description": "Link for resolving the failure or completing the operation."
},
"data": {
"type": "object",
"required": [
"data",
"total",
"page",
"limit",
"totalPages",
"nextPage"
],
"properties": {
"data": {
"type": "array",
"items": {
"type": "object",
"required": [
"auditId",
"issueId",
"pages",
"issueType",
"severity",
"description",
"affectedPages",
"howToFix"
],
"properties": {
"pages": {
"type": "array",
"items": {
"type": "object",
"description": "Nested operation-specific fields."
}
},
"auditId": {
"type": "number"
},
"issueId": {
"type": "number"
},
"howToFix": {
"type": "string"
},
"severity": {
"type": "string"
},
"issueType": {
"type": "string"
},
"description": {
"type": "string",
"description": "Saved description of this resource or its purpose."
},
"affectedPages": {
"type": "number"
}
}
},
"description": "Result items or operation data inside this returned payload. Pagination fields describe only this result page."
},
"page": {
"type": "number",
"description": "Page number represented by these items."
},
"limit": {
"type": "number",
"description": "Maximum number of items requested for this page."
},
"total": {
"type": "number",
"description": "Total number of matching items across all result pages."
},
"nextPage": {
"anyOf": [
{
"type": "null"
},
{
"type": "number"
}
],
"description": "Next page to request when more results exist; use the returned value rather than constructing a cursor."
},
"totalPages": {
"type": "number",
"description": "Total number of result pages for the current filter and page size."
}
},
"description": "Operation data; optional fields may be absent."
},
"error": {
"type": "string",
"description": "Why the operation failed."
},
"details": {
"type": "object",
"description": "Diagnostics keyed by errorCode."
},
"message": {
"type": "string",
"description": "Outcome or recovery instructions. Project selection means no action ran."
},
"success": {
"type": "boolean",
"description": "Operation success; on false inspect error/errorCode."
},
"upgrade": {
"type": "object",
"description": "Plan-upgrade guidance for an unavailable capability."
},
"category": {
"type": "string",
"description": "Failure category, such as invalid_input or plan_required."
},
"expected": {
"type": "boolean",
"description": "Whether this is an anticipated access, input, plan or state failure."
},
"projects": {
"type": "array",
"items": {
"type": "object",
"properties": {
"id": {
"type": "number",
"description": "Project ID for projectId."
},
"name": {
"type": "string",
"description": "Project name."
}
},
"description": "Accessible project."
},
"description": "Accessible project choices. Select a projectId and retry."
},
"errorCode": {
"type": "string",
"description": "Failure code for recovery."
},
"retryable": {
"type": "boolean",
"description": "Whether an unchanged request can be retried."
},
"statusCode": {
"type": "number",
"description": "HTTP-style failure status."
},
"executionTime": {
"type": "string",
"description": "Elapsed time in seconds, with an s suffix."
}
},
"description": "Operation result envelope."
},
"annotations": {
"readOnlyHint": true,
"openWorldHint": false,
"idempotentHint": true,
"destructiveHint": false
}
}
The title clearly communicates the tool’s action and subject. Keep it concise.
Description89/100
Get a content SERP analysis. If competitor research has completed, this builds and persists the normalized analysis summary.
Unlike a passive status lookup, this may build and save the normalized analysis summary after research completes. Use wait_for_serp_analysis while processing; it does not modify the analyzed page.
Describe the returned information so the agent knows whether it will answer the request.
Inputs94/100
Remove validation rules already expressed in this field’s schema; describe its meaning and usage instead.
analysisId
Analysis ID returned by a start page or content SERP analysis tool.
Clear enough to supply this argument.
projectId
Atomic project ID from list_projects. Omit to use the configured project; if asked to choose, select one of the accessible returned IDs.
Clear enough to supply this argument.
context
Short purpose of this call for the activity log. Exclude personal data and private source content.
Remove validation rules already expressed in this field’s schema; describe its meaning and usage instead.
llm_model
Use the exact model ID executing this call, from runtime/system context, for usage attribution. Supply it on every Atomic MCP tool call, including discovery and feedback, and update it if the model changes. Use the model ID rather than the client app name. If unavailable, omit it; never guess or ask the user.
{
"type": "object",
"required": [
"success"
],
"properties": {
"url": {
"type": "string",
"description": "Link for resolving the failure or completing the operation."
},
"data": {
"type": "object",
"required": [
"data"
],
"properties": {
"data": {
"type": "object",
"required": [
"projectId",
"keyword",
"serpLocationId",
"depth",
"status",
"createdAt",
"updatedAt"
],
"properties": {
"slug": {
"type": "string",
"description": "Saved URL slug or native CMS slug of this item."
},
"depth": {
"enum": [
"lite",
"standard",
"deep"
],
"type": "string"
},
"title": {
"type": "string",
"description": "Display or content title of this returned item."
},
"status": {
"enum": [
"queued",
"running",
"completed",
"failed"
],
"type": "string",
"description": "Current saved or execution state reported by the operation."
},
"keyword": {
"type": "string"
},
"summary": {
"type": "object",
"required": [
"generatedAt",
"target",
"competitors",
"nlpTerms",
"entityGaps",
"structureGaps",
"internalLinkOpportunities",
"recommendations",
"sourceSignals"
],
"properties": {
"target": {
"type": "object",
"description": "Nested operation-specific fields."
},
"nlpTerms": {
"type": "array",
"items": {
"type": "object",
"description": "Nested operation-specific fields."
}
},
"entityGaps": {
"type": "array",
"items": {
"type": "object",
"description": "Nested operation-specific fields."
}
},
"competitors": {
"type": "array",
"items": {
"type": "object",
"description": "Nested operation-specific fields."
},
"description": "Competitors or competitor observations returned for this project or analysis."
},
"generatedAt": {
"type": "string"
},
"sourceSignals": {
"type": "object",
"description": "Nested operation-specific fields."
},
"structureGaps": {
"type": "array",
"items": {
"type": "object",
"description": "Nested operation-specific fields."
}
},
"recommendations": {
"type": "array",
"items": {
"type": "object",
"description": "Nested operation-specific fields."
}
},
"internalLinkOpportunities": {
"type": "array",
"items": {
"type": "object",
"description": "Nested operation-specific fields."
}
},
"contentStructureCompetitors": {
"type": "object",
"description": "Nested operation-specific fields."
}
}
},
"createdAt": {
"type": "string",
"format": "date-time",
"description": "Date and time this record was created, serialized as ISO 8601."
},
"projectId": {
"type": "number",
"description": "Atomic project that owns this resource."
},
"targetUrl": {
"type": "string"
},
"updatedAt": {
"type": "string",
"format": "date-time",
"description": "Date and time this record was last updated, serialized as ISO 8601."
},
"analysisId": {
"type": "number",
"description": "Saved content SERP analysis identifier for subsequent analysis or optimization tools."
},
"errorMessage": {
"type": "string",
"description": "Explanation of why this run or item could not be processed."
},
"rankTrackerId": {
"type": "number"
},
"serpLocationId": {
"type": "number",
"description": "Identifier of the selected search location."
},
"metaDescription": {
"type": "string",
"description": "Saved page meta description used in search snippets."
}
},
"description": "Result items or operation data inside this returned payload. Pagination fields describe only this result page."
}
},
"description": "Operation data; optional fields may be absent."
},
"error": {
"type": "string",
"description": "Why the operation failed."
},
"details": {
"type": "object",
"description": "Diagnostics keyed by errorCode."
},
"message": {
"type": "string",
"description": "Outcome or recovery instructions. Project selection means no action ran."
},
"success": {
"type": "boolean",
"description": "Operation success; on false inspect error/errorCode."
},
"upgrade": {
"type": "object",
"description": "Plan-upgrade guidance for an unavailable capability."
},
"category": {
"type": "string",
"description": "Failure category, such as invalid_input or plan_required."
},
"expected": {
"type": "boolean",
"description": "Whether this is an anticipated access, input, plan or state failure."
},
"projects": {
"type": "array",
"items": {
"type": "object",
"properties": {
"id": {
"type": "number",
"description": "Project ID for projectId."
},
"name": {
"type": "string",
"description": "Project name."
}
},
"description": "Accessible project."
},
"description": "Accessible project choices. Select a projectId and retry."
},
"errorCode": {
"type": "string",
"description": "Failure code for recovery."
},
"retryable": {
"type": "boolean",
"description": "Whether an unchanged request can be retried."
},
"statusCode": {
"type": "number",
"description": "HTTP-style failure status."
},
"executionTime": {
"type": "string",
"description": "Elapsed time in seconds, with an s suffix."
}
},
"description": "Operation result envelope."
}
Original tool metadata
{
"name": "get_serp_analysis",
"title": "Get SERP analysis",
"description": "Get a content SERP analysis. If competitor research has completed, this builds and persists the normalized analysis summary.\n\nUnlike a passive status lookup, this may build and save the normalized analysis summary after research completes. Use wait_for_serp_analysis while processing; it does not modify the analyzed page.",
"inputSchema": {
"type": "object",
"required": [
"analysisId"
],
"properties": {
"context": {
"type": "string",
"maxLength": 120,
"description": "Short purpose of this call for the activity log. Exclude personal data and private source content."
},
"llm_model": {
"type": "string",
"maxLength": 128,
"description": "Use the exact model ID executing this call, from runtime/system context, for usage attribution. Supply it on every Atomic MCP tool call, including discovery and feedback, and update it if the model changes. Use the model ID rather than the client app name. If unavailable, omit it; never guess or ask the user."
},
"projectId": {
"type": "number",
"description": "Atomic project ID from list_projects. Omit to use the configured project; if asked to choose, select one of the accessible returned IDs."
},
"analysisId": {
"type": "number",
"description": "Analysis ID returned by a start page or content SERP analysis tool."
}
}
},
"outputSchema": {
"type": "object",
"required": [
"success"
],
"properties": {
"url": {
"type": "string",
"description": "Link for resolving the failure or completing the operation."
},
"data": {
"type": "object",
"required": [
"data"
],
"properties": {
"data": {
"type": "object",
"required": [
"projectId",
"keyword",
"serpLocationId",
"depth",
"status",
"createdAt",
"updatedAt"
],
"properties": {
"slug": {
"type": "string",
"description": "Saved URL slug or native CMS slug of this item."
},
"depth": {
"enum": [
"lite",
"standard",
"deep"
],
"type": "string"
},
"title": {
"type": "string",
"description": "Display or content title of this returned item."
},
"status": {
"enum": [
"queued",
"running",
"completed",
"failed"
],
"type": "string",
"description": "Current saved or execution state reported by the operation."
},
"keyword": {
"type": "string"
},
"summary": {
"type": "object",
"required": [
"generatedAt",
"target",
"competitors",
"nlpTerms",
"entityGaps",
"structureGaps",
"internalLinkOpportunities",
"recommendations",
"sourceSignals"
],
"properties": {
"target": {
"type": "object",
"description": "Nested operation-specific fields."
},
"nlpTerms": {
"type": "array",
"items": {
"type": "object",
"description": "Nested operation-specific fields."
}
},
"entityGaps": {
"type": "array",
"items": {
"type": "object",
"description": "Nested operation-specific fields."
}
},
"competitors": {
"type": "array",
"items": {
"type": "object",
"description": "Nested operation-specific fields."
},
"description": "Competitors or competitor observations returned for this project or analysis."
},
"generatedAt": {
"type": "string"
},
"sourceSignals": {
"type": "object",
"description": "Nested operation-specific fields."
},
"structureGaps": {
"type": "array",
"items": {
"type": "object",
"description": "Nested operation-specific fields."
}
},
"recommendations": {
"type": "array",
"items": {
"type": "object",
"description": "Nested operation-specific fields."
}
},
"internalLinkOpportunities": {
"type": "array",
"items": {
"type": "object",
"description": "Nested operation-specific fields."
}
},
"contentStructureCompetitors": {
"type": "object",
"description": "Nested operation-specific fields."
}
}
},
"createdAt": {
"type": "string",
"format": "date-time",
"description": "Date and time this record was created, serialized as ISO 8601."
},
"projectId": {
"type": "number",
"description": "Atomic project that owns this resource."
},
"targetUrl": {
"type": "string"
},
"updatedAt": {
"type": "string",
"format": "date-time",
"description": "Date and time this record was last updated, serialized as ISO 8601."
},
"analysisId": {
"type": "number",
"description": "Saved content SERP analysis identifier for subsequent analysis or optimization tools."
},
"errorMessage": {
"type": "string",
"description": "Explanation of why this run or item could not be processed."
},
"rankTrackerId": {
"type": "number"
},
"serpLocationId": {
"type": "number",
"description": "Identifier of the selected search location."
},
"metaDescription": {
"type": "string",
"description": "Saved page meta description used in search snippets."
}
},
"description": "Result items or operation data inside this returned payload. Pagination fields describe only this result page."
}
},
"description": "Operation data; optional fields may be absent."
},
"error": {
"type": "string",
"description": "Why the operation failed."
},
"details": {
"type": "object",
"description": "Diagnostics keyed by errorCode."
},
"message": {
"type": "string",
"description": "Outcome or recovery instructions. Project selection means no action ran."
},
"success": {
"type": "boolean",
"description": "Operation success; on false inspect error/errorCode."
},
"upgrade": {
"type": "object",
"description": "Plan-upgrade guidance for an unavailable capability."
},
"category": {
"type": "string",
"description": "Failure category, such as invalid_input or plan_required."
},
"expected": {
"type": "boolean",
"description": "Whether this is an anticipated access, input, plan or state failure."
},
"projects": {
"type": "array",
"items": {
"type": "object",
"properties": {
"id": {
"type": "number",
"description": "Project ID for projectId."
},
"name": {
"type": "string",
"description": "Project name."
}
},
"description": "Accessible project."
},
"description": "Accessible project choices. Select a projectId and retry."
},
"errorCode": {
"type": "string",
"description": "Failure code for recovery."
},
"retryable": {
"type": "boolean",
"description": "Whether an unchanged request can be retried."
},
"statusCode": {
"type": "number",
"description": "HTTP-style failure status."
},
"executionTime": {
"type": "string",
"description": "Elapsed time in seconds, with an s suffix."
}
},
"description": "Operation result envelope."
},
"annotations": {
"readOnlyHint": false,
"openWorldHint": true,
"idempotentHint": false,
"destructiveHint": true
}
}
The title clearly communicates the tool’s action and subject. Keep it concise.
Description98/100
Get supported Atomic SERP location IDs, country codes and language codes. Optional search filters name, country code or language code. Use IDs for project creation, update_project or brand-kit search targeting.
Use before SERP operations when a location ID or supported language is unknown. Returns supported location records, not live search results or a change to project targeting.
The description explains the capability, when to use it, and what to expect.
Inputs75/100
Explain the meaning of this value, not just its name.
search
Text used to filter matching items by the provider's search behavior.
Explain the meaning of this value, not just its name.
context
Short purpose of this call for the activity log. Exclude personal data and private source content.
Remove validation rules already expressed in this field’s schema; describe its meaning and usage instead.
llm_model
Use the exact model ID executing this call, from runtime/system context, for usage attribution. Supply it on every Atomic MCP tool call, including discovery and feedback, and update it if the model changes. Use the model ID rather than the client app name. If unavailable, omit it; never guess or ask the user.
The title clearly communicates the tool’s action and subject. Keep it concise.
Description93/100
Get a single project task by identifier. Prefer the project-scoped public task ID when you have it, for example OMN-15. Numeric internal task IDs are also accepted.
Reads details of one task by public task identifier or internal ID. Use get_tasks for the project list and get_my_tasks only for the current agent queue; no task state is changed.
The description explains the capability, when to use it, and what to expect.
Inputs88/100
Remove validation rules already expressed in this field’s schema; describe its meaning and usage instead.
taskIdentifier
Project-scoped public task identifier such as OMN-15, or a numeric internal task ID
Clear enough to supply this argument.
projectId
Atomic project ID from list_projects. Omit to use the configured project; if asked to choose, select one of the accessible returned IDs.
Clear enough to supply this argument.
context
Short purpose of this call for the activity log. Exclude personal data and private source content.
Remove validation rules already expressed in this field’s schema; describe its meaning and usage instead.
llm_model
Use the exact model ID executing this call, from runtime/system context, for usage attribution. Supply it on every Atomic MCP tool call, including discovery and feedback, and update it if the model changes. Use the model ID rather than the client app name. If unavailable, omit it; never guess or ask the user.
Remove validation rules already expressed in this field’s schema; describe its meaning and usage instead.
{
"type": "object",
"required": [
"success"
],
"properties": {
"url": {
"type": "string",
"description": "Link for resolving the failure or completing the operation."
},
"data": {
"anyOf": [
{
"type": "object",
"required": [
"projectId",
"title",
"status",
"assignmentMode",
"createdAt",
"updatedAt"
],
"properties": {
"id": {
"type": "number",
"description": "Identifier of this returned resource. Use it for subsequent reads or edits of the same resource."
},
"agent": {
"anyOf": [
{
"type": "null"
},
{
"type": "object",
"required": [
"name",
"type"
],
"properties": {
"id": {
"type": "number",
"description": "Identifier of this returned resource. Use it for subsequent reads or edits of the same resource."
},
"icon": {
"type": "object",
"required": [
"name",
"color"
],
"properties": {
"name": {
"type": "string",
"description": "Human-readable name of this resource."
},
"color": {
"enum": [
"gray",
"blue",
"teal",
"green",
"orange",
"red",
"magenta",
"purple"
],
"type": "string",
"description": "Color value saved for this visual element."
}
},
"description": "Icon identifier or image reference saved for this resource."
},
"name": {
"type": "string",
"description": "Human-readable name of this resource."
},
"type": {
"enum": [
"custom",
"predefined"
],
"type": "string",
"description": "Kind of the returned item; determines how its operation-specific fields should be interpreted."
},
"roleTitle": {
"anyOf": [
{
"type": "null"
},
{
"type": "string"
}
],
"description": "Human-readable title of the returned member role."
},
"organizationRole": {
"anyOf": [
{
"type": "null"
},
{
"type": "string",
"const": "solo"
},
{
"type": "string",
"const": "orchestrator"
},
{
"type": "string",
"const": "employee"
}
],
"description": "Workspace-level role associated with this membership."
}
}
}
],
"description": "Saved agent definition or context associated with this result."
},
"title": {
"type": "string",
"description": "Display or content title of this returned item."
},
"status": {
"enum": [
"OPEN",
"IN_PROGRESS",
"DONE",
"BLOCKED",
"CANCELED"
],
"type": "string",
"description": "Current saved or execution state reported by the operation."
},
"agentId": {
"anyOf": [
{
"type": "null"
},
{
"type": "number"
}
],
"description": "Saved Atomic agent associated with this resource or execution."
},
"dueDate": {
"anyOf": [
{
"type": "null"
},
{
"type": "string"
}
]
},
"activity": {
"anyOf": [
{
"type": "null"
},
{
"type": "array",
"items": {
"type": "object",
"required": [
"id",
"type",
"actor",
"message",
"createdAt"
],
"properties": {
"id": {
"type": "string",
"description": "Identifier of this returned resource. Use it for subsequent reads or edits of the same resource."
},
"type": {
"enum": [
"CREATED",
"CONVERSATION_LINKED",
"TITLE_UPDATED",
"DESCRIPTION_UPDATED",
"DUE_DATE_UPDATED",
"STATUS_UPDATED",
"ASSIGNEE_UPDATED",
"CHECKLIST_UPDATED"
],
"type": "string",
"description": "Kind of the returned item; determines how its operation-specific fields should be interpreted."
},
"actor": {
"type": "object",
"description": "Nested operation-specific fields."
},
"message": {
"type": "string",
"description": "Outcome, explanation or recovery instructions returned by the operation."
},
"createdAt": {
"type": "string",
"format": "date-time",
"description": "Date and time this record was created, serialized as ISO 8601."
},
"conversationId": {
"anyOf": [
{
"type": "null"
},
{
"type": "string"
}
],
"description": "Conversation associated with this task or execution."
}
}
}
}
]
},
"publicId": {
"type": "string"
},
"checklist": {
"anyOf": [
{
"type": "null"
},
{
"type": "array",
"items": {
"type": "object",
"required": [
"id",
"label",
"completed"
],
"properties": {
"id": {
"type": "string",
"description": "Identifier of this returned resource. Use it for subsequent reads or edits of the same resource."
},
"label": {
"type": "string",
"description": "Human-readable label reported by the provider."
},
"completed": {
"type": "boolean"
}
}
}
}
]
},
"createdAt": {
"type": "string",
"format": "date-time",
"description": "Date and time this record was created, serialized as ISO 8601."
},
"projectId": {
"type": "number",
"description": "Atomic project that owns this resource."
},
"updatedAt": {
"type": "string",
"format": "date-time",
"description": "Date and time this record was last updated, serialized as ISO 8601."
},
"description": {
"anyOf": [
{
"type": "null"
},
{
"type": "string"
}
],
"description": "Saved description of this resource or its purpose."
},
"assignmentMode": {
"enum": [
"MANUAL",
"AGENT"
],
"type": "string"
},
"sourceConversationId": {
"anyOf": [
{
"type": "null"
},
{
"type": "string"
}
],
"description": "Conversation that produced this saved result."
},
"sourceConversationIds": {
"anyOf": [
{
"type": "null"
},
{
"type": "array",
"items": {
"type": "string"
}
}
]
},
"isGeneralAgentAssignment": {
"type": "boolean"
}
}
},
{
"type": "null"
}
],
"description": "Operation data; optional fields may be absent."
},
"error": {
"type": "string",
"description": "Why the operation failed."
},
"details": {
"type": "object",
"description": "Diagnostics keyed by errorCode."
},
"message": {
"type": "string",
"description": "Outcome or recovery instructions. Project selection means no action ran."
},
"success": {
"type": "boolean",
"description": "Operation success; on false inspect error/errorCode."
},
"upgrade": {
"type": "object",
"description": "Plan-upgrade guidance for an unavailable capability."
},
"category": {
"type": "string",
"description": "Failure category, such as invalid_input or plan_required."
},
"expected": {
"type": "boolean",
"description": "Whether this is an anticipated access, input, plan or state failure."
},
"projects": {
"type": "array",
"items": {
"type": "object",
"properties": {
"id": {
"type": "number",
"description": "Project ID for projectId."
},
"name": {
"type": "string",
"description": "Project name."
}
},
"description": "Accessible project."
},
"description": "Accessible project choices. Select a projectId and retry."
},
"errorCode": {
"type": "string",
"description": "Failure code for recovery."
},
"retryable": {
"type": "boolean",
"description": "Whether an unchanged request can be retried."
},
"statusCode": {
"type": "number",
"description": "HTTP-style failure status."
},
"executionTime": {
"type": "string",
"description": "Elapsed time in seconds, with an s suffix."
}
},
"description": "Operation result envelope."
}
Original tool metadata
{
"name": "get_task",
"title": "Get task",
"description": "Get a single project task by identifier. Prefer the project-scoped public task ID when you have it, for example OMN-15. Numeric internal task IDs are also accepted.\n\nReads details of one task by public task identifier or internal ID. Use get_tasks for the project list and get_my_tasks only for the current agent queue; no task state is changed.",
"inputSchema": {
"type": "object",
"required": [
"taskIdentifier"
],
"properties": {
"context": {
"type": "string",
"maxLength": 120,
"description": "Short purpose of this call for the activity log. Exclude personal data and private source content."
},
"llm_model": {
"type": "string",
"maxLength": 128,
"description": "Use the exact model ID executing this call, from runtime/system context, for usage attribution. Supply it on every Atomic MCP tool call, including discovery and feedback, and update it if the model changes. Use the model ID rather than the client app name. If unavailable, omit it; never guess or ask the user."
},
"projectId": {
"type": "number",
"description": "Atomic project ID from list_projects. Omit to use the configured project; if asked to choose, select one of the accessible returned IDs."
},
"taskIdentifier": {
"oneOf": [
{
"type": "string"
},
{
"type": "number"
}
],
"description": "Project-scoped public task identifier such as OMN-15, or a numeric internal task ID"
}
}
},
"outputSchema": {
"type": "object",
"required": [
"success"
],
"properties": {
"url": {
"type": "string",
"description": "Link for resolving the failure or completing the operation."
},
"data": {
"anyOf": [
{
"type": "object",
"required": [
"projectId",
"title",
"status",
"assignmentMode",
"createdAt",
"updatedAt"
],
"properties": {
"id": {
"type": "number",
"description": "Identifier of this returned resource. Use it for subsequent reads or edits of the same resource."
},
"agent": {
"anyOf": [
{
"type": "null"
},
{
"type": "object",
"required": [
"name",
"type"
],
"properties": {
"id": {
"type": "number",
"description": "Identifier of this returned resource. Use it for subsequent reads or edits of the same resource."
},
"icon": {
"type": "object",
"required": [
"name",
"color"
],
"properties": {
"name": {
"type": "string",
"description": "Human-readable name of this resource."
},
"color": {
"enum": [
"gray",
"blue",
"teal",
"green",
"orange",
"red",
"magenta",
"purple"
],
"type": "string",
"description": "Color value saved for this visual element."
}
},
"description": "Icon identifier or image reference saved for this resource."
},
"name": {
"type": "string",
"description": "Human-readable name of this resource."
},
"type": {
"enum": [
"custom",
"predefined"
],
"type": "string",
"description": "Kind of the returned item; determines how its operation-specific fields should be interpreted."
},
"roleTitle": {
"anyOf": [
{
"type": "null"
},
{
"type": "string"
}
],
"description": "Human-readable title of the returned member role."
},
"organizationRole": {
"anyOf": [
{
"type": "null"
},
{
"type": "string",
"const": "solo"
},
{
"type": "string",
"const": "orchestrator"
},
{
"type": "string",
"const": "employee"
}
],
"description": "Workspace-level role associated with this membership."
}
}
}
],
"description": "Saved agent definition or context associated with this result."
},
"title": {
"type": "string",
"description": "Display or content title of this returned item."
},
"status": {
"enum": [
"OPEN",
"IN_PROGRESS",
"DONE",
"BLOCKED",
"CANCELED"
],
"type": "string",
"description": "Current saved or execution state reported by the operation."
},
"agentId": {
"anyOf": [
{
"type": "null"
},
{
"type": "number"
}
],
"description": "Saved Atomic agent associated with this resource or execution."
},
"dueDate": {
"anyOf": [
{
"type": "null"
},
{
"type": "string"
}
]
},
"activity": {
"anyOf": [
{
"type": "null"
},
{
"type": "array",
"items": {
"type": "object",
"required": [
"id",
"type",
"actor",
"message",
"createdAt"
],
"properties": {
"id": {
"type": "string",
"description": "Identifier of this returned resource. Use it for subsequent reads or edits of the same resource."
},
"type": {
"enum": [
"CREATED",
"CONVERSATION_LINKED",
"TITLE_UPDATED",
"DESCRIPTION_UPDATED",
"DUE_DATE_UPDATED",
"STATUS_UPDATED",
"ASSIGNEE_UPDATED",
"CHECKLIST_UPDATED"
],
"type": "string",
"description": "Kind of the returned item; determines how its operation-specific fields should be interpreted."
},
"actor": {
"type": "object",
"description": "Nested operation-specific fields."
},
"message": {
"type": "string",
"description": "Outcome, explanation or recovery instructions returned by the operation."
},
"createdAt": {
"type": "string",
"format": "date-time",
"description": "Date and time this record was created, serialized as ISO 8601."
},
"conversationId": {
"anyOf": [
{
"type": "null"
},
{
"type": "string"
}
],
"description": "Conversation associated with this task or execution."
}
}
}
}
]
},
"publicId": {
"type": "string"
},
"checklist": {
"anyOf": [
{
"type": "null"
},
{
"type": "array",
"items": {
"type": "object",
"required": [
"id",
"label",
"completed"
],
"properties": {
"id": {
"type": "string",
"description": "Identifier of this returned resource. Use it for subsequent reads or edits of the same resource."
},
"label": {
"type": "string",
"description": "Human-readable label reported by the provider."
},
"completed": {
"type": "boolean"
}
}
}
}
]
},
"createdAt": {
"type": "string",
"format": "date-time",
"description": "Date and time this record was created, serialized as ISO 8601."
},
"projectId": {
"type": "number",
"description": "Atomic project that owns this resource."
},
"updatedAt": {
"type": "string",
"format": "date-time",
"description": "Date and time this record was last updated, serialized as ISO 8601."
},
"description": {
"anyOf": [
{
"type": "null"
},
{
"type": "string"
}
],
"description": "Saved description of this resource or its purpose."
},
"assignmentMode": {
"enum": [
"MANUAL",
"AGENT"
],
"type": "string"
},
"sourceConversationId": {
"anyOf": [
{
"type": "null"
},
{
"type": "string"
}
],
"description": "Conversation that produced this saved result."
},
"sourceConversationIds": {
"anyOf": [
{
"type": "null"
},
{
"type": "array",
"items": {
"type": "string"
}
}
]
},
"isGeneralAgentAssignment": {
"type": "boolean"
}
}
},
{
"type": "null"
}
],
"description": "Operation data; optional fields may be absent."
},
"error": {
"type": "string",
"description": "Why the operation failed."
},
"details": {
"type": "object",
"description": "Diagnostics keyed by errorCode."
},
"message": {
"type": "string",
"description": "Outcome or recovery instructions. Project selection means no action ran."
},
"success": {
"type": "boolean",
"description": "Operation success; on false inspect error/errorCode."
},
"upgrade": {
"type": "object",
"description": "Plan-upgrade guidance for an unavailable capability."
},
"category": {
"type": "string",
"description": "Failure category, such as invalid_input or plan_required."
},
"expected": {
"type": "boolean",
"description": "Whether this is an anticipated access, input, plan or state failure."
},
"projects": {
"type": "array",
"items": {
"type": "object",
"properties": {
"id": {
"type": "number",
"description": "Project ID for projectId."
},
"name": {
"type": "string",
"description": "Project name."
}
},
"description": "Accessible project."
},
"description": "Accessible project choices. Select a projectId and retry."
},
"errorCode": {
"type": "string",
"description": "Failure code for recovery."
},
"retryable": {
"type": "boolean",
"description": "Whether an unchanged request can be retried."
},
"statusCode": {
"type": "number",
"description": "HTTP-style failure status."
},
"executionTime": {
"type": "string",
"description": "Elapsed time in seconds, with an s suffix."
}
},
"description": "Operation result envelope."
},
"annotations": {
"readOnlyHint": true,
"openWorldHint": false,
"idempotentHint": true,
"destructiveHint": false
}
}
The title clearly communicates the tool’s action and subject. Keep it concise.
Description92/100
List project task summaries when you need to discover tasks across the project. Prefer get_task when you already know the task identifier, and prefer get_my_tasks for your own queue. Results are paginated and intentionally omit heavy nested conversation and agent prompt data.
Reads the project task list. get_task fetches one task's detail and get_my_tasks is agent-context scoped; use update_task to change assignment or status.
The description explains the capability, when to use it, and what to expect.
Inputs75/100
Explain the meaning of this value, not just its name.
agentId
Optional assigned agent ID
Explain the meaning of this value, not just its name.
status
Optional status filter
Remove validation rules already expressed in this field’s schema; describe its meaning and usage instead.
assignmentMode
Optional assignment mode filter
Remove validation rules already expressed in this field’s schema; describe its meaning and usage instead.
sourceConversationId
Optional source conversation filter
Explain the meaning of this value, not just its name.
page
Optional 1-based page number. Defaults to 1.
Clear enough to supply this argument.
limit
Optional page size. Defaults to 10 and is capped at 25.
Remove validation rules already expressed in this field’s schema; describe its meaning and usage instead.
projectId
Atomic project ID from list_projects. Omit to use the configured project; if asked to choose, select one of the accessible returned IDs.
Clear enough to supply this argument.
context
Short purpose of this call for the activity log. Exclude personal data and private source content.
Remove validation rules already expressed in this field’s schema; describe its meaning and usage instead.
llm_model
Use the exact model ID executing this call, from runtime/system context, for usage attribution. Supply it on every Atomic MCP tool call, including discovery and feedback, and update it if the model changes. Use the model ID rather than the client app name. If unavailable, omit it; never guess or ask the user.
Remove validation rules already expressed in this field’s schema; describe its meaning and usage instead.
{
"type": "object",
"required": [
"success"
],
"properties": {
"url": {
"type": "string",
"description": "Link for resolving the failure or completing the operation."
},
"data": {
"type": "object",
"required": [
"data",
"page",
"limit",
"hasMore",
"nextPage"
],
"properties": {
"data": {
"type": "array",
"items": {
"type": "object",
"required": [
"projectId",
"title",
"status",
"assignmentMode",
"createdAt",
"updatedAt"
],
"properties": {
"id": {
"type": "number",
"description": "Identifier of this returned resource. Use it for subsequent reads or edits of the same resource."
},
"agent": {
"anyOf": [
{
"type": "null"
},
{
"type": "object",
"description": "Nested operation-specific fields."
}
],
"description": "Saved agent definition or context associated with this result."
},
"title": {
"type": "string",
"description": "Display or content title of this returned item."
},
"status": {
"enum": [
"OPEN",
"IN_PROGRESS",
"DONE",
"BLOCKED",
"CANCELED"
],
"type": "string",
"description": "Current saved or execution state reported by the operation."
},
"agentId": {
"anyOf": [
{
"type": "null"
},
{
"type": "number"
}
],
"description": "Saved Atomic agent associated with this resource or execution."
},
"dueDate": {
"anyOf": [
{
"type": "null"
},
{
"type": "string"
}
]
},
"publicId": {
"type": "string"
},
"checklist": {
"anyOf": [
{
"type": "null"
},
{
"type": "array",
"items": {
"type": "object",
"description": "Nested operation-specific fields."
}
}
]
},
"createdAt": {
"type": "string",
"format": "date-time",
"description": "Date and time this record was created, serialized as ISO 8601."
},
"projectId": {
"type": "number",
"description": "Atomic project that owns this resource."
},
"updatedAt": {
"type": "string",
"format": "date-time",
"description": "Date and time this record was last updated, serialized as ISO 8601."
},
"description": {
"anyOf": [
{
"type": "null"
},
{
"type": "string"
}
],
"description": "Saved description of this resource or its purpose."
},
"assignmentMode": {
"enum": [
"MANUAL",
"AGENT"
],
"type": "string"
},
"sourceConversationId": {
"anyOf": [
{
"type": "null"
},
{
"type": "string"
}
],
"description": "Conversation that produced this saved result."
},
"sourceConversationIds": {
"anyOf": [
{
"type": "null"
},
{
"type": "array",
"items": {
"type": "string"
}
}
]
},
"isGeneralAgentAssignment": {
"type": "boolean"
}
}
},
"description": "Result items or operation data inside this returned payload. Pagination fields describe only this result page."
},
"page": {
"type": "number",
"description": "Page number represented by these items."
},
"limit": {
"type": "number",
"description": "Maximum number of items requested for this page."
},
"hasMore": {
"type": "boolean"
},
"nextPage": {
"anyOf": [
{
"type": "null"
},
{
"type": "number"
}
],
"description": "Next page to request when more results exist; use the returned value rather than constructing a cursor."
}
},
"description": "Operation data; optional fields may be absent."
},
"error": {
"type": "string",
"description": "Why the operation failed."
},
"details": {
"type": "object",
"description": "Diagnostics keyed by errorCode."
},
"message": {
"type": "string",
"description": "Outcome or recovery instructions. Project selection means no action ran."
},
"success": {
"type": "boolean",
"description": "Operation success; on false inspect error/errorCode."
},
"upgrade": {
"type": "object",
"description": "Plan-upgrade guidance for an unavailable capability."
},
"category": {
"type": "string",
"description": "Failure category, such as invalid_input or plan_required."
},
"expected": {
"type": "boolean",
"description": "Whether this is an anticipated access, input, plan or state failure."
},
"projects": {
"type": "array",
"items": {
"type": "object",
"properties": {
"id": {
"type": "number",
"description": "Project ID for projectId."
},
"name": {
"type": "string",
"description": "Project name."
}
},
"description": "Accessible project."
},
"description": "Accessible project choices. Select a projectId and retry."
},
"errorCode": {
"type": "string",
"description": "Failure code for recovery."
},
"retryable": {
"type": "boolean",
"description": "Whether an unchanged request can be retried."
},
"statusCode": {
"type": "number",
"description": "HTTP-style failure status."
},
"executionTime": {
"type": "string",
"description": "Elapsed time in seconds, with an s suffix."
}
},
"description": "Operation result envelope."
}
Original tool metadata
{
"name": "get_tasks",
"title": "Get tasks",
"description": "List project task summaries when you need to discover tasks across the project. Prefer get_task when you already know the task identifier, and prefer get_my_tasks for your own queue. Results are paginated and intentionally omit heavy nested conversation and agent prompt data.\n\nReads the project task list. get_task fetches one task's detail and get_my_tasks is agent-context scoped; use update_task to change assignment or status.",
"inputSchema": {
"type": "object",
"required": [],
"properties": {
"page": {
"type": "number",
"description": "Optional 1-based page number. Defaults to 1."
},
"limit": {
"type": "number",
"description": "Optional page size. Defaults to 10 and is capped at 25."
},
"status": {
"enum": [
"OPEN",
"IN_PROGRESS",
"DONE",
"BLOCKED",
"CANCELED"
],
"type": "string",
"description": "Optional status filter"
},
"agentId": {
"type": "number",
"description": "Optional assigned agent ID"
},
"context": {
"type": "string",
"maxLength": 120,
"description": "Short purpose of this call for the activity log. Exclude personal data and private source content."
},
"llm_model": {
"type": "string",
"maxLength": 128,
"description": "Use the exact model ID executing this call, from runtime/system context, for usage attribution. Supply it on every Atomic MCP tool call, including discovery and feedback, and update it if the model changes. Use the model ID rather than the client app name. If unavailable, omit it; never guess or ask the user."
},
"projectId": {
"type": "number",
"description": "Atomic project ID from list_projects. Omit to use the configured project; if asked to choose, select one of the accessible returned IDs."
},
"assignmentMode": {
"enum": [
"MANUAL",
"AGENT"
],
"type": "string",
"description": "Optional assignment mode filter"
},
"sourceConversationId": {
"type": "string",
"description": "Optional source conversation filter"
}
}
},
"outputSchema": {
"type": "object",
"required": [
"success"
],
"properties": {
"url": {
"type": "string",
"description": "Link for resolving the failure or completing the operation."
},
"data": {
"type": "object",
"required": [
"data",
"page",
"limit",
"hasMore",
"nextPage"
],
"properties": {
"data": {
"type": "array",
"items": {
"type": "object",
"required": [
"projectId",
"title",
"status",
"assignmentMode",
"createdAt",
"updatedAt"
],
"properties": {
"id": {
"type": "number",
"description": "Identifier of this returned resource. Use it for subsequent reads or edits of the same resource."
},
"agent": {
"anyOf": [
{
"type": "null"
},
{
"type": "object",
"description": "Nested operation-specific fields."
}
],
"description": "Saved agent definition or context associated with this result."
},
"title": {
"type": "string",
"description": "Display or content title of this returned item."
},
"status": {
"enum": [
"OPEN",
"IN_PROGRESS",
"DONE",
"BLOCKED",
"CANCELED"
],
"type": "string",
"description": "Current saved or execution state reported by the operation."
},
"agentId": {
"anyOf": [
{
"type": "null"
},
{
"type": "number"
}
],
"description": "Saved Atomic agent associated with this resource or execution."
},
"dueDate": {
"anyOf": [
{
"type": "null"
},
{
"type": "string"
}
]
},
"publicId": {
"type": "string"
},
"checklist": {
"anyOf": [
{
"type": "null"
},
{
"type": "array",
"items": {
"type": "object",
"description": "Nested operation-specific fields."
}
}
]
},
"createdAt": {
"type": "string",
"format": "date-time",
"description": "Date and time this record was created, serialized as ISO 8601."
},
"projectId": {
"type": "number",
"description": "Atomic project that owns this resource."
},
"updatedAt": {
"type": "string",
"format": "date-time",
"description": "Date and time this record was last updated, serialized as ISO 8601."
},
"description": {
"anyOf": [
{
"type": "null"
},
{
"type": "string"
}
],
"description": "Saved description of this resource or its purpose."
},
"assignmentMode": {
"enum": [
"MANUAL",
"AGENT"
],
"type": "string"
},
"sourceConversationId": {
"anyOf": [
{
"type": "null"
},
{
"type": "string"
}
],
"description": "Conversation that produced this saved result."
},
"sourceConversationIds": {
"anyOf": [
{
"type": "null"
},
{
"type": "array",
"items": {
"type": "string"
}
}
]
},
"isGeneralAgentAssignment": {
"type": "boolean"
}
}
},
"description": "Result items or operation data inside this returned payload. Pagination fields describe only this result page."
},
"page": {
"type": "number",
"description": "Page number represented by these items."
},
"limit": {
"type": "number",
"description": "Maximum number of items requested for this page."
},
"hasMore": {
"type": "boolean"
},
"nextPage": {
"anyOf": [
{
"type": "null"
},
{
"type": "number"
}
],
"description": "Next page to request when more results exist; use the returned value rather than constructing a cursor."
}
},
"description": "Operation data; optional fields may be absent."
},
"error": {
"type": "string",
"description": "Why the operation failed."
},
"details": {
"type": "object",
"description": "Diagnostics keyed by errorCode."
},
"message": {
"type": "string",
"description": "Outcome or recovery instructions. Project selection means no action ran."
},
"success": {
"type": "boolean",
"description": "Operation success; on false inspect error/errorCode."
},
"upgrade": {
"type": "object",
"description": "Plan-upgrade guidance for an unavailable capability."
},
"category": {
"type": "string",
"description": "Failure category, such as invalid_input or plan_required."
},
"expected": {
"type": "boolean",
"description": "Whether this is an anticipated access, input, plan or state failure."
},
"projects": {
"type": "array",
"items": {
"type": "object",
"properties": {
"id": {
"type": "number",
"description": "Project ID for projectId."
},
"name": {
"type": "string",
"description": "Project name."
}
},
"description": "Accessible project."
},
"description": "Accessible project choices. Select a projectId and retry."
},
"errorCode": {
"type": "string",
"description": "Failure code for recovery."
},
"retryable": {
"type": "boolean",
"description": "Whether an unchanged request can be retried."
},
"statusCode": {
"type": "number",
"description": "HTTP-style failure status."
},
"executionTime": {
"type": "string",
"description": "Elapsed time in seconds, with an s suffix."
}
},
"description": "Operation result envelope."
},
"annotations": {
"readOnlyHint": true,
"openWorldHint": false,
"idempotentHint": true,
"destructiveHint": false
}
}
The title clearly communicates the tool’s action and subject. Keep it concise.
Description77/100
Read an asset and its original altText; verifies the asset belongs to this connection site.
Describe the returned information so the agent knows whether it will answer the request.
Inputs85/100
Remove validation rules already expressed in this field’s schema; describe its meaning and usage instead.
projectPublishingId
Atomic publishing connection ID from get_publishing_connections, not the provider site or post ID.
Clear enough to supply this argument.
assetId
Asset ID obtained from list_webflow_assets or get_webflow_asset, never guessed.
Remove validation rules already expressed in this field’s schema; describe its meaning and usage instead.
projectId
Atomic project ID from list_projects. Omit to use the configured project; if asked to choose, select one of the accessible returned IDs.
Clear enough to supply this argument.
context
Short purpose of this call for the activity log. Exclude personal data and private source content.
Remove validation rules already expressed in this field’s schema; describe its meaning and usage instead.
llm_model
Use the exact model ID executing this call, from runtime/system context, for usage attribution. Supply it on every Atomic MCP tool call, including discovery and feedback, and update it if the model changes. Use the model ID rather than the client app name. If unavailable, omit it; never guess or ask the user.
Remove validation rules already expressed in this field’s schema; describe its meaning and usage instead.
{
"type": "object",
"required": [
"success"
],
"properties": {
"url": {
"type": "string",
"description": "Link for resolving the failure or completing the operation."
},
"data": {
"anyOf": [
{
"type": "object",
"required": [
"assets",
"pagination"
],
"properties": {
"assets": {
"type": "array",
"items": {
"type": "object",
"required": [
"id",
"siteId",
"hostedUrl",
"contentType",
"displayName",
"altText"
],
"properties": {
"id": {
"type": "string",
"description": "Identifier of this returned resource. Use it for subsequent reads or edits of the same resource."
},
"siteId": {
"type": "string",
"description": "Native provider site identifier for this connection."
},
"altText": {
"anyOf": [
{
"type": "null"
},
{
"type": "string"
}
]
},
"hostedUrl": {
"type": "string"
},
"contentType": {
"type": "string",
"description": "Content kind returned by the operation, such as a native CMS post type or a file MIME type."
},
"displayName": {
"type": "string",
"description": "Human-readable display name of this item."
}
}
}
},
"pagination": {
"type": "object",
"required": [
"offset",
"limit",
"total",
"nextOffset"
],
"properties": {
"limit": {
"type": "number",
"description": "Maximum number of items requested for this page."
},
"total": {
"type": "number",
"description": "Total number of matching items across all result pages."
},
"offset": {
"type": "number",
"description": "Zero-based result offset represented by this page."
},
"nextOffset": {
"anyOf": [
{
"type": "null"
},
{
"type": "number"
}
],
"description": "Offset for the next result page; null means this listing is complete."
}
},
"description": "Pagination state for the returned page, including its continuation offset."
}
}
},
{
"type": "object",
"required": [
"id",
"siteId",
"hostedUrl",
"contentType",
"displayName",
"altText"
],
"properties": {
"id": {
"type": "string",
"description": "Identifier of this returned resource. Use it for subsequent reads or edits of the same resource."
},
"siteId": {
"type": "string",
"description": "Native provider site identifier for this connection."
},
"altText": {
"anyOf": [
{
"type": "null"
},
{
"type": "string"
}
]
},
"hostedUrl": {
"type": "string"
},
"contentType": {
"type": "string",
"description": "Content kind returned by the operation, such as a native CMS post type or a file MIME type."
},
"displayName": {
"type": "string",
"description": "Human-readable display name of this item."
}
}
}
],
"description": "Operation data; optional fields may be absent."
},
"error": {
"type": "string",
"description": "Why the operation failed."
},
"details": {
"type": "object",
"description": "Diagnostics keyed by errorCode."
},
"message": {
"type": "string",
"description": "Outcome or recovery instructions. Project selection means no action ran."
},
"success": {
"type": "boolean",
"description": "Operation success; on false inspect error/errorCode."
},
"upgrade": {
"type": "object",
"description": "Plan-upgrade guidance for an unavailable capability."
},
"category": {
"type": "string",
"description": "Failure category, such as invalid_input or plan_required."
},
"expected": {
"type": "boolean",
"description": "Whether this is an anticipated access, input, plan or state failure."
},
"projects": {
"type": "array",
"items": {
"type": "object",
"properties": {
"id": {
"type": "number",
"description": "Project ID for projectId."
},
"name": {
"type": "string",
"description": "Project name."
}
},
"description": "Accessible project."
},
"description": "Accessible project choices. Select a projectId and retry."
},
"errorCode": {
"type": "string",
"description": "Failure code for recovery."
},
"retryable": {
"type": "boolean",
"description": "Whether an unchanged request can be retried."
},
"statusCode": {
"type": "number",
"description": "HTTP-style failure status."
},
"executionTime": {
"type": "string",
"description": "Elapsed time in seconds, with an s suffix."
}
},
"description": "Operation result envelope."
}
Original tool metadata
{
"name": "get_webflow_asset",
"title": "Get Webflow asset",
"description": "Read an asset and its original altText; verifies the asset belongs to this connection site.",
"inputSchema": {
"type": "object",
"required": [
"projectPublishingId",
"assetId"
],
"properties": {
"assetId": {
"type": "string",
"pattern": "^[a-fA-F0-9]{24}$",
"description": "Asset ID obtained from list_webflow_assets or get_webflow_asset, never guessed."
},
"context": {
"type": "string",
"maxLength": 120,
"description": "Short purpose of this call for the activity log. Exclude personal data and private source content."
},
"llm_model": {
"type": "string",
"maxLength": 128,
"description": "Use the exact model ID executing this call, from runtime/system context, for usage attribution. Supply it on every Atomic MCP tool call, including discovery and feedback, and update it if the model changes. Use the model ID rather than the client app name. If unavailable, omit it; never guess or ask the user."
},
"projectId": {
"type": "number",
"description": "Atomic project ID from list_projects. Omit to use the configured project; if asked to choose, select one of the accessible returned IDs."
},
"projectPublishingId": {
"type": "number",
"minimum": 1,
"description": "Atomic publishing connection ID from get_publishing_connections, not the provider site or post ID."
}
},
"additionalProperties": false
},
"outputSchema": {
"type": "object",
"required": [
"success"
],
"properties": {
"url": {
"type": "string",
"description": "Link for resolving the failure or completing the operation."
},
"data": {
"anyOf": [
{
"type": "object",
"required": [
"assets",
"pagination"
],
"properties": {
"assets": {
"type": "array",
"items": {
"type": "object",
"required": [
"id",
"siteId",
"hostedUrl",
"contentType",
"displayName",
"altText"
],
"properties": {
"id": {
"type": "string",
"description": "Identifier of this returned resource. Use it for subsequent reads or edits of the same resource."
},
"siteId": {
"type": "string",
"description": "Native provider site identifier for this connection."
},
"altText": {
"anyOf": [
{
"type": "null"
},
{
"type": "string"
}
]
},
"hostedUrl": {
"type": "string"
},
"contentType": {
"type": "string",
"description": "Content kind returned by the operation, such as a native CMS post type or a file MIME type."
},
"displayName": {
"type": "string",
"description": "Human-readable display name of this item."
}
}
}
},
"pagination": {
"type": "object",
"required": [
"offset",
"limit",
"total",
"nextOffset"
],
"properties": {
"limit": {
"type": "number",
"description": "Maximum number of items requested for this page."
},
"total": {
"type": "number",
"description": "Total number of matching items across all result pages."
},
"offset": {
"type": "number",
"description": "Zero-based result offset represented by this page."
},
"nextOffset": {
"anyOf": [
{
"type": "null"
},
{
"type": "number"
}
],
"description": "Offset for the next result page; null means this listing is complete."
}
},
"description": "Pagination state for the returned page, including its continuation offset."
}
}
},
{
"type": "object",
"required": [
"id",
"siteId",
"hostedUrl",
"contentType",
"displayName",
"altText"
],
"properties": {
"id": {
"type": "string",
"description": "Identifier of this returned resource. Use it for subsequent reads or edits of the same resource."
},
"siteId": {
"type": "string",
"description": "Native provider site identifier for this connection."
},
"altText": {
"anyOf": [
{
"type": "null"
},
{
"type": "string"
}
]
},
"hostedUrl": {
"type": "string"
},
"contentType": {
"type": "string",
"description": "Content kind returned by the operation, such as a native CMS post type or a file MIME type."
},
"displayName": {
"type": "string",
"description": "Human-readable display name of this item."
}
}
}
],
"description": "Operation data; optional fields may be absent."
},
"error": {
"type": "string",
"description": "Why the operation failed."
},
"details": {
"type": "object",
"description": "Diagnostics keyed by errorCode."
},
"message": {
"type": "string",
"description": "Outcome or recovery instructions. Project selection means no action ran."
},
"success": {
"type": "boolean",
"description": "Operation success; on false inspect error/errorCode."
},
"upgrade": {
"type": "object",
"description": "Plan-upgrade guidance for an unavailable capability."
},
"category": {
"type": "string",
"description": "Failure category, such as invalid_input or plan_required."
},
"expected": {
"type": "boolean",
"description": "Whether this is an anticipated access, input, plan or state failure."
},
"projects": {
"type": "array",
"items": {
"type": "object",
"properties": {
"id": {
"type": "number",
"description": "Project ID for projectId."
},
"name": {
"type": "string",
"description": "Project name."
}
},
"description": "Accessible project."
},
"description": "Accessible project choices. Select a projectId and retry."
},
"errorCode": {
"type": "string",
"description": "Failure code for recovery."
},
"retryable": {
"type": "boolean",
"description": "Whether an unchanged request can be retried."
},
"statusCode": {
"type": "number",
"description": "HTTP-style failure status."
},
"executionTime": {
"type": "string",
"description": "Elapsed time in seconds, with an s suffix."
}
},
"description": "Operation result envelope."
},
"annotations": {
"readOnlyHint": true,
"openWorldHint": true,
"idempotentHint": true,
"destructiveHint": false
}
}
The title clearly communicates the tool’s action and subject. Keep it concise.
Description94/100
Read native collection fields, types, validations and reference metadata.
Use after list_webflow_collections to discover one collection's native field slugs, validations and references. It does not fetch the full item inventory or write schema changes.
The description explains the capability, when to use it, and what to expect.
Inputs88/100
Remove validation rules already expressed in this field’s schema; describe its meaning and usage instead.
projectPublishingId
Atomic publishing connection ID from get_publishing_connections, not the provider site or post ID.
Clear enough to supply this argument.
collectionId
CMS collection in the connected site
Remove validation rules already expressed in this field’s schema; describe its meaning and usage instead.
referenceItemId
Optional reference item for programmatic field examples
Remove validation rules already expressed in this field’s schema; describe its meaning and usage instead.
projectId
Atomic project ID from list_projects. Omit to use the configured project; if asked to choose, select one of the accessible returned IDs.
Clear enough to supply this argument.
context
Short purpose of this call for the activity log. Exclude personal data and private source content.
Remove validation rules already expressed in this field’s schema; describe its meaning and usage instead.
llm_model
Use the exact model ID executing this call, from runtime/system context, for usage attribution. Supply it on every Atomic MCP tool call, including discovery and feedback, and update it if the model changes. Use the model ID rather than the client app name. If unavailable, omit it; never guess or ask the user.
{
"type": "object",
"required": [
"success"
],
"properties": {
"url": {
"type": "string",
"description": "Link for resolving the failure or completing the operation."
},
"data": {
"type": "object",
"required": [
"success",
"collectionId",
"collectionName",
"collectionSlug",
"fields",
"fieldDataKeys",
"requiredFields"
],
"properties": {
"fields": {
"type": "array",
"items": {
"type": "object",
"required": [
"slug",
"displayName",
"type",
"isRequired"
],
"properties": {
"slug": {
"type": "string",
"description": "Saved URL slug or native CMS slug of this item."
},
"type": {
"type": "string",
"description": "Kind of the returned item; determines how its operation-specific fields should be interpreted."
},
"options": {
"type": "array",
"items": {
"type": "object",
"description": "Nested operation-specific fields."
},
"description": "Options saved for the selected item type."
},
"isEditable": {
"type": "boolean",
"description": "Whether this field can be changed through this connection."
},
"isRequired": {
"type": "boolean",
"description": "Whether the provider requires this field."
},
"displayName": {
"type": "string",
"description": "Human-readable display name of this item."
},
"validations": {
"type": "object",
"description": "Native provider constraints reported for this field."
},
"referencedCollectionId": {
"type": "string",
"description": "Native collection referenced by this field."
}
}
},
"description": "Native field values or field-level results returned by the selected CMS operation."
},
"success": {
"type": "boolean",
"description": "Whether this nested operation completed successfully. Inspect the containing result for details."
},
"collectionId": {
"type": "string",
"description": "Native Webflow collection ID identifying the CMS collection."
},
"singularName": {
"type": "string",
"description": "Provider label for one record in this collection."
},
"fieldDataKeys": {
"type": "array",
"items": {
"type": "string"
},
"description": "Native field keys accepted by this collection."
},
"referenceItem": {
"type": "object",
"required": [
"id",
"name",
"slug",
"fieldData"
],
"properties": {
"id": {
"type": "string",
"description": "Identifier of this returned resource. Use it for subsequent reads or edits of the same resource."
},
"name": {
"type": "string",
"description": "Human-readable name of this resource."
},
"slug": {
"type": "string",
"description": "Saved URL slug or native CMS slug of this item."
},
"fieldData": {
"type": "object",
"properties": {},
"description": "Native collection-field values keyed by field slug. Custom fields depend on the collection schema.",
"additionalProperties": {
"description": "JSON returned by the connected provider or selected operation; its fields depend on that operation."
}
}
}
},
"collectionName": {
"type": "string",
"description": "Human-readable name of the native CMS collection."
},
"collectionSlug": {
"type": "string",
"description": "Native collection URL slug."
},
"requiredFields": {
"type": "array",
"items": {
"type": "string"
},
"description": "Fields the connected provider requires when creating a record in this collection."
}
},
"description": "Operation data; optional fields may be absent."
},
"error": {
"type": "string",
"description": "Why the operation failed."
},
"details": {
"type": "object",
"description": "Diagnostics keyed by errorCode."
},
"message": {
"type": "string",
"description": "Outcome or recovery instructions. Project selection means no action ran."
},
"success": {
"type": "boolean",
"description": "Operation success; on false inspect error/errorCode."
},
"upgrade": {
"type": "object",
"description": "Plan-upgrade guidance for an unavailable capability."
},
"category": {
"type": "string",
"description": "Failure category, such as invalid_input or plan_required."
},
"expected": {
"type": "boolean",
"description": "Whether this is an anticipated access, input, plan or state failure."
},
"projects": {
"type": "array",
"items": {
"type": "object",
"properties": {
"id": {
"type": "number",
"description": "Project ID for projectId."
},
"name": {
"type": "string",
"description": "Project name."
}
},
"description": "Accessible project."
},
"description": "Accessible project choices. Select a projectId and retry."
},
"errorCode": {
"type": "string",
"description": "Failure code for recovery."
},
"retryable": {
"type": "boolean",
"description": "Whether an unchanged request can be retried."
},
"statusCode": {
"type": "number",
"description": "HTTP-style failure status."
},
"executionTime": {
"type": "string",
"description": "Elapsed time in seconds, with an s suffix."
}
},
"description": "Operation result envelope."
}
Original tool metadata
{
"name": "get_webflow_collection_structure",
"title": "Get Webflow collection structure",
"description": "Read native collection fields, types, validations and reference metadata.\n\nUse after list_webflow_collections to discover one collection's native field slugs, validations and references. It does not fetch the full item inventory or write schema changes.",
"inputSchema": {
"type": "object",
"required": [
"projectPublishingId",
"collectionId"
],
"properties": {
"context": {
"type": "string",
"maxLength": 120,
"description": "Short purpose of this call for the activity log. Exclude personal data and private source content."
},
"llm_model": {
"type": "string",
"maxLength": 128,
"description": "Use the exact model ID executing this call, from runtime/system context, for usage attribution. Supply it on every Atomic MCP tool call, including discovery and feedback, and update it if the model changes. Use the model ID rather than the client app name. If unavailable, omit it; never guess or ask the user."
},
"projectId": {
"type": "number",
"description": "Atomic project ID from list_projects. Omit to use the configured project; if asked to choose, select one of the accessible returned IDs."
},
"collectionId": {
"type": "string",
"pattern": "^[a-fA-F0-9]{24}$",
"description": "CMS collection in the connected site"
},
"referenceItemId": {
"type": "string",
"pattern": "^[a-fA-F0-9]{24}$",
"description": "Optional reference item for programmatic field examples"
},
"projectPublishingId": {
"type": "number",
"minimum": 1,
"description": "Atomic publishing connection ID from get_publishing_connections, not the provider site or post ID."
}
},
"additionalProperties": false
},
"outputSchema": {
"type": "object",
"required": [
"success"
],
"properties": {
"url": {
"type": "string",
"description": "Link for resolving the failure or completing the operation."
},
"data": {
"type": "object",
"required": [
"success",
"collectionId",
"collectionName",
"collectionSlug",
"fields",
"fieldDataKeys",
"requiredFields"
],
"properties": {
"fields": {
"type": "array",
"items": {
"type": "object",
"required": [
"slug",
"displayName",
"type",
"isRequired"
],
"properties": {
"slug": {
"type": "string",
"description": "Saved URL slug or native CMS slug of this item."
},
"type": {
"type": "string",
"description": "Kind of the returned item; determines how its operation-specific fields should be interpreted."
},
"options": {
"type": "array",
"items": {
"type": "object",
"description": "Nested operation-specific fields."
},
"description": "Options saved for the selected item type."
},
"isEditable": {
"type": "boolean",
"description": "Whether this field can be changed through this connection."
},
"isRequired": {
"type": "boolean",
"description": "Whether the provider requires this field."
},
"displayName": {
"type": "string",
"description": "Human-readable display name of this item."
},
"validations": {
"type": "object",
"description": "Native provider constraints reported for this field."
},
"referencedCollectionId": {
"type": "string",
"description": "Native collection referenced by this field."
}
}
},
"description": "Native field values or field-level results returned by the selected CMS operation."
},
"success": {
"type": "boolean",
"description": "Whether this nested operation completed successfully. Inspect the containing result for details."
},
"collectionId": {
"type": "string",
"description": "Native Webflow collection ID identifying the CMS collection."
},
"singularName": {
"type": "string",
"description": "Provider label for one record in this collection."
},
"fieldDataKeys": {
"type": "array",
"items": {
"type": "string"
},
"description": "Native field keys accepted by this collection."
},
"referenceItem": {
"type": "object",
"required": [
"id",
"name",
"slug",
"fieldData"
],
"properties": {
"id": {
"type": "string",
"description": "Identifier of this returned resource. Use it for subsequent reads or edits of the same resource."
},
"name": {
"type": "string",
"description": "Human-readable name of this resource."
},
"slug": {
"type": "string",
"description": "Saved URL slug or native CMS slug of this item."
},
"fieldData": {
"type": "object",
"properties": {},
"description": "Native collection-field values keyed by field slug. Custom fields depend on the collection schema.",
"additionalProperties": {
"description": "JSON returned by the connected provider or selected operation; its fields depend on that operation."
}
}
}
},
"collectionName": {
"type": "string",
"description": "Human-readable name of the native CMS collection."
},
"collectionSlug": {
"type": "string",
"description": "Native collection URL slug."
},
"requiredFields": {
"type": "array",
"items": {
"type": "string"
},
"description": "Fields the connected provider requires when creating a record in this collection."
}
},
"description": "Operation data; optional fields may be absent."
},
"error": {
"type": "string",
"description": "Why the operation failed."
},
"details": {
"type": "object",
"description": "Diagnostics keyed by errorCode."
},
"message": {
"type": "string",
"description": "Outcome or recovery instructions. Project selection means no action ran."
},
"success": {
"type": "boolean",
"description": "Operation success; on false inspect error/errorCode."
},
"upgrade": {
"type": "object",
"description": "Plan-upgrade guidance for an unavailable capability."
},
"category": {
"type": "string",
"description": "Failure category, such as invalid_input or plan_required."
},
"expected": {
"type": "boolean",
"description": "Whether this is an anticipated access, input, plan or state failure."
},
"projects": {
"type": "array",
"items": {
"type": "object",
"properties": {
"id": {
"type": "number",
"description": "Project ID for projectId."
},
"name": {
"type": "string",
"description": "Project name."
}
},
"description": "Accessible project."
},
"description": "Accessible project choices. Select a projectId and retry."
},
"errorCode": {
"type": "string",
"description": "Failure code for recovery."
},
"retryable": {
"type": "boolean",
"description": "Whether an unchanged request can be retried."
},
"statusCode": {
"type": "number",
"description": "HTTP-style failure status."
},
"executionTime": {
"type": "string",
"description": "Elapsed time in seconds, with an s suffix."
}
},
"description": "Operation result envelope."
},
"annotations": {
"readOnlyHint": true,
"openWorldHint": true,
"idempotentHint": true,
"destructiveHint": false
}
}
The title clearly communicates the tool’s action and subject. Keep it concise.
Description75/100
Read an existing primary-locale Webflow CMS post or collection page and collection field schema. Use native fieldData values as originals before update_webflow_content.
Describe the returned information so the agent knows whether it will answer the request.
Inputs83/100
Explain the meaning of this value, not just its name.
projectPublishingId
Atomic publishing connection ID from get_publishing_connections, not the provider site or post ID.
Clear enough to supply this argument.
collectionId
CMS collection in the connected site
Explain the meaning of this value, not just its name.
itemId
Existing primary-locale CMS post or collection page
Remove validation rules already expressed in this field’s schema; describe its meaning and usage instead.
projectId
Atomic project ID from list_projects. Omit to use the configured project; if asked to choose, select one of the accessible returned IDs.
Clear enough to supply this argument.
context
Short purpose of this call for the activity log. Exclude personal data and private source content.
Remove validation rules already expressed in this field’s schema; describe its meaning and usage instead.
llm_model
Use the exact model ID executing this call, from runtime/system context, for usage attribution. Supply it on every Atomic MCP tool call, including discovery and feedback, and update it if the model changes. Use the model ID rather than the client app name. If unavailable, omit it; never guess or ask the user.
{
"type": "object",
"required": [
"success"
],
"properties": {
"url": {
"type": "string",
"description": "Link for resolving the failure or completing the operation."
},
"data": {
"type": "object",
"required": [
"id",
"fieldData",
"isDraft",
"isArchived",
"fields"
],
"properties": {
"id": {
"type": "string",
"description": "Identifier of this returned resource. Use it for subsequent reads or edits of the same resource."
},
"fields": {
"type": "array",
"items": {
"type": "object",
"required": [
"slug",
"type"
],
"properties": {
"slug": {
"type": "string",
"description": "Saved URL slug or native CMS slug of this item."
},
"type": {
"type": "string",
"description": "Kind of the returned item; determines how its operation-specific fields should be interpreted."
},
"isEditable": {
"type": "boolean",
"description": "Whether this field can be changed through this connection."
}
}
},
"description": "Native field values or field-level results returned by the selected CMS operation."
},
"isDraft": {
"type": "boolean",
"description": "Whether this native CMS record remains a draft."
},
"fieldData": {
"type": "object",
"properties": {},
"description": "Native collection-field values keyed by field slug. Custom fields depend on the collection schema.",
"additionalProperties": {
"description": "JSON returned by the connected provider or selected operation; its fields depend on that operation."
}
},
"isArchived": {
"type": "boolean",
"description": "Whether the native CMS record is archived."
},
"cmsLocaleId": {
"type": "string"
},
"lastPublished": {
"anyOf": [
{
"type": "null"
},
{
"type": "string"
}
]
}
},
"description": "Operation data; optional fields may be absent."
},
"error": {
"type": "string",
"description": "Why the operation failed."
},
"details": {
"type": "object",
"description": "Diagnostics keyed by errorCode."
},
"message": {
"type": "string",
"description": "Outcome or recovery instructions. Project selection means no action ran."
},
"success": {
"type": "boolean",
"description": "Operation success; on false inspect error/errorCode."
},
"upgrade": {
"type": "object",
"description": "Plan-upgrade guidance for an unavailable capability."
},
"category": {
"type": "string",
"description": "Failure category, such as invalid_input or plan_required."
},
"expected": {
"type": "boolean",
"description": "Whether this is an anticipated access, input, plan or state failure."
},
"projects": {
"type": "array",
"items": {
"type": "object",
"properties": {
"id": {
"type": "number",
"description": "Project ID for projectId."
},
"name": {
"type": "string",
"description": "Project name."
}
},
"description": "Accessible project."
},
"description": "Accessible project choices. Select a projectId and retry."
},
"errorCode": {
"type": "string",
"description": "Failure code for recovery."
},
"retryable": {
"type": "boolean",
"description": "Whether an unchanged request can be retried."
},
"statusCode": {
"type": "number",
"description": "HTTP-style failure status."
},
"executionTime": {
"type": "string",
"description": "Elapsed time in seconds, with an s suffix."
}
},
"description": "Operation result envelope."
}
Original tool metadata
{
"name": "get_webflow_content",
"title": "Get Webflow content",
"description": "Read an existing primary-locale Webflow CMS post or collection page and collection field schema. Use native fieldData values as originals before update_webflow_content.",
"inputSchema": {
"type": "object",
"required": [
"projectPublishingId",
"collectionId",
"itemId"
],
"properties": {
"itemId": {
"type": "string",
"pattern": "^[a-fA-F0-9]{24}$",
"description": "Existing primary-locale CMS post or collection page"
},
"context": {
"type": "string",
"maxLength": 120,
"description": "Short purpose of this call for the activity log. Exclude personal data and private source content."
},
"llm_model": {
"type": "string",
"maxLength": 128,
"description": "Use the exact model ID executing this call, from runtime/system context, for usage attribution. Supply it on every Atomic MCP tool call, including discovery and feedback, and update it if the model changes. Use the model ID rather than the client app name. If unavailable, omit it; never guess or ask the user."
},
"projectId": {
"type": "number",
"description": "Atomic project ID from list_projects. Omit to use the configured project; if asked to choose, select one of the accessible returned IDs."
},
"collectionId": {
"type": "string",
"pattern": "^[a-fA-F0-9]{24}$",
"description": "CMS collection in the connected site"
},
"projectPublishingId": {
"type": "number",
"minimum": 1,
"description": "Atomic publishing connection ID from get_publishing_connections, not the provider site or post ID."
}
},
"additionalProperties": false
},
"outputSchema": {
"type": "object",
"required": [
"success"
],
"properties": {
"url": {
"type": "string",
"description": "Link for resolving the failure or completing the operation."
},
"data": {
"type": "object",
"required": [
"id",
"fieldData",
"isDraft",
"isArchived",
"fields"
],
"properties": {
"id": {
"type": "string",
"description": "Identifier of this returned resource. Use it for subsequent reads or edits of the same resource."
},
"fields": {
"type": "array",
"items": {
"type": "object",
"required": [
"slug",
"type"
],
"properties": {
"slug": {
"type": "string",
"description": "Saved URL slug or native CMS slug of this item."
},
"type": {
"type": "string",
"description": "Kind of the returned item; determines how its operation-specific fields should be interpreted."
},
"isEditable": {
"type": "boolean",
"description": "Whether this field can be changed through this connection."
}
}
},
"description": "Native field values or field-level results returned by the selected CMS operation."
},
"isDraft": {
"type": "boolean",
"description": "Whether this native CMS record remains a draft."
},
"fieldData": {
"type": "object",
"properties": {},
"description": "Native collection-field values keyed by field slug. Custom fields depend on the collection schema.",
"additionalProperties": {
"description": "JSON returned by the connected provider or selected operation; its fields depend on that operation."
}
},
"isArchived": {
"type": "boolean",
"description": "Whether the native CMS record is archived."
},
"cmsLocaleId": {
"type": "string"
},
"lastPublished": {
"anyOf": [
{
"type": "null"
},
{
"type": "string"
}
]
}
},
"description": "Operation data; optional fields may be absent."
},
"error": {
"type": "string",
"description": "Why the operation failed."
},
"details": {
"type": "object",
"description": "Diagnostics keyed by errorCode."
},
"message": {
"type": "string",
"description": "Outcome or recovery instructions. Project selection means no action ran."
},
"success": {
"type": "boolean",
"description": "Operation success; on false inspect error/errorCode."
},
"upgrade": {
"type": "object",
"description": "Plan-upgrade guidance for an unavailable capability."
},
"category": {
"type": "string",
"description": "Failure category, such as invalid_input or plan_required."
},
"expected": {
"type": "boolean",
"description": "Whether this is an anticipated access, input, plan or state failure."
},
"projects": {
"type": "array",
"items": {
"type": "object",
"properties": {
"id": {
"type": "number",
"description": "Project ID for projectId."
},
"name": {
"type": "string",
"description": "Project name."
}
},
"description": "Accessible project."
},
"description": "Accessible project choices. Select a projectId and retry."
},
"errorCode": {
"type": "string",
"description": "Failure code for recovery."
},
"retryable": {
"type": "boolean",
"description": "Whether an unchanged request can be retried."
},
"statusCode": {
"type": "number",
"description": "HTTP-style failure status."
},
"executionTime": {
"type": "string",
"description": "Elapsed time in seconds, with an s suffix."
}
},
"description": "Operation result envelope."
},
"annotations": {
"readOnlyHint": true,
"openWorldHint": true,
"idempotentHint": true,
"destructiveHint": false
}
}
The title clearly communicates the tool’s action and subject. Keep it concise.
Description88/100
Omit pageId to list the connected site pages. Read the connected Webflow page element tree, site styles, designToken and current native tool schemas. Optional call performs one read-only native action (settings, bindable sources, queries, or visual snapshot). Requires connected Webflow design access. Snapshot needs the Webflow Bridge open. Read site design before editing and reuse existing classes.
The description explains the capability, when to use it, and what to expect.
Inputs92/100
Remove validation rules already expressed in this field’s schema; describe its meaning and usage instead.
projectPublishingId
Atomic publishing connection ID from get_publishing_connections, not the provider site or post ID.
Clear enough to supply this argument.
pageId
Page ID from the connected site, including a Collection Page template.
Remove validation rules already expressed in this field’s schema; describe its meaning and usage instead.
call › tool
Native operation name from the design schema returned by get_webflow_design.
Remove validation rules already expressed in this field’s schema; describe its meaning and usage instead.
call › arguments
One native action using the tool schema returned by get_webflow_design. Omit siteId/pageId; Atomic supplies them. Component scope overrides are not allowed.
Clear enough to supply this argument.
projectId
Atomic project ID from list_projects. Omit to use the configured project; if asked to choose, select one of the accessible returned IDs.
Clear enough to supply this argument.
context
Short purpose of this call for the activity log. Exclude personal data and private source content.
Clear enough to supply this argument.
llm_model
Use the exact model ID executing this call, from runtime/system context, for usage attribution. Supply it on every Atomic MCP tool call, including discovery and feedback, and update it if the model changes. Use the model ID rather than the client app name. If unavailable, omit it; never guess or ask the user.
{
"type": "object",
"required": [
"success"
],
"properties": {
"url": {
"type": "string",
"description": "Link for resolving the failure or completing the operation."
},
"data": {
"anyOf": [
{
"type": "object",
"required": [
"pages"
],
"properties": {
"pages": {
"type": "array",
"items": {
"type": "object",
"required": [
"id",
"title"
],
"properties": {
"id": {
"type": "string",
"description": "Identifier of this returned resource. Use it for subsequent reads or edits of the same resource."
},
"title": {
"type": "string",
"description": "Display or content title of this returned item."
},
"collectionId": {
"type": "string",
"description": "Native Webflow collection ID identifying the CMS collection."
}
}
}
}
}
},
{
"description": "JSON returned by the connected provider or selected operation; its fields depend on that operation."
},
{
"type": "object",
"required": [
"siteId",
"pageId",
"designToken",
"tools"
],
"properties": {
"tools": {
"type": "array",
"items": {
"type": "object",
"required": [
"name",
"inputSchema"
],
"properties": {
"name": {
"type": "string",
"description": "Human-readable name of this resource."
},
"description": {
"type": "string",
"description": "Saved description of this resource or its purpose."
},
"inputSchema": {
"type": "object",
"description": "Nested operation-specific fields."
}
}
}
},
"pageId": {
"type": "string"
},
"siteId": {
"type": "string",
"description": "Native provider site identifier for this connection."
},
"styles": {
"description": "JSON returned by the connected provider or selected operation; its fields depend on that operation."
},
"elements": {
"description": "JSON returned by the connected provider or selected operation; its fields depend on that operation."
},
"designToken": {
"type": "string"
}
}
}
],
"description": "Without pageId, returns available pages; with pageId, returns native design state and schemas; with call, returns that native read operation’s provider-defined JSON."
},
"error": {
"type": "string",
"description": "Why the operation failed."
},
"details": {
"type": "object",
"description": "Diagnostics keyed by errorCode."
},
"message": {
"type": "string",
"description": "Outcome or recovery instructions. Project selection means no action ran."
},
"success": {
"type": "boolean",
"description": "Operation success; on false inspect error/errorCode."
},
"upgrade": {
"type": "object",
"description": "Plan-upgrade guidance for an unavailable capability."
},
"category": {
"type": "string",
"description": "Failure category, such as invalid_input or plan_required."
},
"expected": {
"type": "boolean",
"description": "Whether this is an anticipated access, input, plan or state failure."
},
"projects": {
"type": "array",
"items": {
"type": "object",
"properties": {
"id": {
"type": "number",
"description": "Project ID for projectId."
},
"name": {
"type": "string",
"description": "Project name."
}
},
"description": "Accessible project."
},
"description": "Accessible project choices. Select a projectId and retry."
},
"errorCode": {
"type": "string",
"description": "Failure code for recovery."
},
"retryable": {
"type": "boolean",
"description": "Whether an unchanged request can be retried."
},
"statusCode": {
"type": "number",
"description": "HTTP-style failure status."
},
"executionTime": {
"type": "string",
"description": "Elapsed time in seconds, with an s suffix."
}
},
"description": "Operation result envelope."
}
Original tool metadata
{
"name": "get_webflow_design",
"title": "Get Webflow design",
"description": "Omit pageId to list the connected site pages. Read the connected Webflow page element tree, site styles, designToken and current native tool schemas. Optional call performs one read-only native action (settings, bindable sources, queries, or visual snapshot). Requires connected Webflow design access. Snapshot needs the Webflow Bridge open. Read site design before editing and reuse existing classes.",
"inputSchema": {
"type": "object",
"required": [
"projectPublishingId"
],
"properties": {
"call": {
"type": "object",
"required": [
"tool",
"arguments"
],
"properties": {
"tool": {
"enum": [
"data_element_tool",
"data_element_settings_tool",
"data_element_builder",
"data_style_tool",
"element_snapshot_tool"
],
"type": "string",
"description": "Native operation name from the design schema returned by get_webflow_design."
},
"arguments": {
"type": "object",
"description": "One native action using the tool schema returned by get_webflow_design. Omit siteId/pageId; Atomic supplies them. Component scope overrides are not allowed.",
"additionalProperties": true
}
},
"description": "Native design tool call selected from the schema returned by get_webflow_design; include its tool name and arguments.",
"additionalProperties": false
},
"pageId": {
"type": "string",
"pattern": "^[a-fA-F0-9]{24}$",
"description": "Page ID from the connected site, including a Collection Page template."
},
"context": {
"type": "string",
"maxLength": 120,
"description": "Short purpose of this call for the activity log. Exclude personal data and private source content."
},
"llm_model": {
"type": "string",
"maxLength": 128,
"description": "Use the exact model ID executing this call, from runtime/system context, for usage attribution. Supply it on every Atomic MCP tool call, including discovery and feedback, and update it if the model changes. Use the model ID rather than the client app name. If unavailable, omit it; never guess or ask the user."
},
"projectId": {
"type": "number",
"description": "Atomic project ID from list_projects. Omit to use the configured project; if asked to choose, select one of the accessible returned IDs."
},
"projectPublishingId": {
"type": "number",
"minimum": 1,
"description": "Atomic publishing connection ID from get_publishing_connections, not the provider site or post ID."
}
},
"additionalProperties": false
},
"outputSchema": {
"type": "object",
"required": [
"success"
],
"properties": {
"url": {
"type": "string",
"description": "Link for resolving the failure or completing the operation."
},
"data": {
"anyOf": [
{
"type": "object",
"required": [
"pages"
],
"properties": {
"pages": {
"type": "array",
"items": {
"type": "object",
"required": [
"id",
"title"
],
"properties": {
"id": {
"type": "string",
"description": "Identifier of this returned resource. Use it for subsequent reads or edits of the same resource."
},
"title": {
"type": "string",
"description": "Display or content title of this returned item."
},
"collectionId": {
"type": "string",
"description": "Native Webflow collection ID identifying the CMS collection."
}
}
}
}
}
},
{
"description": "JSON returned by the connected provider or selected operation; its fields depend on that operation."
},
{
"type": "object",
"required": [
"siteId",
"pageId",
"designToken",
"tools"
],
"properties": {
"tools": {
"type": "array",
"items": {
"type": "object",
"required": [
"name",
"inputSchema"
],
"properties": {
"name": {
"type": "string",
"description": "Human-readable name of this resource."
},
"description": {
"type": "string",
"description": "Saved description of this resource or its purpose."
},
"inputSchema": {
"type": "object",
"description": "Nested operation-specific fields."
}
}
}
},
"pageId": {
"type": "string"
},
"siteId": {
"type": "string",
"description": "Native provider site identifier for this connection."
},
"styles": {
"description": "JSON returned by the connected provider or selected operation; its fields depend on that operation."
},
"elements": {
"description": "JSON returned by the connected provider or selected operation; its fields depend on that operation."
},
"designToken": {
"type": "string"
}
}
}
],
"description": "Without pageId, returns available pages; with pageId, returns native design state and schemas; with call, returns that native read operation’s provider-defined JSON."
},
"error": {
"type": "string",
"description": "Why the operation failed."
},
"details": {
"type": "object",
"description": "Diagnostics keyed by errorCode."
},
"message": {
"type": "string",
"description": "Outcome or recovery instructions. Project selection means no action ran."
},
"success": {
"type": "boolean",
"description": "Operation success; on false inspect error/errorCode."
},
"upgrade": {
"type": "object",
"description": "Plan-upgrade guidance for an unavailable capability."
},
"category": {
"type": "string",
"description": "Failure category, such as invalid_input or plan_required."
},
"expected": {
"type": "boolean",
"description": "Whether this is an anticipated access, input, plan or state failure."
},
"projects": {
"type": "array",
"items": {
"type": "object",
"properties": {
"id": {
"type": "number",
"description": "Project ID for projectId."
},
"name": {
"type": "string",
"description": "Project name."
}
},
"description": "Accessible project."
},
"description": "Accessible project choices. Select a projectId and retry."
},
"errorCode": {
"type": "string",
"description": "Failure code for recovery."
},
"retryable": {
"type": "boolean",
"description": "Whether an unchanged request can be retried."
},
"statusCode": {
"type": "number",
"description": "HTTP-style failure status."
},
"executionTime": {
"type": "string",
"description": "Elapsed time in seconds, with an s suffix."
}
},
"description": "Operation result envelope."
},
"annotations": {
"readOnlyHint": true,
"openWorldHint": true,
"idempotentHint": true,
"destructiveHint": false
}
}
The title clearly communicates the tool’s action and subject. Keep it concise.
Description79/100
Read connected Webflow custom domains, last-published times and publicationToken before publishing. Requires sites:read. A timestamp is not proof of rendered image descriptions.
Describe the returned information so the agent knows whether it will answer the request.
Inputs88/100
Remove validation rules already expressed in this field’s schema; describe its meaning and usage instead.
projectPublishingId
Atomic publishing connection ID from get_publishing_connections, not the provider site or post ID.
Clear enough to supply this argument.
projectId
Atomic project ID from list_projects. Omit to use the configured project; if asked to choose, select one of the accessible returned IDs.
Clear enough to supply this argument.
context
Short purpose of this call for the activity log. Exclude personal data and private source content.
Remove validation rules already expressed in this field’s schema; describe its meaning and usage instead.
llm_model
Use the exact model ID executing this call, from runtime/system context, for usage attribution. Supply it on every Atomic MCP tool call, including discovery and feedback, and update it if the model changes. Use the model ID rather than the client app name. If unavailable, omit it; never guess or ask the user.
Remove validation rules already expressed in this field’s schema; describe its meaning and usage instead.
{
"type": "object",
"required": [
"success"
],
"properties": {
"url": {
"type": "string",
"description": "Link for resolving the failure or completing the operation."
},
"data": {
"type": "object",
"required": [
"siteId",
"customDomains",
"publicationToken"
],
"properties": {
"siteId": {
"type": "string",
"description": "Native provider site identifier for this connection."
},
"customDomains": {
"type": "array",
"items": {
"type": "object",
"required": [
"id",
"url",
"lastPublished"
],
"properties": {
"id": {
"type": "string",
"description": "Identifier of this returned resource. Use it for subsequent reads or edits of the same resource."
},
"url": {
"type": "string",
"description": "URL returned for this resource or operation."
},
"lastPublished": {
"anyOf": [
{
"type": "null"
},
{
"type": "string"
}
]
}
}
}
},
"publicationToken": {
"type": "string"
}
},
"description": "Operation data; optional fields may be absent."
},
"error": {
"type": "string",
"description": "Why the operation failed."
},
"details": {
"type": "object",
"description": "Diagnostics keyed by errorCode."
},
"message": {
"type": "string",
"description": "Outcome or recovery instructions. Project selection means no action ran."
},
"success": {
"type": "boolean",
"description": "Operation success; on false inspect error/errorCode."
},
"upgrade": {
"type": "object",
"description": "Plan-upgrade guidance for an unavailable capability."
},
"category": {
"type": "string",
"description": "Failure category, such as invalid_input or plan_required."
},
"expected": {
"type": "boolean",
"description": "Whether this is an anticipated access, input, plan or state failure."
},
"projects": {
"type": "array",
"items": {
"type": "object",
"properties": {
"id": {
"type": "number",
"description": "Project ID for projectId."
},
"name": {
"type": "string",
"description": "Project name."
}
},
"description": "Accessible project."
},
"description": "Accessible project choices. Select a projectId and retry."
},
"errorCode": {
"type": "string",
"description": "Failure code for recovery."
},
"retryable": {
"type": "boolean",
"description": "Whether an unchanged request can be retried."
},
"statusCode": {
"type": "number",
"description": "HTTP-style failure status."
},
"executionTime": {
"type": "string",
"description": "Elapsed time in seconds, with an s suffix."
}
},
"description": "Operation result envelope."
}
Original tool metadata
{
"name": "get_webflow_site_publishing",
"title": "Get Webflow site publishing",
"description": "Read connected Webflow custom domains, last-published times and publicationToken before publishing. Requires sites:read. A timestamp is not proof of rendered image descriptions.",
"inputSchema": {
"type": "object",
"required": [
"projectPublishingId"
],
"properties": {
"context": {
"type": "string",
"maxLength": 120,
"description": "Short purpose of this call for the activity log. Exclude personal data and private source content."
},
"llm_model": {
"type": "string",
"maxLength": 128,
"description": "Use the exact model ID executing this call, from runtime/system context, for usage attribution. Supply it on every Atomic MCP tool call, including discovery and feedback, and update it if the model changes. Use the model ID rather than the client app name. If unavailable, omit it; never guess or ask the user."
},
"projectId": {
"type": "number",
"description": "Atomic project ID from list_projects. Omit to use the configured project; if asked to choose, select one of the accessible returned IDs."
},
"projectPublishingId": {
"type": "number",
"minimum": 1,
"description": "Atomic publishing connection ID from get_publishing_connections, not the provider site or post ID."
}
},
"additionalProperties": false
},
"outputSchema": {
"type": "object",
"required": [
"success"
],
"properties": {
"url": {
"type": "string",
"description": "Link for resolving the failure or completing the operation."
},
"data": {
"type": "object",
"required": [
"siteId",
"customDomains",
"publicationToken"
],
"properties": {
"siteId": {
"type": "string",
"description": "Native provider site identifier for this connection."
},
"customDomains": {
"type": "array",
"items": {
"type": "object",
"required": [
"id",
"url",
"lastPublished"
],
"properties": {
"id": {
"type": "string",
"description": "Identifier of this returned resource. Use it for subsequent reads or edits of the same resource."
},
"url": {
"type": "string",
"description": "URL returned for this resource or operation."
},
"lastPublished": {
"anyOf": [
{
"type": "null"
},
{
"type": "string"
}
]
}
}
}
},
"publicationToken": {
"type": "string"
}
},
"description": "Operation data; optional fields may be absent."
},
"error": {
"type": "string",
"description": "Why the operation failed."
},
"details": {
"type": "object",
"description": "Diagnostics keyed by errorCode."
},
"message": {
"type": "string",
"description": "Outcome or recovery instructions. Project selection means no action ran."
},
"success": {
"type": "boolean",
"description": "Operation success; on false inspect error/errorCode."
},
"upgrade": {
"type": "object",
"description": "Plan-upgrade guidance for an unavailable capability."
},
"category": {
"type": "string",
"description": "Failure category, such as invalid_input or plan_required."
},
"expected": {
"type": "boolean",
"description": "Whether this is an anticipated access, input, plan or state failure."
},
"projects": {
"type": "array",
"items": {
"type": "object",
"properties": {
"id": {
"type": "number",
"description": "Project ID for projectId."
},
"name": {
"type": "string",
"description": "Project name."
}
},
"description": "Accessible project."
},
"description": "Accessible project choices. Select a projectId and retry."
},
"errorCode": {
"type": "string",
"description": "Failure code for recovery."
},
"retryable": {
"type": "boolean",
"description": "Whether an unchanged request can be retried."
},
"statusCode": {
"type": "number",
"description": "HTTP-style failure status."
},
"executionTime": {
"type": "string",
"description": "Elapsed time in seconds, with an s suffix."
}
},
"description": "Operation result envelope."
},
"annotations": {
"readOnlyHint": true,
"openWorldHint": true,
"idempotentHint": true,
"destructiveHint": false
}
}
The title clearly communicates the tool’s action and subject. Keep it concise.
Description86/100
Retrieve one existing product, current optimization fields and store capabilities before drafting an update. Requires projectPublishingId and exactly one of productId or productUrl. Unsupported fields are null, not empty values.
The description explains the capability, when to use it, and what to expect.
Inputs84/100
Remove validation rules already expressed in this field’s schema; describe its meaning and usage instead.
projectPublishingId
Atomic publishing connection ID from get_publishing_connections, not the provider site or post ID.
Remove validation rules already expressed in this field’s schema; describe its meaning and usage instead.
seoPlugin
SEO plugin target. all updates every available supported plugin. Overrides the connection preference. Required for SEO writes when multiple plugins exist and no preference is saved.
Remove validation rules already expressed in this field’s schema; describe its meaning and usage instead.
parentProductId
Parent variable product ID when listing, reading or updating variations.
Clear enough to supply this argument.
productId
Existing WooCommerce product ID. Provide exactly one of productId or productUrl.
Remove validation rules already expressed in this field’s schema; describe its meaning and usage instead.
productUrl
Exact product URL within the selected store. Provide exactly one of productId or productUrl.
Remove validation rules already expressed in this field’s schema; describe its meaning and usage instead.
projectId
Atomic project ID from list_projects. Omit to use the configured project; if asked to choose, select one of the accessible returned IDs.
Clear enough to supply this argument.
context
Short purpose of this call for the activity log. Exclude personal data and private source content.
Remove validation rules already expressed in this field’s schema; describe its meaning and usage instead.
llm_model
Use the exact model ID executing this call, from runtime/system context, for usage attribution. Supply it on every Atomic MCP tool call, including discovery and feedback, and update it if the model changes. Use the model ID rather than the client app name. If unavailable, omit it; never guess or ask the user.
{
"type": "object",
"required": [
"success"
],
"properties": {
"url": {
"type": "string",
"description": "Link for resolving the failure or completing the operation."
},
"data": {
"type": "object",
"required": [
"projectPublishingId",
"product"
],
"properties": {
"product": {
"type": "object",
"required": [
"id",
"permalink",
"status",
"modifiedAt",
"seoPlugins",
"selectedSeoPlugins",
"fields",
"capabilities"
],
"properties": {
"id": {
"type": "number",
"description": "Identifier of this returned resource. Use it for subsequent reads or edits of the same resource."
},
"fields": {
"type": "object",
"properties": {},
"description": "Native field values or field-level results returned by the selected CMS operation."
},
"status": {
"type": "string",
"description": "Current saved or execution state reported by the operation."
},
"permalink": {
"type": "string",
"description": "Public CMS URL assigned to this content item; publication status determines whether it is live."
},
"modifiedAt": {
"type": "string",
"description": "Last modification timestamp reported by the connected CMS."
},
"seoPlugins": {
"type": "object",
"properties": {},
"description": "SEO plugin availability and support reported by the connected CMS."
},
"capabilities": {
"type": "object",
"properties": {},
"description": "Operations and fields supported by this connected provider or resource."
},
"selectedSeoPlugins": {
"type": "array",
"items": {
"enum": [
"squirrly",
"rankMath",
"yoast"
],
"type": "string"
},
"description": "SEO plugins selected for this CMS operation."
}
}
},
"projectPublishingId": {
"type": "number",
"description": "Atomic publishing connection used for this native CMS operation."
}
},
"description": "Operation data; optional fields may be absent."
},
"error": {
"type": "string",
"description": "Why the operation failed."
},
"details": {
"type": "object",
"description": "Diagnostics keyed by errorCode."
},
"message": {
"type": "string",
"description": "Outcome or recovery instructions. Project selection means no action ran."
},
"success": {
"type": "boolean",
"description": "Operation success; on false inspect error/errorCode."
},
"upgrade": {
"type": "object",
"description": "Plan-upgrade guidance for an unavailable capability."
},
"category": {
"type": "string",
"description": "Failure category, such as invalid_input or plan_required."
},
"expected": {
"type": "boolean",
"description": "Whether this is an anticipated access, input, plan or state failure."
},
"projects": {
"type": "array",
"items": {
"type": "object",
"properties": {
"id": {
"type": "number",
"description": "Project ID for projectId."
},
"name": {
"type": "string",
"description": "Project name."
}
},
"description": "Accessible project."
},
"description": "Accessible project choices. Select a projectId and retry."
},
"errorCode": {
"type": "string",
"description": "Failure code for recovery."
},
"retryable": {
"type": "boolean",
"description": "Whether an unchanged request can be retried."
},
"statusCode": {
"type": "number",
"description": "HTTP-style failure status."
},
"executionTime": {
"type": "string",
"description": "Elapsed time in seconds, with an s suffix."
}
},
"description": "Operation result envelope."
}
Original tool metadata
{
"name": "get_woocommerce_product",
"title": "Get WooCommerce product",
"description": "Retrieve one existing product, current optimization fields and store capabilities before drafting an update. Requires projectPublishingId and exactly one of productId or productUrl. Unsupported fields are null, not empty values.",
"inputSchema": {
"type": "object",
"required": [
"projectPublishingId"
],
"properties": {
"context": {
"type": "string",
"maxLength": 120,
"description": "Short purpose of this call for the activity log. Exclude personal data and private source content."
},
"llm_model": {
"type": "string",
"maxLength": 128,
"description": "Use the exact model ID executing this call, from runtime/system context, for usage attribution. Supply it on every Atomic MCP tool call, including discovery and feedback, and update it if the model changes. Use the model ID rather than the client app name. If unavailable, omit it; never guess or ask the user."
},
"productId": {
"type": "number",
"minimum": 1,
"description": "Existing WooCommerce product ID. Provide exactly one of productId or productUrl."
},
"projectId": {
"type": "number",
"description": "Atomic project ID from list_projects. Omit to use the configured project; if asked to choose, select one of the accessible returned IDs."
},
"seoPlugin": {
"enum": [
"squirrly",
"rankMath",
"yoast",
"all"
],
"type": "string",
"description": "SEO plugin target. all updates every available supported plugin. Overrides the connection preference. Required for SEO writes when multiple plugins exist and no preference is saved."
},
"productUrl": {
"type": "string",
"format": "uri",
"description": "Exact product URL within the selected store. Provide exactly one of productId or productUrl."
},
"parentProductId": {
"type": "number",
"minimum": 1,
"description": "Parent variable product ID when listing, reading or updating variations."
},
"projectPublishingId": {
"type": "number",
"minimum": 1,
"description": "Atomic publishing connection ID from get_publishing_connections, not the provider site or post ID."
}
},
"additionalProperties": false
},
"outputSchema": {
"type": "object",
"required": [
"success"
],
"properties": {
"url": {
"type": "string",
"description": "Link for resolving the failure or completing the operation."
},
"data": {
"type": "object",
"required": [
"projectPublishingId",
"product"
],
"properties": {
"product": {
"type": "object",
"required": [
"id",
"permalink",
"status",
"modifiedAt",
"seoPlugins",
"selectedSeoPlugins",
"fields",
"capabilities"
],
"properties": {
"id": {
"type": "number",
"description": "Identifier of this returned resource. Use it for subsequent reads or edits of the same resource."
},
"fields": {
"type": "object",
"properties": {},
"description": "Native field values or field-level results returned by the selected CMS operation."
},
"status": {
"type": "string",
"description": "Current saved or execution state reported by the operation."
},
"permalink": {
"type": "string",
"description": "Public CMS URL assigned to this content item; publication status determines whether it is live."
},
"modifiedAt": {
"type": "string",
"description": "Last modification timestamp reported by the connected CMS."
},
"seoPlugins": {
"type": "object",
"properties": {},
"description": "SEO plugin availability and support reported by the connected CMS."
},
"capabilities": {
"type": "object",
"properties": {},
"description": "Operations and fields supported by this connected provider or resource."
},
"selectedSeoPlugins": {
"type": "array",
"items": {
"enum": [
"squirrly",
"rankMath",
"yoast"
],
"type": "string"
},
"description": "SEO plugins selected for this CMS operation."
}
}
},
"projectPublishingId": {
"type": "number",
"description": "Atomic publishing connection used for this native CMS operation."
}
},
"description": "Operation data; optional fields may be absent."
},
"error": {
"type": "string",
"description": "Why the operation failed."
},
"details": {
"type": "object",
"description": "Diagnostics keyed by errorCode."
},
"message": {
"type": "string",
"description": "Outcome or recovery instructions. Project selection means no action ran."
},
"success": {
"type": "boolean",
"description": "Operation success; on false inspect error/errorCode."
},
"upgrade": {
"type": "object",
"description": "Plan-upgrade guidance for an unavailable capability."
},
"category": {
"type": "string",
"description": "Failure category, such as invalid_input or plan_required."
},
"expected": {
"type": "boolean",
"description": "Whether this is an anticipated access, input, plan or state failure."
},
"projects": {
"type": "array",
"items": {
"type": "object",
"properties": {
"id": {
"type": "number",
"description": "Project ID for projectId."
},
"name": {
"type": "string",
"description": "Project name."
}
},
"description": "Accessible project."
},
"description": "Accessible project choices. Select a projectId and retry."
},
"errorCode": {
"type": "string",
"description": "Failure code for recovery."
},
"retryable": {
"type": "boolean",
"description": "Whether an unchanged request can be retried."
},
"statusCode": {
"type": "number",
"description": "HTTP-style failure status."
},
"executionTime": {
"type": "string",
"description": "Elapsed time in seconds, with an s suffix."
}
},
"description": "Operation result envelope."
},
"annotations": {
"readOnlyHint": true,
"openWorldHint": true,
"idempotentHint": true,
"destructiveHint": false
}
}
The title clearly communicates the tool’s action and subject. Keep it concise.
Description72/100
Inspect active builders, SEO field schemas, post types and current-user permissions. Entity reads still check object-specific permissions.
Describe the returned information so the agent knows whether it will answer the request.
Inputs94/100
Remove validation rules already expressed in this field’s schema; describe its meaning and usage instead.
projectPublishingId
Atomic publishing connection ID from get_publishing_connections, not the provider site or post ID.
Clear enough to supply this argument.
widgetType
Optional registered widget name for detailed controls; request one widget at a time
Clear enough to supply this argument.
projectId
Atomic project ID from list_projects. Omit to use the configured project; if asked to choose, select one of the accessible returned IDs.
Clear enough to supply this argument.
context
Short purpose of this call for the activity log. Exclude personal data and private source content.
Remove validation rules already expressed in this field’s schema; describe its meaning and usage instead.
llm_model
Use the exact model ID executing this call, from runtime/system context, for usage attribution. Supply it on every Atomic MCP tool call, including discovery and feedback, and update it if the model changes. Use the model ID rather than the client app name. If unavailable, omit it; never guess or ask the user.
The title clearly communicates the tool’s action and subject. Keep it concise.
Description95/100
Get an existing WordPress content item by exact URL or ID. Requires projectPublishingId, contentType (registered post-type slug), and exactly one of contentId or contentUrl. Returns current native and SEO fields and field write permissions for a targeted proposal. Does not require WooCommerce.
The description explains the capability, when to use it, and what to expect.
Inputs94/100
Remove validation rules already expressed in this field’s schema; describe its meaning and usage instead.
seoPlugin
Optional for native edits such as content, title and links; omit for content-only changes. all targets every available supported plugin; explicit selection overrides connection preference. Required for SEO writes when multiple plugins exist without a preference.
Clear enough to supply this argument.
projectPublishingId
Atomic publishing connection ID from get_publishing_connections, not the provider site or post ID.
Clear enough to supply this argument.
contentType
Registered WordPress post-type slug from get_wordpress_capabilities.postTypes, including custom types. Use the registry key, not restBase.
Clear enough to supply this argument.
contentId
Existing WordPress content ID. Provide exactly one of contentId or contentUrl.
Remove validation rules already expressed in this field’s schema; describe its meaning and usage instead.
contentUrl
Exact permalink on the connected site. Provide exactly one of contentId or contentUrl.
Clear enough to supply this argument.
projectId
Atomic project ID from list_projects. Omit to use the configured project; if asked to choose, select one of the accessible returned IDs.
Clear enough to supply this argument.
context
Short purpose of this call for the activity log. Exclude personal data and private source content.
Remove validation rules already expressed in this field’s schema; describe its meaning and usage instead.
llm_model
Use the exact model ID executing this call, from runtime/system context, for usage attribution. Supply it on every Atomic MCP tool call, including discovery and feedback, and update it if the model changes. Use the model ID rather than the client app name. If unavailable, omit it; never guess or ask the user.
{
"type": "object",
"required": [
"success"
],
"properties": {
"url": {
"type": "string",
"description": "Link for resolving the failure or completing the operation."
},
"data": {
"type": "object",
"required": [
"projectPublishingId",
"content"
],
"properties": {
"content": {
"type": "object",
"required": [
"id",
"contentType",
"title",
"permalink",
"status",
"modifiedAt",
"fields",
"seoPlugins",
"selectedSeoPlugins",
"capabilities"
],
"properties": {
"id": {
"type": "number",
"description": "Identifier of this returned resource. Use it for subsequent reads or edits of the same resource."
},
"title": {
"type": "string",
"description": "Display or content title of this returned item."
},
"fields": {
"type": "object",
"properties": {},
"description": "Native field values or field-level results returned by the selected CMS operation.",
"additionalProperties": {
"anyOf": [
{
"type": "null"
},
{
"type": "string"
},
{
"type": "number"
},
{
"type": "boolean"
},
{
"type": "array",
"items": {
"anyOf": [
{
"type": "null"
},
{
"type": "string"
},
{
"type": "number"
},
{
"type": "boolean"
},
{
"type": "array",
"items": {
"description": "Nested operation-specific JSON value."
}
},
{
"type": "object",
"description": "Nested operation-specific fields."
}
]
}
},
{
"type": "object",
"description": "Nested operation-specific fields."
}
]
}
},
"status": {
"type": "string",
"description": "Current saved or execution state reported by the operation."
},
"permalink": {
"type": "string",
"description": "Public CMS URL assigned to this content item; publication status determines whether it is live."
},
"modifiedAt": {
"type": "string",
"description": "Last modification timestamp reported by the connected CMS."
},
"seoPlugins": {
"type": "object",
"properties": {},
"description": "SEO plugin availability and support reported by the connected CMS."
},
"contentType": {
"type": "string",
"description": "Content kind returned by the operation, such as a native CMS post type or a file MIME type."
},
"capabilities": {
"type": "object",
"properties": {},
"description": "Operations and fields supported by this connected provider or resource.",
"additionalProperties": {
"type": "object",
"description": "Nested operation-specific fields."
}
},
"selectedSeoPlugins": {
"type": "array",
"items": {
"enum": [
"squirrly",
"rankMath",
"yoast"
],
"type": "string"
},
"description": "SEO plugins selected for this CMS operation."
}
},
"description": "Returned content body in the format described by the containing resource."
},
"projectPublishingId": {
"type": "number",
"description": "Atomic publishing connection used for this native CMS operation."
}
},
"description": "Operation data; optional fields may be absent."
},
"error": {
"type": "string",
"description": "Why the operation failed."
},
"details": {
"type": "object",
"description": "Diagnostics keyed by errorCode."
},
"message": {
"type": "string",
"description": "Outcome or recovery instructions. Project selection means no action ran."
},
"success": {
"type": "boolean",
"description": "Operation success; on false inspect error/errorCode."
},
"upgrade": {
"type": "object",
"description": "Plan-upgrade guidance for an unavailable capability."
},
"category": {
"type": "string",
"description": "Failure category, such as invalid_input or plan_required."
},
"expected": {
"type": "boolean",
"description": "Whether this is an anticipated access, input, plan or state failure."
},
"projects": {
"type": "array",
"items": {
"type": "object",
"properties": {
"id": {
"type": "number",
"description": "Project ID for projectId."
},
"name": {
"type": "string",
"description": "Project name."
}
},
"description": "Accessible project."
},
"description": "Accessible project choices. Select a projectId and retry."
},
"errorCode": {
"type": "string",
"description": "Failure code for recovery."
},
"retryable": {
"type": "boolean",
"description": "Whether an unchanged request can be retried."
},
"statusCode": {
"type": "number",
"description": "HTTP-style failure status."
},
"executionTime": {
"type": "string",
"description": "Elapsed time in seconds, with an s suffix."
}
},
"description": "Operation result envelope."
}
Original tool metadata
{
"name": "get_wordpress_content",
"title": "Get WordPress content",
"description": "Get an existing WordPress content item by exact URL or ID. Requires projectPublishingId, contentType (registered post-type slug), and exactly one of contentId or contentUrl. Returns current native and SEO fields and field write permissions for a targeted proposal. Does not require WooCommerce.",
"inputSchema": {
"type": "object",
"required": [
"projectPublishingId",
"contentType"
],
"properties": {
"context": {
"type": "string",
"maxLength": 120,
"description": "Short purpose of this call for the activity log. Exclude personal data and private source content."
},
"contentId": {
"type": "number",
"minimum": 1,
"description": "Existing WordPress content ID. Provide exactly one of contentId or contentUrl."
},
"llm_model": {
"type": "string",
"maxLength": 128,
"description": "Use the exact model ID executing this call, from runtime/system context, for usage attribution. Supply it on every Atomic MCP tool call, including discovery and feedback, and update it if the model changes. Use the model ID rather than the client app name. If unavailable, omit it; never guess or ask the user."
},
"projectId": {
"type": "number",
"description": "Atomic project ID from list_projects. Omit to use the configured project; if asked to choose, select one of the accessible returned IDs."
},
"seoPlugin": {
"enum": [
"rankMath",
"squirrly",
"yoast",
"all"
],
"type": "string",
"description": "Optional for native edits such as content, title and links; omit for content-only changes. all targets every available supported plugin; explicit selection overrides connection preference. Required for SEO writes when multiple plugins exist without a preference."
},
"contentUrl": {
"type": "string",
"format": "uri",
"description": "Exact permalink on the connected site. Provide exactly one of contentId or contentUrl."
},
"contentType": {
"type": "string",
"pattern": "^[a-z0-9_-]+$",
"description": "Registered WordPress post-type slug from get_wordpress_capabilities.postTypes, including custom types. Use the registry key, not restBase."
},
"projectPublishingId": {
"type": "number",
"minimum": 1,
"description": "Atomic publishing connection ID from get_publishing_connections, not the provider site or post ID."
}
},
"additionalProperties": false
},
"outputSchema": {
"type": "object",
"required": [
"success"
],
"properties": {
"url": {
"type": "string",
"description": "Link for resolving the failure or completing the operation."
},
"data": {
"type": "object",
"required": [
"projectPublishingId",
"content"
],
"properties": {
"content": {
"type": "object",
"required": [
"id",
"contentType",
"title",
"permalink",
"status",
"modifiedAt",
"fields",
"seoPlugins",
"selectedSeoPlugins",
"capabilities"
],
"properties": {
"id": {
"type": "number",
"description": "Identifier of this returned resource. Use it for subsequent reads or edits of the same resource."
},
"title": {
"type": "string",
"description": "Display or content title of this returned item."
},
"fields": {
"type": "object",
"properties": {},
"description": "Native field values or field-level results returned by the selected CMS operation.",
"additionalProperties": {
"anyOf": [
{
"type": "null"
},
{
"type": "string"
},
{
"type": "number"
},
{
"type": "boolean"
},
{
"type": "array",
"items": {
"anyOf": [
{
"type": "null"
},
{
"type": "string"
},
{
"type": "number"
},
{
"type": "boolean"
},
{
"type": "array",
"items": {
"description": "Nested operation-specific JSON value."
}
},
{
"type": "object",
"description": "Nested operation-specific fields."
}
]
}
},
{
"type": "object",
"description": "Nested operation-specific fields."
}
]
}
},
"status": {
"type": "string",
"description": "Current saved or execution state reported by the operation."
},
"permalink": {
"type": "string",
"description": "Public CMS URL assigned to this content item; publication status determines whether it is live."
},
"modifiedAt": {
"type": "string",
"description": "Last modification timestamp reported by the connected CMS."
},
"seoPlugins": {
"type": "object",
"properties": {},
"description": "SEO plugin availability and support reported by the connected CMS."
},
"contentType": {
"type": "string",
"description": "Content kind returned by the operation, such as a native CMS post type or a file MIME type."
},
"capabilities": {
"type": "object",
"properties": {},
"description": "Operations and fields supported by this connected provider or resource.",
"additionalProperties": {
"type": "object",
"description": "Nested operation-specific fields."
}
},
"selectedSeoPlugins": {
"type": "array",
"items": {
"enum": [
"squirrly",
"rankMath",
"yoast"
],
"type": "string"
},
"description": "SEO plugins selected for this CMS operation."
}
},
"description": "Returned content body in the format described by the containing resource."
},
"projectPublishingId": {
"type": "number",
"description": "Atomic publishing connection used for this native CMS operation."
}
},
"description": "Operation data; optional fields may be absent."
},
"error": {
"type": "string",
"description": "Why the operation failed."
},
"details": {
"type": "object",
"description": "Diagnostics keyed by errorCode."
},
"message": {
"type": "string",
"description": "Outcome or recovery instructions. Project selection means no action ran."
},
"success": {
"type": "boolean",
"description": "Operation success; on false inspect error/errorCode."
},
"upgrade": {
"type": "object",
"description": "Plan-upgrade guidance for an unavailable capability."
},
"category": {
"type": "string",
"description": "Failure category, such as invalid_input or plan_required."
},
"expected": {
"type": "boolean",
"description": "Whether this is an anticipated access, input, plan or state failure."
},
"projects": {
"type": "array",
"items": {
"type": "object",
"properties": {
"id": {
"type": "number",
"description": "Project ID for projectId."
},
"name": {
"type": "string",
"description": "Project name."
}
},
"description": "Accessible project."
},
"description": "Accessible project choices. Select a projectId and retry."
},
"errorCode": {
"type": "string",
"description": "Failure code for recovery."
},
"retryable": {
"type": "boolean",
"description": "Whether an unchanged request can be retried."
},
"statusCode": {
"type": "number",
"description": "HTTP-style failure status."
},
"executionTime": {
"type": "string",
"description": "Elapsed time in seconds, with an s suffix."
}
},
"description": "Operation result envelope."
},
"annotations": {
"readOnlyHint": true,
"openWorldHint": true,
"idempotentHint": true,
"destructiveHint": false
}
}
The title clearly communicates the tool’s action and subject. Keep it concise.
Description91/100
Inspect native REST creation fields, SEO bridge schemas and required arguments before creating content or commerce records.
Use before creating native records to discover accepted fields and requirements for the connected site. This inspects capabilities; it does not create a post, product, term or asset.
The description explains the capability, when to use it, and what to expect.
Inputs85/100
Remove validation rules already expressed in this field’s schema; describe its meaning and usage instead.
projectPublishingId
Atomic publishing connection ID from get_publishing_connections, not the provider site or post ID.
Remove validation rules already expressed in this field’s schema; describe its meaning and usage instead.
target
Registered WordPress post-type slug, or media, product or attribute for dedicated management schemas.
Clear enough to supply this argument.
projectId
Atomic project ID from list_projects. Omit to use the configured project; if asked to choose, select one of the accessible returned IDs.
Clear enough to supply this argument.
context
Short purpose of this call for the activity log. Exclude personal data and private source content.
Remove validation rules already expressed in this field’s schema; describe its meaning and usage instead.
llm_model
Use the exact model ID executing this call, from runtime/system context, for usage attribution. Supply it on every Atomic MCP tool call, including discovery and feedback, and update it if the model changes. Use the model ID rather than the client app name. If unavailable, omit it; never guess or ask the user.
Remove validation rules already expressed in this field’s schema; describe its meaning and usage instead.
{
"type": "object",
"required": [
"success"
],
"properties": {
"url": {
"type": "string",
"description": "Link for resolving the failure or completing the operation."
},
"data": {
"type": "object",
"required": [
"data"
],
"properties": {
"data": {
"type": "object",
"properties": {},
"description": "Result items or operation data inside this returned payload. Pagination fields describe only this result page.",
"additionalProperties": {
"description": "JSON returned by the connected provider or selected operation; its fields depend on that operation."
}
},
"total": {
"type": "number",
"description": "Total number of matching items across all result pages."
},
"nextPage": {
"anyOf": [
{
"type": "null"
},
{
"type": "number"
}
],
"description": "Next page to request when more results exist; use the returned value rather than constructing a cursor."
},
"replayed": {
"type": "boolean",
"description": "Whether this response reuses the recorded outcome of an earlier attempt rather than performing a new write."
}
},
"description": "Operation data; optional fields may be absent."
},
"error": {
"type": "string",
"description": "Why the operation failed."
},
"details": {
"type": "object",
"description": "Diagnostics keyed by errorCode."
},
"message": {
"type": "string",
"description": "Outcome or recovery instructions. Project selection means no action ran."
},
"success": {
"type": "boolean",
"description": "Operation success; on false inspect error/errorCode."
},
"upgrade": {
"type": "object",
"description": "Plan-upgrade guidance for an unavailable capability."
},
"category": {
"type": "string",
"description": "Failure category, such as invalid_input or plan_required."
},
"expected": {
"type": "boolean",
"description": "Whether this is an anticipated access, input, plan or state failure."
},
"projects": {
"type": "array",
"items": {
"type": "object",
"properties": {
"id": {
"type": "number",
"description": "Project ID for projectId."
},
"name": {
"type": "string",
"description": "Project name."
}
},
"description": "Accessible project."
},
"description": "Accessible project choices. Select a projectId and retry."
},
"errorCode": {
"type": "string",
"description": "Failure code for recovery."
},
"retryable": {
"type": "boolean",
"description": "Whether an unchanged request can be retried."
},
"statusCode": {
"type": "number",
"description": "HTTP-style failure status."
},
"executionTime": {
"type": "string",
"description": "Elapsed time in seconds, with an s suffix."
}
},
"description": "Operation result envelope."
}
Original tool metadata
{
"name": "get_wordpress_creation_schema",
"title": "Get WordPress creation schema",
"description": "Inspect native REST creation fields, SEO bridge schemas and required arguments before creating content or commerce records.\n\nUse before creating native records to discover accepted fields and requirements for the connected site. This inspects capabilities; it does not create a post, product, term or asset.",
"inputSchema": {
"type": "object",
"required": [
"projectPublishingId",
"target"
],
"properties": {
"target": {
"type": "string",
"pattern": "^[a-z0-9_-]+$",
"description": "Registered WordPress post-type slug, or media, product or attribute for dedicated management schemas."
},
"context": {
"type": "string",
"maxLength": 120,
"description": "Short purpose of this call for the activity log. Exclude personal data and private source content."
},
"llm_model": {
"type": "string",
"maxLength": 128,
"description": "Use the exact model ID executing this call, from runtime/system context, for usage attribution. Supply it on every Atomic MCP tool call, including discovery and feedback, and update it if the model changes. Use the model ID rather than the client app name. If unavailable, omit it; never guess or ask the user."
},
"projectId": {
"type": "number",
"description": "Atomic project ID from list_projects. Omit to use the configured project; if asked to choose, select one of the accessible returned IDs."
},
"projectPublishingId": {
"type": "number",
"minimum": 1,
"description": "Atomic publishing connection ID from get_publishing_connections, not the provider site or post ID."
}
},
"additionalProperties": false
},
"outputSchema": {
"type": "object",
"required": [
"success"
],
"properties": {
"url": {
"type": "string",
"description": "Link for resolving the failure or completing the operation."
},
"data": {
"type": "object",
"required": [
"data"
],
"properties": {
"data": {
"type": "object",
"properties": {},
"description": "Result items or operation data inside this returned payload. Pagination fields describe only this result page.",
"additionalProperties": {
"description": "JSON returned by the connected provider or selected operation; its fields depend on that operation."
}
},
"total": {
"type": "number",
"description": "Total number of matching items across all result pages."
},
"nextPage": {
"anyOf": [
{
"type": "null"
},
{
"type": "number"
}
],
"description": "Next page to request when more results exist; use the returned value rather than constructing a cursor."
},
"replayed": {
"type": "boolean",
"description": "Whether this response reuses the recorded outcome of an earlier attempt rather than performing a new write."
}
},
"description": "Operation data; optional fields may be absent."
},
"error": {
"type": "string",
"description": "Why the operation failed."
},
"details": {
"type": "object",
"description": "Diagnostics keyed by errorCode."
},
"message": {
"type": "string",
"description": "Outcome or recovery instructions. Project selection means no action ran."
},
"success": {
"type": "boolean",
"description": "Operation success; on false inspect error/errorCode."
},
"upgrade": {
"type": "object",
"description": "Plan-upgrade guidance for an unavailable capability."
},
"category": {
"type": "string",
"description": "Failure category, such as invalid_input or plan_required."
},
"expected": {
"type": "boolean",
"description": "Whether this is an anticipated access, input, plan or state failure."
},
"projects": {
"type": "array",
"items": {
"type": "object",
"properties": {
"id": {
"type": "number",
"description": "Project ID for projectId."
},
"name": {
"type": "string",
"description": "Project name."
}
},
"description": "Accessible project."
},
"description": "Accessible project choices. Select a projectId and retry."
},
"errorCode": {
"type": "string",
"description": "Failure code for recovery."
},
"retryable": {
"type": "boolean",
"description": "Whether an unchanged request can be retried."
},
"statusCode": {
"type": "number",
"description": "HTTP-style failure status."
},
"executionTime": {
"type": "string",
"description": "Elapsed time in seconds, with an s suffix."
}
},
"description": "Operation result envelope."
},
"annotations": {
"readOnlyHint": true,
"openWorldHint": true,
"idempotentHint": true,
"destructiveHint": false
}
}
The title clearly communicates the tool’s action and subject. Keep it concise.
Description74/100
Read Elementor element trees and revision tokens before editing. Preserve dynamic and global bindings.
The description explains the capability, when to use it, and what to expect.
Inputs95/100
Remove validation rules already expressed in this field’s schema; describe its meaning and usage instead.
projectPublishingId
Atomic publishing connection ID from get_publishing_connections, not the provider site or post ID.
Clear enough to supply this argument.
documentId
Native Elementor document identifier from get_wordpress_elementor_document or the template listing.
Clear enough to supply this argument.
projectId
Atomic project ID from list_projects. Omit to use the configured project; if asked to choose, select one of the accessible returned IDs.
Clear enough to supply this argument.
context
Short purpose of this call for the activity log. Exclude personal data and private source content.
Remove validation rules already expressed in this field’s schema; describe its meaning and usage instead.
llm_model
Use the exact model ID executing this call, from runtime/system context, for usage attribution. Supply it on every Atomic MCP tool call, including discovery and feedback, and update it if the model changes. Use the model ID rather than the client app name. If unavailable, omit it; never guess or ask the user.
{
"type": "object",
"required": [
"success"
],
"properties": {
"url": {
"type": "string",
"description": "Link for resolving the failure or completing the operation."
},
"data": {
"type": "object",
"required": [
"pageSettings",
"shared",
"revision",
"status",
"link",
"id",
"title",
"elements"
],
"properties": {
"id": {
"type": "number",
"description": "Identifier of this returned resource. Use it for subsequent reads or edits of the same resource."
},
"link": {
"type": "string"
},
"title": {
"type": "string",
"description": "Display or content title of this returned item."
},
"shared": {
"type": "boolean"
},
"status": {
"type": "string",
"description": "Current saved or execution state reported by the operation."
},
"elements": {
"type": "array",
"items": {
"type": "object",
"required": [
"id",
"elType",
"settings"
],
"properties": {
"id": {
"type": "string",
"description": "Identifier of this returned resource. Use it for subsequent reads or edits of the same resource."
},
"elType": {
"type": "string"
},
"elements": {
"type": "array",
"items": {
"type": "object",
"description": "Nested operation-specific fields."
}
},
"settings": {
"type": "object",
"description": "Nested operation-specific fields."
},
"widgetType": {
"type": "string"
}
},
"additionalProperties": {
"description": "JSON returned by the connected provider or selected operation; its fields depend on that operation."
}
}
},
"revision": {
"type": "string",
"description": "Current saved revision, to be supplied as the expected revision on a subsequent edit."
},
"pageSettings": {
"type": "object",
"properties": {},
"additionalProperties": {
"description": "JSON returned by the connected provider or selected operation; its fields depend on that operation."
}
}
},
"description": "Operation data; optional fields may be absent."
},
"error": {
"type": "string",
"description": "Why the operation failed."
},
"details": {
"type": "object",
"description": "Diagnostics keyed by errorCode."
},
"message": {
"type": "string",
"description": "Outcome or recovery instructions. Project selection means no action ran."
},
"success": {
"type": "boolean",
"description": "Operation success; on false inspect error/errorCode."
},
"upgrade": {
"type": "object",
"description": "Plan-upgrade guidance for an unavailable capability."
},
"category": {
"type": "string",
"description": "Failure category, such as invalid_input or plan_required."
},
"expected": {
"type": "boolean",
"description": "Whether this is an anticipated access, input, plan or state failure."
},
"projects": {
"type": "array",
"items": {
"type": "object",
"properties": {
"id": {
"type": "number",
"description": "Project ID for projectId."
},
"name": {
"type": "string",
"description": "Project name."
}
},
"description": "Accessible project."
},
"description": "Accessible project choices. Select a projectId and retry."
},
"errorCode": {
"type": "string",
"description": "Failure code for recovery."
},
"retryable": {
"type": "boolean",
"description": "Whether an unchanged request can be retried."
},
"statusCode": {
"type": "number",
"description": "HTTP-style failure status."
},
"executionTime": {
"type": "string",
"description": "Elapsed time in seconds, with an s suffix."
}
},
"description": "Operation result envelope."
}
Original tool metadata
{
"name": "get_wordpress_elementor_document",
"title": "Get WordPress elementor document",
"description": "Read Elementor element trees and revision tokens before editing. Preserve dynamic and global bindings.",
"inputSchema": {
"type": "object",
"required": [
"projectPublishingId",
"documentId"
],
"properties": {
"context": {
"type": "string",
"maxLength": 120,
"description": "Short purpose of this call for the activity log. Exclude personal data and private source content."
},
"llm_model": {
"type": "string",
"maxLength": 128,
"description": "Use the exact model ID executing this call, from runtime/system context, for usage attribution. Supply it on every Atomic MCP tool call, including discovery and feedback, and update it if the model changes. Use the model ID rather than the client app name. If unavailable, omit it; never guess or ask the user."
},
"projectId": {
"type": "number",
"description": "Atomic project ID from list_projects. Omit to use the configured project; if asked to choose, select one of the accessible returned IDs."
},
"documentId": {
"type": "number",
"minimum": 1,
"description": "Native Elementor document identifier from get_wordpress_elementor_document or the template listing."
},
"projectPublishingId": {
"type": "number",
"minimum": 1,
"description": "Atomic publishing connection ID from get_publishing_connections, not the provider site or post ID."
}
},
"additionalProperties": false
},
"outputSchema": {
"type": "object",
"required": [
"success"
],
"properties": {
"url": {
"type": "string",
"description": "Link for resolving the failure or completing the operation."
},
"data": {
"type": "object",
"required": [
"pageSettings",
"shared",
"revision",
"status",
"link",
"id",
"title",
"elements"
],
"properties": {
"id": {
"type": "number",
"description": "Identifier of this returned resource. Use it for subsequent reads or edits of the same resource."
},
"link": {
"type": "string"
},
"title": {
"type": "string",
"description": "Display or content title of this returned item."
},
"shared": {
"type": "boolean"
},
"status": {
"type": "string",
"description": "Current saved or execution state reported by the operation."
},
"elements": {
"type": "array",
"items": {
"type": "object",
"required": [
"id",
"elType",
"settings"
],
"properties": {
"id": {
"type": "string",
"description": "Identifier of this returned resource. Use it for subsequent reads or edits of the same resource."
},
"elType": {
"type": "string"
},
"elements": {
"type": "array",
"items": {
"type": "object",
"description": "Nested operation-specific fields."
}
},
"settings": {
"type": "object",
"description": "Nested operation-specific fields."
},
"widgetType": {
"type": "string"
}
},
"additionalProperties": {
"description": "JSON returned by the connected provider or selected operation; its fields depend on that operation."
}
}
},
"revision": {
"type": "string",
"description": "Current saved revision, to be supplied as the expected revision on a subsequent edit."
},
"pageSettings": {
"type": "object",
"properties": {},
"additionalProperties": {
"description": "JSON returned by the connected provider or selected operation; its fields depend on that operation."
}
}
},
"description": "Operation data; optional fields may be absent."
},
"error": {
"type": "string",
"description": "Why the operation failed."
},
"details": {
"type": "object",
"description": "Diagnostics keyed by errorCode."
},
"message": {
"type": "string",
"description": "Outcome or recovery instructions. Project selection means no action ran."
},
"success": {
"type": "boolean",
"description": "Operation success; on false inspect error/errorCode."
},
"upgrade": {
"type": "object",
"description": "Plan-upgrade guidance for an unavailable capability."
},
"category": {
"type": "string",
"description": "Failure category, such as invalid_input or plan_required."
},
"expected": {
"type": "boolean",
"description": "Whether this is an anticipated access, input, plan or state failure."
},
"projects": {
"type": "array",
"items": {
"type": "object",
"properties": {
"id": {
"type": "number",
"description": "Project ID for projectId."
},
"name": {
"type": "string",
"description": "Project name."
}
},
"description": "Accessible project."
},
"description": "Accessible project choices. Select a projectId and retry."
},
"errorCode": {
"type": "string",
"description": "Failure code for recovery."
},
"retryable": {
"type": "boolean",
"description": "Whether an unchanged request can be retried."
},
"statusCode": {
"type": "number",
"description": "HTTP-style failure status."
},
"executionTime": {
"type": "string",
"description": "Elapsed time in seconds, with an s suffix."
}
},
"description": "Operation result envelope."
},
"annotations": {
"readOnlyHint": true,
"openWorldHint": true,
"idempotentHint": true,
"destructiveHint": false
}
}
The title clearly communicates the tool’s action and subject. Keep it concise.
Description87/100
Read one media record including raw editable metadata.
Use an ID from list_wordpress_media to read editable metadata before update_wordpress_media. Reading a library record does not verify the rendered image on a public page.
The description explains the capability, when to use it, and what to expect.
Inputs95/100
Remove validation rules already expressed in this field’s schema; describe its meaning and usage instead.
projectPublishingId
Atomic publishing connection ID from get_publishing_connections, not the provider site or post ID.
Clear enough to supply this argument.
id
Native WordPress media ID from list_wordpress_media.
Clear enough to supply this argument.
projectId
Atomic project ID from list_projects. Omit to use the configured project; if asked to choose, select one of the accessible returned IDs.
Clear enough to supply this argument.
context
Short purpose of this call for the activity log. Exclude personal data and private source content.
Remove validation rules already expressed in this field’s schema; describe its meaning and usage instead.
llm_model
Use the exact model ID executing this call, from runtime/system context, for usage attribution. Supply it on every Atomic MCP tool call, including discovery and feedback, and update it if the model changes. Use the model ID rather than the client app name. If unavailable, omit it; never guess or ask the user.
Align the output schema with the tool’s documented result.
View output schema
{
"type": "object",
"required": [
"success"
],
"properties": {
"url": {
"type": "string",
"description": "Link for resolving the failure or completing the operation."
},
"data": {
"type": "object",
"required": [
"data"
],
"properties": {
"data": {
"type": "object",
"required": [
"id"
],
"properties": {
"id": {
"type": "number",
"description": "Identifier of this returned resource. Use it for subsequent reads or edits of the same resource."
},
"link": {
"type": "string"
},
"name": {
"type": "string",
"description": "Human-readable name of this resource."
},
"slug": {
"type": "string",
"description": "Saved URL slug or native CMS slug of this item."
},
"type": {
"type": "string",
"description": "Kind of the returned item; determines how its operation-specific fields should be interpreted."
},
"count": {
"type": "number",
"description": "Number of records reported by the provider for this group."
},
"title": {
"type": "object",
"properties": {
"raw": {
"type": "string"
},
"rendered": {
"type": "string"
}
},
"description": "Display or content title of this returned item."
},
"parent": {
"type": "number",
"description": "Native parent record ID; zero denotes the provider root when applicable."
},
"status": {
"type": "string",
"description": "Current saved or execution state reported by the operation."
},
"caption": {
"type": "object",
"properties": {
"raw": {
"type": "string"
},
"rendered": {
"type": "string"
}
},
"description": "Native media caption with raw/rendered values when supplied."
},
"alt_text": {
"type": "string",
"description": "Saved accessible alternative text on the native WordPress media record."
},
"order_by": {
"type": "string",
"description": "Native ordering policy for WooCommerce attribute terms."
},
"taxonomy": {
"type": "string",
"description": "Native taxonomy slug owning this term."
},
"mime_type": {
"type": "string",
"description": "Native MIME type of this media record."
},
"media_type": {
"type": "string",
"description": "WordPress media category, such as image or file."
},
"source_url": {
"type": "string",
"description": "Provider URL of the media asset."
},
"description": {
"anyOf": [
{
"type": "string"
},
{
"type": "object",
"properties": {
"raw": {
"type": "string"
},
"rendered": {
"type": "string"
}
}
}
],
"description": "Saved description of this resource or its purpose."
},
"has_archives": {
"type": "boolean",
"description": "Whether this WooCommerce attribute enables public archives."
}
},
"description": "Result items or operation data inside this returned payload. Pagination fields describe only this result page."
},
"total": {
"type": "number",
"description": "Total number of matching items across all result pages."
},
"nextPage": {
"anyOf": [
{
"type": "null"
},
{
"type": "number"
}
],
"description": "Next page to request when more results exist; use the returned value rather than constructing a cursor."
},
"replayed": {
"type": "boolean",
"description": "Whether this response reuses the recorded outcome of an earlier attempt rather than performing a new write."
}
},
"description": "Operation data; optional fields may be absent."
},
"error": {
"type": "string",
"description": "Why the operation failed."
},
"details": {
"type": "object",
"description": "Diagnostics keyed by errorCode."
},
"message": {
"type": "string",
"description": "Outcome or recovery instructions. Project selection means no action ran."
},
"success": {
"type": "boolean",
"description": "Operation success; on false inspect error/errorCode."
},
"upgrade": {
"type": "object",
"description": "Plan-upgrade guidance for an unavailable capability."
},
"category": {
"type": "string",
"description": "Failure category, such as invalid_input or plan_required."
},
"expected": {
"type": "boolean",
"description": "Whether this is an anticipated access, input, plan or state failure."
},
"projects": {
"type": "array",
"items": {
"type": "object",
"properties": {
"id": {
"type": "number",
"description": "Project ID for projectId."
},
"name": {
"type": "string",
"description": "Project name."
}
},
"description": "Accessible project."
},
"description": "Accessible project choices. Select a projectId and retry."
},
"errorCode": {
"type": "string",
"description": "Failure code for recovery."
},
"retryable": {
"type": "boolean",
"description": "Whether an unchanged request can be retried."
},
"statusCode": {
"type": "number",
"description": "HTTP-style failure status."
},
"executionTime": {
"type": "string",
"description": "Elapsed time in seconds, with an s suffix."
}
},
"description": "Operation result envelope."
}
Original tool metadata
{
"name": "get_wordpress_media",
"title": "Get WordPress media",
"description": "Read one media record including raw editable metadata.\n\nUse an ID from list_wordpress_media to read editable metadata before update_wordpress_media. Reading a library record does not verify the rendered image on a public page.",
"inputSchema": {
"type": "object",
"required": [
"projectPublishingId",
"id"
],
"properties": {
"id": {
"type": "number",
"minimum": 1,
"description": "Native WordPress media ID from list_wordpress_media."
},
"context": {
"type": "string",
"maxLength": 120,
"description": "Short purpose of this call for the activity log. Exclude personal data and private source content."
},
"llm_model": {
"type": "string",
"maxLength": 128,
"description": "Use the exact model ID executing this call, from runtime/system context, for usage attribution. Supply it on every Atomic MCP tool call, including discovery and feedback, and update it if the model changes. Use the model ID rather than the client app name. If unavailable, omit it; never guess or ask the user."
},
"projectId": {
"type": "number",
"description": "Atomic project ID from list_projects. Omit to use the configured project; if asked to choose, select one of the accessible returned IDs."
},
"projectPublishingId": {
"type": "number",
"minimum": 1,
"description": "Atomic publishing connection ID from get_publishing_connections, not the provider site or post ID."
}
},
"additionalProperties": false
},
"outputSchema": {
"type": "object",
"required": [
"success"
],
"properties": {
"url": {
"type": "string",
"description": "Link for resolving the failure or completing the operation."
},
"data": {
"type": "object",
"required": [
"data"
],
"properties": {
"data": {
"type": "object",
"required": [
"id"
],
"properties": {
"id": {
"type": "number",
"description": "Identifier of this returned resource. Use it for subsequent reads or edits of the same resource."
},
"link": {
"type": "string"
},
"name": {
"type": "string",
"description": "Human-readable name of this resource."
},
"slug": {
"type": "string",
"description": "Saved URL slug or native CMS slug of this item."
},
"type": {
"type": "string",
"description": "Kind of the returned item; determines how its operation-specific fields should be interpreted."
},
"count": {
"type": "number",
"description": "Number of records reported by the provider for this group."
},
"title": {
"type": "object",
"properties": {
"raw": {
"type": "string"
},
"rendered": {
"type": "string"
}
},
"description": "Display or content title of this returned item."
},
"parent": {
"type": "number",
"description": "Native parent record ID; zero denotes the provider root when applicable."
},
"status": {
"type": "string",
"description": "Current saved or execution state reported by the operation."
},
"caption": {
"type": "object",
"properties": {
"raw": {
"type": "string"
},
"rendered": {
"type": "string"
}
},
"description": "Native media caption with raw/rendered values when supplied."
},
"alt_text": {
"type": "string",
"description": "Saved accessible alternative text on the native WordPress media record."
},
"order_by": {
"type": "string",
"description": "Native ordering policy for WooCommerce attribute terms."
},
"taxonomy": {
"type": "string",
"description": "Native taxonomy slug owning this term."
},
"mime_type": {
"type": "string",
"description": "Native MIME type of this media record."
},
"media_type": {
"type": "string",
"description": "WordPress media category, such as image or file."
},
"source_url": {
"type": "string",
"description": "Provider URL of the media asset."
},
"description": {
"anyOf": [
{
"type": "string"
},
{
"type": "object",
"properties": {
"raw": {
"type": "string"
},
"rendered": {
"type": "string"
}
}
}
],
"description": "Saved description of this resource or its purpose."
},
"has_archives": {
"type": "boolean",
"description": "Whether this WooCommerce attribute enables public archives."
}
},
"description": "Result items or operation data inside this returned payload. Pagination fields describe only this result page."
},
"total": {
"type": "number",
"description": "Total number of matching items across all result pages."
},
"nextPage": {
"anyOf": [
{
"type": "null"
},
{
"type": "number"
}
],
"description": "Next page to request when more results exist; use the returned value rather than constructing a cursor."
},
"replayed": {
"type": "boolean",
"description": "Whether this response reuses the recorded outcome of an earlier attempt rather than performing a new write."
}
},
"description": "Operation data; optional fields may be absent."
},
"error": {
"type": "string",
"description": "Why the operation failed."
},
"details": {
"type": "object",
"description": "Diagnostics keyed by errorCode."
},
"message": {
"type": "string",
"description": "Outcome or recovery instructions. Project selection means no action ran."
},
"success": {
"type": "boolean",
"description": "Operation success; on false inspect error/errorCode."
},
"upgrade": {
"type": "object",
"description": "Plan-upgrade guidance for an unavailable capability."
},
"category": {
"type": "string",
"description": "Failure category, such as invalid_input or plan_required."
},
"expected": {
"type": "boolean",
"description": "Whether this is an anticipated access, input, plan or state failure."
},
"projects": {
"type": "array",
"items": {
"type": "object",
"properties": {
"id": {
"type": "number",
"description": "Project ID for projectId."
},
"name": {
"type": "string",
"description": "Project name."
}
},
"description": "Accessible project."
},
"description": "Accessible project choices. Select a projectId and retry."
},
"errorCode": {
"type": "string",
"description": "Failure code for recovery."
},
"retryable": {
"type": "boolean",
"description": "Whether an unchanged request can be retried."
},
"statusCode": {
"type": "number",
"description": "HTTP-style failure status."
},
"executionTime": {
"type": "string",
"description": "Elapsed time in seconds, with an s suffix."
}
},
"description": "Operation result envelope."
},
"annotations": {
"readOnlyHint": true,
"openWorldHint": true,
"idempotentHint": true,
"destructiveHint": false
}
}
The title clearly communicates the tool’s action and subject. Keep it concise.
Description97/100
Get a specific workflow by its ID. Only returns workflows that belong to the current project. Returns the workflow details including name, description, selected version ID, and other metadata. Use this to get detailed information about a specific workflow.
Reads the saved pipeline definition, not a run's outputs or a data report. Use get_workflow_steps for draft step contracts and get_workflow_run for one execution.
The description explains the capability, when to use it, and what to expect.
Inputs94/100
Remove validation rules already expressed in this field’s schema; describe its meaning and usage instead.
workflowId
Existing project workflow ID from get_workflows or create_workflow; this identifies a pipeline, not a run.
Clear enough to supply this argument.
projectId
Atomic project ID from list_projects. Omit to use the configured project; if asked to choose, select one of the accessible returned IDs.
Clear enough to supply this argument.
context
Short purpose of this call for the activity log. Exclude personal data and private source content.
Remove validation rules already expressed in this field’s schema; describe its meaning and usage instead.
llm_model
Use the exact model ID executing this call, from runtime/system context, for usage attribution. Supply it on every Atomic MCP tool call, including discovery and feedback, and update it if the model changes. Use the model ID rather than the client app name. If unavailable, omit it; never guess or ask the user.
Align the output schema with the tool’s documented result.
View output schema
{
"type": "object",
"required": [
"success"
],
"properties": {
"url": {
"type": "string",
"description": "Link for resolving the failure or completing the operation."
},
"data": {
"type": "object",
"required": [
"name",
"description",
"selectedVersionId",
"projectId",
"createdAt",
"updatedAt"
],
"properties": {
"id": {
"type": "number",
"description": "Identifier of this returned resource. Use it for subsequent reads or edits of the same resource."
},
"name": {
"type": "string",
"description": "Human-readable name of this resource."
},
"schedule": {
"type": "object",
"required": [
"projectId",
"type",
"frequency",
"timeRange",
"minuteOffset",
"timezone",
"isActive",
"createdAt",
"updatedAt"
],
"properties": {
"id": {
"type": "number",
"description": "Identifier of this returned resource. Use it for subsequent reads or edits of the same resource."
},
"name": {
"anyOf": [
{
"type": "null"
},
{
"type": "string"
}
],
"description": "Human-readable name of this resource."
},
"type": {
"enum": [
"seo_audit",
"seo_audit_notification",
"keyword_research",
"competitor_analysis",
"backlink_analysis",
"content_analysis",
"prompt_tracking",
"prompt_tracking_via_api",
"performance_report",
"weekly_digest",
"workflow",
"agent_conversation"
],
"type": "string",
"description": "Kind of the returned item; determines how its operation-specific fields should be interpreted."
},
"prompt": {
"anyOf": [
{
"type": "null"
},
{
"type": "string"
}
],
"description": "Prompt text used for the tracked or tested AI-search run."
},
"agentId": {
"anyOf": [
{
"type": "null"
},
{
"type": "number"
}
],
"description": "Saved Atomic agent associated with this resource or execution."
},
"isActive": {
"type": "boolean",
"description": "Whether this saved configuration is enabled."
},
"timezone": {
"type": "string"
},
"createdAt": {
"type": "string",
"format": "date-time",
"description": "Date and time this record was created, serialized as ISO 8601."
},
"dayOfWeek": {
"enum": [
"mondays",
"tuesdays",
"wednesdays",
"thursdays",
"fridays",
"saturdays",
"sundays"
],
"type": "string"
},
"frequency": {
"enum": [
"once",
"daily",
"every_48_hours",
"every_72_hours",
"weekly",
"bi_weekly",
"monthly",
"off"
],
"type": "string"
},
"lastRunAt": {
"type": "string",
"format": "date-time",
"description": "Timestamp serialized as an ISO 8601 date and time."
},
"nextRunAt": {
"type": "string",
"format": "date-time",
"description": "Timestamp serialized as an ISO 8601 date and time."
},
"projectId": {
"type": "number",
"description": "Atomic project that owns this resource."
},
"timeRange": {
"type": "string"
},
"updatedAt": {
"type": "string",
"format": "date-time",
"description": "Date and time this record was last updated, serialized as ISO 8601."
},
"gridCellId": {
"anyOf": [
{
"type": "null"
},
{
"type": "number"
}
]
},
"workflowId": {
"type": "number",
"description": "Saved workflow definition associated with this result."
},
"minuteOffset": {
"type": "number"
},
"monthlyOption": {
"enum": [
"first_day",
"fifth_day",
"last_day",
"first_monday",
"second_monday",
"third_monday",
"fourth_monday",
"first_friday",
"second_friday",
"third_friday",
"fourth_friday",
"middle_month"
],
"type": "string"
},
"conversationId": {
"anyOf": [
{
"type": "null"
},
{
"type": "string"
}
],
"description": "Conversation associated with this task or execution."
},
"workflowInputs": {
"type": "object",
"properties": {},
"additionalProperties": {
"description": "JSON returned by the connected provider or selected operation; its fields depend on that operation."
}
},
"initiatedByUserId": {
"anyOf": [
{
"type": "null"
},
{
"type": "number"
}
],
"description": "Actual initiating member; null only for historical records/non-workflow service schedules."
}
}
},
"createdAt": {
"type": "string",
"format": "date-time",
"description": "Date and time this record was created, serialized as ISO 8601."
},
"projectId": {
"type": "number",
"description": "Atomic project that owns this resource."
},
"updatedAt": {
"type": "string",
"format": "date-time",
"description": "Date and time this record was last updated, serialized as ISO 8601."
},
"description": {
"type": "string",
"description": "Saved description of this resource or its purpose."
},
"selectedVersionId": {
"type": "number"
},
"collectionFolderId": {
"anyOf": [
{
"type": "null"
},
{
"type": "number"
}
],
"description": "Folder containing this item in its Atomic collection; null means top level."
}
},
"description": "Operation data; optional fields may be absent."
},
"error": {
"type": "string",
"description": "Why the operation failed."
},
"details": {
"type": "object",
"description": "Diagnostics keyed by errorCode."
},
"message": {
"type": "string",
"description": "Outcome or recovery instructions. Project selection means no action ran."
},
"success": {
"type": "boolean",
"description": "Operation success; on false inspect error/errorCode."
},
"upgrade": {
"type": "object",
"description": "Plan-upgrade guidance for an unavailable capability."
},
"category": {
"type": "string",
"description": "Failure category, such as invalid_input or plan_required."
},
"expected": {
"type": "boolean",
"description": "Whether this is an anticipated access, input, plan or state failure."
},
"projects": {
"type": "array",
"items": {
"type": "object",
"properties": {
"id": {
"type": "number",
"description": "Project ID for projectId."
},
"name": {
"type": "string",
"description": "Project name."
}
},
"description": "Accessible project."
},
"description": "Accessible project choices. Select a projectId and retry."
},
"errorCode": {
"type": "string",
"description": "Failure code for recovery."
},
"retryable": {
"type": "boolean",
"description": "Whether an unchanged request can be retried."
},
"statusCode": {
"type": "number",
"description": "HTTP-style failure status."
},
"executionTime": {
"type": "string",
"description": "Elapsed time in seconds, with an s suffix."
}
},
"description": "Operation result envelope."
}
Original tool metadata
{
"name": "get_workflow_by_id",
"title": "Get workflow by ID",
"description": "Get a specific workflow by its ID. Only returns workflows that belong to the current project. Returns the workflow details including name, description, selected version ID, and other metadata. Use this to get detailed information about a specific workflow.\n\nReads the saved pipeline definition, not a run's outputs or a data report. Use get_workflow_steps for draft step contracts and get_workflow_run for one execution.",
"inputSchema": {
"type": "object",
"required": [
"workflowId"
],
"properties": {
"context": {
"type": "string",
"maxLength": 120,
"description": "Short purpose of this call for the activity log. Exclude personal data and private source content."
},
"llm_model": {
"type": "string",
"maxLength": 128,
"description": "Use the exact model ID executing this call, from runtime/system context, for usage attribution. Supply it on every Atomic MCP tool call, including discovery and feedback, and update it if the model changes. Use the model ID rather than the client app name. If unavailable, omit it; never guess or ask the user."
},
"projectId": {
"type": "number",
"description": "Atomic project ID from list_projects. Omit to use the configured project; if asked to choose, select one of the accessible returned IDs."
},
"workflowId": {
"type": "number",
"description": "Existing project workflow ID from get_workflows or create_workflow; this identifies a pipeline, not a run."
}
}
},
"outputSchema": {
"type": "object",
"required": [
"success"
],
"properties": {
"url": {
"type": "string",
"description": "Link for resolving the failure or completing the operation."
},
"data": {
"type": "object",
"required": [
"name",
"description",
"selectedVersionId",
"projectId",
"createdAt",
"updatedAt"
],
"properties": {
"id": {
"type": "number",
"description": "Identifier of this returned resource. Use it for subsequent reads or edits of the same resource."
},
"name": {
"type": "string",
"description": "Human-readable name of this resource."
},
"schedule": {
"type": "object",
"required": [
"projectId",
"type",
"frequency",
"timeRange",
"minuteOffset",
"timezone",
"isActive",
"createdAt",
"updatedAt"
],
"properties": {
"id": {
"type": "number",
"description": "Identifier of this returned resource. Use it for subsequent reads or edits of the same resource."
},
"name": {
"anyOf": [
{
"type": "null"
},
{
"type": "string"
}
],
"description": "Human-readable name of this resource."
},
"type": {
"enum": [
"seo_audit",
"seo_audit_notification",
"keyword_research",
"competitor_analysis",
"backlink_analysis",
"content_analysis",
"prompt_tracking",
"prompt_tracking_via_api",
"performance_report",
"weekly_digest",
"workflow",
"agent_conversation"
],
"type": "string",
"description": "Kind of the returned item; determines how its operation-specific fields should be interpreted."
},
"prompt": {
"anyOf": [
{
"type": "null"
},
{
"type": "string"
}
],
"description": "Prompt text used for the tracked or tested AI-search run."
},
"agentId": {
"anyOf": [
{
"type": "null"
},
{
"type": "number"
}
],
"description": "Saved Atomic agent associated with this resource or execution."
},
"isActive": {
"type": "boolean",
"description": "Whether this saved configuration is enabled."
},
"timezone": {
"type": "string"
},
"createdAt": {
"type": "string",
"format": "date-time",
"description": "Date and time this record was created, serialized as ISO 8601."
},
"dayOfWeek": {
"enum": [
"mondays",
"tuesdays",
"wednesdays",
"thursdays",
"fridays",
"saturdays",
"sundays"
],
"type": "string"
},
"frequency": {
"enum": [
"once",
"daily",
"every_48_hours",
"every_72_hours",
"weekly",
"bi_weekly",
"monthly",
"off"
],
"type": "string"
},
"lastRunAt": {
"type": "string",
"format": "date-time",
"description": "Timestamp serialized as an ISO 8601 date and time."
},
"nextRunAt": {
"type": "string",
"format": "date-time",
"description": "Timestamp serialized as an ISO 8601 date and time."
},
"projectId": {
"type": "number",
"description": "Atomic project that owns this resource."
},
"timeRange": {
"type": "string"
},
"updatedAt": {
"type": "string",
"format": "date-time",
"description": "Date and time this record was last updated, serialized as ISO 8601."
},
"gridCellId": {
"anyOf": [
{
"type": "null"
},
{
"type": "number"
}
]
},
"workflowId": {
"type": "number",
"description": "Saved workflow definition associated with this result."
},
"minuteOffset": {
"type": "number"
},
"monthlyOption": {
"enum": [
"first_day",
"fifth_day",
"last_day",
"first_monday",
"second_monday",
"third_monday",
"fourth_monday",
"first_friday",
"second_friday",
"third_friday",
"fourth_friday",
"middle_month"
],
"type": "string"
},
"conversationId": {
"anyOf": [
{
"type": "null"
},
{
"type": "string"
}
],
"description": "Conversation associated with this task or execution."
},
"workflowInputs": {
"type": "object",
"properties": {},
"additionalProperties": {
"description": "JSON returned by the connected provider or selected operation; its fields depend on that operation."
}
},
"initiatedByUserId": {
"anyOf": [
{
"type": "null"
},
{
"type": "number"
}
],
"description": "Actual initiating member; null only for historical records/non-workflow service schedules."
}
}
},
"createdAt": {
"type": "string",
"format": "date-time",
"description": "Date and time this record was created, serialized as ISO 8601."
},
"projectId": {
"type": "number",
"description": "Atomic project that owns this resource."
},
"updatedAt": {
"type": "string",
"format": "date-time",
"description": "Date and time this record was last updated, serialized as ISO 8601."
},
"description": {
"type": "string",
"description": "Saved description of this resource or its purpose."
},
"selectedVersionId": {
"type": "number"
},
"collectionFolderId": {
"anyOf": [
{
"type": "null"
},
{
"type": "number"
}
],
"description": "Folder containing this item in its Atomic collection; null means top level."
}
},
"description": "Operation data; optional fields may be absent."
},
"error": {
"type": "string",
"description": "Why the operation failed."
},
"details": {
"type": "object",
"description": "Diagnostics keyed by errorCode."
},
"message": {
"type": "string",
"description": "Outcome or recovery instructions. Project selection means no action ran."
},
"success": {
"type": "boolean",
"description": "Operation success; on false inspect error/errorCode."
},
"upgrade": {
"type": "object",
"description": "Plan-upgrade guidance for an unavailable capability."
},
"category": {
"type": "string",
"description": "Failure category, such as invalid_input or plan_required."
},
"expected": {
"type": "boolean",
"description": "Whether this is an anticipated access, input, plan or state failure."
},
"projects": {
"type": "array",
"items": {
"type": "object",
"properties": {
"id": {
"type": "number",
"description": "Project ID for projectId."
},
"name": {
"type": "string",
"description": "Project name."
}
},
"description": "Accessible project."
},
"description": "Accessible project choices. Select a projectId and retry."
},
"errorCode": {
"type": "string",
"description": "Failure code for recovery."
},
"retryable": {
"type": "boolean",
"description": "Whether an unchanged request can be retried."
},
"statusCode": {
"type": "number",
"description": "HTTP-style failure status."
},
"executionTime": {
"type": "string",
"description": "Elapsed time in seconds, with an s suffix."
}
},
"description": "Operation result envelope."
},
"annotations": {
"readOnlyHint": true,
"openWorldHint": false,
"idempotentHint": true,
"destructiveHint": false
}
}
The title clearly communicates the tool’s action and subject. Keep it concise.
Description90/100
Get the status and results of a specific workflow run. Returns the workflow run details including status (PENDING, RUNNING, COMPLETED, FAILED) and step outputs. Use this to check if a workflow has completed and to retrieve its results.
The description explains the capability, when to use it, and what to expect.
Inputs94/100
Remove validation rules already expressed in this field’s schema; describe its meaning and usage instead.
workflowRunId
Existing execution ID returned by run_workflow or get_workflow_runs; it is not the workflow definition ID.
Clear enough to supply this argument.
projectId
Atomic project ID from list_projects. Omit to use the configured project; if asked to choose, select one of the accessible returned IDs.
Clear enough to supply this argument.
context
Short purpose of this call for the activity log. Exclude personal data and private source content.
Remove validation rules already expressed in this field’s schema; describe its meaning and usage instead.
llm_model
Use the exact model ID executing this call, from runtime/system context, for usage attribution. Supply it on every Atomic MCP tool call, including discovery and feedback, and update it if the model changes. Use the model ID rather than the client app name. If unavailable, omit it; never guess or ask the user.
{
"type": "object",
"required": [
"success"
],
"properties": {
"url": {
"type": "string",
"description": "Link for resolving the failure or completing the operation."
},
"data": {
"anyOf": [
{
"type": "null"
},
{
"type": "object",
"required": [
"stepOutputs",
"workflowId",
"status",
"workflow",
"createdAt",
"updatedAt"
],
"properties": {
"id": {
"type": "number",
"description": "Identifier of this returned resource. Use it for subsequent reads or edits of the same resource."
},
"inputs": {
"type": "object",
"properties": {},
"description": "Resolved inputs used for this operation or step.",
"additionalProperties": {
"description": "JSON returned by the connected provider or selected operation; its fields depend on that operation."
}
},
"status": {
"enum": [
"pending",
"running",
"waiting_for_approval",
"completed",
"failed",
"canceled"
],
"type": "string",
"description": "Current saved or execution state reported by the operation."
},
"workflow": {
"type": "object",
"required": [
"name",
"description",
"selectedVersionId",
"projectId",
"createdAt",
"updatedAt"
],
"properties": {
"id": {
"type": "number",
"description": "Identifier of this returned resource. Use it for subsequent reads or edits of the same resource."
},
"name": {
"type": "string",
"description": "Human-readable name of this resource."
},
"schedule": {
"type": "object",
"required": [
"projectId",
"type",
"frequency",
"timeRange",
"minuteOffset",
"timezone",
"isActive",
"createdAt",
"updatedAt"
],
"properties": {
"id": {
"type": "number",
"description": "Identifier of this returned resource. Use it for subsequent reads or edits of the same resource."
},
"name": {
"anyOf": [
{
"type": "null"
},
{
"type": "string"
}
],
"description": "Human-readable name of this resource."
},
"type": {
"enum": [
"seo_audit",
"seo_audit_notification",
"keyword_research",
"competitor_analysis",
"backlink_analysis",
"content_analysis",
"prompt_tracking",
"prompt_tracking_via_api",
"performance_report",
"weekly_digest",
"workflow",
"agent_conversation"
],
"type": "string",
"description": "Kind of the returned item; determines how its operation-specific fields should be interpreted."
},
"prompt": {
"anyOf": [
{
"type": "null"
},
{
"type": "string"
}
],
"description": "Prompt text used for the tracked or tested AI-search run."
},
"agentId": {
"anyOf": [
{
"type": "null"
},
{
"type": "number"
}
],
"description": "Saved Atomic agent associated with this resource or execution."
},
"isActive": {
"type": "boolean",
"description": "Whether this saved configuration is enabled."
},
"timezone": {
"type": "string"
},
"createdAt": {
"type": "string",
"format": "date-time",
"description": "Date and time this record was created, serialized as ISO 8601."
},
"dayOfWeek": {
"enum": [
"mondays",
"tuesdays",
"wednesdays",
"thursdays",
"fridays",
"saturdays",
"sundays"
],
"type": "string"
},
"frequency": {
"enum": [
"once",
"daily",
"every_48_hours",
"every_72_hours",
"weekly",
"bi_weekly",
"monthly",
"off"
],
"type": "string"
},
"lastRunAt": {
"type": "string",
"format": "date-time",
"description": "Timestamp serialized as an ISO 8601 date and time."
},
"nextRunAt": {
"type": "string",
"format": "date-time",
"description": "Timestamp serialized as an ISO 8601 date and time."
},
"projectId": {
"type": "number",
"description": "Atomic project that owns this resource."
},
"timeRange": {
"type": "string"
},
"updatedAt": {
"type": "string",
"format": "date-time",
"description": "Date and time this record was last updated, serialized as ISO 8601."
},
"gridCellId": {
"anyOf": [
{
"type": "null"
},
{
"type": "number"
}
]
},
"workflowId": {
"type": "number",
"description": "Saved workflow definition associated with this result."
},
"minuteOffset": {
"type": "number"
},
"monthlyOption": {
"enum": [
"first_day",
"fifth_day",
"last_day",
"first_monday",
"second_monday",
"third_monday",
"fourth_monday",
"first_friday",
"second_friday",
"third_friday",
"fourth_friday",
"middle_month"
],
"type": "string"
},
"conversationId": {
"anyOf": [
{
"type": "null"
},
{
"type": "string"
}
],
"description": "Conversation associated with this task or execution."
},
"workflowInputs": {
"type": "object",
"description": "Nested operation-specific fields."
},
"initiatedByUserId": {
"anyOf": [
{
"type": "null"
},
{
"type": "number"
}
],
"description": "Actual initiating member; null only for historical records/non-workflow service schedules."
}
}
},
"createdAt": {
"type": "string",
"format": "date-time",
"description": "Date and time this record was created, serialized as ISO 8601."
},
"projectId": {
"type": "number",
"description": "Atomic project that owns this resource."
},
"updatedAt": {
"type": "string",
"format": "date-time",
"description": "Date and time this record was last updated, serialized as ISO 8601."
},
"description": {
"type": "string",
"description": "Saved description of this resource or its purpose."
},
"selectedVersionId": {
"type": "number"
},
"collectionFolderId": {
"anyOf": [
{
"type": "null"
},
{
"type": "number"
}
],
"description": "Folder containing this item in its Atomic collection; null means top level."
}
}
},
"createdAt": {
"type": "string",
"format": "date-time",
"description": "Date and time this record was created, serialized as ISO 8601."
},
"updatedAt": {
"type": "string",
"format": "date-time",
"description": "Date and time this record was last updated, serialized as ISO 8601."
},
"brandKitId": {
"anyOf": [
{
"type": "null"
},
{
"type": "number"
}
]
},
"workflowId": {
"type": "number",
"description": "Saved workflow definition associated with this result."
},
"stepOutputs": {
"type": "array",
"items": {
"type": "object",
"required": [
"workflowRunId",
"workflowStepId",
"status",
"createdAt",
"updatedAt"
],
"properties": {
"id": {
"type": "number",
"description": "Identifier of this returned resource. Use it for subsequent reads or edits of the same resource."
},
"usage": {
"type": "object",
"description": "Provider or Atomic usage measurements for this execution."
},
"output": {
"description": "JSON returned by the connected provider or selected operation; its fields depend on that operation."
},
"status": {
"enum": [
"pending",
"running",
"completed",
"failed",
"waiting_for_approval"
],
"type": "string",
"description": "Current saved or execution state reported by the operation."
},
"createdAt": {
"type": "string",
"format": "date-time",
"description": "Date and time this record was created, serialized as ISO 8601."
},
"stepIndex": {
"type": "number",
"description": "Workflow-local step ordering and routing identity; it is distinct from the database step ID."
},
"updatedAt": {
"type": "string",
"format": "date-time",
"description": "Date and time this record was last updated, serialized as ISO 8601."
},
"workflowRun": {
"type": "object",
"description": "Nested operation-specific fields."
},
"workflowStep": {
"type": "object",
"description": "Nested operation-specific fields."
},
"workflowRunId": {
"type": "number",
"description": "Workflow execution associated with this result, distinct from its definition ID."
},
"workflowStepId": {
"type": "number"
}
}
}
},
"aiCreditsUsed": {
"type": "number",
"description": "AI credits recorded as used by this project or operation."
},
"initiatedByUserId": {
"anyOf": [
{
"type": "null"
},
{
"type": "number"
}
],
"description": "Actual initiating member; null only for historical records/non-workflow service schedules."
}
}
}
],
"description": "Operation data; optional fields may be absent."
},
"error": {
"type": "string",
"description": "Why the operation failed."
},
"details": {
"type": "object",
"description": "Diagnostics keyed by errorCode."
},
"message": {
"type": "string",
"description": "Outcome or recovery instructions. Project selection means no action ran."
},
"success": {
"type": "boolean",
"description": "Operation success; on false inspect error/errorCode."
},
"upgrade": {
"type": "object",
"description": "Plan-upgrade guidance for an unavailable capability."
},
"category": {
"type": "string",
"description": "Failure category, such as invalid_input or plan_required."
},
"expected": {
"type": "boolean",
"description": "Whether this is an anticipated access, input, plan or state failure."
},
"projects": {
"type": "array",
"items": {
"type": "object",
"properties": {
"id": {
"type": "number",
"description": "Project ID for projectId."
},
"name": {
"type": "string",
"description": "Project name."
}
},
"description": "Accessible project."
},
"description": "Accessible project choices. Select a projectId and retry."
},
"errorCode": {
"type": "string",
"description": "Failure code for recovery."
},
"retryable": {
"type": "boolean",
"description": "Whether an unchanged request can be retried."
},
"statusCode": {
"type": "number",
"description": "HTTP-style failure status."
},
"executionTime": {
"type": "string",
"description": "Elapsed time in seconds, with an s suffix."
}
},
"description": "Operation result envelope."
}
Original tool metadata
{
"name": "get_workflow_run",
"title": "Get workflow run",
"description": "Get the status and results of a specific workflow run. Returns the workflow run details including status (PENDING, RUNNING, COMPLETED, FAILED) and step outputs. Use this to check if a workflow has completed and to retrieve its results.",
"inputSchema": {
"type": "object",
"required": [
"workflowRunId"
],
"properties": {
"context": {
"type": "string",
"maxLength": 120,
"description": "Short purpose of this call for the activity log. Exclude personal data and private source content."
},
"llm_model": {
"type": "string",
"maxLength": 128,
"description": "Use the exact model ID executing this call, from runtime/system context, for usage attribution. Supply it on every Atomic MCP tool call, including discovery and feedback, and update it if the model changes. Use the model ID rather than the client app name. If unavailable, omit it; never guess or ask the user."
},
"projectId": {
"type": "number",
"description": "Atomic project ID from list_projects. Omit to use the configured project; if asked to choose, select one of the accessible returned IDs."
},
"workflowRunId": {
"type": "number",
"description": "Existing execution ID returned by run_workflow or get_workflow_runs; it is not the workflow definition ID."
}
}
},
"outputSchema": {
"type": "object",
"required": [
"success"
],
"properties": {
"url": {
"type": "string",
"description": "Link for resolving the failure or completing the operation."
},
"data": {
"anyOf": [
{
"type": "null"
},
{
"type": "object",
"required": [
"stepOutputs",
"workflowId",
"status",
"workflow",
"createdAt",
"updatedAt"
],
"properties": {
"id": {
"type": "number",
"description": "Identifier of this returned resource. Use it for subsequent reads or edits of the same resource."
},
"inputs": {
"type": "object",
"properties": {},
"description": "Resolved inputs used for this operation or step.",
"additionalProperties": {
"description": "JSON returned by the connected provider or selected operation; its fields depend on that operation."
}
},
"status": {
"enum": [
"pending",
"running",
"waiting_for_approval",
"completed",
"failed",
"canceled"
],
"type": "string",
"description": "Current saved or execution state reported by the operation."
},
"workflow": {
"type": "object",
"required": [
"name",
"description",
"selectedVersionId",
"projectId",
"createdAt",
"updatedAt"
],
"properties": {
"id": {
"type": "number",
"description": "Identifier of this returned resource. Use it for subsequent reads or edits of the same resource."
},
"name": {
"type": "string",
"description": "Human-readable name of this resource."
},
"schedule": {
"type": "object",
"required": [
"projectId",
"type",
"frequency",
"timeRange",
"minuteOffset",
"timezone",
"isActive",
"createdAt",
"updatedAt"
],
"properties": {
"id": {
"type": "number",
"description": "Identifier of this returned resource. Use it for subsequent reads or edits of the same resource."
},
"name": {
"anyOf": [
{
"type": "null"
},
{
"type": "string"
}
],
"description": "Human-readable name of this resource."
},
"type": {
"enum": [
"seo_audit",
"seo_audit_notification",
"keyword_research",
"competitor_analysis",
"backlink_analysis",
"content_analysis",
"prompt_tracking",
"prompt_tracking_via_api",
"performance_report",
"weekly_digest",
"workflow",
"agent_conversation"
],
"type": "string",
"description": "Kind of the returned item; determines how its operation-specific fields should be interpreted."
},
"prompt": {
"anyOf": [
{
"type": "null"
},
{
"type": "string"
}
],
"description": "Prompt text used for the tracked or tested AI-search run."
},
"agentId": {
"anyOf": [
{
"type": "null"
},
{
"type": "number"
}
],
"description": "Saved Atomic agent associated with this resource or execution."
},
"isActive": {
"type": "boolean",
"description": "Whether this saved configuration is enabled."
},
"timezone": {
"type": "string"
},
"createdAt": {
"type": "string",
"format": "date-time",
"description": "Date and time this record was created, serialized as ISO 8601."
},
"dayOfWeek": {
"enum": [
"mondays",
"tuesdays",
"wednesdays",
"thursdays",
"fridays",
"saturdays",
"sundays"
],
"type": "string"
},
"frequency": {
"enum": [
"once",
"daily",
"every_48_hours",
"every_72_hours",
"weekly",
"bi_weekly",
"monthly",
"off"
],
"type": "string"
},
"lastRunAt": {
"type": "string",
"format": "date-time",
"description": "Timestamp serialized as an ISO 8601 date and time."
},
"nextRunAt": {
"type": "string",
"format": "date-time",
"description": "Timestamp serialized as an ISO 8601 date and time."
},
"projectId": {
"type": "number",
"description": "Atomic project that owns this resource."
},
"timeRange": {
"type": "string"
},
"updatedAt": {
"type": "string",
"format": "date-time",
"description": "Date and time this record was last updated, serialized as ISO 8601."
},
"gridCellId": {
"anyOf": [
{
"type": "null"
},
{
"type": "number"
}
]
},
"workflowId": {
"type": "number",
"description": "Saved workflow definition associated with this result."
},
"minuteOffset": {
"type": "number"
},
"monthlyOption": {
"enum": [
"first_day",
"fifth_day",
"last_day",
"first_monday",
"second_monday",
"third_monday",
"fourth_monday",
"first_friday",
"second_friday",
"third_friday",
"fourth_friday",
"middle_month"
],
"type": "string"
},
"conversationId": {
"anyOf": [
{
"type": "null"
},
{
"type": "string"
}
],
"description": "Conversation associated with this task or execution."
},
"workflowInputs": {
"type": "object",
"description": "Nested operation-specific fields."
},
"initiatedByUserId": {
"anyOf": [
{
"type": "null"
},
{
"type": "number"
}
],
"description": "Actual initiating member; null only for historical records/non-workflow service schedules."
}
}
},
"createdAt": {
"type": "string",
"format": "date-time",
"description": "Date and time this record was created, serialized as ISO 8601."
},
"projectId": {
"type": "number",
"description": "Atomic project that owns this resource."
},
"updatedAt": {
"type": "string",
"format": "date-time",
"description": "Date and time this record was last updated, serialized as ISO 8601."
},
"description": {
"type": "string",
"description": "Saved description of this resource or its purpose."
},
"selectedVersionId": {
"type": "number"
},
"collectionFolderId": {
"anyOf": [
{
"type": "null"
},
{
"type": "number"
}
],
"description": "Folder containing this item in its Atomic collection; null means top level."
}
}
},
"createdAt": {
"type": "string",
"format": "date-time",
"description": "Date and time this record was created, serialized as ISO 8601."
},
"updatedAt": {
"type": "string",
"format": "date-time",
"description": "Date and time this record was last updated, serialized as ISO 8601."
},
"brandKitId": {
"anyOf": [
{
"type": "null"
},
{
"type": "number"
}
]
},
"workflowId": {
"type": "number",
"description": "Saved workflow definition associated with this result."
},
"stepOutputs": {
"type": "array",
"items": {
"type": "object",
"required": [
"workflowRunId",
"workflowStepId",
"status",
"createdAt",
"updatedAt"
],
"properties": {
"id": {
"type": "number",
"description": "Identifier of this returned resource. Use it for subsequent reads or edits of the same resource."
},
"usage": {
"type": "object",
"description": "Provider or Atomic usage measurements for this execution."
},
"output": {
"description": "JSON returned by the connected provider or selected operation; its fields depend on that operation."
},
"status": {
"enum": [
"pending",
"running",
"completed",
"failed",
"waiting_for_approval"
],
"type": "string",
"description": "Current saved or execution state reported by the operation."
},
"createdAt": {
"type": "string",
"format": "date-time",
"description": "Date and time this record was created, serialized as ISO 8601."
},
"stepIndex": {
"type": "number",
"description": "Workflow-local step ordering and routing identity; it is distinct from the database step ID."
},
"updatedAt": {
"type": "string",
"format": "date-time",
"description": "Date and time this record was last updated, serialized as ISO 8601."
},
"workflowRun": {
"type": "object",
"description": "Nested operation-specific fields."
},
"workflowStep": {
"type": "object",
"description": "Nested operation-specific fields."
},
"workflowRunId": {
"type": "number",
"description": "Workflow execution associated with this result, distinct from its definition ID."
},
"workflowStepId": {
"type": "number"
}
}
}
},
"aiCreditsUsed": {
"type": "number",
"description": "AI credits recorded as used by this project or operation."
},
"initiatedByUserId": {
"anyOf": [
{
"type": "null"
},
{
"type": "number"
}
],
"description": "Actual initiating member; null only for historical records/non-workflow service schedules."
}
}
}
],
"description": "Operation data; optional fields may be absent."
},
"error": {
"type": "string",
"description": "Why the operation failed."
},
"details": {
"type": "object",
"description": "Diagnostics keyed by errorCode."
},
"message": {
"type": "string",
"description": "Outcome or recovery instructions. Project selection means no action ran."
},
"success": {
"type": "boolean",
"description": "Operation success; on false inspect error/errorCode."
},
"upgrade": {
"type": "object",
"description": "Plan-upgrade guidance for an unavailable capability."
},
"category": {
"type": "string",
"description": "Failure category, such as invalid_input or plan_required."
},
"expected": {
"type": "boolean",
"description": "Whether this is an anticipated access, input, plan or state failure."
},
"projects": {
"type": "array",
"items": {
"type": "object",
"properties": {
"id": {
"type": "number",
"description": "Project ID for projectId."
},
"name": {
"type": "string",
"description": "Project name."
}
},
"description": "Accessible project."
},
"description": "Accessible project choices. Select a projectId and retry."
},
"errorCode": {
"type": "string",
"description": "Failure code for recovery."
},
"retryable": {
"type": "boolean",
"description": "Whether an unchanged request can be retried."
},
"statusCode": {
"type": "number",
"description": "HTTP-style failure status."
},
"executionTime": {
"type": "string",
"description": "Elapsed time in seconds, with an s suffix."
}
},
"description": "Operation result envelope."
},
"annotations": {
"readOnlyHint": true,
"openWorldHint": false,
"idempotentHint": true,
"destructiveHint": false
}
}
The title clearly communicates the tool’s action and subject. Keep it concise.
Description91/100
Get the run history for a specific workflow. Returns a list of workflow runs with their statuses and step outputs. Use this to see past executions of a workflow, check their results, and monitor workflow performance over time.
The description explains the capability, when to use it, and what to expect.
Inputs92/100
Remove validation rules already expressed in this field’s schema; describe its meaning and usage instead.
workflowId
Existing project workflow ID from get_workflows or create_workflow; this identifies a pipeline, not a run.
Clear enough to supply this argument.
limit
Maximum number of runs to return (default: 50)
Remove validation rules already expressed in this field’s schema; describe its meaning and usage instead.
offset
Number of runs to skip for pagination (default: 0)
Clear enough to supply this argument.
projectId
Atomic project ID from list_projects. Omit to use the configured project; if asked to choose, select one of the accessible returned IDs.
Clear enough to supply this argument.
context
Short purpose of this call for the activity log. Exclude personal data and private source content.
Remove validation rules already expressed in this field’s schema; describe its meaning and usage instead.
llm_model
Use the exact model ID executing this call, from runtime/system context, for usage attribution. Supply it on every Atomic MCP tool call, including discovery and feedback, and update it if the model changes. Use the model ID rather than the client app name. If unavailable, omit it; never guess or ask the user.
{
"type": "object",
"required": [
"success"
],
"properties": {
"url": {
"type": "string",
"description": "Link for resolving the failure or completing the operation."
},
"data": {
"type": "object",
"required": [
"runs",
"total"
],
"properties": {
"runs": {
"type": "array",
"items": {
"type": "object",
"required": [
"workflowId",
"status",
"workflow",
"createdAt",
"updatedAt"
],
"properties": {
"id": {
"type": "number",
"description": "Identifier of this returned resource. Use it for subsequent reads or edits of the same resource."
},
"inputs": {
"type": "object",
"description": "Resolved inputs used for this operation or step."
},
"status": {
"enum": [
"pending",
"running",
"waiting_for_approval",
"completed",
"failed",
"canceled"
],
"type": "string",
"description": "Current saved or execution state reported by the operation."
},
"workflow": {
"type": "object",
"description": "Nested operation-specific fields."
},
"createdAt": {
"type": "string",
"format": "date-time",
"description": "Date and time this record was created, serialized as ISO 8601."
},
"updatedAt": {
"type": "string",
"format": "date-time",
"description": "Date and time this record was last updated, serialized as ISO 8601."
},
"brandKitId": {
"anyOf": [
{
"type": "null"
},
{
"type": "number"
}
]
},
"workflowId": {
"type": "number",
"description": "Saved workflow definition associated with this result."
},
"stepOutputs": {
"type": "array",
"items": {
"type": "object",
"description": "Nested operation-specific fields."
}
},
"aiCreditsUsed": {
"type": "number",
"description": "AI credits recorded as used by this project or operation."
},
"initiatedByUserId": {
"anyOf": [
{
"type": "null"
},
{
"type": "number"
}
],
"description": "Actual initiating member; null only for historical records/non-workflow service schedules."
}
}
}
},
"total": {
"type": "number",
"description": "Total number of matching items across all result pages."
}
},
"description": "Operation data; optional fields may be absent."
},
"error": {
"type": "string",
"description": "Why the operation failed."
},
"details": {
"type": "object",
"description": "Diagnostics keyed by errorCode."
},
"message": {
"type": "string",
"description": "Outcome or recovery instructions. Project selection means no action ran."
},
"success": {
"type": "boolean",
"description": "Operation success; on false inspect error/errorCode."
},
"upgrade": {
"type": "object",
"description": "Plan-upgrade guidance for an unavailable capability."
},
"category": {
"type": "string",
"description": "Failure category, such as invalid_input or plan_required."
},
"expected": {
"type": "boolean",
"description": "Whether this is an anticipated access, input, plan or state failure."
},
"projects": {
"type": "array",
"items": {
"type": "object",
"properties": {
"id": {
"type": "number",
"description": "Project ID for projectId."
},
"name": {
"type": "string",
"description": "Project name."
}
},
"description": "Accessible project."
},
"description": "Accessible project choices. Select a projectId and retry."
},
"errorCode": {
"type": "string",
"description": "Failure code for recovery."
},
"retryable": {
"type": "boolean",
"description": "Whether an unchanged request can be retried."
},
"statusCode": {
"type": "number",
"description": "HTTP-style failure status."
},
"executionTime": {
"type": "string",
"description": "Elapsed time in seconds, with an s suffix."
}
},
"description": "Operation result envelope."
}
Original tool metadata
{
"name": "get_workflow_runs",
"title": "Get workflow runs",
"description": "Get the run history for a specific workflow. Returns a list of workflow runs with their statuses and step outputs. Use this to see past executions of a workflow, check their results, and monitor workflow performance over time.",
"inputSchema": {
"type": "object",
"required": [
"workflowId"
],
"properties": {
"limit": {
"type": "number",
"description": "Maximum number of runs to return (default: 50)"
},
"offset": {
"type": "number",
"description": "Number of runs to skip for pagination (default: 0)"
},
"context": {
"type": "string",
"maxLength": 120,
"description": "Short purpose of this call for the activity log. Exclude personal data and private source content."
},
"llm_model": {
"type": "string",
"maxLength": 128,
"description": "Use the exact model ID executing this call, from runtime/system context, for usage attribution. Supply it on every Atomic MCP tool call, including discovery and feedback, and update it if the model changes. Use the model ID rather than the client app name. If unavailable, omit it; never guess or ask the user."
},
"projectId": {
"type": "number",
"description": "Atomic project ID from list_projects. Omit to use the configured project; if asked to choose, select one of the accessible returned IDs."
},
"workflowId": {
"type": "number",
"description": "Existing project workflow ID from get_workflows or create_workflow; this identifies a pipeline, not a run."
}
}
},
"outputSchema": {
"type": "object",
"required": [
"success"
],
"properties": {
"url": {
"type": "string",
"description": "Link for resolving the failure or completing the operation."
},
"data": {
"type": "object",
"required": [
"runs",
"total"
],
"properties": {
"runs": {
"type": "array",
"items": {
"type": "object",
"required": [
"workflowId",
"status",
"workflow",
"createdAt",
"updatedAt"
],
"properties": {
"id": {
"type": "number",
"description": "Identifier of this returned resource. Use it for subsequent reads or edits of the same resource."
},
"inputs": {
"type": "object",
"description": "Resolved inputs used for this operation or step."
},
"status": {
"enum": [
"pending",
"running",
"waiting_for_approval",
"completed",
"failed",
"canceled"
],
"type": "string",
"description": "Current saved or execution state reported by the operation."
},
"workflow": {
"type": "object",
"description": "Nested operation-specific fields."
},
"createdAt": {
"type": "string",
"format": "date-time",
"description": "Date and time this record was created, serialized as ISO 8601."
},
"updatedAt": {
"type": "string",
"format": "date-time",
"description": "Date and time this record was last updated, serialized as ISO 8601."
},
"brandKitId": {
"anyOf": [
{
"type": "null"
},
{
"type": "number"
}
]
},
"workflowId": {
"type": "number",
"description": "Saved workflow definition associated with this result."
},
"stepOutputs": {
"type": "array",
"items": {
"type": "object",
"description": "Nested operation-specific fields."
}
},
"aiCreditsUsed": {
"type": "number",
"description": "AI credits recorded as used by this project or operation."
},
"initiatedByUserId": {
"anyOf": [
{
"type": "null"
},
{
"type": "number"
}
],
"description": "Actual initiating member; null only for historical records/non-workflow service schedules."
}
}
}
},
"total": {
"type": "number",
"description": "Total number of matching items across all result pages."
}
},
"description": "Operation data; optional fields may be absent."
},
"error": {
"type": "string",
"description": "Why the operation failed."
},
"details": {
"type": "object",
"description": "Diagnostics keyed by errorCode."
},
"message": {
"type": "string",
"description": "Outcome or recovery instructions. Project selection means no action ran."
},
"success": {
"type": "boolean",
"description": "Operation success; on false inspect error/errorCode."
},
"upgrade": {
"type": "object",
"description": "Plan-upgrade guidance for an unavailable capability."
},
"category": {
"type": "string",
"description": "Failure category, such as invalid_input or plan_required."
},
"expected": {
"type": "boolean",
"description": "Whether this is an anticipated access, input, plan or state failure."
},
"projects": {
"type": "array",
"items": {
"type": "object",
"properties": {
"id": {
"type": "number",
"description": "Project ID for projectId."
},
"name": {
"type": "string",
"description": "Project name."
}
},
"description": "Accessible project."
},
"description": "Accessible project choices. Select a projectId and retry."
},
"errorCode": {
"type": "string",
"description": "Failure code for recovery."
},
"retryable": {
"type": "boolean",
"description": "Whether an unchanged request can be retried."
},
"statusCode": {
"type": "number",
"description": "HTTP-style failure status."
},
"executionTime": {
"type": "string",
"description": "Elapsed time in seconds, with an s suffix."
}
},
"description": "Operation result envelope."
},
"annotations": {
"readOnlyHint": true,
"openWorldHint": false,
"idempotentHint": true,
"destructiveHint": false
}
}
The title clearly communicates the tool’s action and subject. Keep it concise.
Description98/100
Get the result of a workflow step test.
Use this tool after calling test_workflow_step to check if the test has completed and get the results.
Status values:
- "RUNNING": Test is still executing, poll again in a few seconds
- "COMPLETED": Test finished successfully, outputs will contain the step's output data
- "FAILED": Test failed, error field will contain the error message
For long-running steps, prefer test_workflow_steps so waiting happens server-side. When using this low-level tool, do not call it repeatedly without waiting or changing approach.
Poll an existing testRunId from test_workflow_step; a running result means wait before another read. This does not re-execute the step; test_workflow_steps can wait server-side for a sequence.
The description explains the capability, when to use it, and what to expect.
Inputs94/100
Remove validation rules already expressed in this field’s schema; describe its meaning and usage instead.
testRunId
Existing step-test execution ID returned by test_workflow_step; use it to read the same test without restarting it.
Clear enough to supply this argument.
projectId
Atomic project ID from list_projects. Omit to use the configured project; if asked to choose, select one of the accessible returned IDs.
Clear enough to supply this argument.
context
Short purpose of this call for the activity log. Exclude personal data and private source content.
Remove validation rules already expressed in this field’s schema; describe its meaning and usage instead.
llm_model
Use the exact model ID executing this call, from runtime/system context, for usage attribution. Supply it on every Atomic MCP tool call, including discovery and feedback, and update it if the model changes. Use the model ID rather than the client app name. If unavailable, omit it; never guess or ask the user.
Align the output schema with the tool’s documented result.
View output schema
{
"type": "object",
"required": [
"success"
],
"properties": {
"url": {
"type": "string",
"description": "Link for resolving the failure or completing the operation."
},
"data": {
"anyOf": [
{
"type": "object",
"required": [
"isComplete",
"isFailed",
"isRunning",
"message"
],
"properties": {
"usage": {
"description": "Provider or Atomic usage measurements for this execution."
},
"inputs": {
"description": "Resolved inputs used for this operation or step."
},
"status": {
"description": "Current saved or execution state reported by the operation."
},
"message": {
"type": "string",
"description": "Outcome, explanation or recovery instructions returned by the operation."
},
"outputs": {
"description": "Saved outputs from the completed operation or step."
},
"isFailed": {
"type": "boolean"
},
"isRunning": {
"type": "boolean"
},
"testRunId": {
"description": "Step-test execution ID to reuse when inspecting a running test."
},
"isComplete": {
"type": "boolean"
}
}
},
{
"type": "object",
"required": [
"success",
"error"
],
"properties": {
"error": {
"type": "string",
"description": "Failure details reported by this operation or its provider."
},
"success": {
"type": "boolean",
"description": "Whether this nested operation completed successfully. Inspect the containing result for details."
}
}
}
],
"description": "Operation data; optional fields may be absent."
},
"error": {
"type": "string",
"description": "Why the operation failed."
},
"details": {
"type": "object",
"description": "Diagnostics keyed by errorCode."
},
"message": {
"type": "string",
"description": "Outcome or recovery instructions. Project selection means no action ran."
},
"success": {
"type": "boolean",
"description": "Operation success; on false inspect error/errorCode."
},
"upgrade": {
"type": "object",
"description": "Plan-upgrade guidance for an unavailable capability."
},
"category": {
"type": "string",
"description": "Failure category, such as invalid_input or plan_required."
},
"expected": {
"type": "boolean",
"description": "Whether this is an anticipated access, input, plan or state failure."
},
"projects": {
"type": "array",
"items": {
"type": "object",
"properties": {
"id": {
"type": "number",
"description": "Project ID for projectId."
},
"name": {
"type": "string",
"description": "Project name."
}
},
"description": "Accessible project."
},
"description": "Accessible project choices. Select a projectId and retry."
},
"errorCode": {
"type": "string",
"description": "Failure code for recovery."
},
"retryable": {
"type": "boolean",
"description": "Whether an unchanged request can be retried."
},
"statusCode": {
"type": "number",
"description": "HTTP-style failure status."
},
"executionTime": {
"type": "string",
"description": "Elapsed time in seconds, with an s suffix."
}
},
"description": "Operation result envelope."
}
Original tool metadata
{
"name": "get_workflow_step_test_result",
"title": "Get workflow step test result",
"description": "Get the result of a workflow step test.\n\nUse this tool after calling test_workflow_step to check if the test has completed and get the results.\n\nStatus values:\n- \"RUNNING\": Test is still executing, poll again in a few seconds\n- \"COMPLETED\": Test finished successfully, outputs will contain the step's output data\n- \"FAILED\": Test failed, error field will contain the error message\n\nFor long-running steps, prefer test_workflow_steps so waiting happens server-side. When using this low-level tool, do not call it repeatedly without waiting or changing approach.\n\nPoll an existing testRunId from test_workflow_step; a running result means wait before another read. This does not re-execute the step; test_workflow_steps can wait server-side for a sequence.",
"inputSchema": {
"type": "object",
"required": [
"testRunId"
],
"properties": {
"context": {
"type": "string",
"maxLength": 120,
"description": "Short purpose of this call for the activity log. Exclude personal data and private source content."
},
"llm_model": {
"type": "string",
"maxLength": 128,
"description": "Use the exact model ID executing this call, from runtime/system context, for usage attribution. Supply it on every Atomic MCP tool call, including discovery and feedback, and update it if the model changes. Use the model ID rather than the client app name. If unavailable, omit it; never guess or ask the user."
},
"projectId": {
"type": "number",
"description": "Atomic project ID from list_projects. Omit to use the configured project; if asked to choose, select one of the accessible returned IDs."
},
"testRunId": {
"type": "number",
"description": "Existing step-test execution ID returned by test_workflow_step; use it to read the same test without restarting it."
}
}
},
"outputSchema": {
"type": "object",
"required": [
"success"
],
"properties": {
"url": {
"type": "string",
"description": "Link for resolving the failure or completing the operation."
},
"data": {
"anyOf": [
{
"type": "object",
"required": [
"isComplete",
"isFailed",
"isRunning",
"message"
],
"properties": {
"usage": {
"description": "Provider or Atomic usage measurements for this execution."
},
"inputs": {
"description": "Resolved inputs used for this operation or step."
},
"status": {
"description": "Current saved or execution state reported by the operation."
},
"message": {
"type": "string",
"description": "Outcome, explanation or recovery instructions returned by the operation."
},
"outputs": {
"description": "Saved outputs from the completed operation or step."
},
"isFailed": {
"type": "boolean"
},
"isRunning": {
"type": "boolean"
},
"testRunId": {
"description": "Step-test execution ID to reuse when inspecting a running test."
},
"isComplete": {
"type": "boolean"
}
}
},
{
"type": "object",
"required": [
"success",
"error"
],
"properties": {
"error": {
"type": "string",
"description": "Failure details reported by this operation or its provider."
},
"success": {
"type": "boolean",
"description": "Whether this nested operation completed successfully. Inspect the containing result for details."
}
}
}
],
"description": "Operation data; optional fields may be absent."
},
"error": {
"type": "string",
"description": "Why the operation failed."
},
"details": {
"type": "object",
"description": "Diagnostics keyed by errorCode."
},
"message": {
"type": "string",
"description": "Outcome or recovery instructions. Project selection means no action ran."
},
"success": {
"type": "boolean",
"description": "Operation success; on false inspect error/errorCode."
},
"upgrade": {
"type": "object",
"description": "Plan-upgrade guidance for an unavailable capability."
},
"category": {
"type": "string",
"description": "Failure category, such as invalid_input or plan_required."
},
"expected": {
"type": "boolean",
"description": "Whether this is an anticipated access, input, plan or state failure."
},
"projects": {
"type": "array",
"items": {
"type": "object",
"properties": {
"id": {
"type": "number",
"description": "Project ID for projectId."
},
"name": {
"type": "string",
"description": "Project name."
}
},
"description": "Accessible project."
},
"description": "Accessible project choices. Select a projectId and retry."
},
"errorCode": {
"type": "string",
"description": "Failure code for recovery."
},
"retryable": {
"type": "boolean",
"description": "Whether an unchanged request can be retried."
},
"statusCode": {
"type": "number",
"description": "HTTP-style failure status."
},
"executionTime": {
"type": "string",
"description": "Elapsed time in seconds, with an s suffix."
}
},
"description": "Operation result envelope."
},
"annotations": {
"readOnlyHint": true,
"openWorldHint": false,
"idempotentHint": true,
"destructiveHint": false
}
}
The title clearly communicates the tool’s action and subject. Keep it concise.
Description95/100
Get all steps for a specific workflow. Resolves the draft version when present. Each step includes its stable stepId/id, workflow-local stepIndex, canonical stepName, and exact outputReferences such as {{getGscKeywords.data}}. Never infer variable names from enum names; copy the returned references.
The description explains the capability, when to use it, and what to expect.
Inputs88/100
Remove validation rules already expressed in this field’s schema; describe its meaning and usage instead.
workflowId
Existing project workflow ID from get_workflows or create_workflow; this identifies a pipeline, not a run.
Clear enough to supply this argument.
projectId
Atomic project ID from list_projects. Omit to use the configured project; if asked to choose, select one of the accessible returned IDs.
Clear enough to supply this argument.
context
Short purpose of this call for the activity log. Exclude personal data and private source content.
Remove validation rules already expressed in this field’s schema; describe its meaning and usage instead.
llm_model
Use the exact model ID executing this call, from runtime/system context, for usage attribution. Supply it on every Atomic MCP tool call, including discovery and feedback, and update it if the model changes. Use the model ID rather than the client app name. If unavailable, omit it; never guess or ask the user.
Remove validation rules already expressed in this field’s schema; describe its meaning and usage instead.
The title clearly communicates the tool’s action and subject. Keep it concise.
Description91/100
Get all workflows for the current project. Returns a list of all workflows that belong to this project, including their names, descriptions, and IDs. Use this to discover available workflows in the project.
The description explains the capability, when to use it, and what to expect.
Inputs92/100
Remove validation rules already expressed in this field’s schema; describe its meaning and usage instead.
projectId
Atomic project ID from list_projects. Omit to use the configured project; if asked to choose, select one of the accessible returned IDs.
Clear enough to supply this argument.
context
Short purpose of this call for the activity log. Exclude personal data and private source content.
Remove validation rules already expressed in this field’s schema; describe its meaning and usage instead.
llm_model
Use the exact model ID executing this call, from runtime/system context, for usage attribution. Supply it on every Atomic MCP tool call, including discovery and feedback, and update it if the model changes. Use the model ID rather than the client app name. If unavailable, omit it; never guess or ask the user.
Align the output schema with the tool’s documented result.
View output schema
{
"type": "object",
"required": [
"success"
],
"properties": {
"url": {
"type": "string",
"description": "Link for resolving the failure or completing the operation."
},
"data": {
"type": "array",
"items": {
"type": "object",
"required": [
"name",
"description",
"selectedVersionId",
"projectId",
"createdAt",
"updatedAt"
],
"properties": {
"id": {
"type": "number",
"description": "Identifier of this returned resource. Use it for subsequent reads or edits of the same resource."
},
"name": {
"type": "string",
"description": "Human-readable name of this resource."
},
"schedule": {
"type": "object",
"required": [
"projectId",
"type",
"frequency",
"timeRange",
"minuteOffset",
"timezone",
"isActive",
"createdAt",
"updatedAt"
],
"properties": {
"id": {
"type": "number",
"description": "Identifier of this returned resource. Use it for subsequent reads or edits of the same resource."
},
"name": {
"anyOf": [
{
"type": "null"
},
{
"type": "string"
}
],
"description": "Human-readable name of this resource."
},
"type": {
"enum": [
"seo_audit",
"seo_audit_notification",
"keyword_research",
"competitor_analysis",
"backlink_analysis",
"content_analysis",
"prompt_tracking",
"prompt_tracking_via_api",
"performance_report",
"weekly_digest",
"workflow",
"agent_conversation"
],
"type": "string",
"description": "Kind of the returned item; determines how its operation-specific fields should be interpreted."
},
"prompt": {
"anyOf": [
{
"type": "null"
},
{
"type": "string"
}
],
"description": "Prompt text used for the tracked or tested AI-search run."
},
"agentId": {
"anyOf": [
{
"type": "null"
},
{
"type": "number"
}
],
"description": "Saved Atomic agent associated with this resource or execution."
},
"isActive": {
"type": "boolean",
"description": "Whether this saved configuration is enabled."
},
"timezone": {
"type": "string"
},
"createdAt": {
"type": "string",
"format": "date-time",
"description": "Date and time this record was created, serialized as ISO 8601."
},
"dayOfWeek": {
"enum": [
"mondays",
"tuesdays",
"wednesdays",
"thursdays",
"fridays",
"saturdays",
"sundays"
],
"type": "string"
},
"frequency": {
"enum": [
"once",
"daily",
"every_48_hours",
"every_72_hours",
"weekly",
"bi_weekly",
"monthly",
"off"
],
"type": "string"
},
"lastRunAt": {
"type": "string",
"format": "date-time",
"description": "Timestamp serialized as an ISO 8601 date and time."
},
"nextRunAt": {
"type": "string",
"format": "date-time",
"description": "Timestamp serialized as an ISO 8601 date and time."
},
"projectId": {
"type": "number",
"description": "Atomic project that owns this resource."
},
"timeRange": {
"type": "string"
},
"updatedAt": {
"type": "string",
"format": "date-time",
"description": "Date and time this record was last updated, serialized as ISO 8601."
},
"gridCellId": {
"anyOf": [
{
"type": "null"
},
{
"type": "number"
}
]
},
"workflowId": {
"type": "number",
"description": "Saved workflow definition associated with this result."
},
"minuteOffset": {
"type": "number"
},
"monthlyOption": {
"enum": [
"first_day",
"fifth_day",
"last_day",
"first_monday",
"second_monday",
"third_monday",
"fourth_monday",
"first_friday",
"second_friday",
"third_friday",
"fourth_friday",
"middle_month"
],
"type": "string"
},
"conversationId": {
"anyOf": [
{
"type": "null"
},
{
"type": "string"
}
],
"description": "Conversation associated with this task or execution."
},
"workflowInputs": {
"type": "object",
"description": "Nested operation-specific fields."
},
"initiatedByUserId": {
"anyOf": [
{
"type": "null"
},
{
"type": "number"
}
],
"description": "Actual initiating member; null only for historical records/non-workflow service schedules."
}
}
},
"createdAt": {
"type": "string",
"format": "date-time",
"description": "Date and time this record was created, serialized as ISO 8601."
},
"projectId": {
"type": "number",
"description": "Atomic project that owns this resource."
},
"updatedAt": {
"type": "string",
"format": "date-time",
"description": "Date and time this record was last updated, serialized as ISO 8601."
},
"description": {
"type": "string",
"description": "Saved description of this resource or its purpose."
},
"selectedVersionId": {
"type": "number"
},
"collectionFolderId": {
"anyOf": [
{
"type": "null"
},
{
"type": "number"
}
],
"description": "Folder containing this item in its Atomic collection; null means top level."
}
}
},
"description": "Operation data; optional fields may be absent."
},
"error": {
"type": "string",
"description": "Why the operation failed."
},
"details": {
"type": "object",
"description": "Diagnostics keyed by errorCode."
},
"message": {
"type": "string",
"description": "Outcome or recovery instructions. Project selection means no action ran."
},
"success": {
"type": "boolean",
"description": "Operation success; on false inspect error/errorCode."
},
"upgrade": {
"type": "object",
"description": "Plan-upgrade guidance for an unavailable capability."
},
"category": {
"type": "string",
"description": "Failure category, such as invalid_input or plan_required."
},
"expected": {
"type": "boolean",
"description": "Whether this is an anticipated access, input, plan or state failure."
},
"projects": {
"type": "array",
"items": {
"type": "object",
"properties": {
"id": {
"type": "number",
"description": "Project ID for projectId."
},
"name": {
"type": "string",
"description": "Project name."
}
},
"description": "Accessible project."
},
"description": "Accessible project choices. Select a projectId and retry."
},
"errorCode": {
"type": "string",
"description": "Failure code for recovery."
},
"retryable": {
"type": "boolean",
"description": "Whether an unchanged request can be retried."
},
"statusCode": {
"type": "number",
"description": "HTTP-style failure status."
},
"executionTime": {
"type": "string",
"description": "Elapsed time in seconds, with an s suffix."
}
},
"description": "Operation result envelope."
}
Original tool metadata
{
"name": "get_workflows",
"title": "Get workflows",
"description": "Get all workflows for the current project. Returns a list of all workflows that belong to this project, including their names, descriptions, and IDs. Use this to discover available workflows in the project.",
"inputSchema": {
"type": "object",
"required": [],
"properties": {
"context": {
"type": "string",
"maxLength": 120,
"description": "Short purpose of this call for the activity log. Exclude personal data and private source content."
},
"llm_model": {
"type": "string",
"maxLength": 128,
"description": "Use the exact model ID executing this call, from runtime/system context, for usage attribution. Supply it on every Atomic MCP tool call, including discovery and feedback, and update it if the model changes. Use the model ID rather than the client app name. If unavailable, omit it; never guess or ask the user."
},
"projectId": {
"type": "number",
"description": "Atomic project ID from list_projects. Omit to use the configured project; if asked to choose, select one of the accessible returned IDs."
}
}
},
"outputSchema": {
"type": "object",
"required": [
"success"
],
"properties": {
"url": {
"type": "string",
"description": "Link for resolving the failure or completing the operation."
},
"data": {
"type": "array",
"items": {
"type": "object",
"required": [
"name",
"description",
"selectedVersionId",
"projectId",
"createdAt",
"updatedAt"
],
"properties": {
"id": {
"type": "number",
"description": "Identifier of this returned resource. Use it for subsequent reads or edits of the same resource."
},
"name": {
"type": "string",
"description": "Human-readable name of this resource."
},
"schedule": {
"type": "object",
"required": [
"projectId",
"type",
"frequency",
"timeRange",
"minuteOffset",
"timezone",
"isActive",
"createdAt",
"updatedAt"
],
"properties": {
"id": {
"type": "number",
"description": "Identifier of this returned resource. Use it for subsequent reads or edits of the same resource."
},
"name": {
"anyOf": [
{
"type": "null"
},
{
"type": "string"
}
],
"description": "Human-readable name of this resource."
},
"type": {
"enum": [
"seo_audit",
"seo_audit_notification",
"keyword_research",
"competitor_analysis",
"backlink_analysis",
"content_analysis",
"prompt_tracking",
"prompt_tracking_via_api",
"performance_report",
"weekly_digest",
"workflow",
"agent_conversation"
],
"type": "string",
"description": "Kind of the returned item; determines how its operation-specific fields should be interpreted."
},
"prompt": {
"anyOf": [
{
"type": "null"
},
{
"type": "string"
}
],
"description": "Prompt text used for the tracked or tested AI-search run."
},
"agentId": {
"anyOf": [
{
"type": "null"
},
{
"type": "number"
}
],
"description": "Saved Atomic agent associated with this resource or execution."
},
"isActive": {
"type": "boolean",
"description": "Whether this saved configuration is enabled."
},
"timezone": {
"type": "string"
},
"createdAt": {
"type": "string",
"format": "date-time",
"description": "Date and time this record was created, serialized as ISO 8601."
},
"dayOfWeek": {
"enum": [
"mondays",
"tuesdays",
"wednesdays",
"thursdays",
"fridays",
"saturdays",
"sundays"
],
"type": "string"
},
"frequency": {
"enum": [
"once",
"daily",
"every_48_hours",
"every_72_hours",
"weekly",
"bi_weekly",
"monthly",
"off"
],
"type": "string"
},
"lastRunAt": {
"type": "string",
"format": "date-time",
"description": "Timestamp serialized as an ISO 8601 date and time."
},
"nextRunAt": {
"type": "string",
"format": "date-time",
"description": "Timestamp serialized as an ISO 8601 date and time."
},
"projectId": {
"type": "number",
"description": "Atomic project that owns this resource."
},
"timeRange": {
"type": "string"
},
"updatedAt": {
"type": "string",
"format": "date-time",
"description": "Date and time this record was last updated, serialized as ISO 8601."
},
"gridCellId": {
"anyOf": [
{
"type": "null"
},
{
"type": "number"
}
]
},
"workflowId": {
"type": "number",
"description": "Saved workflow definition associated with this result."
},
"minuteOffset": {
"type": "number"
},
"monthlyOption": {
"enum": [
"first_day",
"fifth_day",
"last_day",
"first_monday",
"second_monday",
"third_monday",
"fourth_monday",
"first_friday",
"second_friday",
"third_friday",
"fourth_friday",
"middle_month"
],
"type": "string"
},
"conversationId": {
"anyOf": [
{
"type": "null"
},
{
"type": "string"
}
],
"description": "Conversation associated with this task or execution."
},
"workflowInputs": {
"type": "object",
"description": "Nested operation-specific fields."
},
"initiatedByUserId": {
"anyOf": [
{
"type": "null"
},
{
"type": "number"
}
],
"description": "Actual initiating member; null only for historical records/non-workflow service schedules."
}
}
},
"createdAt": {
"type": "string",
"format": "date-time",
"description": "Date and time this record was created, serialized as ISO 8601."
},
"projectId": {
"type": "number",
"description": "Atomic project that owns this resource."
},
"updatedAt": {
"type": "string",
"format": "date-time",
"description": "Date and time this record was last updated, serialized as ISO 8601."
},
"description": {
"type": "string",
"description": "Saved description of this resource or its purpose."
},
"selectedVersionId": {
"type": "number"
},
"collectionFolderId": {
"anyOf": [
{
"type": "null"
},
{
"type": "number"
}
],
"description": "Folder containing this item in its Atomic collection; null means top level."
}
}
},
"description": "Operation data; optional fields may be absent."
},
"error": {
"type": "string",
"description": "Why the operation failed."
},
"details": {
"type": "object",
"description": "Diagnostics keyed by errorCode."
},
"message": {
"type": "string",
"description": "Outcome or recovery instructions. Project selection means no action ran."
},
"success": {
"type": "boolean",
"description": "Operation success; on false inspect error/errorCode."
},
"upgrade": {
"type": "object",
"description": "Plan-upgrade guidance for an unavailable capability."
},
"category": {
"type": "string",
"description": "Failure category, such as invalid_input or plan_required."
},
"expected": {
"type": "boolean",
"description": "Whether this is an anticipated access, input, plan or state failure."
},
"projects": {
"type": "array",
"items": {
"type": "object",
"properties": {
"id": {
"type": "number",
"description": "Project ID for projectId."
},
"name": {
"type": "string",
"description": "Project name."
}
},
"description": "Accessible project."
},
"description": "Accessible project choices. Select a projectId and retry."
},
"errorCode": {
"type": "string",
"description": "Failure code for recovery."
},
"retryable": {
"type": "boolean",
"description": "Whether an unchanged request can be retried."
},
"statusCode": {
"type": "number",
"description": "HTTP-style failure status."
},
"executionTime": {
"type": "string",
"description": "Elapsed time in seconds, with an s suffix."
}
},
"description": "Operation result envelope."
},
"annotations": {
"readOnlyHint": true,
"openWorldHint": false,
"idempotentHint": true,
"destructiveHint": false
}
}
The title clearly communicates the tool’s action and subject. Keep it concise.
Description98/100
Download an existing stock or website image from a direct image URL and upload it to Atomic S3. Embed the exact returned imageUrl, including its full storage suffix. Never construct a URL from filename or remove a suffix. Raster images larger than 10 MiB are automatically resized and converted to WebP. Use this for blog inline images that need a final S3 URL plus visible source credit. Wikimedia Commons File: description URLs are resolved to their original image; other webpage URLs are unsupported. Run imports sequentially and retry a busy image processor after the current image operation settles. Do not pass screenshots, generated image URLs, or images without a real source to credit.
Creates an Atomic copy of an existing image and returns its URL; it does not license the source or publish content. Use generate_image only when a new illustration is needed.
The description explains the capability, when to use it, and what to expect.
Inputs95/100
Input documentation gives an agent enough context to populate the arguments.
imageUrl
Required direct image asset URL, such as a .jpg, .png, .webp, .gif, or Wikimedia Special:FilePath or File: description URL. Commons File: pages resolve to the original asset. Other article/page URLs are unsupported.
Clear enough to supply this argument.
sourceName
Required human-readable source name to show in the credit line, for example Wikimedia Commons.
Clear enough to supply this argument.
sourceUrl
Required original source or license page URL to credit below the image. This should be the page users can open to verify the image source.
Clear enough to supply this argument.
filename
Optional filename for S3. If omitted, one is generated from the source name and image URL.
Clear enough to supply this argument.
projectId
Atomic project ID from list_projects. Omit to use the configured project; if asked to choose, select one of the accessible returned IDs.
Clear enough to supply this argument.
context
Short purpose of this call for the activity log. Exclude personal data and private source content.
Clear enough to supply this argument.
llm_model
Use the exact model ID executing this call, from runtime/system context, for usage attribution. Supply it on every Atomic MCP tool call, including discovery and feedback, and update it if the model changes. Use the model ID rather than the client app name. If unavailable, omit it; never guess or ask the user.
Align the output schema with the tool’s documented result.
View output schema
{
"type": "object",
"required": [
"success"
],
"properties": {
"url": {
"type": "string",
"description": "Link for resolving the failure or completing the operation."
},
"data": {
"type": "object",
"required": [
"imageUrl",
"key",
"sourceName",
"sourceUrl",
"originalImageUrl",
"creditMarkdown",
"contentType",
"size",
"originalSize",
"optimized"
],
"properties": {
"key": {
"type": "string",
"description": "Storage or provider key identifying this returned resource."
},
"size": {
"type": "number",
"description": "Size measurement reported by this resource; file results use bytes and visual results use their documented dimensions."
},
"filename": {
"type": "string",
"description": "Filename of the stored or uploaded asset."
},
"imageUrl": {
"type": "string",
"description": "URL of the generated, uploaded or selected image."
},
"optimized": {
"type": "boolean",
"description": "Whether the imported asset was optimized before storage."
},
"sourceUrl": {
"type": "string",
"description": "Original public source URL associated with this result."
},
"sourceName": {
"type": "string",
"description": "Human-readable attribution name of the source."
},
"contentType": {
"type": "string",
"description": "Content kind returned by the operation, such as a native CMS post type or a file MIME type."
},
"originalSize": {
"type": "number",
"description": "Size of the original downloaded asset in bytes."
},
"creditMarkdown": {
"type": "string",
"description": "Markdown attribution to retain when using the imported image."
},
"originalImageUrl": {
"type": "string",
"description": "Original image URL supplied to the import operation."
}
},
"description": "Operation data; optional fields may be absent."
},
"error": {
"type": "string",
"description": "Why the operation failed."
},
"details": {
"type": "object",
"description": "Diagnostics keyed by errorCode."
},
"message": {
"type": "string",
"description": "Outcome or recovery instructions. Project selection means no action ran."
},
"success": {
"type": "boolean",
"description": "Operation success; on false inspect error/errorCode."
},
"upgrade": {
"type": "object",
"description": "Plan-upgrade guidance for an unavailable capability."
},
"category": {
"type": "string",
"description": "Failure category, such as invalid_input or plan_required."
},
"expected": {
"type": "boolean",
"description": "Whether this is an anticipated access, input, plan or state failure."
},
"projects": {
"type": "array",
"items": {
"type": "object",
"properties": {
"id": {
"type": "number",
"description": "Project ID for projectId."
},
"name": {
"type": "string",
"description": "Project name."
}
},
"description": "Accessible project."
},
"description": "Accessible project choices. Select a projectId and retry."
},
"errorCode": {
"type": "string",
"description": "Failure code for recovery."
},
"retryable": {
"type": "boolean",
"description": "Whether an unchanged request can be retried."
},
"statusCode": {
"type": "number",
"description": "HTTP-style failure status."
},
"executionTime": {
"type": "string",
"description": "Elapsed time in seconds, with an s suffix."
}
},
"description": "Operation result envelope."
}
Original tool metadata
{
"name": "import_image_to_s3",
"title": "Import image to S3",
"description": "Download an existing stock or website image from a direct image URL and upload it to Atomic S3. Embed the exact returned imageUrl, including its full storage suffix. Never construct a URL from filename or remove a suffix. Raster images larger than 10 MiB are automatically resized and converted to WebP. Use this for blog inline images that need a final S3 URL plus visible source credit. Wikimedia Commons File: description URLs are resolved to their original image; other webpage URLs are unsupported. Run imports sequentially and retry a busy image processor after the current image operation settles. Do not pass screenshots, generated image URLs, or images without a real source to credit.\n\nCreates an Atomic copy of an existing image and returns its URL; it does not license the source or publish content. Use generate_image only when a new illustration is needed.",
"inputSchema": {
"type": "object",
"required": [
"imageUrl",
"sourceName",
"sourceUrl"
],
"properties": {
"context": {
"type": "string",
"maxLength": 120,
"description": "Short purpose of this call for the activity log. Exclude personal data and private source content."
},
"filename": {
"type": "string",
"description": "Optional filename for S3. If omitted, one is generated from the source name and image URL."
},
"imageUrl": {
"type": "string",
"description": "Required direct image asset URL, such as a .jpg, .png, .webp, .gif, or Wikimedia Special:FilePath or File: description URL. Commons File: pages resolve to the original asset. Other article/page URLs are unsupported."
},
"llm_model": {
"type": "string",
"maxLength": 128,
"description": "Use the exact model ID executing this call, from runtime/system context, for usage attribution. Supply it on every Atomic MCP tool call, including discovery and feedback, and update it if the model changes. Use the model ID rather than the client app name. If unavailable, omit it; never guess or ask the user."
},
"projectId": {
"type": "number",
"description": "Atomic project ID from list_projects. Omit to use the configured project; if asked to choose, select one of the accessible returned IDs."
},
"sourceUrl": {
"type": "string",
"description": "Required original source or license page URL to credit below the image. This should be the page users can open to verify the image source."
},
"sourceName": {
"type": "string",
"description": "Required human-readable source name to show in the credit line, for example Wikimedia Commons."
}
}
},
"outputSchema": {
"type": "object",
"required": [
"success"
],
"properties": {
"url": {
"type": "string",
"description": "Link for resolving the failure or completing the operation."
},
"data": {
"type": "object",
"required": [
"imageUrl",
"key",
"sourceName",
"sourceUrl",
"originalImageUrl",
"creditMarkdown",
"contentType",
"size",
"originalSize",
"optimized"
],
"properties": {
"key": {
"type": "string",
"description": "Storage or provider key identifying this returned resource."
},
"size": {
"type": "number",
"description": "Size measurement reported by this resource; file results use bytes and visual results use their documented dimensions."
},
"filename": {
"type": "string",
"description": "Filename of the stored or uploaded asset."
},
"imageUrl": {
"type": "string",
"description": "URL of the generated, uploaded or selected image."
},
"optimized": {
"type": "boolean",
"description": "Whether the imported asset was optimized before storage."
},
"sourceUrl": {
"type": "string",
"description": "Original public source URL associated with this result."
},
"sourceName": {
"type": "string",
"description": "Human-readable attribution name of the source."
},
"contentType": {
"type": "string",
"description": "Content kind returned by the operation, such as a native CMS post type or a file MIME type."
},
"originalSize": {
"type": "number",
"description": "Size of the original downloaded asset in bytes."
},
"creditMarkdown": {
"type": "string",
"description": "Markdown attribution to retain when using the imported image."
},
"originalImageUrl": {
"type": "string",
"description": "Original image URL supplied to the import operation."
}
},
"description": "Operation data; optional fields may be absent."
},
"error": {
"type": "string",
"description": "Why the operation failed."
},
"details": {
"type": "object",
"description": "Diagnostics keyed by errorCode."
},
"message": {
"type": "string",
"description": "Outcome or recovery instructions. Project selection means no action ran."
},
"success": {
"type": "boolean",
"description": "Operation success; on false inspect error/errorCode."
},
"upgrade": {
"type": "object",
"description": "Plan-upgrade guidance for an unavailable capability."
},
"category": {
"type": "string",
"description": "Failure category, such as invalid_input or plan_required."
},
"expected": {
"type": "boolean",
"description": "Whether this is an anticipated access, input, plan or state failure."
},
"projects": {
"type": "array",
"items": {
"type": "object",
"properties": {
"id": {
"type": "number",
"description": "Project ID for projectId."
},
"name": {
"type": "string",
"description": "Project name."
}
},
"description": "Accessible project."
},
"description": "Accessible project choices. Select a projectId and retry."
},
"errorCode": {
"type": "string",
"description": "Failure code for recovery."
},
"retryable": {
"type": "boolean",
"description": "Whether an unchanged request can be retried."
},
"statusCode": {
"type": "number",
"description": "HTTP-style failure status."
},
"executionTime": {
"type": "string",
"description": "Elapsed time in seconds, with an s suffix."
}
},
"description": "Operation result envelope."
},
"annotations": {
"readOnlyHint": false,
"openWorldHint": true,
"idempotentHint": false,
"destructiveHint": false
}
}
Name the specific action and subject instead of using a generic label such as ‘manage’ or ‘tool’.
Description82/100
Synthesize durable self-improvements for the current agent from its existing memories. Use this to convert repeated observations into reusable rules, heuristics, or better operating instructions.
Uses existing agent memories to save revised reusable guidance; it can replace memory state and use model credits. recall only reads existing memories and remember adds a supplied one.
Explain mutations, irreversible effects, or prerequisites that matter before calling this tool.
Inputs80/100
Explain the meaning of this value, not just its name.
focus
Optional focus area for the improvement synthesis
Explain the meaning of this value, not just its name.
maxSourceEntries
Optional maximum number of source memories to synthesize
Remove validation rules already expressed in this field’s schema; describe its meaning and usage instead.
projectId
Atomic project ID from list_projects. Omit to use the configured project; if asked to choose, select one of the accessible returned IDs.
Clear enough to supply this argument.
context
Short purpose of this call for the activity log. Exclude personal data and private source content.
Remove validation rules already expressed in this field’s schema; describe its meaning and usage instead.
llm_model
Use the exact model ID executing this call, from runtime/system context, for usage attribution. Supply it on every Atomic MCP tool call, including discovery and feedback, and update it if the model changes. Use the model ID rather than the client app name. If unavailable, omit it; never guess or ask the user.
{
"type": "object",
"required": [
"success"
],
"properties": {
"url": {
"type": "string",
"description": "Link for resolving the failure or completing the operation."
},
"data": {
"type": "object",
"required": [
"entry",
"summary",
"lessons",
"sourceEntries",
"success"
],
"properties": {
"entry": {
"type": "object",
"required": [
"agentId",
"content",
"kind",
"recallCount",
"createdAt",
"updatedAt"
],
"properties": {
"id": {
"type": "string",
"description": "Identifier of this returned resource. Use it for subsequent reads or edits of the same resource."
},
"kind": {
"enum": [
"memory",
"improvement"
],
"type": "string",
"description": "Discriminator identifying the variant of this returned item."
},
"tags": {
"anyOf": [
{
"type": "null"
},
{
"type": "array",
"items": {
"type": "string"
}
}
]
},
"agentId": {
"type": "number",
"description": "Saved Atomic agent associated with this resource or execution."
},
"content": {
"type": "string",
"description": "Returned content body in the format described by the containing resource."
},
"createdAt": {
"type": "string",
"format": "date-time",
"description": "Date and time this record was created, serialized as ISO 8601."
},
"updatedAt": {
"type": "string",
"format": "date-time",
"description": "Date and time this record was last updated, serialized as ISO 8601."
},
"recallCount": {
"type": "number"
},
"lastRecalledAt": {
"anyOf": [
{
"type": "null"
},
{
"type": "string",
"format": "date-time",
"description": "Timestamp serialized as an ISO 8601 date and time."
}
]
},
"sourceConversationId": {
"anyOf": [
{
"type": "null"
},
{
"type": "string"
}
],
"description": "Conversation that produced this saved result."
}
}
},
"lessons": {
"type": "array",
"items": {
"type": "string"
}
},
"success": {
"type": "boolean",
"description": "Whether this nested operation completed successfully. Inspect the containing result for details."
},
"summary": {
"type": "string"
},
"sourceEntries": {
"type": "array",
"items": {
"type": "object",
"required": [
"agentId",
"content",
"kind",
"recallCount",
"createdAt",
"updatedAt"
],
"properties": {
"id": {
"type": "string",
"description": "Identifier of this returned resource. Use it for subsequent reads or edits of the same resource."
},
"kind": {
"enum": [
"memory",
"improvement"
],
"type": "string",
"description": "Discriminator identifying the variant of this returned item."
},
"tags": {
"anyOf": [
{
"type": "null"
},
{
"type": "array",
"items": {
"type": "string"
}
}
]
},
"agentId": {
"type": "number",
"description": "Saved Atomic agent associated with this resource or execution."
},
"content": {
"type": "string",
"description": "Returned content body in the format described by the containing resource."
},
"createdAt": {
"type": "string",
"format": "date-time",
"description": "Date and time this record was created, serialized as ISO 8601."
},
"updatedAt": {
"type": "string",
"format": "date-time",
"description": "Date and time this record was last updated, serialized as ISO 8601."
},
"recallCount": {
"type": "number"
},
"lastRecalledAt": {
"anyOf": [
{
"type": "null"
},
{
"type": "string",
"format": "date-time",
"description": "Timestamp serialized as an ISO 8601 date and time."
}
]
},
"sourceConversationId": {
"anyOf": [
{
"type": "null"
},
{
"type": "string"
}
],
"description": "Conversation that produced this saved result."
}
}
}
}
},
"description": "Operation data; optional fields may be absent."
},
"error": {
"type": "string",
"description": "Why the operation failed."
},
"details": {
"type": "object",
"description": "Diagnostics keyed by errorCode."
},
"message": {
"type": "string",
"description": "Outcome or recovery instructions. Project selection means no action ran."
},
"success": {
"type": "boolean",
"description": "Operation success; on false inspect error/errorCode."
},
"upgrade": {
"type": "object",
"description": "Plan-upgrade guidance for an unavailable capability."
},
"category": {
"type": "string",
"description": "Failure category, such as invalid_input or plan_required."
},
"expected": {
"type": "boolean",
"description": "Whether this is an anticipated access, input, plan or state failure."
},
"projects": {
"type": "array",
"items": {
"type": "object",
"properties": {
"id": {
"type": "number",
"description": "Project ID for projectId."
},
"name": {
"type": "string",
"description": "Project name."
}
},
"description": "Accessible project."
},
"description": "Accessible project choices. Select a projectId and retry."
},
"errorCode": {
"type": "string",
"description": "Failure code for recovery."
},
"retryable": {
"type": "boolean",
"description": "Whether an unchanged request can be retried."
},
"statusCode": {
"type": "number",
"description": "HTTP-style failure status."
},
"executionTime": {
"type": "string",
"description": "Elapsed time in seconds, with an s suffix."
}
},
"description": "Operation result envelope."
}
Original tool metadata
{
"name": "improve",
"title": "Improve",
"description": "Synthesize durable self-improvements for the current agent from its existing memories. Use this to convert repeated observations into reusable rules, heuristics, or better operating instructions.\n\nUses existing agent memories to save revised reusable guidance; it can replace memory state and use model credits. recall only reads existing memories and remember adds a supplied one.",
"inputSchema": {
"type": "object",
"required": [],
"properties": {
"focus": {
"type": "string",
"description": "Optional focus area for the improvement synthesis"
},
"context": {
"type": "string",
"maxLength": 120,
"description": "Short purpose of this call for the activity log. Exclude personal data and private source content."
},
"llm_model": {
"type": "string",
"maxLength": 128,
"description": "Use the exact model ID executing this call, from runtime/system context, for usage attribution. Supply it on every Atomic MCP tool call, including discovery and feedback, and update it if the model changes. Use the model ID rather than the client app name. If unavailable, omit it; never guess or ask the user."
},
"projectId": {
"type": "number",
"description": "Atomic project ID from list_projects. Omit to use the configured project; if asked to choose, select one of the accessible returned IDs."
},
"maxSourceEntries": {
"type": "number",
"description": "Optional maximum number of source memories to synthesize"
}
}
},
"outputSchema": {
"type": "object",
"required": [
"success"
],
"properties": {
"url": {
"type": "string",
"description": "Link for resolving the failure or completing the operation."
},
"data": {
"type": "object",
"required": [
"entry",
"summary",
"lessons",
"sourceEntries",
"success"
],
"properties": {
"entry": {
"type": "object",
"required": [
"agentId",
"content",
"kind",
"recallCount",
"createdAt",
"updatedAt"
],
"properties": {
"id": {
"type": "string",
"description": "Identifier of this returned resource. Use it for subsequent reads or edits of the same resource."
},
"kind": {
"enum": [
"memory",
"improvement"
],
"type": "string",
"description": "Discriminator identifying the variant of this returned item."
},
"tags": {
"anyOf": [
{
"type": "null"
},
{
"type": "array",
"items": {
"type": "string"
}
}
]
},
"agentId": {
"type": "number",
"description": "Saved Atomic agent associated with this resource or execution."
},
"content": {
"type": "string",
"description": "Returned content body in the format described by the containing resource."
},
"createdAt": {
"type": "string",
"format": "date-time",
"description": "Date and time this record was created, serialized as ISO 8601."
},
"updatedAt": {
"type": "string",
"format": "date-time",
"description": "Date and time this record was last updated, serialized as ISO 8601."
},
"recallCount": {
"type": "number"
},
"lastRecalledAt": {
"anyOf": [
{
"type": "null"
},
{
"type": "string",
"format": "date-time",
"description": "Timestamp serialized as an ISO 8601 date and time."
}
]
},
"sourceConversationId": {
"anyOf": [
{
"type": "null"
},
{
"type": "string"
}
],
"description": "Conversation that produced this saved result."
}
}
},
"lessons": {
"type": "array",
"items": {
"type": "string"
}
},
"success": {
"type": "boolean",
"description": "Whether this nested operation completed successfully. Inspect the containing result for details."
},
"summary": {
"type": "string"
},
"sourceEntries": {
"type": "array",
"items": {
"type": "object",
"required": [
"agentId",
"content",
"kind",
"recallCount",
"createdAt",
"updatedAt"
],
"properties": {
"id": {
"type": "string",
"description": "Identifier of this returned resource. Use it for subsequent reads or edits of the same resource."
},
"kind": {
"enum": [
"memory",
"improvement"
],
"type": "string",
"description": "Discriminator identifying the variant of this returned item."
},
"tags": {
"anyOf": [
{
"type": "null"
},
{
"type": "array",
"items": {
"type": "string"
}
}
]
},
"agentId": {
"type": "number",
"description": "Saved Atomic agent associated with this resource or execution."
},
"content": {
"type": "string",
"description": "Returned content body in the format described by the containing resource."
},
"createdAt": {
"type": "string",
"format": "date-time",
"description": "Date and time this record was created, serialized as ISO 8601."
},
"updatedAt": {
"type": "string",
"format": "date-time",
"description": "Date and time this record was last updated, serialized as ISO 8601."
},
"recallCount": {
"type": "number"
},
"lastRecalledAt": {
"anyOf": [
{
"type": "null"
},
{
"type": "string",
"format": "date-time",
"description": "Timestamp serialized as an ISO 8601 date and time."
}
]
},
"sourceConversationId": {
"anyOf": [
{
"type": "null"
},
{
"type": "string"
}
],
"description": "Conversation that produced this saved result."
}
}
}
}
},
"description": "Operation data; optional fields may be absent."
},
"error": {
"type": "string",
"description": "Why the operation failed."
},
"details": {
"type": "object",
"description": "Diagnostics keyed by errorCode."
},
"message": {
"type": "string",
"description": "Outcome or recovery instructions. Project selection means no action ran."
},
"success": {
"type": "boolean",
"description": "Operation success; on false inspect error/errorCode."
},
"upgrade": {
"type": "object",
"description": "Plan-upgrade guidance for an unavailable capability."
},
"category": {
"type": "string",
"description": "Failure category, such as invalid_input or plan_required."
},
"expected": {
"type": "boolean",
"description": "Whether this is an anticipated access, input, plan or state failure."
},
"projects": {
"type": "array",
"items": {
"type": "object",
"properties": {
"id": {
"type": "number",
"description": "Project ID for projectId."
},
"name": {
"type": "string",
"description": "Project name."
}
},
"description": "Accessible project."
},
"description": "Accessible project choices. Select a projectId and retry."
},
"errorCode": {
"type": "string",
"description": "Failure code for recovery."
},
"retryable": {
"type": "boolean",
"description": "Whether an unchanged request can be retried."
},
"statusCode": {
"type": "number",
"description": "HTTP-style failure status."
},
"executionTime": {
"type": "string",
"description": "Elapsed time in seconds, with an s suffix."
}
},
"description": "Operation result envelope."
},
"annotations": {
"readOnlyHint": false,
"openWorldHint": false,
"idempotentHint": false,
"destructiveHint": true
}
}
The title clearly communicates the tool’s action and subject. Keep it concise.
Description97/100
List saved-tracking and one-off test runs (isTest identifies tests), including pending, completed and failed runs, with pagination, country, and topResults (up to five ranked brands with domain, position and mention frequency, as in Recent chats). Optional prompt/date/engine and brand-mentioned filters. Returns nextRun from the earliest active tracking schedule; null if unscheduled. Without dates, returns all history.
Use to find runId and distinguish saved tracking from one-off tests before get_ai_search_prompt_run. Listing history does not start or schedule an answer.
The description explains the capability, when to use it, and what to expect.
Inputs85/100
Remove validation rules already expressed in this field’s schema; describe its meaning and usage instead.
startDate
Start date in ISO format (YYYY-MM-DD). If not provided, defaults to 30 days ago.
Remove validation rules already expressed in this field’s schema; describe its meaning and usage instead.
endDate
End date in ISO format (YYYY-MM-DD). If not provided, defaults to today.
Remove validation rules already expressed in this field’s schema; describe its meaning and usage instead.
promptId
Saved tracked prompt ID from get_project_prompts, not a one-off test run ID.
Remove validation rules already expressed in this field’s schema; describe its meaning and usage instead.
engines
AI-search engine identifiers to include. Discover engine availability with get_ai_search_generative_engines.
Remove validation rules already expressed in this field’s schema; describe its meaning and usage instead.
brandMentioned
Filter runs by whether the brand was mentioned in the generated answer.
Clear enough to supply this argument.
page
Page number to request from the provider; start with the initial page and follow nextPage when present.
Remove validation rules already expressed in this field’s schema; describe its meaning and usage instead.
limit
Maximum number of matching results to return in this request.
Remove validation rules already expressed in this field’s schema; describe its meaning and usage instead.
projectId
Atomic project ID from list_projects. Omit to use the configured project; if asked to choose, select one of the accessible returned IDs.
Clear enough to supply this argument.
context
Short purpose of this call for the activity log. Exclude personal data and private source content.
Clear enough to supply this argument.
llm_model
Use the exact model ID executing this call, from runtime/system context, for usage attribution. Supply it on every Atomic MCP tool call, including discovery and feedback, and update it if the model changes. Use the model ID rather than the client app name. If unavailable, omit it; never guess or ask the user.
{
"type": "object",
"required": [
"success"
],
"properties": {
"url": {
"type": "string",
"description": "Link for resolving the failure or completing the operation."
},
"data": {
"type": "object",
"required": [
"data",
"total",
"page",
"limit",
"totalPages",
"nextPage",
"nextRun"
],
"properties": {
"data": {
"type": "array",
"items": {
"type": "object",
"required": [
"runId",
"isTest",
"promptId",
"prompt",
"model",
"status",
"createdAt",
"brandMentioned",
"country",
"topResults"
],
"properties": {
"model": {
"type": "string",
"description": "Model identifier used for the reported generation or AI-search run."
},
"runId": {
"type": "number",
"description": "Execution identifier returned for subsequent status or result reads."
},
"isTest": {
"type": "boolean"
},
"prompt": {
"type": "string",
"description": "Prompt text used for the tracked or tested AI-search run."
},
"status": {
"type": "string",
"description": "Current saved or execution state reported by the operation."
},
"country": {
"anyOf": [
{
"type": "null"
},
{
"type": "string"
}
]
},
"promptId": {
"type": "number",
"description": "Saved tracked-prompt identifier associated with this execution."
},
"createdAt": {
"type": "string",
"format": "date-time",
"description": "Date and time this record was created, serialized as ISO 8601."
},
"topResults": {
"type": "array",
"items": {
"type": "object",
"description": "Nested operation-specific fields."
}
},
"brandMentioned": {
"type": "boolean"
}
}
},
"description": "Result items or operation data inside this returned payload. Pagination fields describe only this result page."
},
"page": {
"type": "number",
"description": "Page number represented by these items."
},
"limit": {
"type": "number",
"description": "Maximum number of items requested for this page."
},
"total": {
"type": "number",
"description": "Total number of matching items across all result pages."
},
"nextRun": {
"anyOf": [
{
"type": "null"
},
{
"type": "string",
"format": "date-time",
"description": "Timestamp serialized as an ISO 8601 date and time."
}
]
},
"nextPage": {
"anyOf": [
{
"type": "null"
},
{
"type": "number"
}
],
"description": "Next page to request when more results exist; use the returned value rather than constructing a cursor."
},
"totalPages": {
"type": "number",
"description": "Total number of result pages for the current filter and page size."
}
},
"description": "Operation data; optional fields may be absent."
},
"error": {
"type": "string",
"description": "Why the operation failed."
},
"details": {
"type": "object",
"description": "Diagnostics keyed by errorCode."
},
"message": {
"type": "string",
"description": "Outcome or recovery instructions. Project selection means no action ran."
},
"success": {
"type": "boolean",
"description": "Operation success; on false inspect error/errorCode."
},
"upgrade": {
"type": "object",
"description": "Plan-upgrade guidance for an unavailable capability."
},
"category": {
"type": "string",
"description": "Failure category, such as invalid_input or plan_required."
},
"expected": {
"type": "boolean",
"description": "Whether this is an anticipated access, input, plan or state failure."
},
"projects": {
"type": "array",
"items": {
"type": "object",
"properties": {
"id": {
"type": "number",
"description": "Project ID for projectId."
},
"name": {
"type": "string",
"description": "Project name."
}
},
"description": "Accessible project."
},
"description": "Accessible project choices. Select a projectId and retry."
},
"errorCode": {
"type": "string",
"description": "Failure code for recovery."
},
"retryable": {
"type": "boolean",
"description": "Whether an unchanged request can be retried."
},
"statusCode": {
"type": "number",
"description": "HTTP-style failure status."
},
"executionTime": {
"type": "string",
"description": "Elapsed time in seconds, with an s suffix."
}
},
"description": "Operation result envelope."
}
Original tool metadata
{
"name": "list_ai_search_prompt_runs",
"title": "List AI search prompt runs",
"description": "List saved-tracking and one-off test runs (isTest identifies tests), including pending, completed and failed runs, with pagination, country, and topResults (up to five ranked brands with domain, position and mention frequency, as in Recent chats). Optional prompt/date/engine and brand-mentioned filters. Returns nextRun from the earliest active tracking schedule; null if unscheduled. Without dates, returns all history.\n\nUse to find runId and distinguish saved tracking from one-off tests before get_ai_search_prompt_run. Listing history does not start or schedule an answer.",
"inputSchema": {
"type": "object",
"required": [],
"properties": {
"page": {
"type": "number",
"default": 1,
"minimum": 1,
"multipleOf": 1,
"description": "Page number to request from the provider; start with the initial page and follow nextPage when present."
},
"limit": {
"type": "number",
"default": 20,
"maximum": 100,
"minimum": 1,
"multipleOf": 1,
"description": "Maximum number of matching results to return in this request."
},
"context": {
"type": "string",
"maxLength": 120,
"description": "Short purpose of this call for the activity log. Exclude personal data and private source content."
},
"endDate": {
"type": "string",
"description": "End date in ISO format (YYYY-MM-DD). If not provided, defaults to today."
},
"engines": {
"type": "array",
"items": {
"enum": [
"chatgpt",
"ai_mode",
"perplexity",
"copilot",
"ai_overview",
"naver",
"wenxin",
"deepseek",
"gemini",
"claude",
"grok"
],
"type": "string"
},
"description": "AI-search engine identifiers to include. Discover engine availability with get_ai_search_generative_engines.",
"uniqueItems": true
},
"promptId": {
"type": "number",
"minimum": 1,
"multipleOf": 1,
"description": "Saved tracked prompt ID from get_project_prompts, not a one-off test run ID."
},
"llm_model": {
"type": "string",
"maxLength": 128,
"description": "Use the exact model ID executing this call, from runtime/system context, for usage attribution. Supply it on every Atomic MCP tool call, including discovery and feedback, and update it if the model changes. Use the model ID rather than the client app name. If unavailable, omit it; never guess or ask the user."
},
"projectId": {
"type": "number",
"description": "Atomic project ID from list_projects. Omit to use the configured project; if asked to choose, select one of the accessible returned IDs."
},
"startDate": {
"type": "string",
"description": "Start date in ISO format (YYYY-MM-DD). If not provided, defaults to 30 days ago."
},
"brandMentioned": {
"type": "boolean",
"description": "Filter runs by whether the brand was mentioned in the generated answer."
}
},
"additionalProperties": false
},
"outputSchema": {
"type": "object",
"required": [
"success"
],
"properties": {
"url": {
"type": "string",
"description": "Link for resolving the failure or completing the operation."
},
"data": {
"type": "object",
"required": [
"data",
"total",
"page",
"limit",
"totalPages",
"nextPage",
"nextRun"
],
"properties": {
"data": {
"type": "array",
"items": {
"type": "object",
"required": [
"runId",
"isTest",
"promptId",
"prompt",
"model",
"status",
"createdAt",
"brandMentioned",
"country",
"topResults"
],
"properties": {
"model": {
"type": "string",
"description": "Model identifier used for the reported generation or AI-search run."
},
"runId": {
"type": "number",
"description": "Execution identifier returned for subsequent status or result reads."
},
"isTest": {
"type": "boolean"
},
"prompt": {
"type": "string",
"description": "Prompt text used for the tracked or tested AI-search run."
},
"status": {
"type": "string",
"description": "Current saved or execution state reported by the operation."
},
"country": {
"anyOf": [
{
"type": "null"
},
{
"type": "string"
}
]
},
"promptId": {
"type": "number",
"description": "Saved tracked-prompt identifier associated with this execution."
},
"createdAt": {
"type": "string",
"format": "date-time",
"description": "Date and time this record was created, serialized as ISO 8601."
},
"topResults": {
"type": "array",
"items": {
"type": "object",
"description": "Nested operation-specific fields."
}
},
"brandMentioned": {
"type": "boolean"
}
}
},
"description": "Result items or operation data inside this returned payload. Pagination fields describe only this result page."
},
"page": {
"type": "number",
"description": "Page number represented by these items."
},
"limit": {
"type": "number",
"description": "Maximum number of items requested for this page."
},
"total": {
"type": "number",
"description": "Total number of matching items across all result pages."
},
"nextRun": {
"anyOf": [
{
"type": "null"
},
{
"type": "string",
"format": "date-time",
"description": "Timestamp serialized as an ISO 8601 date and time."
}
]
},
"nextPage": {
"anyOf": [
{
"type": "null"
},
{
"type": "number"
}
],
"description": "Next page to request when more results exist; use the returned value rather than constructing a cursor."
},
"totalPages": {
"type": "number",
"description": "Total number of result pages for the current filter and page size."
}
},
"description": "Operation data; optional fields may be absent."
},
"error": {
"type": "string",
"description": "Why the operation failed."
},
"details": {
"type": "object",
"description": "Diagnostics keyed by errorCode."
},
"message": {
"type": "string",
"description": "Outcome or recovery instructions. Project selection means no action ran."
},
"success": {
"type": "boolean",
"description": "Operation success; on false inspect error/errorCode."
},
"upgrade": {
"type": "object",
"description": "Plan-upgrade guidance for an unavailable capability."
},
"category": {
"type": "string",
"description": "Failure category, such as invalid_input or plan_required."
},
"expected": {
"type": "boolean",
"description": "Whether this is an anticipated access, input, plan or state failure."
},
"projects": {
"type": "array",
"items": {
"type": "object",
"properties": {
"id": {
"type": "number",
"description": "Project ID for projectId."
},
"name": {
"type": "string",
"description": "Project name."
}
},
"description": "Accessible project."
},
"description": "Accessible project choices. Select a projectId and retry."
},
"errorCode": {
"type": "string",
"description": "Failure code for recovery."
},
"retryable": {
"type": "boolean",
"description": "Whether an unchanged request can be retried."
},
"statusCode": {
"type": "number",
"description": "HTTP-style failure status."
},
"executionTime": {
"type": "string",
"description": "Elapsed time in seconds, with an s suffix."
}
},
"description": "Operation result envelope."
},
"annotations": {
"readOnlyHint": true,
"openWorldHint": false,
"idempotentHint": true,
"destructiveHint": false
}
}
The title clearly communicates the tool’s action and subject. Keep it concise.
Description65/100
List connected Buffer channels and organization IDs for this project.
Describe the returned information so the agent knows whether it will answer the request.
Inputs81/100
Remove validation rules already expressed in this field’s schema; describe its meaning and usage instead.
connectionId
Workspace Google connection identifier from list_workspace_google_connections.
Clear enough to supply this argument.
projectId
Atomic project ID from list_projects. Omit to use the configured project; if asked to choose, select one of the accessible returned IDs.
Remove validation rules already expressed in this field’s schema; describe its meaning and usage instead.
context
Short purpose of this call for the activity log. Exclude personal data and private source content.
Remove validation rules already expressed in this field’s schema; describe its meaning and usage instead.
llm_model
Use the exact model ID executing this call, from runtime/system context, for usage attribution. Supply it on every Atomic MCP tool call, including discovery and feedback, and update it if the model changes. Use the model ID rather than the client app name. If unavailable, omit it; never guess or ask the user.
Remove validation rules already expressed in this field’s schema; describe its meaning and usage instead.
{
"type": "object",
"required": [
"success"
],
"properties": {
"url": {
"type": "string",
"description": "Link for resolving the failure or completing the operation."
},
"data": {
"type": "array",
"items": {
"type": "object",
"required": [
"id",
"organizationId",
"name",
"service"
],
"properties": {
"id": {
"type": "string",
"description": "Identifier of this returned resource. Use it for subsequent reads or edits of the same resource."
},
"name": {
"type": "string",
"description": "Human-readable name of this resource."
},
"avatar": {
"type": "string"
},
"boards": {
"type": "array",
"items": {
"type": "object",
"description": "Nested operation-specific fields."
}
},
"service": {
"type": "string"
},
"organizationId": {
"type": "string"
}
}
},
"description": "Operation data; optional fields may be absent."
},
"error": {
"type": "string",
"description": "Why the operation failed."
},
"details": {
"type": "object",
"description": "Diagnostics keyed by errorCode."
},
"message": {
"type": "string",
"description": "Outcome or recovery instructions. Project selection means no action ran."
},
"success": {
"type": "boolean",
"description": "Operation success; on false inspect error/errorCode."
},
"upgrade": {
"type": "object",
"description": "Plan-upgrade guidance for an unavailable capability."
},
"category": {
"type": "string",
"description": "Failure category, such as invalid_input or plan_required."
},
"expected": {
"type": "boolean",
"description": "Whether this is an anticipated access, input, plan or state failure."
},
"projects": {
"type": "array",
"items": {
"type": "object",
"properties": {
"id": {
"type": "number",
"description": "Project ID for projectId."
},
"name": {
"type": "string",
"description": "Project name."
}
},
"description": "Accessible project."
},
"description": "Accessible project choices. Select a projectId and retry."
},
"errorCode": {
"type": "string",
"description": "Failure code for recovery."
},
"retryable": {
"type": "boolean",
"description": "Whether an unchanged request can be retried."
},
"statusCode": {
"type": "number",
"description": "HTTP-style failure status."
},
"executionTime": {
"type": "string",
"description": "Elapsed time in seconds, with an s suffix."
}
},
"description": "Operation result envelope."
}
Original tool metadata
{
"name": "list_buffer_channels",
"title": "List buffer channels",
"description": "List connected Buffer channels and organization IDs for this project.",
"inputSchema": {
"type": "object",
"required": [
"connectionId"
],
"properties": {
"context": {
"type": "string",
"maxLength": 120,
"description": "Short purpose of this call for the activity log. Exclude personal data and private source content."
},
"llm_model": {
"type": "string",
"maxLength": 128,
"description": "Use the exact model ID executing this call, from runtime/system context, for usage attribution. Supply it on every Atomic MCP tool call, including discovery and feedback, and update it if the model changes. Use the model ID rather than the client app name. If unavailable, omit it; never guess or ask the user."
},
"projectId": {
"type": "number",
"description": "Atomic project ID from list_projects. Omit to use the configured project; if asked to choose, select one of the accessible returned IDs."
},
"connectionId": {
"type": "number",
"minimum": 1,
"description": "Workspace Google connection identifier from list_workspace_google_connections."
}
},
"additionalProperties": false
},
"outputSchema": {
"type": "object",
"required": [
"success"
],
"properties": {
"url": {
"type": "string",
"description": "Link for resolving the failure or completing the operation."
},
"data": {
"type": "array",
"items": {
"type": "object",
"required": [
"id",
"organizationId",
"name",
"service"
],
"properties": {
"id": {
"type": "string",
"description": "Identifier of this returned resource. Use it for subsequent reads or edits of the same resource."
},
"name": {
"type": "string",
"description": "Human-readable name of this resource."
},
"avatar": {
"type": "string"
},
"boards": {
"type": "array",
"items": {
"type": "object",
"description": "Nested operation-specific fields."
}
},
"service": {
"type": "string"
},
"organizationId": {
"type": "string"
}
}
},
"description": "Operation data; optional fields may be absent."
},
"error": {
"type": "string",
"description": "Why the operation failed."
},
"details": {
"type": "object",
"description": "Diagnostics keyed by errorCode."
},
"message": {
"type": "string",
"description": "Outcome or recovery instructions. Project selection means no action ran."
},
"success": {
"type": "boolean",
"description": "Operation success; on false inspect error/errorCode."
},
"upgrade": {
"type": "object",
"description": "Plan-upgrade guidance for an unavailable capability."
},
"category": {
"type": "string",
"description": "Failure category, such as invalid_input or plan_required."
},
"expected": {
"type": "boolean",
"description": "Whether this is an anticipated access, input, plan or state failure."
},
"projects": {
"type": "array",
"items": {
"type": "object",
"properties": {
"id": {
"type": "number",
"description": "Project ID for projectId."
},
"name": {
"type": "string",
"description": "Project name."
}
},
"description": "Accessible project."
},
"description": "Accessible project choices. Select a projectId and retry."
},
"errorCode": {
"type": "string",
"description": "Failure code for recovery."
},
"retryable": {
"type": "boolean",
"description": "Whether an unchanged request can be retried."
},
"statusCode": {
"type": "number",
"description": "HTTP-style failure status."
},
"executionTime": {
"type": "string",
"description": "Elapsed time in seconds, with an s suffix."
}
},
"description": "Operation result envelope."
},
"annotations": {
"readOnlyHint": true,
"openWorldHint": true,
"idempotentHint": true,
"destructiveHint": false
}
}
The title clearly communicates the tool’s action and subject. Keep it concise.
Description79/100
Read one page of Buffer posts for an organization and optional channels, statuses and scheduled date range. Continue with pageInfo.endCursor while hasNextPage is true.
The description explains the capability, when to use it, and what to expect.
Inputs86/100
Remove validation rules already expressed in this field’s schema; describe its meaning and usage instead.
connectionId
Workspace Google connection identifier from list_workspace_google_connections.
Remove validation rules already expressed in this field’s schema; describe its meaning and usage instead.
organizationId
Organization identifier returned by the relevant workspace or publishing connection.
Clear enough to supply this argument.
channelIds
Connected Buffer channel identifiers from list_buffer_channels.
Clear enough to supply this argument.
statuses
Publication statuses to include when listing Buffer posts.
Remove validation rules already expressed in this field’s schema; describe its meaning and usage instead.
start
Start of the requested time or pagination window, using the field's documented format.
Remove validation rules already expressed in this field’s schema; describe its meaning and usage instead.
end
End of the requested time or pagination window, using the field's documented format.
Remove validation rules already expressed in this field’s schema; describe its meaning and usage instead.
first
Number of Buffer posts requested before the cursor boundary.
Remove validation rules already expressed in this field’s schema; describe its meaning and usage instead.
after
Opaque pagination cursor returned by the previous Buffer result page. Do not construct it yourself.
Clear enough to supply this argument.
projectId
Atomic project ID from list_projects. Omit to use the configured project; if asked to choose, select one of the accessible returned IDs.
Clear enough to supply this argument.
context
Short purpose of this call for the activity log. Exclude personal data and private source content.
Clear enough to supply this argument.
llm_model
Use the exact model ID executing this call, from runtime/system context, for usage attribution. Supply it on every Atomic MCP tool call, including discovery and feedback, and update it if the model changes. Use the model ID rather than the client app name. If unavailable, omit it; never guess or ask the user.
Remove validation rules already expressed in this field’s schema; describe its meaning and usage instead.
{
"type": "object",
"required": [
"success"
],
"properties": {
"url": {
"type": "string",
"description": "Link for resolving the failure or completing the operation."
},
"data": {
"type": "object",
"required": [
"posts",
"pageInfo"
],
"properties": {
"posts": {
"type": "array",
"items": {
"type": "object",
"required": [
"id",
"channelId",
"status"
],
"properties": {
"id": {
"type": "string",
"description": "Identifier of this returned resource. Use it for subsequent reads or edits of the same resource."
},
"url": {
"type": "string",
"description": "URL returned for this resource or operation."
},
"text": {
"type": "string"
},
"dueAt": {
"type": "string"
},
"error": {
"type": "string",
"description": "Failure details reported by this operation or its provider."
},
"assets": {
"type": "array",
"items": {
"type": "object",
"description": "Nested operation-specific fields."
}
},
"status": {
"type": "string",
"description": "Current saved or execution state reported by the operation."
},
"channelId": {
"type": "string"
}
}
}
},
"pageInfo": {
"type": "object",
"required": [
"endCursor",
"hasNextPage"
],
"properties": {
"endCursor": {
"anyOf": [
{
"type": "null"
},
{
"type": "string"
}
]
},
"hasNextPage": {
"type": "boolean"
}
}
}
},
"description": "Operation data; optional fields may be absent."
},
"error": {
"type": "string",
"description": "Why the operation failed."
},
"details": {
"type": "object",
"description": "Diagnostics keyed by errorCode."
},
"message": {
"type": "string",
"description": "Outcome or recovery instructions. Project selection means no action ran."
},
"success": {
"type": "boolean",
"description": "Operation success; on false inspect error/errorCode."
},
"upgrade": {
"type": "object",
"description": "Plan-upgrade guidance for an unavailable capability."
},
"category": {
"type": "string",
"description": "Failure category, such as invalid_input or plan_required."
},
"expected": {
"type": "boolean",
"description": "Whether this is an anticipated access, input, plan or state failure."
},
"projects": {
"type": "array",
"items": {
"type": "object",
"properties": {
"id": {
"type": "number",
"description": "Project ID for projectId."
},
"name": {
"type": "string",
"description": "Project name."
}
},
"description": "Accessible project."
},
"description": "Accessible project choices. Select a projectId and retry."
},
"errorCode": {
"type": "string",
"description": "Failure code for recovery."
},
"retryable": {
"type": "boolean",
"description": "Whether an unchanged request can be retried."
},
"statusCode": {
"type": "number",
"description": "HTTP-style failure status."
},
"executionTime": {
"type": "string",
"description": "Elapsed time in seconds, with an s suffix."
}
},
"description": "Operation result envelope."
}
Original tool metadata
{
"name": "list_buffer_posts",
"title": "List buffer posts",
"description": "Read one page of Buffer posts for an organization and optional channels, statuses and scheduled date range. Continue with pageInfo.endCursor while hasNextPage is true.",
"inputSchema": {
"type": "object",
"required": [
"connectionId",
"organizationId"
],
"properties": {
"end": {
"type": "string",
"format": "date-time",
"description": "End of the requested time or pagination window, using the field's documented format."
},
"after": {
"type": "string",
"description": "Opaque pagination cursor returned by the previous Buffer result page. Do not construct it yourself."
},
"first": {
"type": "number",
"maximum": 100,
"minimum": 1,
"description": "Number of Buffer posts requested before the cursor boundary."
},
"start": {
"type": "string",
"format": "date-time",
"description": "Start of the requested time or pagination window, using the field's documented format."
},
"context": {
"type": "string",
"maxLength": 120,
"description": "Short purpose of this call for the activity log. Exclude personal data and private source content."
},
"statuses": {
"type": "array",
"items": {
"enum": [
"scheduled",
"draft",
"sent",
"error",
"sending",
"needs_approval"
],
"type": "string"
},
"description": "Publication statuses to include when listing Buffer posts."
},
"llm_model": {
"type": "string",
"maxLength": 128,
"description": "Use the exact model ID executing this call, from runtime/system context, for usage attribution. Supply it on every Atomic MCP tool call, including discovery and feedback, and update it if the model changes. Use the model ID rather than the client app name. If unavailable, omit it; never guess or ask the user."
},
"projectId": {
"type": "number",
"description": "Atomic project ID from list_projects. Omit to use the configured project; if asked to choose, select one of the accessible returned IDs."
},
"channelIds": {
"type": "array",
"items": {
"type": "string"
},
"description": "Connected Buffer channel identifiers from list_buffer_channels."
},
"connectionId": {
"type": "number",
"minimum": 1,
"description": "Workspace Google connection identifier from list_workspace_google_connections."
},
"organizationId": {
"type": "string",
"description": "Organization identifier returned by the relevant workspace or publishing connection."
}
},
"additionalProperties": false
},
"outputSchema": {
"type": "object",
"required": [
"success"
],
"properties": {
"url": {
"type": "string",
"description": "Link for resolving the failure or completing the operation."
},
"data": {
"type": "object",
"required": [
"posts",
"pageInfo"
],
"properties": {
"posts": {
"type": "array",
"items": {
"type": "object",
"required": [
"id",
"channelId",
"status"
],
"properties": {
"id": {
"type": "string",
"description": "Identifier of this returned resource. Use it for subsequent reads or edits of the same resource."
},
"url": {
"type": "string",
"description": "URL returned for this resource or operation."
},
"text": {
"type": "string"
},
"dueAt": {
"type": "string"
},
"error": {
"type": "string",
"description": "Failure details reported by this operation or its provider."
},
"assets": {
"type": "array",
"items": {
"type": "object",
"description": "Nested operation-specific fields."
}
},
"status": {
"type": "string",
"description": "Current saved or execution state reported by the operation."
},
"channelId": {
"type": "string"
}
}
}
},
"pageInfo": {
"type": "object",
"required": [
"endCursor",
"hasNextPage"
],
"properties": {
"endCursor": {
"anyOf": [
{
"type": "null"
},
{
"type": "string"
}
]
},
"hasNextPage": {
"type": "boolean"
}
}
}
},
"description": "Operation data; optional fields may be absent."
},
"error": {
"type": "string",
"description": "Why the operation failed."
},
"details": {
"type": "object",
"description": "Diagnostics keyed by errorCode."
},
"message": {
"type": "string",
"description": "Outcome or recovery instructions. Project selection means no action ran."
},
"success": {
"type": "boolean",
"description": "Operation success; on false inspect error/errorCode."
},
"upgrade": {
"type": "object",
"description": "Plan-upgrade guidance for an unavailable capability."
},
"category": {
"type": "string",
"description": "Failure category, such as invalid_input or plan_required."
},
"expected": {
"type": "boolean",
"description": "Whether this is an anticipated access, input, plan or state failure."
},
"projects": {
"type": "array",
"items": {
"type": "object",
"properties": {
"id": {
"type": "number",
"description": "Project ID for projectId."
},
"name": {
"type": "string",
"description": "Project name."
}
},
"description": "Accessible project."
},
"description": "Accessible project choices. Select a projectId and retry."
},
"errorCode": {
"type": "string",
"description": "Failure code for recovery."
},
"retryable": {
"type": "boolean",
"description": "Whether an unchanged request can be retried."
},
"statusCode": {
"type": "number",
"description": "HTTP-style failure status."
},
"executionTime": {
"type": "string",
"description": "Elapsed time in seconds, with an s suffix."
}
},
"description": "Operation result envelope."
},
"annotations": {
"readOnlyHint": true,
"openWorldHint": true,
"idempotentHint": true,
"destructiveHint": false
}
}
The title clearly communicates the tool’s action and subject. Keep it concise.
Description94/100
List content folders with names, descriptions, and item-to-folder assignments in the selected project. Use the collection's existing item listing to discover item IDs and details. Items absent from assignments are at the top level.
Reads folder identities and saved content-to-folder assignments; get_contents reads the items themselves. This does not move or create records.
The description explains the capability, when to use it, and what to expect.
Inputs92/100
Remove validation rules already expressed in this field’s schema; describe its meaning and usage instead.
projectId
Atomic project ID from list_projects. Omit to use the configured project; if asked to choose, select one of the accessible returned IDs.
Clear enough to supply this argument.
context
Short purpose of this call for the activity log. Exclude personal data and private source content.
Remove validation rules already expressed in this field’s schema; describe its meaning and usage instead.
llm_model
Use the exact model ID executing this call, from runtime/system context, for usage attribution. Supply it on every Atomic MCP tool call, including discovery and feedback, and update it if the model changes. Use the model ID rather than the client app name. If unavailable, omit it; never guess or ask the user.
Align the output schema with the tool’s documented result.
View output schema
{
"type": "object",
"required": [
"success"
],
"properties": {
"url": {
"type": "string",
"description": "Link for resolving the failure or completing the operation."
},
"data": {
"type": "object",
"required": [
"folders",
"assignments"
],
"properties": {
"folders": {
"type": "array",
"items": {
"type": "object",
"required": [
"id",
"projectId",
"collection",
"name",
"description"
],
"properties": {
"id": {
"type": "number",
"description": "Identifier of this returned resource. Use it for subsequent reads or edits of the same resource."
},
"name": {
"type": "string",
"description": "Human-readable name of this resource."
},
"projectId": {
"type": "number",
"description": "Atomic project that owns this resource."
},
"collection": {
"enum": [
"content",
"grids",
"workflows",
"reports"
],
"type": "string",
"description": "Atomic collection that owns these folders or items."
},
"description": {
"type": "string",
"description": "Saved description of this resource or its purpose."
}
}
}
},
"assignments": {
"type": "object",
"properties": {},
"additionalProperties": {
"type": "number"
}
}
},
"description": "Operation data; optional fields may be absent."
},
"error": {
"type": "string",
"description": "Why the operation failed."
},
"details": {
"type": "object",
"description": "Diagnostics keyed by errorCode."
},
"message": {
"type": "string",
"description": "Outcome or recovery instructions. Project selection means no action ran."
},
"success": {
"type": "boolean",
"description": "Operation success; on false inspect error/errorCode."
},
"upgrade": {
"type": "object",
"description": "Plan-upgrade guidance for an unavailable capability."
},
"category": {
"type": "string",
"description": "Failure category, such as invalid_input or plan_required."
},
"expected": {
"type": "boolean",
"description": "Whether this is an anticipated access, input, plan or state failure."
},
"projects": {
"type": "array",
"items": {
"type": "object",
"properties": {
"id": {
"type": "number",
"description": "Project ID for projectId."
},
"name": {
"type": "string",
"description": "Project name."
}
},
"description": "Accessible project."
},
"description": "Accessible project choices. Select a projectId and retry."
},
"errorCode": {
"type": "string",
"description": "Failure code for recovery."
},
"retryable": {
"type": "boolean",
"description": "Whether an unchanged request can be retried."
},
"statusCode": {
"type": "number",
"description": "HTTP-style failure status."
},
"executionTime": {
"type": "string",
"description": "Elapsed time in seconds, with an s suffix."
}
},
"description": "Operation result envelope."
}
Original tool metadata
{
"name": "list_content_folders",
"title": "List content folders",
"description": "List content folders with names, descriptions, and item-to-folder assignments in the selected project. Use the collection's existing item listing to discover item IDs and details. Items absent from assignments are at the top level.\n\nReads folder identities and saved content-to-folder assignments; get_contents reads the items themselves. This does not move or create records.",
"inputSchema": {
"type": "object",
"properties": {
"context": {
"type": "string",
"maxLength": 120,
"description": "Short purpose of this call for the activity log. Exclude personal data and private source content."
},
"llm_model": {
"type": "string",
"maxLength": 128,
"description": "Use the exact model ID executing this call, from runtime/system context, for usage attribution. Supply it on every Atomic MCP tool call, including discovery and feedback, and update it if the model changes. Use the model ID rather than the client app name. If unavailable, omit it; never guess or ask the user."
},
"projectId": {
"type": "number",
"description": "Atomic project ID from list_projects. Omit to use the configured project; if asked to choose, select one of the accessible returned IDs."
}
},
"additionalProperties": false
},
"outputSchema": {
"type": "object",
"required": [
"success"
],
"properties": {
"url": {
"type": "string",
"description": "Link for resolving the failure or completing the operation."
},
"data": {
"type": "object",
"required": [
"folders",
"assignments"
],
"properties": {
"folders": {
"type": "array",
"items": {
"type": "object",
"required": [
"id",
"projectId",
"collection",
"name",
"description"
],
"properties": {
"id": {
"type": "number",
"description": "Identifier of this returned resource. Use it for subsequent reads or edits of the same resource."
},
"name": {
"type": "string",
"description": "Human-readable name of this resource."
},
"projectId": {
"type": "number",
"description": "Atomic project that owns this resource."
},
"collection": {
"enum": [
"content",
"grids",
"workflows",
"reports"
],
"type": "string",
"description": "Atomic collection that owns these folders or items."
},
"description": {
"type": "string",
"description": "Saved description of this resource or its purpose."
}
}
}
},
"assignments": {
"type": "object",
"properties": {},
"additionalProperties": {
"type": "number"
}
}
},
"description": "Operation data; optional fields may be absent."
},
"error": {
"type": "string",
"description": "Why the operation failed."
},
"details": {
"type": "object",
"description": "Diagnostics keyed by errorCode."
},
"message": {
"type": "string",
"description": "Outcome or recovery instructions. Project selection means no action ran."
},
"success": {
"type": "boolean",
"description": "Operation success; on false inspect error/errorCode."
},
"upgrade": {
"type": "object",
"description": "Plan-upgrade guidance for an unavailable capability."
},
"category": {
"type": "string",
"description": "Failure category, such as invalid_input or plan_required."
},
"expected": {
"type": "boolean",
"description": "Whether this is an anticipated access, input, plan or state failure."
},
"projects": {
"type": "array",
"items": {
"type": "object",
"properties": {
"id": {
"type": "number",
"description": "Project ID for projectId."
},
"name": {
"type": "string",
"description": "Project name."
}
},
"description": "Accessible project."
},
"description": "Accessible project choices. Select a projectId and retry."
},
"errorCode": {
"type": "string",
"description": "Failure code for recovery."
},
"retryable": {
"type": "boolean",
"description": "Whether an unchanged request can be retried."
},
"statusCode": {
"type": "number",
"description": "HTTP-style failure status."
},
"executionTime": {
"type": "string",
"description": "Elapsed time in seconds, with an s suffix."
}
},
"description": "Operation result envelope."
},
"annotations": {
"readOnlyHint": true,
"openWorldHint": false,
"idempotentHint": true,
"destructiveHint": false
}
}
The title clearly communicates the tool’s action and subject. Keep it concise.
Description91/100
List observed GA4 event names and the current Atomic selected events for a saved property. First use list_workspace_google_connections, then list_google_connection_properties to obtain the Atomic connectionId and propertyId. Do not pass googlePropertyId or a Google measurement ID. Requires workspace integrations access and a property belonging to that connection. Dates must be valid YYYY-MM-DD calendar dates with startDate no later than endDate; defaults to the last 30 days through today. Does not change Google key-event settings.
Reads observed event names and saved event selection for an imported property. Use set_project_google_sources to change the project connection; this call does not enable new tracking.
The description explains the capability, when to use it, and what to expect.
Inputs89/100
Remove validation rules already expressed in this field’s schema; describe its meaning and usage instead.
workspaceId
Atomic workspace ID owning the Google connection; obtain it from list_workspaces.
Remove validation rules already expressed in this field’s schema; describe its meaning and usage instead.
connectionId
Atomic connectionId returned by list_workspace_google_connections for this workspace.
Clear enough to supply this argument.
propertyId
Atomic propertyId from ga4Properties in list_google_connection_properties. This is not googlePropertyId or a G- measurement ID.
Clear enough to supply this argument.
startDate
Optional inclusive start date in YYYY-MM-DD format. Defaults to 30 days before today.
Remove validation rules already expressed in this field’s schema; describe its meaning and usage instead.
endDate
Optional inclusive end date in YYYY-MM-DD format. Defaults to today.
Remove validation rules already expressed in this field’s schema; describe its meaning and usage instead.
context
Short purpose of this call for the activity log. Exclude personal data and private source content.
Clear enough to supply this argument.
llm_model
Use the exact model ID executing this call, from runtime/system context, for usage attribution. Supply it on every Atomic MCP tool call, including discovery and feedback, and update it if the model changes. Use the model ID rather than the client app name. If unavailable, omit it; never guess or ask the user.
Align the output schema with the tool’s documented result.
View output schema
{
"type": "object",
"required": [
"success"
],
"properties": {
"url": {
"type": "string",
"description": "Link for resolving the failure or completing the operation."
},
"data": {
"type": "object",
"required": [
"propertyId",
"googlePropertyId",
"startDate",
"endDate",
"selectedEventNames",
"events"
],
"properties": {
"events": {
"type": "array",
"items": {
"type": "object",
"required": [
"eventName",
"selected"
],
"properties": {
"selected": {
"type": "boolean"
},
"eventName": {
"type": "string"
}
}
}
},
"endDate": {
"type": "string"
},
"startDate": {
"type": "string"
},
"propertyId": {
"type": "number",
"description": "Atomic analytics property record ID associated with this result."
},
"googlePropertyId": {
"type": "string"
},
"selectedEventNames": {
"type": "array",
"items": {
"type": "string"
}
}
},
"description": "Operation data; optional fields may be absent."
},
"error": {
"type": "string",
"description": "Why the operation failed."
},
"details": {
"type": "object",
"description": "Diagnostics keyed by errorCode."
},
"message": {
"type": "string",
"description": "Outcome or recovery instructions. Project selection means no action ran."
},
"success": {
"type": "boolean",
"description": "Operation success; on false inspect error/errorCode."
},
"upgrade": {
"type": "object",
"description": "Plan-upgrade guidance for an unavailable capability."
},
"category": {
"type": "string",
"description": "Failure category, such as invalid_input or plan_required."
},
"expected": {
"type": "boolean",
"description": "Whether this is an anticipated access, input, plan or state failure."
},
"projects": {
"type": "array",
"items": {
"type": "object",
"properties": {
"id": {
"type": "number",
"description": "Project ID for projectId."
},
"name": {
"type": "string",
"description": "Project name."
}
},
"description": "Accessible project."
},
"description": "Accessible project choices. Select a projectId and retry."
},
"errorCode": {
"type": "string",
"description": "Failure code for recovery."
},
"retryable": {
"type": "boolean",
"description": "Whether an unchanged request can be retried."
},
"statusCode": {
"type": "number",
"description": "HTTP-style failure status."
},
"executionTime": {
"type": "string",
"description": "Elapsed time in seconds, with an s suffix."
}
},
"description": "Operation result envelope."
}
Original tool metadata
{
"name": "list_ga4_property_events",
"title": "List GA4 property events",
"description": "List observed GA4 event names and the current Atomic selected events for a saved property. First use list_workspace_google_connections, then list_google_connection_properties to obtain the Atomic connectionId and propertyId. Do not pass googlePropertyId or a Google measurement ID. Requires workspace integrations access and a property belonging to that connection. Dates must be valid YYYY-MM-DD calendar dates with startDate no later than endDate; defaults to the last 30 days through today. Does not change Google key-event settings.\n\nReads observed event names and saved event selection for an imported property. Use set_project_google_sources to change the project connection; this call does not enable new tracking.",
"inputSchema": {
"type": "object",
"required": [
"workspaceId",
"connectionId",
"propertyId"
],
"properties": {
"context": {
"type": "string",
"maxLength": 120,
"description": "Short purpose of this call for the activity log. Exclude personal data and private source content."
},
"endDate": {
"type": "string",
"format": "date",
"description": "Optional inclusive end date in YYYY-MM-DD format. Defaults to today."
},
"llm_model": {
"type": "string",
"maxLength": 128,
"description": "Use the exact model ID executing this call, from runtime/system context, for usage attribution. Supply it on every Atomic MCP tool call, including discovery and feedback, and update it if the model changes. Use the model ID rather than the client app name. If unavailable, omit it; never guess or ask the user."
},
"startDate": {
"type": "string",
"format": "date",
"description": "Optional inclusive start date in YYYY-MM-DD format. Defaults to 30 days before today."
},
"propertyId": {
"type": "number",
"minimum": 1,
"multipleOf": 1,
"description": "Atomic propertyId from ga4Properties in list_google_connection_properties. This is not googlePropertyId or a G- measurement ID."
},
"workspaceId": {
"type": "number",
"minimum": 1,
"multipleOf": 1,
"description": "Atomic workspace ID owning the Google connection; obtain it from list_workspaces."
},
"connectionId": {
"type": "number",
"minimum": 1,
"multipleOf": 1,
"description": "Atomic connectionId returned by list_workspace_google_connections for this workspace."
}
},
"additionalProperties": false
},
"outputSchema": {
"type": "object",
"required": [
"success"
],
"properties": {
"url": {
"type": "string",
"description": "Link for resolving the failure or completing the operation."
},
"data": {
"type": "object",
"required": [
"propertyId",
"googlePropertyId",
"startDate",
"endDate",
"selectedEventNames",
"events"
],
"properties": {
"events": {
"type": "array",
"items": {
"type": "object",
"required": [
"eventName",
"selected"
],
"properties": {
"selected": {
"type": "boolean"
},
"eventName": {
"type": "string"
}
}
}
},
"endDate": {
"type": "string"
},
"startDate": {
"type": "string"
},
"propertyId": {
"type": "number",
"description": "Atomic analytics property record ID associated with this result."
},
"googlePropertyId": {
"type": "string"
},
"selectedEventNames": {
"type": "array",
"items": {
"type": "string"
}
}
},
"description": "Operation data; optional fields may be absent."
},
"error": {
"type": "string",
"description": "Why the operation failed."
},
"details": {
"type": "object",
"description": "Diagnostics keyed by errorCode."
},
"message": {
"type": "string",
"description": "Outcome or recovery instructions. Project selection means no action ran."
},
"success": {
"type": "boolean",
"description": "Operation success; on false inspect error/errorCode."
},
"upgrade": {
"type": "object",
"description": "Plan-upgrade guidance for an unavailable capability."
},
"category": {
"type": "string",
"description": "Failure category, such as invalid_input or plan_required."
},
"expected": {
"type": "boolean",
"description": "Whether this is an anticipated access, input, plan or state failure."
},
"projects": {
"type": "array",
"items": {
"type": "object",
"properties": {
"id": {
"type": "number",
"description": "Project ID for projectId."
},
"name": {
"type": "string",
"description": "Project name."
}
},
"description": "Accessible project."
},
"description": "Accessible project choices. Select a projectId and retry."
},
"errorCode": {
"type": "string",
"description": "Failure code for recovery."
},
"retryable": {
"type": "boolean",
"description": "Whether an unchanged request can be retried."
},
"statusCode": {
"type": "number",
"description": "HTTP-style failure status."
},
"executionTime": {
"type": "string",
"description": "Elapsed time in seconds, with an s suffix."
}
},
"description": "Operation result envelope."
},
"annotations": {
"readOnlyHint": true,
"openWorldHint": true,
"idempotentHint": true,
"destructiveHint": false
}
}
The title clearly communicates the tool’s action and subject. Keep it concise.
Description89/100
List imported GSC sites and GA4 properties available through an existing workspace Google connection. IDs are Atomic record IDs; googlePropertyId is the provider ID.
Use a connection ID from list_workspace_google_connections to discover imported properties/sites. Reads available identities; it does not start Google OAuth or connect the project.
The description explains the capability, when to use it, and what to expect.
Inputs88/100
Remove validation rules already expressed in this field’s schema; describe its meaning and usage instead.
workspaceId
Atomic workspace identifier from list_workspaces. The acting user must have access to that workspace.
Remove validation rules already expressed in this field’s schema; describe its meaning and usage instead.
connectionId
Workspace Google connection identifier from list_workspace_google_connections.
Clear enough to supply this argument.
context
Short purpose of this call for the activity log. Exclude personal data and private source content.
Clear enough to supply this argument.
llm_model
Use the exact model ID executing this call, from runtime/system context, for usage attribution. Supply it on every Atomic MCP tool call, including discovery and feedback, and update it if the model changes. Use the model ID rather than the client app name. If unavailable, omit it; never guess or ask the user.
Remove validation rules already expressed in this field’s schema; describe its meaning and usage instead.
{
"type": "object",
"required": [
"success"
],
"properties": {
"url": {
"type": "string",
"description": "Link for resolving the failure or completing the operation."
},
"data": {
"type": "object",
"required": [
"connectionId",
"gscSites",
"ga4Properties"
],
"properties": {
"gscSites": {
"type": "array",
"items": {
"type": "object",
"required": [
"siteId",
"siteUrl",
"permissionLevel"
],
"properties": {
"siteId": {
"type": "number",
"description": "Native provider site identifier for this connection."
},
"siteUrl": {
"type": "string"
},
"permissionLevel": {
"type": "string",
"description": "Access level granted for this resource in the selected project/workspace."
}
}
}
},
"connectionId": {
"type": "number"
},
"ga4Properties": {
"type": "array",
"items": {
"type": "object",
"required": [
"propertyId",
"googlePropertyId",
"name",
"propertyType",
"selectedEventNames"
],
"properties": {
"name": {
"type": "string",
"description": "Human-readable name of this resource."
},
"propertyId": {
"type": "number",
"description": "Atomic analytics property record ID associated with this result."
},
"propertyType": {
"type": "string",
"description": "Provider property kind used to interpret this connection."
},
"googlePropertyId": {
"type": "string"
},
"selectedEventNames": {
"type": "array",
"items": {
"type": "string"
}
}
}
}
}
},
"description": "Operation data; optional fields may be absent."
},
"error": {
"type": "string",
"description": "Why the operation failed."
},
"details": {
"type": "object",
"description": "Diagnostics keyed by errorCode."
},
"message": {
"type": "string",
"description": "Outcome or recovery instructions. Project selection means no action ran."
},
"success": {
"type": "boolean",
"description": "Operation success; on false inspect error/errorCode."
},
"upgrade": {
"type": "object",
"description": "Plan-upgrade guidance for an unavailable capability."
},
"category": {
"type": "string",
"description": "Failure category, such as invalid_input or plan_required."
},
"expected": {
"type": "boolean",
"description": "Whether this is an anticipated access, input, plan or state failure."
},
"projects": {
"type": "array",
"items": {
"type": "object",
"properties": {
"id": {
"type": "number",
"description": "Project ID for projectId."
},
"name": {
"type": "string",
"description": "Project name."
}
},
"description": "Accessible project."
},
"description": "Accessible project choices. Select a projectId and retry."
},
"errorCode": {
"type": "string",
"description": "Failure code for recovery."
},
"retryable": {
"type": "boolean",
"description": "Whether an unchanged request can be retried."
},
"statusCode": {
"type": "number",
"description": "HTTP-style failure status."
},
"executionTime": {
"type": "string",
"description": "Elapsed time in seconds, with an s suffix."
}
},
"description": "Operation result envelope."
}
Original tool metadata
{
"name": "list_google_connection_properties",
"title": "List google connection properties",
"description": "List imported GSC sites and GA4 properties available through an existing workspace Google connection. IDs are Atomic record IDs; googlePropertyId is the provider ID.\n\nUse a connection ID from list_workspace_google_connections to discover imported properties/sites. Reads available identities; it does not start Google OAuth or connect the project.",
"inputSchema": {
"type": "object",
"required": [
"workspaceId",
"connectionId"
],
"properties": {
"context": {
"type": "string",
"maxLength": 120,
"description": "Short purpose of this call for the activity log. Exclude personal data and private source content."
},
"llm_model": {
"type": "string",
"maxLength": 128,
"description": "Use the exact model ID executing this call, from runtime/system context, for usage attribution. Supply it on every Atomic MCP tool call, including discovery and feedback, and update it if the model changes. Use the model ID rather than the client app name. If unavailable, omit it; never guess or ask the user."
},
"workspaceId": {
"type": "number",
"minimum": 1,
"multipleOf": 1,
"description": "Atomic workspace identifier from list_workspaces. The acting user must have access to that workspace."
},
"connectionId": {
"type": "number",
"minimum": 1,
"multipleOf": 1,
"description": "Workspace Google connection identifier from list_workspace_google_connections."
}
},
"additionalProperties": false
},
"outputSchema": {
"type": "object",
"required": [
"success"
],
"properties": {
"url": {
"type": "string",
"description": "Link for resolving the failure or completing the operation."
},
"data": {
"type": "object",
"required": [
"connectionId",
"gscSites",
"ga4Properties"
],
"properties": {
"gscSites": {
"type": "array",
"items": {
"type": "object",
"required": [
"siteId",
"siteUrl",
"permissionLevel"
],
"properties": {
"siteId": {
"type": "number",
"description": "Native provider site identifier for this connection."
},
"siteUrl": {
"type": "string"
},
"permissionLevel": {
"type": "string",
"description": "Access level granted for this resource in the selected project/workspace."
}
}
}
},
"connectionId": {
"type": "number"
},
"ga4Properties": {
"type": "array",
"items": {
"type": "object",
"required": [
"propertyId",
"googlePropertyId",
"name",
"propertyType",
"selectedEventNames"
],
"properties": {
"name": {
"type": "string",
"description": "Human-readable name of this resource."
},
"propertyId": {
"type": "number",
"description": "Atomic analytics property record ID associated with this result."
},
"propertyType": {
"type": "string",
"description": "Provider property kind used to interpret this connection."
},
"googlePropertyId": {
"type": "string"
},
"selectedEventNames": {
"type": "array",
"items": {
"type": "string"
}
}
}
}
}
},
"description": "Operation data; optional fields may be absent."
},
"error": {
"type": "string",
"description": "Why the operation failed."
},
"details": {
"type": "object",
"description": "Diagnostics keyed by errorCode."
},
"message": {
"type": "string",
"description": "Outcome or recovery instructions. Project selection means no action ran."
},
"success": {
"type": "boolean",
"description": "Operation success; on false inspect error/errorCode."
},
"upgrade": {
"type": "object",
"description": "Plan-upgrade guidance for an unavailable capability."
},
"category": {
"type": "string",
"description": "Failure category, such as invalid_input or plan_required."
},
"expected": {
"type": "boolean",
"description": "Whether this is an anticipated access, input, plan or state failure."
},
"projects": {
"type": "array",
"items": {
"type": "object",
"properties": {
"id": {
"type": "number",
"description": "Project ID for projectId."
},
"name": {
"type": "string",
"description": "Project name."
}
},
"description": "Accessible project."
},
"description": "Accessible project choices. Select a projectId and retry."
},
"errorCode": {
"type": "string",
"description": "Failure code for recovery."
},
"retryable": {
"type": "boolean",
"description": "Whether an unchanged request can be retried."
},
"statusCode": {
"type": "number",
"description": "HTTP-style failure status."
},
"executionTime": {
"type": "string",
"description": "Elapsed time in seconds, with an s suffix."
}
},
"description": "Operation result envelope."
},
"annotations": {
"readOnlyHint": true,
"openWorldHint": false,
"idempotentHint": true,
"destructiveHint": false
}
}
The title clearly communicates the tool’s action and subject. Keep it concise.
Description93/100
List grids folders with names, descriptions, and item-to-folder assignments in the selected project. Use the collection's existing item listing to discover item IDs and details. Items absent from assignments are at the top level.
Reads folder identities and saved grid-to-folder assignments; get_grids reads the items themselves. This does not move or create records.
The description explains the capability, when to use it, and what to expect.
Inputs75/100
Remove validation rules already expressed in this field’s schema; describe its meaning and usage instead.
projectId
Atomic project ID from list_projects. Omit to use the configured project; if asked to choose, select one of the accessible returned IDs.
Remove validation rules already expressed in this field’s schema; describe its meaning and usage instead.
context
Short purpose of this call for the activity log. Exclude personal data and private source content.
Remove validation rules already expressed in this field’s schema; describe its meaning and usage instead.
llm_model
Use the exact model ID executing this call, from runtime/system context, for usage attribution. Supply it on every Atomic MCP tool call, including discovery and feedback, and update it if the model changes. Use the model ID rather than the client app name. If unavailable, omit it; never guess or ask the user.
Remove validation rules already expressed in this field’s schema; describe its meaning and usage instead.
Align the output schema with the tool’s documented result.
View output schema
{
"type": "object",
"required": [
"success"
],
"properties": {
"url": {
"type": "string",
"description": "Link for resolving the failure or completing the operation."
},
"data": {
"type": "object",
"required": [
"folders",
"assignments"
],
"properties": {
"folders": {
"type": "array",
"items": {
"type": "object",
"required": [
"id",
"projectId",
"collection",
"name",
"description"
],
"properties": {
"id": {
"type": "number",
"description": "Identifier of this returned resource. Use it for subsequent reads or edits of the same resource."
},
"name": {
"type": "string",
"description": "Human-readable name of this resource."
},
"projectId": {
"type": "number",
"description": "Atomic project that owns this resource."
},
"collection": {
"enum": [
"content",
"grids",
"workflows",
"reports"
],
"type": "string",
"description": "Atomic collection that owns these folders or items."
},
"description": {
"type": "string",
"description": "Saved description of this resource or its purpose."
}
}
}
},
"assignments": {
"type": "object",
"properties": {},
"additionalProperties": {
"type": "number"
}
}
},
"description": "Operation data; optional fields may be absent."
},
"error": {
"type": "string",
"description": "Why the operation failed."
},
"details": {
"type": "object",
"description": "Diagnostics keyed by errorCode."
},
"message": {
"type": "string",
"description": "Outcome or recovery instructions. Project selection means no action ran."
},
"success": {
"type": "boolean",
"description": "Operation success; on false inspect error/errorCode."
},
"upgrade": {
"type": "object",
"description": "Plan-upgrade guidance for an unavailable capability."
},
"category": {
"type": "string",
"description": "Failure category, such as invalid_input or plan_required."
},
"expected": {
"type": "boolean",
"description": "Whether this is an anticipated access, input, plan or state failure."
},
"projects": {
"type": "array",
"items": {
"type": "object",
"properties": {
"id": {
"type": "number",
"description": "Project ID for projectId."
},
"name": {
"type": "string",
"description": "Project name."
}
},
"description": "Accessible project."
},
"description": "Accessible project choices. Select a projectId and retry."
},
"errorCode": {
"type": "string",
"description": "Failure code for recovery."
},
"retryable": {
"type": "boolean",
"description": "Whether an unchanged request can be retried."
},
"statusCode": {
"type": "number",
"description": "HTTP-style failure status."
},
"executionTime": {
"type": "string",
"description": "Elapsed time in seconds, with an s suffix."
}
},
"description": "Operation result envelope."
}
Original tool metadata
{
"name": "list_grid_folders",
"title": "List grid folders",
"description": "List grids folders with names, descriptions, and item-to-folder assignments in the selected project. Use the collection's existing item listing to discover item IDs and details. Items absent from assignments are at the top level.\n\nReads folder identities and saved grid-to-folder assignments; get_grids reads the items themselves. This does not move or create records.",
"inputSchema": {
"type": "object",
"properties": {
"context": {
"type": "string",
"maxLength": 120,
"description": "Short purpose of this call for the activity log. Exclude personal data and private source content."
},
"llm_model": {
"type": "string",
"maxLength": 128,
"description": "Use the exact model ID executing this call, from runtime/system context, for usage attribution. Supply it on every Atomic MCP tool call, including discovery and feedback, and update it if the model changes. Use the model ID rather than the client app name. If unavailable, omit it; never guess or ask the user."
},
"projectId": {
"type": "number",
"description": "Atomic project ID from list_projects. Omit to use the configured project; if asked to choose, select one of the accessible returned IDs."
}
},
"additionalProperties": false
},
"outputSchema": {
"type": "object",
"required": [
"success"
],
"properties": {
"url": {
"type": "string",
"description": "Link for resolving the failure or completing the operation."
},
"data": {
"type": "object",
"required": [
"folders",
"assignments"
],
"properties": {
"folders": {
"type": "array",
"items": {
"type": "object",
"required": [
"id",
"projectId",
"collection",
"name",
"description"
],
"properties": {
"id": {
"type": "number",
"description": "Identifier of this returned resource. Use it for subsequent reads or edits of the same resource."
},
"name": {
"type": "string",
"description": "Human-readable name of this resource."
},
"projectId": {
"type": "number",
"description": "Atomic project that owns this resource."
},
"collection": {
"enum": [
"content",
"grids",
"workflows",
"reports"
],
"type": "string",
"description": "Atomic collection that owns these folders or items."
},
"description": {
"type": "string",
"description": "Saved description of this resource or its purpose."
}
}
}
},
"assignments": {
"type": "object",
"properties": {},
"additionalProperties": {
"type": "number"
}
}
},
"description": "Operation data; optional fields may be absent."
},
"error": {
"type": "string",
"description": "Why the operation failed."
},
"details": {
"type": "object",
"description": "Diagnostics keyed by errorCode."
},
"message": {
"type": "string",
"description": "Outcome or recovery instructions. Project selection means no action ran."
},
"success": {
"type": "boolean",
"description": "Operation success; on false inspect error/errorCode."
},
"upgrade": {
"type": "object",
"description": "Plan-upgrade guidance for an unavailable capability."
},
"category": {
"type": "string",
"description": "Failure category, such as invalid_input or plan_required."
},
"expected": {
"type": "boolean",
"description": "Whether this is an anticipated access, input, plan or state failure."
},
"projects": {
"type": "array",
"items": {
"type": "object",
"properties": {
"id": {
"type": "number",
"description": "Project ID for projectId."
},
"name": {
"type": "string",
"description": "Project name."
}
},
"description": "Accessible project."
},
"description": "Accessible project choices. Select a projectId and retry."
},
"errorCode": {
"type": "string",
"description": "Failure code for recovery."
},
"retryable": {
"type": "boolean",
"description": "Whether an unchanged request can be retried."
},
"statusCode": {
"type": "number",
"description": "HTTP-style failure status."
},
"executionTime": {
"type": "string",
"description": "Elapsed time in seconds, with an s suffix."
}
},
"description": "Operation result envelope."
},
"annotations": {
"readOnlyHint": true,
"openWorldHint": false,
"idempotentHint": true,
"destructiveHint": false
}
}
The title clearly communicates the tool’s action and subject. Keep it concise.
Description81/100
List the knowledge bases you can use in the current project. Call this first when you do not already have an explicit knowledge-base ID.
The description explains the capability, when to use it, and what to expect.
Inputs80/100
Remove validation rules already expressed in this field’s schema; describe its meaning and usage instead.
cursor
Zero-based knowledge-base offset.
Remove validation rules already expressed in this field’s schema; describe its meaning and usage instead.
limit
Maximum knowledge bases returned.
Remove validation rules already expressed in this field’s schema; describe its meaning and usage instead.
projectId
Atomic project ID from list_projects. Omit to use the configured project; if asked to choose, select one of the accessible returned IDs.
Clear enough to supply this argument.
context
Short purpose of this call for the activity log. Exclude personal data and private source content.
Remove validation rules already expressed in this field’s schema; describe its meaning and usage instead.
llm_model
Use the exact model ID executing this call, from runtime/system context, for usage attribution. Supply it on every Atomic MCP tool call, including discovery and feedback, and update it if the model changes. Use the model ID rather than the client app name. If unavailable, omit it; never guess or ask the user.
Remove validation rules already expressed in this field’s schema; describe its meaning and usage instead.
Declare the result fields and their types in the output schema.
View output schema
{
"type": "object",
"required": [
"success"
],
"properties": {
"url": {
"type": "string",
"description": "Link for resolving the failure or completing the operation."
},
"data": {
"type": "object",
"required": [
"cursor",
"limit"
],
"properties": {
"items": {
"description": "Items returned in this result collection."
},
"limit": {
"type": "number",
"description": "Maximum number of items requested for this page."
},
"total": {
"description": "Total number of matching items across all result pages."
},
"cursor": {
"type": "number"
},
"nextCursor": {
"description": "Opaque cursor for the next result page; pass it back unchanged when requesting that page."
}
},
"description": "Operation data; optional fields may be absent."
},
"error": {
"type": "string",
"description": "Why the operation failed."
},
"details": {
"type": "object",
"description": "Diagnostics keyed by errorCode."
},
"message": {
"type": "string",
"description": "Outcome or recovery instructions. Project selection means no action ran."
},
"success": {
"type": "boolean",
"description": "Operation success; on false inspect error/errorCode."
},
"upgrade": {
"type": "object",
"description": "Plan-upgrade guidance for an unavailable capability."
},
"category": {
"type": "string",
"description": "Failure category, such as invalid_input or plan_required."
},
"expected": {
"type": "boolean",
"description": "Whether this is an anticipated access, input, plan or state failure."
},
"projects": {
"type": "array",
"items": {
"type": "object",
"properties": {
"id": {
"type": "number",
"description": "Project ID for projectId."
},
"name": {
"type": "string",
"description": "Project name."
}
},
"description": "Accessible project."
},
"description": "Accessible project choices. Select a projectId and retry."
},
"errorCode": {
"type": "string",
"description": "Failure code for recovery."
},
"retryable": {
"type": "boolean",
"description": "Whether an unchanged request can be retried."
},
"statusCode": {
"type": "number",
"description": "HTTP-style failure status."
},
"executionTime": {
"type": "string",
"description": "Elapsed time in seconds, with an s suffix."
}
},
"description": "Operation result envelope."
}
Original tool metadata
{
"name": "list_knowledge_bases",
"title": "List knowledge bases",
"description": "List the knowledge bases you can use in the current project. Call this first when you do not already have an explicit knowledge-base ID.",
"inputSchema": {
"type": "object",
"properties": {
"limit": {
"type": "number",
"default": 50,
"maximum": 100,
"minimum": 1,
"multipleOf": 1,
"description": "Maximum knowledge bases returned."
},
"cursor": {
"type": "number",
"default": 0,
"minimum": 0,
"multipleOf": 1,
"description": "Zero-based knowledge-base offset."
},
"context": {
"type": "string",
"maxLength": 120,
"description": "Short purpose of this call for the activity log. Exclude personal data and private source content."
},
"llm_model": {
"type": "string",
"maxLength": 128,
"description": "Use the exact model ID executing this call, from runtime/system context, for usage attribution. Supply it on every Atomic MCP tool call, including discovery and feedback, and update it if the model changes. Use the model ID rather than the client app name. If unavailable, omit it; never guess or ask the user."
},
"projectId": {
"type": "number",
"description": "Atomic project ID from list_projects. Omit to use the configured project; if asked to choose, select one of the accessible returned IDs."
}
},
"additionalProperties": false
},
"outputSchema": {
"type": "object",
"required": [
"success"
],
"properties": {
"url": {
"type": "string",
"description": "Link for resolving the failure or completing the operation."
},
"data": {
"type": "object",
"required": [
"cursor",
"limit"
],
"properties": {
"items": {
"description": "Items returned in this result collection."
},
"limit": {
"type": "number",
"description": "Maximum number of items requested for this page."
},
"total": {
"description": "Total number of matching items across all result pages."
},
"cursor": {
"type": "number"
},
"nextCursor": {
"description": "Opaque cursor for the next result page; pass it back unchanged when requesting that page."
}
},
"description": "Operation data; optional fields may be absent."
},
"error": {
"type": "string",
"description": "Why the operation failed."
},
"details": {
"type": "object",
"description": "Diagnostics keyed by errorCode."
},
"message": {
"type": "string",
"description": "Outcome or recovery instructions. Project selection means no action ran."
},
"success": {
"type": "boolean",
"description": "Operation success; on false inspect error/errorCode."
},
"upgrade": {
"type": "object",
"description": "Plan-upgrade guidance for an unavailable capability."
},
"category": {
"type": "string",
"description": "Failure category, such as invalid_input or plan_required."
},
"expected": {
"type": "boolean",
"description": "Whether this is an anticipated access, input, plan or state failure."
},
"projects": {
"type": "array",
"items": {
"type": "object",
"properties": {
"id": {
"type": "number",
"description": "Project ID for projectId."
},
"name": {
"type": "string",
"description": "Project name."
}
},
"description": "Accessible project."
},
"description": "Accessible project choices. Select a projectId and retry."
},
"errorCode": {
"type": "string",
"description": "Failure code for recovery."
},
"retryable": {
"type": "boolean",
"description": "Whether an unchanged request can be retried."
},
"statusCode": {
"type": "number",
"description": "HTTP-style failure status."
},
"executionTime": {
"type": "string",
"description": "Elapsed time in seconds, with an s suffix."
}
},
"description": "Operation result envelope."
},
"annotations": {
"readOnlyHint": true,
"openWorldHint": false,
"idempotentHint": true,
"destructiveHint": false
}
}
The title clearly communicates the tool’s action and subject. Keep it concise.
Description77/100
List the direct child folders and files in one explicit knowledge base and optional folder. Omit folderId only to list the selected base root.
The description explains the capability, when to use it, and what to expect.
Inputs82/100
Remove validation rules already expressed in this field’s schema; describe its meaning and usage instead.
knowledgeBaseId
Destination or search-scope knowledge-base ID from list_knowledge_bases; the base must be accessible in this project.
Remove validation rules already expressed in this field’s schema; describe its meaning and usage instead.
folderId
Optional folder ID. Omit for the knowledge-base root.
Remove validation rules already expressed in this field’s schema; describe its meaning and usage instead.
cursor
Zero-based item offset.
Remove validation rules already expressed in this field’s schema; describe its meaning and usage instead.
limit
Maximum folders and files to return.
Remove validation rules already expressed in this field’s schema; describe its meaning and usage instead.
projectId
Atomic project ID from list_projects. Omit to use the configured project; if asked to choose, select one of the accessible returned IDs.
Clear enough to supply this argument.
context
Short purpose of this call for the activity log. Exclude personal data and private source content.
Remove validation rules already expressed in this field’s schema; describe its meaning and usage instead.
llm_model
Use the exact model ID executing this call, from runtime/system context, for usage attribution. Supply it on every Atomic MCP tool call, including discovery and feedback, and update it if the model changes. Use the model ID rather than the client app name. If unavailable, omit it; never guess or ask the user.
Declare the result fields and their types in the output schema.
View output schema
{
"type": "object",
"required": [
"success"
],
"properties": {
"url": {
"type": "string",
"description": "Link for resolving the failure or completing the operation."
},
"data": {
"type": "object",
"required": [
"items",
"total",
"cursor",
"limit",
"nextCursor"
],
"properties": {
"items": {
"type": "array",
"items": {
"description": "JSON returned by the connected provider or selected operation; its fields depend on that operation."
},
"description": "Items returned in this result collection."
},
"limit": {
"type": "number",
"description": "Maximum number of items requested for this page."
},
"total": {
"type": "number",
"description": "Total number of matching items across all result pages."
},
"cursor": {
"type": "number"
},
"folder": {
"description": "JSON returned by the connected provider or selected operation; its fields depend on that operation."
},
"nextCursor": {
"anyOf": [
{
"type": "null"
},
{
"type": "number"
}
],
"description": "Opaque cursor for the next result page; pass it back unchanged when requesting that page."
},
"knowledgeBase": {
"description": "JSON returned by the connected provider or selected operation; its fields depend on that operation."
}
},
"description": "Operation data; optional fields may be absent."
},
"error": {
"type": "string",
"description": "Why the operation failed."
},
"details": {
"type": "object",
"description": "Diagnostics keyed by errorCode."
},
"message": {
"type": "string",
"description": "Outcome or recovery instructions. Project selection means no action ran."
},
"success": {
"type": "boolean",
"description": "Operation success; on false inspect error/errorCode."
},
"upgrade": {
"type": "object",
"description": "Plan-upgrade guidance for an unavailable capability."
},
"category": {
"type": "string",
"description": "Failure category, such as invalid_input or plan_required."
},
"expected": {
"type": "boolean",
"description": "Whether this is an anticipated access, input, plan or state failure."
},
"projects": {
"type": "array",
"items": {
"type": "object",
"properties": {
"id": {
"type": "number",
"description": "Project ID for projectId."
},
"name": {
"type": "string",
"description": "Project name."
}
},
"description": "Accessible project."
},
"description": "Accessible project choices. Select a projectId and retry."
},
"errorCode": {
"type": "string",
"description": "Failure code for recovery."
},
"retryable": {
"type": "boolean",
"description": "Whether an unchanged request can be retried."
},
"statusCode": {
"type": "number",
"description": "HTTP-style failure status."
},
"executionTime": {
"type": "string",
"description": "Elapsed time in seconds, with an s suffix."
}
},
"description": "Operation result envelope."
}
Original tool metadata
{
"name": "list_knowledge_folder",
"title": "List knowledge folder",
"description": "List the direct child folders and files in one explicit knowledge base and optional folder. Omit folderId only to list the selected base root.",
"inputSchema": {
"type": "object",
"required": [
"knowledgeBaseId"
],
"properties": {
"limit": {
"type": "number",
"default": 50,
"maximum": 100,
"minimum": 1,
"multipleOf": 1,
"description": "Maximum folders and files to return."
},
"cursor": {
"type": "number",
"default": 0,
"minimum": 0,
"multipleOf": 1,
"description": "Zero-based item offset."
},
"context": {
"type": "string",
"maxLength": 120,
"description": "Short purpose of this call for the activity log. Exclude personal data and private source content."
},
"folderId": {
"type": "number",
"minimum": 1,
"multipleOf": 1,
"description": "Optional folder ID. Omit for the knowledge-base root."
},
"llm_model": {
"type": "string",
"maxLength": 128,
"description": "Use the exact model ID executing this call, from runtime/system context, for usage attribution. Supply it on every Atomic MCP tool call, including discovery and feedback, and update it if the model changes. Use the model ID rather than the client app name. If unavailable, omit it; never guess or ask the user."
},
"projectId": {
"type": "number",
"description": "Atomic project ID from list_projects. Omit to use the configured project; if asked to choose, select one of the accessible returned IDs."
},
"knowledgeBaseId": {
"type": "number",
"minimum": 1,
"multipleOf": 1,
"description": "Destination or search-scope knowledge-base ID from list_knowledge_bases; the base must be accessible in this project."
}
},
"additionalProperties": false
},
"outputSchema": {
"type": "object",
"required": [
"success"
],
"properties": {
"url": {
"type": "string",
"description": "Link for resolving the failure or completing the operation."
},
"data": {
"type": "object",
"required": [
"items",
"total",
"cursor",
"limit",
"nextCursor"
],
"properties": {
"items": {
"type": "array",
"items": {
"description": "JSON returned by the connected provider or selected operation; its fields depend on that operation."
},
"description": "Items returned in this result collection."
},
"limit": {
"type": "number",
"description": "Maximum number of items requested for this page."
},
"total": {
"type": "number",
"description": "Total number of matching items across all result pages."
},
"cursor": {
"type": "number"
},
"folder": {
"description": "JSON returned by the connected provider or selected operation; its fields depend on that operation."
},
"nextCursor": {
"anyOf": [
{
"type": "null"
},
{
"type": "number"
}
],
"description": "Opaque cursor for the next result page; pass it back unchanged when requesting that page."
},
"knowledgeBase": {
"description": "JSON returned by the connected provider or selected operation; its fields depend on that operation."
}
},
"description": "Operation data; optional fields may be absent."
},
"error": {
"type": "string",
"description": "Why the operation failed."
},
"details": {
"type": "object",
"description": "Diagnostics keyed by errorCode."
},
"message": {
"type": "string",
"description": "Outcome or recovery instructions. Project selection means no action ran."
},
"success": {
"type": "boolean",
"description": "Operation success; on false inspect error/errorCode."
},
"upgrade": {
"type": "object",
"description": "Plan-upgrade guidance for an unavailable capability."
},
"category": {
"type": "string",
"description": "Failure category, such as invalid_input or plan_required."
},
"expected": {
"type": "boolean",
"description": "Whether this is an anticipated access, input, plan or state failure."
},
"projects": {
"type": "array",
"items": {
"type": "object",
"properties": {
"id": {
"type": "number",
"description": "Project ID for projectId."
},
"name": {
"type": "string",
"description": "Project name."
}
},
"description": "Accessible project."
},
"description": "Accessible project choices. Select a projectId and retry."
},
"errorCode": {
"type": "string",
"description": "Failure code for recovery."
},
"retryable": {
"type": "boolean",
"description": "Whether an unchanged request can be retried."
},
"statusCode": {
"type": "number",
"description": "HTTP-style failure status."
},
"executionTime": {
"type": "string",
"description": "Elapsed time in seconds, with an s suffix."
}
},
"description": "Operation result envelope."
},
"annotations": {
"readOnlyHint": true,
"openWorldHint": false,
"idempotentHint": true,
"destructiveHint": false
}
}
The title clearly communicates the tool’s action and subject. Keep it concise.
Description93/100
List every Atomic project accessible to the authenticated user. Returns each project id, name, domain, URL slug, workspace id, workspace name, and workspace URL slug. Use this before a project-scoped tool when the user has not already identified the project.
The description explains the capability, when to use it, and what to expect.
Inputs75/100
Remove validation rules already expressed in this field’s schema; describe its meaning and usage instead.
context
Short purpose of this call for the activity log. Exclude personal data and private source content.
Remove validation rules already expressed in this field’s schema; describe its meaning and usage instead.
llm_model
Use the exact model ID executing this call, from runtime/system context, for usage attribution. Supply it on every Atomic MCP tool call, including discovery and feedback, and update it if the model changes. Use the model ID rather than the client app name. If unavailable, omit it; never guess or ask the user.
Remove validation rules already expressed in this field’s schema; describe its meaning and usage instead.
Align the output schema with the tool’s documented result.
View output schema
{
"type": "object",
"required": [
"success"
],
"properties": {
"url": {
"type": "string",
"description": "Link for resolving the failure or completing the operation."
},
"data": {
"type": "array",
"items": {
"type": "object",
"required": [
"id",
"name",
"workspaceId"
],
"properties": {
"id": {
"type": "number",
"description": "Identifier of this returned resource. Use it for subsequent reads or edits of the same resource."
},
"name": {
"type": "string",
"description": "Human-readable name of this resource."
},
"domain": {
"type": "string",
"description": "Website domain associated with this result."
},
"urlSlug": {
"type": "string",
"description": "Saved URL slug identifying this resource."
},
"workspaceId": {
"type": "number",
"description": "Atomic workspace that owns this project or resource."
},
"workspaceName": {
"type": "string",
"description": "Display name of the workspace that owns this project."
},
"workspaceUrlSlug": {
"type": "string",
"description": "URL slug of the workspace that owns this project."
}
}
},
"description": "Operation data; optional fields may be absent."
},
"error": {
"type": "string",
"description": "Why the operation failed."
},
"details": {
"type": "object",
"description": "Diagnostics keyed by errorCode."
},
"message": {
"type": "string",
"description": "Outcome or recovery instructions. Project selection means no action ran."
},
"success": {
"type": "boolean",
"description": "Operation success; on false inspect error/errorCode."
},
"upgrade": {
"type": "object",
"description": "Plan-upgrade guidance for an unavailable capability."
},
"category": {
"type": "string",
"description": "Failure category, such as invalid_input or plan_required."
},
"expected": {
"type": "boolean",
"description": "Whether this is an anticipated access, input, plan or state failure."
},
"projects": {
"type": "array",
"items": {
"type": "object",
"properties": {
"id": {
"type": "number",
"description": "Project ID for projectId."
},
"name": {
"type": "string",
"description": "Project name."
}
},
"description": "Accessible project."
},
"description": "Accessible project choices. Select a projectId and retry."
},
"errorCode": {
"type": "string",
"description": "Failure code for recovery."
},
"retryable": {
"type": "boolean",
"description": "Whether an unchanged request can be retried."
},
"statusCode": {
"type": "number",
"description": "HTTP-style failure status."
},
"executionTime": {
"type": "string",
"description": "Elapsed time in seconds, with an s suffix."
}
},
"description": "Operation result envelope."
}
Original tool metadata
{
"name": "list_projects",
"title": "List projects",
"description": "List every Atomic project accessible to the authenticated user. Returns each project id, name, domain, URL slug, workspace id, workspace name, and workspace URL slug. Use this before a project-scoped tool when the user has not already identified the project.",
"inputSchema": {
"type": "object",
"required": [],
"properties": {
"context": {
"type": "string",
"maxLength": 120,
"description": "Short purpose of this call for the activity log. Exclude personal data and private source content."
},
"llm_model": {
"type": "string",
"maxLength": 128,
"description": "Use the exact model ID executing this call, from runtime/system context, for usage attribution. Supply it on every Atomic MCP tool call, including discovery and feedback, and update it if the model changes. Use the model ID rather than the client app name. If unavailable, omit it; never guess or ask the user."
}
},
"additionalProperties": false
},
"outputSchema": {
"type": "object",
"required": [
"success"
],
"properties": {
"url": {
"type": "string",
"description": "Link for resolving the failure or completing the operation."
},
"data": {
"type": "array",
"items": {
"type": "object",
"required": [
"id",
"name",
"workspaceId"
],
"properties": {
"id": {
"type": "number",
"description": "Identifier of this returned resource. Use it for subsequent reads or edits of the same resource."
},
"name": {
"type": "string",
"description": "Human-readable name of this resource."
},
"domain": {
"type": "string",
"description": "Website domain associated with this result."
},
"urlSlug": {
"type": "string",
"description": "Saved URL slug identifying this resource."
},
"workspaceId": {
"type": "number",
"description": "Atomic workspace that owns this project or resource."
},
"workspaceName": {
"type": "string",
"description": "Display name of the workspace that owns this project."
},
"workspaceUrlSlug": {
"type": "string",
"description": "URL slug of the workspace that owns this project."
}
}
},
"description": "Operation data; optional fields may be absent."
},
"error": {
"type": "string",
"description": "Why the operation failed."
},
"details": {
"type": "object",
"description": "Diagnostics keyed by errorCode."
},
"message": {
"type": "string",
"description": "Outcome or recovery instructions. Project selection means no action ran."
},
"success": {
"type": "boolean",
"description": "Operation success; on false inspect error/errorCode."
},
"upgrade": {
"type": "object",
"description": "Plan-upgrade guidance for an unavailable capability."
},
"category": {
"type": "string",
"description": "Failure category, such as invalid_input or plan_required."
},
"expected": {
"type": "boolean",
"description": "Whether this is an anticipated access, input, plan or state failure."
},
"projects": {
"type": "array",
"items": {
"type": "object",
"properties": {
"id": {
"type": "number",
"description": "Project ID for projectId."
},
"name": {
"type": "string",
"description": "Project name."
}
},
"description": "Accessible project."
},
"description": "Accessible project choices. Select a projectId and retry."
},
"errorCode": {
"type": "string",
"description": "Failure code for recovery."
},
"retryable": {
"type": "boolean",
"description": "Whether an unchanged request can be retried."
},
"statusCode": {
"type": "number",
"description": "HTTP-style failure status."
},
"executionTime": {
"type": "string",
"description": "Elapsed time in seconds, with an s suffix."
}
},
"description": "Operation result envelope."
},
"annotations": {
"readOnlyHint": true,
"openWorldHint": false,
"idempotentHint": true,
"destructiveHint": false
}
}
The title clearly communicates the tool’s action and subject. Keep it concise.
Description93/100
List reports folders with names, descriptions, and item-to-folder assignments in the selected project. Use the collection's existing item listing to discover item IDs and details. Items absent from assignments are at the top level.
Reads folder identities and saved report-to-folder assignments; get_custom_reports reads the items themselves. This does not move or create records.
The description explains the capability, when to use it, and what to expect.
Inputs92/100
Remove validation rules already expressed in this field’s schema; describe its meaning and usage instead.
projectId
Atomic project ID from list_projects. Omit to use the configured project; if asked to choose, select one of the accessible returned IDs.
Clear enough to supply this argument.
context
Short purpose of this call for the activity log. Exclude personal data and private source content.
Remove validation rules already expressed in this field’s schema; describe its meaning and usage instead.
llm_model
Use the exact model ID executing this call, from runtime/system context, for usage attribution. Supply it on every Atomic MCP tool call, including discovery and feedback, and update it if the model changes. Use the model ID rather than the client app name. If unavailable, omit it; never guess or ask the user.
{
"type": "object",
"required": [
"success"
],
"properties": {
"url": {
"type": "string",
"description": "Link for resolving the failure or completing the operation."
},
"data": {
"type": "object",
"required": [
"folders",
"assignments"
],
"properties": {
"folders": {
"type": "array",
"items": {
"type": "object",
"required": [
"id",
"projectId",
"collection",
"name",
"description"
],
"properties": {
"id": {
"type": "number",
"description": "Identifier of this returned resource. Use it for subsequent reads or edits of the same resource."
},
"name": {
"type": "string",
"description": "Human-readable name of this resource."
},
"projectId": {
"type": "number",
"description": "Atomic project that owns this resource."
},
"collection": {
"enum": [
"content",
"grids",
"workflows",
"reports"
],
"type": "string",
"description": "Atomic collection that owns these folders or items."
},
"description": {
"type": "string",
"description": "Saved description of this resource or its purpose."
}
}
}
},
"assignments": {
"type": "object",
"properties": {},
"additionalProperties": {
"type": "number"
}
}
},
"description": "Operation data; optional fields may be absent."
},
"error": {
"type": "string",
"description": "Why the operation failed."
},
"details": {
"type": "object",
"description": "Diagnostics keyed by errorCode."
},
"message": {
"type": "string",
"description": "Outcome or recovery instructions. Project selection means no action ran."
},
"success": {
"type": "boolean",
"description": "Operation success; on false inspect error/errorCode."
},
"upgrade": {
"type": "object",
"description": "Plan-upgrade guidance for an unavailable capability."
},
"category": {
"type": "string",
"description": "Failure category, such as invalid_input or plan_required."
},
"expected": {
"type": "boolean",
"description": "Whether this is an anticipated access, input, plan or state failure."
},
"projects": {
"type": "array",
"items": {
"type": "object",
"properties": {
"id": {
"type": "number",
"description": "Project ID for projectId."
},
"name": {
"type": "string",
"description": "Project name."
}
},
"description": "Accessible project."
},
"description": "Accessible project choices. Select a projectId and retry."
},
"errorCode": {
"type": "string",
"description": "Failure code for recovery."
},
"retryable": {
"type": "boolean",
"description": "Whether an unchanged request can be retried."
},
"statusCode": {
"type": "number",
"description": "HTTP-style failure status."
},
"executionTime": {
"type": "string",
"description": "Elapsed time in seconds, with an s suffix."
}
},
"description": "Operation result envelope."
}
Original tool metadata
{
"name": "list_report_folders",
"title": "List report folders",
"description": "List reports folders with names, descriptions, and item-to-folder assignments in the selected project. Use the collection's existing item listing to discover item IDs and details. Items absent from assignments are at the top level.\n\nReads folder identities and saved report-to-folder assignments; get_custom_reports reads the items themselves. This does not move or create records.",
"inputSchema": {
"type": "object",
"properties": {
"context": {
"type": "string",
"maxLength": 120,
"description": "Short purpose of this call for the activity log. Exclude personal data and private source content."
},
"llm_model": {
"type": "string",
"maxLength": 128,
"description": "Use the exact model ID executing this call, from runtime/system context, for usage attribution. Supply it on every Atomic MCP tool call, including discovery and feedback, and update it if the model changes. Use the model ID rather than the client app name. If unavailable, omit it; never guess or ask the user."
},
"projectId": {
"type": "number",
"description": "Atomic project ID from list_projects. Omit to use the configured project; if asked to choose, select one of the accessible returned IDs."
}
},
"additionalProperties": false
},
"outputSchema": {
"type": "object",
"required": [
"success"
],
"properties": {
"url": {
"type": "string",
"description": "Link for resolving the failure or completing the operation."
},
"data": {
"type": "object",
"required": [
"folders",
"assignments"
],
"properties": {
"folders": {
"type": "array",
"items": {
"type": "object",
"required": [
"id",
"projectId",
"collection",
"name",
"description"
],
"properties": {
"id": {
"type": "number",
"description": "Identifier of this returned resource. Use it for subsequent reads or edits of the same resource."
},
"name": {
"type": "string",
"description": "Human-readable name of this resource."
},
"projectId": {
"type": "number",
"description": "Atomic project that owns this resource."
},
"collection": {
"enum": [
"content",
"grids",
"workflows",
"reports"
],
"type": "string",
"description": "Atomic collection that owns these folders or items."
},
"description": {
"type": "string",
"description": "Saved description of this resource or its purpose."
}
}
}
},
"assignments": {
"type": "object",
"properties": {},
"additionalProperties": {
"type": "number"
}
}
},
"description": "Operation data; optional fields may be absent."
},
"error": {
"type": "string",
"description": "Why the operation failed."
},
"details": {
"type": "object",
"description": "Diagnostics keyed by errorCode."
},
"message": {
"type": "string",
"description": "Outcome or recovery instructions. Project selection means no action ran."
},
"success": {
"type": "boolean",
"description": "Operation success; on false inspect error/errorCode."
},
"upgrade": {
"type": "object",
"description": "Plan-upgrade guidance for an unavailable capability."
},
"category": {
"type": "string",
"description": "Failure category, such as invalid_input or plan_required."
},
"expected": {
"type": "boolean",
"description": "Whether this is an anticipated access, input, plan or state failure."
},
"projects": {
"type": "array",
"items": {
"type": "object",
"properties": {
"id": {
"type": "number",
"description": "Project ID for projectId."
},
"name": {
"type": "string",
"description": "Project name."
}
},
"description": "Accessible project."
},
"description": "Accessible project choices. Select a projectId and retry."
},
"errorCode": {
"type": "string",
"description": "Failure code for recovery."
},
"retryable": {
"type": "boolean",
"description": "Whether an unchanged request can be retried."
},
"statusCode": {
"type": "number",
"description": "HTTP-style failure status."
},
"executionTime": {
"type": "string",
"description": "Elapsed time in seconds, with an s suffix."
}
},
"description": "Operation result envelope."
},
"annotations": {
"readOnlyHint": true,
"openWorldHint": false,
"idempotentHint": true,
"destructiveHint": false
}
}
The title clearly communicates the tool’s action and subject. Keep it concise.
Description73/100
List Webflow assets including altText and pagination. Continue with nextOffset until null; empty asset alt does not prove a rendered image is decorative.
The description explains the capability, when to use it, and what to expect.
Inputs83/100
Remove validation rules already expressed in this field’s schema; describe its meaning and usage instead.
projectPublishingId
Atomic publishing connection ID from get_publishing_connections, not the provider site or post ID.
Remove validation rules already expressed in this field’s schema; describe its meaning and usage instead.
offset
Number of matching items to skip before returning this result batch.
Remove validation rules already expressed in this field’s schema; describe its meaning and usage instead.
limit
Maximum number of matching results to return in this request.
Remove validation rules already expressed in this field’s schema; describe its meaning and usage instead.
projectId
Atomic project ID from list_projects. Omit to use the configured project; if asked to choose, select one of the accessible returned IDs.
Clear enough to supply this argument.
context
Short purpose of this call for the activity log. Exclude personal data and private source content.
Remove validation rules already expressed in this field’s schema; describe its meaning and usage instead.
llm_model
Use the exact model ID executing this call, from runtime/system context, for usage attribution. Supply it on every Atomic MCP tool call, including discovery and feedback, and update it if the model changes. Use the model ID rather than the client app name. If unavailable, omit it; never guess or ask the user.
Align the output schema with the tool’s documented result.
View output schema
{
"type": "object",
"required": [
"success"
],
"properties": {
"url": {
"type": "string",
"description": "Link for resolving the failure or completing the operation."
},
"data": {
"anyOf": [
{
"type": "object",
"required": [
"assets",
"pagination"
],
"properties": {
"assets": {
"type": "array",
"items": {
"type": "object",
"required": [
"id",
"siteId",
"hostedUrl",
"contentType",
"displayName",
"altText"
],
"properties": {
"id": {
"type": "string",
"description": "Identifier of this returned resource. Use it for subsequent reads or edits of the same resource."
},
"siteId": {
"type": "string",
"description": "Native provider site identifier for this connection."
},
"altText": {
"anyOf": [
{
"type": "null"
},
{
"type": "string"
}
]
},
"hostedUrl": {
"type": "string"
},
"contentType": {
"type": "string",
"description": "Content kind returned by the operation, such as a native CMS post type or a file MIME type."
},
"displayName": {
"type": "string",
"description": "Human-readable display name of this item."
}
}
}
},
"pagination": {
"type": "object",
"required": [
"offset",
"limit",
"total",
"nextOffset"
],
"properties": {
"limit": {
"type": "number",
"description": "Maximum number of items requested for this page."
},
"total": {
"type": "number",
"description": "Total number of matching items across all result pages."
},
"offset": {
"type": "number",
"description": "Zero-based result offset represented by this page."
},
"nextOffset": {
"anyOf": [
{
"type": "null"
},
{
"type": "number"
}
],
"description": "Offset for the next result page; null means this listing is complete."
}
},
"description": "Pagination state for the returned page, including its continuation offset."
}
}
},
{
"type": "object",
"required": [
"id",
"siteId",
"hostedUrl",
"contentType",
"displayName",
"altText"
],
"properties": {
"id": {
"type": "string",
"description": "Identifier of this returned resource. Use it for subsequent reads or edits of the same resource."
},
"siteId": {
"type": "string",
"description": "Native provider site identifier for this connection."
},
"altText": {
"anyOf": [
{
"type": "null"
},
{
"type": "string"
}
]
},
"hostedUrl": {
"type": "string"
},
"contentType": {
"type": "string",
"description": "Content kind returned by the operation, such as a native CMS post type or a file MIME type."
},
"displayName": {
"type": "string",
"description": "Human-readable display name of this item."
}
}
}
],
"description": "Operation data; optional fields may be absent."
},
"error": {
"type": "string",
"description": "Why the operation failed."
},
"details": {
"type": "object",
"description": "Diagnostics keyed by errorCode."
},
"message": {
"type": "string",
"description": "Outcome or recovery instructions. Project selection means no action ran."
},
"success": {
"type": "boolean",
"description": "Operation success; on false inspect error/errorCode."
},
"upgrade": {
"type": "object",
"description": "Plan-upgrade guidance for an unavailable capability."
},
"category": {
"type": "string",
"description": "Failure category, such as invalid_input or plan_required."
},
"expected": {
"type": "boolean",
"description": "Whether this is an anticipated access, input, plan or state failure."
},
"projects": {
"type": "array",
"items": {
"type": "object",
"properties": {
"id": {
"type": "number",
"description": "Project ID for projectId."
},
"name": {
"type": "string",
"description": "Project name."
}
},
"description": "Accessible project."
},
"description": "Accessible project choices. Select a projectId and retry."
},
"errorCode": {
"type": "string",
"description": "Failure code for recovery."
},
"retryable": {
"type": "boolean",
"description": "Whether an unchanged request can be retried."
},
"statusCode": {
"type": "number",
"description": "HTTP-style failure status."
},
"executionTime": {
"type": "string",
"description": "Elapsed time in seconds, with an s suffix."
}
},
"description": "Operation result envelope."
}
Original tool metadata
{
"name": "list_webflow_assets",
"title": "List Webflow assets",
"description": "List Webflow assets including altText and pagination. Continue with nextOffset until null; empty asset alt does not prove a rendered image is decorative.",
"inputSchema": {
"type": "object",
"required": [
"projectPublishingId"
],
"properties": {
"limit": {
"type": "number",
"maximum": 100,
"minimum": 1,
"description": "Maximum number of matching results to return in this request."
},
"offset": {
"type": "number",
"minimum": 0,
"description": "Number of matching items to skip before returning this result batch."
},
"context": {
"type": "string",
"maxLength": 120,
"description": "Short purpose of this call for the activity log. Exclude personal data and private source content."
},
"llm_model": {
"type": "string",
"maxLength": 128,
"description": "Use the exact model ID executing this call, from runtime/system context, for usage attribution. Supply it on every Atomic MCP tool call, including discovery and feedback, and update it if the model changes. Use the model ID rather than the client app name. If unavailable, omit it; never guess or ask the user."
},
"projectId": {
"type": "number",
"description": "Atomic project ID from list_projects. Omit to use the configured project; if asked to choose, select one of the accessible returned IDs."
},
"projectPublishingId": {
"type": "number",
"minimum": 1,
"description": "Atomic publishing connection ID from get_publishing_connections, not the provider site or post ID."
}
},
"additionalProperties": false
},
"outputSchema": {
"type": "object",
"required": [
"success"
],
"properties": {
"url": {
"type": "string",
"description": "Link for resolving the failure or completing the operation."
},
"data": {
"anyOf": [
{
"type": "object",
"required": [
"assets",
"pagination"
],
"properties": {
"assets": {
"type": "array",
"items": {
"type": "object",
"required": [
"id",
"siteId",
"hostedUrl",
"contentType",
"displayName",
"altText"
],
"properties": {
"id": {
"type": "string",
"description": "Identifier of this returned resource. Use it for subsequent reads or edits of the same resource."
},
"siteId": {
"type": "string",
"description": "Native provider site identifier for this connection."
},
"altText": {
"anyOf": [
{
"type": "null"
},
{
"type": "string"
}
]
},
"hostedUrl": {
"type": "string"
},
"contentType": {
"type": "string",
"description": "Content kind returned by the operation, such as a native CMS post type or a file MIME type."
},
"displayName": {
"type": "string",
"description": "Human-readable display name of this item."
}
}
}
},
"pagination": {
"type": "object",
"required": [
"offset",
"limit",
"total",
"nextOffset"
],
"properties": {
"limit": {
"type": "number",
"description": "Maximum number of items requested for this page."
},
"total": {
"type": "number",
"description": "Total number of matching items across all result pages."
},
"offset": {
"type": "number",
"description": "Zero-based result offset represented by this page."
},
"nextOffset": {
"anyOf": [
{
"type": "null"
},
{
"type": "number"
}
],
"description": "Offset for the next result page; null means this listing is complete."
}
},
"description": "Pagination state for the returned page, including its continuation offset."
}
}
},
{
"type": "object",
"required": [
"id",
"siteId",
"hostedUrl",
"contentType",
"displayName",
"altText"
],
"properties": {
"id": {
"type": "string",
"description": "Identifier of this returned resource. Use it for subsequent reads or edits of the same resource."
},
"siteId": {
"type": "string",
"description": "Native provider site identifier for this connection."
},
"altText": {
"anyOf": [
{
"type": "null"
},
{
"type": "string"
}
]
},
"hostedUrl": {
"type": "string"
},
"contentType": {
"type": "string",
"description": "Content kind returned by the operation, such as a native CMS post type or a file MIME type."
},
"displayName": {
"type": "string",
"description": "Human-readable display name of this item."
}
}
}
],
"description": "Operation data; optional fields may be absent."
},
"error": {
"type": "string",
"description": "Why the operation failed."
},
"details": {
"type": "object",
"description": "Diagnostics keyed by errorCode."
},
"message": {
"type": "string",
"description": "Outcome or recovery instructions. Project selection means no action ran."
},
"success": {
"type": "boolean",
"description": "Operation success; on false inspect error/errorCode."
},
"upgrade": {
"type": "object",
"description": "Plan-upgrade guidance for an unavailable capability."
},
"category": {
"type": "string",
"description": "Failure category, such as invalid_input or plan_required."
},
"expected": {
"type": "boolean",
"description": "Whether this is an anticipated access, input, plan or state failure."
},
"projects": {
"type": "array",
"items": {
"type": "object",
"properties": {
"id": {
"type": "number",
"description": "Project ID for projectId."
},
"name": {
"type": "string",
"description": "Project name."
}
},
"description": "Accessible project."
},
"description": "Accessible project choices. Select a projectId and retry."
},
"errorCode": {
"type": "string",
"description": "Failure code for recovery."
},
"retryable": {
"type": "boolean",
"description": "Whether an unchanged request can be retried."
},
"statusCode": {
"type": "number",
"description": "HTTP-style failure status."
},
"executionTime": {
"type": "string",
"description": "Elapsed time in seconds, with an s suffix."
}
},
"description": "Operation result envelope."
},
"annotations": {
"readOnlyHint": true,
"openWorldHint": true,
"idempotentHint": true,
"destructiveHint": false
}
}
The title clearly communicates the tool’s action and subject. Keep it concise.
Description81/100
List full native CMS items with bounded pagination. Continue with nextOffset until null; slug and name filters are exact.
The description explains the capability, when to use it, and what to expect.
Inputs83/100
Clarify units, where to obtain this value, or conventions not already expressed in the schema.
projectPublishingId
Atomic publishing connection ID from get_publishing_connections, not the provider site or post ID.
Clear enough to supply this argument.
collectionId
CMS collection in the connected site
Clarify units, where to obtain this value, or conventions not already expressed in the schema.
offset
Number of matching items to skip before returning this result batch.
Remove validation rules already expressed in this field’s schema; describe its meaning and usage instead.
limit
Maximum number of matching results to return in this request.
Remove validation rules already expressed in this field’s schema; describe its meaning and usage instead.
slug
Exact native slug filter
Clear enough to supply this argument.
name
Exact native name filter
Clear enough to supply this argument.
projectId
Atomic project ID from list_projects. Omit to use the configured project; if asked to choose, select one of the accessible returned IDs.
Clear enough to supply this argument.
context
Short purpose of this call for the activity log. Exclude personal data and private source content.
Remove validation rules already expressed in this field’s schema; describe its meaning and usage instead.
llm_model
Use the exact model ID executing this call, from runtime/system context, for usage attribution. Supply it on every Atomic MCP tool call, including discovery and feedback, and update it if the model changes. Use the model ID rather than the client app name. If unavailable, omit it; never guess or ask the user.
Remove validation rules already expressed in this field’s schema; describe its meaning and usage instead.
{
"type": "object",
"required": [
"success"
],
"properties": {
"url": {
"type": "string",
"description": "Link for resolving the failure or completing the operation."
},
"data": {
"type": "object",
"required": [
"items",
"pagination"
],
"properties": {
"items": {
"type": "array",
"items": {
"type": "object",
"required": [
"id",
"fieldData",
"isDraft",
"isArchived",
"fields"
],
"properties": {
"id": {
"type": "string",
"description": "Identifier of this returned resource. Use it for subsequent reads or edits of the same resource."
},
"fields": {
"type": "array",
"items": {
"type": "object",
"description": "Nested operation-specific fields."
},
"description": "Native field values or field-level results returned by the selected CMS operation."
},
"isDraft": {
"type": "boolean",
"description": "Whether this native CMS record remains a draft."
},
"fieldData": {
"type": "object",
"description": "Native collection-field values keyed by field slug. Custom fields depend on the collection schema."
},
"isArchived": {
"type": "boolean",
"description": "Whether the native CMS record is archived."
},
"cmsLocaleId": {
"type": "string"
},
"lastPublished": {
"anyOf": [
{
"type": "null"
},
{
"type": "string"
}
]
}
}
},
"description": "Items returned in this result collection."
},
"pagination": {
"type": "object",
"required": [
"offset",
"limit",
"total",
"nextOffset"
],
"properties": {
"limit": {
"type": "number",
"description": "Maximum number of items requested for this page."
},
"total": {
"type": "number",
"description": "Total number of matching items across all result pages."
},
"offset": {
"type": "number",
"description": "Zero-based result offset represented by this page."
},
"nextOffset": {
"anyOf": [
{
"type": "null"
},
{
"type": "number"
}
],
"description": "Offset for the next result page; null means this listing is complete."
}
},
"description": "Pagination state for the returned page, including its continuation offset."
}
},
"description": "Operation data; optional fields may be absent."
},
"error": {
"type": "string",
"description": "Why the operation failed."
},
"details": {
"type": "object",
"description": "Diagnostics keyed by errorCode."
},
"message": {
"type": "string",
"description": "Outcome or recovery instructions. Project selection means no action ran."
},
"success": {
"type": "boolean",
"description": "Operation success; on false inspect error/errorCode."
},
"upgrade": {
"type": "object",
"description": "Plan-upgrade guidance for an unavailable capability."
},
"category": {
"type": "string",
"description": "Failure category, such as invalid_input or plan_required."
},
"expected": {
"type": "boolean",
"description": "Whether this is an anticipated access, input, plan or state failure."
},
"projects": {
"type": "array",
"items": {
"type": "object",
"properties": {
"id": {
"type": "number",
"description": "Project ID for projectId."
},
"name": {
"type": "string",
"description": "Project name."
}
},
"description": "Accessible project."
},
"description": "Accessible project choices. Select a projectId and retry."
},
"errorCode": {
"type": "string",
"description": "Failure code for recovery."
},
"retryable": {
"type": "boolean",
"description": "Whether an unchanged request can be retried."
},
"statusCode": {
"type": "number",
"description": "HTTP-style failure status."
},
"executionTime": {
"type": "string",
"description": "Elapsed time in seconds, with an s suffix."
}
},
"description": "Operation result envelope."
}
Original tool metadata
{
"name": "list_webflow_collection_items",
"title": "List Webflow collection items",
"description": "List full native CMS items with bounded pagination. Continue with nextOffset until null; slug and name filters are exact.",
"inputSchema": {
"type": "object",
"required": [
"projectPublishingId",
"collectionId"
],
"properties": {
"name": {
"type": "string",
"description": "Exact native name filter"
},
"slug": {
"type": "string",
"description": "Exact native slug filter"
},
"limit": {
"type": "number",
"maximum": 100,
"minimum": 1,
"description": "Maximum number of matching results to return in this request."
},
"offset": {
"type": "number",
"minimum": 0,
"description": "Number of matching items to skip before returning this result batch."
},
"context": {
"type": "string",
"maxLength": 120,
"description": "Short purpose of this call for the activity log. Exclude personal data and private source content."
},
"llm_model": {
"type": "string",
"maxLength": 128,
"description": "Use the exact model ID executing this call, from runtime/system context, for usage attribution. Supply it on every Atomic MCP tool call, including discovery and feedback, and update it if the model changes. Use the model ID rather than the client app name. If unavailable, omit it; never guess or ask the user."
},
"projectId": {
"type": "number",
"description": "Atomic project ID from list_projects. Omit to use the configured project; if asked to choose, select one of the accessible returned IDs."
},
"collectionId": {
"type": "string",
"pattern": "^[a-fA-F0-9]{24}$",
"description": "CMS collection in the connected site"
},
"projectPublishingId": {
"type": "number",
"minimum": 1,
"description": "Atomic publishing connection ID from get_publishing_connections, not the provider site or post ID."
}
},
"additionalProperties": false
},
"outputSchema": {
"type": "object",
"required": [
"success"
],
"properties": {
"url": {
"type": "string",
"description": "Link for resolving the failure or completing the operation."
},
"data": {
"type": "object",
"required": [
"items",
"pagination"
],
"properties": {
"items": {
"type": "array",
"items": {
"type": "object",
"required": [
"id",
"fieldData",
"isDraft",
"isArchived",
"fields"
],
"properties": {
"id": {
"type": "string",
"description": "Identifier of this returned resource. Use it for subsequent reads or edits of the same resource."
},
"fields": {
"type": "array",
"items": {
"type": "object",
"description": "Nested operation-specific fields."
},
"description": "Native field values or field-level results returned by the selected CMS operation."
},
"isDraft": {
"type": "boolean",
"description": "Whether this native CMS record remains a draft."
},
"fieldData": {
"type": "object",
"description": "Native collection-field values keyed by field slug. Custom fields depend on the collection schema."
},
"isArchived": {
"type": "boolean",
"description": "Whether the native CMS record is archived."
},
"cmsLocaleId": {
"type": "string"
},
"lastPublished": {
"anyOf": [
{
"type": "null"
},
{
"type": "string"
}
]
}
}
},
"description": "Items returned in this result collection."
},
"pagination": {
"type": "object",
"required": [
"offset",
"limit",
"total",
"nextOffset"
],
"properties": {
"limit": {
"type": "number",
"description": "Maximum number of items requested for this page."
},
"total": {
"type": "number",
"description": "Total number of matching items across all result pages."
},
"offset": {
"type": "number",
"description": "Zero-based result offset represented by this page."
},
"nextOffset": {
"anyOf": [
{
"type": "null"
},
{
"type": "number"
}
],
"description": "Offset for the next result page; null means this listing is complete."
}
},
"description": "Pagination state for the returned page, including its continuation offset."
}
},
"description": "Operation data; optional fields may be absent."
},
"error": {
"type": "string",
"description": "Why the operation failed."
},
"details": {
"type": "object",
"description": "Diagnostics keyed by errorCode."
},
"message": {
"type": "string",
"description": "Outcome or recovery instructions. Project selection means no action ran."
},
"success": {
"type": "boolean",
"description": "Operation success; on false inspect error/errorCode."
},
"upgrade": {
"type": "object",
"description": "Plan-upgrade guidance for an unavailable capability."
},
"category": {
"type": "string",
"description": "Failure category, such as invalid_input or plan_required."
},
"expected": {
"type": "boolean",
"description": "Whether this is an anticipated access, input, plan or state failure."
},
"projects": {
"type": "array",
"items": {
"type": "object",
"properties": {
"id": {
"type": "number",
"description": "Project ID for projectId."
},
"name": {
"type": "string",
"description": "Project name."
}
},
"description": "Accessible project."
},
"description": "Accessible project choices. Select a projectId and retry."
},
"errorCode": {
"type": "string",
"description": "Failure code for recovery."
},
"retryable": {
"type": "boolean",
"description": "Whether an unchanged request can be retried."
},
"statusCode": {
"type": "number",
"description": "HTTP-style failure status."
},
"executionTime": {
"type": "string",
"description": "Elapsed time in seconds, with an s suffix."
}
},
"description": "Operation result envelope."
},
"annotations": {
"readOnlyHint": true,
"openWorldHint": true,
"idempotentHint": true,
"destructiveHint": false
}
}
The title clearly communicates the tool’s action and subject. Keep it concise.
Description97/100
List CMS collections belonging to the connected Webflow site.
Use before choosing collectionId for structure or item reads. Lists collection identities only; get_webflow_collection_structure explains fields and list_webflow_collection_items returns records.
The description explains the capability, when to use it, and what to expect.
Inputs75/100
Remove validation rules already expressed in this field’s schema; describe its meaning and usage instead.
projectPublishingId
Atomic publishing connection ID from get_publishing_connections, not the provider site or post ID.
Remove validation rules already expressed in this field’s schema; describe its meaning and usage instead.
projectId
Atomic project ID from list_projects. Omit to use the configured project; if asked to choose, select one of the accessible returned IDs.
Remove validation rules already expressed in this field’s schema; describe its meaning and usage instead.
context
Short purpose of this call for the activity log. Exclude personal data and private source content.
Remove validation rules already expressed in this field’s schema; describe its meaning and usage instead.
llm_model
Use the exact model ID executing this call, from runtime/system context, for usage attribution. Supply it on every Atomic MCP tool call, including discovery and feedback, and update it if the model changes. Use the model ID rather than the client app name. If unavailable, omit it; never guess or ask the user.
Remove validation rules already expressed in this field’s schema; describe its meaning and usage instead.
{
"type": "object",
"required": [
"success"
],
"properties": {
"url": {
"type": "string",
"description": "Link for resolving the failure or completing the operation."
},
"data": {
"type": "object",
"required": [
"collections"
],
"properties": {
"collections": {
"type": "array",
"items": {
"type": "object",
"required": [
"id",
"displayName",
"slug"
],
"properties": {
"id": {
"type": "string",
"description": "Identifier of this returned resource. Use it for subsequent reads or edits of the same resource."
},
"slug": {
"type": "string",
"description": "Saved URL slug or native CMS slug of this item."
},
"displayName": {
"type": "string",
"description": "Human-readable display name of this item."
}
}
}
}
},
"description": "Operation data; optional fields may be absent."
},
"error": {
"type": "string",
"description": "Why the operation failed."
},
"details": {
"type": "object",
"description": "Diagnostics keyed by errorCode."
},
"message": {
"type": "string",
"description": "Outcome or recovery instructions. Project selection means no action ran."
},
"success": {
"type": "boolean",
"description": "Operation success; on false inspect error/errorCode."
},
"upgrade": {
"type": "object",
"description": "Plan-upgrade guidance for an unavailable capability."
},
"category": {
"type": "string",
"description": "Failure category, such as invalid_input or plan_required."
},
"expected": {
"type": "boolean",
"description": "Whether this is an anticipated access, input, plan or state failure."
},
"projects": {
"type": "array",
"items": {
"type": "object",
"properties": {
"id": {
"type": "number",
"description": "Project ID for projectId."
},
"name": {
"type": "string",
"description": "Project name."
}
},
"description": "Accessible project."
},
"description": "Accessible project choices. Select a projectId and retry."
},
"errorCode": {
"type": "string",
"description": "Failure code for recovery."
},
"retryable": {
"type": "boolean",
"description": "Whether an unchanged request can be retried."
},
"statusCode": {
"type": "number",
"description": "HTTP-style failure status."
},
"executionTime": {
"type": "string",
"description": "Elapsed time in seconds, with an s suffix."
}
},
"description": "Operation result envelope."
}
Original tool metadata
{
"name": "list_webflow_collections",
"title": "List Webflow collections",
"description": "List CMS collections belonging to the connected Webflow site.\n\nUse before choosing collectionId for structure or item reads. Lists collection identities only; get_webflow_collection_structure explains fields and list_webflow_collection_items returns records.",
"inputSchema": {
"type": "object",
"required": [
"projectPublishingId"
],
"properties": {
"context": {
"type": "string",
"maxLength": 120,
"description": "Short purpose of this call for the activity log. Exclude personal data and private source content."
},
"llm_model": {
"type": "string",
"maxLength": 128,
"description": "Use the exact model ID executing this call, from runtime/system context, for usage attribution. Supply it on every Atomic MCP tool call, including discovery and feedback, and update it if the model changes. Use the model ID rather than the client app name. If unavailable, omit it; never guess or ask the user."
},
"projectId": {
"type": "number",
"description": "Atomic project ID from list_projects. Omit to use the configured project; if asked to choose, select one of the accessible returned IDs."
},
"projectPublishingId": {
"type": "number",
"minimum": 1,
"description": "Atomic publishing connection ID from get_publishing_connections, not the provider site or post ID."
}
},
"additionalProperties": false
},
"outputSchema": {
"type": "object",
"required": [
"success"
],
"properties": {
"url": {
"type": "string",
"description": "Link for resolving the failure or completing the operation."
},
"data": {
"type": "object",
"required": [
"collections"
],
"properties": {
"collections": {
"type": "array",
"items": {
"type": "object",
"required": [
"id",
"displayName",
"slug"
],
"properties": {
"id": {
"type": "string",
"description": "Identifier of this returned resource. Use it for subsequent reads or edits of the same resource."
},
"slug": {
"type": "string",
"description": "Saved URL slug or native CMS slug of this item."
},
"displayName": {
"type": "string",
"description": "Human-readable display name of this item."
}
}
}
}
},
"description": "Operation data; optional fields may be absent."
},
"error": {
"type": "string",
"description": "Why the operation failed."
},
"details": {
"type": "object",
"description": "Diagnostics keyed by errorCode."
},
"message": {
"type": "string",
"description": "Outcome or recovery instructions. Project selection means no action ran."
},
"success": {
"type": "boolean",
"description": "Operation success; on false inspect error/errorCode."
},
"upgrade": {
"type": "object",
"description": "Plan-upgrade guidance for an unavailable capability."
},
"category": {
"type": "string",
"description": "Failure category, such as invalid_input or plan_required."
},
"expected": {
"type": "boolean",
"description": "Whether this is an anticipated access, input, plan or state failure."
},
"projects": {
"type": "array",
"items": {
"type": "object",
"properties": {
"id": {
"type": "number",
"description": "Project ID for projectId."
},
"name": {
"type": "string",
"description": "Project name."
}
},
"description": "Accessible project."
},
"description": "Accessible project choices. Select a projectId and retry."
},
"errorCode": {
"type": "string",
"description": "Failure code for recovery."
},
"retryable": {
"type": "boolean",
"description": "Whether an unchanged request can be retried."
},
"statusCode": {
"type": "number",
"description": "HTTP-style failure status."
},
"executionTime": {
"type": "string",
"description": "Elapsed time in seconds, with an s suffix."
}
},
"description": "Operation result envelope."
},
"annotations": {
"readOnlyHint": true,
"openWorldHint": true,
"idempotentHint": true,
"destructiveHint": false
}
}
The title clearly communicates the tool’s action and subject. Keep it concise.
Description91/100
List values for a global WooCommerce attribute.
Use attributeId from list_woocommerce_attributes to read that attribute's global values. This is not the attribute definition list and does not add a term; follow returned pagination if present.
The description explains the capability, when to use it, and what to expect.
Inputs78/100
Remove validation rules already expressed in this field’s schema; describe its meaning and usage instead.
projectPublishingId
Atomic publishing connection ID from get_publishing_connections, not the provider site or post ID.
Remove validation rules already expressed in this field’s schema; describe its meaning and usage instead.
page
Page number to request from the provider; start with the initial page and follow nextPage when present.
Remove validation rules already expressed in this field’s schema; describe its meaning and usage instead.
perPage
Number of items to request in each provider result page.
Remove validation rules already expressed in this field’s schema; describe its meaning and usage instead.
search
Text used to filter matching items by the provider's search behavior.
Explain the meaning of this value, not just its name.
attributeId
Global WooCommerce attribute identifier from list_woocommerce_attributes.
Remove validation rules already expressed in this field’s schema; describe its meaning and usage instead.
projectId
Atomic project ID from list_projects. Omit to use the configured project; if asked to choose, select one of the accessible returned IDs.
Clear enough to supply this argument.
context
Short purpose of this call for the activity log. Exclude personal data and private source content.
Remove validation rules already expressed in this field’s schema; describe its meaning and usage instead.
llm_model
Use the exact model ID executing this call, from runtime/system context, for usage attribution. Supply it on every Atomic MCP tool call, including discovery and feedback, and update it if the model changes. Use the model ID rather than the client app name. If unavailable, omit it; never guess or ask the user.
{
"type": "object",
"required": [
"success"
],
"properties": {
"url": {
"type": "string",
"description": "Link for resolving the failure or completing the operation."
},
"data": {
"type": "object",
"required": [
"data"
],
"properties": {
"data": {
"type": "array",
"items": {
"type": "object",
"required": [
"id"
],
"properties": {
"id": {
"type": "number",
"description": "Identifier of this returned resource. Use it for subsequent reads or edits of the same resource."
},
"link": {
"type": "string"
},
"name": {
"type": "string",
"description": "Human-readable name of this resource."
},
"slug": {
"type": "string",
"description": "Saved URL slug or native CMS slug of this item."
},
"type": {
"type": "string",
"description": "Kind of the returned item; determines how its operation-specific fields should be interpreted."
},
"count": {
"type": "number",
"description": "Number of records reported by the provider for this group."
},
"title": {
"type": "object",
"description": "Display or content title of this returned item."
},
"parent": {
"type": "number",
"description": "Native parent record ID; zero denotes the provider root when applicable."
},
"status": {
"type": "string",
"description": "Current saved or execution state reported by the operation."
},
"caption": {
"type": "object",
"description": "Native media caption with raw/rendered values when supplied."
},
"alt_text": {
"type": "string",
"description": "Saved accessible alternative text on the native WordPress media record."
},
"order_by": {
"type": "string",
"description": "Native ordering policy for WooCommerce attribute terms."
},
"taxonomy": {
"type": "string",
"description": "Native taxonomy slug owning this term."
},
"mime_type": {
"type": "string",
"description": "Native MIME type of this media record."
},
"media_type": {
"type": "string",
"description": "WordPress media category, such as image or file."
},
"source_url": {
"type": "string",
"description": "Provider URL of the media asset."
},
"description": {
"anyOf": [
{
"type": "string"
},
{
"type": "object",
"description": "Nested operation-specific fields."
}
],
"description": "Saved description of this resource or its purpose."
},
"has_archives": {
"type": "boolean",
"description": "Whether this WooCommerce attribute enables public archives."
}
}
},
"description": "Result items or operation data inside this returned payload. Pagination fields describe only this result page."
},
"total": {
"type": "number",
"description": "Total number of matching items across all result pages."
},
"nextPage": {
"anyOf": [
{
"type": "null"
},
{
"type": "number"
}
],
"description": "Next page to request when more results exist; use the returned value rather than constructing a cursor."
},
"replayed": {
"type": "boolean",
"description": "Whether this response reuses the recorded outcome of an earlier attempt rather than performing a new write."
}
},
"description": "Operation data; optional fields may be absent."
},
"error": {
"type": "string",
"description": "Why the operation failed."
},
"details": {
"type": "object",
"description": "Diagnostics keyed by errorCode."
},
"message": {
"type": "string",
"description": "Outcome or recovery instructions. Project selection means no action ran."
},
"success": {
"type": "boolean",
"description": "Operation success; on false inspect error/errorCode."
},
"upgrade": {
"type": "object",
"description": "Plan-upgrade guidance for an unavailable capability."
},
"category": {
"type": "string",
"description": "Failure category, such as invalid_input or plan_required."
},
"expected": {
"type": "boolean",
"description": "Whether this is an anticipated access, input, plan or state failure."
},
"projects": {
"type": "array",
"items": {
"type": "object",
"properties": {
"id": {
"type": "number",
"description": "Project ID for projectId."
},
"name": {
"type": "string",
"description": "Project name."
}
},
"description": "Accessible project."
},
"description": "Accessible project choices. Select a projectId and retry."
},
"errorCode": {
"type": "string",
"description": "Failure code for recovery."
},
"retryable": {
"type": "boolean",
"description": "Whether an unchanged request can be retried."
},
"statusCode": {
"type": "number",
"description": "HTTP-style failure status."
},
"executionTime": {
"type": "string",
"description": "Elapsed time in seconds, with an s suffix."
}
},
"description": "Operation result envelope."
}
Original tool metadata
{
"name": "list_woocommerce_attribute_terms",
"title": "List WooCommerce attribute terms",
"description": "List values for a global WooCommerce attribute.\n\nUse attributeId from list_woocommerce_attributes to read that attribute's global values. This is not the attribute definition list and does not add a term; follow returned pagination if present.",
"inputSchema": {
"type": "object",
"required": [
"projectPublishingId",
"attributeId"
],
"properties": {
"page": {
"type": "number",
"minimum": 1,
"description": "Page number to request from the provider; start with the initial page and follow nextPage when present."
},
"search": {
"type": "string",
"description": "Text used to filter matching items by the provider's search behavior."
},
"context": {
"type": "string",
"maxLength": 120,
"description": "Short purpose of this call for the activity log. Exclude personal data and private source content."
},
"perPage": {
"type": "number",
"maximum": 100,
"minimum": 1,
"description": "Number of items to request in each provider result page."
},
"llm_model": {
"type": "string",
"maxLength": 128,
"description": "Use the exact model ID executing this call, from runtime/system context, for usage attribution. Supply it on every Atomic MCP tool call, including discovery and feedback, and update it if the model changes. Use the model ID rather than the client app name. If unavailable, omit it; never guess or ask the user."
},
"projectId": {
"type": "number",
"description": "Atomic project ID from list_projects. Omit to use the configured project; if asked to choose, select one of the accessible returned IDs."
},
"attributeId": {
"type": "number",
"minimum": 1,
"description": "Global WooCommerce attribute identifier from list_woocommerce_attributes."
},
"projectPublishingId": {
"type": "number",
"minimum": 1,
"description": "Atomic publishing connection ID from get_publishing_connections, not the provider site or post ID."
}
},
"additionalProperties": false
},
"outputSchema": {
"type": "object",
"required": [
"success"
],
"properties": {
"url": {
"type": "string",
"description": "Link for resolving the failure or completing the operation."
},
"data": {
"type": "object",
"required": [
"data"
],
"properties": {
"data": {
"type": "array",
"items": {
"type": "object",
"required": [
"id"
],
"properties": {
"id": {
"type": "number",
"description": "Identifier of this returned resource. Use it for subsequent reads or edits of the same resource."
},
"link": {
"type": "string"
},
"name": {
"type": "string",
"description": "Human-readable name of this resource."
},
"slug": {
"type": "string",
"description": "Saved URL slug or native CMS slug of this item."
},
"type": {
"type": "string",
"description": "Kind of the returned item; determines how its operation-specific fields should be interpreted."
},
"count": {
"type": "number",
"description": "Number of records reported by the provider for this group."
},
"title": {
"type": "object",
"description": "Display or content title of this returned item."
},
"parent": {
"type": "number",
"description": "Native parent record ID; zero denotes the provider root when applicable."
},
"status": {
"type": "string",
"description": "Current saved or execution state reported by the operation."
},
"caption": {
"type": "object",
"description": "Native media caption with raw/rendered values when supplied."
},
"alt_text": {
"type": "string",
"description": "Saved accessible alternative text on the native WordPress media record."
},
"order_by": {
"type": "string",
"description": "Native ordering policy for WooCommerce attribute terms."
},
"taxonomy": {
"type": "string",
"description": "Native taxonomy slug owning this term."
},
"mime_type": {
"type": "string",
"description": "Native MIME type of this media record."
},
"media_type": {
"type": "string",
"description": "WordPress media category, such as image or file."
},
"source_url": {
"type": "string",
"description": "Provider URL of the media asset."
},
"description": {
"anyOf": [
{
"type": "string"
},
{
"type": "object",
"description": "Nested operation-specific fields."
}
],
"description": "Saved description of this resource or its purpose."
},
"has_archives": {
"type": "boolean",
"description": "Whether this WooCommerce attribute enables public archives."
}
}
},
"description": "Result items or operation data inside this returned payload. Pagination fields describe only this result page."
},
"total": {
"type": "number",
"description": "Total number of matching items across all result pages."
},
"nextPage": {
"anyOf": [
{
"type": "null"
},
{
"type": "number"
}
],
"description": "Next page to request when more results exist; use the returned value rather than constructing a cursor."
},
"replayed": {
"type": "boolean",
"description": "Whether this response reuses the recorded outcome of an earlier attempt rather than performing a new write."
}
},
"description": "Operation data; optional fields may be absent."
},
"error": {
"type": "string",
"description": "Why the operation failed."
},
"details": {
"type": "object",
"description": "Diagnostics keyed by errorCode."
},
"message": {
"type": "string",
"description": "Outcome or recovery instructions. Project selection means no action ran."
},
"success": {
"type": "boolean",
"description": "Operation success; on false inspect error/errorCode."
},
"upgrade": {
"type": "object",
"description": "Plan-upgrade guidance for an unavailable capability."
},
"category": {
"type": "string",
"description": "Failure category, such as invalid_input or plan_required."
},
"expected": {
"type": "boolean",
"description": "Whether this is an anticipated access, input, plan or state failure."
},
"projects": {
"type": "array",
"items": {
"type": "object",
"properties": {
"id": {
"type": "number",
"description": "Project ID for projectId."
},
"name": {
"type": "string",
"description": "Project name."
}
},
"description": "Accessible project."
},
"description": "Accessible project choices. Select a projectId and retry."
},
"errorCode": {
"type": "string",
"description": "Failure code for recovery."
},
"retryable": {
"type": "boolean",
"description": "Whether an unchanged request can be retried."
},
"statusCode": {
"type": "number",
"description": "HTTP-style failure status."
},
"executionTime": {
"type": "string",
"description": "Elapsed time in seconds, with an s suffix."
}
},
"description": "Operation result envelope."
},
"annotations": {
"readOnlyHint": true,
"openWorldHint": true,
"idempotentHint": true,
"destructiveHint": false
}
}
The title clearly communicates the tool’s action and subject. Keep it concise.
Description89/100
List global WooCommerce product attributes.
Reads store-wide attribute definitions, not their term values or product-specific custom attributes. Use list_woocommerce_attribute_terms for an attribute's values before writing products.
The description explains the capability, when to use it, and what to expect.
Inputs79/100
Remove validation rules already expressed in this field’s schema; describe its meaning and usage instead.
projectPublishingId
Atomic publishing connection ID from get_publishing_connections, not the provider site or post ID.
Remove validation rules already expressed in this field’s schema; describe its meaning and usage instead.
page
Page number to request from the provider; start with the initial page and follow nextPage when present.
Remove validation rules already expressed in this field’s schema; describe its meaning and usage instead.
perPage
Number of items to request in each provider result page.
Remove validation rules already expressed in this field’s schema; describe its meaning and usage instead.
search
Text used to filter matching items by the provider's search behavior.
Explain the meaning of this value, not just its name.
projectId
Atomic project ID from list_projects. Omit to use the configured project; if asked to choose, select one of the accessible returned IDs.
Clear enough to supply this argument.
context
Short purpose of this call for the activity log. Exclude personal data and private source content.
Remove validation rules already expressed in this field’s schema; describe its meaning and usage instead.
llm_model
Use the exact model ID executing this call, from runtime/system context, for usage attribution. Supply it on every Atomic MCP tool call, including discovery and feedback, and update it if the model changes. Use the model ID rather than the client app name. If unavailable, omit it; never guess or ask the user.
Align the output schema with the tool’s documented result.
View output schema
{
"type": "object",
"required": [
"success"
],
"properties": {
"url": {
"type": "string",
"description": "Link for resolving the failure or completing the operation."
},
"data": {
"type": "object",
"required": [
"data"
],
"properties": {
"data": {
"type": "array",
"items": {
"type": "object",
"required": [
"id"
],
"properties": {
"id": {
"type": "number",
"description": "Identifier of this returned resource. Use it for subsequent reads or edits of the same resource."
},
"link": {
"type": "string"
},
"name": {
"type": "string",
"description": "Human-readable name of this resource."
},
"slug": {
"type": "string",
"description": "Saved URL slug or native CMS slug of this item."
},
"type": {
"type": "string",
"description": "Kind of the returned item; determines how its operation-specific fields should be interpreted."
},
"count": {
"type": "number",
"description": "Number of records reported by the provider for this group."
},
"title": {
"type": "object",
"description": "Display or content title of this returned item."
},
"parent": {
"type": "number",
"description": "Native parent record ID; zero denotes the provider root when applicable."
},
"status": {
"type": "string",
"description": "Current saved or execution state reported by the operation."
},
"caption": {
"type": "object",
"description": "Native media caption with raw/rendered values when supplied."
},
"alt_text": {
"type": "string",
"description": "Saved accessible alternative text on the native WordPress media record."
},
"order_by": {
"type": "string",
"description": "Native ordering policy for WooCommerce attribute terms."
},
"taxonomy": {
"type": "string",
"description": "Native taxonomy slug owning this term."
},
"mime_type": {
"type": "string",
"description": "Native MIME type of this media record."
},
"media_type": {
"type": "string",
"description": "WordPress media category, such as image or file."
},
"source_url": {
"type": "string",
"description": "Provider URL of the media asset."
},
"description": {
"anyOf": [
{
"type": "string"
},
{
"type": "object",
"description": "Nested operation-specific fields."
}
],
"description": "Saved description of this resource or its purpose."
},
"has_archives": {
"type": "boolean",
"description": "Whether this WooCommerce attribute enables public archives."
}
}
},
"description": "Result items or operation data inside this returned payload. Pagination fields describe only this result page."
},
"total": {
"type": "number",
"description": "Total number of matching items across all result pages."
},
"nextPage": {
"anyOf": [
{
"type": "null"
},
{
"type": "number"
}
],
"description": "Next page to request when more results exist; use the returned value rather than constructing a cursor."
},
"replayed": {
"type": "boolean",
"description": "Whether this response reuses the recorded outcome of an earlier attempt rather than performing a new write."
}
},
"description": "Operation data; optional fields may be absent."
},
"error": {
"type": "string",
"description": "Why the operation failed."
},
"details": {
"type": "object",
"description": "Diagnostics keyed by errorCode."
},
"message": {
"type": "string",
"description": "Outcome or recovery instructions. Project selection means no action ran."
},
"success": {
"type": "boolean",
"description": "Operation success; on false inspect error/errorCode."
},
"upgrade": {
"type": "object",
"description": "Plan-upgrade guidance for an unavailable capability."
},
"category": {
"type": "string",
"description": "Failure category, such as invalid_input or plan_required."
},
"expected": {
"type": "boolean",
"description": "Whether this is an anticipated access, input, plan or state failure."
},
"projects": {
"type": "array",
"items": {
"type": "object",
"properties": {
"id": {
"type": "number",
"description": "Project ID for projectId."
},
"name": {
"type": "string",
"description": "Project name."
}
},
"description": "Accessible project."
},
"description": "Accessible project choices. Select a projectId and retry."
},
"errorCode": {
"type": "string",
"description": "Failure code for recovery."
},
"retryable": {
"type": "boolean",
"description": "Whether an unchanged request can be retried."
},
"statusCode": {
"type": "number",
"description": "HTTP-style failure status."
},
"executionTime": {
"type": "string",
"description": "Elapsed time in seconds, with an s suffix."
}
},
"description": "Operation result envelope."
}
Original tool metadata
{
"name": "list_woocommerce_attributes",
"title": "List WooCommerce attributes",
"description": "List global WooCommerce product attributes.\n\nReads store-wide attribute definitions, not their term values or product-specific custom attributes. Use list_woocommerce_attribute_terms for an attribute's values before writing products.",
"inputSchema": {
"type": "object",
"required": [
"projectPublishingId"
],
"properties": {
"page": {
"type": "number",
"minimum": 1,
"description": "Page number to request from the provider; start with the initial page and follow nextPage when present."
},
"search": {
"type": "string",
"description": "Text used to filter matching items by the provider's search behavior."
},
"context": {
"type": "string",
"maxLength": 120,
"description": "Short purpose of this call for the activity log. Exclude personal data and private source content."
},
"perPage": {
"type": "number",
"maximum": 100,
"minimum": 1,
"description": "Number of items to request in each provider result page."
},
"llm_model": {
"type": "string",
"maxLength": 128,
"description": "Use the exact model ID executing this call, from runtime/system context, for usage attribution. Supply it on every Atomic MCP tool call, including discovery and feedback, and update it if the model changes. Use the model ID rather than the client app name. If unavailable, omit it; never guess or ask the user."
},
"projectId": {
"type": "number",
"description": "Atomic project ID from list_projects. Omit to use the configured project; if asked to choose, select one of the accessible returned IDs."
},
"projectPublishingId": {
"type": "number",
"minimum": 1,
"description": "Atomic publishing connection ID from get_publishing_connections, not the provider site or post ID."
}
},
"additionalProperties": false
},
"outputSchema": {
"type": "object",
"required": [
"success"
],
"properties": {
"url": {
"type": "string",
"description": "Link for resolving the failure or completing the operation."
},
"data": {
"type": "object",
"required": [
"data"
],
"properties": {
"data": {
"type": "array",
"items": {
"type": "object",
"required": [
"id"
],
"properties": {
"id": {
"type": "number",
"description": "Identifier of this returned resource. Use it for subsequent reads or edits of the same resource."
},
"link": {
"type": "string"
},
"name": {
"type": "string",
"description": "Human-readable name of this resource."
},
"slug": {
"type": "string",
"description": "Saved URL slug or native CMS slug of this item."
},
"type": {
"type": "string",
"description": "Kind of the returned item; determines how its operation-specific fields should be interpreted."
},
"count": {
"type": "number",
"description": "Number of records reported by the provider for this group."
},
"title": {
"type": "object",
"description": "Display or content title of this returned item."
},
"parent": {
"type": "number",
"description": "Native parent record ID; zero denotes the provider root when applicable."
},
"status": {
"type": "string",
"description": "Current saved or execution state reported by the operation."
},
"caption": {
"type": "object",
"description": "Native media caption with raw/rendered values when supplied."
},
"alt_text": {
"type": "string",
"description": "Saved accessible alternative text on the native WordPress media record."
},
"order_by": {
"type": "string",
"description": "Native ordering policy for WooCommerce attribute terms."
},
"taxonomy": {
"type": "string",
"description": "Native taxonomy slug owning this term."
},
"mime_type": {
"type": "string",
"description": "Native MIME type of this media record."
},
"media_type": {
"type": "string",
"description": "WordPress media category, such as image or file."
},
"source_url": {
"type": "string",
"description": "Provider URL of the media asset."
},
"description": {
"anyOf": [
{
"type": "string"
},
{
"type": "object",
"description": "Nested operation-specific fields."
}
],
"description": "Saved description of this resource or its purpose."
},
"has_archives": {
"type": "boolean",
"description": "Whether this WooCommerce attribute enables public archives."
}
}
},
"description": "Result items or operation data inside this returned payload. Pagination fields describe only this result page."
},
"total": {
"type": "number",
"description": "Total number of matching items across all result pages."
},
"nextPage": {
"anyOf": [
{
"type": "null"
},
{
"type": "number"
}
],
"description": "Next page to request when more results exist; use the returned value rather than constructing a cursor."
},
"replayed": {
"type": "boolean",
"description": "Whether this response reuses the recorded outcome of an earlier attempt rather than performing a new write."
}
},
"description": "Operation data; optional fields may be absent."
},
"error": {
"type": "string",
"description": "Why the operation failed."
},
"details": {
"type": "object",
"description": "Diagnostics keyed by errorCode."
},
"message": {
"type": "string",
"description": "Outcome or recovery instructions. Project selection means no action ran."
},
"success": {
"type": "boolean",
"description": "Operation success; on false inspect error/errorCode."
},
"upgrade": {
"type": "object",
"description": "Plan-upgrade guidance for an unavailable capability."
},
"category": {
"type": "string",
"description": "Failure category, such as invalid_input or plan_required."
},
"expected": {
"type": "boolean",
"description": "Whether this is an anticipated access, input, plan or state failure."
},
"projects": {
"type": "array",
"items": {
"type": "object",
"properties": {
"id": {
"type": "number",
"description": "Project ID for projectId."
},
"name": {
"type": "string",
"description": "Project name."
}
},
"description": "Accessible project."
},
"description": "Accessible project choices. Select a projectId and retry."
},
"errorCode": {
"type": "string",
"description": "Failure code for recovery."
},
"retryable": {
"type": "boolean",
"description": "Whether an unchanged request can be retried."
},
"statusCode": {
"type": "number",
"description": "HTTP-style failure status."
},
"executionTime": {
"type": "string",
"description": "Elapsed time in seconds, with an s suffix."
}
},
"description": "Operation result envelope."
},
"annotations": {
"readOnlyHint": true,
"openWorldHint": true,
"idempotentHint": true,
"destructiveHint": false
}
}
The title clearly communicates the tool’s action and subject. Keep it concise.
Description87/100
List authenticated WooCommerce products across all authorized statuses. Returns one page, current optimization fields, capabilities, and nextPage. Use search_woocommerce_products for public embed discovery.
The description explains the capability, when to use it, and what to expect.
Inputs84/100
Remove validation rules already expressed in this field’s schema; describe its meaning and usage instead.
projectPublishingId
Atomic publishing connection ID from get_publishing_connections, not the provider site or post ID.
Clear enough to supply this argument.
seoPlugin
SEO plugin target. all updates every available supported plugin. Overrides the connection preference. Required for SEO writes when multiple plugins exist and no preference is saved.
Remove validation rules already expressed in this field’s schema; describe its meaning and usage instead.
parentProductId
Parent variable product ID when listing, reading or updating variations.
Clear enough to supply this argument.
page
Page number to request from the provider; start with the initial page and follow nextPage when present.
Clear enough to supply this argument.
perPage
Number of items to request in each provider result page.
Remove validation rules already expressed in this field’s schema; describe its meaning and usage instead.
search
Text used to filter matching items by the provider's search behavior.
Explain the meaning of this value, not just its name.
status
Publication or execution status to select or set. Use the statuses supported by this operation.
Remove validation rules already expressed in this field’s schema; describe its meaning and usage instead.
category
Existing product-category identifier from list_wordpress_terms for the product_cat taxonomy.
Remove validation rules already expressed in this field’s schema; describe its meaning and usage instead.
projectId
Atomic project ID from list_projects. Omit to use the configured project; if asked to choose, select one of the accessible returned IDs.
Clear enough to supply this argument.
context
Short purpose of this call for the activity log. Exclude personal data and private source content.
Clear enough to supply this argument.
llm_model
Use the exact model ID executing this call, from runtime/system context, for usage attribution. Supply it on every Atomic MCP tool call, including discovery and feedback, and update it if the model changes. Use the model ID rather than the client app name. If unavailable, omit it; never guess or ask the user.
Remove validation rules already expressed in this field’s schema; describe its meaning and usage instead.
{
"type": "object",
"required": [
"success"
],
"properties": {
"url": {
"type": "string",
"description": "Link for resolving the failure or completing the operation."
},
"data": {
"type": "object",
"required": [
"projectPublishingId",
"products",
"page",
"perPage",
"total",
"nextPage"
],
"properties": {
"page": {
"type": "number",
"description": "Page number represented by these items."
},
"total": {
"type": "number",
"description": "Total number of matching items across all result pages."
},
"perPage": {
"type": "number"
},
"nextPage": {
"anyOf": [
{
"type": "null"
},
{
"type": "number"
}
],
"description": "Next page to request when more results exist; use the returned value rather than constructing a cursor."
},
"products": {
"type": "array",
"items": {
"type": "object",
"required": [
"id",
"permalink",
"status",
"modifiedAt",
"seoPlugins",
"selectedSeoPlugins",
"fields",
"capabilities"
],
"properties": {
"id": {
"type": "number",
"description": "Identifier of this returned resource. Use it for subsequent reads or edits of the same resource."
},
"fields": {
"type": "object",
"description": "Native field values or field-level results returned by the selected CMS operation."
},
"status": {
"type": "string",
"description": "Current saved or execution state reported by the operation."
},
"permalink": {
"type": "string",
"description": "Public CMS URL assigned to this content item; publication status determines whether it is live."
},
"modifiedAt": {
"type": "string",
"description": "Last modification timestamp reported by the connected CMS."
},
"seoPlugins": {
"type": "object",
"description": "SEO plugin availability and support reported by the connected CMS."
},
"capabilities": {
"type": "object",
"description": "Operations and fields supported by this connected provider or resource."
},
"selectedSeoPlugins": {
"type": "array",
"items": {
"enum": [
"squirrly",
"rankMath",
"yoast"
],
"type": "string"
},
"description": "SEO plugins selected for this CMS operation."
}
}
}
},
"truncated": {
"type": "boolean"
},
"projectPublishingId": {
"type": "number",
"description": "Atomic publishing connection used for this native CMS operation."
}
},
"description": "Operation data; optional fields may be absent."
},
"error": {
"type": "string",
"description": "Why the operation failed."
},
"details": {
"type": "object",
"description": "Diagnostics keyed by errorCode."
},
"message": {
"type": "string",
"description": "Outcome or recovery instructions. Project selection means no action ran."
},
"success": {
"type": "boolean",
"description": "Operation success; on false inspect error/errorCode."
},
"upgrade": {
"type": "object",
"description": "Plan-upgrade guidance for an unavailable capability."
},
"category": {
"type": "string",
"description": "Failure category, such as invalid_input or plan_required."
},
"expected": {
"type": "boolean",
"description": "Whether this is an anticipated access, input, plan or state failure."
},
"projects": {
"type": "array",
"items": {
"type": "object",
"properties": {
"id": {
"type": "number",
"description": "Project ID for projectId."
},
"name": {
"type": "string",
"description": "Project name."
}
},
"description": "Accessible project."
},
"description": "Accessible project choices. Select a projectId and retry."
},
"errorCode": {
"type": "string",
"description": "Failure code for recovery."
},
"retryable": {
"type": "boolean",
"description": "Whether an unchanged request can be retried."
},
"statusCode": {
"type": "number",
"description": "HTTP-style failure status."
},
"executionTime": {
"type": "string",
"description": "Elapsed time in seconds, with an s suffix."
}
},
"description": "Operation result envelope."
}
Original tool metadata
{
"name": "list_woocommerce_products",
"title": "List WooCommerce products",
"description": "List authenticated WooCommerce products across all authorized statuses. Returns one page, current optimization fields, capabilities, and nextPage. Use search_woocommerce_products for public embed discovery.",
"inputSchema": {
"type": "object",
"required": [
"projectPublishingId"
],
"properties": {
"page": {
"type": "number",
"minimum": 1,
"description": "Page number to request from the provider; start with the initial page and follow nextPage when present."
},
"search": {
"type": "string",
"description": "Text used to filter matching items by the provider's search behavior."
},
"status": {
"enum": [
"any",
"publish",
"draft",
"pending",
"private",
"future"
],
"type": "string",
"description": "Publication or execution status to select or set. Use the statuses supported by this operation."
},
"context": {
"type": "string",
"maxLength": 120,
"description": "Short purpose of this call for the activity log. Exclude personal data and private source content."
},
"perPage": {
"type": "number",
"maximum": 100,
"minimum": 1,
"description": "Number of items to request in each provider result page."
},
"category": {
"type": "number",
"minimum": 1,
"description": "Existing product-category identifier from list_wordpress_terms for the product_cat taxonomy."
},
"llm_model": {
"type": "string",
"maxLength": 128,
"description": "Use the exact model ID executing this call, from runtime/system context, for usage attribution. Supply it on every Atomic MCP tool call, including discovery and feedback, and update it if the model changes. Use the model ID rather than the client app name. If unavailable, omit it; never guess or ask the user."
},
"projectId": {
"type": "number",
"description": "Atomic project ID from list_projects. Omit to use the configured project; if asked to choose, select one of the accessible returned IDs."
},
"seoPlugin": {
"enum": [
"squirrly",
"rankMath",
"yoast",
"all"
],
"type": "string",
"description": "SEO plugin target. all updates every available supported plugin. Overrides the connection preference. Required for SEO writes when multiple plugins exist and no preference is saved."
},
"parentProductId": {
"type": "number",
"minimum": 1,
"description": "Parent variable product ID when listing, reading or updating variations."
},
"projectPublishingId": {
"type": "number",
"minimum": 1,
"description": "Atomic publishing connection ID from get_publishing_connections, not the provider site or post ID."
}
},
"additionalProperties": false
},
"outputSchema": {
"type": "object",
"required": [
"success"
],
"properties": {
"url": {
"type": "string",
"description": "Link for resolving the failure or completing the operation."
},
"data": {
"type": "object",
"required": [
"projectPublishingId",
"products",
"page",
"perPage",
"total",
"nextPage"
],
"properties": {
"page": {
"type": "number",
"description": "Page number represented by these items."
},
"total": {
"type": "number",
"description": "Total number of matching items across all result pages."
},
"perPage": {
"type": "number"
},
"nextPage": {
"anyOf": [
{
"type": "null"
},
{
"type": "number"
}
],
"description": "Next page to request when more results exist; use the returned value rather than constructing a cursor."
},
"products": {
"type": "array",
"items": {
"type": "object",
"required": [
"id",
"permalink",
"status",
"modifiedAt",
"seoPlugins",
"selectedSeoPlugins",
"fields",
"capabilities"
],
"properties": {
"id": {
"type": "number",
"description": "Identifier of this returned resource. Use it for subsequent reads or edits of the same resource."
},
"fields": {
"type": "object",
"description": "Native field values or field-level results returned by the selected CMS operation."
},
"status": {
"type": "string",
"description": "Current saved or execution state reported by the operation."
},
"permalink": {
"type": "string",
"description": "Public CMS URL assigned to this content item; publication status determines whether it is live."
},
"modifiedAt": {
"type": "string",
"description": "Last modification timestamp reported by the connected CMS."
},
"seoPlugins": {
"type": "object",
"description": "SEO plugin availability and support reported by the connected CMS."
},
"capabilities": {
"type": "object",
"description": "Operations and fields supported by this connected provider or resource."
},
"selectedSeoPlugins": {
"type": "array",
"items": {
"enum": [
"squirrly",
"rankMath",
"yoast"
],
"type": "string"
},
"description": "SEO plugins selected for this CMS operation."
}
}
}
},
"truncated": {
"type": "boolean"
},
"projectPublishingId": {
"type": "number",
"description": "Atomic publishing connection used for this native CMS operation."
}
},
"description": "Operation data; optional fields may be absent."
},
"error": {
"type": "string",
"description": "Why the operation failed."
},
"details": {
"type": "object",
"description": "Diagnostics keyed by errorCode."
},
"message": {
"type": "string",
"description": "Outcome or recovery instructions. Project selection means no action ran."
},
"success": {
"type": "boolean",
"description": "Operation success; on false inspect error/errorCode."
},
"upgrade": {
"type": "object",
"description": "Plan-upgrade guidance for an unavailable capability."
},
"category": {
"type": "string",
"description": "Failure category, such as invalid_input or plan_required."
},
"expected": {
"type": "boolean",
"description": "Whether this is an anticipated access, input, plan or state failure."
},
"projects": {
"type": "array",
"items": {
"type": "object",
"properties": {
"id": {
"type": "number",
"description": "Project ID for projectId."
},
"name": {
"type": "string",
"description": "Project name."
}
},
"description": "Accessible project."
},
"description": "Accessible project choices. Select a projectId and retry."
},
"errorCode": {
"type": "string",
"description": "Failure code for recovery."
},
"retryable": {
"type": "boolean",
"description": "Whether an unchanged request can be retried."
},
"statusCode": {
"type": "number",
"description": "HTTP-style failure status."
},
"executionTime": {
"type": "string",
"description": "Elapsed time in seconds, with an s suffix."
}
},
"description": "Operation result envelope."
},
"annotations": {
"readOnlyHint": true,
"openWorldHint": true,
"idempotentHint": true,
"destructiveHint": false
}
}
The title clearly communicates the tool’s action and subject. Keep it concise.
Description75/100
List existing WordPress content of a registered post type with native WordPress fields and independent SEO capabilities. One page per call; follow nextPage.
The description explains the capability, when to use it, and what to expect.
Inputs85/100
Remove validation rules already expressed in this field’s schema; describe its meaning and usage instead.
seoPlugin
Optional for native edits such as content, title and links; omit for content-only changes. all targets every available supported plugin; explicit selection overrides connection preference. Required for SEO writes when multiple plugins exist without a preference.
Clear enough to supply this argument.
projectPublishingId
Atomic publishing connection ID from get_publishing_connections, not the provider site or post ID.
Clear enough to supply this argument.
contentType
Registered WordPress post-type slug from get_wordpress_capabilities.postTypes, including custom types. Use the registry key, not restBase.
Clear enough to supply this argument.
page
Page number to request from the provider; start with the initial page and follow nextPage when present.
Remove validation rules already expressed in this field’s schema; describe its meaning and usage instead.
perPage
Number of items to request in each provider result page.
Remove validation rules already expressed in this field’s schema; describe its meaning and usage instead.
search
Text used to filter matching items by the provider's search behavior.
Explain the meaning of this value, not just its name.
status
Publication or execution status to select or set. Use the statuses supported by this operation.
Explain the meaning of this value, not just its name.
projectId
Atomic project ID from list_projects. Omit to use the configured project; if asked to choose, select one of the accessible returned IDs.
Clear enough to supply this argument.
context
Short purpose of this call for the activity log. Exclude personal data and private source content.
Clear enough to supply this argument.
llm_model
Use the exact model ID executing this call, from runtime/system context, for usage attribution. Supply it on every Atomic MCP tool call, including discovery and feedback, and update it if the model changes. Use the model ID rather than the client app name. If unavailable, omit it; never guess or ask the user.
{
"type": "object",
"required": [
"success"
],
"properties": {
"url": {
"type": "string",
"description": "Link for resolving the failure or completing the operation."
},
"data": {
"type": "object",
"required": [
"projectPublishingId",
"items",
"page",
"perPage",
"total",
"nextPage"
],
"properties": {
"page": {
"type": "number",
"description": "Page number represented by these items."
},
"items": {
"type": "array",
"items": {
"type": "object",
"required": [
"id",
"contentType",
"title",
"permalink",
"status",
"modifiedAt",
"fields",
"seoPlugins",
"selectedSeoPlugins",
"capabilities"
],
"properties": {
"id": {
"type": "number",
"description": "Identifier of this returned resource. Use it for subsequent reads or edits of the same resource."
},
"title": {
"type": "string",
"description": "Display or content title of this returned item."
},
"fields": {
"type": "object",
"description": "Native field values or field-level results returned by the selected CMS operation."
},
"status": {
"type": "string",
"description": "Current saved or execution state reported by the operation."
},
"permalink": {
"type": "string",
"description": "Public CMS URL assigned to this content item; publication status determines whether it is live."
},
"modifiedAt": {
"type": "string",
"description": "Last modification timestamp reported by the connected CMS."
},
"seoPlugins": {
"type": "object",
"description": "SEO plugin availability and support reported by the connected CMS."
},
"contentType": {
"type": "string",
"description": "Content kind returned by the operation, such as a native CMS post type or a file MIME type."
},
"capabilities": {
"type": "object",
"description": "Operations and fields supported by this connected provider or resource."
},
"selectedSeoPlugins": {
"type": "array",
"items": {
"enum": [
"squirrly",
"rankMath",
"yoast"
],
"type": "string"
},
"description": "SEO plugins selected for this CMS operation."
}
}
},
"description": "Items returned in this result collection."
},
"total": {
"type": "number",
"description": "Total number of matching items across all result pages."
},
"perPage": {
"type": "number"
},
"nextPage": {
"anyOf": [
{
"type": "null"
},
{
"type": "number"
}
],
"description": "Next page to request when more results exist; use the returned value rather than constructing a cursor."
},
"projectPublishingId": {
"type": "number",
"description": "Atomic publishing connection used for this native CMS operation."
}
},
"description": "Operation data; optional fields may be absent."
},
"error": {
"type": "string",
"description": "Why the operation failed."
},
"details": {
"type": "object",
"description": "Diagnostics keyed by errorCode."
},
"message": {
"type": "string",
"description": "Outcome or recovery instructions. Project selection means no action ran."
},
"success": {
"type": "boolean",
"description": "Operation success; on false inspect error/errorCode."
},
"upgrade": {
"type": "object",
"description": "Plan-upgrade guidance for an unavailable capability."
},
"category": {
"type": "string",
"description": "Failure category, such as invalid_input or plan_required."
},
"expected": {
"type": "boolean",
"description": "Whether this is an anticipated access, input, plan or state failure."
},
"projects": {
"type": "array",
"items": {
"type": "object",
"properties": {
"id": {
"type": "number",
"description": "Project ID for projectId."
},
"name": {
"type": "string",
"description": "Project name."
}
},
"description": "Accessible project."
},
"description": "Accessible project choices. Select a projectId and retry."
},
"errorCode": {
"type": "string",
"description": "Failure code for recovery."
},
"retryable": {
"type": "boolean",
"description": "Whether an unchanged request can be retried."
},
"statusCode": {
"type": "number",
"description": "HTTP-style failure status."
},
"executionTime": {
"type": "string",
"description": "Elapsed time in seconds, with an s suffix."
}
},
"description": "Operation result envelope."
}
Original tool metadata
{
"name": "list_wordpress_content",
"title": "List WordPress content",
"description": "List existing WordPress content of a registered post type with native WordPress fields and independent SEO capabilities. One page per call; follow nextPage.",
"inputSchema": {
"type": "object",
"required": [
"projectPublishingId",
"contentType"
],
"properties": {
"page": {
"type": "number",
"minimum": 1,
"description": "Page number to request from the provider; start with the initial page and follow nextPage when present."
},
"search": {
"type": "string",
"description": "Text used to filter matching items by the provider's search behavior."
},
"status": {
"enum": [
"any",
"publish",
"draft",
"pending",
"private",
"future"
],
"type": "string",
"description": "Publication or execution status to select or set. Use the statuses supported by this operation."
},
"context": {
"type": "string",
"maxLength": 120,
"description": "Short purpose of this call for the activity log. Exclude personal data and private source content."
},
"perPage": {
"type": "number",
"maximum": 100,
"minimum": 1,
"description": "Number of items to request in each provider result page."
},
"llm_model": {
"type": "string",
"maxLength": 128,
"description": "Use the exact model ID executing this call, from runtime/system context, for usage attribution. Supply it on every Atomic MCP tool call, including discovery and feedback, and update it if the model changes. Use the model ID rather than the client app name. If unavailable, omit it; never guess or ask the user."
},
"projectId": {
"type": "number",
"description": "Atomic project ID from list_projects. Omit to use the configured project; if asked to choose, select one of the accessible returned IDs."
},
"seoPlugin": {
"enum": [
"rankMath",
"squirrly",
"yoast",
"all"
],
"type": "string",
"description": "Optional for native edits such as content, title and links; omit for content-only changes. all targets every available supported plugin; explicit selection overrides connection preference. Required for SEO writes when multiple plugins exist without a preference."
},
"contentType": {
"type": "string",
"pattern": "^[a-z0-9_-]+$",
"description": "Registered WordPress post-type slug from get_wordpress_capabilities.postTypes, including custom types. Use the registry key, not restBase."
},
"projectPublishingId": {
"type": "number",
"minimum": 1,
"description": "Atomic publishing connection ID from get_publishing_connections, not the provider site or post ID."
}
},
"additionalProperties": false
},
"outputSchema": {
"type": "object",
"required": [
"success"
],
"properties": {
"url": {
"type": "string",
"description": "Link for resolving the failure or completing the operation."
},
"data": {
"type": "object",
"required": [
"projectPublishingId",
"items",
"page",
"perPage",
"total",
"nextPage"
],
"properties": {
"page": {
"type": "number",
"description": "Page number represented by these items."
},
"items": {
"type": "array",
"items": {
"type": "object",
"required": [
"id",
"contentType",
"title",
"permalink",
"status",
"modifiedAt",
"fields",
"seoPlugins",
"selectedSeoPlugins",
"capabilities"
],
"properties": {
"id": {
"type": "number",
"description": "Identifier of this returned resource. Use it for subsequent reads or edits of the same resource."
},
"title": {
"type": "string",
"description": "Display or content title of this returned item."
},
"fields": {
"type": "object",
"description": "Native field values or field-level results returned by the selected CMS operation."
},
"status": {
"type": "string",
"description": "Current saved or execution state reported by the operation."
},
"permalink": {
"type": "string",
"description": "Public CMS URL assigned to this content item; publication status determines whether it is live."
},
"modifiedAt": {
"type": "string",
"description": "Last modification timestamp reported by the connected CMS."
},
"seoPlugins": {
"type": "object",
"description": "SEO plugin availability and support reported by the connected CMS."
},
"contentType": {
"type": "string",
"description": "Content kind returned by the operation, such as a native CMS post type or a file MIME type."
},
"capabilities": {
"type": "object",
"description": "Operations and fields supported by this connected provider or resource."
},
"selectedSeoPlugins": {
"type": "array",
"items": {
"enum": [
"squirrly",
"rankMath",
"yoast"
],
"type": "string"
},
"description": "SEO plugins selected for this CMS operation."
}
}
},
"description": "Items returned in this result collection."
},
"total": {
"type": "number",
"description": "Total number of matching items across all result pages."
},
"perPage": {
"type": "number"
},
"nextPage": {
"anyOf": [
{
"type": "null"
},
{
"type": "number"
}
],
"description": "Next page to request when more results exist; use the returned value rather than constructing a cursor."
},
"projectPublishingId": {
"type": "number",
"description": "Atomic publishing connection used for this native CMS operation."
}
},
"description": "Operation data; optional fields may be absent."
},
"error": {
"type": "string",
"description": "Why the operation failed."
},
"details": {
"type": "object",
"description": "Diagnostics keyed by errorCode."
},
"message": {
"type": "string",
"description": "Outcome or recovery instructions. Project selection means no action ran."
},
"success": {
"type": "boolean",
"description": "Operation success; on false inspect error/errorCode."
},
"upgrade": {
"type": "object",
"description": "Plan-upgrade guidance for an unavailable capability."
},
"category": {
"type": "string",
"description": "Failure category, such as invalid_input or plan_required."
},
"expected": {
"type": "boolean",
"description": "Whether this is an anticipated access, input, plan or state failure."
},
"projects": {
"type": "array",
"items": {
"type": "object",
"properties": {
"id": {
"type": "number",
"description": "Project ID for projectId."
},
"name": {
"type": "string",
"description": "Project name."
}
},
"description": "Accessible project."
},
"description": "Accessible project choices. Select a projectId and retry."
},
"errorCode": {
"type": "string",
"description": "Failure code for recovery."
},
"retryable": {
"type": "boolean",
"description": "Whether an unchanged request can be retried."
},
"statusCode": {
"type": "number",
"description": "HTTP-style failure status."
},
"executionTime": {
"type": "string",
"description": "Elapsed time in seconds, with an s suffix."
}
},
"description": "Operation result envelope."
},
"annotations": {
"readOnlyHint": true,
"openWorldHint": true,
"idempotentHint": true,
"destructiveHint": false
}
}
The title clearly communicates the tool’s action and subject. Keep it concise.
Description79/100
Discover accessible Elementor library templates. Read selected IDs using get_wordpress_elementor_document before reuse.
The description explains the capability, when to use it, and what to expect.
Inputs91/100
Remove validation rules already expressed in this field’s schema; describe its meaning and usage instead.
projectPublishingId
Atomic publishing connection ID from get_publishing_connections, not the provider site or post ID.
Clear enough to supply this argument.
page
Page number to request from the provider; start with the initial page and follow nextPage when present.
Remove validation rules already expressed in this field’s schema; describe its meaning and usage instead.
perPage
Number of items to request in each provider result page.
Remove validation rules already expressed in this field’s schema; describe its meaning and usage instead.
search
Text used to filter matching items by the provider's search behavior.
Clear enough to supply this argument.
templateType
Native Elementor template kind to create or filter.
Clear enough to supply this argument.
projectId
Atomic project ID from list_projects. Omit to use the configured project; if asked to choose, select one of the accessible returned IDs.
Clear enough to supply this argument.
context
Short purpose of this call for the activity log. Exclude personal data and private source content.
Remove validation rules already expressed in this field’s schema; describe its meaning and usage instead.
llm_model
Use the exact model ID executing this call, from runtime/system context, for usage attribution. Supply it on every Atomic MCP tool call, including discovery and feedback, and update it if the model changes. Use the model ID rather than the client app name. If unavailable, omit it; never guess or ask the user.
{
"type": "object",
"required": [
"success"
],
"properties": {
"url": {
"type": "string",
"description": "Link for resolving the failure or completing the operation."
},
"data": {
"type": "object",
"required": [
"data"
],
"properties": {
"data": {
"type": "array",
"items": {
"type": "object",
"required": [
"id",
"title",
"status",
"templateType"
],
"properties": {
"id": {
"type": "number",
"description": "Identifier of this returned resource. Use it for subsequent reads or edits of the same resource."
},
"title": {
"type": "string",
"description": "Display or content title of this returned item."
},
"status": {
"type": "string",
"description": "Current saved or execution state reported by the operation."
},
"templateType": {
"type": "string",
"description": "Elementor template kind reported by the connected site."
}
}
},
"description": "Result items or operation data inside this returned payload. Pagination fields describe only this result page."
},
"total": {
"type": "number",
"description": "Total number of matching items across all result pages."
},
"nextPage": {
"anyOf": [
{
"type": "null"
},
{
"type": "number"
}
],
"description": "Next page to request when more results exist; use the returned value rather than constructing a cursor."
},
"replayed": {
"type": "boolean",
"description": "Whether this response reuses the recorded outcome of an earlier attempt rather than performing a new write."
}
},
"description": "Operation data; optional fields may be absent."
},
"error": {
"type": "string",
"description": "Why the operation failed."
},
"details": {
"type": "object",
"description": "Diagnostics keyed by errorCode."
},
"message": {
"type": "string",
"description": "Outcome or recovery instructions. Project selection means no action ran."
},
"success": {
"type": "boolean",
"description": "Operation success; on false inspect error/errorCode."
},
"upgrade": {
"type": "object",
"description": "Plan-upgrade guidance for an unavailable capability."
},
"category": {
"type": "string",
"description": "Failure category, such as invalid_input or plan_required."
},
"expected": {
"type": "boolean",
"description": "Whether this is an anticipated access, input, plan or state failure."
},
"projects": {
"type": "array",
"items": {
"type": "object",
"properties": {
"id": {
"type": "number",
"description": "Project ID for projectId."
},
"name": {
"type": "string",
"description": "Project name."
}
},
"description": "Accessible project."
},
"description": "Accessible project choices. Select a projectId and retry."
},
"errorCode": {
"type": "string",
"description": "Failure code for recovery."
},
"retryable": {
"type": "boolean",
"description": "Whether an unchanged request can be retried."
},
"statusCode": {
"type": "number",
"description": "HTTP-style failure status."
},
"executionTime": {
"type": "string",
"description": "Elapsed time in seconds, with an s suffix."
}
},
"description": "Operation result envelope."
}
Original tool metadata
{
"name": "list_wordpress_elementor_templates",
"title": "List WordPress elementor templates",
"description": "Discover accessible Elementor library templates. Read selected IDs using get_wordpress_elementor_document before reuse.",
"inputSchema": {
"type": "object",
"required": [
"projectPublishingId"
],
"properties": {
"page": {
"type": "number",
"minimum": 1,
"description": "Page number to request from the provider; start with the initial page and follow nextPage when present."
},
"search": {
"type": "string",
"description": "Text used to filter matching items by the provider's search behavior."
},
"context": {
"type": "string",
"maxLength": 120,
"description": "Short purpose of this call for the activity log. Exclude personal data and private source content."
},
"perPage": {
"type": "number",
"maximum": 100,
"minimum": 1,
"description": "Number of items to request in each provider result page."
},
"llm_model": {
"type": "string",
"maxLength": 128,
"description": "Use the exact model ID executing this call, from runtime/system context, for usage attribution. Supply it on every Atomic MCP tool call, including discovery and feedback, and update it if the model changes. Use the model ID rather than the client app name. If unavailable, omit it; never guess or ask the user."
},
"projectId": {
"type": "number",
"description": "Atomic project ID from list_projects. Omit to use the configured project; if asked to choose, select one of the accessible returned IDs."
},
"templateType": {
"enum": [
"section",
"container",
"page",
"header",
"footer",
"single",
"archive",
"popup"
],
"type": "string",
"description": "Native Elementor template kind to create or filter."
},
"projectPublishingId": {
"type": "number",
"minimum": 1,
"description": "Atomic publishing connection ID from get_publishing_connections, not the provider site or post ID."
}
},
"additionalProperties": false
},
"outputSchema": {
"type": "object",
"required": [
"success"
],
"properties": {
"url": {
"type": "string",
"description": "Link for resolving the failure or completing the operation."
},
"data": {
"type": "object",
"required": [
"data"
],
"properties": {
"data": {
"type": "array",
"items": {
"type": "object",
"required": [
"id",
"title",
"status",
"templateType"
],
"properties": {
"id": {
"type": "number",
"description": "Identifier of this returned resource. Use it for subsequent reads or edits of the same resource."
},
"title": {
"type": "string",
"description": "Display or content title of this returned item."
},
"status": {
"type": "string",
"description": "Current saved or execution state reported by the operation."
},
"templateType": {
"type": "string",
"description": "Elementor template kind reported by the connected site."
}
}
},
"description": "Result items or operation data inside this returned payload. Pagination fields describe only this result page."
},
"total": {
"type": "number",
"description": "Total number of matching items across all result pages."
},
"nextPage": {
"anyOf": [
{
"type": "null"
},
{
"type": "number"
}
],
"description": "Next page to request when more results exist; use the returned value rather than constructing a cursor."
},
"replayed": {
"type": "boolean",
"description": "Whether this response reuses the recorded outcome of an earlier attempt rather than performing a new write."
}
},
"description": "Operation data; optional fields may be absent."
},
"error": {
"type": "string",
"description": "Why the operation failed."
},
"details": {
"type": "object",
"description": "Diagnostics keyed by errorCode."
},
"message": {
"type": "string",
"description": "Outcome or recovery instructions. Project selection means no action ran."
},
"success": {
"type": "boolean",
"description": "Operation success; on false inspect error/errorCode."
},
"upgrade": {
"type": "object",
"description": "Plan-upgrade guidance for an unavailable capability."
},
"category": {
"type": "string",
"description": "Failure category, such as invalid_input or plan_required."
},
"expected": {
"type": "boolean",
"description": "Whether this is an anticipated access, input, plan or state failure."
},
"projects": {
"type": "array",
"items": {
"type": "object",
"properties": {
"id": {
"type": "number",
"description": "Project ID for projectId."
},
"name": {
"type": "string",
"description": "Project name."
}
},
"description": "Accessible project."
},
"description": "Accessible project choices. Select a projectId and retry."
},
"errorCode": {
"type": "string",
"description": "Failure code for recovery."
},
"retryable": {
"type": "boolean",
"description": "Whether an unchanged request can be retried."
},
"statusCode": {
"type": "number",
"description": "HTTP-style failure status."
},
"executionTime": {
"type": "string",
"description": "Elapsed time in seconds, with an s suffix."
}
},
"description": "Operation result envelope."
},
"annotations": {
"readOnlyHint": true,
"openWorldHint": true,
"idempotentHint": true,
"destructiveHint": false
}
}
The title clearly communicates the tool’s action and subject. Keep it concise.
Description94/100
Search authenticated media library; follow nextPage.
Use before reading or editing one existing media ID. Returns a page of library metadata, not downloaded files; continue with nextPage rather than assuming a complete inventory.
The description explains the capability, when to use it, and what to expect.
Inputs79/100
Remove validation rules already expressed in this field’s schema; describe its meaning and usage instead.
projectPublishingId
Atomic publishing connection ID from get_publishing_connections, not the provider site or post ID.
Remove validation rules already expressed in this field’s schema; describe its meaning and usage instead.
page
Page number to request from the provider; start with the initial page and follow nextPage when present.
Remove validation rules already expressed in this field’s schema; describe its meaning and usage instead.
perPage
Number of items to request in each provider result page.
Remove validation rules already expressed in this field’s schema; describe its meaning and usage instead.
search
Text used to filter matching items by the provider's search behavior.
Explain the meaning of this value, not just its name.
projectId
Atomic project ID from list_projects. Omit to use the configured project; if asked to choose, select one of the accessible returned IDs.
Clear enough to supply this argument.
context
Short purpose of this call for the activity log. Exclude personal data and private source content.
Remove validation rules already expressed in this field’s schema; describe its meaning and usage instead.
llm_model
Use the exact model ID executing this call, from runtime/system context, for usage attribution. Supply it on every Atomic MCP tool call, including discovery and feedback, and update it if the model changes. Use the model ID rather than the client app name. If unavailable, omit it; never guess or ask the user.
Align the output schema with the tool’s documented result.
View output schema
{
"type": "object",
"required": [
"success"
],
"properties": {
"url": {
"type": "string",
"description": "Link for resolving the failure or completing the operation."
},
"data": {
"type": "object",
"required": [
"data"
],
"properties": {
"data": {
"type": "array",
"items": {
"type": "object",
"required": [
"id"
],
"properties": {
"id": {
"type": "number",
"description": "Identifier of this returned resource. Use it for subsequent reads or edits of the same resource."
},
"link": {
"type": "string"
},
"name": {
"type": "string",
"description": "Human-readable name of this resource."
},
"slug": {
"type": "string",
"description": "Saved URL slug or native CMS slug of this item."
},
"type": {
"type": "string",
"description": "Kind of the returned item; determines how its operation-specific fields should be interpreted."
},
"count": {
"type": "number",
"description": "Number of records reported by the provider for this group."
},
"title": {
"type": "object",
"description": "Display or content title of this returned item."
},
"parent": {
"type": "number",
"description": "Native parent record ID; zero denotes the provider root when applicable."
},
"status": {
"type": "string",
"description": "Current saved or execution state reported by the operation."
},
"caption": {
"type": "object",
"description": "Native media caption with raw/rendered values when supplied."
},
"alt_text": {
"type": "string",
"description": "Saved accessible alternative text on the native WordPress media record."
},
"order_by": {
"type": "string",
"description": "Native ordering policy for WooCommerce attribute terms."
},
"taxonomy": {
"type": "string",
"description": "Native taxonomy slug owning this term."
},
"mime_type": {
"type": "string",
"description": "Native MIME type of this media record."
},
"media_type": {
"type": "string",
"description": "WordPress media category, such as image or file."
},
"source_url": {
"type": "string",
"description": "Provider URL of the media asset."
},
"description": {
"anyOf": [
{
"type": "string"
},
{
"type": "object",
"description": "Nested operation-specific fields."
}
],
"description": "Saved description of this resource or its purpose."
},
"has_archives": {
"type": "boolean",
"description": "Whether this WooCommerce attribute enables public archives."
}
}
},
"description": "Result items or operation data inside this returned payload. Pagination fields describe only this result page."
},
"total": {
"type": "number",
"description": "Total number of matching items across all result pages."
},
"nextPage": {
"anyOf": [
{
"type": "null"
},
{
"type": "number"
}
],
"description": "Next page to request when more results exist; use the returned value rather than constructing a cursor."
},
"replayed": {
"type": "boolean",
"description": "Whether this response reuses the recorded outcome of an earlier attempt rather than performing a new write."
}
},
"description": "Operation data; optional fields may be absent."
},
"error": {
"type": "string",
"description": "Why the operation failed."
},
"details": {
"type": "object",
"description": "Diagnostics keyed by errorCode."
},
"message": {
"type": "string",
"description": "Outcome or recovery instructions. Project selection means no action ran."
},
"success": {
"type": "boolean",
"description": "Operation success; on false inspect error/errorCode."
},
"upgrade": {
"type": "object",
"description": "Plan-upgrade guidance for an unavailable capability."
},
"category": {
"type": "string",
"description": "Failure category, such as invalid_input or plan_required."
},
"expected": {
"type": "boolean",
"description": "Whether this is an anticipated access, input, plan or state failure."
},
"projects": {
"type": "array",
"items": {
"type": "object",
"properties": {
"id": {
"type": "number",
"description": "Project ID for projectId."
},
"name": {
"type": "string",
"description": "Project name."
}
},
"description": "Accessible project."
},
"description": "Accessible project choices. Select a projectId and retry."
},
"errorCode": {
"type": "string",
"description": "Failure code for recovery."
},
"retryable": {
"type": "boolean",
"description": "Whether an unchanged request can be retried."
},
"statusCode": {
"type": "number",
"description": "HTTP-style failure status."
},
"executionTime": {
"type": "string",
"description": "Elapsed time in seconds, with an s suffix."
}
},
"description": "Operation result envelope."
}
Original tool metadata
{
"name": "list_wordpress_media",
"title": "List WordPress media",
"description": "Search authenticated media library; follow nextPage.\n\nUse before reading or editing one existing media ID. Returns a page of library metadata, not downloaded files; continue with nextPage rather than assuming a complete inventory.",
"inputSchema": {
"type": "object",
"required": [
"projectPublishingId"
],
"properties": {
"page": {
"type": "number",
"minimum": 1,
"description": "Page number to request from the provider; start with the initial page and follow nextPage when present."
},
"search": {
"type": "string",
"description": "Text used to filter matching items by the provider's search behavior."
},
"context": {
"type": "string",
"maxLength": 120,
"description": "Short purpose of this call for the activity log. Exclude personal data and private source content."
},
"perPage": {
"type": "number",
"maximum": 100,
"minimum": 1,
"description": "Number of items to request in each provider result page."
},
"llm_model": {
"type": "string",
"maxLength": 128,
"description": "Use the exact model ID executing this call, from runtime/system context, for usage attribution. Supply it on every Atomic MCP tool call, including discovery and feedback, and update it if the model changes. Use the model ID rather than the client app name. If unavailable, omit it; never guess or ask the user."
},
"projectId": {
"type": "number",
"description": "Atomic project ID from list_projects. Omit to use the configured project; if asked to choose, select one of the accessible returned IDs."
},
"projectPublishingId": {
"type": "number",
"minimum": 1,
"description": "Atomic publishing connection ID from get_publishing_connections, not the provider site or post ID."
}
},
"additionalProperties": false
},
"outputSchema": {
"type": "object",
"required": [
"success"
],
"properties": {
"url": {
"type": "string",
"description": "Link for resolving the failure or completing the operation."
},
"data": {
"type": "object",
"required": [
"data"
],
"properties": {
"data": {
"type": "array",
"items": {
"type": "object",
"required": [
"id"
],
"properties": {
"id": {
"type": "number",
"description": "Identifier of this returned resource. Use it for subsequent reads or edits of the same resource."
},
"link": {
"type": "string"
},
"name": {
"type": "string",
"description": "Human-readable name of this resource."
},
"slug": {
"type": "string",
"description": "Saved URL slug or native CMS slug of this item."
},
"type": {
"type": "string",
"description": "Kind of the returned item; determines how its operation-specific fields should be interpreted."
},
"count": {
"type": "number",
"description": "Number of records reported by the provider for this group."
},
"title": {
"type": "object",
"description": "Display or content title of this returned item."
},
"parent": {
"type": "number",
"description": "Native parent record ID; zero denotes the provider root when applicable."
},
"status": {
"type": "string",
"description": "Current saved or execution state reported by the operation."
},
"caption": {
"type": "object",
"description": "Native media caption with raw/rendered values when supplied."
},
"alt_text": {
"type": "string",
"description": "Saved accessible alternative text on the native WordPress media record."
},
"order_by": {
"type": "string",
"description": "Native ordering policy for WooCommerce attribute terms."
},
"taxonomy": {
"type": "string",
"description": "Native taxonomy slug owning this term."
},
"mime_type": {
"type": "string",
"description": "Native MIME type of this media record."
},
"media_type": {
"type": "string",
"description": "WordPress media category, such as image or file."
},
"source_url": {
"type": "string",
"description": "Provider URL of the media asset."
},
"description": {
"anyOf": [
{
"type": "string"
},
{
"type": "object",
"description": "Nested operation-specific fields."
}
],
"description": "Saved description of this resource or its purpose."
},
"has_archives": {
"type": "boolean",
"description": "Whether this WooCommerce attribute enables public archives."
}
}
},
"description": "Result items or operation data inside this returned payload. Pagination fields describe only this result page."
},
"total": {
"type": "number",
"description": "Total number of matching items across all result pages."
},
"nextPage": {
"anyOf": [
{
"type": "null"
},
{
"type": "number"
}
],
"description": "Next page to request when more results exist; use the returned value rather than constructing a cursor."
},
"replayed": {
"type": "boolean",
"description": "Whether this response reuses the recorded outcome of an earlier attempt rather than performing a new write."
}
},
"description": "Operation data; optional fields may be absent."
},
"error": {
"type": "string",
"description": "Why the operation failed."
},
"details": {
"type": "object",
"description": "Diagnostics keyed by errorCode."
},
"message": {
"type": "string",
"description": "Outcome or recovery instructions. Project selection means no action ran."
},
"success": {
"type": "boolean",
"description": "Operation success; on false inspect error/errorCode."
},
"upgrade": {
"type": "object",
"description": "Plan-upgrade guidance for an unavailable capability."
},
"category": {
"type": "string",
"description": "Failure category, such as invalid_input or plan_required."
},
"expected": {
"type": "boolean",
"description": "Whether this is an anticipated access, input, plan or state failure."
},
"projects": {
"type": "array",
"items": {
"type": "object",
"properties": {
"id": {
"type": "number",
"description": "Project ID for projectId."
},
"name": {
"type": "string",
"description": "Project name."
}
},
"description": "Accessible project."
},
"description": "Accessible project choices. Select a projectId and retry."
},
"errorCode": {
"type": "string",
"description": "Failure code for recovery."
},
"retryable": {
"type": "boolean",
"description": "Whether an unchanged request can be retried."
},
"statusCode": {
"type": "number",
"description": "HTTP-style failure status."
},
"executionTime": {
"type": "string",
"description": "Elapsed time in seconds, with an s suffix."
}
},
"description": "Operation result envelope."
},
"annotations": {
"readOnlyHint": true,
"openWorldHint": true,
"idempotentHint": true,
"destructiveHint": false
}
}
The title clearly communicates the tool’s action and subject. Keep it concise.
Description94/100
Discover REST taxonomies, associated post types and current-user create/assign permissions.
Use to discover taxonomy names and object permissions before list_wordpress_terms or a taxonomy write. It does not create categories or terms.
The description explains the capability, when to use it, and what to expect.
Inputs94/100
Remove validation rules already expressed in this field’s schema; describe its meaning and usage instead.
projectPublishingId
Atomic publishing connection ID from get_publishing_connections, not the provider site or post ID.
Clear enough to supply this argument.
projectId
Atomic project ID from list_projects. Omit to use the configured project; if asked to choose, select one of the accessible returned IDs.
Clear enough to supply this argument.
context
Short purpose of this call for the activity log. Exclude personal data and private source content.
Remove validation rules already expressed in this field’s schema; describe its meaning and usage instead.
llm_model
Use the exact model ID executing this call, from runtime/system context, for usage attribution. Supply it on every Atomic MCP tool call, including discovery and feedback, and update it if the model changes. Use the model ID rather than the client app name. If unavailable, omit it; never guess or ask the user.
{
"type": "object",
"required": [
"success"
],
"properties": {
"url": {
"type": "string",
"description": "Link for resolving the failure or completing the operation."
},
"data": {
"type": "object",
"required": [
"data"
],
"properties": {
"data": {
"type": "array",
"items": {
"type": "object",
"required": [
"name",
"label",
"postTypes",
"hierarchical",
"restBase",
"create",
"assign"
],
"properties": {
"name": {
"type": "string",
"description": "Human-readable name of this resource."
},
"label": {
"type": "string",
"description": "Human-readable label reported by the provider."
},
"assign": {
"type": "boolean",
"description": "Whether the authenticated CMS user can assign terms from this taxonomy."
},
"create": {
"type": "boolean",
"description": "Whether the authenticated CMS user can create/manage terms in this taxonomy."
},
"restBase": {
"type": "string",
"description": "Native WordPress REST route base used by this taxonomy."
},
"postTypes": {
"type": "array",
"items": {
"type": "string"
},
"description": "Native registered post types supported by this taxonomy."
},
"hierarchical": {
"type": "boolean",
"description": "Whether terms in this native taxonomy can have parent/child relationships."
}
}
},
"description": "Result items or operation data inside this returned payload. Pagination fields describe only this result page."
}
},
"description": "Operation data; optional fields may be absent."
},
"error": {
"type": "string",
"description": "Why the operation failed."
},
"details": {
"type": "object",
"description": "Diagnostics keyed by errorCode."
},
"message": {
"type": "string",
"description": "Outcome or recovery instructions. Project selection means no action ran."
},
"success": {
"type": "boolean",
"description": "Operation success; on false inspect error/errorCode."
},
"upgrade": {
"type": "object",
"description": "Plan-upgrade guidance for an unavailable capability."
},
"category": {
"type": "string",
"description": "Failure category, such as invalid_input or plan_required."
},
"expected": {
"type": "boolean",
"description": "Whether this is an anticipated access, input, plan or state failure."
},
"projects": {
"type": "array",
"items": {
"type": "object",
"properties": {
"id": {
"type": "number",
"description": "Project ID for projectId."
},
"name": {
"type": "string",
"description": "Project name."
}
},
"description": "Accessible project."
},
"description": "Accessible project choices. Select a projectId and retry."
},
"errorCode": {
"type": "string",
"description": "Failure code for recovery."
},
"retryable": {
"type": "boolean",
"description": "Whether an unchanged request can be retried."
},
"statusCode": {
"type": "number",
"description": "HTTP-style failure status."
},
"executionTime": {
"type": "string",
"description": "Elapsed time in seconds, with an s suffix."
}
},
"description": "Operation result envelope."
}
Original tool metadata
{
"name": "list_wordpress_taxonomies",
"title": "List WordPress taxonomies",
"description": "Discover REST taxonomies, associated post types and current-user create/assign permissions.\n\nUse to discover taxonomy names and object permissions before list_wordpress_terms or a taxonomy write. It does not create categories or terms.",
"inputSchema": {
"type": "object",
"required": [
"projectPublishingId"
],
"properties": {
"context": {
"type": "string",
"maxLength": 120,
"description": "Short purpose of this call for the activity log. Exclude personal data and private source content."
},
"llm_model": {
"type": "string",
"maxLength": 128,
"description": "Use the exact model ID executing this call, from runtime/system context, for usage attribution. Supply it on every Atomic MCP tool call, including discovery and feedback, and update it if the model changes. Use the model ID rather than the client app name. If unavailable, omit it; never guess or ask the user."
},
"projectId": {
"type": "number",
"description": "Atomic project ID from list_projects. Omit to use the configured project; if asked to choose, select one of the accessible returned IDs."
},
"projectPublishingId": {
"type": "number",
"minimum": 1,
"description": "Atomic publishing connection ID from get_publishing_connections, not the provider site or post ID."
}
},
"additionalProperties": false
},
"outputSchema": {
"type": "object",
"required": [
"success"
],
"properties": {
"url": {
"type": "string",
"description": "Link for resolving the failure or completing the operation."
},
"data": {
"type": "object",
"required": [
"data"
],
"properties": {
"data": {
"type": "array",
"items": {
"type": "object",
"required": [
"name",
"label",
"postTypes",
"hierarchical",
"restBase",
"create",
"assign"
],
"properties": {
"name": {
"type": "string",
"description": "Human-readable name of this resource."
},
"label": {
"type": "string",
"description": "Human-readable label reported by the provider."
},
"assign": {
"type": "boolean",
"description": "Whether the authenticated CMS user can assign terms from this taxonomy."
},
"create": {
"type": "boolean",
"description": "Whether the authenticated CMS user can create/manage terms in this taxonomy."
},
"restBase": {
"type": "string",
"description": "Native WordPress REST route base used by this taxonomy."
},
"postTypes": {
"type": "array",
"items": {
"type": "string"
},
"description": "Native registered post types supported by this taxonomy."
},
"hierarchical": {
"type": "boolean",
"description": "Whether terms in this native taxonomy can have parent/child relationships."
}
}
},
"description": "Result items or operation data inside this returned payload. Pagination fields describe only this result page."
}
},
"description": "Operation data; optional fields may be absent."
},
"error": {
"type": "string",
"description": "Why the operation failed."
},
"details": {
"type": "object",
"description": "Diagnostics keyed by errorCode."
},
"message": {
"type": "string",
"description": "Outcome or recovery instructions. Project selection means no action ran."
},
"success": {
"type": "boolean",
"description": "Operation success; on false inspect error/errorCode."
},
"upgrade": {
"type": "object",
"description": "Plan-upgrade guidance for an unavailable capability."
},
"category": {
"type": "string",
"description": "Failure category, such as invalid_input or plan_required."
},
"expected": {
"type": "boolean",
"description": "Whether this is an anticipated access, input, plan or state failure."
},
"projects": {
"type": "array",
"items": {
"type": "object",
"properties": {
"id": {
"type": "number",
"description": "Project ID for projectId."
},
"name": {
"type": "string",
"description": "Project name."
}
},
"description": "Accessible project."
},
"description": "Accessible project choices. Select a projectId and retry."
},
"errorCode": {
"type": "string",
"description": "Failure code for recovery."
},
"retryable": {
"type": "boolean",
"description": "Whether an unchanged request can be retried."
},
"statusCode": {
"type": "number",
"description": "HTTP-style failure status."
},
"executionTime": {
"type": "string",
"description": "Elapsed time in seconds, with an s suffix."
}
},
"description": "Operation result envelope."
},
"annotations": {
"readOnlyHint": true,
"openWorldHint": true,
"idempotentHint": true,
"destructiveHint": false
}
}
The title clearly communicates the tool’s action and subject. Keep it concise.
Description81/100
Search category, tag or product taxonomy terms by taxonomy name returned by inventory.
Use a taxonomy from list_wordpress_taxonomies to find native term IDs. This reads existing terms; create_wordpress_term adds a term and update_wordpress_term changes one.
The description explains the capability, when to use it, and what to expect.
Inputs86/100
Remove validation rules already expressed in this field’s schema; describe its meaning and usage instead.
projectPublishingId
Atomic publishing connection ID from get_publishing_connections, not the provider site or post ID.
Remove validation rules already expressed in this field’s schema; describe its meaning and usage instead.
page
Page number to request from the provider; start with the initial page and follow nextPage when present.
Remove validation rules already expressed in this field’s schema; describe its meaning and usage instead.
perPage
Number of items to request in each provider result page.
Remove validation rules already expressed in this field’s schema; describe its meaning and usage instead.
search
Text used to filter matching items by the provider's search behavior.
Clear enough to supply this argument.
taxonomy
Native WordPress taxonomy slug from list_wordpress_taxonomies.
Clear enough to supply this argument.
parent
Existing parent term identifier in the same taxonomy; use the native root value when creating a top-level term.
Remove validation rules already expressed in this field’s schema; describe its meaning and usage instead.
projectId
Atomic project ID from list_projects. Omit to use the configured project; if asked to choose, select one of the accessible returned IDs.
Clear enough to supply this argument.
context
Short purpose of this call for the activity log. Exclude personal data and private source content.
Clear enough to supply this argument.
llm_model
Use the exact model ID executing this call, from runtime/system context, for usage attribution. Supply it on every Atomic MCP tool call, including discovery and feedback, and update it if the model changes. Use the model ID rather than the client app name. If unavailable, omit it; never guess or ask the user.
Remove validation rules already expressed in this field’s schema; describe its meaning and usage instead.
{
"type": "object",
"required": [
"success"
],
"properties": {
"url": {
"type": "string",
"description": "Link for resolving the failure or completing the operation."
},
"data": {
"type": "object",
"required": [
"data"
],
"properties": {
"data": {
"type": "array",
"items": {
"type": "object",
"required": [
"id"
],
"properties": {
"id": {
"type": "number",
"description": "Identifier of this returned resource. Use it for subsequent reads or edits of the same resource."
},
"link": {
"type": "string"
},
"name": {
"type": "string",
"description": "Human-readable name of this resource."
},
"slug": {
"type": "string",
"description": "Saved URL slug or native CMS slug of this item."
},
"type": {
"type": "string",
"description": "Kind of the returned item; determines how its operation-specific fields should be interpreted."
},
"count": {
"type": "number",
"description": "Number of records reported by the provider for this group."
},
"title": {
"type": "object",
"description": "Display or content title of this returned item."
},
"parent": {
"type": "number",
"description": "Native parent record ID; zero denotes the provider root when applicable."
},
"status": {
"type": "string",
"description": "Current saved or execution state reported by the operation."
},
"caption": {
"type": "object",
"description": "Native media caption with raw/rendered values when supplied."
},
"alt_text": {
"type": "string",
"description": "Saved accessible alternative text on the native WordPress media record."
},
"order_by": {
"type": "string",
"description": "Native ordering policy for WooCommerce attribute terms."
},
"taxonomy": {
"type": "string",
"description": "Native taxonomy slug owning this term."
},
"mime_type": {
"type": "string",
"description": "Native MIME type of this media record."
},
"media_type": {
"type": "string",
"description": "WordPress media category, such as image or file."
},
"source_url": {
"type": "string",
"description": "Provider URL of the media asset."
},
"description": {
"anyOf": [
{
"type": "string"
},
{
"type": "object",
"description": "Nested operation-specific fields."
}
],
"description": "Saved description of this resource or its purpose."
},
"has_archives": {
"type": "boolean",
"description": "Whether this WooCommerce attribute enables public archives."
}
}
},
"description": "Result items or operation data inside this returned payload. Pagination fields describe only this result page."
},
"total": {
"type": "number",
"description": "Total number of matching items across all result pages."
},
"nextPage": {
"anyOf": [
{
"type": "null"
},
{
"type": "number"
}
],
"description": "Next page to request when more results exist; use the returned value rather than constructing a cursor."
},
"replayed": {
"type": "boolean",
"description": "Whether this response reuses the recorded outcome of an earlier attempt rather than performing a new write."
}
},
"description": "Operation data; optional fields may be absent."
},
"error": {
"type": "string",
"description": "Why the operation failed."
},
"details": {
"type": "object",
"description": "Diagnostics keyed by errorCode."
},
"message": {
"type": "string",
"description": "Outcome or recovery instructions. Project selection means no action ran."
},
"success": {
"type": "boolean",
"description": "Operation success; on false inspect error/errorCode."
},
"upgrade": {
"type": "object",
"description": "Plan-upgrade guidance for an unavailable capability."
},
"category": {
"type": "string",
"description": "Failure category, such as invalid_input or plan_required."
},
"expected": {
"type": "boolean",
"description": "Whether this is an anticipated access, input, plan or state failure."
},
"projects": {
"type": "array",
"items": {
"type": "object",
"properties": {
"id": {
"type": "number",
"description": "Project ID for projectId."
},
"name": {
"type": "string",
"description": "Project name."
}
},
"description": "Accessible project."
},
"description": "Accessible project choices. Select a projectId and retry."
},
"errorCode": {
"type": "string",
"description": "Failure code for recovery."
},
"retryable": {
"type": "boolean",
"description": "Whether an unchanged request can be retried."
},
"statusCode": {
"type": "number",
"description": "HTTP-style failure status."
},
"executionTime": {
"type": "string",
"description": "Elapsed time in seconds, with an s suffix."
}
},
"description": "Operation result envelope."
}
Original tool metadata
{
"name": "list_wordpress_terms",
"title": "List WordPress terms",
"description": "Search category, tag or product taxonomy terms by taxonomy name returned by inventory.\n\nUse a taxonomy from list_wordpress_taxonomies to find native term IDs. This reads existing terms; create_wordpress_term adds a term and update_wordpress_term changes one.",
"inputSchema": {
"type": "object",
"required": [
"projectPublishingId",
"taxonomy"
],
"properties": {
"page": {
"type": "number",
"minimum": 1,
"description": "Page number to request from the provider; start with the initial page and follow nextPage when present."
},
"parent": {
"type": "number",
"minimum": 0,
"description": "Existing parent term identifier in the same taxonomy; use the native root value when creating a top-level term."
},
"search": {
"type": "string",
"description": "Text used to filter matching items by the provider's search behavior."
},
"context": {
"type": "string",
"maxLength": 120,
"description": "Short purpose of this call for the activity log. Exclude personal data and private source content."
},
"perPage": {
"type": "number",
"maximum": 100,
"minimum": 1,
"description": "Number of items to request in each provider result page."
},
"taxonomy": {
"type": "string",
"description": "Native WordPress taxonomy slug from list_wordpress_taxonomies."
},
"llm_model": {
"type": "string",
"maxLength": 128,
"description": "Use the exact model ID executing this call, from runtime/system context, for usage attribution. Supply it on every Atomic MCP tool call, including discovery and feedback, and update it if the model changes. Use the model ID rather than the client app name. If unavailable, omit it; never guess or ask the user."
},
"projectId": {
"type": "number",
"description": "Atomic project ID from list_projects. Omit to use the configured project; if asked to choose, select one of the accessible returned IDs."
},
"projectPublishingId": {
"type": "number",
"minimum": 1,
"description": "Atomic publishing connection ID from get_publishing_connections, not the provider site or post ID."
}
},
"additionalProperties": false
},
"outputSchema": {
"type": "object",
"required": [
"success"
],
"properties": {
"url": {
"type": "string",
"description": "Link for resolving the failure or completing the operation."
},
"data": {
"type": "object",
"required": [
"data"
],
"properties": {
"data": {
"type": "array",
"items": {
"type": "object",
"required": [
"id"
],
"properties": {
"id": {
"type": "number",
"description": "Identifier of this returned resource. Use it for subsequent reads or edits of the same resource."
},
"link": {
"type": "string"
},
"name": {
"type": "string",
"description": "Human-readable name of this resource."
},
"slug": {
"type": "string",
"description": "Saved URL slug or native CMS slug of this item."
},
"type": {
"type": "string",
"description": "Kind of the returned item; determines how its operation-specific fields should be interpreted."
},
"count": {
"type": "number",
"description": "Number of records reported by the provider for this group."
},
"title": {
"type": "object",
"description": "Display or content title of this returned item."
},
"parent": {
"type": "number",
"description": "Native parent record ID; zero denotes the provider root when applicable."
},
"status": {
"type": "string",
"description": "Current saved or execution state reported by the operation."
},
"caption": {
"type": "object",
"description": "Native media caption with raw/rendered values when supplied."
},
"alt_text": {
"type": "string",
"description": "Saved accessible alternative text on the native WordPress media record."
},
"order_by": {
"type": "string",
"description": "Native ordering policy for WooCommerce attribute terms."
},
"taxonomy": {
"type": "string",
"description": "Native taxonomy slug owning this term."
},
"mime_type": {
"type": "string",
"description": "Native MIME type of this media record."
},
"media_type": {
"type": "string",
"description": "WordPress media category, such as image or file."
},
"source_url": {
"type": "string",
"description": "Provider URL of the media asset."
},
"description": {
"anyOf": [
{
"type": "string"
},
{
"type": "object",
"description": "Nested operation-specific fields."
}
],
"description": "Saved description of this resource or its purpose."
},
"has_archives": {
"type": "boolean",
"description": "Whether this WooCommerce attribute enables public archives."
}
}
},
"description": "Result items or operation data inside this returned payload. Pagination fields describe only this result page."
},
"total": {
"type": "number",
"description": "Total number of matching items across all result pages."
},
"nextPage": {
"anyOf": [
{
"type": "null"
},
{
"type": "number"
}
],
"description": "Next page to request when more results exist; use the returned value rather than constructing a cursor."
},
"replayed": {
"type": "boolean",
"description": "Whether this response reuses the recorded outcome of an earlier attempt rather than performing a new write."
}
},
"description": "Operation data; optional fields may be absent."
},
"error": {
"type": "string",
"description": "Why the operation failed."
},
"details": {
"type": "object",
"description": "Diagnostics keyed by errorCode."
},
"message": {
"type": "string",
"description": "Outcome or recovery instructions. Project selection means no action ran."
},
"success": {
"type": "boolean",
"description": "Operation success; on false inspect error/errorCode."
},
"upgrade": {
"type": "object",
"description": "Plan-upgrade guidance for an unavailable capability."
},
"category": {
"type": "string",
"description": "Failure category, such as invalid_input or plan_required."
},
"expected": {
"type": "boolean",
"description": "Whether this is an anticipated access, input, plan or state failure."
},
"projects": {
"type": "array",
"items": {
"type": "object",
"properties": {
"id": {
"type": "number",
"description": "Project ID for projectId."
},
"name": {
"type": "string",
"description": "Project name."
}
},
"description": "Accessible project."
},
"description": "Accessible project choices. Select a projectId and retry."
},
"errorCode": {
"type": "string",
"description": "Failure code for recovery."
},
"retryable": {
"type": "boolean",
"description": "Whether an unchanged request can be retried."
},
"statusCode": {
"type": "number",
"description": "HTTP-style failure status."
},
"executionTime": {
"type": "string",
"description": "Elapsed time in seconds, with an s suffix."
}
},
"description": "Operation result envelope."
},
"annotations": {
"readOnlyHint": true,
"openWorldHint": true,
"idempotentHint": true,
"destructiveHint": false
}
}
The title clearly communicates the tool’s action and subject. Keep it concise.
Description93/100
List workflows folders with names, descriptions, and item-to-folder assignments in the selected project. Use the collection's existing item listing to discover item IDs and details. Items absent from assignments are at the top level.
Reads folder identities and saved workflow-to-folder assignments; get_workflows reads the items themselves. This does not move or create records.
The description explains the capability, when to use it, and what to expect.
Inputs92/100
Remove validation rules already expressed in this field’s schema; describe its meaning and usage instead.
projectId
Atomic project ID from list_projects. Omit to use the configured project; if asked to choose, select one of the accessible returned IDs.
Clear enough to supply this argument.
context
Short purpose of this call for the activity log. Exclude personal data and private source content.
Remove validation rules already expressed in this field’s schema; describe its meaning and usage instead.
llm_model
Use the exact model ID executing this call, from runtime/system context, for usage attribution. Supply it on every Atomic MCP tool call, including discovery and feedback, and update it if the model changes. Use the model ID rather than the client app name. If unavailable, omit it; never guess or ask the user.
Align the output schema with the tool’s documented result.
View output schema
{
"type": "object",
"required": [
"success"
],
"properties": {
"url": {
"type": "string",
"description": "Link for resolving the failure or completing the operation."
},
"data": {
"type": "object",
"required": [
"folders",
"assignments"
],
"properties": {
"folders": {
"type": "array",
"items": {
"type": "object",
"required": [
"id",
"projectId",
"collection",
"name",
"description"
],
"properties": {
"id": {
"type": "number",
"description": "Identifier of this returned resource. Use it for subsequent reads or edits of the same resource."
},
"name": {
"type": "string",
"description": "Human-readable name of this resource."
},
"projectId": {
"type": "number",
"description": "Atomic project that owns this resource."
},
"collection": {
"enum": [
"content",
"grids",
"workflows",
"reports"
],
"type": "string",
"description": "Atomic collection that owns these folders or items."
},
"description": {
"type": "string",
"description": "Saved description of this resource or its purpose."
}
}
}
},
"assignments": {
"type": "object",
"properties": {},
"additionalProperties": {
"type": "number"
}
}
},
"description": "Operation data; optional fields may be absent."
},
"error": {
"type": "string",
"description": "Why the operation failed."
},
"details": {
"type": "object",
"description": "Diagnostics keyed by errorCode."
},
"message": {
"type": "string",
"description": "Outcome or recovery instructions. Project selection means no action ran."
},
"success": {
"type": "boolean",
"description": "Operation success; on false inspect error/errorCode."
},
"upgrade": {
"type": "object",
"description": "Plan-upgrade guidance for an unavailable capability."
},
"category": {
"type": "string",
"description": "Failure category, such as invalid_input or plan_required."
},
"expected": {
"type": "boolean",
"description": "Whether this is an anticipated access, input, plan or state failure."
},
"projects": {
"type": "array",
"items": {
"type": "object",
"properties": {
"id": {
"type": "number",
"description": "Project ID for projectId."
},
"name": {
"type": "string",
"description": "Project name."
}
},
"description": "Accessible project."
},
"description": "Accessible project choices. Select a projectId and retry."
},
"errorCode": {
"type": "string",
"description": "Failure code for recovery."
},
"retryable": {
"type": "boolean",
"description": "Whether an unchanged request can be retried."
},
"statusCode": {
"type": "number",
"description": "HTTP-style failure status."
},
"executionTime": {
"type": "string",
"description": "Elapsed time in seconds, with an s suffix."
}
},
"description": "Operation result envelope."
}
Original tool metadata
{
"name": "list_workflow_folders",
"title": "List workflow folders",
"description": "List workflows folders with names, descriptions, and item-to-folder assignments in the selected project. Use the collection's existing item listing to discover item IDs and details. Items absent from assignments are at the top level.\n\nReads folder identities and saved workflow-to-folder assignments; get_workflows reads the items themselves. This does not move or create records.",
"inputSchema": {
"type": "object",
"properties": {
"context": {
"type": "string",
"maxLength": 120,
"description": "Short purpose of this call for the activity log. Exclude personal data and private source content."
},
"llm_model": {
"type": "string",
"maxLength": 128,
"description": "Use the exact model ID executing this call, from runtime/system context, for usage attribution. Supply it on every Atomic MCP tool call, including discovery and feedback, and update it if the model changes. Use the model ID rather than the client app name. If unavailable, omit it; never guess or ask the user."
},
"projectId": {
"type": "number",
"description": "Atomic project ID from list_projects. Omit to use the configured project; if asked to choose, select one of the accessible returned IDs."
}
},
"additionalProperties": false
},
"outputSchema": {
"type": "object",
"required": [
"success"
],
"properties": {
"url": {
"type": "string",
"description": "Link for resolving the failure or completing the operation."
},
"data": {
"type": "object",
"required": [
"folders",
"assignments"
],
"properties": {
"folders": {
"type": "array",
"items": {
"type": "object",
"required": [
"id",
"projectId",
"collection",
"name",
"description"
],
"properties": {
"id": {
"type": "number",
"description": "Identifier of this returned resource. Use it for subsequent reads or edits of the same resource."
},
"name": {
"type": "string",
"description": "Human-readable name of this resource."
},
"projectId": {
"type": "number",
"description": "Atomic project that owns this resource."
},
"collection": {
"enum": [
"content",
"grids",
"workflows",
"reports"
],
"type": "string",
"description": "Atomic collection that owns these folders or items."
},
"description": {
"type": "string",
"description": "Saved description of this resource or its purpose."
}
}
}
},
"assignments": {
"type": "object",
"properties": {},
"additionalProperties": {
"type": "number"
}
}
},
"description": "Operation data; optional fields may be absent."
},
"error": {
"type": "string",
"description": "Why the operation failed."
},
"details": {
"type": "object",
"description": "Diagnostics keyed by errorCode."
},
"message": {
"type": "string",
"description": "Outcome or recovery instructions. Project selection means no action ran."
},
"success": {
"type": "boolean",
"description": "Operation success; on false inspect error/errorCode."
},
"upgrade": {
"type": "object",
"description": "Plan-upgrade guidance for an unavailable capability."
},
"category": {
"type": "string",
"description": "Failure category, such as invalid_input or plan_required."
},
"expected": {
"type": "boolean",
"description": "Whether this is an anticipated access, input, plan or state failure."
},
"projects": {
"type": "array",
"items": {
"type": "object",
"properties": {
"id": {
"type": "number",
"description": "Project ID for projectId."
},
"name": {
"type": "string",
"description": "Project name."
}
},
"description": "Accessible project."
},
"description": "Accessible project choices. Select a projectId and retry."
},
"errorCode": {
"type": "string",
"description": "Failure code for recovery."
},
"retryable": {
"type": "boolean",
"description": "Whether an unchanged request can be retried."
},
"statusCode": {
"type": "number",
"description": "HTTP-style failure status."
},
"executionTime": {
"type": "string",
"description": "Elapsed time in seconds, with an s suffix."
}
},
"description": "Operation result envelope."
},
"annotations": {
"readOnlyHint": true,
"openWorldHint": false,
"idempotentHint": true,
"destructiveHint": false
}
}
The title clearly communicates the tool’s action and subject. Keep it concise.
Description96/100
List existing Google OAuth connections in a workspace. Requires workspace integrations access. Returns account IDs and identity only, never tokens.
Reads existing workspace connection identities, never credentials. Use list_google_connection_properties next; this does not initiate OAuth or connect a source to a project.
The description explains the capability, when to use it, and what to expect.
Inputs75/100
Remove validation rules already expressed in this field’s schema; describe its meaning and usage instead.
workspaceId
Atomic workspace identifier from list_workspaces. The acting user must have access to that workspace.
Remove validation rules already expressed in this field’s schema; describe its meaning and usage instead.
context
Short purpose of this call for the activity log. Exclude personal data and private source content.
Remove validation rules already expressed in this field’s schema; describe its meaning and usage instead.
llm_model
Use the exact model ID executing this call, from runtime/system context, for usage attribution. Supply it on every Atomic MCP tool call, including discovery and feedback, and update it if the model changes. Use the model ID rather than the client app name. If unavailable, omit it; never guess or ask the user.
Remove validation rules already expressed in this field’s schema; describe its meaning and usage instead.
Align the output schema with the tool’s documented result.
View output schema
{
"type": "object",
"required": [
"success"
],
"properties": {
"url": {
"type": "string",
"description": "Link for resolving the failure or completing the operation."
},
"data": {
"type": "object",
"required": [
"workspaceId",
"connections"
],
"properties": {
"connections": {
"type": "array",
"items": {
"type": "object",
"required": [
"connectionId",
"createdAt"
],
"properties": {
"name": {
"type": "string",
"description": "Human-readable name of this resource."
},
"email": {
"type": "string",
"description": "Email address associated with this returned account or message."
},
"createdAt": {
"type": "string",
"format": "date-time",
"description": "Date and time this record was created, serialized as ISO 8601."
},
"connectionId": {
"type": "number"
}
}
}
},
"workspaceId": {
"type": "number",
"description": "Atomic workspace that owns this project or resource."
}
},
"description": "Operation data; optional fields may be absent."
},
"error": {
"type": "string",
"description": "Why the operation failed."
},
"details": {
"type": "object",
"description": "Diagnostics keyed by errorCode."
},
"message": {
"type": "string",
"description": "Outcome or recovery instructions. Project selection means no action ran."
},
"success": {
"type": "boolean",
"description": "Operation success; on false inspect error/errorCode."
},
"upgrade": {
"type": "object",
"description": "Plan-upgrade guidance for an unavailable capability."
},
"category": {
"type": "string",
"description": "Failure category, such as invalid_input or plan_required."
},
"expected": {
"type": "boolean",
"description": "Whether this is an anticipated access, input, plan or state failure."
},
"projects": {
"type": "array",
"items": {
"type": "object",
"properties": {
"id": {
"type": "number",
"description": "Project ID for projectId."
},
"name": {
"type": "string",
"description": "Project name."
}
},
"description": "Accessible project."
},
"description": "Accessible project choices. Select a projectId and retry."
},
"errorCode": {
"type": "string",
"description": "Failure code for recovery."
},
"retryable": {
"type": "boolean",
"description": "Whether an unchanged request can be retried."
},
"statusCode": {
"type": "number",
"description": "HTTP-style failure status."
},
"executionTime": {
"type": "string",
"description": "Elapsed time in seconds, with an s suffix."
}
},
"description": "Operation result envelope."
}
Original tool metadata
{
"name": "list_workspace_google_connections",
"title": "List workspace google connections",
"description": "List existing Google OAuth connections in a workspace. Requires workspace integrations access. Returns account IDs and identity only, never tokens.\n\nReads existing workspace connection identities, never credentials. Use list_google_connection_properties next; this does not initiate OAuth or connect a source to a project.",
"inputSchema": {
"type": "object",
"required": [
"workspaceId"
],
"properties": {
"context": {
"type": "string",
"maxLength": 120,
"description": "Short purpose of this call for the activity log. Exclude personal data and private source content."
},
"llm_model": {
"type": "string",
"maxLength": 128,
"description": "Use the exact model ID executing this call, from runtime/system context, for usage attribution. Supply it on every Atomic MCP tool call, including discovery and feedback, and update it if the model changes. Use the model ID rather than the client app name. If unavailable, omit it; never guess or ask the user."
},
"workspaceId": {
"type": "number",
"minimum": 1,
"multipleOf": 1,
"description": "Atomic workspace identifier from list_workspaces. The acting user must have access to that workspace."
}
},
"additionalProperties": false
},
"outputSchema": {
"type": "object",
"required": [
"success"
],
"properties": {
"url": {
"type": "string",
"description": "Link for resolving the failure or completing the operation."
},
"data": {
"type": "object",
"required": [
"workspaceId",
"connections"
],
"properties": {
"connections": {
"type": "array",
"items": {
"type": "object",
"required": [
"connectionId",
"createdAt"
],
"properties": {
"name": {
"type": "string",
"description": "Human-readable name of this resource."
},
"email": {
"type": "string",
"description": "Email address associated with this returned account or message."
},
"createdAt": {
"type": "string",
"format": "date-time",
"description": "Date and time this record was created, serialized as ISO 8601."
},
"connectionId": {
"type": "number"
}
}
}
},
"workspaceId": {
"type": "number",
"description": "Atomic workspace that owns this project or resource."
}
},
"description": "Operation data; optional fields may be absent."
},
"error": {
"type": "string",
"description": "Why the operation failed."
},
"details": {
"type": "object",
"description": "Diagnostics keyed by errorCode."
},
"message": {
"type": "string",
"description": "Outcome or recovery instructions. Project selection means no action ran."
},
"success": {
"type": "boolean",
"description": "Operation success; on false inspect error/errorCode."
},
"upgrade": {
"type": "object",
"description": "Plan-upgrade guidance for an unavailable capability."
},
"category": {
"type": "string",
"description": "Failure category, such as invalid_input or plan_required."
},
"expected": {
"type": "boolean",
"description": "Whether this is an anticipated access, input, plan or state failure."
},
"projects": {
"type": "array",
"items": {
"type": "object",
"properties": {
"id": {
"type": "number",
"description": "Project ID for projectId."
},
"name": {
"type": "string",
"description": "Project name."
}
},
"description": "Accessible project."
},
"description": "Accessible project choices. Select a projectId and retry."
},
"errorCode": {
"type": "string",
"description": "Failure code for recovery."
},
"retryable": {
"type": "boolean",
"description": "Whether an unchanged request can be retried."
},
"statusCode": {
"type": "number",
"description": "HTTP-style failure status."
},
"executionTime": {
"type": "string",
"description": "Elapsed time in seconds, with an s suffix."
}
},
"description": "Operation result envelope."
},
"annotations": {
"readOnlyHint": true,
"openWorldHint": false,
"idempotentHint": true,
"destructiveHint": false
}
}
The title clearly communicates the tool’s action and subject. Keep it concise.
Description95/100
List workspaces with accepted membership for the connected MCP user, including workspaces with no projects. Returns id, name and urlSlug. Use this to choose the workspace for create_project.
The description explains the capability, when to use it, and what to expect.
Inputs75/100
Remove validation rules already expressed in this field’s schema; describe its meaning and usage instead.
context
Short purpose of this call for the activity log. Exclude personal data and private source content.
Remove validation rules already expressed in this field’s schema; describe its meaning and usage instead.
llm_model
Use the exact model ID executing this call, from runtime/system context, for usage attribution. Supply it on every Atomic MCP tool call, including discovery and feedback, and update it if the model changes. Use the model ID rather than the client app name. If unavailable, omit it; never guess or ask the user.
Remove validation rules already expressed in this field’s schema; describe its meaning and usage instead.
Align the output schema with the tool’s documented result.
View output schema
{
"type": "object",
"required": [
"success"
],
"properties": {
"url": {
"type": "string",
"description": "Link for resolving the failure or completing the operation."
},
"data": {
"type": "array",
"items": {
"type": "object",
"required": [
"name",
"urlSlug"
],
"properties": {
"id": {
"type": "number",
"description": "Identifier of this returned resource. Use it for subsequent reads or edits of the same resource."
},
"name": {
"type": "string",
"description": "Human-readable name of this resource."
},
"urlSlug": {
"type": "string",
"description": "Saved URL slug identifying this resource."
}
}
},
"description": "Operation data; optional fields may be absent."
},
"error": {
"type": "string",
"description": "Why the operation failed."
},
"details": {
"type": "object",
"description": "Diagnostics keyed by errorCode."
},
"message": {
"type": "string",
"description": "Outcome or recovery instructions. Project selection means no action ran."
},
"success": {
"type": "boolean",
"description": "Operation success; on false inspect error/errorCode."
},
"upgrade": {
"type": "object",
"description": "Plan-upgrade guidance for an unavailable capability."
},
"category": {
"type": "string",
"description": "Failure category, such as invalid_input or plan_required."
},
"expected": {
"type": "boolean",
"description": "Whether this is an anticipated access, input, plan or state failure."
},
"projects": {
"type": "array",
"items": {
"type": "object",
"properties": {
"id": {
"type": "number",
"description": "Project ID for projectId."
},
"name": {
"type": "string",
"description": "Project name."
}
},
"description": "Accessible project."
},
"description": "Accessible project choices. Select a projectId and retry."
},
"errorCode": {
"type": "string",
"description": "Failure code for recovery."
},
"retryable": {
"type": "boolean",
"description": "Whether an unchanged request can be retried."
},
"statusCode": {
"type": "number",
"description": "HTTP-style failure status."
},
"executionTime": {
"type": "string",
"description": "Elapsed time in seconds, with an s suffix."
}
},
"description": "Operation result envelope."
}
Original tool metadata
{
"name": "list_workspaces",
"title": "List workspaces",
"description": "List workspaces with accepted membership for the connected MCP user, including workspaces with no projects. Returns id, name and urlSlug. Use this to choose the workspace for create_project.",
"inputSchema": {
"type": "object",
"required": [],
"properties": {
"context": {
"type": "string",
"maxLength": 120,
"description": "Short purpose of this call for the activity log. Exclude personal data and private source content."
},
"llm_model": {
"type": "string",
"maxLength": 128,
"description": "Use the exact model ID executing this call, from runtime/system context, for usage attribution. Supply it on every Atomic MCP tool call, including discovery and feedback, and update it if the model changes. Use the model ID rather than the client app name. If unavailable, omit it; never guess or ask the user."
}
},
"additionalProperties": false
},
"outputSchema": {
"type": "object",
"required": [
"success"
],
"properties": {
"url": {
"type": "string",
"description": "Link for resolving the failure or completing the operation."
},
"data": {
"type": "array",
"items": {
"type": "object",
"required": [
"name",
"urlSlug"
],
"properties": {
"id": {
"type": "number",
"description": "Identifier of this returned resource. Use it for subsequent reads or edits of the same resource."
},
"name": {
"type": "string",
"description": "Human-readable name of this resource."
},
"urlSlug": {
"type": "string",
"description": "Saved URL slug identifying this resource."
}
}
},
"description": "Operation data; optional fields may be absent."
},
"error": {
"type": "string",
"description": "Why the operation failed."
},
"details": {
"type": "object",
"description": "Diagnostics keyed by errorCode."
},
"message": {
"type": "string",
"description": "Outcome or recovery instructions. Project selection means no action ran."
},
"success": {
"type": "boolean",
"description": "Operation success; on false inspect error/errorCode."
},
"upgrade": {
"type": "object",
"description": "Plan-upgrade guidance for an unavailable capability."
},
"category": {
"type": "string",
"description": "Failure category, such as invalid_input or plan_required."
},
"expected": {
"type": "boolean",
"description": "Whether this is an anticipated access, input, plan or state failure."
},
"projects": {
"type": "array",
"items": {
"type": "object",
"properties": {
"id": {
"type": "number",
"description": "Project ID for projectId."
},
"name": {
"type": "string",
"description": "Project name."
}
},
"description": "Accessible project."
},
"description": "Accessible project choices. Select a projectId and retry."
},
"errorCode": {
"type": "string",
"description": "Failure code for recovery."
},
"retryable": {
"type": "boolean",
"description": "Whether an unchanged request can be retried."
},
"statusCode": {
"type": "number",
"description": "HTTP-style failure status."
},
"executionTime": {
"type": "string",
"description": "Elapsed time in seconds, with an s suffix."
}
},
"description": "Operation result envelope."
},
"annotations": {
"readOnlyHint": true,
"openWorldHint": false,
"idempotentHint": true,
"destructiveHint": false
}
}
The title clearly communicates the tool’s action and subject. Keep it concise.
Description94/100
Move one saved content item into a folder in the same project and collection, or set folderId to null to move it out to the top level.
Changes the saved folder assignment without copying the content item. Choose folderId from list_content_folders; null removes the assignment, not the item itself.
The description explains the capability, when to use it, and what to expect.
Inputs85/100
Remove validation rules already expressed in this field’s schema; describe its meaning and usage instead.
itemId
Content document ID.
Remove validation rules already expressed in this field’s schema; describe its meaning and usage instead.
folderId
Destination folder in this collection, or null to move the item to the top level.
Clear enough to supply this argument.
projectId
Atomic project ID from list_projects. Omit to use the configured project; if asked to choose, select one of the accessible returned IDs.
Clear enough to supply this argument.
context
Short purpose of this call for the activity log. Exclude personal data and private source content.
Remove validation rules already expressed in this field’s schema; describe its meaning and usage instead.
llm_model
Use the exact model ID executing this call, from runtime/system context, for usage attribution. Supply it on every Atomic MCP tool call, including discovery and feedback, and update it if the model changes. Use the model ID rather than the client app name. If unavailable, omit it; never guess or ask the user.
Remove validation rules already expressed in this field’s schema; describe its meaning and usage instead.
{
"type": "object",
"required": [
"success"
],
"properties": {
"url": {
"type": "string",
"description": "Link for resolving the failure or completing the operation."
},
"data": {
"type": "object",
"required": [
"collection",
"itemId",
"folderId"
],
"properties": {
"itemId": {
"type": "string",
"description": "Native CMS item ID within the returned collection."
},
"folderId": {
"anyOf": [
{
"type": "null"
},
{
"type": "number"
}
]
},
"collection": {
"type": "string",
"const": "content",
"description": "Atomic collection that owns these folders or items."
}
},
"description": "Operation data; optional fields may be absent."
},
"error": {
"type": "string",
"description": "Why the operation failed."
},
"details": {
"type": "object",
"description": "Diagnostics keyed by errorCode."
},
"message": {
"type": "string",
"description": "Outcome or recovery instructions. Project selection means no action ran."
},
"success": {
"type": "boolean",
"description": "Operation success; on false inspect error/errorCode."
},
"upgrade": {
"type": "object",
"description": "Plan-upgrade guidance for an unavailable capability."
},
"category": {
"type": "string",
"description": "Failure category, such as invalid_input or plan_required."
},
"expected": {
"type": "boolean",
"description": "Whether this is an anticipated access, input, plan or state failure."
},
"projects": {
"type": "array",
"items": {
"type": "object",
"properties": {
"id": {
"type": "number",
"description": "Project ID for projectId."
},
"name": {
"type": "string",
"description": "Project name."
}
},
"description": "Accessible project."
},
"description": "Accessible project choices. Select a projectId and retry."
},
"errorCode": {
"type": "string",
"description": "Failure code for recovery."
},
"retryable": {
"type": "boolean",
"description": "Whether an unchanged request can be retried."
},
"statusCode": {
"type": "number",
"description": "HTTP-style failure status."
},
"executionTime": {
"type": "string",
"description": "Elapsed time in seconds, with an s suffix."
}
},
"description": "Operation result envelope."
}
Original tool metadata
{
"name": "move_content_to_folder",
"title": "Move content to folder",
"description": "Move one saved content item into a folder in the same project and collection, or set folderId to null to move it out to the top level.\n\nChanges the saved folder assignment without copying the content item. Choose folderId from list_content_folders; null removes the assignment, not the item itself.",
"inputSchema": {
"type": "object",
"required": [
"itemId",
"folderId"
],
"properties": {
"itemId": {
"type": "string",
"maxLength": 255,
"minLength": 1,
"description": "Content document ID."
},
"context": {
"type": "string",
"maxLength": 120,
"description": "Short purpose of this call for the activity log. Exclude personal data and private source content."
},
"folderId": {
"oneOf": [
{
"type": "number",
"minimum": 1,
"multipleOf": 1,
"description": "Folder ID from the folder listing in this collection."
},
{
"type": "null"
}
],
"description": "Destination folder in this collection, or null to move the item to the top level."
},
"llm_model": {
"type": "string",
"maxLength": 128,
"description": "Use the exact model ID executing this call, from runtime/system context, for usage attribution. Supply it on every Atomic MCP tool call, including discovery and feedback, and update it if the model changes. Use the model ID rather than the client app name. If unavailable, omit it; never guess or ask the user."
},
"projectId": {
"type": "number",
"description": "Atomic project ID from list_projects. Omit to use the configured project; if asked to choose, select one of the accessible returned IDs."
}
},
"additionalProperties": false
},
"outputSchema": {
"type": "object",
"required": [
"success"
],
"properties": {
"url": {
"type": "string",
"description": "Link for resolving the failure or completing the operation."
},
"data": {
"type": "object",
"required": [
"collection",
"itemId",
"folderId"
],
"properties": {
"itemId": {
"type": "string",
"description": "Native CMS item ID within the returned collection."
},
"folderId": {
"anyOf": [
{
"type": "null"
},
{
"type": "number"
}
]
},
"collection": {
"type": "string",
"const": "content",
"description": "Atomic collection that owns these folders or items."
}
},
"description": "Operation data; optional fields may be absent."
},
"error": {
"type": "string",
"description": "Why the operation failed."
},
"details": {
"type": "object",
"description": "Diagnostics keyed by errorCode."
},
"message": {
"type": "string",
"description": "Outcome or recovery instructions. Project selection means no action ran."
},
"success": {
"type": "boolean",
"description": "Operation success; on false inspect error/errorCode."
},
"upgrade": {
"type": "object",
"description": "Plan-upgrade guidance for an unavailable capability."
},
"category": {
"type": "string",
"description": "Failure category, such as invalid_input or plan_required."
},
"expected": {
"type": "boolean",
"description": "Whether this is an anticipated access, input, plan or state failure."
},
"projects": {
"type": "array",
"items": {
"type": "object",
"properties": {
"id": {
"type": "number",
"description": "Project ID for projectId."
},
"name": {
"type": "string",
"description": "Project name."
}
},
"description": "Accessible project."
},
"description": "Accessible project choices. Select a projectId and retry."
},
"errorCode": {
"type": "string",
"description": "Failure code for recovery."
},
"retryable": {
"type": "boolean",
"description": "Whether an unchanged request can be retried."
},
"statusCode": {
"type": "number",
"description": "HTTP-style failure status."
},
"executionTime": {
"type": "string",
"description": "Elapsed time in seconds, with an s suffix."
}
},
"description": "Operation result envelope."
},
"annotations": {
"readOnlyHint": false,
"openWorldHint": false,
"idempotentHint": false,
"destructiveHint": true
}
}
The title clearly communicates the tool’s action and subject. Keep it concise.
Description94/100
Move one saved grids item into a folder in the same project and collection, or set folderId to null to move it out to the top level.
Changes the saved folder assignment without copying the grid item. Choose folderId from list_grid_folders; null removes the assignment, not the item itself.
The description explains the capability, when to use it, and what to expect.
Inputs85/100
Remove validation rules already expressed in this field’s schema; describe its meaning and usage instead.
itemId
Saved grids item ID.
Remove validation rules already expressed in this field’s schema; describe its meaning and usage instead.
folderId
Destination folder in this collection, or null to move the item to the top level.
Clear enough to supply this argument.
projectId
Atomic project ID from list_projects. Omit to use the configured project; if asked to choose, select one of the accessible returned IDs.
Clear enough to supply this argument.
context
Short purpose of this call for the activity log. Exclude personal data and private source content.
Remove validation rules already expressed in this field’s schema; describe its meaning and usage instead.
llm_model
Use the exact model ID executing this call, from runtime/system context, for usage attribution. Supply it on every Atomic MCP tool call, including discovery and feedback, and update it if the model changes. Use the model ID rather than the client app name. If unavailable, omit it; never guess or ask the user.
Remove validation rules already expressed in this field’s schema; describe its meaning and usage instead.
{
"type": "object",
"required": [
"success"
],
"properties": {
"url": {
"type": "string",
"description": "Link for resolving the failure or completing the operation."
},
"data": {
"type": "object",
"required": [
"collection",
"itemId",
"folderId"
],
"properties": {
"itemId": {
"type": "string",
"description": "Native CMS item ID within the returned collection."
},
"folderId": {
"anyOf": [
{
"type": "null"
},
{
"type": "number"
}
]
},
"collection": {
"type": "string",
"const": "grids",
"description": "Atomic collection that owns these folders or items."
}
},
"description": "Operation data; optional fields may be absent."
},
"error": {
"type": "string",
"description": "Why the operation failed."
},
"details": {
"type": "object",
"description": "Diagnostics keyed by errorCode."
},
"message": {
"type": "string",
"description": "Outcome or recovery instructions. Project selection means no action ran."
},
"success": {
"type": "boolean",
"description": "Operation success; on false inspect error/errorCode."
},
"upgrade": {
"type": "object",
"description": "Plan-upgrade guidance for an unavailable capability."
},
"category": {
"type": "string",
"description": "Failure category, such as invalid_input or plan_required."
},
"expected": {
"type": "boolean",
"description": "Whether this is an anticipated access, input, plan or state failure."
},
"projects": {
"type": "array",
"items": {
"type": "object",
"properties": {
"id": {
"type": "number",
"description": "Project ID for projectId."
},
"name": {
"type": "string",
"description": "Project name."
}
},
"description": "Accessible project."
},
"description": "Accessible project choices. Select a projectId and retry."
},
"errorCode": {
"type": "string",
"description": "Failure code for recovery."
},
"retryable": {
"type": "boolean",
"description": "Whether an unchanged request can be retried."
},
"statusCode": {
"type": "number",
"description": "HTTP-style failure status."
},
"executionTime": {
"type": "string",
"description": "Elapsed time in seconds, with an s suffix."
}
},
"description": "Operation result envelope."
}
Original tool metadata
{
"name": "move_grid_to_folder",
"title": "Move grid to folder",
"description": "Move one saved grids item into a folder in the same project and collection, or set folderId to null to move it out to the top level.\n\nChanges the saved folder assignment without copying the grid item. Choose folderId from list_grid_folders; null removes the assignment, not the item itself.",
"inputSchema": {
"type": "object",
"required": [
"itemId",
"folderId"
],
"properties": {
"itemId": {
"type": "number",
"minimum": 1,
"multipleOf": 1,
"description": "Saved grids item ID."
},
"context": {
"type": "string",
"maxLength": 120,
"description": "Short purpose of this call for the activity log. Exclude personal data and private source content."
},
"folderId": {
"oneOf": [
{
"type": "number",
"minimum": 1,
"multipleOf": 1,
"description": "Folder ID from the folder listing in this collection."
},
{
"type": "null"
}
],
"description": "Destination folder in this collection, or null to move the item to the top level."
},
"llm_model": {
"type": "string",
"maxLength": 128,
"description": "Use the exact model ID executing this call, from runtime/system context, for usage attribution. Supply it on every Atomic MCP tool call, including discovery and feedback, and update it if the model changes. Use the model ID rather than the client app name. If unavailable, omit it; never guess or ask the user."
},
"projectId": {
"type": "number",
"description": "Atomic project ID from list_projects. Omit to use the configured project; if asked to choose, select one of the accessible returned IDs."
}
},
"additionalProperties": false
},
"outputSchema": {
"type": "object",
"required": [
"success"
],
"properties": {
"url": {
"type": "string",
"description": "Link for resolving the failure or completing the operation."
},
"data": {
"type": "object",
"required": [
"collection",
"itemId",
"folderId"
],
"properties": {
"itemId": {
"type": "string",
"description": "Native CMS item ID within the returned collection."
},
"folderId": {
"anyOf": [
{
"type": "null"
},
{
"type": "number"
}
]
},
"collection": {
"type": "string",
"const": "grids",
"description": "Atomic collection that owns these folders or items."
}
},
"description": "Operation data; optional fields may be absent."
},
"error": {
"type": "string",
"description": "Why the operation failed."
},
"details": {
"type": "object",
"description": "Diagnostics keyed by errorCode."
},
"message": {
"type": "string",
"description": "Outcome or recovery instructions. Project selection means no action ran."
},
"success": {
"type": "boolean",
"description": "Operation success; on false inspect error/errorCode."
},
"upgrade": {
"type": "object",
"description": "Plan-upgrade guidance for an unavailable capability."
},
"category": {
"type": "string",
"description": "Failure category, such as invalid_input or plan_required."
},
"expected": {
"type": "boolean",
"description": "Whether this is an anticipated access, input, plan or state failure."
},
"projects": {
"type": "array",
"items": {
"type": "object",
"properties": {
"id": {
"type": "number",
"description": "Project ID for projectId."
},
"name": {
"type": "string",
"description": "Project name."
}
},
"description": "Accessible project."
},
"description": "Accessible project choices. Select a projectId and retry."
},
"errorCode": {
"type": "string",
"description": "Failure code for recovery."
},
"retryable": {
"type": "boolean",
"description": "Whether an unchanged request can be retried."
},
"statusCode": {
"type": "number",
"description": "HTTP-style failure status."
},
"executionTime": {
"type": "string",
"description": "Elapsed time in seconds, with an s suffix."
}
},
"description": "Operation result envelope."
},
"annotations": {
"readOnlyHint": false,
"openWorldHint": false,
"idempotentHint": false,
"destructiveHint": true
}
}
The title clearly communicates the tool’s action and subject. Keep it concise.
Description95/100
Move one saved reports item into a folder in the same project and collection, or set folderId to null to move it out to the top level. Built-in reports cannot be moved.
Changes the saved folder assignment without copying the report item. Choose folderId from list_report_folders; null removes the assignment, not the item itself.
The description explains the capability, when to use it, and what to expect.
Inputs93/100
Remove validation rules already expressed in this field’s schema; describe its meaning and usage instead.
itemId
Saved reports item ID.
Clear enough to supply this argument.
folderId
Destination folder in this collection, or null to move the item to the top level.
Clear enough to supply this argument.
projectId
Atomic project ID from list_projects. Omit to use the configured project; if asked to choose, select one of the accessible returned IDs.
Clear enough to supply this argument.
context
Short purpose of this call for the activity log. Exclude personal data and private source content.
Remove validation rules already expressed in this field’s schema; describe its meaning and usage instead.
llm_model
Use the exact model ID executing this call, from runtime/system context, for usage attribution. Supply it on every Atomic MCP tool call, including discovery and feedback, and update it if the model changes. Use the model ID rather than the client app name. If unavailable, omit it; never guess or ask the user.
{
"type": "object",
"required": [
"success"
],
"properties": {
"url": {
"type": "string",
"description": "Link for resolving the failure or completing the operation."
},
"data": {
"type": "object",
"required": [
"collection",
"itemId",
"folderId"
],
"properties": {
"itemId": {
"type": "string",
"description": "Native CMS item ID within the returned collection."
},
"folderId": {
"anyOf": [
{
"type": "null"
},
{
"type": "number"
}
]
},
"collection": {
"type": "string",
"const": "reports",
"description": "Atomic collection that owns these folders or items."
}
},
"description": "Operation data; optional fields may be absent."
},
"error": {
"type": "string",
"description": "Why the operation failed."
},
"details": {
"type": "object",
"description": "Diagnostics keyed by errorCode."
},
"message": {
"type": "string",
"description": "Outcome or recovery instructions. Project selection means no action ran."
},
"success": {
"type": "boolean",
"description": "Operation success; on false inspect error/errorCode."
},
"upgrade": {
"type": "object",
"description": "Plan-upgrade guidance for an unavailable capability."
},
"category": {
"type": "string",
"description": "Failure category, such as invalid_input or plan_required."
},
"expected": {
"type": "boolean",
"description": "Whether this is an anticipated access, input, plan or state failure."
},
"projects": {
"type": "array",
"items": {
"type": "object",
"properties": {
"id": {
"type": "number",
"description": "Project ID for projectId."
},
"name": {
"type": "string",
"description": "Project name."
}
},
"description": "Accessible project."
},
"description": "Accessible project choices. Select a projectId and retry."
},
"errorCode": {
"type": "string",
"description": "Failure code for recovery."
},
"retryable": {
"type": "boolean",
"description": "Whether an unchanged request can be retried."
},
"statusCode": {
"type": "number",
"description": "HTTP-style failure status."
},
"executionTime": {
"type": "string",
"description": "Elapsed time in seconds, with an s suffix."
}
},
"description": "Operation result envelope."
}
Original tool metadata
{
"name": "move_report_to_folder",
"title": "Move report to folder",
"description": "Move one saved reports item into a folder in the same project and collection, or set folderId to null to move it out to the top level. Built-in reports cannot be moved.\n\nChanges the saved folder assignment without copying the report item. Choose folderId from list_report_folders; null removes the assignment, not the item itself.",
"inputSchema": {
"type": "object",
"required": [
"itemId",
"folderId"
],
"properties": {
"itemId": {
"type": "number",
"minimum": 1,
"multipleOf": 1,
"description": "Saved reports item ID."
},
"context": {
"type": "string",
"maxLength": 120,
"description": "Short purpose of this call for the activity log. Exclude personal data and private source content."
},
"folderId": {
"oneOf": [
{
"type": "number",
"minimum": 1,
"multipleOf": 1,
"description": "Folder ID from the folder listing in this collection."
},
{
"type": "null"
}
],
"description": "Destination folder in this collection, or null to move the item to the top level."
},
"llm_model": {
"type": "string",
"maxLength": 128,
"description": "Use the exact model ID executing this call, from runtime/system context, for usage attribution. Supply it on every Atomic MCP tool call, including discovery and feedback, and update it if the model changes. Use the model ID rather than the client app name. If unavailable, omit it; never guess or ask the user."
},
"projectId": {
"type": "number",
"description": "Atomic project ID from list_projects. Omit to use the configured project; if asked to choose, select one of the accessible returned IDs."
}
},
"additionalProperties": false
},
"outputSchema": {
"type": "object",
"required": [
"success"
],
"properties": {
"url": {
"type": "string",
"description": "Link for resolving the failure or completing the operation."
},
"data": {
"type": "object",
"required": [
"collection",
"itemId",
"folderId"
],
"properties": {
"itemId": {
"type": "string",
"description": "Native CMS item ID within the returned collection."
},
"folderId": {
"anyOf": [
{
"type": "null"
},
{
"type": "number"
}
]
},
"collection": {
"type": "string",
"const": "reports",
"description": "Atomic collection that owns these folders or items."
}
},
"description": "Operation data; optional fields may be absent."
},
"error": {
"type": "string",
"description": "Why the operation failed."
},
"details": {
"type": "object",
"description": "Diagnostics keyed by errorCode."
},
"message": {
"type": "string",
"description": "Outcome or recovery instructions. Project selection means no action ran."
},
"success": {
"type": "boolean",
"description": "Operation success; on false inspect error/errorCode."
},
"upgrade": {
"type": "object",
"description": "Plan-upgrade guidance for an unavailable capability."
},
"category": {
"type": "string",
"description": "Failure category, such as invalid_input or plan_required."
},
"expected": {
"type": "boolean",
"description": "Whether this is an anticipated access, input, plan or state failure."
},
"projects": {
"type": "array",
"items": {
"type": "object",
"properties": {
"id": {
"type": "number",
"description": "Project ID for projectId."
},
"name": {
"type": "string",
"description": "Project name."
}
},
"description": "Accessible project."
},
"description": "Accessible project choices. Select a projectId and retry."
},
"errorCode": {
"type": "string",
"description": "Failure code for recovery."
},
"retryable": {
"type": "boolean",
"description": "Whether an unchanged request can be retried."
},
"statusCode": {
"type": "number",
"description": "HTTP-style failure status."
},
"executionTime": {
"type": "string",
"description": "Elapsed time in seconds, with an s suffix."
}
},
"description": "Operation result envelope."
},
"annotations": {
"readOnlyHint": false,
"openWorldHint": false,
"idempotentHint": false,
"destructiveHint": true
}
}
The title clearly communicates the tool’s action and subject. Keep it concise.
Description94/100
Move one saved workflows item into a folder in the same project and collection, or set folderId to null to move it out to the top level.
Changes the saved folder assignment without copying the workflow item. Choose folderId from list_workflow_folders; null removes the assignment, not the item itself.
The description explains the capability, when to use it, and what to expect.
Inputs85/100
Remove validation rules already expressed in this field’s schema; describe its meaning and usage instead.
itemId
Saved workflows item ID.
Remove validation rules already expressed in this field’s schema; describe its meaning and usage instead.
folderId
Destination folder in this collection, or null to move the item to the top level.
Remove validation rules already expressed in this field’s schema; describe its meaning and usage instead.
projectId
Atomic project ID from list_projects. Omit to use the configured project; if asked to choose, select one of the accessible returned IDs.
Clear enough to supply this argument.
context
Short purpose of this call for the activity log. Exclude personal data and private source content.
Remove validation rules already expressed in this field’s schema; describe its meaning and usage instead.
llm_model
Use the exact model ID executing this call, from runtime/system context, for usage attribution. Supply it on every Atomic MCP tool call, including discovery and feedback, and update it if the model changes. Use the model ID rather than the client app name. If unavailable, omit it; never guess or ask the user.
{
"type": "object",
"required": [
"success"
],
"properties": {
"url": {
"type": "string",
"description": "Link for resolving the failure or completing the operation."
},
"data": {
"type": "object",
"required": [
"collection",
"itemId",
"folderId"
],
"properties": {
"itemId": {
"type": "string",
"description": "Native CMS item ID within the returned collection."
},
"folderId": {
"anyOf": [
{
"type": "null"
},
{
"type": "number"
}
]
},
"collection": {
"type": "string",
"const": "workflows",
"description": "Atomic collection that owns these folders or items."
}
},
"description": "Operation data; optional fields may be absent."
},
"error": {
"type": "string",
"description": "Why the operation failed."
},
"details": {
"type": "object",
"description": "Diagnostics keyed by errorCode."
},
"message": {
"type": "string",
"description": "Outcome or recovery instructions. Project selection means no action ran."
},
"success": {
"type": "boolean",
"description": "Operation success; on false inspect error/errorCode."
},
"upgrade": {
"type": "object",
"description": "Plan-upgrade guidance for an unavailable capability."
},
"category": {
"type": "string",
"description": "Failure category, such as invalid_input or plan_required."
},
"expected": {
"type": "boolean",
"description": "Whether this is an anticipated access, input, plan or state failure."
},
"projects": {
"type": "array",
"items": {
"type": "object",
"properties": {
"id": {
"type": "number",
"description": "Project ID for projectId."
},
"name": {
"type": "string",
"description": "Project name."
}
},
"description": "Accessible project."
},
"description": "Accessible project choices. Select a projectId and retry."
},
"errorCode": {
"type": "string",
"description": "Failure code for recovery."
},
"retryable": {
"type": "boolean",
"description": "Whether an unchanged request can be retried."
},
"statusCode": {
"type": "number",
"description": "HTTP-style failure status."
},
"executionTime": {
"type": "string",
"description": "Elapsed time in seconds, with an s suffix."
}
},
"description": "Operation result envelope."
}
Original tool metadata
{
"name": "move_workflow_to_folder",
"title": "Move workflow to folder",
"description": "Move one saved workflows item into a folder in the same project and collection, or set folderId to null to move it out to the top level.\n\nChanges the saved folder assignment without copying the workflow item. Choose folderId from list_workflow_folders; null removes the assignment, not the item itself.",
"inputSchema": {
"type": "object",
"required": [
"itemId",
"folderId"
],
"properties": {
"itemId": {
"type": "number",
"minimum": 1,
"multipleOf": 1,
"description": "Saved workflows item ID."
},
"context": {
"type": "string",
"maxLength": 120,
"description": "Short purpose of this call for the activity log. Exclude personal data and private source content."
},
"folderId": {
"oneOf": [
{
"type": "number",
"minimum": 1,
"multipleOf": 1,
"description": "Folder ID from the folder listing in this collection."
},
{
"type": "null"
}
],
"description": "Destination folder in this collection, or null to move the item to the top level."
},
"llm_model": {
"type": "string",
"maxLength": 128,
"description": "Use the exact model ID executing this call, from runtime/system context, for usage attribution. Supply it on every Atomic MCP tool call, including discovery and feedback, and update it if the model changes. Use the model ID rather than the client app name. If unavailable, omit it; never guess or ask the user."
},
"projectId": {
"type": "number",
"description": "Atomic project ID from list_projects. Omit to use the configured project; if asked to choose, select one of the accessible returned IDs."
}
},
"additionalProperties": false
},
"outputSchema": {
"type": "object",
"required": [
"success"
],
"properties": {
"url": {
"type": "string",
"description": "Link for resolving the failure or completing the operation."
},
"data": {
"type": "object",
"required": [
"collection",
"itemId",
"folderId"
],
"properties": {
"itemId": {
"type": "string",
"description": "Native CMS item ID within the returned collection."
},
"folderId": {
"anyOf": [
{
"type": "null"
},
{
"type": "number"
}
]
},
"collection": {
"type": "string",
"const": "workflows",
"description": "Atomic collection that owns these folders or items."
}
},
"description": "Operation data; optional fields may be absent."
},
"error": {
"type": "string",
"description": "Why the operation failed."
},
"details": {
"type": "object",
"description": "Diagnostics keyed by errorCode."
},
"message": {
"type": "string",
"description": "Outcome or recovery instructions. Project selection means no action ran."
},
"success": {
"type": "boolean",
"description": "Operation success; on false inspect error/errorCode."
},
"upgrade": {
"type": "object",
"description": "Plan-upgrade guidance for an unavailable capability."
},
"category": {
"type": "string",
"description": "Failure category, such as invalid_input or plan_required."
},
"expected": {
"type": "boolean",
"description": "Whether this is an anticipated access, input, plan or state failure."
},
"projects": {
"type": "array",
"items": {
"type": "object",
"properties": {
"id": {
"type": "number",
"description": "Project ID for projectId."
},
"name": {
"type": "string",
"description": "Project name."
}
},
"description": "Accessible project."
},
"description": "Accessible project choices. Select a projectId and retry."
},
"errorCode": {
"type": "string",
"description": "Failure code for recovery."
},
"retryable": {
"type": "boolean",
"description": "Whether an unchanged request can be retried."
},
"statusCode": {
"type": "number",
"description": "HTTP-style failure status."
},
"executionTime": {
"type": "string",
"description": "Elapsed time in seconds, with an s suffix."
}
},
"description": "Operation result envelope."
},
"annotations": {
"readOnlyHint": false,
"openWorldHint": false,
"idempotentHint": false,
"destructiveHint": true
}
}
The title clearly communicates the tool’s action and subject. Keep it concise.
Description87/100
Apply one exact search/replace patch in place. Send one complete JSON object containing only the arguments visible in this tool schema. oldString and newString must be quoted strings; use replaceAll only when needed. Keep both strings small, copy oldString exactly from the current Markdown, and never send the full article. Returns the same versionId and a surrounding snippet.
The description explains the capability, when to use it, and what to expect.
Inputs88/100
Clarify units, where to obtain this value, or conventions not already expressed in the schema.
versionId
Required content version ID to patch in place.
Clarify units, where to obtain this value, or conventions not already expressed in the schema.
oldString
Required exact Markdown substring to replace. Copy it verbatim from the current content. It must appear exactly once unless replaceAll is true.
Remove validation rules already expressed in this field’s schema; describe its meaning and usage instead.
newString
Required replacement Markdown string. Keep it focused on this one patch. Use an empty string only to delete the match.
Clear enough to supply this argument.
replaceAll
When true, replace every non-overlapping match. Defaults to false and fails if oldString matches more than once.
Clear enough to supply this argument.
title
Optional title override. Omit to preserve the existing title.
Clear enough to supply this argument.
fullDescription
Optional complete description override. Omit to preserve the existing full description.
Clear enough to supply this argument.
metaDescription
Optional short SEO meta description override. Omit to preserve the existing value.
Clear enough to supply this argument.
imageUrl
Optional featured image override. Omit to preserve the existing featured image.
Clear enough to supply this argument.
internalLinkingMode
Optional internal linking mode. Use 'auto_conservative' to auto-insert high-confidence internal links before saving.
Remove validation rules already expressed in this field’s schema; describe its meaning and usage instead.
autoLinkConfidenceThreshold
Optional confidence threshold from 0 to 1 for auto internal links. Defaults to 0.82 when internalLinkingMode is 'auto_conservative'.
Remove validation rules already expressed in this field’s schema; describe its meaning and usage instead.
projectId
Atomic project ID from list_projects. Omit to use the configured project; if asked to choose, select one of the accessible returned IDs.
Clear enough to supply this argument.
context
Short purpose of this call for the activity log. Exclude personal data and private source content.
Clear enough to supply this argument.
llm_model
Use the exact model ID executing this call, from runtime/system context, for usage attribution. Supply it on every Atomic MCP tool call, including discovery and feedback, and update it if the model changes. Use the model ID rather than the client app name. If unavailable, omit it; never guess or ask the user.
Remove validation rules already expressed in this field’s schema; describe its meaning and usage instead.
{
"type": "object",
"required": [
"success"
],
"properties": {
"url": {
"type": "string",
"description": "Link for resolving the failure or completing the operation."
},
"data": {
"type": "object",
"required": [
"id",
"versionId",
"editorUrl",
"applied",
"matchCount",
"snippet"
],
"properties": {
"id": {
"type": "string",
"description": "Identifier of this returned resource. Use it for subsequent reads or edits of the same resource."
},
"applied": {
"type": "boolean"
},
"snippet": {
"type": "string"
},
"editorUrl": {
"type": "string",
"description": "Atomic editor URL for inspecting or editing this content item."
},
"versionId": {
"type": "number"
},
"matchCount": {
"type": "number"
}
},
"description": "Operation data; optional fields may be absent."
},
"error": {
"type": "string",
"description": "Why the operation failed."
},
"details": {
"type": "object",
"description": "Diagnostics keyed by errorCode."
},
"message": {
"type": "string",
"description": "Outcome or recovery instructions. Project selection means no action ran."
},
"success": {
"type": "boolean",
"description": "Operation success; on false inspect error/errorCode."
},
"upgrade": {
"type": "object",
"description": "Plan-upgrade guidance for an unavailable capability."
},
"category": {
"type": "string",
"description": "Failure category, such as invalid_input or plan_required."
},
"expected": {
"type": "boolean",
"description": "Whether this is an anticipated access, input, plan or state failure."
},
"projects": {
"type": "array",
"items": {
"type": "object",
"properties": {
"id": {
"type": "number",
"description": "Project ID for projectId."
},
"name": {
"type": "string",
"description": "Project name."
}
},
"description": "Accessible project."
},
"description": "Accessible project choices. Select a projectId and retry."
},
"errorCode": {
"type": "string",
"description": "Failure code for recovery."
},
"retryable": {
"type": "boolean",
"description": "Whether an unchanged request can be retried."
},
"statusCode": {
"type": "number",
"description": "HTTP-style failure status."
},
"executionTime": {
"type": "string",
"description": "Elapsed time in seconds, with an s suffix."
}
},
"description": "Operation result envelope."
}
Original tool metadata
{
"name": "patch_content",
"title": "Patch content",
"description": "Apply one exact search/replace patch in place. Send one complete JSON object containing only the arguments visible in this tool schema. oldString and newString must be quoted strings; use replaceAll only when needed. Keep both strings small, copy oldString exactly from the current Markdown, and never send the full article. Returns the same versionId and a surrounding snippet.",
"inputSchema": {
"type": "object",
"required": [
"versionId",
"oldString",
"newString"
],
"properties": {
"title": {
"type": "string",
"description": "Optional title override. Omit to preserve the existing title."
},
"context": {
"type": "string",
"maxLength": 120,
"description": "Short purpose of this call for the activity log. Exclude personal data and private source content."
},
"imageUrl": {
"type": "string",
"description": "Optional featured image override. Omit to preserve the existing featured image."
},
"llm_model": {
"type": "string",
"maxLength": 128,
"description": "Use the exact model ID executing this call, from runtime/system context, for usage attribution. Supply it on every Atomic MCP tool call, including discovery and feedback, and update it if the model changes. Use the model ID rather than the client app name. If unavailable, omit it; never guess or ask the user."
},
"newString": {
"type": "string",
"description": "Required replacement Markdown string. Keep it focused on this one patch. Use an empty string only to delete the match."
},
"oldString": {
"type": "string",
"description": "Required exact Markdown substring to replace. Copy it verbatim from the current content. It must appear exactly once unless replaceAll is true."
},
"projectId": {
"type": "number",
"description": "Atomic project ID from list_projects. Omit to use the configured project; if asked to choose, select one of the accessible returned IDs."
},
"versionId": {
"type": "number",
"description": "Required content version ID to patch in place."
},
"replaceAll": {
"type": "boolean",
"default": false,
"description": "When true, replace every non-overlapping match. Defaults to false and fails if oldString matches more than once."
},
"fullDescription": {
"type": "string",
"description": "Optional complete description override. Omit to preserve the existing full description."
},
"metaDescription": {
"type": "string",
"description": "Optional short SEO meta description override. Omit to preserve the existing value."
},
"internalLinkingMode": {
"enum": [
"off",
"auto_conservative"
],
"type": "string",
"description": "Optional internal linking mode. Use 'auto_conservative' to auto-insert high-confidence internal links before saving."
},
"autoLinkConfidenceThreshold": {
"type": "number",
"maximum": 1,
"minimum": 0,
"description": "Optional confidence threshold from 0 to 1 for auto internal links. Defaults to 0.82 when internalLinkingMode is 'auto_conservative'."
}
},
"additionalProperties": false
},
"outputSchema": {
"type": "object",
"required": [
"success"
],
"properties": {
"url": {
"type": "string",
"description": "Link for resolving the failure or completing the operation."
},
"data": {
"type": "object",
"required": [
"id",
"versionId",
"editorUrl",
"applied",
"matchCount",
"snippet"
],
"properties": {
"id": {
"type": "string",
"description": "Identifier of this returned resource. Use it for subsequent reads or edits of the same resource."
},
"applied": {
"type": "boolean"
},
"snippet": {
"type": "string"
},
"editorUrl": {
"type": "string",
"description": "Atomic editor URL for inspecting or editing this content item."
},
"versionId": {
"type": "number"
},
"matchCount": {
"type": "number"
}
},
"description": "Operation data; optional fields may be absent."
},
"error": {
"type": "string",
"description": "Why the operation failed."
},
"details": {
"type": "object",
"description": "Diagnostics keyed by errorCode."
},
"message": {
"type": "string",
"description": "Outcome or recovery instructions. Project selection means no action ran."
},
"success": {
"type": "boolean",
"description": "Operation success; on false inspect error/errorCode."
},
"upgrade": {
"type": "object",
"description": "Plan-upgrade guidance for an unavailable capability."
},
"category": {
"type": "string",
"description": "Failure category, such as invalid_input or plan_required."
},
"expected": {
"type": "boolean",
"description": "Whether this is an anticipated access, input, plan or state failure."
},
"projects": {
"type": "array",
"items": {
"type": "object",
"properties": {
"id": {
"type": "number",
"description": "Project ID for projectId."
},
"name": {
"type": "string",
"description": "Project name."
}
},
"description": "Accessible project."
},
"description": "Accessible project choices. Select a projectId and retry."
},
"errorCode": {
"type": "string",
"description": "Failure code for recovery."
},
"retryable": {
"type": "boolean",
"description": "Whether an unchanged request can be retried."
},
"statusCode": {
"type": "number",
"description": "HTTP-style failure status."
},
"executionTime": {
"type": "string",
"description": "Elapsed time in seconds, with an s suffix."
}
},
"description": "Operation result envelope."
},
"annotations": {
"readOnlyHint": false,
"openWorldHint": false,
"idempotentHint": false,
"destructiveHint": true
}
}
The title clearly communicates the tool’s action and subject. Keep it concise.
Description97/100
Start market research for a proposed programmatic content collection using the current project and default brand kit as context. Returns a researchId immediately. Results typically take around 10 minutes; this is expected. Use wait_for_programmatic_market_research or get_programmatic_market_research to retrieve the canonical pageStructure.
Starts metered asynchronous research, not final page publication. Keep the returned researchId and use wait_for_programmatic_market_research; repeated starts may create additional work.
The description explains the capability, when to use it, and what to expect.
Inputs88/100
Explain the meaning of this value, not just its name.
description
Describe the programmatic content collection you want to plan, for example alternative-to pages for the current project.
Clear enough to supply this argument.
market
Optional market or category used to narrow the research.
Explain the meaning of this value, not just its name.
audience
Optional target audience used when selecting representative pages.
Clear enough to supply this argument.
language
Optional language for research queries and representative pages.
Clear enough to supply this argument.
competitorDomains
Optional competitor domains to prioritize while researching the market.
Clear enough to supply this argument.
excludeDomains
Optional domains that must not be selected as research examples.
Clear enough to supply this argument.
exampleCount
Number of representative pages to analyze. Defaults to 5.
Remove validation rules already expressed in this field’s schema; describe its meaning and usage instead.
projectId
Atomic project ID from list_projects. Omit to use the configured project; if asked to choose, select one of the accessible returned IDs.
Clear enough to supply this argument.
context
Short purpose of this call for the activity log. Exclude personal data and private source content.
Remove validation rules already expressed in this field’s schema; describe its meaning and usage instead.
llm_model
Use the exact model ID executing this call, from runtime/system context, for usage attribution. Supply it on every Atomic MCP tool call, including discovery and feedback, and update it if the model changes. Use the model ID rather than the client app name. If unavailable, omit it; never guess or ask the user.
Remove validation rules already expressed in this field’s schema; describe its meaning and usage instead.
{
"type": "object",
"required": [
"success"
],
"properties": {
"url": {
"type": "string",
"description": "Link for resolving the failure or completing the operation."
},
"data": {
"type": "object",
"required": [
"researchId",
"status",
"message"
],
"properties": {
"status": {
"enum": [
"queued",
"running",
"completed",
"failed"
],
"type": "string",
"description": "Current saved or execution state reported by the operation."
},
"message": {
"type": "string",
"description": "Outcome, explanation or recovery instructions returned by the operation."
},
"researchId": {
"type": "number",
"description": "Saved market research identifier for subsequent result or wait tools."
}
},
"description": "Operation data; optional fields may be absent."
},
"error": {
"type": "string",
"description": "Why the operation failed."
},
"details": {
"type": "object",
"description": "Diagnostics keyed by errorCode."
},
"message": {
"type": "string",
"description": "Outcome or recovery instructions. Project selection means no action ran."
},
"success": {
"type": "boolean",
"description": "Operation success; on false inspect error/errorCode."
},
"upgrade": {
"type": "object",
"description": "Plan-upgrade guidance for an unavailable capability."
},
"category": {
"type": "string",
"description": "Failure category, such as invalid_input or plan_required."
},
"expected": {
"type": "boolean",
"description": "Whether this is an anticipated access, input, plan or state failure."
},
"projects": {
"type": "array",
"items": {
"type": "object",
"properties": {
"id": {
"type": "number",
"description": "Project ID for projectId."
},
"name": {
"type": "string",
"description": "Project name."
}
},
"description": "Accessible project."
},
"description": "Accessible project choices. Select a projectId and retry."
},
"errorCode": {
"type": "string",
"description": "Failure code for recovery."
},
"retryable": {
"type": "boolean",
"description": "Whether an unchanged request can be retried."
},
"statusCode": {
"type": "number",
"description": "HTTP-style failure status."
},
"executionTime": {
"type": "string",
"description": "Elapsed time in seconds, with an s suffix."
}
},
"description": "Operation result envelope."
}
Original tool metadata
{
"name": "programmatic_market_research",
"title": "Programmatic market research",
"description": "Start market research for a proposed programmatic content collection using the current project and default brand kit as context. Returns a researchId immediately. Results typically take around 10 minutes; this is expected. Use wait_for_programmatic_market_research or get_programmatic_market_research to retrieve the canonical pageStructure.\n\nStarts metered asynchronous research, not final page publication. Keep the returned researchId and use wait_for_programmatic_market_research; repeated starts may create additional work.",
"inputSchema": {
"type": "object",
"required": [
"description"
],
"properties": {
"market": {
"type": "string",
"description": "Optional market or category used to narrow the research."
},
"context": {
"type": "string",
"maxLength": 120,
"description": "Short purpose of this call for the activity log. Exclude personal data and private source content."
},
"audience": {
"type": "string",
"description": "Optional target audience used when selecting representative pages."
},
"language": {
"type": "string",
"description": "Optional language for research queries and representative pages."
},
"llm_model": {
"type": "string",
"maxLength": 128,
"description": "Use the exact model ID executing this call, from runtime/system context, for usage attribution. Supply it on every Atomic MCP tool call, including discovery and feedback, and update it if the model changes. Use the model ID rather than the client app name. If unavailable, omit it; never guess or ask the user."
},
"projectId": {
"type": "number",
"description": "Atomic project ID from list_projects. Omit to use the configured project; if asked to choose, select one of the accessible returned IDs."
},
"description": {
"type": "string",
"maxLength": 2000,
"minLength": 1,
"description": "Describe the programmatic content collection you want to plan, for example alternative-to pages for the current project."
},
"exampleCount": {
"type": "number",
"default": 5,
"maximum": 10,
"minimum": 2,
"description": "Number of representative pages to analyze. Defaults to 5."
},
"excludeDomains": {
"type": "array",
"items": {
"type": "string"
},
"description": "Optional domains that must not be selected as research examples."
},
"competitorDomains": {
"type": "array",
"items": {
"type": "string"
},
"description": "Optional competitor domains to prioritize while researching the market."
}
}
},
"outputSchema": {
"type": "object",
"required": [
"success"
],
"properties": {
"url": {
"type": "string",
"description": "Link for resolving the failure or completing the operation."
},
"data": {
"type": "object",
"required": [
"researchId",
"status",
"message"
],
"properties": {
"status": {
"enum": [
"queued",
"running",
"completed",
"failed"
],
"type": "string",
"description": "Current saved or execution state reported by the operation."
},
"message": {
"type": "string",
"description": "Outcome, explanation or recovery instructions returned by the operation."
},
"researchId": {
"type": "number",
"description": "Saved market research identifier for subsequent result or wait tools."
}
},
"description": "Operation data; optional fields may be absent."
},
"error": {
"type": "string",
"description": "Why the operation failed."
},
"details": {
"type": "object",
"description": "Diagnostics keyed by errorCode."
},
"message": {
"type": "string",
"description": "Outcome or recovery instructions. Project selection means no action ran."
},
"success": {
"type": "boolean",
"description": "Operation success; on false inspect error/errorCode."
},
"upgrade": {
"type": "object",
"description": "Plan-upgrade guidance for an unavailable capability."
},
"category": {
"type": "string",
"description": "Failure category, such as invalid_input or plan_required."
},
"expected": {
"type": "boolean",
"description": "Whether this is an anticipated access, input, plan or state failure."
},
"projects": {
"type": "array",
"items": {
"type": "object",
"properties": {
"id": {
"type": "number",
"description": "Project ID for projectId."
},
"name": {
"type": "string",
"description": "Project name."
}
},
"description": "Accessible project."
},
"description": "Accessible project choices. Select a projectId and retry."
},
"errorCode": {
"type": "string",
"description": "Failure code for recovery."
},
"retryable": {
"type": "boolean",
"description": "Whether an unchanged request can be retried."
},
"statusCode": {
"type": "number",
"description": "HTTP-style failure status."
},
"executionTime": {
"type": "string",
"description": "Elapsed time in seconds, with an s suffix."
}
},
"description": "Operation result envelope."
},
"annotations": {
"readOnlyHint": false,
"openWorldHint": true,
"idempotentHint": false,
"destructiveHint": false
}
}
The title clearly communicates the tool’s action and subject. Keep it concise.
Description93/100
Publish content to WordPress or Webflow. Requires a content ID (from get_contents or create_content) and a publishing connection ID (from get_publishing_connections). The content will be published to the configured platform with the specified settings. For WordPress, supports categories and tags. For Webflow, publishes to the configured CMS collection. Returns outcome (success, scheduled, failed, unknown), attemptId, scheduledAt in UTC when scheduled, remote receipt and a separate bookkeepingWarning. Never republish an unknown outcome under a new ID to bypass reconciliation.
The description explains the capability, when to use it, and what to expect.
Inputs90/100
Remove validation rules already expressed in this field’s schema; describe its meaning and usage instead.
attemptId
Caller-generated identifier for one intended mutation. Reuse it with the identical payload after an uncertain response; use a new identifier for a different intended action.
Clear enough to supply this argument.
contentId
The ID of the content to publish (required). Get this from get_contents or create_content.
Clear enough to supply this argument.
publishingConnectionId
The ID of the publishing connection to use (required). Get available connections using get_publishing_connections.
Clear enough to supply this argument.
title
Override the content title for publishing. If not provided, uses the content title.
Clear enough to supply this argument.
status
The publish status. "draft" saves without publishing, "publish" makes it live immediately, "pending" marks for review. "schedule" sends scheduledAt (UTC) to WordPress: future dates schedule publication; past dates publish immediately with that date. Webflow API scheduling is unsupported. Defaults to the connection default status.
Remove validation rules already expressed in this field’s schema; describe its meaning and usage instead.
scheduledAt
Required for schedule: a UTC ISO 8601 timestamp ending in Z. WordPress schedules future dates and publishes past dates immediately with the supplied date.
Resolve the mismatch between this description and its schema constraints.
categories
Categories to assign (WordPress only). Categories are created if they do not exist. Example: ["Technology", "News"]
Clear enough to supply this argument.
tags
Tags to assign (WordPress only). Tags are created if they do not exist. Example: ["AI", "tutorial"]
Clear enough to supply this argument.
metadata
Publishing metadata. For Webflow, featuredImageAltText describes the featured image; omitted descriptions default to the article title.
Clear enough to supply this argument.
featuredImageUrl
URL of an image to set as the featured image. The image will be downloaded and uploaded to the platform. If not provided, uses the content featured image if available.
Clear enough to supply this argument.
projectId
Atomic project ID from list_projects. Omit to use the configured project; if asked to choose, select one of the accessible returned IDs.
Clear enough to supply this argument.
context
Short purpose of this call for the activity log. Exclude personal data and private source content.
Clear enough to supply this argument.
llm_model
Use the exact model ID executing this call, from runtime/system context, for usage attribution. Supply it on every Atomic MCP tool call, including discovery and feedback, and update it if the model changes. Use the model ID rather than the client app name. If unavailable, omit it; never guess or ask the user.
Align the output schema with the tool’s documented result.
View output schema
{
"type": "object",
"required": [
"success"
],
"properties": {
"url": {
"type": "string",
"description": "Link for resolving the failure or completing the operation."
},
"data": {
"type": "object",
"required": [
"attemptId",
"outcome",
"platform"
],
"properties": {
"error": {
"type": "string",
"description": "Failure details reported by this operation or its provider."
},
"outcome": {
"enum": [
"failed",
"unknown",
"success",
"scheduled"
],
"type": "string"
},
"platform": {
"type": "string"
},
"attemptId": {
"type": "string",
"description": "Identifier of the intended write attempt, used to reconcile retries with its recorded outcome."
},
"externalId": {
"type": "string"
},
"externalUrl": {
"type": "string"
},
"scheduledAt": {
"type": "string",
"description": "Date and time this task or publication is scheduled to run."
},
"publishedStatus": {
"type": "string"
},
"bookkeepingWarning": {
"type": "string"
}
},
"description": "Operation data; optional fields may be absent."
},
"error": {
"type": "string",
"description": "Why the operation failed."
},
"details": {
"type": "object",
"description": "Diagnostics keyed by errorCode."
},
"message": {
"type": "string",
"description": "Outcome or recovery instructions. Project selection means no action ran."
},
"success": {
"type": "boolean",
"description": "Operation success; on false inspect error/errorCode."
},
"upgrade": {
"type": "object",
"description": "Plan-upgrade guidance for an unavailable capability."
},
"category": {
"type": "string",
"description": "Failure category, such as invalid_input or plan_required."
},
"expected": {
"type": "boolean",
"description": "Whether this is an anticipated access, input, plan or state failure."
},
"projects": {
"type": "array",
"items": {
"type": "object",
"properties": {
"id": {
"type": "number",
"description": "Project ID for projectId."
},
"name": {
"type": "string",
"description": "Project name."
}
},
"description": "Accessible project."
},
"description": "Accessible project choices. Select a projectId and retry."
},
"errorCode": {
"type": "string",
"description": "Failure code for recovery."
},
"retryable": {
"type": "boolean",
"description": "Whether an unchanged request can be retried."
},
"statusCode": {
"type": "number",
"description": "HTTP-style failure status."
},
"executionTime": {
"type": "string",
"description": "Elapsed time in seconds, with an s suffix."
}
},
"description": "Operation result envelope."
}
Original tool metadata
{
"name": "publish_content",
"title": "Publish content",
"description": "Publish content to WordPress or Webflow. Requires a content ID (from get_contents or create_content) and a publishing connection ID (from get_publishing_connections). The content will be published to the configured platform with the specified settings. For WordPress, supports categories and tags. For Webflow, publishes to the configured CMS collection. Returns outcome (success, scheduled, failed, unknown), attemptId, scheduledAt in UTC when scheduled, remote receipt and a separate bookkeepingWarning. Never republish an unknown outcome under a new ID to bypass reconciliation.",
"inputSchema": {
"type": "object",
"required": [
"attemptId",
"contentId",
"publishingConnectionId"
],
"properties": {
"tags": {
"type": "array",
"items": {
"type": "string"
},
"description": "Tags to assign (WordPress only). Tags are created if they do not exist. Example: [\"AI\", \"tutorial\"]"
},
"title": {
"type": "string",
"description": "Override the content title for publishing. If not provided, uses the content title."
},
"status": {
"enum": [
"draft",
"publish",
"pending",
"schedule"
],
"type": "string",
"description": "The publish status. \"draft\" saves without publishing, \"publish\" makes it live immediately, \"pending\" marks for review. \"schedule\" sends scheduledAt (UTC) to WordPress: future dates schedule publication; past dates publish immediately with that date. Webflow API scheduling is unsupported. Defaults to the connection default status."
},
"context": {
"type": "string",
"maxLength": 120,
"description": "Short purpose of this call for the activity log. Exclude personal data and private source content."
},
"metadata": {
"type": "object",
"description": "Publishing metadata. For Webflow, featuredImageAltText describes the featured image; omitted descriptions default to the article title.",
"additionalProperties": true
},
"attemptId": {
"type": "string",
"format": "uuid",
"description": "Caller-generated identifier for one intended mutation. Reuse it with the identical payload after an uncertain response; use a new identifier for a different intended action."
},
"contentId": {
"type": "string",
"description": "The ID of the content to publish (required). Get this from get_contents or create_content."
},
"llm_model": {
"type": "string",
"maxLength": 128,
"description": "Use the exact model ID executing this call, from runtime/system context, for usage attribution. Supply it on every Atomic MCP tool call, including discovery and feedback, and update it if the model changes. Use the model ID rather than the client app name. If unavailable, omit it; never guess or ask the user."
},
"projectId": {
"type": "number",
"description": "Atomic project ID from list_projects. Omit to use the configured project; if asked to choose, select one of the accessible returned IDs."
},
"categories": {
"type": "array",
"items": {
"type": "string"
},
"description": "Categories to assign (WordPress only). Categories are created if they do not exist. Example: [\"Technology\", \"News\"]"
},
"scheduledAt": {
"type": "string",
"description": "Required for schedule: a UTC ISO 8601 timestamp ending in Z. WordPress schedules future dates and publishes past dates immediately with the supplied date."
},
"featuredImageUrl": {
"type": "string",
"description": "URL of an image to set as the featured image. The image will be downloaded and uploaded to the platform. If not provided, uses the content featured image if available."
},
"publishingConnectionId": {
"type": "number",
"description": "The ID of the publishing connection to use (required). Get available connections using get_publishing_connections."
}
}
},
"outputSchema": {
"type": "object",
"required": [
"success"
],
"properties": {
"url": {
"type": "string",
"description": "Link for resolving the failure or completing the operation."
},
"data": {
"type": "object",
"required": [
"attemptId",
"outcome",
"platform"
],
"properties": {
"error": {
"type": "string",
"description": "Failure details reported by this operation or its provider."
},
"outcome": {
"enum": [
"failed",
"unknown",
"success",
"scheduled"
],
"type": "string"
},
"platform": {
"type": "string"
},
"attemptId": {
"type": "string",
"description": "Identifier of the intended write attempt, used to reconcile retries with its recorded outcome."
},
"externalId": {
"type": "string"
},
"externalUrl": {
"type": "string"
},
"scheduledAt": {
"type": "string",
"description": "Date and time this task or publication is scheduled to run."
},
"publishedStatus": {
"type": "string"
},
"bookkeepingWarning": {
"type": "string"
}
},
"description": "Operation data; optional fields may be absent."
},
"error": {
"type": "string",
"description": "Why the operation failed."
},
"details": {
"type": "object",
"description": "Diagnostics keyed by errorCode."
},
"message": {
"type": "string",
"description": "Outcome or recovery instructions. Project selection means no action ran."
},
"success": {
"type": "boolean",
"description": "Operation success; on false inspect error/errorCode."
},
"upgrade": {
"type": "object",
"description": "Plan-upgrade guidance for an unavailable capability."
},
"category": {
"type": "string",
"description": "Failure category, such as invalid_input or plan_required."
},
"expected": {
"type": "boolean",
"description": "Whether this is an anticipated access, input, plan or state failure."
},
"projects": {
"type": "array",
"items": {
"type": "object",
"properties": {
"id": {
"type": "number",
"description": "Project ID for projectId."
},
"name": {
"type": "string",
"description": "Project name."
}
},
"description": "Accessible project."
},
"description": "Accessible project choices. Select a projectId and retry."
},
"errorCode": {
"type": "string",
"description": "Failure code for recovery."
},
"retryable": {
"type": "boolean",
"description": "Whether an unchanged request can be retried."
},
"statusCode": {
"type": "number",
"description": "HTTP-style failure status."
},
"executionTime": {
"type": "string",
"description": "Elapsed time in seconds, with an s suffix."
}
},
"description": "Operation result envelope."
},
"annotations": {
"readOnlyHint": false,
"openWorldHint": true,
"idempotentHint": false,
"destructiveHint": true
}
}
The title clearly communicates the tool’s action and subject. Keep it concise.
Description91/100
Publish all staged Webflow site changes to explicitly selected custom domains, with sites:read and sites:write. Use domain IDs and publicationToken from get_webflow_site_publishing. This includes unrelated staged edits: use only with site-publishing authorization. Save attemptId and identical arguments; retries reconcile without enqueueing again. A queued request is not publication proof. Verify rendered changes independently. Webflow permits one successful publish per minute. Does not publish to webflow.io staging.
The description explains the capability, when to use it, and what to expect.
Inputs95/100
Remove validation rules already expressed in this field’s schema; describe its meaning and usage instead.
projectPublishingId
Atomic publishing connection ID from get_publishing_connections, not the provider site or post ID.
Clear enough to supply this argument.
attemptId
Caller-generated identifier for one intended mutation. Reuse it with the identical payload after an uncertain response; use a new identifier for a different intended action.
Clear enough to supply this argument.
customDomainIds
Explicit production domain IDs from get_webflow_site_publishing.
Clear enough to supply this argument.
expectedPublicationToken
Exact publicationToken from a fresh get_webflow_site_publishing read.
Clear enough to supply this argument.
projectId
Atomic project ID from list_projects. Omit to use the configured project; if asked to choose, select one of the accessible returned IDs.
Clear enough to supply this argument.
context
Short purpose of this call for the activity log. Exclude personal data and private source content.
Remove validation rules already expressed in this field’s schema; describe its meaning and usage instead.
llm_model
Use the exact model ID executing this call, from runtime/system context, for usage attribution. Supply it on every Atomic MCP tool call, including discovery and feedback, and update it if the model changes. Use the model ID rather than the client app name. If unavailable, omit it; never guess or ask the user.
{
"type": "object",
"required": [
"success"
],
"properties": {
"url": {
"type": "string",
"description": "Link for resolving the failure or completing the operation."
},
"data": {
"type": "object",
"required": [
"attemptId",
"siteId",
"customDomainIds",
"requestedAt",
"accepted",
"published",
"outcome",
"message"
],
"properties": {
"siteId": {
"type": "string",
"description": "Native provider site identifier for this connection."
},
"message": {
"type": "string",
"description": "Outcome, explanation or recovery instructions returned by the operation."
},
"outcome": {
"enum": [
"unknown",
"accepted",
"published"
],
"type": "string"
},
"accepted": {
"type": "boolean"
},
"attemptId": {
"type": "string",
"description": "Identifier of the intended write attempt, used to reconcile retries with its recorded outcome."
},
"published": {
"type": "boolean",
"description": "Whether the operation verified or reported publication; this alone does not prove rendered HTML correctness."
},
"requestedAt": {
"type": "string"
},
"customDomainIds": {
"type": "array",
"items": {
"type": "string"
}
}
},
"description": "Operation data; optional fields may be absent."
},
"error": {
"type": "string",
"description": "Why the operation failed."
},
"details": {
"type": "object",
"description": "Diagnostics keyed by errorCode."
},
"message": {
"type": "string",
"description": "Outcome or recovery instructions. Project selection means no action ran."
},
"success": {
"type": "boolean",
"description": "Operation success; on false inspect error/errorCode."
},
"upgrade": {
"type": "object",
"description": "Plan-upgrade guidance for an unavailable capability."
},
"category": {
"type": "string",
"description": "Failure category, such as invalid_input or plan_required."
},
"expected": {
"type": "boolean",
"description": "Whether this is an anticipated access, input, plan or state failure."
},
"projects": {
"type": "array",
"items": {
"type": "object",
"properties": {
"id": {
"type": "number",
"description": "Project ID for projectId."
},
"name": {
"type": "string",
"description": "Project name."
}
},
"description": "Accessible project."
},
"description": "Accessible project choices. Select a projectId and retry."
},
"errorCode": {
"type": "string",
"description": "Failure code for recovery."
},
"retryable": {
"type": "boolean",
"description": "Whether an unchanged request can be retried."
},
"statusCode": {
"type": "number",
"description": "HTTP-style failure status."
},
"executionTime": {
"type": "string",
"description": "Elapsed time in seconds, with an s suffix."
}
},
"description": "Operation result envelope."
}
Original tool metadata
{
"name": "publish_webflow_site",
"title": "Publish Webflow site",
"description": "Publish all staged Webflow site changes to explicitly selected custom domains, with sites:read and sites:write. Use domain IDs and publicationToken from get_webflow_site_publishing. This includes unrelated staged edits: use only with site-publishing authorization. Save attemptId and identical arguments; retries reconcile without enqueueing again. A queued request is not publication proof. Verify rendered changes independently. Webflow permits one successful publish per minute. Does not publish to webflow.io staging.",
"inputSchema": {
"type": "object",
"required": [
"projectPublishingId",
"attemptId",
"customDomainIds",
"expectedPublicationToken"
],
"properties": {
"context": {
"type": "string",
"maxLength": 120,
"description": "Short purpose of this call for the activity log. Exclude personal data and private source content."
},
"attemptId": {
"type": "string",
"format": "uuid",
"description": "Caller-generated identifier for one intended mutation. Reuse it with the identical payload after an uncertain response; use a new identifier for a different intended action."
},
"llm_model": {
"type": "string",
"maxLength": 128,
"description": "Use the exact model ID executing this call, from runtime/system context, for usage attribution. Supply it on every Atomic MCP tool call, including discovery and feedback, and update it if the model changes. Use the model ID rather than the client app name. If unavailable, omit it; never guess or ask the user."
},
"projectId": {
"type": "number",
"description": "Atomic project ID from list_projects. Omit to use the configured project; if asked to choose, select one of the accessible returned IDs."
},
"customDomainIds": {
"type": "array",
"items": {
"type": "string",
"pattern": "^[a-fA-F0-9]{24}$"
},
"maxItems": 100,
"minItems": 1,
"description": "Explicit production domain IDs from get_webflow_site_publishing."
},
"projectPublishingId": {
"type": "number",
"minimum": 1,
"description": "Atomic publishing connection ID from get_publishing_connections, not the provider site or post ID."
},
"expectedPublicationToken": {
"type": "string",
"pattern": "^[a-f0-9]{64}$",
"description": "Exact publicationToken from a fresh get_webflow_site_publishing read."
}
},
"additionalProperties": false
},
"outputSchema": {
"type": "object",
"required": [
"success"
],
"properties": {
"url": {
"type": "string",
"description": "Link for resolving the failure or completing the operation."
},
"data": {
"type": "object",
"required": [
"attemptId",
"siteId",
"customDomainIds",
"requestedAt",
"accepted",
"published",
"outcome",
"message"
],
"properties": {
"siteId": {
"type": "string",
"description": "Native provider site identifier for this connection."
},
"message": {
"type": "string",
"description": "Outcome, explanation or recovery instructions returned by the operation."
},
"outcome": {
"enum": [
"unknown",
"accepted",
"published"
],
"type": "string"
},
"accepted": {
"type": "boolean"
},
"attemptId": {
"type": "string",
"description": "Identifier of the intended write attempt, used to reconcile retries with its recorded outcome."
},
"published": {
"type": "boolean",
"description": "Whether the operation verified or reported publication; this alone does not prove rendered HTML correctness."
},
"requestedAt": {
"type": "string"
},
"customDomainIds": {
"type": "array",
"items": {
"type": "string"
}
}
},
"description": "Operation data; optional fields may be absent."
},
"error": {
"type": "string",
"description": "Why the operation failed."
},
"details": {
"type": "object",
"description": "Diagnostics keyed by errorCode."
},
"message": {
"type": "string",
"description": "Outcome or recovery instructions. Project selection means no action ran."
},
"success": {
"type": "boolean",
"description": "Operation success; on false inspect error/errorCode."
},
"upgrade": {
"type": "object",
"description": "Plan-upgrade guidance for an unavailable capability."
},
"category": {
"type": "string",
"description": "Failure category, such as invalid_input or plan_required."
},
"expected": {
"type": "boolean",
"description": "Whether this is an anticipated access, input, plan or state failure."
},
"projects": {
"type": "array",
"items": {
"type": "object",
"properties": {
"id": {
"type": "number",
"description": "Project ID for projectId."
},
"name": {
"type": "string",
"description": "Project name."
}
},
"description": "Accessible project."
},
"description": "Accessible project choices. Select a projectId and retry."
},
"errorCode": {
"type": "string",
"description": "Failure code for recovery."
},
"retryable": {
"type": "boolean",
"description": "Whether an unchanged request can be retried."
},
"statusCode": {
"type": "number",
"description": "HTTP-style failure status."
},
"executionTime": {
"type": "string",
"description": "Elapsed time in seconds, with an s suffix."
}
},
"description": "Operation result envelope."
},
"annotations": {
"readOnlyHint": false,
"openWorldHint": true,
"idempotentHint": false,
"destructiveHint": true
}
}
The title clearly communicates the tool’s action and subject. Keep it concise.
Description95/100
Fetch a public web page at an absolute HTTP(S) URL and return its content as Markdown. Use an exact URL from the user, search results, or site links. Missing pages return HTTP 404 errors; inspect the URL or discover a current page rather than retrying the same missing URL.
Use after webSearch or for a URL supplied by the user. Fetches that page without editing it; search_knowledge is for already indexed project material.
The description explains the capability, when to use it, and what to expect.
Inputs94/100
Remove validation rules already expressed in this field’s schema; describe its meaning and usage instead.
url
Absolute public HTTP(S) URL, including the scheme, for example https://example.com/blog/article. Relative paths and non-web schemes are invalid.
Remove validation rules already expressed in this field’s schema; describe its meaning and usage instead.
projectId
Atomic project ID from list_projects. Omit to use the configured project; if asked to choose, select one of the accessible returned IDs.
Clear enough to supply this argument.
context
Short purpose of this call for the activity log. Exclude personal data and private source content.
Clear enough to supply this argument.
llm_model
Use the exact model ID executing this call, from runtime/system context, for usage attribution. Supply it on every Atomic MCP tool call, including discovery and feedback, and update it if the model changes. Use the model ID rather than the client app name. If unavailable, omit it; never guess or ask the user.
{
"type": "object",
"required": [
"success"
],
"properties": {
"url": {
"type": "string",
"description": "Link for resolving the failure or completing the operation."
},
"data": {
"type": "object",
"required": [
"url",
"text",
"usage"
],
"properties": {
"url": {
"type": "string",
"description": "URL returned for this resource or operation."
},
"text": {
"type": "string"
},
"usage": {
"type": "object",
"required": [
"inputTokens",
"outputTokens",
"executionTime",
"creditsUsed",
"model"
],
"properties": {
"model": {
"type": "string",
"description": "Model identifier used for the reported generation or AI-search run."
},
"modelUsage": {
"type": "object",
"properties": {},
"description": "Actual execution models, including verification; never inferred from a phase label.",
"additionalProperties": {
"type": "object",
"description": "Nested operation-specific fields."
}
},
"phaseUsage": {
"type": "object",
"properties": {},
"description": "Costs charged in this execution, excluding phases restored from an earlier run."
},
"creditsUsed": {
"type": "number",
"description": "Atomic credits recorded as used by this execution."
},
"inputTokens": {
"type": "number",
"description": "Input tokens reported for this model execution."
},
"toolRetries": {
"type": "object",
"required": [
"attempts",
"providerCostDollars",
"toolCostDollars"
],
"properties": {
"attempts": {
"type": "number",
"description": "Processing or execution attempts associated with this record."
},
"toolCostDollars": {
"type": "number",
"description": "Independent costs for retry tool calls only; included in the phase total."
},
"providerCostDollars": {
"type": "number",
"description": "Whole model turns containing retries; included in the phase total."
}
},
"description": "Number of tool retries recorded for the execution."
},
"outputTokens": {
"type": "number",
"description": "Output tokens reported for this model execution."
},
"executionTime": {
"type": "number",
"description": "Elapsed execution duration reported by the tool."
},
"toolCostDollars": {
"type": "number",
"description": "Tool-related cost recorded for this execution, in US dollars."
},
"providerCostDollars": {
"type": "number",
"description": "Provider cost recorded for this execution, in US dollars."
},
"cacheReadInputTokens": {
"type": "number",
"description": "Input tokens served from a model prompt cache."
},
"cacheCreationInputTokens": {
"type": "number",
"description": "Input tokens charged for creating a model prompt cache."
}
},
"description": "Provider or Atomic usage measurements for this execution."
}
},
"description": "Operation data; optional fields may be absent."
},
"error": {
"type": "string",
"description": "Why the operation failed."
},
"details": {
"type": "object",
"description": "Diagnostics keyed by errorCode."
},
"message": {
"type": "string",
"description": "Outcome or recovery instructions. Project selection means no action ran."
},
"success": {
"type": "boolean",
"description": "Operation success; on false inspect error/errorCode."
},
"upgrade": {
"type": "object",
"description": "Plan-upgrade guidance for an unavailable capability."
},
"category": {
"type": "string",
"description": "Failure category, such as invalid_input or plan_required."
},
"expected": {
"type": "boolean",
"description": "Whether this is an anticipated access, input, plan or state failure."
},
"projects": {
"type": "array",
"items": {
"type": "object",
"properties": {
"id": {
"type": "number",
"description": "Project ID for projectId."
},
"name": {
"type": "string",
"description": "Project name."
}
},
"description": "Accessible project."
},
"description": "Accessible project choices. Select a projectId and retry."
},
"errorCode": {
"type": "string",
"description": "Failure code for recovery."
},
"retryable": {
"type": "boolean",
"description": "Whether an unchanged request can be retried."
},
"statusCode": {
"type": "number",
"description": "HTTP-style failure status."
},
"executionTime": {
"type": "string",
"description": "Elapsed time in seconds, with an s suffix."
}
},
"description": "Operation result envelope."
}
Original tool metadata
{
"name": "readWebPage",
"title": "Read web page",
"description": "Fetch a public web page at an absolute HTTP(S) URL and return its content as Markdown. Use an exact URL from the user, search results, or site links. Missing pages return HTTP 404 errors; inspect the URL or discover a current page rather than retrying the same missing URL.\n\nUse after webSearch or for a URL supplied by the user. Fetches that page without editing it; search_knowledge is for already indexed project material.",
"inputSchema": {
"type": "object",
"required": [
"url"
],
"properties": {
"url": {
"type": "string",
"format": "uri",
"pattern": "^[Hh][Tt][Tt][Pp][Ss]?://",
"maxLength": 2048,
"description": "Absolute public HTTP(S) URL, including the scheme, for example https://example.com/blog/article. Relative paths and non-web schemes are invalid."
},
"context": {
"type": "string",
"maxLength": 120,
"description": "Short purpose of this call for the activity log. Exclude personal data and private source content."
},
"llm_model": {
"type": "string",
"maxLength": 128,
"description": "Use the exact model ID executing this call, from runtime/system context, for usage attribution. Supply it on every Atomic MCP tool call, including discovery and feedback, and update it if the model changes. Use the model ID rather than the client app name. If unavailable, omit it; never guess or ask the user."
},
"projectId": {
"type": "number",
"description": "Atomic project ID from list_projects. Omit to use the configured project; if asked to choose, select one of the accessible returned IDs."
}
}
},
"outputSchema": {
"type": "object",
"required": [
"success"
],
"properties": {
"url": {
"type": "string",
"description": "Link for resolving the failure or completing the operation."
},
"data": {
"type": "object",
"required": [
"url",
"text",
"usage"
],
"properties": {
"url": {
"type": "string",
"description": "URL returned for this resource or operation."
},
"text": {
"type": "string"
},
"usage": {
"type": "object",
"required": [
"inputTokens",
"outputTokens",
"executionTime",
"creditsUsed",
"model"
],
"properties": {
"model": {
"type": "string",
"description": "Model identifier used for the reported generation or AI-search run."
},
"modelUsage": {
"type": "object",
"properties": {},
"description": "Actual execution models, including verification; never inferred from a phase label.",
"additionalProperties": {
"type": "object",
"description": "Nested operation-specific fields."
}
},
"phaseUsage": {
"type": "object",
"properties": {},
"description": "Costs charged in this execution, excluding phases restored from an earlier run."
},
"creditsUsed": {
"type": "number",
"description": "Atomic credits recorded as used by this execution."
},
"inputTokens": {
"type": "number",
"description": "Input tokens reported for this model execution."
},
"toolRetries": {
"type": "object",
"required": [
"attempts",
"providerCostDollars",
"toolCostDollars"
],
"properties": {
"attempts": {
"type": "number",
"description": "Processing or execution attempts associated with this record."
},
"toolCostDollars": {
"type": "number",
"description": "Independent costs for retry tool calls only; included in the phase total."
},
"providerCostDollars": {
"type": "number",
"description": "Whole model turns containing retries; included in the phase total."
}
},
"description": "Number of tool retries recorded for the execution."
},
"outputTokens": {
"type": "number",
"description": "Output tokens reported for this model execution."
},
"executionTime": {
"type": "number",
"description": "Elapsed execution duration reported by the tool."
},
"toolCostDollars": {
"type": "number",
"description": "Tool-related cost recorded for this execution, in US dollars."
},
"providerCostDollars": {
"type": "number",
"description": "Provider cost recorded for this execution, in US dollars."
},
"cacheReadInputTokens": {
"type": "number",
"description": "Input tokens served from a model prompt cache."
},
"cacheCreationInputTokens": {
"type": "number",
"description": "Input tokens charged for creating a model prompt cache."
}
},
"description": "Provider or Atomic usage measurements for this execution."
}
},
"description": "Operation data; optional fields may be absent."
},
"error": {
"type": "string",
"description": "Why the operation failed."
},
"details": {
"type": "object",
"description": "Diagnostics keyed by errorCode."
},
"message": {
"type": "string",
"description": "Outcome or recovery instructions. Project selection means no action ran."
},
"success": {
"type": "boolean",
"description": "Operation success; on false inspect error/errorCode."
},
"upgrade": {
"type": "object",
"description": "Plan-upgrade guidance for an unavailable capability."
},
"category": {
"type": "string",
"description": "Failure category, such as invalid_input or plan_required."
},
"expected": {
"type": "boolean",
"description": "Whether this is an anticipated access, input, plan or state failure."
},
"projects": {
"type": "array",
"items": {
"type": "object",
"properties": {
"id": {
"type": "number",
"description": "Project ID for projectId."
},
"name": {
"type": "string",
"description": "Project name."
}
},
"description": "Accessible project."
},
"description": "Accessible project choices. Select a projectId and retry."
},
"errorCode": {
"type": "string",
"description": "Failure code for recovery."
},
"retryable": {
"type": "boolean",
"description": "Whether an unchanged request can be retried."
},
"statusCode": {
"type": "number",
"description": "HTTP-style failure status."
},
"executionTime": {
"type": "string",
"description": "Elapsed time in seconds, with an s suffix."
}
},
"description": "Operation result envelope."
},
"annotations": {
"readOnlyHint": true,
"openWorldHint": true,
"idempotentHint": true,
"destructiveHint": false
}
}
The title clearly communicates the tool’s action and subject. Keep it concise.
Description75/100
Recall memories for the current agent. Use this before repeating work, when you need prior context, or when you want to retrieve durable lessons and preferences from past sessions.
The description explains the capability, when to use it, and what to expect.
Inputs83/100
Remove validation rules already expressed in this field’s schema; describe its meaning and usage instead.
query
Optional search query. If omitted, the most relevant recent memories are returned.
Clear enough to supply this argument.
kind
Optional filter for memory type
Remove validation rules already expressed in this field’s schema; describe its meaning and usage instead.
limit
Optional maximum number of memory entries to return (1-20)
Remove validation rules already expressed in this field’s schema; describe its meaning and usage instead.
projectId
Atomic project ID from list_projects. Omit to use the configured project; if asked to choose, select one of the accessible returned IDs.
Clear enough to supply this argument.
context
Short purpose of this call for the activity log. Exclude personal data and private source content.
Remove validation rules already expressed in this field’s schema; describe its meaning and usage instead.
llm_model
Use the exact model ID executing this call, from runtime/system context, for usage attribution. Supply it on every Atomic MCP tool call, including discovery and feedback, and update it if the model changes. Use the model ID rather than the client app name. If unavailable, omit it; never guess or ask the user.
Remove validation rules already expressed in this field’s schema; describe its meaning and usage instead.
{
"type": "object",
"required": [
"success"
],
"properties": {
"url": {
"type": "string",
"description": "Link for resolving the failure or completing the operation."
},
"data": {
"type": "object",
"required": [
"success",
"items",
"count"
],
"properties": {
"count": {
"type": "number",
"description": "Number of records reported by the provider for this group."
},
"items": {
"type": "array",
"items": {
"type": "object",
"required": [
"agentId",
"content",
"kind",
"recallCount",
"createdAt",
"updatedAt"
],
"properties": {
"id": {
"type": "string",
"description": "Identifier of this returned resource. Use it for subsequent reads or edits of the same resource."
},
"kind": {
"enum": [
"memory",
"improvement"
],
"type": "string",
"description": "Discriminator identifying the variant of this returned item."
},
"tags": {
"anyOf": [
{
"type": "null"
},
{
"type": "array",
"items": {
"type": "string"
}
}
]
},
"agentId": {
"type": "number",
"description": "Saved Atomic agent associated with this resource or execution."
},
"content": {
"type": "string",
"description": "Returned content body in the format described by the containing resource."
},
"createdAt": {
"type": "string",
"format": "date-time",
"description": "Date and time this record was created, serialized as ISO 8601."
},
"updatedAt": {
"type": "string",
"format": "date-time",
"description": "Date and time this record was last updated, serialized as ISO 8601."
},
"recallCount": {
"type": "number"
},
"lastRecalledAt": {
"anyOf": [
{
"type": "null"
},
{
"type": "string",
"format": "date-time",
"description": "Timestamp serialized as an ISO 8601 date and time."
}
]
},
"sourceConversationId": {
"anyOf": [
{
"type": "null"
},
{
"type": "string"
}
],
"description": "Conversation that produced this saved result."
}
}
},
"description": "Items returned in this result collection."
},
"success": {
"type": "boolean",
"description": "Whether this nested operation completed successfully. Inspect the containing result for details."
}
},
"description": "Operation data; optional fields may be absent."
},
"error": {
"type": "string",
"description": "Why the operation failed."
},
"details": {
"type": "object",
"description": "Diagnostics keyed by errorCode."
},
"message": {
"type": "string",
"description": "Outcome or recovery instructions. Project selection means no action ran."
},
"success": {
"type": "boolean",
"description": "Operation success; on false inspect error/errorCode."
},
"upgrade": {
"type": "object",
"description": "Plan-upgrade guidance for an unavailable capability."
},
"category": {
"type": "string",
"description": "Failure category, such as invalid_input or plan_required."
},
"expected": {
"type": "boolean",
"description": "Whether this is an anticipated access, input, plan or state failure."
},
"projects": {
"type": "array",
"items": {
"type": "object",
"properties": {
"id": {
"type": "number",
"description": "Project ID for projectId."
},
"name": {
"type": "string",
"description": "Project name."
}
},
"description": "Accessible project."
},
"description": "Accessible project choices. Select a projectId and retry."
},
"errorCode": {
"type": "string",
"description": "Failure code for recovery."
},
"retryable": {
"type": "boolean",
"description": "Whether an unchanged request can be retried."
},
"statusCode": {
"type": "number",
"description": "HTTP-style failure status."
},
"executionTime": {
"type": "string",
"description": "Elapsed time in seconds, with an s suffix."
}
},
"description": "Operation result envelope."
}
Original tool metadata
{
"name": "recall",
"title": "Recall",
"description": "Recall memories for the current agent. Use this before repeating work, when you need prior context, or when you want to retrieve durable lessons and preferences from past sessions.",
"inputSchema": {
"type": "object",
"required": [],
"properties": {
"kind": {
"enum": [
"all",
"memory",
"improvement"
],
"type": "string",
"description": "Optional filter for memory type"
},
"limit": {
"type": "number",
"description": "Optional maximum number of memory entries to return (1-20)"
},
"query": {
"type": "string",
"description": "Optional search query. If omitted, the most relevant recent memories are returned."
},
"context": {
"type": "string",
"maxLength": 120,
"description": "Short purpose of this call for the activity log. Exclude personal data and private source content."
},
"llm_model": {
"type": "string",
"maxLength": 128,
"description": "Use the exact model ID executing this call, from runtime/system context, for usage attribution. Supply it on every Atomic MCP tool call, including discovery and feedback, and update it if the model changes. Use the model ID rather than the client app name. If unavailable, omit it; never guess or ask the user."
},
"projectId": {
"type": "number",
"description": "Atomic project ID from list_projects. Omit to use the configured project; if asked to choose, select one of the accessible returned IDs."
}
}
},
"outputSchema": {
"type": "object",
"required": [
"success"
],
"properties": {
"url": {
"type": "string",
"description": "Link for resolving the failure or completing the operation."
},
"data": {
"type": "object",
"required": [
"success",
"items",
"count"
],
"properties": {
"count": {
"type": "number",
"description": "Number of records reported by the provider for this group."
},
"items": {
"type": "array",
"items": {
"type": "object",
"required": [
"agentId",
"content",
"kind",
"recallCount",
"createdAt",
"updatedAt"
],
"properties": {
"id": {
"type": "string",
"description": "Identifier of this returned resource. Use it for subsequent reads or edits of the same resource."
},
"kind": {
"enum": [
"memory",
"improvement"
],
"type": "string",
"description": "Discriminator identifying the variant of this returned item."
},
"tags": {
"anyOf": [
{
"type": "null"
},
{
"type": "array",
"items": {
"type": "string"
}
}
]
},
"agentId": {
"type": "number",
"description": "Saved Atomic agent associated with this resource or execution."
},
"content": {
"type": "string",
"description": "Returned content body in the format described by the containing resource."
},
"createdAt": {
"type": "string",
"format": "date-time",
"description": "Date and time this record was created, serialized as ISO 8601."
},
"updatedAt": {
"type": "string",
"format": "date-time",
"description": "Date and time this record was last updated, serialized as ISO 8601."
},
"recallCount": {
"type": "number"
},
"lastRecalledAt": {
"anyOf": [
{
"type": "null"
},
{
"type": "string",
"format": "date-time",
"description": "Timestamp serialized as an ISO 8601 date and time."
}
]
},
"sourceConversationId": {
"anyOf": [
{
"type": "null"
},
{
"type": "string"
}
],
"description": "Conversation that produced this saved result."
}
}
},
"description": "Items returned in this result collection."
},
"success": {
"type": "boolean",
"description": "Whether this nested operation completed successfully. Inspect the containing result for details."
}
},
"description": "Operation data; optional fields may be absent."
},
"error": {
"type": "string",
"description": "Why the operation failed."
},
"details": {
"type": "object",
"description": "Diagnostics keyed by errorCode."
},
"message": {
"type": "string",
"description": "Outcome or recovery instructions. Project selection means no action ran."
},
"success": {
"type": "boolean",
"description": "Operation success; on false inspect error/errorCode."
},
"upgrade": {
"type": "object",
"description": "Plan-upgrade guidance for an unavailable capability."
},
"category": {
"type": "string",
"description": "Failure category, such as invalid_input or plan_required."
},
"expected": {
"type": "boolean",
"description": "Whether this is an anticipated access, input, plan or state failure."
},
"projects": {
"type": "array",
"items": {
"type": "object",
"properties": {
"id": {
"type": "number",
"description": "Project ID for projectId."
},
"name": {
"type": "string",
"description": "Project name."
}
},
"description": "Accessible project."
},
"description": "Accessible project choices. Select a projectId and retry."
},
"errorCode": {
"type": "string",
"description": "Failure code for recovery."
},
"retryable": {
"type": "boolean",
"description": "Whether an unchanged request can be retried."
},
"statusCode": {
"type": "number",
"description": "HTTP-style failure status."
},
"executionTime": {
"type": "string",
"description": "Elapsed time in seconds, with an s suffix."
}
},
"description": "Operation result envelope."
},
"annotations": {
"readOnlyHint": true,
"openWorldHint": false,
"idempotentHint": true,
"destructiveHint": false
}
}
The title clearly communicates the tool’s action and subject. Keep it concise.
Description98/100
Recheck one persisted SEO audit finding against the current public page after publishing a fix. Use auditId, issueId and webpageId from get_seo_audit_issues or the audit context. The row shows Checking during verification. Only a confirmed fix marks it Fixed and removes it from active audit counts; the row is retained. still_present or unverified never clears the finding. Requires Technical write permission. For broken-link findings, verifies recorded broken destinations against fresh source links and checks any that remain linked; unrelated destinations are not probed. A full audit discovers new broken links. For 404 findings, also checks recorded referring pages and sitemaps: removing the broken references can resolve a finding even if the old destination still returns 404. Explain the returned message and distinguish removed references from a restored destination. unverified is inconclusive, never evidence that the issue is still present or that a fix was not deployed. Report the stated blocker (such as HTTP 429, timeout, or missing evidence); never invent a cause or extrapolate spot-checks to other rows. A failed read_web_page call does not by itself prove HTTP 404. Site-wide checks may require a full audit.
The description explains the capability, when to use it, and what to expect.
Inputs83/100
Remove validation rules already expressed in this field’s schema; describe its meaning and usage instead.
auditId
Audit ID containing the finding
Remove validation rules already expressed in this field’s schema; describe its meaning and usage instead.
issueId
Issue reference ID, not the finding row ID
Remove validation rules already expressed in this field’s schema; describe its meaning and usage instead.
webpageId
Affected webpage ID
Remove validation rules already expressed in this field’s schema; describe its meaning and usage instead.
projectId
Atomic project ID from list_projects. Omit to use the configured project; if asked to choose, select one of the accessible returned IDs.
Clear enough to supply this argument.
context
Short purpose of this call for the activity log. Exclude personal data and private source content.
Remove validation rules already expressed in this field’s schema; describe its meaning and usage instead.
llm_model
Use the exact model ID executing this call, from runtime/system context, for usage attribution. Supply it on every Atomic MCP tool call, including discovery and feedback, and update it if the model changes. Use the model ID rather than the client app name. If unavailable, omit it; never guess or ask the user.
{
"type": "object",
"required": [
"success"
],
"properties": {
"url": {
"type": "string",
"description": "Link for resolving the failure or completing the operation."
},
"data": {
"type": "object",
"required": [
"outcome",
"message"
],
"properties": {
"message": {
"type": "string",
"description": "Outcome, explanation or recovery instructions returned by the operation."
},
"outcome": {
"enum": [
"fixed",
"still_present",
"unverified"
],
"type": "string"
}
},
"description": "Operation data; optional fields may be absent."
},
"error": {
"type": "string",
"description": "Why the operation failed."
},
"details": {
"type": "object",
"description": "Diagnostics keyed by errorCode."
},
"message": {
"type": "string",
"description": "Outcome or recovery instructions. Project selection means no action ran."
},
"success": {
"type": "boolean",
"description": "Operation success; on false inspect error/errorCode."
},
"upgrade": {
"type": "object",
"description": "Plan-upgrade guidance for an unavailable capability."
},
"category": {
"type": "string",
"description": "Failure category, such as invalid_input or plan_required."
},
"expected": {
"type": "boolean",
"description": "Whether this is an anticipated access, input, plan or state failure."
},
"projects": {
"type": "array",
"items": {
"type": "object",
"properties": {
"id": {
"type": "number",
"description": "Project ID for projectId."
},
"name": {
"type": "string",
"description": "Project name."
}
},
"description": "Accessible project."
},
"description": "Accessible project choices. Select a projectId and retry."
},
"errorCode": {
"type": "string",
"description": "Failure code for recovery."
},
"retryable": {
"type": "boolean",
"description": "Whether an unchanged request can be retried."
},
"statusCode": {
"type": "number",
"description": "HTTP-style failure status."
},
"executionTime": {
"type": "string",
"description": "Elapsed time in seconds, with an s suffix."
}
},
"description": "Operation result envelope."
}
Original tool metadata
{
"name": "recheck_seo_audit_page",
"title": "Recheck SEO audit page",
"description": "Recheck one persisted SEO audit finding against the current public page after publishing a fix. Use auditId, issueId and webpageId from get_seo_audit_issues or the audit context. The row shows Checking during verification. Only a confirmed fix marks it Fixed and removes it from active audit counts; the row is retained. still_present or unverified never clears the finding. Requires Technical write permission. For broken-link findings, verifies recorded broken destinations against fresh source links and checks any that remain linked; unrelated destinations are not probed. A full audit discovers new broken links. For 404 findings, also checks recorded referring pages and sitemaps: removing the broken references can resolve a finding even if the old destination still returns 404. Explain the returned message and distinguish removed references from a restored destination. unverified is inconclusive, never evidence that the issue is still present or that a fix was not deployed. Report the stated blocker (such as HTTP 429, timeout, or missing evidence); never invent a cause or extrapolate spot-checks to other rows. A failed read_web_page call does not by itself prove HTTP 404. Site-wide checks may require a full audit.",
"inputSchema": {
"type": "object",
"required": [
"auditId",
"issueId",
"webpageId"
],
"properties": {
"auditId": {
"type": "number",
"minimum": 1,
"description": "Audit ID containing the finding"
},
"context": {
"type": "string",
"maxLength": 120,
"description": "Short purpose of this call for the activity log. Exclude personal data and private source content."
},
"issueId": {
"type": "number",
"minimum": 1,
"description": "Issue reference ID, not the finding row ID"
},
"llm_model": {
"type": "string",
"maxLength": 128,
"description": "Use the exact model ID executing this call, from runtime/system context, for usage attribution. Supply it on every Atomic MCP tool call, including discovery and feedback, and update it if the model changes. Use the model ID rather than the client app name. If unavailable, omit it; never guess or ask the user."
},
"projectId": {
"type": "number",
"description": "Atomic project ID from list_projects. Omit to use the configured project; if asked to choose, select one of the accessible returned IDs."
},
"webpageId": {
"type": "number",
"minimum": 1,
"description": "Affected webpage ID"
}
},
"additionalProperties": false
},
"outputSchema": {
"type": "object",
"required": [
"success"
],
"properties": {
"url": {
"type": "string",
"description": "Link for resolving the failure or completing the operation."
},
"data": {
"type": "object",
"required": [
"outcome",
"message"
],
"properties": {
"message": {
"type": "string",
"description": "Outcome, explanation or recovery instructions returned by the operation."
},
"outcome": {
"enum": [
"fixed",
"still_present",
"unverified"
],
"type": "string"
}
},
"description": "Operation data; optional fields may be absent."
},
"error": {
"type": "string",
"description": "Why the operation failed."
},
"details": {
"type": "object",
"description": "Diagnostics keyed by errorCode."
},
"message": {
"type": "string",
"description": "Outcome or recovery instructions. Project selection means no action ran."
},
"success": {
"type": "boolean",
"description": "Operation success; on false inspect error/errorCode."
},
"upgrade": {
"type": "object",
"description": "Plan-upgrade guidance for an unavailable capability."
},
"category": {
"type": "string",
"description": "Failure category, such as invalid_input or plan_required."
},
"expected": {
"type": "boolean",
"description": "Whether this is an anticipated access, input, plan or state failure."
},
"projects": {
"type": "array",
"items": {
"type": "object",
"properties": {
"id": {
"type": "number",
"description": "Project ID for projectId."
},
"name": {
"type": "string",
"description": "Project name."
}
},
"description": "Accessible project."
},
"description": "Accessible project choices. Select a projectId and retry."
},
"errorCode": {
"type": "string",
"description": "Failure code for recovery."
},
"retryable": {
"type": "boolean",
"description": "Whether an unchanged request can be retried."
},
"statusCode": {
"type": "number",
"description": "HTTP-style failure status."
},
"executionTime": {
"type": "string",
"description": "Elapsed time in seconds, with an s suffix."
}
},
"description": "Operation result envelope."
},
"annotations": {
"readOnlyHint": false,
"openWorldHint": true,
"idempotentHint": false,
"destructiveHint": true
}
}
The title clearly communicates the tool’s action and subject. Keep it concise.
Description92/100
Resolve an unknown Content publication after explicitly checking WordPress or Webflow. Use published with the existing external post ID, or not_created only after confirming no post was created. Do not infer from a timeout or title/slug match. not_created allows retry with the original attempt ID and inputs; this tool never creates a post.
The description explains the capability, when to use it, and what to expect.
Inputs77/100
Resolve the mismatch between this description and its schema constraints.
attemptId
Caller-generated identifier for one intended mutation. Reuse it with the identical payload after an uncertain response; use a new identifier for a different intended action.
Clear enough to supply this argument.
resolution
Requested output resolution or detail level supported by the selected renderer.
Resolve the mismatch between this description and its schema constraints.
externalId
Required for published; ID of the verified existing post.
Clear enough to supply this argument.
externalUrl
Verified http(s) URL of the existing post.
Clear enough to supply this argument.
publishedStatus
Publication status filter used for saved reports or content.
Explain the meaning of this value, not just its name.
projectId
Atomic project ID from list_projects. Omit to use the configured project; if asked to choose, select one of the accessible returned IDs.
Clear enough to supply this argument.
context
Short purpose of this call for the activity log. Exclude personal data and private source content.
Clear enough to supply this argument.
llm_model
Use the exact model ID executing this call, from runtime/system context, for usage attribution. Supply it on every Atomic MCP tool call, including discovery and feedback, and update it if the model changes. Use the model ID rather than the client app name. If unavailable, omit it; never guess or ask the user.
{
"type": "object",
"required": [
"success"
],
"properties": {
"url": {
"type": "string",
"description": "Link for resolving the failure or completing the operation."
},
"data": {
"anyOf": [
{
"type": "object",
"required": [
"attemptId",
"outcome",
"platform"
],
"properties": {
"error": {
"type": "string",
"description": "Failure details reported by this operation or its provider."
},
"outcome": {
"enum": [
"failed",
"unknown",
"success",
"scheduled"
],
"type": "string"
},
"platform": {
"type": "string"
},
"attemptId": {
"type": "string",
"description": "Identifier of the intended write attempt, used to reconcile retries with its recorded outcome."
},
"externalId": {
"type": "string"
},
"externalUrl": {
"type": "string"
},
"scheduledAt": {
"type": "string",
"description": "Date and time this task or publication is scheduled to run."
},
"publishedStatus": {
"type": "string"
},
"bookkeepingWarning": {
"type": "string"
}
}
},
{
"type": "object",
"required": [
"attemptId",
"readyToRetry"
],
"properties": {
"attemptId": {
"type": "string",
"description": "Identifier of the intended write attempt, used to reconcile retries with its recorded outcome."
},
"readyToRetry": {
"type": "boolean"
}
}
}
],
"description": "Operation data; optional fields may be absent."
},
"error": {
"type": "string",
"description": "Why the operation failed."
},
"details": {
"type": "object",
"description": "Diagnostics keyed by errorCode."
},
"message": {
"type": "string",
"description": "Outcome or recovery instructions. Project selection means no action ran."
},
"success": {
"type": "boolean",
"description": "Operation success; on false inspect error/errorCode."
},
"upgrade": {
"type": "object",
"description": "Plan-upgrade guidance for an unavailable capability."
},
"category": {
"type": "string",
"description": "Failure category, such as invalid_input or plan_required."
},
"expected": {
"type": "boolean",
"description": "Whether this is an anticipated access, input, plan or state failure."
},
"projects": {
"type": "array",
"items": {
"type": "object",
"properties": {
"id": {
"type": "number",
"description": "Project ID for projectId."
},
"name": {
"type": "string",
"description": "Project name."
}
},
"description": "Accessible project."
},
"description": "Accessible project choices. Select a projectId and retry."
},
"errorCode": {
"type": "string",
"description": "Failure code for recovery."
},
"retryable": {
"type": "boolean",
"description": "Whether an unchanged request can be retried."
},
"statusCode": {
"type": "number",
"description": "HTTP-style failure status."
},
"executionTime": {
"type": "string",
"description": "Elapsed time in seconds, with an s suffix."
}
},
"description": "Operation result envelope."
}
Original tool metadata
{
"name": "reconcile_content_publication",
"title": "Reconcile content publication",
"description": "Resolve an unknown Content publication after explicitly checking WordPress or Webflow. Use published with the existing external post ID, or not_created only after confirming no post was created. Do not infer from a timeout or title/slug match. not_created allows retry with the original attempt ID and inputs; this tool never creates a post.",
"inputSchema": {
"type": "object",
"required": [
"attemptId",
"resolution"
],
"properties": {
"context": {
"type": "string",
"maxLength": 120,
"description": "Short purpose of this call for the activity log. Exclude personal data and private source content."
},
"attemptId": {
"type": "string",
"format": "uuid",
"description": "Caller-generated identifier for one intended mutation. Reuse it with the identical payload after an uncertain response; use a new identifier for a different intended action."
},
"llm_model": {
"type": "string",
"maxLength": 128,
"description": "Use the exact model ID executing this call, from runtime/system context, for usage attribution. Supply it on every Atomic MCP tool call, including discovery and feedback, and update it if the model changes. Use the model ID rather than the client app name. If unavailable, omit it; never guess or ask the user."
},
"projectId": {
"type": "number",
"description": "Atomic project ID from list_projects. Omit to use the configured project; if asked to choose, select one of the accessible returned IDs."
},
"externalId": {
"type": "string",
"description": "Required for published; ID of the verified existing post."
},
"resolution": {
"enum": [
"published",
"not_created"
],
"type": "string",
"description": "Requested output resolution or detail level supported by the selected renderer."
},
"externalUrl": {
"type": "string",
"description": "Verified http(s) URL of the existing post."
},
"publishedStatus": {
"type": "string",
"description": "Publication status filter used for saved reports or content."
}
}
},
"outputSchema": {
"type": "object",
"required": [
"success"
],
"properties": {
"url": {
"type": "string",
"description": "Link for resolving the failure or completing the operation."
},
"data": {
"anyOf": [
{
"type": "object",
"required": [
"attemptId",
"outcome",
"platform"
],
"properties": {
"error": {
"type": "string",
"description": "Failure details reported by this operation or its provider."
},
"outcome": {
"enum": [
"failed",
"unknown",
"success",
"scheduled"
],
"type": "string"
},
"platform": {
"type": "string"
},
"attemptId": {
"type": "string",
"description": "Identifier of the intended write attempt, used to reconcile retries with its recorded outcome."
},
"externalId": {
"type": "string"
},
"externalUrl": {
"type": "string"
},
"scheduledAt": {
"type": "string",
"description": "Date and time this task or publication is scheduled to run."
},
"publishedStatus": {
"type": "string"
},
"bookkeepingWarning": {
"type": "string"
}
}
},
{
"type": "object",
"required": [
"attemptId",
"readyToRetry"
],
"properties": {
"attemptId": {
"type": "string",
"description": "Identifier of the intended write attempt, used to reconcile retries with its recorded outcome."
},
"readyToRetry": {
"type": "boolean"
}
}
}
],
"description": "Operation data; optional fields may be absent."
},
"error": {
"type": "string",
"description": "Why the operation failed."
},
"details": {
"type": "object",
"description": "Diagnostics keyed by errorCode."
},
"message": {
"type": "string",
"description": "Outcome or recovery instructions. Project selection means no action ran."
},
"success": {
"type": "boolean",
"description": "Operation success; on false inspect error/errorCode."
},
"upgrade": {
"type": "object",
"description": "Plan-upgrade guidance for an unavailable capability."
},
"category": {
"type": "string",
"description": "Failure category, such as invalid_input or plan_required."
},
"expected": {
"type": "boolean",
"description": "Whether this is an anticipated access, input, plan or state failure."
},
"projects": {
"type": "array",
"items": {
"type": "object",
"properties": {
"id": {
"type": "number",
"description": "Project ID for projectId."
},
"name": {
"type": "string",
"description": "Project name."
}
},
"description": "Accessible project."
},
"description": "Accessible project choices. Select a projectId and retry."
},
"errorCode": {
"type": "string",
"description": "Failure code for recovery."
},
"retryable": {
"type": "boolean",
"description": "Whether an unchanged request can be retried."
},
"statusCode": {
"type": "number",
"description": "HTTP-style failure status."
},
"executionTime": {
"type": "string",
"description": "Elapsed time in seconds, with an s suffix."
}
},
"description": "Operation result envelope."
},
"annotations": {
"readOnlyHint": false,
"openWorldHint": false,
"idempotentHint": false,
"destructiveHint": true
}
}
The title clearly communicates the tool’s action and subject. Keep it concise.
Description78/100
Explicitly re-index one knowledge file using an idempotency key. Reuse the same key when retrying the same caller action.
Read the target and native capabilities before constructing this operation. Reuse the same attemptId and identical payload only for a retry of the same intended action; a new action needs a new key.
The description explains the capability, when to use it, and what to expect.
Inputs85/100
Remove validation rules already expressed in this field’s schema; describe its meaning and usage instead.
fileId
Explicit knowledge file ID to re-index.
Remove validation rules already expressed in this field’s schema; describe its meaning and usage instead.
idempotencyKey
Caller-stable key for this re-index action.
Remove validation rules already expressed in this field’s schema; describe its meaning and usage instead.
projectId
Atomic project ID from list_projects. Omit to use the configured project; if asked to choose, select one of the accessible returned IDs.
Clear enough to supply this argument.
context
Short purpose of this call for the activity log. Exclude personal data and private source content.
Remove validation rules already expressed in this field’s schema; describe its meaning and usage instead.
llm_model
Use the exact model ID executing this call, from runtime/system context, for usage attribution. Supply it on every Atomic MCP tool call, including discovery and feedback, and update it if the model changes. Use the model ID rather than the client app name. If unavailable, omit it; never guess or ask the user.
The title clearly communicates the tool’s action and subject. Keep it concise.
Description77/100
Store a durable memory for the current agent. Use it for lasting preferences, lessons learned, project conventions, or reusable heuristics that should persist across future sessions.
The description explains the capability, when to use it, and what to expect.
Inputs79/100
Explain the meaning of this value, not just its name.
content
The durable memory to store for the current agent
Explain the meaning of this value, not just its name.
kind
Optional memory type. Use "improvement" for durable self-improvement rules.
Remove validation rules already expressed in this field’s schema; describe its meaning and usage instead.
tags
Optional tags to make the memory easier to recall later
Remove validation rules already expressed in this field’s schema; describe its meaning and usage instead.
projectId
Atomic project ID from list_projects. Omit to use the configured project; if asked to choose, select one of the accessible returned IDs.
Clear enough to supply this argument.
context
Short purpose of this call for the activity log. Exclude personal data and private source content.
Remove validation rules already expressed in this field’s schema; describe its meaning and usage instead.
llm_model
Use the exact model ID executing this call, from runtime/system context, for usage attribution. Supply it on every Atomic MCP tool call, including discovery and feedback, and update it if the model changes. Use the model ID rather than the client app name. If unavailable, omit it; never guess or ask the user.
{
"type": "object",
"required": [
"success"
],
"properties": {
"url": {
"type": "string",
"description": "Link for resolving the failure or completing the operation."
},
"data": {
"type": "object",
"required": [
"success",
"entry"
],
"properties": {
"entry": {
"type": "object",
"required": [
"agentId",
"content",
"kind",
"recallCount",
"createdAt",
"updatedAt"
],
"properties": {
"id": {
"type": "string",
"description": "Identifier of this returned resource. Use it for subsequent reads or edits of the same resource."
},
"kind": {
"enum": [
"memory",
"improvement"
],
"type": "string",
"description": "Discriminator identifying the variant of this returned item."
},
"tags": {
"anyOf": [
{
"type": "null"
},
{
"type": "array",
"items": {
"type": "string"
}
}
]
},
"agentId": {
"type": "number",
"description": "Saved Atomic agent associated with this resource or execution."
},
"content": {
"type": "string",
"description": "Returned content body in the format described by the containing resource."
},
"createdAt": {
"type": "string",
"format": "date-time",
"description": "Date and time this record was created, serialized as ISO 8601."
},
"updatedAt": {
"type": "string",
"format": "date-time",
"description": "Date and time this record was last updated, serialized as ISO 8601."
},
"recallCount": {
"type": "number"
},
"lastRecalledAt": {
"anyOf": [
{
"type": "null"
},
{
"type": "string",
"format": "date-time",
"description": "Timestamp serialized as an ISO 8601 date and time."
}
]
},
"sourceConversationId": {
"anyOf": [
{
"type": "null"
},
{
"type": "string"
}
],
"description": "Conversation that produced this saved result."
}
}
},
"success": {
"type": "boolean",
"description": "Whether this nested operation completed successfully. Inspect the containing result for details."
}
},
"description": "Operation data; optional fields may be absent."
},
"error": {
"type": "string",
"description": "Why the operation failed."
},
"details": {
"type": "object",
"description": "Diagnostics keyed by errorCode."
},
"message": {
"type": "string",
"description": "Outcome or recovery instructions. Project selection means no action ran."
},
"success": {
"type": "boolean",
"description": "Operation success; on false inspect error/errorCode."
},
"upgrade": {
"type": "object",
"description": "Plan-upgrade guidance for an unavailable capability."
},
"category": {
"type": "string",
"description": "Failure category, such as invalid_input or plan_required."
},
"expected": {
"type": "boolean",
"description": "Whether this is an anticipated access, input, plan or state failure."
},
"projects": {
"type": "array",
"items": {
"type": "object",
"properties": {
"id": {
"type": "number",
"description": "Project ID for projectId."
},
"name": {
"type": "string",
"description": "Project name."
}
},
"description": "Accessible project."
},
"description": "Accessible project choices. Select a projectId and retry."
},
"errorCode": {
"type": "string",
"description": "Failure code for recovery."
},
"retryable": {
"type": "boolean",
"description": "Whether an unchanged request can be retried."
},
"statusCode": {
"type": "number",
"description": "HTTP-style failure status."
},
"executionTime": {
"type": "string",
"description": "Elapsed time in seconds, with an s suffix."
}
},
"description": "Operation result envelope."
}
Original tool metadata
{
"name": "remember",
"title": "Remember",
"description": "Store a durable memory for the current agent. Use it for lasting preferences, lessons learned, project conventions, or reusable heuristics that should persist across future sessions.",
"inputSchema": {
"type": "object",
"required": [
"content"
],
"properties": {
"kind": {
"enum": [
"memory",
"improvement"
],
"type": "string",
"description": "Optional memory type. Use \"improvement\" for durable self-improvement rules."
},
"tags": {
"type": "array",
"items": {
"type": "string"
},
"description": "Optional tags to make the memory easier to recall later"
},
"content": {
"type": "string",
"description": "The durable memory to store for the current agent"
},
"context": {
"type": "string",
"maxLength": 120,
"description": "Short purpose of this call for the activity log. Exclude personal data and private source content."
},
"llm_model": {
"type": "string",
"maxLength": 128,
"description": "Use the exact model ID executing this call, from runtime/system context, for usage attribution. Supply it on every Atomic MCP tool call, including discovery and feedback, and update it if the model changes. Use the model ID rather than the client app name. If unavailable, omit it; never guess or ask the user."
},
"projectId": {
"type": "number",
"description": "Atomic project ID from list_projects. Omit to use the configured project; if asked to choose, select one of the accessible returned IDs."
}
}
},
"outputSchema": {
"type": "object",
"required": [
"success"
],
"properties": {
"url": {
"type": "string",
"description": "Link for resolving the failure or completing the operation."
},
"data": {
"type": "object",
"required": [
"success",
"entry"
],
"properties": {
"entry": {
"type": "object",
"required": [
"agentId",
"content",
"kind",
"recallCount",
"createdAt",
"updatedAt"
],
"properties": {
"id": {
"type": "string",
"description": "Identifier of this returned resource. Use it for subsequent reads or edits of the same resource."
},
"kind": {
"enum": [
"memory",
"improvement"
],
"type": "string",
"description": "Discriminator identifying the variant of this returned item."
},
"tags": {
"anyOf": [
{
"type": "null"
},
{
"type": "array",
"items": {
"type": "string"
}
}
]
},
"agentId": {
"type": "number",
"description": "Saved Atomic agent associated with this resource or execution."
},
"content": {
"type": "string",
"description": "Returned content body in the format described by the containing resource."
},
"createdAt": {
"type": "string",
"format": "date-time",
"description": "Date and time this record was created, serialized as ISO 8601."
},
"updatedAt": {
"type": "string",
"format": "date-time",
"description": "Date and time this record was last updated, serialized as ISO 8601."
},
"recallCount": {
"type": "number"
},
"lastRecalledAt": {
"anyOf": [
{
"type": "null"
},
{
"type": "string",
"format": "date-time",
"description": "Timestamp serialized as an ISO 8601 date and time."
}
]
},
"sourceConversationId": {
"anyOf": [
{
"type": "null"
},
{
"type": "string"
}
],
"description": "Conversation that produced this saved result."
}
}
},
"success": {
"type": "boolean",
"description": "Whether this nested operation completed successfully. Inspect the containing result for details."
}
},
"description": "Operation data; optional fields may be absent."
},
"error": {
"type": "string",
"description": "Why the operation failed."
},
"details": {
"type": "object",
"description": "Diagnostics keyed by errorCode."
},
"message": {
"type": "string",
"description": "Outcome or recovery instructions. Project selection means no action ran."
},
"success": {
"type": "boolean",
"description": "Operation success; on false inspect error/errorCode."
},
"upgrade": {
"type": "object",
"description": "Plan-upgrade guidance for an unavailable capability."
},
"category": {
"type": "string",
"description": "Failure category, such as invalid_input or plan_required."
},
"expected": {
"type": "boolean",
"description": "Whether this is an anticipated access, input, plan or state failure."
},
"projects": {
"type": "array",
"items": {
"type": "object",
"properties": {
"id": {
"type": "number",
"description": "Project ID for projectId."
},
"name": {
"type": "string",
"description": "Project name."
}
},
"description": "Accessible project."
},
"description": "Accessible project choices. Select a projectId and retry."
},
"errorCode": {
"type": "string",
"description": "Failure code for recovery."
},
"retryable": {
"type": "boolean",
"description": "Whether an unchanged request can be retried."
},
"statusCode": {
"type": "number",
"description": "HTTP-style failure status."
},
"executionTime": {
"type": "string",
"description": "Elapsed time in seconds, with an s suffix."
}
},
"description": "Operation result envelope."
},
"annotations": {
"readOnlyHint": false,
"openWorldHint": false,
"idempotentHint": false,
"destructiveHint": false
}
}
The title clearly communicates the tool’s action and subject. Keep it concise.
Description80/100
Reorder columns in a sheet. The columnIds array must include every column in the sheet exactly once, in the desired order.
The description explains the capability, when to use it, and what to expect.
Inputs94/100
Remove validation rules already expressed in this field’s schema; describe its meaning and usage instead.
sheetId
Sheet ID from get_grid or create_grid_sheet; the selected sheet must belong to the current project.
Clear enough to supply this argument.
columnIds
All column IDs in desired zero-based order.
Clear enough to supply this argument.
projectId
Atomic project ID from list_projects. Omit to use the configured project; if asked to choose, select one of the accessible returned IDs.
Clear enough to supply this argument.
context
Short purpose of this call for the activity log. Exclude personal data and private source content.
Remove validation rules already expressed in this field’s schema; describe its meaning and usage instead.
llm_model
Use the exact model ID executing this call, from runtime/system context, for usage attribution. Supply it on every Atomic MCP tool call, including discovery and feedback, and update it if the model changes. Use the model ID rather than the client app name. If unavailable, omit it; never guess or ask the user.
The title clearly communicates the tool’s action and subject. Keep it concise.
Description77/100
Reorder rows in a sheet. The rowIds array must include every row in the sheet exactly once, in the desired order.
The description explains the capability, when to use it, and what to expect.
Inputs92/100
Remove validation rules already expressed in this field’s schema; describe its meaning and usage instead.
sheetId
Sheet ID from get_grid or create_grid_sheet; the selected sheet must belong to the current project.
Clear enough to supply this argument.
rowIds
All row IDs in desired zero-based order.
Clear enough to supply this argument.
projectId
Atomic project ID from list_projects. Omit to use the configured project; if asked to choose, select one of the accessible returned IDs.
Clear enough to supply this argument.
context
Short purpose of this call for the activity log. Exclude personal data and private source content.
Remove validation rules already expressed in this field’s schema; describe its meaning and usage instead.
llm_model
Use the exact model ID executing this call, from runtime/system context, for usage attribution. Supply it on every Atomic MCP tool call, including discovery and feedback, and update it if the model changes. Use the model ID rather than the client app name. If unavailable, omit it; never guess or ask the user.
{
"type": "object",
"required": [
"success"
],
"properties": {
"url": {
"type": "string",
"description": "Link for resolving the failure or completing the operation."
},
"data": {
"type": "array",
"items": {
"type": "object",
"required": [
"sheetId",
"position",
"createdAt",
"updatedAt"
],
"properties": {
"id": {
"type": "number",
"description": "Identifier of this returned resource. Use it for subsequent reads or edits of the same resource."
},
"sheetId": {
"type": "number",
"description": "Grid sheet that owns this row, column or cell."
},
"position": {
"type": "number",
"description": "Saved ordering position or visual editor coordinates for this item."
},
"createdAt": {
"type": "string",
"format": "date-time",
"description": "Date and time this record was created, serialized as ISO 8601."
},
"updatedAt": {
"type": "string",
"format": "date-time",
"description": "Date and time this record was last updated, serialized as ISO 8601."
}
}
},
"description": "Operation data; optional fields may be absent."
},
"error": {
"type": "string",
"description": "Why the operation failed."
},
"details": {
"type": "object",
"description": "Diagnostics keyed by errorCode."
},
"message": {
"type": "string",
"description": "Outcome or recovery instructions. Project selection means no action ran."
},
"success": {
"type": "boolean",
"description": "Operation success; on false inspect error/errorCode."
},
"upgrade": {
"type": "object",
"description": "Plan-upgrade guidance for an unavailable capability."
},
"category": {
"type": "string",
"description": "Failure category, such as invalid_input or plan_required."
},
"expected": {
"type": "boolean",
"description": "Whether this is an anticipated access, input, plan or state failure."
},
"projects": {
"type": "array",
"items": {
"type": "object",
"properties": {
"id": {
"type": "number",
"description": "Project ID for projectId."
},
"name": {
"type": "string",
"description": "Project name."
}
},
"description": "Accessible project."
},
"description": "Accessible project choices. Select a projectId and retry."
},
"errorCode": {
"type": "string",
"description": "Failure code for recovery."
},
"retryable": {
"type": "boolean",
"description": "Whether an unchanged request can be retried."
},
"statusCode": {
"type": "number",
"description": "HTTP-style failure status."
},
"executionTime": {
"type": "string",
"description": "Elapsed time in seconds, with an s suffix."
}
},
"description": "Operation result envelope."
}
Original tool metadata
{
"name": "reorder_grid_rows",
"title": "Reorder grid rows",
"description": "Reorder rows in a sheet. The rowIds array must include every row in the sheet exactly once, in the desired order.",
"inputSchema": {
"type": "object",
"required": [
"sheetId",
"rowIds"
],
"properties": {
"rowIds": {
"type": "array",
"items": {
"type": "number"
},
"description": "All row IDs in desired zero-based order."
},
"context": {
"type": "string",
"maxLength": 120,
"description": "Short purpose of this call for the activity log. Exclude personal data and private source content."
},
"sheetId": {
"type": "number",
"description": "Sheet ID from get_grid or create_grid_sheet; the selected sheet must belong to the current project."
},
"llm_model": {
"type": "string",
"maxLength": 128,
"description": "Use the exact model ID executing this call, from runtime/system context, for usage attribution. Supply it on every Atomic MCP tool call, including discovery and feedback, and update it if the model changes. Use the model ID rather than the client app name. If unavailable, omit it; never guess or ask the user."
},
"projectId": {
"type": "number",
"description": "Atomic project ID from list_projects. Omit to use the configured project; if asked to choose, select one of the accessible returned IDs."
}
}
},
"outputSchema": {
"type": "object",
"required": [
"success"
],
"properties": {
"url": {
"type": "string",
"description": "Link for resolving the failure or completing the operation."
},
"data": {
"type": "array",
"items": {
"type": "object",
"required": [
"sheetId",
"position",
"createdAt",
"updatedAt"
],
"properties": {
"id": {
"type": "number",
"description": "Identifier of this returned resource. Use it for subsequent reads or edits of the same resource."
},
"sheetId": {
"type": "number",
"description": "Grid sheet that owns this row, column or cell."
},
"position": {
"type": "number",
"description": "Saved ordering position or visual editor coordinates for this item."
},
"createdAt": {
"type": "string",
"format": "date-time",
"description": "Date and time this record was created, serialized as ISO 8601."
},
"updatedAt": {
"type": "string",
"format": "date-time",
"description": "Date and time this record was last updated, serialized as ISO 8601."
}
}
},
"description": "Operation data; optional fields may be absent."
},
"error": {
"type": "string",
"description": "Why the operation failed."
},
"details": {
"type": "object",
"description": "Diagnostics keyed by errorCode."
},
"message": {
"type": "string",
"description": "Outcome or recovery instructions. Project selection means no action ran."
},
"success": {
"type": "boolean",
"description": "Operation success; on false inspect error/errorCode."
},
"upgrade": {
"type": "object",
"description": "Plan-upgrade guidance for an unavailable capability."
},
"category": {
"type": "string",
"description": "Failure category, such as invalid_input or plan_required."
},
"expected": {
"type": "boolean",
"description": "Whether this is an anticipated access, input, plan or state failure."
},
"projects": {
"type": "array",
"items": {
"type": "object",
"properties": {
"id": {
"type": "number",
"description": "Project ID for projectId."
},
"name": {
"type": "string",
"description": "Project name."
}
},
"description": "Accessible project."
},
"description": "Accessible project choices. Select a projectId and retry."
},
"errorCode": {
"type": "string",
"description": "Failure code for recovery."
},
"retryable": {
"type": "boolean",
"description": "Whether an unchanged request can be retried."
},
"statusCode": {
"type": "number",
"description": "HTTP-style failure status."
},
"executionTime": {
"type": "string",
"description": "Elapsed time in seconds, with an s suffix."
}
},
"description": "Operation result envelope."
},
"annotations": {
"readOnlyHint": false,
"openWorldHint": false,
"idempotentHint": false,
"destructiveHint": true
}
}
The title clearly communicates the tool’s action and subject. Keep it concise.
Description78/100
Reorder sheets in a grid. The sheetIds array must include every sheet in the grid exactly once, in the desired order.
The description explains the capability, when to use it, and what to expect.
Inputs94/100
Remove validation rules already expressed in this field’s schema; describe its meaning and usage instead.
gridId
Existing project grid ID from get_grids or create_grid.
Clear enough to supply this argument.
sheetIds
All sheet IDs in desired zero-based order.
Clear enough to supply this argument.
projectId
Atomic project ID from list_projects. Omit to use the configured project; if asked to choose, select one of the accessible returned IDs.
Clear enough to supply this argument.
context
Short purpose of this call for the activity log. Exclude personal data and private source content.
Remove validation rules already expressed in this field’s schema; describe its meaning and usage instead.
llm_model
Use the exact model ID executing this call, from runtime/system context, for usage attribution. Supply it on every Atomic MCP tool call, including discovery and feedback, and update it if the model changes. Use the model ID rather than the client app name. If unavailable, omit it; never guess or ask the user.
{
"type": "object",
"required": [
"success"
],
"properties": {
"url": {
"type": "string",
"description": "Link for resolving the failure or completing the operation."
},
"data": {
"type": "array",
"items": {
"type": "object",
"required": [
"gridId",
"name",
"position",
"createdAt",
"updatedAt"
],
"properties": {
"id": {
"type": "number",
"description": "Identifier of this returned resource. Use it for subsequent reads or edits of the same resource."
},
"name": {
"type": "string",
"description": "Human-readable name of this resource."
},
"gridId": {
"type": "number",
"description": "Grid that owns these sheets or results."
},
"position": {
"type": "number",
"description": "Saved ordering position or visual editor coordinates for this item."
},
"createdAt": {
"type": "string",
"format": "date-time",
"description": "Date and time this record was created, serialized as ISO 8601."
},
"updatedAt": {
"type": "string",
"format": "date-time",
"description": "Date and time this record was last updated, serialized as ISO 8601."
}
}
},
"description": "Operation data; optional fields may be absent."
},
"error": {
"type": "string",
"description": "Why the operation failed."
},
"details": {
"type": "object",
"description": "Diagnostics keyed by errorCode."
},
"message": {
"type": "string",
"description": "Outcome or recovery instructions. Project selection means no action ran."
},
"success": {
"type": "boolean",
"description": "Operation success; on false inspect error/errorCode."
},
"upgrade": {
"type": "object",
"description": "Plan-upgrade guidance for an unavailable capability."
},
"category": {
"type": "string",
"description": "Failure category, such as invalid_input or plan_required."
},
"expected": {
"type": "boolean",
"description": "Whether this is an anticipated access, input, plan or state failure."
},
"projects": {
"type": "array",
"items": {
"type": "object",
"properties": {
"id": {
"type": "number",
"description": "Project ID for projectId."
},
"name": {
"type": "string",
"description": "Project name."
}
},
"description": "Accessible project."
},
"description": "Accessible project choices. Select a projectId and retry."
},
"errorCode": {
"type": "string",
"description": "Failure code for recovery."
},
"retryable": {
"type": "boolean",
"description": "Whether an unchanged request can be retried."
},
"statusCode": {
"type": "number",
"description": "HTTP-style failure status."
},
"executionTime": {
"type": "string",
"description": "Elapsed time in seconds, with an s suffix."
}
},
"description": "Operation result envelope."
}
Original tool metadata
{
"name": "reorder_grid_sheets",
"title": "Reorder grid sheets",
"description": "Reorder sheets in a grid. The sheetIds array must include every sheet in the grid exactly once, in the desired order.",
"inputSchema": {
"type": "object",
"required": [
"gridId",
"sheetIds"
],
"properties": {
"gridId": {
"type": "number",
"description": "Existing project grid ID from get_grids or create_grid."
},
"context": {
"type": "string",
"maxLength": 120,
"description": "Short purpose of this call for the activity log. Exclude personal data and private source content."
},
"sheetIds": {
"type": "array",
"items": {
"type": "number"
},
"description": "All sheet IDs in desired zero-based order."
},
"llm_model": {
"type": "string",
"maxLength": 128,
"description": "Use the exact model ID executing this call, from runtime/system context, for usage attribution. Supply it on every Atomic MCP tool call, including discovery and feedback, and update it if the model changes. Use the model ID rather than the client app name. If unavailable, omit it; never guess or ask the user."
},
"projectId": {
"type": "number",
"description": "Atomic project ID from list_projects. Omit to use the configured project; if asked to choose, select one of the accessible returned IDs."
}
}
},
"outputSchema": {
"type": "object",
"required": [
"success"
],
"properties": {
"url": {
"type": "string",
"description": "Link for resolving the failure or completing the operation."
},
"data": {
"type": "array",
"items": {
"type": "object",
"required": [
"gridId",
"name",
"position",
"createdAt",
"updatedAt"
],
"properties": {
"id": {
"type": "number",
"description": "Identifier of this returned resource. Use it for subsequent reads or edits of the same resource."
},
"name": {
"type": "string",
"description": "Human-readable name of this resource."
},
"gridId": {
"type": "number",
"description": "Grid that owns these sheets or results."
},
"position": {
"type": "number",
"description": "Saved ordering position or visual editor coordinates for this item."
},
"createdAt": {
"type": "string",
"format": "date-time",
"description": "Date and time this record was created, serialized as ISO 8601."
},
"updatedAt": {
"type": "string",
"format": "date-time",
"description": "Date and time this record was last updated, serialized as ISO 8601."
}
}
},
"description": "Operation data; optional fields may be absent."
},
"error": {
"type": "string",
"description": "Why the operation failed."
},
"details": {
"type": "object",
"description": "Diagnostics keyed by errorCode."
},
"message": {
"type": "string",
"description": "Outcome or recovery instructions. Project selection means no action ran."
},
"success": {
"type": "boolean",
"description": "Operation success; on false inspect error/errorCode."
},
"upgrade": {
"type": "object",
"description": "Plan-upgrade guidance for an unavailable capability."
},
"category": {
"type": "string",
"description": "Failure category, such as invalid_input or plan_required."
},
"expected": {
"type": "boolean",
"description": "Whether this is an anticipated access, input, plan or state failure."
},
"projects": {
"type": "array",
"items": {
"type": "object",
"properties": {
"id": {
"type": "number",
"description": "Project ID for projectId."
},
"name": {
"type": "string",
"description": "Project name."
}
},
"description": "Accessible project."
},
"description": "Accessible project choices. Select a projectId and retry."
},
"errorCode": {
"type": "string",
"description": "Failure code for recovery."
},
"retryable": {
"type": "boolean",
"description": "Whether an unchanged request can be retried."
},
"statusCode": {
"type": "number",
"description": "HTTP-style failure status."
},
"executionTime": {
"type": "string",
"description": "Elapsed time in seconds, with an s suffix."
}
},
"description": "Operation result envelope."
},
"annotations": {
"readOnlyHint": false,
"openWorldHint": false,
"idempotentHint": false,
"destructiveHint": true
}
}
The title clearly communicates the tool’s action and subject. Keep it concise.
Description82/100
Request rapid URL indexing through the project Google Search Console connection. If urls are provided, request indexing for those URLs. If urls are omitted, load project sitemap URLs and submit only URLs that are not already indexed or previously submitted in the indexing status database.
The description explains the capability, when to use it, and what to expect.
Inputs93/100
Remove validation rules already expressed in this field’s schema; describe its meaning and usage instead.
urls
Optional URLs to request indexing for. Omit this field to submit all eligible URLs from the project sitemaps.
Clear enough to supply this argument.
projectId
Atomic project ID from list_projects. Omit to use the configured project; if asked to choose, select one of the accessible returned IDs.
Clear enough to supply this argument.
context
Short purpose of this call for the activity log. Exclude personal data and private source content.
Remove validation rules already expressed in this field’s schema; describe its meaning and usage instead.
llm_model
Use the exact model ID executing this call, from runtime/system context, for usage attribution. Supply it on every Atomic MCP tool call, including discovery and feedback, and update it if the model changes. Use the model ID rather than the client app name. If unavailable, omit it; never guess or ask the user.
{
"type": "object",
"required": [
"success"
],
"properties": {
"url": {
"type": "string",
"description": "Link for resolving the failure or completing the operation."
},
"data": {
"anyOf": [
{
"type": "array",
"items": {
"type": "string"
}
},
{
"type": "object",
"required": [
"sitemapUrlCount",
"knownUrlCount",
"candidateUrlCount",
"requestedCount",
"alreadySubmittedCount",
"requestedUrls",
"alreadySubmittedUrls"
],
"properties": {
"knownUrlCount": {
"type": "number"
},
"requestedUrls": {
"type": "array",
"items": {
"type": "string"
}
},
"requestedCount": {
"type": "number"
},
"sitemapUrlCount": {
"type": "number"
},
"candidateUrlCount": {
"type": "number"
},
"alreadySubmittedUrls": {
"type": "array",
"items": {
"type": "string"
}
},
"alreadySubmittedCount": {
"type": "number"
}
}
}
],
"description": "Operation data; optional fields may be absent."
},
"error": {
"type": "string",
"description": "Why the operation failed."
},
"details": {
"type": "object",
"description": "Diagnostics keyed by errorCode."
},
"message": {
"type": "string",
"description": "Outcome or recovery instructions. Project selection means no action ran."
},
"success": {
"type": "boolean",
"description": "Operation success; on false inspect error/errorCode."
},
"upgrade": {
"type": "object",
"description": "Plan-upgrade guidance for an unavailable capability."
},
"category": {
"type": "string",
"description": "Failure category, such as invalid_input or plan_required."
},
"expected": {
"type": "boolean",
"description": "Whether this is an anticipated access, input, plan or state failure."
},
"projects": {
"type": "array",
"items": {
"type": "object",
"properties": {
"id": {
"type": "number",
"description": "Project ID for projectId."
},
"name": {
"type": "string",
"description": "Project name."
}
},
"description": "Accessible project."
},
"description": "Accessible project choices. Select a projectId and retry."
},
"errorCode": {
"type": "string",
"description": "Failure code for recovery."
},
"retryable": {
"type": "boolean",
"description": "Whether an unchanged request can be retried."
},
"statusCode": {
"type": "number",
"description": "HTTP-style failure status."
},
"executionTime": {
"type": "string",
"description": "Elapsed time in seconds, with an s suffix."
}
},
"description": "Operation result envelope."
}
Original tool metadata
{
"name": "request_rapid_url_indexing",
"title": "Request rapid URL indexing",
"description": "Request rapid URL indexing through the project Google Search Console connection. If urls are provided, request indexing for those URLs. If urls are omitted, load project sitemap URLs and submit only URLs that are not already indexed or previously submitted in the indexing status database.",
"inputSchema": {
"type": "object",
"required": [],
"properties": {
"urls": {
"type": "array",
"items": {
"type": "string",
"description": "Absolute URL on the project domain"
},
"description": "Optional URLs to request indexing for. Omit this field to submit all eligible URLs from the project sitemaps."
},
"context": {
"type": "string",
"maxLength": 120,
"description": "Short purpose of this call for the activity log. Exclude personal data and private source content."
},
"llm_model": {
"type": "string",
"maxLength": 128,
"description": "Use the exact model ID executing this call, from runtime/system context, for usage attribution. Supply it on every Atomic MCP tool call, including discovery and feedback, and update it if the model changes. Use the model ID rather than the client app name. If unavailable, omit it; never guess or ask the user."
},
"projectId": {
"type": "number",
"description": "Atomic project ID from list_projects. Omit to use the configured project; if asked to choose, select one of the accessible returned IDs."
}
}
},
"outputSchema": {
"type": "object",
"required": [
"success"
],
"properties": {
"url": {
"type": "string",
"description": "Link for resolving the failure or completing the operation."
},
"data": {
"anyOf": [
{
"type": "array",
"items": {
"type": "string"
}
},
{
"type": "object",
"required": [
"sitemapUrlCount",
"knownUrlCount",
"candidateUrlCount",
"requestedCount",
"alreadySubmittedCount",
"requestedUrls",
"alreadySubmittedUrls"
],
"properties": {
"knownUrlCount": {
"type": "number"
},
"requestedUrls": {
"type": "array",
"items": {
"type": "string"
}
},
"requestedCount": {
"type": "number"
},
"sitemapUrlCount": {
"type": "number"
},
"candidateUrlCount": {
"type": "number"
},
"alreadySubmittedUrls": {
"type": "array",
"items": {
"type": "string"
}
},
"alreadySubmittedCount": {
"type": "number"
}
}
}
],
"description": "Operation data; optional fields may be absent."
},
"error": {
"type": "string",
"description": "Why the operation failed."
},
"details": {
"type": "object",
"description": "Diagnostics keyed by errorCode."
},
"message": {
"type": "string",
"description": "Outcome or recovery instructions. Project selection means no action ran."
},
"success": {
"type": "boolean",
"description": "Operation success; on false inspect error/errorCode."
},
"upgrade": {
"type": "object",
"description": "Plan-upgrade guidance for an unavailable capability."
},
"category": {
"type": "string",
"description": "Failure category, such as invalid_input or plan_required."
},
"expected": {
"type": "boolean",
"description": "Whether this is an anticipated access, input, plan or state failure."
},
"projects": {
"type": "array",
"items": {
"type": "object",
"properties": {
"id": {
"type": "number",
"description": "Project ID for projectId."
},
"name": {
"type": "string",
"description": "Project name."
}
},
"description": "Accessible project."
},
"description": "Accessible project choices. Select a projectId and retry."
},
"errorCode": {
"type": "string",
"description": "Failure code for recovery."
},
"retryable": {
"type": "boolean",
"description": "Whether an unchanged request can be retried."
},
"statusCode": {
"type": "number",
"description": "HTTP-style failure status."
},
"executionTime": {
"type": "string",
"description": "Elapsed time in seconds, with an s suffix."
}
},
"description": "Operation result envelope."
},
"annotations": {
"readOnlyHint": false,
"openWorldHint": true,
"idempotentHint": false,
"destructiveHint": false
}
}
The title clearly communicates the tool’s action and subject. Keep it concise.
Description92/100
Revise, approve, or request changes to an existing Social post. Read get_grid_sheet first and supply its current revision. Revise replaces the complete editable content and returns the post to awaiting approval; approve separately using the returned revision. Server-owned review history and actor are preserved. This does not publish or schedule the post. Never use update_grid_cell(s) to revise existing Social posts.
The description explains the capability, when to use it, and what to expect.
Inputs92/100
Remove validation rules already expressed in this field’s schema; describe its meaning and usage instead.
sheetId
Sheet ID from get_grid or create_grid_sheet; the selected sheet must belong to the current project.
Remove validation rules already expressed in this field’s schema; describe its meaning and usage instead.
rowId
Existing row ID from get_grid_sheet_rows/get_grid_sheet, not its mutable visual position.
Remove validation rules already expressed in this field’s schema; describe its meaning and usage instead.
columnId
Existing column ID from the selected sheet in get_grid/get_grid_sheet, not the display name or position.
Remove validation rules already expressed in this field’s schema; describe its meaning and usage instead.
action
Review or mutation action to perform on the identified current item.
Clear enough to supply this argument.
expectedRevision
Revision returned by the latest read. The write is rejected if the saved item changed after that read.
Clear enough to supply this argument.
feedback
Required for request_changes.
Explain the meaning of this value, not just its name.
content › platform
Destination social platform for this post.
Remove validation rules already expressed in this field’s schema; describe its meaning and usage instead.
content › postType
Social post format supported by the selected platform.
Clear enough to supply this argument.
content › authorName
Display name attributed to the social post's author.
Clear enough to supply this argument.
content › body
Full editable social post text or document body for this revision.
Clear enough to supply this argument.
content › authorSubtitle
Secondary author line shown in the social post's visual layout.
Clear enough to supply this argument.
content › avatarUrl
Public image URL for the author's avatar.
Clear enough to supply this argument.
content › sourceUrl
Original source URL supporting the post or content.
Clear enough to supply this argument.
content › sourceTitle
Human-readable title of the original source.
Clear enough to supply this argument.
content › imageUrl
Public URL of the image used by this item.
Clear enough to supply this argument.
content › title
Human-readable title for this item.
Clear enough to supply this argument.
content › subtitle
Secondary text displayed under the main title.
Clear enough to supply this argument.
content › videoUrl
Public URL of the video used by this item.
Clear enough to supply this argument.
content › linkUrl
Destination URL linked from the post.
Clear enough to supply this argument.
content › publication
Connected publication used for the social or newsletter post.
Clear enough to supply this argument.
content › subreddit
Target subreddit name for a Reddit post.
Clear enough to supply this argument.
content › flairId
Native subreddit flair identifier for the post.
Clear enough to supply this argument.
content › boardId
Native Pinterest board identifier for the post.
Clear enough to supply this argument.
content › categoryId
Native destination category identifier for the post.
Clear enough to supply this argument.
content › imageUrls
Original carousel images in slide order.
Clear enough to supply this argument.
content › imageAltTexts
Accessible descriptions corresponding to imageUrls in the same order.
Clear enough to supply this argument.
content › sendToNewsletter
Whether the approved publication should also be delivered as a newsletter.
Clear enough to supply this argument.
content › isPaidContent
Whether the destination publication treats the post as paid content.
Clear enough to supply this argument.
projectId
Atomic project ID from list_projects. Omit to use the configured project; if asked to choose, select one of the accessible returned IDs.
Remove validation rules already expressed in this field’s schema; describe its meaning and usage instead.
context
Short purpose of this call for the activity log. Exclude personal data and private source content.
Remove validation rules already expressed in this field’s schema; describe its meaning and usage instead.
llm_model
Use the exact model ID executing this call, from runtime/system context, for usage attribution. Supply it on every Atomic MCP tool call, including discovery and feedback, and update it if the model changes. Use the model ID rather than the client app name. If unavailable, omit it; never guess or ask the user.
{
"type": "object",
"required": [
"success"
],
"properties": {
"url": {
"type": "string",
"description": "Link for resolving the failure or completing the operation."
},
"data": {
"type": "object",
"required": [
"rowId",
"columnId",
"status",
"createdAt",
"updatedAt"
],
"properties": {
"id": {
"type": "number",
"description": "Identifier of this returned resource. Use it for subsequent reads or edits of the same resource."
},
"error": {
"anyOf": [
{
"type": "null"
},
{
"type": "string"
}
],
"description": "Failure details reported by this operation or its provider."
},
"rowId": {
"type": "number",
"description": "Grid row identifier for this item."
},
"value": {
"description": "Returned value for the containing field, setting or observation."
},
"status": {
"enum": [
"EMPTY",
"PENDING",
"RUNNING",
"WAITING_FOR_APPROVAL",
"COMPLETED",
"FAILED",
"CANCELED"
],
"type": "string",
"description": "Current saved or execution state reported by the operation."
},
"columnId": {
"type": "number",
"description": "Grid column identifier for this item."
},
"createdAt": {
"type": "string",
"format": "date-time",
"description": "Date and time this record was created, serialized as ISO 8601."
},
"updatedAt": {
"type": "string",
"format": "date-time",
"description": "Date and time this record was last updated, serialized as ISO 8601."
},
"scheduledAt": {
"anyOf": [
{
"type": "null"
},
{
"type": "string",
"format": "date-time",
"description": "Timestamp serialized as an ISO 8601 date and time."
}
],
"description": "Date and time this task or publication is scheduled to run."
},
"workflowRunId": {
"anyOf": [
{
"type": "null"
},
{
"type": "number"
}
],
"description": "Workflow execution associated with this result, distinct from its definition ID."
},
"workflowStepTestRunId": {
"anyOf": [
{
"type": "null"
},
{
"type": "number"
}
],
"description": "Existing workflow step test execution associated with this result."
}
},
"description": "Operation data; optional fields may be absent."
},
"error": {
"type": "string",
"description": "Why the operation failed."
},
"details": {
"type": "object",
"description": "Diagnostics keyed by errorCode."
},
"message": {
"type": "string",
"description": "Outcome or recovery instructions. Project selection means no action ran."
},
"success": {
"type": "boolean",
"description": "Operation success; on false inspect error/errorCode."
},
"upgrade": {
"type": "object",
"description": "Plan-upgrade guidance for an unavailable capability."
},
"category": {
"type": "string",
"description": "Failure category, such as invalid_input or plan_required."
},
"expected": {
"type": "boolean",
"description": "Whether this is an anticipated access, input, plan or state failure."
},
"projects": {
"type": "array",
"items": {
"type": "object",
"properties": {
"id": {
"type": "number",
"description": "Project ID for projectId."
},
"name": {
"type": "string",
"description": "Project name."
}
},
"description": "Accessible project."
},
"description": "Accessible project choices. Select a projectId and retry."
},
"errorCode": {
"type": "string",
"description": "Failure code for recovery."
},
"retryable": {
"type": "boolean",
"description": "Whether an unchanged request can be retried."
},
"statusCode": {
"type": "number",
"description": "HTTP-style failure status."
},
"executionTime": {
"type": "string",
"description": "Elapsed time in seconds, with an s suffix."
}
},
"description": "Operation result envelope."
}
Original tool metadata
{
"name": "review_grid_social_post",
"title": "Review grid social post",
"description": "Revise, approve, or request changes to an existing Social post. Read get_grid_sheet first and supply its current revision. Revise replaces the complete editable content and returns the post to awaiting approval; approve separately using the returned revision. Server-owned review history and actor are preserved. This does not publish or schedule the post. Never use update_grid_cell(s) to revise existing Social posts.",
"inputSchema": {
"type": "object",
"required": [
"sheetId",
"rowId",
"columnId",
"action",
"expectedRevision"
],
"properties": {
"rowId": {
"type": "number",
"minimum": 1,
"multipleOf": 1,
"description": "Existing row ID from get_grid_sheet_rows/get_grid_sheet, not its mutable visual position."
},
"action": {
"enum": [
"revise",
"approve",
"request_changes"
],
"type": "string",
"description": "Review or mutation action to perform on the identified current item."
},
"content": {
"type": "object",
"required": [
"platform",
"postType",
"authorName",
"body"
],
"properties": {
"body": {
"type": "string",
"description": "Full editable social post text or document body for this revision."
},
"title": {
"type": "string",
"description": "Human-readable title for this item."
},
"boardId": {
"type": "string",
"description": "Native Pinterest board identifier for the post."
},
"flairId": {
"type": "string",
"description": "Native subreddit flair identifier for the post."
},
"linkUrl": {
"type": "string",
"description": "Destination URL linked from the post."
},
"imageUrl": {
"type": "string",
"description": "Public URL of the image used by this item."
},
"platform": {
"enum": [
"linkedin",
"x",
"substack",
"medium",
"reddit",
"facebook",
"instagram",
"threads",
"bluesky",
"mastodon",
"pinterest",
"tiktok",
"youtube",
"googlebusiness"
],
"type": "string",
"description": "Destination social platform for this post."
},
"postType": {
"enum": [
"post",
"article",
"note",
"link",
"image",
"video",
"reel",
"story",
"pin",
"carousel"
],
"type": "string",
"description": "Social post format supported by the selected platform."
},
"subtitle": {
"type": "string",
"description": "Secondary text displayed under the main title."
},
"videoUrl": {
"type": "string",
"description": "Public URL of the video used by this item."
},
"avatarUrl": {
"type": "string",
"description": "Public image URL for the author's avatar."
},
"imageUrls": {
"type": "array",
"items": {
"type": "string"
},
"description": "Original carousel images in slide order."
},
"sourceUrl": {
"type": "string",
"description": "Original source URL supporting the post or content."
},
"subreddit": {
"type": "string",
"description": "Target subreddit name for a Reddit post."
},
"authorName": {
"type": "string",
"description": "Display name attributed to the social post's author."
},
"categoryId": {
"type": "string",
"description": "Native destination category identifier for the post."
},
"publication": {
"type": "string",
"description": "Connected publication used for the social or newsletter post."
},
"sourceTitle": {
"type": "string",
"description": "Human-readable title of the original source."
},
"imageAltTexts": {
"type": "array",
"items": {
"type": "string"
},
"description": "Accessible descriptions corresponding to imageUrls in the same order."
},
"isPaidContent": {
"type": "boolean",
"description": "Whether the destination publication treats the post as paid content."
},
"authorSubtitle": {
"type": "string",
"description": "Secondary author line shown in the social post's visual layout."
},
"sendToNewsletter": {
"type": "boolean",
"description": "Whether the approved publication should also be delivered as a newsletter."
}
},
"description": "Complete replacement editable content, required only for revise. Omit obsolete media fields when changing format. Do not include kind, revision, status, history, or actor fields.",
"additionalProperties": false
},
"context": {
"type": "string",
"maxLength": 120,
"description": "Short purpose of this call for the activity log. Exclude personal data and private source content."
},
"sheetId": {
"type": "number",
"minimum": 1,
"multipleOf": 1,
"description": "Sheet ID from get_grid or create_grid_sheet; the selected sheet must belong to the current project."
},
"columnId": {
"type": "number",
"minimum": 1,
"multipleOf": 1,
"description": "Existing column ID from the selected sheet in get_grid/get_grid_sheet, not the display name or position."
},
"feedback": {
"type": "string",
"maxLength": 4000,
"description": "Required for request_changes."
},
"llm_model": {
"type": "string",
"maxLength": 128,
"description": "Use the exact model ID executing this call, from runtime/system context, for usage attribution. Supply it on every Atomic MCP tool call, including discovery and feedback, and update it if the model changes. Use the model ID rather than the client app name. If unavailable, omit it; never guess or ask the user."
},
"projectId": {
"type": "number",
"description": "Atomic project ID from list_projects. Omit to use the configured project; if asked to choose, select one of the accessible returned IDs."
},
"expectedRevision": {
"type": "number",
"minimum": 1,
"multipleOf": 1,
"description": "Revision returned by the latest read. The write is rejected if the saved item changed after that read."
}
},
"additionalProperties": false
},
"outputSchema": {
"type": "object",
"required": [
"success"
],
"properties": {
"url": {
"type": "string",
"description": "Link for resolving the failure or completing the operation."
},
"data": {
"type": "object",
"required": [
"rowId",
"columnId",
"status",
"createdAt",
"updatedAt"
],
"properties": {
"id": {
"type": "number",
"description": "Identifier of this returned resource. Use it for subsequent reads or edits of the same resource."
},
"error": {
"anyOf": [
{
"type": "null"
},
{
"type": "string"
}
],
"description": "Failure details reported by this operation or its provider."
},
"rowId": {
"type": "number",
"description": "Grid row identifier for this item."
},
"value": {
"description": "Returned value for the containing field, setting or observation."
},
"status": {
"enum": [
"EMPTY",
"PENDING",
"RUNNING",
"WAITING_FOR_APPROVAL",
"COMPLETED",
"FAILED",
"CANCELED"
],
"type": "string",
"description": "Current saved or execution state reported by the operation."
},
"columnId": {
"type": "number",
"description": "Grid column identifier for this item."
},
"createdAt": {
"type": "string",
"format": "date-time",
"description": "Date and time this record was created, serialized as ISO 8601."
},
"updatedAt": {
"type": "string",
"format": "date-time",
"description": "Date and time this record was last updated, serialized as ISO 8601."
},
"scheduledAt": {
"anyOf": [
{
"type": "null"
},
{
"type": "string",
"format": "date-time",
"description": "Timestamp serialized as an ISO 8601 date and time."
}
],
"description": "Date and time this task or publication is scheduled to run."
},
"workflowRunId": {
"anyOf": [
{
"type": "null"
},
{
"type": "number"
}
],
"description": "Workflow execution associated with this result, distinct from its definition ID."
},
"workflowStepTestRunId": {
"anyOf": [
{
"type": "null"
},
{
"type": "number"
}
],
"description": "Existing workflow step test execution associated with this result."
}
},
"description": "Operation data; optional fields may be absent."
},
"error": {
"type": "string",
"description": "Why the operation failed."
},
"details": {
"type": "object",
"description": "Diagnostics keyed by errorCode."
},
"message": {
"type": "string",
"description": "Outcome or recovery instructions. Project selection means no action ran."
},
"success": {
"type": "boolean",
"description": "Operation success; on false inspect error/errorCode."
},
"upgrade": {
"type": "object",
"description": "Plan-upgrade guidance for an unavailable capability."
},
"category": {
"type": "string",
"description": "Failure category, such as invalid_input or plan_required."
},
"expected": {
"type": "boolean",
"description": "Whether this is an anticipated access, input, plan or state failure."
},
"projects": {
"type": "array",
"items": {
"type": "object",
"properties": {
"id": {
"type": "number",
"description": "Project ID for projectId."
},
"name": {
"type": "string",
"description": "Project name."
}
},
"description": "Accessible project."
},
"description": "Accessible project choices. Select a projectId and retry."
},
"errorCode": {
"type": "string",
"description": "Failure code for recovery."
},
"retryable": {
"type": "boolean",
"description": "Whether an unchanged request can be retried."
},
"statusCode": {
"type": "number",
"description": "HTTP-style failure status."
},
"executionTime": {
"type": "string",
"description": "Elapsed time in seconds, with an s suffix."
}
},
"description": "Operation result envelope."
},
"annotations": {
"readOnlyHint": false,
"openWorldHint": false,
"idempotentHint": false,
"destructiveHint": true
}
}
The title clearly communicates the tool’s action and subject. Keep it concise.
Description87/100
Run an existing scheduled agent conversation automation immediately.
Starts an extra run of an existing saved automation and may use credits and configured external tools. It does not merely inspect the schedule; get_agent_automations is the read operation.
The description explains the capability, when to use it, and what to expect.
Inputs88/100
Remove validation rules already expressed in this field’s schema; describe its meaning and usage instead.
automationId
Automation schedule ID to run.
Clear enough to supply this argument.
projectId
Atomic project ID from list_projects. Omit to use the configured project; if asked to choose, select one of the accessible returned IDs.
Clear enough to supply this argument.
context
Short purpose of this call for the activity log. Exclude personal data and private source content.
Remove validation rules already expressed in this field’s schema; describe its meaning and usage instead.
llm_model
Use the exact model ID executing this call, from runtime/system context, for usage attribution. Supply it on every Atomic MCP tool call, including discovery and feedback, and update it if the model changes. Use the model ID rather than the client app name. If unavailable, omit it; never guess or ask the user.
Remove validation rules already expressed in this field’s schema; describe its meaning and usage instead.
{
"type": "object",
"required": [
"success"
],
"properties": {
"url": {
"type": "string",
"description": "Link for resolving the failure or completing the operation."
},
"data": {
"type": "object",
"required": [
"projectId",
"type",
"frequency",
"timeRange",
"minuteOffset",
"timezone",
"isActive",
"createdAt",
"updatedAt"
],
"properties": {
"id": {
"type": "number",
"description": "Identifier of this returned resource. Use it for subsequent reads or edits of the same resource."
},
"name": {
"anyOf": [
{
"type": "null"
},
{
"type": "string"
}
],
"description": "Human-readable name of this resource."
},
"type": {
"enum": [
"seo_audit",
"seo_audit_notification",
"keyword_research",
"competitor_analysis",
"backlink_analysis",
"content_analysis",
"prompt_tracking",
"prompt_tracking_via_api",
"performance_report",
"weekly_digest",
"workflow",
"agent_conversation"
],
"type": "string",
"description": "Kind of the returned item; determines how its operation-specific fields should be interpreted."
},
"prompt": {
"anyOf": [
{
"type": "null"
},
{
"type": "string"
}
],
"description": "Prompt text used for the tracked or tested AI-search run."
},
"agentId": {
"anyOf": [
{
"type": "null"
},
{
"type": "number"
}
],
"description": "Saved Atomic agent associated with this resource or execution."
},
"isActive": {
"type": "boolean",
"description": "Whether this saved configuration is enabled."
},
"timezone": {
"type": "string"
},
"createdAt": {
"type": "string",
"format": "date-time",
"description": "Date and time this record was created, serialized as ISO 8601."
},
"dayOfWeek": {
"enum": [
"mondays",
"tuesdays",
"wednesdays",
"thursdays",
"fridays",
"saturdays",
"sundays"
],
"type": "string"
},
"frequency": {
"enum": [
"once",
"daily",
"every_48_hours",
"every_72_hours",
"weekly",
"bi_weekly",
"monthly",
"off"
],
"type": "string"
},
"lastRunAt": {
"type": "string",
"format": "date-time",
"description": "Timestamp serialized as an ISO 8601 date and time."
},
"nextRunAt": {
"type": "string",
"format": "date-time",
"description": "Timestamp serialized as an ISO 8601 date and time."
},
"projectId": {
"type": "number",
"description": "Atomic project that owns this resource."
},
"timeRange": {
"type": "string"
},
"updatedAt": {
"type": "string",
"format": "date-time",
"description": "Date and time this record was last updated, serialized as ISO 8601."
},
"gridCellId": {
"anyOf": [
{
"type": "null"
},
{
"type": "number"
}
]
},
"workflowId": {
"type": "number",
"description": "Saved workflow definition associated with this result."
},
"minuteOffset": {
"type": "number"
},
"monthlyOption": {
"enum": [
"first_day",
"fifth_day",
"last_day",
"first_monday",
"second_monday",
"third_monday",
"fourth_monday",
"first_friday",
"second_friday",
"third_friday",
"fourth_friday",
"middle_month"
],
"type": "string"
},
"conversationId": {
"anyOf": [
{
"type": "null"
},
{
"type": "string"
}
],
"description": "Conversation associated with this task or execution."
},
"workflowInputs": {
"type": "object",
"properties": {},
"additionalProperties": {
"description": "JSON returned by the connected provider or selected operation; its fields depend on that operation."
}
},
"initiatedByUserId": {
"anyOf": [
{
"type": "null"
},
{
"type": "number"
}
],
"description": "Actual initiating member; null only for historical records/non-workflow service schedules."
}
},
"description": "Operation data; optional fields may be absent."
},
"error": {
"type": "string",
"description": "Why the operation failed."
},
"details": {
"type": "object",
"description": "Diagnostics keyed by errorCode."
},
"message": {
"type": "string",
"description": "Outcome or recovery instructions. Project selection means no action ran."
},
"success": {
"type": "boolean",
"description": "Operation success; on false inspect error/errorCode."
},
"upgrade": {
"type": "object",
"description": "Plan-upgrade guidance for an unavailable capability."
},
"category": {
"type": "string",
"description": "Failure category, such as invalid_input or plan_required."
},
"expected": {
"type": "boolean",
"description": "Whether this is an anticipated access, input, plan or state failure."
},
"projects": {
"type": "array",
"items": {
"type": "object",
"properties": {
"id": {
"type": "number",
"description": "Project ID for projectId."
},
"name": {
"type": "string",
"description": "Project name."
}
},
"description": "Accessible project."
},
"description": "Accessible project choices. Select a projectId and retry."
},
"errorCode": {
"type": "string",
"description": "Failure code for recovery."
},
"retryable": {
"type": "boolean",
"description": "Whether an unchanged request can be retried."
},
"statusCode": {
"type": "number",
"description": "HTTP-style failure status."
},
"executionTime": {
"type": "string",
"description": "Elapsed time in seconds, with an s suffix."
}
},
"description": "Operation result envelope."
}
Original tool metadata
{
"name": "run_agent_automation",
"title": "Run agent automation",
"description": "Run an existing scheduled agent conversation automation immediately.\n\nStarts an extra run of an existing saved automation and may use credits and configured external tools. It does not merely inspect the schedule; get_agent_automations is the read operation.",
"inputSchema": {
"type": "object",
"required": [
"automationId"
],
"properties": {
"context": {
"type": "string",
"maxLength": 120,
"description": "Short purpose of this call for the activity log. Exclude personal data and private source content."
},
"llm_model": {
"type": "string",
"maxLength": 128,
"description": "Use the exact model ID executing this call, from runtime/system context, for usage attribution. Supply it on every Atomic MCP tool call, including discovery and feedback, and update it if the model changes. Use the model ID rather than the client app name. If unavailable, omit it; never guess or ask the user."
},
"projectId": {
"type": "number",
"description": "Atomic project ID from list_projects. Omit to use the configured project; if asked to choose, select one of the accessible returned IDs."
},
"automationId": {
"type": "number",
"description": "Automation schedule ID to run."
}
}
},
"outputSchema": {
"type": "object",
"required": [
"success"
],
"properties": {
"url": {
"type": "string",
"description": "Link for resolving the failure or completing the operation."
},
"data": {
"type": "object",
"required": [
"projectId",
"type",
"frequency",
"timeRange",
"minuteOffset",
"timezone",
"isActive",
"createdAt",
"updatedAt"
],
"properties": {
"id": {
"type": "number",
"description": "Identifier of this returned resource. Use it for subsequent reads or edits of the same resource."
},
"name": {
"anyOf": [
{
"type": "null"
},
{
"type": "string"
}
],
"description": "Human-readable name of this resource."
},
"type": {
"enum": [
"seo_audit",
"seo_audit_notification",
"keyword_research",
"competitor_analysis",
"backlink_analysis",
"content_analysis",
"prompt_tracking",
"prompt_tracking_via_api",
"performance_report",
"weekly_digest",
"workflow",
"agent_conversation"
],
"type": "string",
"description": "Kind of the returned item; determines how its operation-specific fields should be interpreted."
},
"prompt": {
"anyOf": [
{
"type": "null"
},
{
"type": "string"
}
],
"description": "Prompt text used for the tracked or tested AI-search run."
},
"agentId": {
"anyOf": [
{
"type": "null"
},
{
"type": "number"
}
],
"description": "Saved Atomic agent associated with this resource or execution."
},
"isActive": {
"type": "boolean",
"description": "Whether this saved configuration is enabled."
},
"timezone": {
"type": "string"
},
"createdAt": {
"type": "string",
"format": "date-time",
"description": "Date and time this record was created, serialized as ISO 8601."
},
"dayOfWeek": {
"enum": [
"mondays",
"tuesdays",
"wednesdays",
"thursdays",
"fridays",
"saturdays",
"sundays"
],
"type": "string"
},
"frequency": {
"enum": [
"once",
"daily",
"every_48_hours",
"every_72_hours",
"weekly",
"bi_weekly",
"monthly",
"off"
],
"type": "string"
},
"lastRunAt": {
"type": "string",
"format": "date-time",
"description": "Timestamp serialized as an ISO 8601 date and time."
},
"nextRunAt": {
"type": "string",
"format": "date-time",
"description": "Timestamp serialized as an ISO 8601 date and time."
},
"projectId": {
"type": "number",
"description": "Atomic project that owns this resource."
},
"timeRange": {
"type": "string"
},
"updatedAt": {
"type": "string",
"format": "date-time",
"description": "Date and time this record was last updated, serialized as ISO 8601."
},
"gridCellId": {
"anyOf": [
{
"type": "null"
},
{
"type": "number"
}
]
},
"workflowId": {
"type": "number",
"description": "Saved workflow definition associated with this result."
},
"minuteOffset": {
"type": "number"
},
"monthlyOption": {
"enum": [
"first_day",
"fifth_day",
"last_day",
"first_monday",
"second_monday",
"third_monday",
"fourth_monday",
"first_friday",
"second_friday",
"third_friday",
"fourth_friday",
"middle_month"
],
"type": "string"
},
"conversationId": {
"anyOf": [
{
"type": "null"
},
{
"type": "string"
}
],
"description": "Conversation associated with this task or execution."
},
"workflowInputs": {
"type": "object",
"properties": {},
"additionalProperties": {
"description": "JSON returned by the connected provider or selected operation; its fields depend on that operation."
}
},
"initiatedByUserId": {
"anyOf": [
{
"type": "null"
},
{
"type": "number"
}
],
"description": "Actual initiating member; null only for historical records/non-workflow service schedules."
}
},
"description": "Operation data; optional fields may be absent."
},
"error": {
"type": "string",
"description": "Why the operation failed."
},
"details": {
"type": "object",
"description": "Diagnostics keyed by errorCode."
},
"message": {
"type": "string",
"description": "Outcome or recovery instructions. Project selection means no action ran."
},
"success": {
"type": "boolean",
"description": "Operation success; on false inspect error/errorCode."
},
"upgrade": {
"type": "object",
"description": "Plan-upgrade guidance for an unavailable capability."
},
"category": {
"type": "string",
"description": "Failure category, such as invalid_input or plan_required."
},
"expected": {
"type": "boolean",
"description": "Whether this is an anticipated access, input, plan or state failure."
},
"projects": {
"type": "array",
"items": {
"type": "object",
"properties": {
"id": {
"type": "number",
"description": "Project ID for projectId."
},
"name": {
"type": "string",
"description": "Project name."
}
},
"description": "Accessible project."
},
"description": "Accessible project choices. Select a projectId and retry."
},
"errorCode": {
"type": "string",
"description": "Failure code for recovery."
},
"retryable": {
"type": "boolean",
"description": "Whether an unchanged request can be retried."
},
"statusCode": {
"type": "number",
"description": "HTTP-style failure status."
},
"executionTime": {
"type": "string",
"description": "Elapsed time in seconds, with an s suffix."
}
},
"description": "Operation result envelope."
},
"annotations": {
"readOnlyHint": false,
"openWorldHint": true,
"idempotentHint": false,
"destructiveHint": true
}
}
The title clearly communicates the tool’s action and subject. Keep it concise.
Description92/100
Run one workflow-backed grid cell and return the updated cell.
Executes configured work rather than reading saved state. It can consume credits and invoke external writes; monitor returned state before retrying an uncertain execution.
The description explains the capability, when to use it, and what to expect.
Inputs88/100
Remove validation rules already expressed in this field’s schema; describe its meaning and usage instead.
cellId
Workflow-backed cell ID to run.
Clear enough to supply this argument.
projectId
Atomic project ID from list_projects. Omit to use the configured project; if asked to choose, select one of the accessible returned IDs.
Clear enough to supply this argument.
context
Short purpose of this call for the activity log. Exclude personal data and private source content.
Remove validation rules already expressed in this field’s schema; describe its meaning and usage instead.
llm_model
Use the exact model ID executing this call, from runtime/system context, for usage attribution. Supply it on every Atomic MCP tool call, including discovery and feedback, and update it if the model changes. Use the model ID rather than the client app name. If unavailable, omit it; never guess or ask the user.
Remove validation rules already expressed in this field’s schema; describe its meaning and usage instead.
{
"type": "object",
"required": [
"success"
],
"properties": {
"url": {
"type": "string",
"description": "Link for resolving the failure or completing the operation."
},
"data": {
"type": "object",
"required": [
"rowId",
"columnId",
"status",
"createdAt",
"updatedAt"
],
"properties": {
"id": {
"type": "number",
"description": "Identifier of this returned resource. Use it for subsequent reads or edits of the same resource."
},
"error": {
"anyOf": [
{
"type": "null"
},
{
"type": "string"
}
],
"description": "Failure details reported by this operation or its provider."
},
"rowId": {
"type": "number",
"description": "Grid row identifier for this item."
},
"value": {
"description": "Returned value for the containing field, setting or observation."
},
"status": {
"enum": [
"EMPTY",
"PENDING",
"RUNNING",
"WAITING_FOR_APPROVAL",
"COMPLETED",
"FAILED",
"CANCELED"
],
"type": "string",
"description": "Current saved or execution state reported by the operation."
},
"columnId": {
"type": "number",
"description": "Grid column identifier for this item."
},
"createdAt": {
"type": "string",
"format": "date-time",
"description": "Date and time this record was created, serialized as ISO 8601."
},
"updatedAt": {
"type": "string",
"format": "date-time",
"description": "Date and time this record was last updated, serialized as ISO 8601."
},
"scheduledAt": {
"anyOf": [
{
"type": "null"
},
{
"type": "string",
"format": "date-time",
"description": "Timestamp serialized as an ISO 8601 date and time."
}
],
"description": "Date and time this task or publication is scheduled to run."
},
"workflowRunId": {
"anyOf": [
{
"type": "null"
},
{
"type": "number"
}
],
"description": "Workflow execution associated with this result, distinct from its definition ID."
},
"workflowStepTestRunId": {
"anyOf": [
{
"type": "null"
},
{
"type": "number"
}
],
"description": "Existing workflow step test execution associated with this result."
}
},
"description": "Operation data; optional fields may be absent."
},
"error": {
"type": "string",
"description": "Why the operation failed."
},
"details": {
"type": "object",
"description": "Diagnostics keyed by errorCode."
},
"message": {
"type": "string",
"description": "Outcome or recovery instructions. Project selection means no action ran."
},
"success": {
"type": "boolean",
"description": "Operation success; on false inspect error/errorCode."
},
"upgrade": {
"type": "object",
"description": "Plan-upgrade guidance for an unavailable capability."
},
"category": {
"type": "string",
"description": "Failure category, such as invalid_input or plan_required."
},
"expected": {
"type": "boolean",
"description": "Whether this is an anticipated access, input, plan or state failure."
},
"projects": {
"type": "array",
"items": {
"type": "object",
"properties": {
"id": {
"type": "number",
"description": "Project ID for projectId."
},
"name": {
"type": "string",
"description": "Project name."
}
},
"description": "Accessible project."
},
"description": "Accessible project choices. Select a projectId and retry."
},
"errorCode": {
"type": "string",
"description": "Failure code for recovery."
},
"retryable": {
"type": "boolean",
"description": "Whether an unchanged request can be retried."
},
"statusCode": {
"type": "number",
"description": "HTTP-style failure status."
},
"executionTime": {
"type": "string",
"description": "Elapsed time in seconds, with an s suffix."
}
},
"description": "Operation result envelope."
}
Original tool metadata
{
"name": "run_grid_cell",
"title": "Run grid cell",
"description": "Run one workflow-backed grid cell and return the updated cell.\n\nExecutes configured work rather than reading saved state. It can consume credits and invoke external writes; monitor returned state before retrying an uncertain execution.",
"inputSchema": {
"type": "object",
"required": [
"cellId"
],
"properties": {
"cellId": {
"type": "number",
"description": "Workflow-backed cell ID to run."
},
"context": {
"type": "string",
"maxLength": 120,
"description": "Short purpose of this call for the activity log. Exclude personal data and private source content."
},
"llm_model": {
"type": "string",
"maxLength": 128,
"description": "Use the exact model ID executing this call, from runtime/system context, for usage attribution. Supply it on every Atomic MCP tool call, including discovery and feedback, and update it if the model changes. Use the model ID rather than the client app name. If unavailable, omit it; never guess or ask the user."
},
"projectId": {
"type": "number",
"description": "Atomic project ID from list_projects. Omit to use the configured project; if asked to choose, select one of the accessible returned IDs."
}
}
},
"outputSchema": {
"type": "object",
"required": [
"success"
],
"properties": {
"url": {
"type": "string",
"description": "Link for resolving the failure or completing the operation."
},
"data": {
"type": "object",
"required": [
"rowId",
"columnId",
"status",
"createdAt",
"updatedAt"
],
"properties": {
"id": {
"type": "number",
"description": "Identifier of this returned resource. Use it for subsequent reads or edits of the same resource."
},
"error": {
"anyOf": [
{
"type": "null"
},
{
"type": "string"
}
],
"description": "Failure details reported by this operation or its provider."
},
"rowId": {
"type": "number",
"description": "Grid row identifier for this item."
},
"value": {
"description": "Returned value for the containing field, setting or observation."
},
"status": {
"enum": [
"EMPTY",
"PENDING",
"RUNNING",
"WAITING_FOR_APPROVAL",
"COMPLETED",
"FAILED",
"CANCELED"
],
"type": "string",
"description": "Current saved or execution state reported by the operation."
},
"columnId": {
"type": "number",
"description": "Grid column identifier for this item."
},
"createdAt": {
"type": "string",
"format": "date-time",
"description": "Date and time this record was created, serialized as ISO 8601."
},
"updatedAt": {
"type": "string",
"format": "date-time",
"description": "Date and time this record was last updated, serialized as ISO 8601."
},
"scheduledAt": {
"anyOf": [
{
"type": "null"
},
{
"type": "string",
"format": "date-time",
"description": "Timestamp serialized as an ISO 8601 date and time."
}
],
"description": "Date and time this task or publication is scheduled to run."
},
"workflowRunId": {
"anyOf": [
{
"type": "null"
},
{
"type": "number"
}
],
"description": "Workflow execution associated with this result, distinct from its definition ID."
},
"workflowStepTestRunId": {
"anyOf": [
{
"type": "null"
},
{
"type": "number"
}
],
"description": "Existing workflow step test execution associated with this result."
}
},
"description": "Operation data; optional fields may be absent."
},
"error": {
"type": "string",
"description": "Why the operation failed."
},
"details": {
"type": "object",
"description": "Diagnostics keyed by errorCode."
},
"message": {
"type": "string",
"description": "Outcome or recovery instructions. Project selection means no action ran."
},
"success": {
"type": "boolean",
"description": "Operation success; on false inspect error/errorCode."
},
"upgrade": {
"type": "object",
"description": "Plan-upgrade guidance for an unavailable capability."
},
"category": {
"type": "string",
"description": "Failure category, such as invalid_input or plan_required."
},
"expected": {
"type": "boolean",
"description": "Whether this is an anticipated access, input, plan or state failure."
},
"projects": {
"type": "array",
"items": {
"type": "object",
"properties": {
"id": {
"type": "number",
"description": "Project ID for projectId."
},
"name": {
"type": "string",
"description": "Project name."
}
},
"description": "Accessible project."
},
"description": "Accessible project choices. Select a projectId and retry."
},
"errorCode": {
"type": "string",
"description": "Failure code for recovery."
},
"retryable": {
"type": "boolean",
"description": "Whether an unchanged request can be retried."
},
"statusCode": {
"type": "number",
"description": "HTTP-style failure status."
},
"executionTime": {
"type": "string",
"description": "Elapsed time in seconds, with an s suffix."
}
},
"description": "Operation result envelope."
},
"annotations": {
"readOnlyHint": false,
"openWorldHint": true,
"idempotentHint": false,
"destructiveHint": true
}
}
The title clearly communicates the tool’s action and subject. Keep it concise.
Description94/100
Run every runnable workflow-backed cell in a grid column and return the updated cells.
Executes configured work rather than reading saved state. It can consume credits and invoke external writes; monitor returned state before retrying an uncertain execution.
The description explains the capability, when to use it, and what to expect.
Inputs88/100
Remove validation rules already expressed in this field’s schema; describe its meaning and usage instead.
columnId
Existing column ID from the selected sheet in get_grid/get_grid_sheet, not the display name or position.
Clear enough to supply this argument.
projectId
Atomic project ID from list_projects. Omit to use the configured project; if asked to choose, select one of the accessible returned IDs.
Clear enough to supply this argument.
context
Short purpose of this call for the activity log. Exclude personal data and private source content.
Remove validation rules already expressed in this field’s schema; describe its meaning and usage instead.
llm_model
Use the exact model ID executing this call, from runtime/system context, for usage attribution. Supply it on every Atomic MCP tool call, including discovery and feedback, and update it if the model changes. Use the model ID rather than the client app name. If unavailable, omit it; never guess or ask the user.
Remove validation rules already expressed in this field’s schema; describe its meaning and usage instead.
{
"type": "object",
"required": [
"success"
],
"properties": {
"url": {
"type": "string",
"description": "Link for resolving the failure or completing the operation."
},
"data": {
"type": "array",
"items": {
"type": "object",
"required": [
"rowId",
"columnId",
"status",
"createdAt",
"updatedAt"
],
"properties": {
"id": {
"type": "number",
"description": "Identifier of this returned resource. Use it for subsequent reads or edits of the same resource."
},
"error": {
"anyOf": [
{
"type": "null"
},
{
"type": "string"
}
],
"description": "Failure details reported by this operation or its provider."
},
"rowId": {
"type": "number",
"description": "Grid row identifier for this item."
},
"value": {
"description": "Returned value for the containing field, setting or observation."
},
"status": {
"enum": [
"EMPTY",
"PENDING",
"RUNNING",
"WAITING_FOR_APPROVAL",
"COMPLETED",
"FAILED",
"CANCELED"
],
"type": "string",
"description": "Current saved or execution state reported by the operation."
},
"columnId": {
"type": "number",
"description": "Grid column identifier for this item."
},
"createdAt": {
"type": "string",
"format": "date-time",
"description": "Date and time this record was created, serialized as ISO 8601."
},
"updatedAt": {
"type": "string",
"format": "date-time",
"description": "Date and time this record was last updated, serialized as ISO 8601."
},
"scheduledAt": {
"anyOf": [
{
"type": "null"
},
{
"type": "string",
"format": "date-time",
"description": "Timestamp serialized as an ISO 8601 date and time."
}
],
"description": "Date and time this task or publication is scheduled to run."
},
"workflowRunId": {
"anyOf": [
{
"type": "null"
},
{
"type": "number"
}
],
"description": "Workflow execution associated with this result, distinct from its definition ID."
},
"workflowStepTestRunId": {
"anyOf": [
{
"type": "null"
},
{
"type": "number"
}
],
"description": "Existing workflow step test execution associated with this result."
}
}
},
"description": "Operation data; optional fields may be absent."
},
"error": {
"type": "string",
"description": "Why the operation failed."
},
"details": {
"type": "object",
"description": "Diagnostics keyed by errorCode."
},
"message": {
"type": "string",
"description": "Outcome or recovery instructions. Project selection means no action ran."
},
"success": {
"type": "boolean",
"description": "Operation success; on false inspect error/errorCode."
},
"upgrade": {
"type": "object",
"description": "Plan-upgrade guidance for an unavailable capability."
},
"category": {
"type": "string",
"description": "Failure category, such as invalid_input or plan_required."
},
"expected": {
"type": "boolean",
"description": "Whether this is an anticipated access, input, plan or state failure."
},
"projects": {
"type": "array",
"items": {
"type": "object",
"properties": {
"id": {
"type": "number",
"description": "Project ID for projectId."
},
"name": {
"type": "string",
"description": "Project name."
}
},
"description": "Accessible project."
},
"description": "Accessible project choices. Select a projectId and retry."
},
"errorCode": {
"type": "string",
"description": "Failure code for recovery."
},
"retryable": {
"type": "boolean",
"description": "Whether an unchanged request can be retried."
},
"statusCode": {
"type": "number",
"description": "HTTP-style failure status."
},
"executionTime": {
"type": "string",
"description": "Elapsed time in seconds, with an s suffix."
}
},
"description": "Operation result envelope."
}
Original tool metadata
{
"name": "run_grid_column",
"title": "Run grid column",
"description": "Run every runnable workflow-backed cell in a grid column and return the updated cells.\n\nExecutes configured work rather than reading saved state. It can consume credits and invoke external writes; monitor returned state before retrying an uncertain execution.",
"inputSchema": {
"type": "object",
"required": [
"columnId"
],
"properties": {
"context": {
"type": "string",
"maxLength": 120,
"description": "Short purpose of this call for the activity log. Exclude personal data and private source content."
},
"columnId": {
"type": "number",
"description": "Existing column ID from the selected sheet in get_grid/get_grid_sheet, not the display name or position."
},
"llm_model": {
"type": "string",
"maxLength": 128,
"description": "Use the exact model ID executing this call, from runtime/system context, for usage attribution. Supply it on every Atomic MCP tool call, including discovery and feedback, and update it if the model changes. Use the model ID rather than the client app name. If unavailable, omit it; never guess or ask the user."
},
"projectId": {
"type": "number",
"description": "Atomic project ID from list_projects. Omit to use the configured project; if asked to choose, select one of the accessible returned IDs."
}
}
},
"outputSchema": {
"type": "object",
"required": [
"success"
],
"properties": {
"url": {
"type": "string",
"description": "Link for resolving the failure or completing the operation."
},
"data": {
"type": "array",
"items": {
"type": "object",
"required": [
"rowId",
"columnId",
"status",
"createdAt",
"updatedAt"
],
"properties": {
"id": {
"type": "number",
"description": "Identifier of this returned resource. Use it for subsequent reads or edits of the same resource."
},
"error": {
"anyOf": [
{
"type": "null"
},
{
"type": "string"
}
],
"description": "Failure details reported by this operation or its provider."
},
"rowId": {
"type": "number",
"description": "Grid row identifier for this item."
},
"value": {
"description": "Returned value for the containing field, setting or observation."
},
"status": {
"enum": [
"EMPTY",
"PENDING",
"RUNNING",
"WAITING_FOR_APPROVAL",
"COMPLETED",
"FAILED",
"CANCELED"
],
"type": "string",
"description": "Current saved or execution state reported by the operation."
},
"columnId": {
"type": "number",
"description": "Grid column identifier for this item."
},
"createdAt": {
"type": "string",
"format": "date-time",
"description": "Date and time this record was created, serialized as ISO 8601."
},
"updatedAt": {
"type": "string",
"format": "date-time",
"description": "Date and time this record was last updated, serialized as ISO 8601."
},
"scheduledAt": {
"anyOf": [
{
"type": "null"
},
{
"type": "string",
"format": "date-time",
"description": "Timestamp serialized as an ISO 8601 date and time."
}
],
"description": "Date and time this task or publication is scheduled to run."
},
"workflowRunId": {
"anyOf": [
{
"type": "null"
},
{
"type": "number"
}
],
"description": "Workflow execution associated with this result, distinct from its definition ID."
},
"workflowStepTestRunId": {
"anyOf": [
{
"type": "null"
},
{
"type": "number"
}
],
"description": "Existing workflow step test execution associated with this result."
}
}
},
"description": "Operation data; optional fields may be absent."
},
"error": {
"type": "string",
"description": "Why the operation failed."
},
"details": {
"type": "object",
"description": "Diagnostics keyed by errorCode."
},
"message": {
"type": "string",
"description": "Outcome or recovery instructions. Project selection means no action ran."
},
"success": {
"type": "boolean",
"description": "Operation success; on false inspect error/errorCode."
},
"upgrade": {
"type": "object",
"description": "Plan-upgrade guidance for an unavailable capability."
},
"category": {
"type": "string",
"description": "Failure category, such as invalid_input or plan_required."
},
"expected": {
"type": "boolean",
"description": "Whether this is an anticipated access, input, plan or state failure."
},
"projects": {
"type": "array",
"items": {
"type": "object",
"properties": {
"id": {
"type": "number",
"description": "Project ID for projectId."
},
"name": {
"type": "string",
"description": "Project name."
}
},
"description": "Accessible project."
},
"description": "Accessible project choices. Select a projectId and retry."
},
"errorCode": {
"type": "string",
"description": "Failure code for recovery."
},
"retryable": {
"type": "boolean",
"description": "Whether an unchanged request can be retried."
},
"statusCode": {
"type": "number",
"description": "HTTP-style failure status."
},
"executionTime": {
"type": "string",
"description": "Elapsed time in seconds, with an s suffix."
}
},
"description": "Operation result envelope."
},
"annotations": {
"readOnlyHint": false,
"openWorldHint": true,
"idempotentHint": false,
"destructiveHint": true
}
}
The title clearly communicates the tool’s action and subject. Keep it concise.
Description94/100
Run all workflow-backed columns in a sheet and return the updated cells.
Executes configured work rather than reading saved state. It can consume credits and invoke external writes; monitor returned state before retrying an uncertain execution.
The description explains the capability, when to use it, and what to expect.
Inputs88/100
Remove validation rules already expressed in this field’s schema; describe its meaning and usage instead.
sheetId
Sheet ID from get_grid or create_grid_sheet; the selected sheet must belong to the current project.
Clear enough to supply this argument.
projectId
Atomic project ID from list_projects. Omit to use the configured project; if asked to choose, select one of the accessible returned IDs.
Clear enough to supply this argument.
context
Short purpose of this call for the activity log. Exclude personal data and private source content.
Remove validation rules already expressed in this field’s schema; describe its meaning and usage instead.
llm_model
Use the exact model ID executing this call, from runtime/system context, for usage attribution. Supply it on every Atomic MCP tool call, including discovery and feedback, and update it if the model changes. Use the model ID rather than the client app name. If unavailable, omit it; never guess or ask the user.
Remove validation rules already expressed in this field’s schema; describe its meaning and usage instead.
{
"type": "object",
"required": [
"success"
],
"properties": {
"url": {
"type": "string",
"description": "Link for resolving the failure or completing the operation."
},
"data": {
"type": "array",
"items": {
"type": "object",
"required": [
"rowId",
"columnId",
"status",
"createdAt",
"updatedAt"
],
"properties": {
"id": {
"type": "number",
"description": "Identifier of this returned resource. Use it for subsequent reads or edits of the same resource."
},
"error": {
"anyOf": [
{
"type": "null"
},
{
"type": "string"
}
],
"description": "Failure details reported by this operation or its provider."
},
"rowId": {
"type": "number",
"description": "Grid row identifier for this item."
},
"value": {
"description": "Returned value for the containing field, setting or observation."
},
"status": {
"enum": [
"EMPTY",
"PENDING",
"RUNNING",
"WAITING_FOR_APPROVAL",
"COMPLETED",
"FAILED",
"CANCELED"
],
"type": "string",
"description": "Current saved or execution state reported by the operation."
},
"columnId": {
"type": "number",
"description": "Grid column identifier for this item."
},
"createdAt": {
"type": "string",
"format": "date-time",
"description": "Date and time this record was created, serialized as ISO 8601."
},
"updatedAt": {
"type": "string",
"format": "date-time",
"description": "Date and time this record was last updated, serialized as ISO 8601."
},
"scheduledAt": {
"anyOf": [
{
"type": "null"
},
{
"type": "string",
"format": "date-time",
"description": "Timestamp serialized as an ISO 8601 date and time."
}
],
"description": "Date and time this task or publication is scheduled to run."
},
"workflowRunId": {
"anyOf": [
{
"type": "null"
},
{
"type": "number"
}
],
"description": "Workflow execution associated with this result, distinct from its definition ID."
},
"workflowStepTestRunId": {
"anyOf": [
{
"type": "null"
},
{
"type": "number"
}
],
"description": "Existing workflow step test execution associated with this result."
}
}
},
"description": "Operation data; optional fields may be absent."
},
"error": {
"type": "string",
"description": "Why the operation failed."
},
"details": {
"type": "object",
"description": "Diagnostics keyed by errorCode."
},
"message": {
"type": "string",
"description": "Outcome or recovery instructions. Project selection means no action ran."
},
"success": {
"type": "boolean",
"description": "Operation success; on false inspect error/errorCode."
},
"upgrade": {
"type": "object",
"description": "Plan-upgrade guidance for an unavailable capability."
},
"category": {
"type": "string",
"description": "Failure category, such as invalid_input or plan_required."
},
"expected": {
"type": "boolean",
"description": "Whether this is an anticipated access, input, plan or state failure."
},
"projects": {
"type": "array",
"items": {
"type": "object",
"properties": {
"id": {
"type": "number",
"description": "Project ID for projectId."
},
"name": {
"type": "string",
"description": "Project name."
}
},
"description": "Accessible project."
},
"description": "Accessible project choices. Select a projectId and retry."
},
"errorCode": {
"type": "string",
"description": "Failure code for recovery."
},
"retryable": {
"type": "boolean",
"description": "Whether an unchanged request can be retried."
},
"statusCode": {
"type": "number",
"description": "HTTP-style failure status."
},
"executionTime": {
"type": "string",
"description": "Elapsed time in seconds, with an s suffix."
}
},
"description": "Operation result envelope."
}
Original tool metadata
{
"name": "run_grid_sheet",
"title": "Run grid sheet",
"description": "Run all workflow-backed columns in a sheet and return the updated cells.\n\nExecutes configured work rather than reading saved state. It can consume credits and invoke external writes; monitor returned state before retrying an uncertain execution.",
"inputSchema": {
"type": "object",
"required": [
"sheetId"
],
"properties": {
"context": {
"type": "string",
"maxLength": 120,
"description": "Short purpose of this call for the activity log. Exclude personal data and private source content."
},
"sheetId": {
"type": "number",
"description": "Sheet ID from get_grid or create_grid_sheet; the selected sheet must belong to the current project."
},
"llm_model": {
"type": "string",
"maxLength": 128,
"description": "Use the exact model ID executing this call, from runtime/system context, for usage attribution. Supply it on every Atomic MCP tool call, including discovery and feedback, and update it if the model changes. Use the model ID rather than the client app name. If unavailable, omit it; never guess or ask the user."
},
"projectId": {
"type": "number",
"description": "Atomic project ID from list_projects. Omit to use the configured project; if asked to choose, select one of the accessible returned IDs."
}
}
},
"outputSchema": {
"type": "object",
"required": [
"success"
],
"properties": {
"url": {
"type": "string",
"description": "Link for resolving the failure or completing the operation."
},
"data": {
"type": "array",
"items": {
"type": "object",
"required": [
"rowId",
"columnId",
"status",
"createdAt",
"updatedAt"
],
"properties": {
"id": {
"type": "number",
"description": "Identifier of this returned resource. Use it for subsequent reads or edits of the same resource."
},
"error": {
"anyOf": [
{
"type": "null"
},
{
"type": "string"
}
],
"description": "Failure details reported by this operation or its provider."
},
"rowId": {
"type": "number",
"description": "Grid row identifier for this item."
},
"value": {
"description": "Returned value for the containing field, setting or observation."
},
"status": {
"enum": [
"EMPTY",
"PENDING",
"RUNNING",
"WAITING_FOR_APPROVAL",
"COMPLETED",
"FAILED",
"CANCELED"
],
"type": "string",
"description": "Current saved or execution state reported by the operation."
},
"columnId": {
"type": "number",
"description": "Grid column identifier for this item."
},
"createdAt": {
"type": "string",
"format": "date-time",
"description": "Date and time this record was created, serialized as ISO 8601."
},
"updatedAt": {
"type": "string",
"format": "date-time",
"description": "Date and time this record was last updated, serialized as ISO 8601."
},
"scheduledAt": {
"anyOf": [
{
"type": "null"
},
{
"type": "string",
"format": "date-time",
"description": "Timestamp serialized as an ISO 8601 date and time."
}
],
"description": "Date and time this task or publication is scheduled to run."
},
"workflowRunId": {
"anyOf": [
{
"type": "null"
},
{
"type": "number"
}
],
"description": "Workflow execution associated with this result, distinct from its definition ID."
},
"workflowStepTestRunId": {
"anyOf": [
{
"type": "null"
},
{
"type": "number"
}
],
"description": "Existing workflow step test execution associated with this result."
}
}
},
"description": "Operation data; optional fields may be absent."
},
"error": {
"type": "string",
"description": "Why the operation failed."
},
"details": {
"type": "object",
"description": "Diagnostics keyed by errorCode."
},
"message": {
"type": "string",
"description": "Outcome or recovery instructions. Project selection means no action ran."
},
"success": {
"type": "boolean",
"description": "Operation success; on false inspect error/errorCode."
},
"upgrade": {
"type": "object",
"description": "Plan-upgrade guidance for an unavailable capability."
},
"category": {
"type": "string",
"description": "Failure category, such as invalid_input or plan_required."
},
"expected": {
"type": "boolean",
"description": "Whether this is an anticipated access, input, plan or state failure."
},
"projects": {
"type": "array",
"items": {
"type": "object",
"properties": {
"id": {
"type": "number",
"description": "Project ID for projectId."
},
"name": {
"type": "string",
"description": "Project name."
}
},
"description": "Accessible project."
},
"description": "Accessible project choices. Select a projectId and retry."
},
"errorCode": {
"type": "string",
"description": "Failure code for recovery."
},
"retryable": {
"type": "boolean",
"description": "Whether an unchanged request can be retried."
},
"statusCode": {
"type": "number",
"description": "HTTP-style failure status."
},
"executionTime": {
"type": "string",
"description": "Elapsed time in seconds, with an s suffix."
}
},
"description": "Operation result envelope."
},
"annotations": {
"readOnlyHint": false,
"openWorldHint": true,
"idempotentHint": false,
"destructiveHint": true
}
}
The title clearly communicates the tool’s action and subject. Keep it concise.
Description91/100
Run an LLM audit for a specific domain or URL, even when it is not the current project domain. Checks LLM crawlability, llms.txt, robots.txt LLM bot access, sitemap availability and first-level LLM discovery, schema/entity trust signals, content structure, NLP term coverage, and PageSpeed/Lighthouse scores. If the sitemap is a valid sitemap index, report it as a valid nested sitemap setup, not as a broken sitemap. The AI-generated NLP analysis cost is included in the agent tool-call AI usage.
Fetches the target site, evaluates AI crawlability and saves audit history. This is a new audit, not retrieval of an existing SEO issue; repeated calls can create further history.
The description explains the capability, when to use it, and what to expect.
Inputs94/100
Remove validation rules already expressed in this field’s schema; describe its meaning and usage instead.
url
The exact domain or URL to audit, for example "example.com" or "https://example.com/blog".
Clear enough to supply this argument.
projectId
Atomic project ID from list_projects. Omit to use the configured project; if asked to choose, select one of the accessible returned IDs.
Clear enough to supply this argument.
context
Short purpose of this call for the activity log. Exclude personal data and private source content.
Remove validation rules already expressed in this field’s schema; describe its meaning and usage instead.
llm_model
Use the exact model ID executing this call, from runtime/system context, for usage attribution. Supply it on every Atomic MCP tool call, including discovery and feedback, and update it if the model changes. Use the model ID rather than the client app name. If unavailable, omit it; never guess or ask the user.
{
"type": "object",
"required": [
"success"
],
"properties": {
"url": {
"type": "string",
"description": "Link for resolving the failure or completing the operation."
},
"data": {
"type": "object",
"required": [
"data"
],
"properties": {
"data": {
"type": "object",
"required": [
"requestedUrl",
"auditedUrls"
],
"properties": {
"historyId": {
"type": "number"
},
"publicSlug": {
"type": "string"
},
"auditedUrls": {
"type": "array",
"items": {
"type": "object",
"description": "Nested operation-specific fields."
}
},
"requestedUrl": {
"type": "string"
},
"publicReportUrl": {
"type": "string"
}
},
"description": "Result items or operation data inside this returned payload. Pagination fields describe only this result page."
},
"_aiCost": {
"type": "object",
"required": [
"costDollars"
],
"properties": {
"costDollars": {
"type": "number"
}
}
}
},
"description": "Operation data; optional fields may be absent."
},
"error": {
"type": "string",
"description": "Why the operation failed."
},
"details": {
"type": "object",
"description": "Diagnostics keyed by errorCode."
},
"message": {
"type": "string",
"description": "Outcome or recovery instructions. Project selection means no action ran."
},
"success": {
"type": "boolean",
"description": "Operation success; on false inspect error/errorCode."
},
"upgrade": {
"type": "object",
"description": "Plan-upgrade guidance for an unavailable capability."
},
"category": {
"type": "string",
"description": "Failure category, such as invalid_input or plan_required."
},
"expected": {
"type": "boolean",
"description": "Whether this is an anticipated access, input, plan or state failure."
},
"projects": {
"type": "array",
"items": {
"type": "object",
"properties": {
"id": {
"type": "number",
"description": "Project ID for projectId."
},
"name": {
"type": "string",
"description": "Project name."
}
},
"description": "Accessible project."
},
"description": "Accessible project choices. Select a projectId and retry."
},
"errorCode": {
"type": "string",
"description": "Failure code for recovery."
},
"retryable": {
"type": "boolean",
"description": "Whether an unchanged request can be retried."
},
"statusCode": {
"type": "number",
"description": "HTTP-style failure status."
},
"executionTime": {
"type": "string",
"description": "Elapsed time in seconds, with an s suffix."
}
},
"description": "Operation result envelope."
}
Original tool metadata
{
"name": "run_llm_audit",
"title": "Run LLM audit",
"description": "Run an LLM audit for a specific domain or URL, even when it is not the current project domain. Checks LLM crawlability, llms.txt, robots.txt LLM bot access, sitemap availability and first-level LLM discovery, schema/entity trust signals, content structure, NLP term coverage, and PageSpeed/Lighthouse scores. If the sitemap is a valid sitemap index, report it as a valid nested sitemap setup, not as a broken sitemap. The AI-generated NLP analysis cost is included in the agent tool-call AI usage.\n\nFetches the target site, evaluates AI crawlability and saves audit history. This is a new audit, not retrieval of an existing SEO issue; repeated calls can create further history.",
"inputSchema": {
"type": "object",
"required": [
"url"
],
"properties": {
"url": {
"type": "string",
"description": "The exact domain or URL to audit, for example \"example.com\" or \"https://example.com/blog\"."
},
"context": {
"type": "string",
"maxLength": 120,
"description": "Short purpose of this call for the activity log. Exclude personal data and private source content."
},
"llm_model": {
"type": "string",
"maxLength": 128,
"description": "Use the exact model ID executing this call, from runtime/system context, for usage attribution. Supply it on every Atomic MCP tool call, including discovery and feedback, and update it if the model changes. Use the model ID rather than the client app name. If unavailable, omit it; never guess or ask the user."
},
"projectId": {
"type": "number",
"description": "Atomic project ID from list_projects. Omit to use the configured project; if asked to choose, select one of the accessible returned IDs."
}
}
},
"outputSchema": {
"type": "object",
"required": [
"success"
],
"properties": {
"url": {
"type": "string",
"description": "Link for resolving the failure or completing the operation."
},
"data": {
"type": "object",
"required": [
"data"
],
"properties": {
"data": {
"type": "object",
"required": [
"requestedUrl",
"auditedUrls"
],
"properties": {
"historyId": {
"type": "number"
},
"publicSlug": {
"type": "string"
},
"auditedUrls": {
"type": "array",
"items": {
"type": "object",
"description": "Nested operation-specific fields."
}
},
"requestedUrl": {
"type": "string"
},
"publicReportUrl": {
"type": "string"
}
},
"description": "Result items or operation data inside this returned payload. Pagination fields describe only this result page."
},
"_aiCost": {
"type": "object",
"required": [
"costDollars"
],
"properties": {
"costDollars": {
"type": "number"
}
}
}
},
"description": "Operation data; optional fields may be absent."
},
"error": {
"type": "string",
"description": "Why the operation failed."
},
"details": {
"type": "object",
"description": "Diagnostics keyed by errorCode."
},
"message": {
"type": "string",
"description": "Outcome or recovery instructions. Project selection means no action ran."
},
"success": {
"type": "boolean",
"description": "Operation success; on false inspect error/errorCode."
},
"upgrade": {
"type": "object",
"description": "Plan-upgrade guidance for an unavailable capability."
},
"category": {
"type": "string",
"description": "Failure category, such as invalid_input or plan_required."
},
"expected": {
"type": "boolean",
"description": "Whether this is an anticipated access, input, plan or state failure."
},
"projects": {
"type": "array",
"items": {
"type": "object",
"properties": {
"id": {
"type": "number",
"description": "Project ID for projectId."
},
"name": {
"type": "string",
"description": "Project name."
}
},
"description": "Accessible project."
},
"description": "Accessible project choices. Select a projectId and retry."
},
"errorCode": {
"type": "string",
"description": "Failure code for recovery."
},
"retryable": {
"type": "boolean",
"description": "Whether an unchanged request can be retried."
},
"statusCode": {
"type": "number",
"description": "HTTP-style failure status."
},
"executionTime": {
"type": "string",
"description": "Elapsed time in seconds, with an s suffix."
}
},
"description": "Operation result envelope."
},
"annotations": {
"readOnlyHint": false,
"openWorldHint": true,
"idempotentHint": false,
"destructiveHint": false
}
}
The title clearly communicates the tool’s action and subject. Keep it concise.
Description99/100
Run a workflow by its ID. This starts the workflow execution with the provided inputs. The workflow will run asynchronously and you can check its status using get_workflow_run. Returns the workflow run ID and initial status.
Starts a new asynchronous execution that can spend credits and perform each configured step's writes/external actions. Use get_workflow_run to monitor an existing run, not repeated starts.
The description explains the capability, when to use it, and what to expect.
Inputs94/100
Remove validation rules already expressed in this field’s schema; describe its meaning and usage instead.
workflowId
Existing project workflow ID from get_workflows or create_workflow; this identifies a pipeline, not a run.
Clear enough to supply this argument.
inputs
Optional input values to pass to the workflow. Submitted values are used as-is; defaults are applied by clients before calling this tool.
Clear enough to supply this argument.
projectId
Atomic project ID from list_projects. Omit to use the configured project; if asked to choose, select one of the accessible returned IDs.
Clear enough to supply this argument.
context
Short purpose of this call for the activity log. Exclude personal data and private source content.
Remove validation rules already expressed in this field’s schema; describe its meaning and usage instead.
llm_model
Use the exact model ID executing this call, from runtime/system context, for usage attribution. Supply it on every Atomic MCP tool call, including discovery and feedback, and update it if the model changes. Use the model ID rather than the client app name. If unavailable, omit it; never guess or ask the user.
{
"type": "object",
"required": [
"success"
],
"properties": {
"url": {
"type": "string",
"description": "Link for resolving the failure or completing the operation."
},
"data": {
"type": "object",
"required": [
"workflowRunId",
"status"
],
"properties": {
"error": {
"type": "string",
"description": "Failure details reported by this operation or its provider."
},
"status": {
"enum": [
"pending",
"running",
"waiting_for_approval",
"completed",
"failed",
"canceled"
],
"type": "string",
"description": "Current saved or execution state reported by the operation."
},
"workflowRunId": {
"type": "number",
"description": "Workflow execution associated with this result, distinct from its definition ID."
}
},
"description": "Operation data; optional fields may be absent."
},
"error": {
"type": "string",
"description": "Why the operation failed."
},
"details": {
"type": "object",
"description": "Diagnostics keyed by errorCode."
},
"message": {
"type": "string",
"description": "Outcome or recovery instructions. Project selection means no action ran."
},
"success": {
"type": "boolean",
"description": "Operation success; on false inspect error/errorCode."
},
"upgrade": {
"type": "object",
"description": "Plan-upgrade guidance for an unavailable capability."
},
"category": {
"type": "string",
"description": "Failure category, such as invalid_input or plan_required."
},
"expected": {
"type": "boolean",
"description": "Whether this is an anticipated access, input, plan or state failure."
},
"projects": {
"type": "array",
"items": {
"type": "object",
"properties": {
"id": {
"type": "number",
"description": "Project ID for projectId."
},
"name": {
"type": "string",
"description": "Project name."
}
},
"description": "Accessible project."
},
"description": "Accessible project choices. Select a projectId and retry."
},
"errorCode": {
"type": "string",
"description": "Failure code for recovery."
},
"retryable": {
"type": "boolean",
"description": "Whether an unchanged request can be retried."
},
"statusCode": {
"type": "number",
"description": "HTTP-style failure status."
},
"executionTime": {
"type": "string",
"description": "Elapsed time in seconds, with an s suffix."
}
},
"description": "Operation result envelope."
}
Original tool metadata
{
"name": "run_workflow",
"title": "Run workflow",
"description": "Run a workflow by its ID. This starts the workflow execution with the provided inputs. The workflow will run asynchronously and you can check its status using get_workflow_run. Returns the workflow run ID and initial status.\n\nStarts a new asynchronous execution that can spend credits and perform each configured step's writes/external actions. Use get_workflow_run to monitor an existing run, not repeated starts.",
"inputSchema": {
"type": "object",
"required": [
"workflowId"
],
"properties": {
"inputs": {
"type": "object",
"description": "Optional input values to pass to the workflow. Submitted values are used as-is; defaults are applied by clients before calling this tool."
},
"context": {
"type": "string",
"maxLength": 120,
"description": "Short purpose of this call for the activity log. Exclude personal data and private source content."
},
"llm_model": {
"type": "string",
"maxLength": 128,
"description": "Use the exact model ID executing this call, from runtime/system context, for usage attribution. Supply it on every Atomic MCP tool call, including discovery and feedback, and update it if the model changes. Use the model ID rather than the client app name. If unavailable, omit it; never guess or ask the user."
},
"projectId": {
"type": "number",
"description": "Atomic project ID from list_projects. Omit to use the configured project; if asked to choose, select one of the accessible returned IDs."
},
"workflowId": {
"type": "number",
"description": "Existing project workflow ID from get_workflows or create_workflow; this identifies a pipeline, not a run."
}
}
},
"outputSchema": {
"type": "object",
"required": [
"success"
],
"properties": {
"url": {
"type": "string",
"description": "Link for resolving the failure or completing the operation."
},
"data": {
"type": "object",
"required": [
"workflowRunId",
"status"
],
"properties": {
"error": {
"type": "string",
"description": "Failure details reported by this operation or its provider."
},
"status": {
"enum": [
"pending",
"running",
"waiting_for_approval",
"completed",
"failed",
"canceled"
],
"type": "string",
"description": "Current saved or execution state reported by the operation."
},
"workflowRunId": {
"type": "number",
"description": "Workflow execution associated with this result, distinct from its definition ID."
}
},
"description": "Operation data; optional fields may be absent."
},
"error": {
"type": "string",
"description": "Why the operation failed."
},
"details": {
"type": "object",
"description": "Diagnostics keyed by errorCode."
},
"message": {
"type": "string",
"description": "Outcome or recovery instructions. Project selection means no action ran."
},
"success": {
"type": "boolean",
"description": "Operation success; on false inspect error/errorCode."
},
"upgrade": {
"type": "object",
"description": "Plan-upgrade guidance for an unavailable capability."
},
"category": {
"type": "string",
"description": "Failure category, such as invalid_input or plan_required."
},
"expected": {
"type": "boolean",
"description": "Whether this is an anticipated access, input, plan or state failure."
},
"projects": {
"type": "array",
"items": {
"type": "object",
"properties": {
"id": {
"type": "number",
"description": "Project ID for projectId."
},
"name": {
"type": "string",
"description": "Project name."
}
},
"description": "Accessible project."
},
"description": "Accessible project choices. Select a projectId and retry."
},
"errorCode": {
"type": "string",
"description": "Failure code for recovery."
},
"retryable": {
"type": "boolean",
"description": "Whether an unchanged request can be retried."
},
"statusCode": {
"type": "number",
"description": "HTTP-style failure status."
},
"executionTime": {
"type": "string",
"description": "Elapsed time in seconds, with an s suffix."
}
},
"description": "Operation result envelope."
},
"annotations": {
"readOnlyHint": false,
"openWorldHint": true,
"idempotentHint": false,
"destructiveHint": true
}
}
The title clearly communicates the tool’s action and subject. Keep it concise.
Description88/100
Search a project mailbox through read-only IMAP or Microsoft Graph OAuth. Returns bounded message metadata and threading headers for matching replies to sent outreach. This tool never marks messages read, moves them, drafts, or sends email.
The description explains the capability, when to use it, and what to expect.
Inputs73/100
Resolve the mismatch between this description and its schema constraints.
emailConnectorId
Connector ID. Optional only when one readable connector exists.
Resolve the mismatch between this description and its schema constraints.
folder
Mailbox folder, default INBOX.
Clear enough to supply this argument.
since
ISO date/time lower bound.
Clarify units, where to obtain this value, or conventions not already expressed in the schema.
from
Sender email address or sender text used to filter mailbox messages.
Clear enough to supply this argument.
subject
Email subject used to filter messages or compose an outgoing message.
Resolve the mismatch between this description and its schema constraints.
query
Text to search for in the message body.
Clear enough to supply this argument.
unreadOnly
Whether to return only messages marked unread.
Clear enough to supply this argument.
beforeUid
Pagination cursor; only return lower UIDs.
Clarify units, where to obtain this value, or conventions not already expressed in the schema.
cursor
Opaque Microsoft Graph pagination cursor returned by a previous call.
Clear enough to supply this argument.
limit
Maximum number of matching results to return in this request.
Remove validation rules already expressed in this field’s schema; describe its meaning and usage instead.
projectId
Atomic project ID from list_projects. Omit to use the configured project; if asked to choose, select one of the accessible returned IDs.
Clear enough to supply this argument.
context
Short purpose of this call for the activity log. Exclude personal data and private source content.
Clear enough to supply this argument.
llm_model
Use the exact model ID executing this call, from runtime/system context, for usage attribution. Supply it on every Atomic MCP tool call, including discovery and feedback, and update it if the model changes. Use the model ID rather than the client app name. If unavailable, omit it; never guess or ask the user.
Remove validation rules already expressed in this field’s schema; describe its meaning and usage instead.
The title clearly communicates the tool’s action and subject. Keep it concise.
Description93/100
Search GIPHY for relevant animated GIFs. Returns direct GIF renditions and GIPHY source pages. Select one result, then call import_image_to_s3 before embedding it in content.
Queries GIPHY without inserting an asset into content. Use import_image_to_s3 after choosing an exact rendition; provider quota and availability apply.
The description explains the capability, when to use it, and what to expect.
Inputs83/100
Remove validation rules already expressed in this field’s schema; describe its meaning and usage instead.
query
Required concise GIF search phrase describing the reaction, concept, or visual beat.
Clear enough to supply this argument.
limit
Optional result count from 1 to 12. Defaults to 8.
Remove validation rules already expressed in this field’s schema; describe its meaning and usage instead.
language
Optional two-letter language code. Defaults to en.
Remove validation rules already expressed in this field’s schema; describe its meaning and usage instead.
projectId
Atomic project ID from list_projects. Omit to use the configured project; if asked to choose, select one of the accessible returned IDs.
Clear enough to supply this argument.
context
Short purpose of this call for the activity log. Exclude personal data and private source content.
Remove validation rules already expressed in this field’s schema; describe its meaning and usage instead.
llm_model
Use the exact model ID executing this call, from runtime/system context, for usage attribution. Supply it on every Atomic MCP tool call, including discovery and feedback, and update it if the model changes. Use the model ID rather than the client app name. If unavailable, omit it; never guess or ask the user.
Remove validation rules already expressed in this field’s schema; describe its meaning and usage instead.
{
"type": "object",
"required": [
"success"
],
"properties": {
"url": {
"type": "string",
"description": "Link for resolving the failure or completing the operation."
},
"data": {
"type": "object",
"required": [
"provider",
"query",
"results",
"count"
],
"properties": {
"count": {
"type": "number",
"description": "Number of records reported by the provider for this group."
},
"query": {
"type": "string"
},
"results": {
"type": "array",
"items": {
"type": "object",
"required": [
"provider",
"providerAssetId",
"title",
"gifUrl",
"previewUrl",
"sourceUrl",
"sourceName",
"rating",
"mediaType"
],
"properties": {
"title": {
"type": "string",
"description": "Display or content title of this returned item."
},
"width": {
"type": "number",
"description": "Horizontal image or layout dimension in the units of the containing resource."
},
"gifUrl": {
"type": "string"
},
"height": {
"type": "number",
"description": "Vertical image or layout dimension in the units of the containing resource."
},
"rating": {
"type": "string"
},
"provider": {
"type": "string",
"description": "Provider that supplied this result or supports this capability."
},
"mediaType": {
"type": "string"
},
"sizeBytes": {
"type": "number"
},
"sourceUrl": {
"type": "string",
"description": "Original public source URL associated with this result."
},
"previewUrl": {
"type": "string"
},
"sourceName": {
"type": "string",
"description": "Human-readable attribution name of the source."
},
"providerAssetId": {
"type": "string"
}
}
},
"description": "Per-item or per-step outcomes for this operation; inspect each status rather than assuming the batch succeeded."
},
"provider": {
"type": "string",
"description": "Provider that supplied this result or supports this capability."
}
},
"description": "Operation data; optional fields may be absent."
},
"error": {
"type": "string",
"description": "Why the operation failed."
},
"details": {
"type": "object",
"description": "Diagnostics keyed by errorCode."
},
"message": {
"type": "string",
"description": "Outcome or recovery instructions. Project selection means no action ran."
},
"success": {
"type": "boolean",
"description": "Operation success; on false inspect error/errorCode."
},
"upgrade": {
"type": "object",
"description": "Plan-upgrade guidance for an unavailable capability."
},
"category": {
"type": "string",
"description": "Failure category, such as invalid_input or plan_required."
},
"expected": {
"type": "boolean",
"description": "Whether this is an anticipated access, input, plan or state failure."
},
"projects": {
"type": "array",
"items": {
"type": "object",
"properties": {
"id": {
"type": "number",
"description": "Project ID for projectId."
},
"name": {
"type": "string",
"description": "Project name."
}
},
"description": "Accessible project."
},
"description": "Accessible project choices. Select a projectId and retry."
},
"errorCode": {
"type": "string",
"description": "Failure code for recovery."
},
"retryable": {
"type": "boolean",
"description": "Whether an unchanged request can be retried."
},
"statusCode": {
"type": "number",
"description": "HTTP-style failure status."
},
"executionTime": {
"type": "string",
"description": "Elapsed time in seconds, with an s suffix."
}
},
"description": "Operation result envelope."
}
Original tool metadata
{
"name": "search_gifs",
"title": "Search GIFs",
"description": "Search GIPHY for relevant animated GIFs. Returns direct GIF renditions and GIPHY source pages. Select one result, then call import_image_to_s3 before embedding it in content.\n\nQueries GIPHY without inserting an asset into content. Use import_image_to_s3 after choosing an exact rendition; provider quota and availability apply.",
"inputSchema": {
"type": "object",
"required": [
"query"
],
"properties": {
"limit": {
"type": "number",
"maximum": 12,
"minimum": 1,
"description": "Optional result count from 1 to 12. Defaults to 8."
},
"query": {
"type": "string",
"description": "Required concise GIF search phrase describing the reaction, concept, or visual beat."
},
"context": {
"type": "string",
"maxLength": 120,
"description": "Short purpose of this call for the activity log. Exclude personal data and private source content."
},
"language": {
"type": "string",
"description": "Optional two-letter language code. Defaults to en."
},
"llm_model": {
"type": "string",
"maxLength": 128,
"description": "Use the exact model ID executing this call, from runtime/system context, for usage attribution. Supply it on every Atomic MCP tool call, including discovery and feedback, and update it if the model changes. Use the model ID rather than the client app name. If unavailable, omit it; never guess or ask the user."
},
"projectId": {
"type": "number",
"description": "Atomic project ID from list_projects. Omit to use the configured project; if asked to choose, select one of the accessible returned IDs."
}
}
},
"outputSchema": {
"type": "object",
"required": [
"success"
],
"properties": {
"url": {
"type": "string",
"description": "Link for resolving the failure or completing the operation."
},
"data": {
"type": "object",
"required": [
"provider",
"query",
"results",
"count"
],
"properties": {
"count": {
"type": "number",
"description": "Number of records reported by the provider for this group."
},
"query": {
"type": "string"
},
"results": {
"type": "array",
"items": {
"type": "object",
"required": [
"provider",
"providerAssetId",
"title",
"gifUrl",
"previewUrl",
"sourceUrl",
"sourceName",
"rating",
"mediaType"
],
"properties": {
"title": {
"type": "string",
"description": "Display or content title of this returned item."
},
"width": {
"type": "number",
"description": "Horizontal image or layout dimension in the units of the containing resource."
},
"gifUrl": {
"type": "string"
},
"height": {
"type": "number",
"description": "Vertical image or layout dimension in the units of the containing resource."
},
"rating": {
"type": "string"
},
"provider": {
"type": "string",
"description": "Provider that supplied this result or supports this capability."
},
"mediaType": {
"type": "string"
},
"sizeBytes": {
"type": "number"
},
"sourceUrl": {
"type": "string",
"description": "Original public source URL associated with this result."
},
"previewUrl": {
"type": "string"
},
"sourceName": {
"type": "string",
"description": "Human-readable attribution name of the source."
},
"providerAssetId": {
"type": "string"
}
}
},
"description": "Per-item or per-step outcomes for this operation; inspect each status rather than assuming the batch succeeded."
},
"provider": {
"type": "string",
"description": "Provider that supplied this result or supports this capability."
}
},
"description": "Operation data; optional fields may be absent."
},
"error": {
"type": "string",
"description": "Why the operation failed."
},
"details": {
"type": "object",
"description": "Diagnostics keyed by errorCode."
},
"message": {
"type": "string",
"description": "Outcome or recovery instructions. Project selection means no action ran."
},
"success": {
"type": "boolean",
"description": "Operation success; on false inspect error/errorCode."
},
"upgrade": {
"type": "object",
"description": "Plan-upgrade guidance for an unavailable capability."
},
"category": {
"type": "string",
"description": "Failure category, such as invalid_input or plan_required."
},
"expected": {
"type": "boolean",
"description": "Whether this is an anticipated access, input, plan or state failure."
},
"projects": {
"type": "array",
"items": {
"type": "object",
"properties": {
"id": {
"type": "number",
"description": "Project ID for projectId."
},
"name": {
"type": "string",
"description": "Project name."
}
},
"description": "Accessible project."
},
"description": "Accessible project choices. Select a projectId and retry."
},
"errorCode": {
"type": "string",
"description": "Failure code for recovery."
},
"retryable": {
"type": "boolean",
"description": "Whether an unchanged request can be retried."
},
"statusCode": {
"type": "number",
"description": "HTTP-style failure status."
},
"executionTime": {
"type": "string",
"description": "Elapsed time in seconds, with an s suffix."
}
},
"description": "Operation result envelope."
},
"annotations": {
"readOnlyHint": true,
"openWorldHint": true,
"idempotentHint": true,
"destructiveHint": false
}
}
The title clearly communicates the tool’s action and subject. Keep it concise.
Description85/100
Search project Knowledge and return exact published supporting segments with stable citation locators. When knowledgeBaseIds is supplied it restricts the search to those bases; when omitted it searches all ready Knowledge bases in the project.
The description explains the capability, when to use it, and what to expect.
Inputs80/100
Remove validation rules already expressed in this field’s schema; describe its meaning and usage instead.
query
Factual search query.
Remove validation rules already expressed in this field’s schema; describe its meaning and usage instead.
knowledgeBaseIds
Optional knowledge-base filter. Omit it to search all ready Knowledge bases in the project.
Remove validation rules already expressed in this field’s schema; describe its meaning and usage instead.
folderIds
Optional folder allowlist within the selected knowledge bases.
Remove validation rules already expressed in this field’s schema; describe its meaning and usage instead.
candidateLimit
Maximum candidate files selected per scope.
Remove validation rules already expressed in this field’s schema; describe its meaning and usage instead.
limit
Maximum exact supporting segments returned.
Remove validation rules already expressed in this field’s schema; describe its meaning and usage instead.
offset
Zero-based segment offset for pagination.
Remove validation rules already expressed in this field’s schema; describe its meaning and usage instead.
minScore
Minimum deterministic segment match score.
Remove validation rules already expressed in this field’s schema; describe its meaning and usage instead.
projectId
Atomic project ID from list_projects. Omit to use the configured project; if asked to choose, select one of the accessible returned IDs.
Clear enough to supply this argument.
context
Short purpose of this call for the activity log. Exclude personal data and private source content.
Clear enough to supply this argument.
llm_model
Use the exact model ID executing this call, from runtime/system context, for usage attribution. Supply it on every Atomic MCP tool call, including discovery and feedback, and update it if the model changes. Use the model ID rather than the client app name. If unavailable, omit it; never guess or ask the user.
Remove validation rules already expressed in this field’s schema; describe its meaning and usage instead.
The title clearly communicates the tool’s action and subject. Keep it concise.
Description92/100
Search public LinkedIn posts published in the last 12 months. When a client LinkedIn profile URL is provided, searches both that client and general LinkedIn posts so the caller can choose the most relevant candidate while preferring a relevant client post.
Queries public post sources; it does not post to LinkedIn or modify content. Use an exact returned post URL with serialize_social_post_embed rather than inventing a URL.
The description explains the capability, when to use it, and what to expect.
Inputs86/100
Remove validation rules already expressed in this field’s schema; describe its meaning and usage instead.
query
Topic query without a client identifier, for example "pro rata rights venture capital startup investors".
Clear enough to supply this argument.
client_linkedin_profile_url
Optional public LinkedIn profile URL in the form https://www.linkedin.com/in/profile-identifier/.
Remove validation rules already expressed in this field’s schema; describe its meaning and usage instead.
num_results
Maximum number of exact LinkedIn post results to request per search scope.
Remove validation rules already expressed in this field’s schema; describe its meaning and usage instead.
max_characters
Maximum characters of content to return per result.
Remove validation rules already expressed in this field’s schema; describe its meaning and usage instead.
projectId
Atomic project ID from list_projects. Omit to use the configured project; if asked to choose, select one of the accessible returned IDs.
Clear enough to supply this argument.
context
Short purpose of this call for the activity log. Exclude personal data and private source content.
Remove validation rules already expressed in this field’s schema; describe its meaning and usage instead.
llm_model
Use the exact model ID executing this call, from runtime/system context, for usage attribution. Supply it on every Atomic MCP tool call, including discovery and feedback, and update it if the model changes. Use the model ID rather than the client app name. If unavailable, omit it; never guess or ask the user.
{
"type": "object",
"required": [
"success"
],
"properties": {
"url": {
"type": "string",
"description": "Link for resolving the failure or completing the operation."
},
"data": {
"type": "object",
"required": [
"publishedDateRange",
"usage",
"data",
"searchScope",
"queriesUsed"
],
"properties": {
"data": {
"type": "array",
"items": {
"anyOf": [
{
"type": "object",
"required": [
"authorScope",
"title",
"url",
"content"
],
"properties": {
"url": {
"type": "string",
"description": "URL returned for this resource or operation."
},
"title": {
"type": "string",
"description": "Display or content title of this returned item."
},
"content": {
"type": "string",
"description": "Returned content body in the format described by the containing resource."
},
"authorScope": {
"type": "string",
"const": "client"
},
"publishedDate": {
"type": "string"
}
}
},
{
"type": "object",
"required": [
"authorScope",
"title",
"url",
"content"
],
"properties": {
"url": {
"type": "string",
"description": "URL returned for this resource or operation."
},
"title": {
"type": "string",
"description": "Display or content title of this returned item."
},
"content": {
"type": "string",
"description": "Returned content body in the format described by the containing resource."
},
"authorScope": {
"type": "string",
"const": "general"
},
"publishedDate": {
"type": "string"
}
}
}
]
},
"description": "Result items or operation data inside this returned payload. Pagination fields describe only this result page."
},
"usage": {
"type": "object",
"required": [
"model",
"creditsUsed",
"inputTokens",
"outputTokens",
"providerCostDollars",
"executionTime"
],
"properties": {
"model": {
"type": "string",
"description": "Model identifier used for the reported generation or AI-search run."
},
"modelUsage": {
"type": "object",
"properties": {},
"description": "Actual execution models, including verification; never inferred from a phase label.",
"additionalProperties": {
"type": "object",
"description": "Nested operation-specific fields."
}
},
"phaseUsage": {
"type": "object",
"properties": {},
"description": "Costs charged in this execution, excluding phases restored from an earlier run."
},
"creditsUsed": {
"type": "number",
"description": "Atomic credits recorded as used by this execution."
},
"inputTokens": {
"type": "number",
"description": "Input tokens reported for this model execution."
},
"toolRetries": {
"type": "object",
"required": [
"attempts",
"providerCostDollars",
"toolCostDollars"
],
"properties": {
"attempts": {
"type": "number",
"description": "Processing or execution attempts associated with this record."
},
"toolCostDollars": {
"type": "number",
"description": "Independent costs for retry tool calls only; included in the phase total."
},
"providerCostDollars": {
"type": "number",
"description": "Whole model turns containing retries; included in the phase total."
}
},
"description": "Number of tool retries recorded for the execution."
},
"outputTokens": {
"type": "number",
"description": "Output tokens reported for this model execution."
},
"executionTime": {
"type": "number",
"description": "Elapsed execution duration reported by the tool."
},
"toolCostDollars": {
"type": "number",
"description": "Tool-related cost recorded for this execution, in US dollars."
},
"providerCostDollars": {
"type": "number",
"description": "Provider cost recorded for this execution, in US dollars."
},
"cacheReadInputTokens": {
"type": "number",
"description": "Input tokens served from a model prompt cache."
},
"cacheCreationInputTokens": {
"type": "number",
"description": "Input tokens charged for creating a model prompt cache."
}
},
"description": "Provider or Atomic usage measurements for this execution."
},
"queriesUsed": {
"type": "array",
"items": {
"type": "string"
}
},
"searchScope": {
"enum": [
"client_and_general",
"general"
],
"type": "string"
},
"clientIdentifier": {
"type": "string"
},
"publishedDateRange": {
"type": "object",
"required": [
"startPublishedDate",
"endPublishedDate"
],
"properties": {
"endPublishedDate": {
"type": "string"
},
"startPublishedDate": {
"type": "string"
}
}
}
},
"description": "Operation data; optional fields may be absent."
},
"error": {
"type": "string",
"description": "Why the operation failed."
},
"details": {
"type": "object",
"description": "Diagnostics keyed by errorCode."
},
"message": {
"type": "string",
"description": "Outcome or recovery instructions. Project selection means no action ran."
},
"success": {
"type": "boolean",
"description": "Operation success; on false inspect error/errorCode."
},
"upgrade": {
"type": "object",
"description": "Plan-upgrade guidance for an unavailable capability."
},
"category": {
"type": "string",
"description": "Failure category, such as invalid_input or plan_required."
},
"expected": {
"type": "boolean",
"description": "Whether this is an anticipated access, input, plan or state failure."
},
"projects": {
"type": "array",
"items": {
"type": "object",
"properties": {
"id": {
"type": "number",
"description": "Project ID for projectId."
},
"name": {
"type": "string",
"description": "Project name."
}
},
"description": "Accessible project."
},
"description": "Accessible project choices. Select a projectId and retry."
},
"errorCode": {
"type": "string",
"description": "Failure code for recovery."
},
"retryable": {
"type": "boolean",
"description": "Whether an unchanged request can be retried."
},
"statusCode": {
"type": "number",
"description": "HTTP-style failure status."
},
"executionTime": {
"type": "string",
"description": "Elapsed time in seconds, with an s suffix."
}
},
"description": "Operation result envelope."
}
Original tool metadata
{
"name": "search_linkedin_posts",
"title": "Search LinkedIn posts",
"description": "Search public LinkedIn posts published in the last 12 months. When a client LinkedIn profile URL is provided, searches both that client and general LinkedIn posts so the caller can choose the most relevant candidate while preferring a relevant client post.\n\nQueries public post sources; it does not post to LinkedIn or modify content. Use an exact returned post URL with serialize_social_post_embed rather than inventing a URL.",
"inputSchema": {
"type": "object",
"required": [
"query"
],
"properties": {
"query": {
"type": "string",
"description": "Topic query without a client identifier, for example \"pro rata rights venture capital startup investors\"."
},
"context": {
"type": "string",
"maxLength": 120,
"description": "Short purpose of this call for the activity log. Exclude personal data and private source content."
},
"llm_model": {
"type": "string",
"maxLength": 128,
"description": "Use the exact model ID executing this call, from runtime/system context, for usage attribution. Supply it on every Atomic MCP tool call, including discovery and feedback, and update it if the model changes. Use the model ID rather than the client app name. If unavailable, omit it; never guess or ask the user."
},
"projectId": {
"type": "number",
"description": "Atomic project ID from list_projects. Omit to use the configured project; if asked to choose, select one of the accessible returned IDs."
},
"num_results": {
"type": "number",
"default": 5,
"maximum": 10,
"minimum": 1,
"description": "Maximum number of exact LinkedIn post results to request per search scope."
},
"max_characters": {
"type": "number",
"default": 5000,
"maximum": 10000,
"minimum": 1,
"description": "Maximum characters of content to return per result."
},
"client_linkedin_profile_url": {
"type": "string",
"description": "Optional public LinkedIn profile URL in the form https://www.linkedin.com/in/profile-identifier/."
}
},
"additionalProperties": false
},
"outputSchema": {
"type": "object",
"required": [
"success"
],
"properties": {
"url": {
"type": "string",
"description": "Link for resolving the failure or completing the operation."
},
"data": {
"type": "object",
"required": [
"publishedDateRange",
"usage",
"data",
"searchScope",
"queriesUsed"
],
"properties": {
"data": {
"type": "array",
"items": {
"anyOf": [
{
"type": "object",
"required": [
"authorScope",
"title",
"url",
"content"
],
"properties": {
"url": {
"type": "string",
"description": "URL returned for this resource or operation."
},
"title": {
"type": "string",
"description": "Display or content title of this returned item."
},
"content": {
"type": "string",
"description": "Returned content body in the format described by the containing resource."
},
"authorScope": {
"type": "string",
"const": "client"
},
"publishedDate": {
"type": "string"
}
}
},
{
"type": "object",
"required": [
"authorScope",
"title",
"url",
"content"
],
"properties": {
"url": {
"type": "string",
"description": "URL returned for this resource or operation."
},
"title": {
"type": "string",
"description": "Display or content title of this returned item."
},
"content": {
"type": "string",
"description": "Returned content body in the format described by the containing resource."
},
"authorScope": {
"type": "string",
"const": "general"
},
"publishedDate": {
"type": "string"
}
}
}
]
},
"description": "Result items or operation data inside this returned payload. Pagination fields describe only this result page."
},
"usage": {
"type": "object",
"required": [
"model",
"creditsUsed",
"inputTokens",
"outputTokens",
"providerCostDollars",
"executionTime"
],
"properties": {
"model": {
"type": "string",
"description": "Model identifier used for the reported generation or AI-search run."
},
"modelUsage": {
"type": "object",
"properties": {},
"description": "Actual execution models, including verification; never inferred from a phase label.",
"additionalProperties": {
"type": "object",
"description": "Nested operation-specific fields."
}
},
"phaseUsage": {
"type": "object",
"properties": {},
"description": "Costs charged in this execution, excluding phases restored from an earlier run."
},
"creditsUsed": {
"type": "number",
"description": "Atomic credits recorded as used by this execution."
},
"inputTokens": {
"type": "number",
"description": "Input tokens reported for this model execution."
},
"toolRetries": {
"type": "object",
"required": [
"attempts",
"providerCostDollars",
"toolCostDollars"
],
"properties": {
"attempts": {
"type": "number",
"description": "Processing or execution attempts associated with this record."
},
"toolCostDollars": {
"type": "number",
"description": "Independent costs for retry tool calls only; included in the phase total."
},
"providerCostDollars": {
"type": "number",
"description": "Whole model turns containing retries; included in the phase total."
}
},
"description": "Number of tool retries recorded for the execution."
},
"outputTokens": {
"type": "number",
"description": "Output tokens reported for this model execution."
},
"executionTime": {
"type": "number",
"description": "Elapsed execution duration reported by the tool."
},
"toolCostDollars": {
"type": "number",
"description": "Tool-related cost recorded for this execution, in US dollars."
},
"providerCostDollars": {
"type": "number",
"description": "Provider cost recorded for this execution, in US dollars."
},
"cacheReadInputTokens": {
"type": "number",
"description": "Input tokens served from a model prompt cache."
},
"cacheCreationInputTokens": {
"type": "number",
"description": "Input tokens charged for creating a model prompt cache."
}
},
"description": "Provider or Atomic usage measurements for this execution."
},
"queriesUsed": {
"type": "array",
"items": {
"type": "string"
}
},
"searchScope": {
"enum": [
"client_and_general",
"general"
],
"type": "string"
},
"clientIdentifier": {
"type": "string"
},
"publishedDateRange": {
"type": "object",
"required": [
"startPublishedDate",
"endPublishedDate"
],
"properties": {
"endPublishedDate": {
"type": "string"
},
"startPublishedDate": {
"type": "string"
}
}
}
},
"description": "Operation data; optional fields may be absent."
},
"error": {
"type": "string",
"description": "Why the operation failed."
},
"details": {
"type": "object",
"description": "Diagnostics keyed by errorCode."
},
"message": {
"type": "string",
"description": "Outcome or recovery instructions. Project selection means no action ran."
},
"success": {
"type": "boolean",
"description": "Operation success; on false inspect error/errorCode."
},
"upgrade": {
"type": "object",
"description": "Plan-upgrade guidance for an unavailable capability."
},
"category": {
"type": "string",
"description": "Failure category, such as invalid_input or plan_required."
},
"expected": {
"type": "boolean",
"description": "Whether this is an anticipated access, input, plan or state failure."
},
"projects": {
"type": "array",
"items": {
"type": "object",
"properties": {
"id": {
"type": "number",
"description": "Project ID for projectId."
},
"name": {
"type": "string",
"description": "Project name."
}
},
"description": "Accessible project."
},
"description": "Accessible project choices. Select a projectId and retry."
},
"errorCode": {
"type": "string",
"description": "Failure code for recovery."
},
"retryable": {
"type": "boolean",
"description": "Whether an unchanged request can be retried."
},
"statusCode": {
"type": "number",
"description": "HTTP-style failure status."
},
"executionTime": {
"type": "string",
"description": "Elapsed time in seconds, with an s suffix."
}
},
"description": "Operation result envelope."
},
"annotations": {
"readOnlyHint": true,
"openWorldHint": true,
"idempotentHint": true,
"destructiveHint": false
}
}
The title clearly communicates the tool’s action and subject. Keep it concise.
Description98/100
Search the current project's product image library or list its full catalog. Omit query to return every uploaded first-party image so you can compare semantic relevance using the returned title, description, tags, use cases, and product area. Providing query applies a text filter to that metadata. Returns public image URLs and selection metadata without inserting or modifying content.
Reads the project's uploaded product-image catalog without inserting or modifying content. Use import_image_to_s3 for an external asset or enrich_content_images to place assets in supplied text.
The description explains the capability, when to use it, and what to expect.
Inputs85/100
Remove validation rules already expressed in this field’s schema; describe its meaning and usage instead.
query
Optional metadata text filter. Omit this to inspect the full project catalog and select images by meaning.
Clear enough to supply this argument.
limit
Optional maximum number of images to return. Omit this to return every matching image.
Remove validation rules already expressed in this field’s schema; describe its meaning and usage instead.
projectId
Atomic project ID from list_projects. Omit to use the configured project; if asked to choose, select one of the accessible returned IDs.
Clear enough to supply this argument.
context
Short purpose of this call for the activity log. Exclude personal data and private source content.
Remove validation rules already expressed in this field’s schema; describe its meaning and usage instead.
llm_model
Use the exact model ID executing this call, from runtime/system context, for usage attribution. Supply it on every Atomic MCP tool call, including discovery and feedback, and update it if the model changes. Use the model ID rather than the client app name. If unavailable, omit it; never guess or ask the user.
Remove validation rules already expressed in this field’s schema; describe its meaning and usage instead.
{
"type": "object",
"required": [
"success"
],
"properties": {
"url": {
"type": "string",
"description": "Link for resolving the failure or completing the operation."
},
"data": {
"type": "object",
"required": [
"images",
"count"
],
"properties": {
"count": {
"type": "number",
"description": "Number of records reported by the provider for this group."
},
"images": {
"type": "array",
"items": {
"type": "object",
"required": [
"imageUrl",
"title",
"description",
"tags",
"useCases",
"productArea",
"sourceOwner"
],
"properties": {
"id": {
"type": "number",
"description": "Identifier of this returned resource. Use it for subsequent reads or edits of the same resource."
},
"tags": {
"type": "array",
"items": {
"type": "string"
}
},
"title": {
"type": "string",
"description": "Display or content title of this returned item."
},
"imageUrl": {
"type": "string",
"description": "URL of the generated, uploaded or selected image."
},
"useCases": {
"type": "array",
"items": {
"type": "string"
},
"description": "Saved agent capabilities/use-case definitions, not evidence that they were executed."
},
"description": {
"type": "string",
"description": "Saved description of this resource or its purpose."
},
"productArea": {
"anyOf": [
{
"type": "null"
},
{
"type": "string"
}
]
},
"sourceOwner": {
"anyOf": [
{
"type": "null"
},
{
"type": "string"
}
]
}
}
}
}
},
"description": "Operation data; optional fields may be absent."
},
"error": {
"type": "string",
"description": "Why the operation failed."
},
"details": {
"type": "object",
"description": "Diagnostics keyed by errorCode."
},
"message": {
"type": "string",
"description": "Outcome or recovery instructions. Project selection means no action ran."
},
"success": {
"type": "boolean",
"description": "Operation success; on false inspect error/errorCode."
},
"upgrade": {
"type": "object",
"description": "Plan-upgrade guidance for an unavailable capability."
},
"category": {
"type": "string",
"description": "Failure category, such as invalid_input or plan_required."
},
"expected": {
"type": "boolean",
"description": "Whether this is an anticipated access, input, plan or state failure."
},
"projects": {
"type": "array",
"items": {
"type": "object",
"properties": {
"id": {
"type": "number",
"description": "Project ID for projectId."
},
"name": {
"type": "string",
"description": "Project name."
}
},
"description": "Accessible project."
},
"description": "Accessible project choices. Select a projectId and retry."
},
"errorCode": {
"type": "string",
"description": "Failure code for recovery."
},
"retryable": {
"type": "boolean",
"description": "Whether an unchanged request can be retried."
},
"statusCode": {
"type": "number",
"description": "HTTP-style failure status."
},
"executionTime": {
"type": "string",
"description": "Elapsed time in seconds, with an s suffix."
}
},
"description": "Operation result envelope."
}
Original tool metadata
{
"name": "search_product_images",
"title": "Search product images",
"description": "Search the current project's product image library or list its full catalog. Omit query to return every uploaded first-party image so you can compare semantic relevance using the returned title, description, tags, use cases, and product area. Providing query applies a text filter to that metadata. Returns public image URLs and selection metadata without inserting or modifying content.\n\nReads the project's uploaded product-image catalog without inserting or modifying content. Use import_image_to_s3 for an external asset or enrich_content_images to place assets in supplied text.",
"inputSchema": {
"type": "object",
"required": [],
"properties": {
"limit": {
"type": "number",
"minimum": 1,
"description": "Optional maximum number of images to return. Omit this to return every matching image."
},
"query": {
"type": "string",
"description": "Optional metadata text filter. Omit this to inspect the full project catalog and select images by meaning."
},
"context": {
"type": "string",
"maxLength": 120,
"description": "Short purpose of this call for the activity log. Exclude personal data and private source content."
},
"llm_model": {
"type": "string",
"maxLength": 128,
"description": "Use the exact model ID executing this call, from runtime/system context, for usage attribution. Supply it on every Atomic MCP tool call, including discovery and feedback, and update it if the model changes. Use the model ID rather than the client app name. If unavailable, omit it; never guess or ask the user."
},
"projectId": {
"type": "number",
"description": "Atomic project ID from list_projects. Omit to use the configured project; if asked to choose, select one of the accessible returned IDs."
}
}
},
"outputSchema": {
"type": "object",
"required": [
"success"
],
"properties": {
"url": {
"type": "string",
"description": "Link for resolving the failure or completing the operation."
},
"data": {
"type": "object",
"required": [
"images",
"count"
],
"properties": {
"count": {
"type": "number",
"description": "Number of records reported by the provider for this group."
},
"images": {
"type": "array",
"items": {
"type": "object",
"required": [
"imageUrl",
"title",
"description",
"tags",
"useCases",
"productArea",
"sourceOwner"
],
"properties": {
"id": {
"type": "number",
"description": "Identifier of this returned resource. Use it for subsequent reads or edits of the same resource."
},
"tags": {
"type": "array",
"items": {
"type": "string"
}
},
"title": {
"type": "string",
"description": "Display or content title of this returned item."
},
"imageUrl": {
"type": "string",
"description": "URL of the generated, uploaded or selected image."
},
"useCases": {
"type": "array",
"items": {
"type": "string"
},
"description": "Saved agent capabilities/use-case definitions, not evidence that they were executed."
},
"description": {
"type": "string",
"description": "Saved description of this resource or its purpose."
},
"productArea": {
"anyOf": [
{
"type": "null"
},
{
"type": "string"
}
]
},
"sourceOwner": {
"anyOf": [
{
"type": "null"
},
{
"type": "string"
}
]
}
}
}
}
},
"description": "Operation data; optional fields may be absent."
},
"error": {
"type": "string",
"description": "Why the operation failed."
},
"details": {
"type": "object",
"description": "Diagnostics keyed by errorCode."
},
"message": {
"type": "string",
"description": "Outcome or recovery instructions. Project selection means no action ran."
},
"success": {
"type": "boolean",
"description": "Operation success; on false inspect error/errorCode."
},
"upgrade": {
"type": "object",
"description": "Plan-upgrade guidance for an unavailable capability."
},
"category": {
"type": "string",
"description": "Failure category, such as invalid_input or plan_required."
},
"expected": {
"type": "boolean",
"description": "Whether this is an anticipated access, input, plan or state failure."
},
"projects": {
"type": "array",
"items": {
"type": "object",
"properties": {
"id": {
"type": "number",
"description": "Project ID for projectId."
},
"name": {
"type": "string",
"description": "Project name."
}
},
"description": "Accessible project."
},
"description": "Accessible project choices. Select a projectId and retry."
},
"errorCode": {
"type": "string",
"description": "Failure code for recovery."
},
"retryable": {
"type": "boolean",
"description": "Whether an unchanged request can be retried."
},
"statusCode": {
"type": "number",
"description": "HTTP-style failure status."
},
"executionTime": {
"type": "string",
"description": "Elapsed time in seconds, with an s suffix."
}
},
"description": "Operation result envelope."
},
"annotations": {
"readOnlyHint": true,
"openWorldHint": false,
"idempotentHint": true,
"destructiveHint": false
}
}
The title clearly communicates the tool’s action and subject. Keep it concise.
Description97/100
Search the published product catalog of a project-owned WordPress/WooCommerce connection. Returns grounded product IDs, names, links, images, prices, stock state, and categories. Use only returned products; never invent product facts or IDs.
Reads the published product catalog through the connected store; it does not create or update products. Use list_woocommerce_products for the authenticated inventory including non-published records.
The description explains the capability, when to use it, and what to expect.
Inputs92/100
Remove validation rules already expressed in this field’s schema; describe its meaning and usage instead.
projectPublishingId
Atomic publishing connection ID from get_publishing_connections, not the provider site or post ID.
Clear enough to supply this argument.
query
Optional product search phrase. Omit it to browse the catalog before narrowing the search.
Clear enough to supply this argument.
limit
Maximum products to return. Defaults to 10.
Remove validation rules already expressed in this field’s schema; describe its meaning and usage instead.
projectId
Atomic project ID from list_projects. Omit to use the configured project; if asked to choose, select one of the accessible returned IDs.
Clear enough to supply this argument.
context
Short purpose of this call for the activity log. Exclude personal data and private source content.
Remove validation rules already expressed in this field’s schema; describe its meaning and usage instead.
llm_model
Use the exact model ID executing this call, from runtime/system context, for usage attribution. Supply it on every Atomic MCP tool call, including discovery and feedback, and update it if the model changes. Use the model ID rather than the client app name. If unavailable, omit it; never guess or ask the user.
{
"type": "object",
"required": [
"success"
],
"properties": {
"url": {
"type": "string",
"description": "Link for resolving the failure or completing the operation."
},
"data": {
"type": "object",
"required": [
"projectPublishingId",
"products"
],
"properties": {
"products": {
"type": "array",
"items": {
"type": "object",
"required": [
"id",
"name",
"permalink",
"categoryNames"
],
"properties": {
"id": {
"type": "number",
"description": "Identifier of this returned resource. Use it for subsequent reads or edits of the same resource."
},
"sku": {
"type": "string"
},
"name": {
"type": "string",
"description": "Human-readable name of this resource."
},
"imageUrl": {
"type": "string",
"description": "URL of the generated, uploaded or selected image."
},
"permalink": {
"type": "string",
"description": "Public CMS URL assigned to this content item; publication status determines whether it is live."
},
"priceMinor": {
"type": "string"
},
"stockStatus": {
"type": "string"
},
"currencyCode": {
"type": "string"
},
"categoryNames": {
"type": "array",
"items": {
"type": "string"
}
},
"currencyMinorUnit": {
"type": "number"
}
}
}
},
"projectPublishingId": {
"type": "number",
"description": "Atomic publishing connection used for this native CMS operation."
}
},
"description": "Operation data; optional fields may be absent."
},
"error": {
"type": "string",
"description": "Why the operation failed."
},
"details": {
"type": "object",
"description": "Diagnostics keyed by errorCode."
},
"message": {
"type": "string",
"description": "Outcome or recovery instructions. Project selection means no action ran."
},
"success": {
"type": "boolean",
"description": "Operation success; on false inspect error/errorCode."
},
"upgrade": {
"type": "object",
"description": "Plan-upgrade guidance for an unavailable capability."
},
"category": {
"type": "string",
"description": "Failure category, such as invalid_input or plan_required."
},
"expected": {
"type": "boolean",
"description": "Whether this is an anticipated access, input, plan or state failure."
},
"projects": {
"type": "array",
"items": {
"type": "object",
"properties": {
"id": {
"type": "number",
"description": "Project ID for projectId."
},
"name": {
"type": "string",
"description": "Project name."
}
},
"description": "Accessible project."
},
"description": "Accessible project choices. Select a projectId and retry."
},
"errorCode": {
"type": "string",
"description": "Failure code for recovery."
},
"retryable": {
"type": "boolean",
"description": "Whether an unchanged request can be retried."
},
"statusCode": {
"type": "number",
"description": "HTTP-style failure status."
},
"executionTime": {
"type": "string",
"description": "Elapsed time in seconds, with an s suffix."
}
},
"description": "Operation result envelope."
}
Original tool metadata
{
"name": "search_woocommerce_products",
"title": "Search WooCommerce products",
"description": "Search the published product catalog of a project-owned WordPress/WooCommerce connection. Returns grounded product IDs, names, links, images, prices, stock state, and categories. Use only returned products; never invent product facts or IDs.\n\nReads the published product catalog through the connected store; it does not create or update products. Use list_woocommerce_products for the authenticated inventory including non-published records.",
"inputSchema": {
"type": "object",
"required": [
"projectPublishingId"
],
"properties": {
"limit": {
"type": "number",
"maximum": 100,
"minimum": 1,
"description": "Maximum products to return. Defaults to 10."
},
"query": {
"type": "string",
"description": "Optional product search phrase. Omit it to browse the catalog before narrowing the search."
},
"context": {
"type": "string",
"maxLength": 120,
"description": "Short purpose of this call for the activity log. Exclude personal data and private source content."
},
"llm_model": {
"type": "string",
"maxLength": 128,
"description": "Use the exact model ID executing this call, from runtime/system context, for usage attribution. Supply it on every Atomic MCP tool call, including discovery and feedback, and update it if the model changes. Use the model ID rather than the client app name. If unavailable, omit it; never guess or ask the user."
},
"projectId": {
"type": "number",
"description": "Atomic project ID from list_projects. Omit to use the configured project; if asked to choose, select one of the accessible returned IDs."
},
"projectPublishingId": {
"type": "number",
"description": "Atomic publishing connection ID from get_publishing_connections, not the provider site or post ID."
}
},
"additionalProperties": false
},
"outputSchema": {
"type": "object",
"required": [
"success"
],
"properties": {
"url": {
"type": "string",
"description": "Link for resolving the failure or completing the operation."
},
"data": {
"type": "object",
"required": [
"projectPublishingId",
"products"
],
"properties": {
"products": {
"type": "array",
"items": {
"type": "object",
"required": [
"id",
"name",
"permalink",
"categoryNames"
],
"properties": {
"id": {
"type": "number",
"description": "Identifier of this returned resource. Use it for subsequent reads or edits of the same resource."
},
"sku": {
"type": "string"
},
"name": {
"type": "string",
"description": "Human-readable name of this resource."
},
"imageUrl": {
"type": "string",
"description": "URL of the generated, uploaded or selected image."
},
"permalink": {
"type": "string",
"description": "Public CMS URL assigned to this content item; publication status determines whether it is live."
},
"priceMinor": {
"type": "string"
},
"stockStatus": {
"type": "string"
},
"currencyCode": {
"type": "string"
},
"categoryNames": {
"type": "array",
"items": {
"type": "string"
}
},
"currencyMinorUnit": {
"type": "number"
}
}
}
},
"projectPublishingId": {
"type": "number",
"description": "Atomic publishing connection used for this native CMS operation."
}
},
"description": "Operation data; optional fields may be absent."
},
"error": {
"type": "string",
"description": "Why the operation failed."
},
"details": {
"type": "object",
"description": "Diagnostics keyed by errorCode."
},
"message": {
"type": "string",
"description": "Outcome or recovery instructions. Project selection means no action ran."
},
"success": {
"type": "boolean",
"description": "Operation success; on false inspect error/errorCode."
},
"upgrade": {
"type": "object",
"description": "Plan-upgrade guidance for an unavailable capability."
},
"category": {
"type": "string",
"description": "Failure category, such as invalid_input or plan_required."
},
"expected": {
"type": "boolean",
"description": "Whether this is an anticipated access, input, plan or state failure."
},
"projects": {
"type": "array",
"items": {
"type": "object",
"properties": {
"id": {
"type": "number",
"description": "Project ID for projectId."
},
"name": {
"type": "string",
"description": "Project name."
}
},
"description": "Accessible project."
},
"description": "Accessible project choices. Select a projectId and retry."
},
"errorCode": {
"type": "string",
"description": "Failure code for recovery."
},
"retryable": {
"type": "boolean",
"description": "Whether an unchanged request can be retried."
},
"statusCode": {
"type": "number",
"description": "HTTP-style failure status."
},
"executionTime": {
"type": "string",
"description": "Elapsed time in seconds, with an s suffix."
}
},
"description": "Operation result envelope."
},
"annotations": {
"readOnlyHint": true,
"openWorldHint": true,
"idempotentHint": true,
"destructiveHint": false
}
}
The title clearly communicates the tool’s action and subject. Keep it concise.
Description89/100
Send an email directly from a configured project SMTP mailbox. Use get_email_connectors first to find active mailbox IDs. Use this for outreach or external recipient messages that should come from the connected mailbox. If emailConnectorId is omitted, the project must have exactly one active email connector.
Delivers a real message from the selected mailbox; repeated sends can duplicate delivery. A discovered address or a drafted body is not authorization to send. Reading messages uses get_email_messages.
The description explains the capability, when to use it, and what to expect.
Inputs93/100
Input documentation gives an agent enough context to populate the arguments.
emailConnectorId
Optional only when the project has exactly one active email connector. Otherwise pass the connector ID from get_email_connectors.
Clear enough to supply this argument.
emailConnectorIds
Optional mailbox IDs from get_email_connectors to choose from when autoRotate is enabled.
Clear enough to supply this argument.
autoRotate
When true, send from the selected active mailbox with the fewest successful sends today.
Clear enough to supply this argument.
to
Primary recipient email addresses.
Clear enough to supply this argument.
cc
Optional copied recipient email addresses.
Clear enough to supply this argument.
bcc
Optional blind copied recipient email addresses.
Clear enough to supply this argument.
replyTo
Optional reply-to email address.
Clear enough to supply this argument.
inReplyTo
Optional Message-ID of the email being answered. Sets the In-Reply-To header.
Clear enough to supply this argument.
references
Optional ordered Message-IDs for the conversation References header.
Clear enough to supply this argument.
subject
Email subject line.
Clear enough to supply this argument.
body
Email body. Use HTML when bodyFormat is "html"; use plain text when bodyFormat is "text".
Clear enough to supply this argument.
bodyFormat
Whether to send body as HTML or plain text. Defaults to html.
Clear enough to supply this argument.
projectId
Atomic project ID from list_projects. Omit to use the configured project; if asked to choose, select one of the accessible returned IDs.
Clear enough to supply this argument.
context
Short purpose of this call for the activity log. Exclude personal data and private source content.
Clear enough to supply this argument.
llm_model
Use the exact model ID executing this call, from runtime/system context, for usage attribution. Supply it on every Atomic MCP tool call, including discovery and feedback, and update it if the model changes. Use the model ID rather than the client app name. If unavailable, omit it; never guess or ask the user.
{
"type": "object",
"required": [
"success"
],
"properties": {
"url": {
"type": "string",
"description": "Link for resolving the failure or completing the operation."
},
"data": {
"type": "object",
"required": [
"success",
"emailSendId",
"accepted",
"rejected",
"sentAt"
],
"properties": {
"error": {
"type": "string",
"description": "Failure details reported by this operation or its provider."
},
"sentAt": {
"type": "string"
},
"success": {
"type": "boolean",
"description": "Whether this nested operation completed successfully. Inspect the containing result for details."
},
"accepted": {
"type": "array",
"items": {
"type": "string"
}
},
"rejected": {
"type": "array",
"items": {
"type": "string"
}
},
"messageId": {
"type": "string"
},
"emailSendId": {
"type": "number"
},
"emailConnectorId": {
"type": "number"
},
"emailConnectorEmail": {
"type": "string"
}
},
"description": "Operation data; optional fields may be absent."
},
"error": {
"type": "string",
"description": "Why the operation failed."
},
"details": {
"type": "object",
"description": "Diagnostics keyed by errorCode."
},
"message": {
"type": "string",
"description": "Outcome or recovery instructions. Project selection means no action ran."
},
"success": {
"type": "boolean",
"description": "Operation success; on false inspect error/errorCode."
},
"upgrade": {
"type": "object",
"description": "Plan-upgrade guidance for an unavailable capability."
},
"category": {
"type": "string",
"description": "Failure category, such as invalid_input or plan_required."
},
"expected": {
"type": "boolean",
"description": "Whether this is an anticipated access, input, plan or state failure."
},
"projects": {
"type": "array",
"items": {
"type": "object",
"properties": {
"id": {
"type": "number",
"description": "Project ID for projectId."
},
"name": {
"type": "string",
"description": "Project name."
}
},
"description": "Accessible project."
},
"description": "Accessible project choices. Select a projectId and retry."
},
"errorCode": {
"type": "string",
"description": "Failure code for recovery."
},
"retryable": {
"type": "boolean",
"description": "Whether an unchanged request can be retried."
},
"statusCode": {
"type": "number",
"description": "HTTP-style failure status."
},
"executionTime": {
"type": "string",
"description": "Elapsed time in seconds, with an s suffix."
}
},
"description": "Operation result envelope."
}
Original tool metadata
{
"name": "send_email",
"title": "Send email",
"description": "Send an email directly from a configured project SMTP mailbox. Use get_email_connectors first to find active mailbox IDs. Use this for outreach or external recipient messages that should come from the connected mailbox. If emailConnectorId is omitted, the project must have exactly one active email connector.\n\nDelivers a real message from the selected mailbox; repeated sends can duplicate delivery. A discovered address or a drafted body is not authorization to send. Reading messages uses get_email_messages.",
"inputSchema": {
"type": "object",
"required": [
"to",
"subject",
"body"
],
"properties": {
"cc": {
"type": "array",
"items": {
"type": "string"
},
"description": "Optional copied recipient email addresses."
},
"to": {
"type": "array",
"items": {
"type": "string"
},
"description": "Primary recipient email addresses."
},
"bcc": {
"type": "array",
"items": {
"type": "string"
},
"description": "Optional blind copied recipient email addresses."
},
"body": {
"type": "string",
"description": "Email body. Use HTML when bodyFormat is \"html\"; use plain text when bodyFormat is \"text\"."
},
"context": {
"type": "string",
"maxLength": 120,
"description": "Short purpose of this call for the activity log. Exclude personal data and private source content."
},
"replyTo": {
"type": "string",
"description": "Optional reply-to email address."
},
"subject": {
"type": "string",
"description": "Email subject line."
},
"inReplyTo": {
"type": "string",
"description": "Optional Message-ID of the email being answered. Sets the In-Reply-To header."
},
"llm_model": {
"type": "string",
"maxLength": 128,
"description": "Use the exact model ID executing this call, from runtime/system context, for usage attribution. Supply it on every Atomic MCP tool call, including discovery and feedback, and update it if the model changes. Use the model ID rather than the client app name. If unavailable, omit it; never guess or ask the user."
},
"projectId": {
"type": "number",
"description": "Atomic project ID from list_projects. Omit to use the configured project; if asked to choose, select one of the accessible returned IDs."
},
"autoRotate": {
"type": "boolean",
"default": false,
"description": "When true, send from the selected active mailbox with the fewest successful sends today."
},
"bodyFormat": {
"enum": [
"html",
"text"
],
"type": "string",
"default": "html",
"description": "Whether to send body as HTML or plain text. Defaults to html."
},
"references": {
"type": "array",
"items": {
"type": "string"
},
"description": "Optional ordered Message-IDs for the conversation References header."
},
"emailConnectorId": {
"type": "number",
"description": "Optional only when the project has exactly one active email connector. Otherwise pass the connector ID from get_email_connectors."
},
"emailConnectorIds": {
"type": "array",
"items": {
"type": "number"
},
"description": "Optional mailbox IDs from get_email_connectors to choose from when autoRotate is enabled."
}
}
},
"outputSchema": {
"type": "object",
"required": [
"success"
],
"properties": {
"url": {
"type": "string",
"description": "Link for resolving the failure or completing the operation."
},
"data": {
"type": "object",
"required": [
"success",
"emailSendId",
"accepted",
"rejected",
"sentAt"
],
"properties": {
"error": {
"type": "string",
"description": "Failure details reported by this operation or its provider."
},
"sentAt": {
"type": "string"
},
"success": {
"type": "boolean",
"description": "Whether this nested operation completed successfully. Inspect the containing result for details."
},
"accepted": {
"type": "array",
"items": {
"type": "string"
}
},
"rejected": {
"type": "array",
"items": {
"type": "string"
}
},
"messageId": {
"type": "string"
},
"emailSendId": {
"type": "number"
},
"emailConnectorId": {
"type": "number"
},
"emailConnectorEmail": {
"type": "string"
}
},
"description": "Operation data; optional fields may be absent."
},
"error": {
"type": "string",
"description": "Why the operation failed."
},
"details": {
"type": "object",
"description": "Diagnostics keyed by errorCode."
},
"message": {
"type": "string",
"description": "Outcome or recovery instructions. Project selection means no action ran."
},
"success": {
"type": "boolean",
"description": "Operation success; on false inspect error/errorCode."
},
"upgrade": {
"type": "object",
"description": "Plan-upgrade guidance for an unavailable capability."
},
"category": {
"type": "string",
"description": "Failure category, such as invalid_input or plan_required."
},
"expected": {
"type": "boolean",
"description": "Whether this is an anticipated access, input, plan or state failure."
},
"projects": {
"type": "array",
"items": {
"type": "object",
"properties": {
"id": {
"type": "number",
"description": "Project ID for projectId."
},
"name": {
"type": "string",
"description": "Project name."
}
},
"description": "Accessible project."
},
"description": "Accessible project choices. Select a projectId and retry."
},
"errorCode": {
"type": "string",
"description": "Failure code for recovery."
},
"retryable": {
"type": "boolean",
"description": "Whether an unchanged request can be retried."
},
"statusCode": {
"type": "number",
"description": "HTTP-style failure status."
},
"executionTime": {
"type": "string",
"description": "Elapsed time in seconds, with an s suffix."
}
},
"description": "Operation result envelope."
},
"annotations": {
"readOnlyHint": false,
"openWorldHint": true,
"idempotentHint": false,
"destructiveHint": false
}
}
The title clearly communicates the tool’s action and subject. Keep it concise.
Description90/100
Send a notification via email or Slack. Use this tool to notify users about important events, updates, or results from your work.
For EMAIL notifications:
- Requires: channel="EMAIL", subject, message, and recipients (array of email addresses)
- The email will be sent using the branded email template
- The message MUST be formatted in HTML (not Markdown or plain text). Use HTML tags like <p>, <strong>, <em>, <br>, <ul>, <li>, <h1>-<h6>, <a>, etc. Markdown syntax is NOT supported. Newlines are automatically converted to <br> tags, but you should use proper HTML tags for better formatting.
For SLACK notifications:
- Requires: channel="SLACK", message
- The message will be sent to the project's configured Slack channel
- Note: Slack integration must be configured in project settings
Delivers a real email/Slack notification to the selected destination. It does not create a reminder or merely draft a message; avoid repeating an uncertain send without checking delivery.
The description explains the capability, when to use it, and what to expect.
Inputs82/100
Remove validation rules already expressed in this field’s schema; describe its meaning and usage instead.
channel
The notification channel to use. "EMAIL" for email notifications, "SLACK" for Slack messages.
Remove validation rules already expressed in this field’s schema; describe its meaning and usage instead.
message
The message content to send. For email, this MUST be formatted in HTML (not Markdown or plain text). Use HTML tags like <p>, <strong>, <em>, <br>, <ul>, <li>, <h1>-<h6>, <a>, etc. Markdown syntax is NOT supported. Newlines are automatically converted to <br> tags, but you should use proper HTML tags for better formatting. The message will be rendered in the branded HTML email template. For Slack, this is the message text.
Clear enough to supply this argument.
subject
REQUIRED for EMAIL channel. The email subject line (max 200 characters).
Remove validation rules already expressed in this field’s schema; describe its meaning and usage instead.
recipients
REQUIRED for EMAIL channel. Array of email addresses to send the notification to.
Remove validation rules already expressed in this field’s schema; describe its meaning and usage instead.
projectId
Atomic project ID from list_projects. Omit to use the configured project; if asked to choose, select one of the accessible returned IDs.
Clear enough to supply this argument.
context
Short purpose of this call for the activity log. Exclude personal data and private source content.
Remove validation rules already expressed in this field’s schema; describe its meaning and usage instead.
llm_model
Use the exact model ID executing this call, from runtime/system context, for usage attribution. Supply it on every Atomic MCP tool call, including discovery and feedback, and update it if the model changes. Use the model ID rather than the client app name. If unavailable, omit it; never guess or ask the user.
Remove validation rules already expressed in this field’s schema; describe its meaning and usage instead.
{
"type": "object",
"required": [
"success"
],
"properties": {
"url": {
"type": "string",
"description": "Link for resolving the failure or completing the operation."
},
"data": {
"anyOf": [
{
"type": "object",
"required": [
"success",
"channel",
"message",
"sentAt",
"recipients"
],
"properties": {
"sentAt": {
"type": "string"
},
"channel": {
"type": "string"
},
"message": {
"type": "string",
"description": "Outcome, explanation or recovery instructions returned by the operation."
},
"success": {
"type": "boolean",
"description": "Whether this nested operation completed successfully. Inspect the containing result for details."
},
"recipients": {
"type": "number"
}
}
},
{
"type": "object",
"required": [
"success",
"channel",
"message",
"sentAt"
],
"properties": {
"sentAt": {
"type": "string"
},
"channel": {
"type": "string"
},
"message": {
"type": "string",
"description": "Outcome, explanation or recovery instructions returned by the operation."
},
"success": {
"type": "boolean",
"description": "Whether this nested operation completed successfully. Inspect the containing result for details."
}
}
},
{
"type": "object",
"required": [
"success",
"channel",
"message",
"sentAt",
"error"
],
"properties": {
"error": {
"type": "string",
"description": "Failure details reported by this operation or its provider."
},
"sentAt": {
"type": "string"
},
"channel": {
"type": "string"
},
"message": {
"type": "string",
"description": "Outcome, explanation or recovery instructions returned by the operation."
},
"success": {
"type": "boolean",
"description": "Whether this nested operation completed successfully. Inspect the containing result for details."
}
}
}
],
"description": "Operation data; optional fields may be absent."
},
"error": {
"type": "string",
"description": "Why the operation failed."
},
"details": {
"type": "object",
"description": "Diagnostics keyed by errorCode."
},
"message": {
"type": "string",
"description": "Outcome or recovery instructions. Project selection means no action ran."
},
"success": {
"type": "boolean",
"description": "Operation success; on false inspect error/errorCode."
},
"upgrade": {
"type": "object",
"description": "Plan-upgrade guidance for an unavailable capability."
},
"category": {
"type": "string",
"description": "Failure category, such as invalid_input or plan_required."
},
"expected": {
"type": "boolean",
"description": "Whether this is an anticipated access, input, plan or state failure."
},
"projects": {
"type": "array",
"items": {
"type": "object",
"properties": {
"id": {
"type": "number",
"description": "Project ID for projectId."
},
"name": {
"type": "string",
"description": "Project name."
}
},
"description": "Accessible project."
},
"description": "Accessible project choices. Select a projectId and retry."
},
"errorCode": {
"type": "string",
"description": "Failure code for recovery."
},
"retryable": {
"type": "boolean",
"description": "Whether an unchanged request can be retried."
},
"statusCode": {
"type": "number",
"description": "HTTP-style failure status."
},
"executionTime": {
"type": "string",
"description": "Elapsed time in seconds, with an s suffix."
}
},
"description": "Operation result envelope."
}
Original tool metadata
{
"name": "send_notification",
"title": "Send notification",
"description": "Send a notification via email or Slack. Use this tool to notify users about important events, updates, or results from your work.\n\nFor EMAIL notifications:\n- Requires: channel=\"EMAIL\", subject, message, and recipients (array of email addresses)\n- The email will be sent using the branded email template\n- The message MUST be formatted in HTML (not Markdown or plain text). Use HTML tags like <p>, <strong>, <em>, <br>, <ul>, <li>, <h1>-<h6>, <a>, etc. Markdown syntax is NOT supported. Newlines are automatically converted to <br> tags, but you should use proper HTML tags for better formatting.\n\nFor SLACK notifications:\n- Requires: channel=\"SLACK\", message\n- The message will be sent to the project's configured Slack channel\n- Note: Slack integration must be configured in project settings\n\nDelivers a real email/Slack notification to the selected destination. It does not create a reminder or merely draft a message; avoid repeating an uncertain send without checking delivery.",
"inputSchema": {
"type": "object",
"required": [
"channel",
"message"
],
"properties": {
"channel": {
"enum": [
"EMAIL",
"SLACK"
],
"type": "string",
"description": "The notification channel to use. \"EMAIL\" for email notifications, \"SLACK\" for Slack messages."
},
"context": {
"type": "string",
"maxLength": 120,
"description": "Short purpose of this call for the activity log. Exclude personal data and private source content."
},
"message": {
"type": "string",
"description": "The message content to send. For email, this MUST be formatted in HTML (not Markdown or plain text). Use HTML tags like <p>, <strong>, <em>, <br>, <ul>, <li>, <h1>-<h6>, <a>, etc. Markdown syntax is NOT supported. Newlines are automatically converted to <br> tags, but you should use proper HTML tags for better formatting. The message will be rendered in the branded HTML email template. For Slack, this is the message text."
},
"subject": {
"type": "string",
"description": "REQUIRED for EMAIL channel. The email subject line (max 200 characters)."
},
"llm_model": {
"type": "string",
"maxLength": 128,
"description": "Use the exact model ID executing this call, from runtime/system context, for usage attribution. Supply it on every Atomic MCP tool call, including discovery and feedback, and update it if the model changes. Use the model ID rather than the client app name. If unavailable, omit it; never guess or ask the user."
},
"projectId": {
"type": "number",
"description": "Atomic project ID from list_projects. Omit to use the configured project; if asked to choose, select one of the accessible returned IDs."
},
"recipients": {
"type": "array",
"items": {
"type": "string"
},
"description": "REQUIRED for EMAIL channel. Array of email addresses to send the notification to."
}
}
},
"outputSchema": {
"type": "object",
"required": [
"success"
],
"properties": {
"url": {
"type": "string",
"description": "Link for resolving the failure or completing the operation."
},
"data": {
"anyOf": [
{
"type": "object",
"required": [
"success",
"channel",
"message",
"sentAt",
"recipients"
],
"properties": {
"sentAt": {
"type": "string"
},
"channel": {
"type": "string"
},
"message": {
"type": "string",
"description": "Outcome, explanation or recovery instructions returned by the operation."
},
"success": {
"type": "boolean",
"description": "Whether this nested operation completed successfully. Inspect the containing result for details."
},
"recipients": {
"type": "number"
}
}
},
{
"type": "object",
"required": [
"success",
"channel",
"message",
"sentAt"
],
"properties": {
"sentAt": {
"type": "string"
},
"channel": {
"type": "string"
},
"message": {
"type": "string",
"description": "Outcome, explanation or recovery instructions returned by the operation."
},
"success": {
"type": "boolean",
"description": "Whether this nested operation completed successfully. Inspect the containing result for details."
}
}
},
{
"type": "object",
"required": [
"success",
"channel",
"message",
"sentAt",
"error"
],
"properties": {
"error": {
"type": "string",
"description": "Failure details reported by this operation or its provider."
},
"sentAt": {
"type": "string"
},
"channel": {
"type": "string"
},
"message": {
"type": "string",
"description": "Outcome, explanation or recovery instructions returned by the operation."
},
"success": {
"type": "boolean",
"description": "Whether this nested operation completed successfully. Inspect the containing result for details."
}
}
}
],
"description": "Operation data; optional fields may be absent."
},
"error": {
"type": "string",
"description": "Why the operation failed."
},
"details": {
"type": "object",
"description": "Diagnostics keyed by errorCode."
},
"message": {
"type": "string",
"description": "Outcome or recovery instructions. Project selection means no action ran."
},
"success": {
"type": "boolean",
"description": "Operation success; on false inspect error/errorCode."
},
"upgrade": {
"type": "object",
"description": "Plan-upgrade guidance for an unavailable capability."
},
"category": {
"type": "string",
"description": "Failure category, such as invalid_input or plan_required."
},
"expected": {
"type": "boolean",
"description": "Whether this is an anticipated access, input, plan or state failure."
},
"projects": {
"type": "array",
"items": {
"type": "object",
"properties": {
"id": {
"type": "number",
"description": "Project ID for projectId."
},
"name": {
"type": "string",
"description": "Project name."
}
},
"description": "Accessible project."
},
"description": "Accessible project choices. Select a projectId and retry."
},
"errorCode": {
"type": "string",
"description": "Failure code for recovery."
},
"retryable": {
"type": "boolean",
"description": "Whether an unchanged request can be retried."
},
"statusCode": {
"type": "number",
"description": "HTTP-style failure status."
},
"executionTime": {
"type": "string",
"description": "Elapsed time in seconds, with an s suffix."
}
},
"description": "Operation result envelope."
},
"annotations": {
"readOnlyHint": false,
"openWorldHint": true,
"idempotentHint": false,
"destructiveHint": false
}
}
The title clearly communicates the tool’s action and subject. Keep it concise.
Description98/100
Serialize raw HTML into the canonical Atomic HtmlEmbedNode wrapper. Returns wrapperHtml with the required data-atomic-html-embed marker and standard UTF-8 base64 payload. Use this tool whenever edited content needs an HTML embed; never calculate data-html-base64 yourself.
Formats supplied HTML into an embed string without saving it or executing a workflow. Use a content editing tool only when the returned wrapper should be stored.
The description explains the capability, when to use it, and what to expect.
Inputs92/100
Remove validation rules already expressed in this field’s schema; describe its meaning and usage instead.
html
Complete raw HTML payload to embed. It is UTF-8 base64 encoded by this tool.
Clear enough to supply this argument.
label
Human-readable embed label. Defaults to "HTML embed".
Clear enough to supply this argument.
height
Editor preview height in pixels. Defaults to 500 and is constrained to 200-1200.
Remove validation rules already expressed in this field’s schema; describe its meaning and usage instead.
projectId
Atomic project ID from list_projects. Omit to use the configured project; if asked to choose, select one of the accessible returned IDs.
Clear enough to supply this argument.
context
Short purpose of this call for the activity log. Exclude personal data and private source content.
Remove validation rules already expressed in this field’s schema; describe its meaning and usage instead.
llm_model
Use the exact model ID executing this call, from runtime/system context, for usage attribution. Supply it on every Atomic MCP tool call, including discovery and feedback, and update it if the model changes. Use the model ID rather than the client app name. If unavailable, omit it; never guess or ask the user.
{
"type": "object",
"required": [
"success"
],
"properties": {
"url": {
"type": "string",
"description": "Link for resolving the failure or completing the operation."
},
"data": {
"type": "object",
"required": [
"wrapperHtml"
],
"properties": {
"wrapperHtml": {
"type": "string"
}
},
"description": "Operation data; optional fields may be absent."
},
"error": {
"type": "string",
"description": "Why the operation failed."
},
"details": {
"type": "object",
"description": "Diagnostics keyed by errorCode."
},
"message": {
"type": "string",
"description": "Outcome or recovery instructions. Project selection means no action ran."
},
"success": {
"type": "boolean",
"description": "Operation success; on false inspect error/errorCode."
},
"upgrade": {
"type": "object",
"description": "Plan-upgrade guidance for an unavailable capability."
},
"category": {
"type": "string",
"description": "Failure category, such as invalid_input or plan_required."
},
"expected": {
"type": "boolean",
"description": "Whether this is an anticipated access, input, plan or state failure."
},
"projects": {
"type": "array",
"items": {
"type": "object",
"properties": {
"id": {
"type": "number",
"description": "Project ID for projectId."
},
"name": {
"type": "string",
"description": "Project name."
}
},
"description": "Accessible project."
},
"description": "Accessible project choices. Select a projectId and retry."
},
"errorCode": {
"type": "string",
"description": "Failure code for recovery."
},
"retryable": {
"type": "boolean",
"description": "Whether an unchanged request can be retried."
},
"statusCode": {
"type": "number",
"description": "HTTP-style failure status."
},
"executionTime": {
"type": "string",
"description": "Elapsed time in seconds, with an s suffix."
}
},
"description": "Operation result envelope."
}
Original tool metadata
{
"name": "serialize_html_embed",
"title": "Serialize HTML embed",
"description": "Serialize raw HTML into the canonical Atomic HtmlEmbedNode wrapper. Returns wrapperHtml with the required data-atomic-html-embed marker and standard UTF-8 base64 payload. Use this tool whenever edited content needs an HTML embed; never calculate data-html-base64 yourself.\n\nFormats supplied HTML into an embed string without saving it or executing a workflow. Use a content editing tool only when the returned wrapper should be stored.",
"inputSchema": {
"type": "object",
"required": [
"html"
],
"properties": {
"html": {
"type": "string",
"description": "Complete raw HTML payload to embed. It is UTF-8 base64 encoded by this tool."
},
"label": {
"type": "string",
"description": "Human-readable embed label. Defaults to \"HTML embed\"."
},
"height": {
"type": "number",
"maximum": 1200,
"minimum": 200,
"description": "Editor preview height in pixels. Defaults to 500 and is constrained to 200-1200."
},
"context": {
"type": "string",
"maxLength": 120,
"description": "Short purpose of this call for the activity log. Exclude personal data and private source content."
},
"llm_model": {
"type": "string",
"maxLength": 128,
"description": "Use the exact model ID executing this call, from runtime/system context, for usage attribution. Supply it on every Atomic MCP tool call, including discovery and feedback, and update it if the model changes. Use the model ID rather than the client app name. If unavailable, omit it; never guess or ask the user."
},
"projectId": {
"type": "number",
"description": "Atomic project ID from list_projects. Omit to use the configured project; if asked to choose, select one of the accessible returned IDs."
}
}
},
"outputSchema": {
"type": "object",
"required": [
"success"
],
"properties": {
"url": {
"type": "string",
"description": "Link for resolving the failure or completing the operation."
},
"data": {
"type": "object",
"required": [
"wrapperHtml"
],
"properties": {
"wrapperHtml": {
"type": "string"
}
},
"description": "Operation data; optional fields may be absent."
},
"error": {
"type": "string",
"description": "Why the operation failed."
},
"details": {
"type": "object",
"description": "Diagnostics keyed by errorCode."
},
"message": {
"type": "string",
"description": "Outcome or recovery instructions. Project selection means no action ran."
},
"success": {
"type": "boolean",
"description": "Operation success; on false inspect error/errorCode."
},
"upgrade": {
"type": "object",
"description": "Plan-upgrade guidance for an unavailable capability."
},
"category": {
"type": "string",
"description": "Failure category, such as invalid_input or plan_required."
},
"expected": {
"type": "boolean",
"description": "Whether this is an anticipated access, input, plan or state failure."
},
"projects": {
"type": "array",
"items": {
"type": "object",
"properties": {
"id": {
"type": "number",
"description": "Project ID for projectId."
},
"name": {
"type": "string",
"description": "Project name."
}
},
"description": "Accessible project."
},
"description": "Accessible project choices. Select a projectId and retry."
},
"errorCode": {
"type": "string",
"description": "Failure code for recovery."
},
"retryable": {
"type": "boolean",
"description": "Whether an unchanged request can be retried."
},
"statusCode": {
"type": "number",
"description": "HTTP-style failure status."
},
"executionTime": {
"type": "string",
"description": "Elapsed time in seconds, with an s suffix."
}
},
"description": "Operation result envelope."
},
"annotations": {
"readOnlyHint": true,
"openWorldHint": false,
"idempotentHint": true,
"destructiveHint": false
}
}
The title clearly communicates the tool’s action and subject. Keep it concise.
Description89/100
Validate a public social post URL and serialize it into a safe canonical Atomic embed. Use the exact URL returned by webSearch; never invent or rewrite a social post URL. V1 supports LinkedIn post URLs.
Builds an embed from a public post URL and may read provider metadata; it does not publish a social post or save article content.
The description explains the capability, when to use it, and what to expect.
Inputs90/100
Remove validation rules already expressed in this field’s schema; describe its meaning and usage instead.
platform
Social platform. V1 supports linkedin.
Remove validation rules already expressed in this field’s schema; describe its meaning and usage instead.
url
Exact public LinkedIn /posts/ URL returned by webSearch.
Clear enough to supply this argument.
projectId
Atomic project ID from list_projects. Omit to use the configured project; if asked to choose, select one of the accessible returned IDs.
Clear enough to supply this argument.
context
Short purpose of this call for the activity log. Exclude personal data and private source content.
Remove validation rules already expressed in this field’s schema; describe its meaning and usage instead.
llm_model
Use the exact model ID executing this call, from runtime/system context, for usage attribution. Supply it on every Atomic MCP tool call, including discovery and feedback, and update it if the model changes. Use the model ID rather than the client app name. If unavailable, omit it; never guess or ask the user.
{
"type": "object",
"required": [
"success"
],
"properties": {
"url": {
"type": "string",
"description": "Link for resolving the failure or completing the operation."
},
"data": {
"type": "object",
"required": [
"wrapperHtml"
],
"properties": {
"wrapperHtml": {
"type": "string"
}
},
"description": "Operation data; optional fields may be absent."
},
"error": {
"type": "string",
"description": "Why the operation failed."
},
"details": {
"type": "object",
"description": "Diagnostics keyed by errorCode."
},
"message": {
"type": "string",
"description": "Outcome or recovery instructions. Project selection means no action ran."
},
"success": {
"type": "boolean",
"description": "Operation success; on false inspect error/errorCode."
},
"upgrade": {
"type": "object",
"description": "Plan-upgrade guidance for an unavailable capability."
},
"category": {
"type": "string",
"description": "Failure category, such as invalid_input or plan_required."
},
"expected": {
"type": "boolean",
"description": "Whether this is an anticipated access, input, plan or state failure."
},
"projects": {
"type": "array",
"items": {
"type": "object",
"properties": {
"id": {
"type": "number",
"description": "Project ID for projectId."
},
"name": {
"type": "string",
"description": "Project name."
}
},
"description": "Accessible project."
},
"description": "Accessible project choices. Select a projectId and retry."
},
"errorCode": {
"type": "string",
"description": "Failure code for recovery."
},
"retryable": {
"type": "boolean",
"description": "Whether an unchanged request can be retried."
},
"statusCode": {
"type": "number",
"description": "HTTP-style failure status."
},
"executionTime": {
"type": "string",
"description": "Elapsed time in seconds, with an s suffix."
}
},
"description": "Operation result envelope."
}
Original tool metadata
{
"name": "serialize_social_post_embed",
"title": "Serialize social post embed",
"description": "Validate a public social post URL and serialize it into a safe canonical Atomic embed. Use the exact URL returned by webSearch; never invent or rewrite a social post URL. V1 supports LinkedIn post URLs.\n\nBuilds an embed from a public post URL and may read provider metadata; it does not publish a social post or save article content.",
"inputSchema": {
"type": "object",
"required": [
"platform",
"url"
],
"properties": {
"url": {
"type": "string",
"maxLength": 8192,
"description": "Exact public LinkedIn /posts/ URL returned by webSearch."
},
"context": {
"type": "string",
"maxLength": 120,
"description": "Short purpose of this call for the activity log. Exclude personal data and private source content."
},
"platform": {
"enum": [
"linkedin"
],
"type": "string",
"description": "Social platform. V1 supports linkedin."
},
"llm_model": {
"type": "string",
"maxLength": 128,
"description": "Use the exact model ID executing this call, from runtime/system context, for usage attribution. Supply it on every Atomic MCP tool call, including discovery and feedback, and update it if the model changes. Use the model ID rather than the client app name. If unavailable, omit it; never guess or ask the user."
},
"projectId": {
"type": "number",
"description": "Atomic project ID from list_projects. Omit to use the configured project; if asked to choose, select one of the accessible returned IDs."
}
},
"additionalProperties": false
},
"outputSchema": {
"type": "object",
"required": [
"success"
],
"properties": {
"url": {
"type": "string",
"description": "Link for resolving the failure or completing the operation."
},
"data": {
"type": "object",
"required": [
"wrapperHtml"
],
"properties": {
"wrapperHtml": {
"type": "string"
}
},
"description": "Operation data; optional fields may be absent."
},
"error": {
"type": "string",
"description": "Why the operation failed."
},
"details": {
"type": "object",
"description": "Diagnostics keyed by errorCode."
},
"message": {
"type": "string",
"description": "Outcome or recovery instructions. Project selection means no action ran."
},
"success": {
"type": "boolean",
"description": "Operation success; on false inspect error/errorCode."
},
"upgrade": {
"type": "object",
"description": "Plan-upgrade guidance for an unavailable capability."
},
"category": {
"type": "string",
"description": "Failure category, such as invalid_input or plan_required."
},
"expected": {
"type": "boolean",
"description": "Whether this is an anticipated access, input, plan or state failure."
},
"projects": {
"type": "array",
"items": {
"type": "object",
"properties": {
"id": {
"type": "number",
"description": "Project ID for projectId."
},
"name": {
"type": "string",
"description": "Project name."
}
},
"description": "Accessible project."
},
"description": "Accessible project choices. Select a projectId and retry."
},
"errorCode": {
"type": "string",
"description": "Failure code for recovery."
},
"retryable": {
"type": "boolean",
"description": "Whether an unchanged request can be retried."
},
"statusCode": {
"type": "number",
"description": "HTTP-style failure status."
},
"executionTime": {
"type": "string",
"description": "Elapsed time in seconds, with an s suffix."
}
},
"description": "Operation result envelope."
},
"annotations": {
"readOnlyHint": true,
"openWorldHint": true,
"idempotentHint": true,
"destructiveHint": false
}
}
The title clearly communicates the tool’s action and subject. Keep it concise.
Description96/100
Validate exact WooCommerce product IDs against a project-owned WordPress connection and serialize them into the canonical Atomic product wrapper. Insert only the returned wrapperHtml; never write the wrapper yourself.
Validates existing product IDs and returns an embed wrapper; it does not create products or insert the wrapper into saved content.
The description explains the capability, when to use it, and what to expect.
Inputs89/100
Remove validation rules already expressed in this field’s schema; describe its meaning and usage instead.
projectPublishingId
Atomic publishing connection ID from get_publishing_connections, not the provider site or post ID.
Clear enough to supply this argument.
productIds
Exact product IDs returned by search_woocommerce_products.
Remove validation rules already expressed in this field’s schema; describe its meaning and usage instead.
layout
WordPress rendering layout. Defaults to product_card.
Remove validation rules already expressed in this field’s schema; describe its meaning and usage instead.
columns
WooCommerce grid columns. A single product card publishes horizontally; multiple product cards publish as a grid.
Clear enough to supply this argument.
projectId
Atomic project ID from list_projects. Omit to use the configured project; if asked to choose, select one of the accessible returned IDs.
Clear enough to supply this argument.
context
Short purpose of this call for the activity log. Exclude personal data and private source content.
Remove validation rules already expressed in this field’s schema; describe its meaning and usage instead.
llm_model
Use the exact model ID executing this call, from runtime/system context, for usage attribution. Supply it on every Atomic MCP tool call, including discovery and feedback, and update it if the model changes. Use the model ID rather than the client app name. If unavailable, omit it; never guess or ask the user.
{
"type": "object",
"required": [
"success"
],
"properties": {
"url": {
"type": "string",
"description": "Link for resolving the failure or completing the operation."
},
"data": {
"type": "object",
"required": [
"wrapperHtml"
],
"properties": {
"wrapperHtml": {
"type": "string"
}
},
"description": "Operation data; optional fields may be absent."
},
"error": {
"type": "string",
"description": "Why the operation failed."
},
"details": {
"type": "object",
"description": "Diagnostics keyed by errorCode."
},
"message": {
"type": "string",
"description": "Outcome or recovery instructions. Project selection means no action ran."
},
"success": {
"type": "boolean",
"description": "Operation success; on false inspect error/errorCode."
},
"upgrade": {
"type": "object",
"description": "Plan-upgrade guidance for an unavailable capability."
},
"category": {
"type": "string",
"description": "Failure category, such as invalid_input or plan_required."
},
"expected": {
"type": "boolean",
"description": "Whether this is an anticipated access, input, plan or state failure."
},
"projects": {
"type": "array",
"items": {
"type": "object",
"properties": {
"id": {
"type": "number",
"description": "Project ID for projectId."
},
"name": {
"type": "string",
"description": "Project name."
}
},
"description": "Accessible project."
},
"description": "Accessible project choices. Select a projectId and retry."
},
"errorCode": {
"type": "string",
"description": "Failure code for recovery."
},
"retryable": {
"type": "boolean",
"description": "Whether an unchanged request can be retried."
},
"statusCode": {
"type": "number",
"description": "HTTP-style failure status."
},
"executionTime": {
"type": "string",
"description": "Elapsed time in seconds, with an s suffix."
}
},
"description": "Operation result envelope."
}
Original tool metadata
{
"name": "serialize_woocommerce_product_embed",
"title": "Serialize WooCommerce product embed",
"description": "Validate exact WooCommerce product IDs against a project-owned WordPress connection and serialize them into the canonical Atomic product wrapper. Insert only the returned wrapperHtml; never write the wrapper yourself.\n\nValidates existing product IDs and returns an embed wrapper; it does not create products or insert the wrapper into saved content.",
"inputSchema": {
"type": "object",
"required": [
"projectPublishingId",
"productIds"
],
"properties": {
"layout": {
"enum": [
"product_card",
"product_grid",
"add_to_cart"
],
"type": "string",
"description": "WordPress rendering layout. Defaults to product_card."
},
"columns": {
"type": "number",
"maximum": 6,
"minimum": 1,
"description": "WooCommerce grid columns. A single product card publishes horizontally; multiple product cards publish as a grid."
},
"context": {
"type": "string",
"maxLength": 120,
"description": "Short purpose of this call for the activity log. Exclude personal data and private source content."
},
"llm_model": {
"type": "string",
"maxLength": 128,
"description": "Use the exact model ID executing this call, from runtime/system context, for usage attribution. Supply it on every Atomic MCP tool call, including discovery and feedback, and update it if the model changes. Use the model ID rather than the client app name. If unavailable, omit it; never guess or ask the user."
},
"projectId": {
"type": "number",
"description": "Atomic project ID from list_projects. Omit to use the configured project; if asked to choose, select one of the accessible returned IDs."
},
"productIds": {
"type": "array",
"items": {
"type": "number"
},
"maxItems": 12,
"minItems": 1,
"description": "Exact product IDs returned by search_woocommerce_products."
},
"projectPublishingId": {
"type": "number",
"description": "Atomic publishing connection ID from get_publishing_connections, not the provider site or post ID."
}
},
"additionalProperties": false
},
"outputSchema": {
"type": "object",
"required": [
"success"
],
"properties": {
"url": {
"type": "string",
"description": "Link for resolving the failure or completing the operation."
},
"data": {
"type": "object",
"required": [
"wrapperHtml"
],
"properties": {
"wrapperHtml": {
"type": "string"
}
},
"description": "Operation data; optional fields may be absent."
},
"error": {
"type": "string",
"description": "Why the operation failed."
},
"details": {
"type": "object",
"description": "Diagnostics keyed by errorCode."
},
"message": {
"type": "string",
"description": "Outcome or recovery instructions. Project selection means no action ran."
},
"success": {
"type": "boolean",
"description": "Operation success; on false inspect error/errorCode."
},
"upgrade": {
"type": "object",
"description": "Plan-upgrade guidance for an unavailable capability."
},
"category": {
"type": "string",
"description": "Failure category, such as invalid_input or plan_required."
},
"expected": {
"type": "boolean",
"description": "Whether this is an anticipated access, input, plan or state failure."
},
"projects": {
"type": "array",
"items": {
"type": "object",
"properties": {
"id": {
"type": "number",
"description": "Project ID for projectId."
},
"name": {
"type": "string",
"description": "Project name."
}
},
"description": "Accessible project."
},
"description": "Accessible project choices. Select a projectId and retry."
},
"errorCode": {
"type": "string",
"description": "Failure code for recovery."
},
"retryable": {
"type": "boolean",
"description": "Whether an unchanged request can be retried."
},
"statusCode": {
"type": "number",
"description": "HTTP-style failure status."
},
"executionTime": {
"type": "string",
"description": "Elapsed time in seconds, with an s suffix."
}
},
"description": "Operation result envelope."
},
"annotations": {
"readOnlyHint": true,
"openWorldHint": true,
"idempotentHint": true,
"destructiveHint": false
}
}
The title clearly communicates the tool’s action and subject. Keep it concise.
Description87/100
Replace the selected AI-search engines. Applies app plan and active-prompt capacity validation. Returns saved settings and resulting capacity.
The description explains the capability, when to use it, and what to expect.
Inputs88/100
Remove validation rules already expressed in this field’s schema; describe its meaning and usage instead.
engines
AI-search engine identifiers to include. Discover engine availability with get_ai_search_generative_engines.
Remove validation rules already expressed in this field’s schema; describe its meaning and usage instead.
projectId
Atomic project ID from list_projects. Omit to use the configured project; if asked to choose, select one of the accessible returned IDs.
Clear enough to supply this argument.
context
Short purpose of this call for the activity log. Exclude personal data and private source content.
Remove validation rules already expressed in this field’s schema; describe its meaning and usage instead.
llm_model
Use the exact model ID executing this call, from runtime/system context, for usage attribution. Supply it on every Atomic MCP tool call, including discovery and feedback, and update it if the model changes. Use the model ID rather than the client app name. If unavailable, omit it; never guess or ask the user.
The title clearly communicates the tool’s action and subject. Keep it concise.
Description88/100
Connect an existing project to a GSC site and/or GA4 property from a workspace connection. Reuses app connection behavior, including updating project domain for GSC. Event selection is shared by all projects using the GA4 property. Omitted eventNames preserves selection; [] clears it. Requires full workspace integrations and project data-sources permissions.
The description explains the capability, when to use it, and what to expect.
Inputs88/100
Remove validation rules already expressed in this field’s schema; describe its meaning and usage instead.
workspaceId
Atomic workspace identifier from list_workspaces. The acting user must have access to that workspace.
Remove validation rules already expressed in this field’s schema; describe its meaning and usage instead.
connectionId
Workspace Google connection identifier from list_workspace_google_connections.
Clear enough to supply this argument.
siteId
Google Search Console property identifier from list_google_connection_properties.
Remove validation rules already expressed in this field’s schema; describe its meaning and usage instead.
propertyId
Google Analytics property identifier from list_google_connection_properties.
Clear enough to supply this argument.
eventNames
Exact GA4 event names from list_ga4_property_events to use as the project's conversion events.
Remove validation rules already expressed in this field’s schema; describe its meaning and usage instead.
projectId
Atomic project ID from list_projects. Omit to use the configured project; if asked to choose, select one of the accessible returned IDs.
Clear enough to supply this argument.
context
Short purpose of this call for the activity log. Exclude personal data and private source content.
Remove validation rules already expressed in this field’s schema; describe its meaning and usage instead.
llm_model
Use the exact model ID executing this call, from runtime/system context, for usage attribution. Supply it on every Atomic MCP tool call, including discovery and feedback, and update it if the model changes. Use the model ID rather than the client app name. If unavailable, omit it; never guess or ask the user.
{
"type": "object",
"required": [
"success"
],
"properties": {
"url": {
"type": "string",
"description": "Link for resolving the failure or completing the operation."
},
"data": {
"type": "object",
"required": [
"projectId",
"workspaceId"
],
"properties": {
"gscSiteId": {
"type": "number"
},
"projectId": {
"type": "number",
"description": "Atomic project that owns this resource."
},
"workspaceId": {
"type": "number",
"description": "Atomic workspace that owns this project or resource."
},
"ga4PropertyId": {
"type": "number",
"description": "Atomic record ID for the connected GA4 property."
},
"selectedEventNames": {
"type": "array",
"items": {
"type": "string"
}
},
"eventSelectionScope": {
"type": "string",
"const": "ga4_property"
}
},
"description": "Operation data; optional fields may be absent."
},
"error": {
"type": "string",
"description": "Why the operation failed."
},
"details": {
"type": "object",
"description": "Diagnostics keyed by errorCode."
},
"message": {
"type": "string",
"description": "Outcome or recovery instructions. Project selection means no action ran."
},
"success": {
"type": "boolean",
"description": "Operation success; on false inspect error/errorCode."
},
"upgrade": {
"type": "object",
"description": "Plan-upgrade guidance for an unavailable capability."
},
"category": {
"type": "string",
"description": "Failure category, such as invalid_input or plan_required."
},
"expected": {
"type": "boolean",
"description": "Whether this is an anticipated access, input, plan or state failure."
},
"projects": {
"type": "array",
"items": {
"type": "object",
"properties": {
"id": {
"type": "number",
"description": "Project ID for projectId."
},
"name": {
"type": "string",
"description": "Project name."
}
},
"description": "Accessible project."
},
"description": "Accessible project choices. Select a projectId and retry."
},
"errorCode": {
"type": "string",
"description": "Failure code for recovery."
},
"retryable": {
"type": "boolean",
"description": "Whether an unchanged request can be retried."
},
"statusCode": {
"type": "number",
"description": "HTTP-style failure status."
},
"executionTime": {
"type": "string",
"description": "Elapsed time in seconds, with an s suffix."
}
},
"description": "Operation result envelope."
}
Original tool metadata
{
"name": "set_project_google_sources",
"title": "Set project google sources",
"description": "Connect an existing project to a GSC site and/or GA4 property from a workspace connection. Reuses app connection behavior, including updating project domain for GSC. Event selection is shared by all projects using the GA4 property. Omitted eventNames preserves selection; [] clears it. Requires full workspace integrations and project data-sources permissions.",
"inputSchema": {
"type": "object",
"required": [
"workspaceId",
"connectionId"
],
"properties": {
"siteId": {
"type": "number",
"minimum": 1,
"multipleOf": 1,
"description": "Google Search Console property identifier from list_google_connection_properties."
},
"context": {
"type": "string",
"maxLength": 120,
"description": "Short purpose of this call for the activity log. Exclude personal data and private source content."
},
"llm_model": {
"type": "string",
"maxLength": 128,
"description": "Use the exact model ID executing this call, from runtime/system context, for usage attribution. Supply it on every Atomic MCP tool call, including discovery and feedback, and update it if the model changes. Use the model ID rather than the client app name. If unavailable, omit it; never guess or ask the user."
},
"projectId": {
"type": "number",
"description": "Atomic project ID from list_projects. Omit to use the configured project; if asked to choose, select one of the accessible returned IDs."
},
"eventNames": {
"type": "array",
"items": {
"type": "string",
"minLength": 1
},
"description": "Exact GA4 event names from list_ga4_property_events to use as the project's conversion events.",
"uniqueItems": true
},
"propertyId": {
"type": "number",
"minimum": 1,
"multipleOf": 1,
"description": "Google Analytics property identifier from list_google_connection_properties."
},
"workspaceId": {
"type": "number",
"minimum": 1,
"multipleOf": 1,
"description": "Atomic workspace identifier from list_workspaces. The acting user must have access to that workspace."
},
"connectionId": {
"type": "number",
"minimum": 1,
"multipleOf": 1,
"description": "Workspace Google connection identifier from list_workspace_google_connections."
}
},
"additionalProperties": false
},
"outputSchema": {
"type": "object",
"required": [
"success"
],
"properties": {
"url": {
"type": "string",
"description": "Link for resolving the failure or completing the operation."
},
"data": {
"type": "object",
"required": [
"projectId",
"workspaceId"
],
"properties": {
"gscSiteId": {
"type": "number"
},
"projectId": {
"type": "number",
"description": "Atomic project that owns this resource."
},
"workspaceId": {
"type": "number",
"description": "Atomic workspace that owns this project or resource."
},
"ga4PropertyId": {
"type": "number",
"description": "Atomic record ID for the connected GA4 property."
},
"selectedEventNames": {
"type": "array",
"items": {
"type": "string"
}
},
"eventSelectionScope": {
"type": "string",
"const": "ga4_property"
}
},
"description": "Operation data; optional fields may be absent."
},
"error": {
"type": "string",
"description": "Why the operation failed."
},
"details": {
"type": "object",
"description": "Diagnostics keyed by errorCode."
},
"message": {
"type": "string",
"description": "Outcome or recovery instructions. Project selection means no action ran."
},
"success": {
"type": "boolean",
"description": "Operation success; on false inspect error/errorCode."
},
"upgrade": {
"type": "object",
"description": "Plan-upgrade guidance for an unavailable capability."
},
"category": {
"type": "string",
"description": "Failure category, such as invalid_input or plan_required."
},
"expected": {
"type": "boolean",
"description": "Whether this is an anticipated access, input, plan or state failure."
},
"projects": {
"type": "array",
"items": {
"type": "object",
"properties": {
"id": {
"type": "number",
"description": "Project ID for projectId."
},
"name": {
"type": "string",
"description": "Project name."
}
},
"description": "Accessible project."
},
"description": "Accessible project choices. Select a projectId and retry."
},
"errorCode": {
"type": "string",
"description": "Failure code for recovery."
},
"retryable": {
"type": "boolean",
"description": "Whether an unchanged request can be retried."
},
"statusCode": {
"type": "number",
"description": "HTTP-style failure status."
},
"executionTime": {
"type": "string",
"description": "Elapsed time in seconds, with an s suffix."
}
},
"description": "Operation result envelope."
},
"annotations": {
"readOnlyHint": false,
"openWorldHint": true,
"idempotentHint": false,
"destructiveHint": true
}
}
The title clearly communicates the tool’s action and subject. Keep it concise.
Description94/100
Start an analysis of supplied draft content against live SERP competitors for a keyword.
Starts asynchronous competitor analysis for supplied draft text and may consume credits. It does not save a new article version; keep the returned analysis ID and use wait_for_serp_analysis.
The description explains the capability, when to use it, and what to expect.
Inputs88/100
Clarify units, where to obtain this value, or conventions not already expressed in the schema.
content
Raw HTML or Markdown content to analyze.
Clear enough to supply this argument.
title
SEO title used to score the draft.
Clear enough to supply this argument.
metaDescription
SEO meta description used to score the draft.
Clear enough to supply this argument.
slug
Intended URL slug, such as seo-vs-ppc.
Clear enough to supply this argument.
keyword
Keyword or search query to compare against live SERP competitors.
Clear enough to supply this argument.
serpLocationId
Optional SERP location ID. Defaults to United States.
Clarify units, where to obtain this value, or conventions not already expressed in the schema.
depth
Scan depth: lite, standard, or deep. Defaults to standard.
Remove validation rules already expressed in this field’s schema; describe its meaning and usage instead.
projectId
Atomic project ID from list_projects. Omit to use the configured project; if asked to choose, select one of the accessible returned IDs.
Clear enough to supply this argument.
context
Short purpose of this call for the activity log. Exclude personal data and private source content.
Remove validation rules already expressed in this field’s schema; describe its meaning and usage instead.
llm_model
Use the exact model ID executing this call, from runtime/system context, for usage attribution. Supply it on every Atomic MCP tool call, including discovery and feedback, and update it if the model changes. Use the model ID rather than the client app name. If unavailable, omit it; never guess or ask the user.
{
"type": "object",
"required": [
"success"
],
"properties": {
"url": {
"type": "string",
"description": "Link for resolving the failure or completing the operation."
},
"data": {
"type": "object",
"properties": {
"analysisId": {
"description": "Saved content SERP analysis identifier for subsequent analysis or optimization tools."
}
},
"description": "Operation data; optional fields may be absent."
},
"error": {
"type": "string",
"description": "Why the operation failed."
},
"details": {
"type": "object",
"description": "Diagnostics keyed by errorCode."
},
"message": {
"type": "string",
"description": "Outcome or recovery instructions. Project selection means no action ran."
},
"success": {
"type": "boolean",
"description": "Operation success; on false inspect error/errorCode."
},
"upgrade": {
"type": "object",
"description": "Plan-upgrade guidance for an unavailable capability."
},
"category": {
"type": "string",
"description": "Failure category, such as invalid_input or plan_required."
},
"expected": {
"type": "boolean",
"description": "Whether this is an anticipated access, input, plan or state failure."
},
"projects": {
"type": "array",
"items": {
"type": "object",
"properties": {
"id": {
"type": "number",
"description": "Project ID for projectId."
},
"name": {
"type": "string",
"description": "Project name."
}
},
"description": "Accessible project."
},
"description": "Accessible project choices. Select a projectId and retry."
},
"errorCode": {
"type": "string",
"description": "Failure code for recovery."
},
"retryable": {
"type": "boolean",
"description": "Whether an unchanged request can be retried."
},
"statusCode": {
"type": "number",
"description": "HTTP-style failure status."
},
"executionTime": {
"type": "string",
"description": "Elapsed time in seconds, with an s suffix."
}
},
"description": "Operation result envelope."
}
Original tool metadata
{
"name": "start_content_serp_analysis",
"title": "Start content SERP analysis",
"description": "Start an analysis of supplied draft content against live SERP competitors for a keyword.\n\nStarts asynchronous competitor analysis for supplied draft text and may consume credits. It does not save a new article version; keep the returned analysis ID and use wait_for_serp_analysis.",
"inputSchema": {
"type": "object",
"required": [
"content",
"title",
"metaDescription",
"slug",
"keyword"
],
"properties": {
"slug": {
"type": "string",
"description": "Intended URL slug, such as seo-vs-ppc."
},
"depth": {
"enum": [
"lite",
"standard",
"deep"
],
"type": "string",
"description": "Scan depth: lite, standard, or deep. Defaults to standard."
},
"title": {
"type": "string",
"description": "SEO title used to score the draft."
},
"content": {
"type": "string",
"description": "Raw HTML or Markdown content to analyze."
},
"context": {
"type": "string",
"maxLength": 120,
"description": "Short purpose of this call for the activity log. Exclude personal data and private source content."
},
"keyword": {
"type": "string",
"description": "Keyword or search query to compare against live SERP competitors."
},
"llm_model": {
"type": "string",
"maxLength": 128,
"description": "Use the exact model ID executing this call, from runtime/system context, for usage attribution. Supply it on every Atomic MCP tool call, including discovery and feedback, and update it if the model changes. Use the model ID rather than the client app name. If unavailable, omit it; never guess or ask the user."
},
"projectId": {
"type": "number",
"description": "Atomic project ID from list_projects. Omit to use the configured project; if asked to choose, select one of the accessible returned IDs."
},
"serpLocationId": {
"type": "number",
"description": "Optional SERP location ID. Defaults to United States."
},
"metaDescription": {
"type": "string",
"description": "SEO meta description used to score the draft."
}
}
},
"outputSchema": {
"type": "object",
"required": [
"success"
],
"properties": {
"url": {
"type": "string",
"description": "Link for resolving the failure or completing the operation."
},
"data": {
"type": "object",
"properties": {
"analysisId": {
"description": "Saved content SERP analysis identifier for subsequent analysis or optimization tools."
}
},
"description": "Operation data; optional fields may be absent."
},
"error": {
"type": "string",
"description": "Why the operation failed."
},
"details": {
"type": "object",
"description": "Diagnostics keyed by errorCode."
},
"message": {
"type": "string",
"description": "Outcome or recovery instructions. Project selection means no action ran."
},
"success": {
"type": "boolean",
"description": "Operation success; on false inspect error/errorCode."
},
"upgrade": {
"type": "object",
"description": "Plan-upgrade guidance for an unavailable capability."
},
"category": {
"type": "string",
"description": "Failure category, such as invalid_input or plan_required."
},
"expected": {
"type": "boolean",
"description": "Whether this is an anticipated access, input, plan or state failure."
},
"projects": {
"type": "array",
"items": {
"type": "object",
"properties": {
"id": {
"type": "number",
"description": "Project ID for projectId."
},
"name": {
"type": "string",
"description": "Project name."
}
},
"description": "Accessible project."
},
"description": "Accessible project choices. Select a projectId and retry."
},
"errorCode": {
"type": "string",
"description": "Failure code for recovery."
},
"retryable": {
"type": "boolean",
"description": "Whether an unchanged request can be retried."
},
"statusCode": {
"type": "number",
"description": "HTTP-style failure status."
},
"executionTime": {
"type": "string",
"description": "Elapsed time in seconds, with an s suffix."
}
},
"description": "Operation result envelope."
},
"annotations": {
"readOnlyHint": false,
"openWorldHint": true,
"idempotentHint": false,
"destructiveHint": false
}
}
The title clearly communicates the tool’s action and subject. Keep it concise.
Description92/100
Start an analysis of a published project page against live SERP competitors for a keyword.
Starts asynchronous competitor analysis for a published URL and may consume credits. For supplied draft text use start_content_serp_analysis; wait_for_serp_analysis retrieves the existing job instead of starting another.
The description explains the capability, when to use it, and what to expect.
Inputs82/100
Clarify units, where to obtain this value, or conventions not already expressed in the schema.
url
Published project URL to analyze.
Clear enough to supply this argument.
keyword
Keyword or search query to compare against live SERP competitors.
Clear enough to supply this argument.
serpLocationId
Optional SERP location ID. Defaults to United States.
Clarify units, where to obtain this value, or conventions not already expressed in the schema.
depth
Analysis depth: lite, standard, or deep. Defaults to standard.
Remove validation rules already expressed in this field’s schema; describe its meaning and usage instead.
projectId
Atomic project ID from list_projects. Omit to use the configured project; if asked to choose, select one of the accessible returned IDs.
Clear enough to supply this argument.
context
Short purpose of this call for the activity log. Exclude personal data and private source content.
Remove validation rules already expressed in this field’s schema; describe its meaning and usage instead.
llm_model
Use the exact model ID executing this call, from runtime/system context, for usage attribution. Supply it on every Atomic MCP tool call, including discovery and feedback, and update it if the model changes. Use the model ID rather than the client app name. If unavailable, omit it; never guess or ask the user.
Remove validation rules already expressed in this field’s schema; describe its meaning and usage instead.
{
"type": "object",
"required": [
"success"
],
"properties": {
"url": {
"type": "string",
"description": "Link for resolving the failure or completing the operation."
},
"data": {
"type": "object",
"properties": {
"analysisId": {
"description": "Saved content SERP analysis identifier for subsequent analysis or optimization tools."
}
},
"description": "Operation data; optional fields may be absent."
},
"error": {
"type": "string",
"description": "Why the operation failed."
},
"details": {
"type": "object",
"description": "Diagnostics keyed by errorCode."
},
"message": {
"type": "string",
"description": "Outcome or recovery instructions. Project selection means no action ran."
},
"success": {
"type": "boolean",
"description": "Operation success; on false inspect error/errorCode."
},
"upgrade": {
"type": "object",
"description": "Plan-upgrade guidance for an unavailable capability."
},
"category": {
"type": "string",
"description": "Failure category, such as invalid_input or plan_required."
},
"expected": {
"type": "boolean",
"description": "Whether this is an anticipated access, input, plan or state failure."
},
"projects": {
"type": "array",
"items": {
"type": "object",
"properties": {
"id": {
"type": "number",
"description": "Project ID for projectId."
},
"name": {
"type": "string",
"description": "Project name."
}
},
"description": "Accessible project."
},
"description": "Accessible project choices. Select a projectId and retry."
},
"errorCode": {
"type": "string",
"description": "Failure code for recovery."
},
"retryable": {
"type": "boolean",
"description": "Whether an unchanged request can be retried."
},
"statusCode": {
"type": "number",
"description": "HTTP-style failure status."
},
"executionTime": {
"type": "string",
"description": "Elapsed time in seconds, with an s suffix."
}
},
"description": "Operation result envelope."
}
Original tool metadata
{
"name": "start_page_serp_analysis",
"title": "Start page SERP analysis",
"description": "Start an analysis of a published project page against live SERP competitors for a keyword.\n\nStarts asynchronous competitor analysis for a published URL and may consume credits. For supplied draft text use start_content_serp_analysis; wait_for_serp_analysis retrieves the existing job instead of starting another.",
"inputSchema": {
"type": "object",
"required": [
"url",
"keyword"
],
"properties": {
"url": {
"type": "string",
"description": "Published project URL to analyze."
},
"depth": {
"enum": [
"lite",
"standard",
"deep"
],
"type": "string",
"description": "Analysis depth: lite, standard, or deep. Defaults to standard."
},
"context": {
"type": "string",
"maxLength": 120,
"description": "Short purpose of this call for the activity log. Exclude personal data and private source content."
},
"keyword": {
"type": "string",
"description": "Keyword or search query to compare against live SERP competitors."
},
"llm_model": {
"type": "string",
"maxLength": 128,
"description": "Use the exact model ID executing this call, from runtime/system context, for usage attribution. Supply it on every Atomic MCP tool call, including discovery and feedback, and update it if the model changes. Use the model ID rather than the client app name. If unavailable, omit it; never guess or ask the user."
},
"projectId": {
"type": "number",
"description": "Atomic project ID from list_projects. Omit to use the configured project; if asked to choose, select one of the accessible returned IDs."
},
"serpLocationId": {
"type": "number",
"description": "Optional SERP location ID. Defaults to United States."
}
}
},
"outputSchema": {
"type": "object",
"required": [
"success"
],
"properties": {
"url": {
"type": "string",
"description": "Link for resolving the failure or completing the operation."
},
"data": {
"type": "object",
"properties": {
"analysisId": {
"description": "Saved content SERP analysis identifier for subsequent analysis or optimization tools."
}
},
"description": "Operation data; optional fields may be absent."
},
"error": {
"type": "string",
"description": "Why the operation failed."
},
"details": {
"type": "object",
"description": "Diagnostics keyed by errorCode."
},
"message": {
"type": "string",
"description": "Outcome or recovery instructions. Project selection means no action ran."
},
"success": {
"type": "boolean",
"description": "Operation success; on false inspect error/errorCode."
},
"upgrade": {
"type": "object",
"description": "Plan-upgrade guidance for an unavailable capability."
},
"category": {
"type": "string",
"description": "Failure category, such as invalid_input or plan_required."
},
"expected": {
"type": "boolean",
"description": "Whether this is an anticipated access, input, plan or state failure."
},
"projects": {
"type": "array",
"items": {
"type": "object",
"properties": {
"id": {
"type": "number",
"description": "Project ID for projectId."
},
"name": {
"type": "string",
"description": "Project name."
}
},
"description": "Accessible project."
},
"description": "Accessible project choices. Select a projectId and retry."
},
"errorCode": {
"type": "string",
"description": "Failure code for recovery."
},
"retryable": {
"type": "boolean",
"description": "Whether an unchanged request can be retried."
},
"statusCode": {
"type": "number",
"description": "HTTP-style failure status."
},
"executionTime": {
"type": "string",
"description": "Elapsed time in seconds, with an s suffix."
}
},
"description": "Operation result envelope."
},
"annotations": {
"readOnlyHint": false,
"openWorldHint": true,
"idempotentHint": false,
"destructiveHint": false
}
}
The title clearly communicates the tool’s action and subject. Keep it concise.
Description81/100
Trigger a manual project knowledge sync from the latest completed SEO audit. Use when you need fresh context before generating or refreshing content.
Schedules project knowledge refresh from completed audit data and can update derived indexes. Use knowledge read tools for existing context without starting a refresh.
The description explains the capability, when to use it, and what to expect.
Inputs88/100
Remove validation rules already expressed in this field’s schema; describe its meaning and usage instead.
knowledgeBaseId
Destination or search-scope knowledge-base ID from list_knowledge_bases; the base must be accessible in this project.
Clear enough to supply this argument.
projectId
Atomic project ID from list_projects. Omit to use the configured project; if asked to choose, select one of the accessible returned IDs.
Clear enough to supply this argument.
context
Short purpose of this call for the activity log. Exclude personal data and private source content.
Remove validation rules already expressed in this field’s schema; describe its meaning and usage instead.
llm_model
Use the exact model ID executing this call, from runtime/system context, for usage attribution. Supply it on every Atomic MCP tool call, including discovery and feedback, and update it if the model changes. Use the model ID rather than the client app name. If unavailable, omit it; never guess or ask the user.
Remove validation rules already expressed in this field’s schema; describe its meaning and usage instead.
{
"type": "object",
"required": [
"success"
],
"properties": {
"url": {
"type": "string",
"description": "Link for resolving the failure or completing the operation."
},
"data": {
"type": "object",
"required": [
"status",
"sourcesProcessed",
"chunksUpserted",
"chunksDeleted"
],
"properties": {
"status": {
"enum": [
"PENDING",
"RUNNING",
"COMPLETED",
"FAILED"
],
"type": "string",
"description": "Current saved or execution state reported by the operation."
},
"syncRunId": {
"type": "number"
},
"chunksDeleted": {
"type": "number"
},
"chunksUpserted": {
"type": "number"
},
"skippedByPolicy": {
"type": "boolean"
},
"sourcesProcessed": {
"type": "number"
}
},
"description": "Operation data; optional fields may be absent."
},
"error": {
"type": "string",
"description": "Why the operation failed."
},
"details": {
"type": "object",
"description": "Diagnostics keyed by errorCode."
},
"message": {
"type": "string",
"description": "Outcome or recovery instructions. Project selection means no action ran."
},
"success": {
"type": "boolean",
"description": "Operation success; on false inspect error/errorCode."
},
"upgrade": {
"type": "object",
"description": "Plan-upgrade guidance for an unavailable capability."
},
"category": {
"type": "string",
"description": "Failure category, such as invalid_input or plan_required."
},
"expected": {
"type": "boolean",
"description": "Whether this is an anticipated access, input, plan or state failure."
},
"projects": {
"type": "array",
"items": {
"type": "object",
"properties": {
"id": {
"type": "number",
"description": "Project ID for projectId."
},
"name": {
"type": "string",
"description": "Project name."
}
},
"description": "Accessible project."
},
"description": "Accessible project choices. Select a projectId and retry."
},
"errorCode": {
"type": "string",
"description": "Failure code for recovery."
},
"retryable": {
"type": "boolean",
"description": "Whether an unchanged request can be retried."
},
"statusCode": {
"type": "number",
"description": "HTTP-style failure status."
},
"executionTime": {
"type": "string",
"description": "Elapsed time in seconds, with an s suffix."
}
},
"description": "Operation result envelope."
}
Original tool metadata
{
"name": "sync_project_knowledge",
"title": "Sync project knowledge",
"description": "Trigger a manual project knowledge sync from the latest completed SEO audit. Use when you need fresh context before generating or refreshing content.\n\nSchedules project knowledge refresh from completed audit data and can update derived indexes. Use knowledge read tools for existing context without starting a refresh.",
"inputSchema": {
"type": "object",
"required": [
"knowledgeBaseId"
],
"properties": {
"context": {
"type": "string",
"maxLength": 120,
"description": "Short purpose of this call for the activity log. Exclude personal data and private source content."
},
"llm_model": {
"type": "string",
"maxLength": 128,
"description": "Use the exact model ID executing this call, from runtime/system context, for usage attribution. Supply it on every Atomic MCP tool call, including discovery and feedback, and update it if the model changes. Use the model ID rather than the client app name. If unavailable, omit it; never guess or ask the user."
},
"projectId": {
"type": "number",
"description": "Atomic project ID from list_projects. Omit to use the configured project; if asked to choose, select one of the accessible returned IDs."
},
"knowledgeBaseId": {
"type": "number",
"description": "Destination or search-scope knowledge-base ID from list_knowledge_bases; the base must be accessible in this project."
}
}
},
"outputSchema": {
"type": "object",
"required": [
"success"
],
"properties": {
"url": {
"type": "string",
"description": "Link for resolving the failure or completing the operation."
},
"data": {
"type": "object",
"required": [
"status",
"sourcesProcessed",
"chunksUpserted",
"chunksDeleted"
],
"properties": {
"status": {
"enum": [
"PENDING",
"RUNNING",
"COMPLETED",
"FAILED"
],
"type": "string",
"description": "Current saved or execution state reported by the operation."
},
"syncRunId": {
"type": "number"
},
"chunksDeleted": {
"type": "number"
},
"chunksUpserted": {
"type": "number"
},
"skippedByPolicy": {
"type": "boolean"
},
"sourcesProcessed": {
"type": "number"
}
},
"description": "Operation data; optional fields may be absent."
},
"error": {
"type": "string",
"description": "Why the operation failed."
},
"details": {
"type": "object",
"description": "Diagnostics keyed by errorCode."
},
"message": {
"type": "string",
"description": "Outcome or recovery instructions. Project selection means no action ran."
},
"success": {
"type": "boolean",
"description": "Operation success; on false inspect error/errorCode."
},
"upgrade": {
"type": "object",
"description": "Plan-upgrade guidance for an unavailable capability."
},
"category": {
"type": "string",
"description": "Failure category, such as invalid_input or plan_required."
},
"expected": {
"type": "boolean",
"description": "Whether this is an anticipated access, input, plan or state failure."
},
"projects": {
"type": "array",
"items": {
"type": "object",
"properties": {
"id": {
"type": "number",
"description": "Project ID for projectId."
},
"name": {
"type": "string",
"description": "Project name."
}
},
"description": "Accessible project."
},
"description": "Accessible project choices. Select a projectId and retry."
},
"errorCode": {
"type": "string",
"description": "Failure code for recovery."
},
"retryable": {
"type": "boolean",
"description": "Whether an unchanged request can be retried."
},
"statusCode": {
"type": "number",
"description": "HTTP-style failure status."
},
"executionTime": {
"type": "string",
"description": "Elapsed time in seconds, with an s suffix."
}
},
"description": "Operation result envelope."
},
"annotations": {
"readOnlyHint": false,
"openWorldHint": true,
"idempotentHint": false,
"destructiveHint": true
}
}
The title clearly communicates the tool’s action and subject. Keep it concise.
Description98/100
Run a one-off AI-search test from prompt text on one engine available on the project plan. Does not add a saved prompt, activate tracking, create a group, or change the selected engines or schedules. Uses the same billing-cycle allowance as saved tracking (one run per engine; failed attempts count). Returns runId immediately; use get_ai_search_prompt_run for progress and the complete answer. Do not call add_project_prompts or enable tracking to prepare a test.
Starts a metered one-off answer without adding a tracked prompt. Inspect returned status/runId through list_ai_search_prompt_runs and get_ai_search_prompt_run; repeated tests are separate work.
The description explains the capability, when to use it, and what to expect.
Inputs88/100
Remove validation rules already expressed in this field’s schema; describe its meaning and usage instead.
prompt
Prompt text to test or track on an AI-search engine.
Remove validation rules already expressed in this field’s schema; describe its meaning and usage instead.
promptCategory
Project prompt category used to label or filter AI-search runs.
Explain the meaning of this value, not just its name.
engine
AI-search engine identifier from get_ai_search_generative_engines.
Clear enough to supply this argument.
projectId
Atomic project ID from list_projects. Omit to use the configured project; if asked to choose, select one of the accessible returned IDs.
Clear enough to supply this argument.
context
Short purpose of this call for the activity log. Exclude personal data and private source content.
Clear enough to supply this argument.
llm_model
Use the exact model ID executing this call, from runtime/system context, for usage attribution. Supply it on every Atomic MCP tool call, including discovery and feedback, and update it if the model changes. Use the model ID rather than the client app name. If unavailable, omit it; never guess or ask the user.
Align the output schema with the tool’s documented result.
View output schema
{
"type": "object",
"required": [
"success"
],
"properties": {
"url": {
"type": "string",
"description": "Link for resolving the failure or completing the operation."
},
"data": {
"type": "object",
"required": [
"isTest",
"prompt",
"runId",
"engine",
"status"
],
"properties": {
"runId": {
"type": "number",
"description": "Execution identifier returned for subsequent status or result reads."
},
"engine": {
"enum": [
"chatgpt",
"ai_mode",
"perplexity",
"copilot",
"ai_overview",
"naver",
"wenxin",
"deepseek",
"gemini",
"claude",
"grok"
],
"type": "string"
},
"isTest": {
"type": "boolean"
},
"prompt": {
"type": "string",
"description": "Prompt text used for the tracked or tested AI-search run."
},
"status": {
"enum": [
"scheduled",
"already_pending"
],
"type": "string",
"description": "Current saved or execution state reported by the operation."
}
},
"description": "Operation data; optional fields may be absent."
},
"error": {
"type": "string",
"description": "Why the operation failed."
},
"details": {
"type": "object",
"description": "Diagnostics keyed by errorCode."
},
"message": {
"type": "string",
"description": "Outcome or recovery instructions. Project selection means no action ran."
},
"success": {
"type": "boolean",
"description": "Operation success; on false inspect error/errorCode."
},
"upgrade": {
"type": "object",
"description": "Plan-upgrade guidance for an unavailable capability."
},
"category": {
"type": "string",
"description": "Failure category, such as invalid_input or plan_required."
},
"expected": {
"type": "boolean",
"description": "Whether this is an anticipated access, input, plan or state failure."
},
"projects": {
"type": "array",
"items": {
"type": "object",
"properties": {
"id": {
"type": "number",
"description": "Project ID for projectId."
},
"name": {
"type": "string",
"description": "Project name."
}
},
"description": "Accessible project."
},
"description": "Accessible project choices. Select a projectId and retry."
},
"errorCode": {
"type": "string",
"description": "Failure code for recovery."
},
"retryable": {
"type": "boolean",
"description": "Whether an unchanged request can be retried."
},
"statusCode": {
"type": "number",
"description": "HTTP-style failure status."
},
"executionTime": {
"type": "string",
"description": "Elapsed time in seconds, with an s suffix."
}
},
"description": "Operation result envelope."
}
Original tool metadata
{
"name": "test_ai_search_prompt_run",
"title": "Test AI search prompt run",
"description": "Run a one-off AI-search test from prompt text on one engine available on the project plan. Does not add a saved prompt, activate tracking, create a group, or change the selected engines or schedules. Uses the same billing-cycle allowance as saved tracking (one run per engine; failed attempts count). Returns runId immediately; use get_ai_search_prompt_run for progress and the complete answer. Do not call add_project_prompts or enable tracking to prepare a test.\n\nStarts a metered one-off answer without adding a tracked prompt. Inspect returned status/runId through list_ai_search_prompt_runs and get_ai_search_prompt_run; repeated tests are separate work.",
"inputSchema": {
"type": "object",
"required": [
"prompt",
"engine"
],
"properties": {
"engine": {
"enum": [
"chatgpt",
"ai_mode",
"perplexity",
"copilot",
"ai_overview",
"naver",
"wenxin",
"deepseek",
"gemini",
"claude",
"grok"
],
"type": "string",
"description": "AI-search engine identifier from get_ai_search_generative_engines."
},
"prompt": {
"type": "string",
"maxLength": 4000,
"minLength": 1,
"description": "Prompt text to test or track on an AI-search engine."
},
"context": {
"type": "string",
"maxLength": 120,
"description": "Short purpose of this call for the activity log. Exclude personal data and private source content."
},
"llm_model": {
"type": "string",
"maxLength": 128,
"description": "Use the exact model ID executing this call, from runtime/system context, for usage attribution. Supply it on every Atomic MCP tool call, including discovery and feedback, and update it if the model changes. Use the model ID rather than the client app name. If unavailable, omit it; never guess or ask the user."
},
"projectId": {
"type": "number",
"description": "Atomic project ID from list_projects. Omit to use the configured project; if asked to choose, select one of the accessible returned IDs."
},
"promptCategory": {
"enum": [
"awareness",
"consideration",
"decision",
"branded"
],
"type": "string",
"description": "Project prompt category used to label or filter AI-search runs."
}
},
"additionalProperties": false
},
"outputSchema": {
"type": "object",
"required": [
"success"
],
"properties": {
"url": {
"type": "string",
"description": "Link for resolving the failure or completing the operation."
},
"data": {
"type": "object",
"required": [
"isTest",
"prompt",
"runId",
"engine",
"status"
],
"properties": {
"runId": {
"type": "number",
"description": "Execution identifier returned for subsequent status or result reads."
},
"engine": {
"enum": [
"chatgpt",
"ai_mode",
"perplexity",
"copilot",
"ai_overview",
"naver",
"wenxin",
"deepseek",
"gemini",
"claude",
"grok"
],
"type": "string"
},
"isTest": {
"type": "boolean"
},
"prompt": {
"type": "string",
"description": "Prompt text used for the tracked or tested AI-search run."
},
"status": {
"enum": [
"scheduled",
"already_pending"
],
"type": "string",
"description": "Current saved or execution state reported by the operation."
}
},
"description": "Operation data; optional fields may be absent."
},
"error": {
"type": "string",
"description": "Why the operation failed."
},
"details": {
"type": "object",
"description": "Diagnostics keyed by errorCode."
},
"message": {
"type": "string",
"description": "Outcome or recovery instructions. Project selection means no action ran."
},
"success": {
"type": "boolean",
"description": "Operation success; on false inspect error/errorCode."
},
"upgrade": {
"type": "object",
"description": "Plan-upgrade guidance for an unavailable capability."
},
"category": {
"type": "string",
"description": "Failure category, such as invalid_input or plan_required."
},
"expected": {
"type": "boolean",
"description": "Whether this is an anticipated access, input, plan or state failure."
},
"projects": {
"type": "array",
"items": {
"type": "object",
"properties": {
"id": {
"type": "number",
"description": "Project ID for projectId."
},
"name": {
"type": "string",
"description": "Project name."
}
},
"description": "Accessible project."
},
"description": "Accessible project choices. Select a projectId and retry."
},
"errorCode": {
"type": "string",
"description": "Failure code for recovery."
},
"retryable": {
"type": "boolean",
"description": "Whether an unchanged request can be retried."
},
"statusCode": {
"type": "number",
"description": "HTTP-style failure status."
},
"executionTime": {
"type": "string",
"description": "Elapsed time in seconds, with an s suffix."
}
},
"description": "Operation result envelope."
},
"annotations": {
"readOnlyHint": false,
"openWorldHint": true,
"idempotentHint": false,
"destructiveHint": false
}
}
The title clearly communicates the tool’s action and subject. Keep it concise.
Description99/100
Test a WORKFLOW AUTOMATION step to verify it works correctly before running the full workflow.
IMPORTANT: You need the database stepId/id that was returned when you called add_workflow_step or get_workflow_steps. Do not pass stepIndex here; stepIndex is only for workflow order/routing.
This tool executes a single step and returns a testRunId. Since step execution can take time (especially for AI-powered steps), use the get_workflow_step_test_result tool to poll for the results.
For a dependency path or long-running step, prefer test_workflow_steps, which waits server-side and avoids repeated polling. Run validate_workflow before testing.
The step will use its configured inputs merged with any testInputs you provide. For steps that reference variables from previous steps (e.g., {{serpAnalysis.nlp}}), the system will attempt to resolve these from the latest test outputs of those steps.
IMPORTANT: Test steps in order (INPUT first, then subsequent steps). Each step's test output becomes available for the next step's variable resolution.
Returns:
- testRunId: Use this ID to check the test result with get_workflow_step_test_result
- status: Initial status (will be "RUNNING")
A test executes the step's configured behavior, which can spend credits or change external data; it is not a dry run. Use test_workflow_steps for ordered execution with its explicit side-effect guard.
The description explains the capability, when to use it, and what to expect.
Inputs94/100
Remove validation rules already expressed in this field’s schema; describe its meaning and usage instead.
stepId
Database step ID from get_workflow_steps or add_workflow_step; do not supply the workflow-local stepIndex.
Clear enough to supply this argument.
testInputs
Inputs for the test. For INPUT step, provide actual values (e.g., {"keyword": "seo tips"}). For other steps, provide values to override variable references or leave empty to use step's configured inputs.
Clear enough to supply this argument.
projectId
Atomic project ID from list_projects. Omit to use the configured project; if asked to choose, select one of the accessible returned IDs.
Clear enough to supply this argument.
context
Short purpose of this call for the activity log. Exclude personal data and private source content.
Remove validation rules already expressed in this field’s schema; describe its meaning and usage instead.
llm_model
Use the exact model ID executing this call, from runtime/system context, for usage attribution. Supply it on every Atomic MCP tool call, including discovery and feedback, and update it if the model changes. Use the model ID rather than the client app name. If unavailable, omit it; never guess or ask the user.
Align the output schema with the tool’s documented result.
View output schema
{
"type": "object",
"required": [
"success"
],
"properties": {
"url": {
"type": "string",
"description": "Link for resolving the failure or completing the operation."
},
"data": {
"anyOf": [
{
"type": "object",
"required": [
"success",
"message"
],
"properties": {
"status": {
"description": "Current saved or execution state reported by the operation."
},
"message": {
"type": "string",
"description": "Outcome, explanation or recovery instructions returned by the operation."
},
"success": {
"type": "boolean",
"description": "Whether this nested operation completed successfully. Inspect the containing result for details."
},
"testRunId": {
"description": "Step-test execution ID to reuse when inspecting a running test."
}
}
},
{
"type": "object",
"required": [
"success",
"error"
],
"properties": {
"error": {
"type": "string",
"description": "Failure details reported by this operation or its provider."
},
"success": {
"type": "boolean",
"description": "Whether this nested operation completed successfully. Inspect the containing result for details."
}
}
}
],
"description": "Operation data; optional fields may be absent."
},
"error": {
"type": "string",
"description": "Why the operation failed."
},
"details": {
"type": "object",
"description": "Diagnostics keyed by errorCode."
},
"message": {
"type": "string",
"description": "Outcome or recovery instructions. Project selection means no action ran."
},
"success": {
"type": "boolean",
"description": "Operation success; on false inspect error/errorCode."
},
"upgrade": {
"type": "object",
"description": "Plan-upgrade guidance for an unavailable capability."
},
"category": {
"type": "string",
"description": "Failure category, such as invalid_input or plan_required."
},
"expected": {
"type": "boolean",
"description": "Whether this is an anticipated access, input, plan or state failure."
},
"projects": {
"type": "array",
"items": {
"type": "object",
"properties": {
"id": {
"type": "number",
"description": "Project ID for projectId."
},
"name": {
"type": "string",
"description": "Project name."
}
},
"description": "Accessible project."
},
"description": "Accessible project choices. Select a projectId and retry."
},
"errorCode": {
"type": "string",
"description": "Failure code for recovery."
},
"retryable": {
"type": "boolean",
"description": "Whether an unchanged request can be retried."
},
"statusCode": {
"type": "number",
"description": "HTTP-style failure status."
},
"executionTime": {
"type": "string",
"description": "Elapsed time in seconds, with an s suffix."
}
},
"description": "Operation result envelope."
}
Original tool metadata
{
"name": "test_workflow_step",
"title": "Test workflow step",
"description": "Test a WORKFLOW AUTOMATION step to verify it works correctly before running the full workflow.\n\nIMPORTANT: You need the database stepId/id that was returned when you called add_workflow_step or get_workflow_steps. Do not pass stepIndex here; stepIndex is only for workflow order/routing.\n\nThis tool executes a single step and returns a testRunId. Since step execution can take time (especially for AI-powered steps), use the get_workflow_step_test_result tool to poll for the results.\n\nFor a dependency path or long-running step, prefer test_workflow_steps, which waits server-side and avoids repeated polling. Run validate_workflow before testing.\n\nThe step will use its configured inputs merged with any testInputs you provide. For steps that reference variables from previous steps (e.g., {{serpAnalysis.nlp}}), the system will attempt to resolve these from the latest test outputs of those steps.\n\nIMPORTANT: Test steps in order (INPUT first, then subsequent steps). Each step's test output becomes available for the next step's variable resolution.\n\nReturns:\n- testRunId: Use this ID to check the test result with get_workflow_step_test_result\n- status: Initial status (will be \"RUNNING\")\n\nA test executes the step's configured behavior, which can spend credits or change external data; it is not a dry run. Use test_workflow_steps for ordered execution with its explicit side-effect guard.",
"inputSchema": {
"type": "object",
"required": [
"stepId"
],
"properties": {
"stepId": {
"type": "number",
"description": "Database step ID from get_workflow_steps or add_workflow_step; do not supply the workflow-local stepIndex."
},
"context": {
"type": "string",
"maxLength": 120,
"description": "Short purpose of this call for the activity log. Exclude personal data and private source content."
},
"llm_model": {
"type": "string",
"maxLength": 128,
"description": "Use the exact model ID executing this call, from runtime/system context, for usage attribution. Supply it on every Atomic MCP tool call, including discovery and feedback, and update it if the model changes. Use the model ID rather than the client app name. If unavailable, omit it; never guess or ask the user."
},
"projectId": {
"type": "number",
"description": "Atomic project ID from list_projects. Omit to use the configured project; if asked to choose, select one of the accessible returned IDs."
},
"testInputs": {
"type": "object",
"description": "Inputs for the test. For INPUT step, provide actual values (e.g., {\"keyword\": \"seo tips\"}). For other steps, provide values to override variable references or leave empty to use step's configured inputs."
}
}
},
"outputSchema": {
"type": "object",
"required": [
"success"
],
"properties": {
"url": {
"type": "string",
"description": "Link for resolving the failure or completing the operation."
},
"data": {
"anyOf": [
{
"type": "object",
"required": [
"success",
"message"
],
"properties": {
"status": {
"description": "Current saved or execution state reported by the operation."
},
"message": {
"type": "string",
"description": "Outcome, explanation or recovery instructions returned by the operation."
},
"success": {
"type": "boolean",
"description": "Whether this nested operation completed successfully. Inspect the containing result for details."
},
"testRunId": {
"description": "Step-test execution ID to reuse when inspecting a running test."
}
}
},
{
"type": "object",
"required": [
"success",
"error"
],
"properties": {
"error": {
"type": "string",
"description": "Failure details reported by this operation or its provider."
},
"success": {
"type": "boolean",
"description": "Whether this nested operation completed successfully. Inspect the containing result for details."
}
}
}
],
"description": "Operation data; optional fields may be absent."
},
"error": {
"type": "string",
"description": "Why the operation failed."
},
"details": {
"type": "object",
"description": "Diagnostics keyed by errorCode."
},
"message": {
"type": "string",
"description": "Outcome or recovery instructions. Project selection means no action ran."
},
"success": {
"type": "boolean",
"description": "Operation success; on false inspect error/errorCode."
},
"upgrade": {
"type": "object",
"description": "Plan-upgrade guidance for an unavailable capability."
},
"category": {
"type": "string",
"description": "Failure category, such as invalid_input or plan_required."
},
"expected": {
"type": "boolean",
"description": "Whether this is an anticipated access, input, plan or state failure."
},
"projects": {
"type": "array",
"items": {
"type": "object",
"properties": {
"id": {
"type": "number",
"description": "Project ID for projectId."
},
"name": {
"type": "string",
"description": "Project name."
}
},
"description": "Accessible project."
},
"description": "Accessible project choices. Select a projectId and retry."
},
"errorCode": {
"type": "string",
"description": "Failure code for recovery."
},
"retryable": {
"type": "boolean",
"description": "Whether an unchanged request can be retried."
},
"statusCode": {
"type": "number",
"description": "HTTP-style failure status."
},
"executionTime": {
"type": "string",
"description": "Elapsed time in seconds, with an s suffix."
}
},
"description": "Operation result envelope."
},
"annotations": {
"readOnlyHint": false,
"openWorldHint": true,
"idempotentHint": false,
"destructiveHint": true
}
}
The title clearly communicates the tool’s action and subject. Keep it concise.
Description89/100
Test several workflow steps in dependency order and wait server-side for each result. Prefer this over repeatedly polling get_workflow_step_test_result. Run validate_workflow first. Steps that can mutate data, call agents/APIs, notify, publish, index, pause for review, or run nested workflows are refused unless allowSideEffects=true was explicitly approved by the user.
Tests execute configured steps and may spend credits. allowSideEffects gates potentially mutating/external steps; a timeout leaves a pending run to inspect, not a reason to start duplicate tests.
The description explains the capability, when to use it, and what to expect.
Inputs91/100
Explain the meaning of this value, not just its name.
workflowId
Existing project workflow ID from get_workflows or create_workflow; this identifies a pipeline, not a run.
Clear enough to supply this argument.
stepIds
Workflow step identifiers from get_workflow_steps.
Clear enough to supply this argument.
testInputsByStepId
Optional map from numeric step ID strings to test input overrides
Explain the meaning of this value, not just its name.
timeoutSeconds
Overall wait timeout; default 120
Remove validation rules already expressed in this field’s schema; describe its meaning and usage instead.
allowSideEffects
Must remain false unless the user explicitly approved testing external side effects
Clear enough to supply this argument.
projectId
Atomic project ID from list_projects. Omit to use the configured project; if asked to choose, select one of the accessible returned IDs.
Clear enough to supply this argument.
context
Short purpose of this call for the activity log. Exclude personal data and private source content.
Clear enough to supply this argument.
llm_model
Use the exact model ID executing this call, from runtime/system context, for usage attribution. Supply it on every Atomic MCP tool call, including discovery and feedback, and update it if the model changes. Use the model ID rather than the client app name. If unavailable, omit it; never guess or ask the user.
The title clearly communicates the tool’s action and subject. Keep it concise.
Description80/100
Update/edit an existing custom agent that belongs to the current project. You can modify the agent's instructions, allowed tools, role metadata, use cases, icon, and visibility settings. IMPORTANT: Only agents that belong to your project can be edited. Predefined/public agents cannot be edited. Use get_my_agents first to see which agents you can edit.
The description explains the capability, when to use it, and what to expect.
Inputs89/100
Remove validation rules already expressed in this field’s schema; describe its meaning and usage instead.
agentId
The ID of the agent to update. Must be an agent that belongs to your project.
Remove validation rules already expressed in this field’s schema; describe its meaning and usage instead.
name
Optional: The new name of the agent (e.g., "SEO content writer", "Data analyst")
Clear enough to supply this argument.
description
Optional: A new description of what the agent does and its purpose
Clear enough to supply this argument.
systemPrompt
Optional: The new system prompt/instructions for the agent. This defines the agent's behavior, personality, and how it should respond.
Clear enough to supply this argument.
model
Optional: Exact model ID to use when this agent runs.
Clarify units, where to obtain this value, or conventions not already expressed in the schema.
icon › name
Icon name from Lucide icons
Clarify units, where to obtain this value, or conventions not already expressed in the schema.
icon › color
Icon color (gray, blue, teal, green, orange, red, magenta, purple)
Clarify units, where to obtain this value, or conventions not already expressed in the schema.
isPublic
Optional: Whether the agent should be public and visible to all users.
Remove validation rules already expressed in this field’s schema; describe its meaning and usage instead.
isActive
Optional: Whether the agent should be active/visible in the project.
Clear enough to supply this argument.
useCases › items › id
Existing use-case identifier from get_my_agents or the selected agent definition.
Clear enough to supply this argument.
useCases › items › label
Human-readable label shown for this item in Atomic.
Clear enough to supply this argument.
useCases › items › prompt
Prompt text to test or track on an AI-search engine.
Clear enough to supply this argument.
toolFilterConfig › webSearch
Allow this agent to search the public web for supporting information.
Clear enough to supply this argument.
toolFilterConfig › grid
Allow this agent to read or work with project grids.
Clear enough to supply this argument.
toolFilterConfig › storage
Allow this agent to upload or retrieve stored files.
Clear enough to supply this argument.
toolFilterConfig › taskManagement
Allow this agent to read or manage project tasks.
Clear enough to supply this argument.
toolFilterConfig › workflows
Allow this agent to inspect or run project workflows.
Clear enough to supply this argument.
toolFilterConfig › googleAnalytics
Allow this agent to query connected Google Analytics data.
Clear enough to supply this argument.
toolFilterConfig › reports
Allow this agent to read or prepare reports.
Clear enough to supply this argument.
toolFilterConfig › content
Allow this agent to work with saved project content.
Clear enough to supply this argument.
toolFilterConfig › seo
Allow this agent to use SEO research and audit tools.
Clear enough to supply this argument.
toolFilterConfig › agent
Allow this agent to work with other configured agents.
Clear enough to supply this argument.
toolFilterConfig › notifications
Allow this agent to create supported notifications.
Clear enough to supply this argument.
toolFilterConfig › publishing
Allow this agent to work with connected publishing platforms.
Clear enough to supply this argument.
toolFilterConfig › aiSearch
Allow this agent to research tracked AI-search visibility.
Clear enough to supply this argument.
toolFilterConfig › codeInterpreter
Allow this agent to execute supported analysis code.
Clear enough to supply this argument.
toolFilterConfig › memory
Allow this agent to read or update its saved memory.
Clear enough to supply this argument.
suggestFollowUpPrompts
Optional: Whether the agent should suggest follow-up prompts after each response.
Clear enough to supply this argument.
organizationRole
Optional: Team role for this agent
Remove validation rules already expressed in this field’s schema; describe its meaning and usage instead.
roleTitle
Optional: Human-readable role title for this agent
Remove validation rules already expressed in this field’s schema; describe its meaning and usage instead.
teamId
Optional: Team identifier for AI employee teams
Remove validation rules already expressed in this field’s schema; describe its meaning and usage instead.
managerAgentId
Optional: Manager agent ID when this agent reports to another AI employee
Remove validation rules already expressed in this field’s schema; describe its meaning and usage instead.
projectId
Atomic project ID from list_projects. Omit to use the configured project; if asked to choose, select one of the accessible returned IDs.
Remove validation rules already expressed in this field’s schema; describe its meaning and usage instead.
context
Short purpose of this call for the activity log. Exclude personal data and private source content.
Remove validation rules already expressed in this field’s schema; describe its meaning and usage instead.
llm_model
Use the exact model ID executing this call, from runtime/system context, for usage attribution. Supply it on every Atomic MCP tool call, including discovery and feedback, and update it if the model changes. Use the model ID rather than the client app name. If unavailable, omit it; never guess or ask the user.
Remove validation rules already expressed in this field’s schema; describe its meaning and usage instead.
The title clearly communicates the tool’s action and subject. Keep it concise.
Description82/100
Update a scheduled agent conversation automation by ID. IMPORTANT: The response includes automationUrl. Always include it as a clickable markdown link in your final response after editing the automation. Format: [Open automation](automationUrl).
Explain mutations, irreversible effects, or prerequisites that matter before calling this tool.
Inputs74/100
Remove validation rules already expressed in this field’s schema; describe its meaning and usage instead.
automationId
Automation schedule ID to update.
Clear enough to supply this argument.
name
New automation title.
Clear enough to supply this argument.
prompt
New prompt to run on schedule.
Remove validation rules already expressed in this field’s schema; describe its meaning and usage instead.
agentId
New agent ID. Omit to keep the current agent.
Clear enough to supply this argument.
frequency
New cadence.
Remove validation rules already expressed in this field’s schema; describe its meaning and usage instead.
dayOfWeek
New weekly day.
Remove validation rules already expressed in this field’s schema; describe its meaning and usage instead.
monthlyOption
New monthly option.
Remove validation rules already expressed in this field’s schema; describe its meaning and usage instead.
timeRange
New UTC hour range.
Clarify units, where to obtain this value, or conventions not already expressed in the schema.
timezone
New display timezone.
Clarify units, where to obtain this value, or conventions not already expressed in the schema.
isActive
Whether the automation is active.
Clear enough to supply this argument.
projectId
Atomic project ID from list_projects. Omit to use the configured project; if asked to choose, select one of the accessible returned IDs.
Clear enough to supply this argument.
context
Short purpose of this call for the activity log. Exclude personal data and private source content.
Remove validation rules already expressed in this field’s schema; describe its meaning and usage instead.
llm_model
Use the exact model ID executing this call, from runtime/system context, for usage attribution. Supply it on every Atomic MCP tool call, including discovery and feedback, and update it if the model changes. Use the model ID rather than the client app name. If unavailable, omit it; never guess or ask the user.
Remove validation rules already expressed in this field’s schema; describe its meaning and usage instead.
The title clearly communicates the tool’s action and subject. Keep it concise.
Description90/100
Update the selected project brand kit, or create it when none exists. Read get_brand_kit first and research the website, audience, reviews and public brand voice before materially rewriting it; do not invent brand facts. Read atomic://guides/brand-kit-fields for the complete field map and visual-settings guidance. Omitted fields remain unchanged. For creation provide tone, userPerspective, targetAudience and brandVoice. Preserve existing image, chart and writing settings unless the user asked to change them. Select the appropriate kit when the project has multiple kits.
The description explains the capability, when to use it, and what to expect.
Inputs89/100
Explain the meaning of this value, not just its name.
name
Human-readable brand kit name, such as Core product brand or Enterprise campaign voice.
Clear enough to supply this argument.
isDefault
Whether this brand kit should be the project default for agents and workflows.
Clear enough to supply this argument.
websiteUrl
Website or domain this brand kit represents.
Clear enough to supply this argument.
tone
Brand's communication tone. Examples: 'PROFESSIONAL', 'FRIENDLY', 'AUTHORITATIVE', 'CASUAL', 'TECHNICAL'. Should be determined through research of the project's website and content.
Clear enough to supply this argument.
userPerspective
Writing perspective for the brand. Examples: 'First person', 'Second person', 'Third person'. Analyze the project's existing content to determine this.
Clear enough to supply this argument.
targetAudience
Detailed description of target audience including demographics, interests, pain points, and characteristics. Research the project's website, marketing materials, and customer reviews to identify this.
Clear enough to supply this argument.
brandVoice
Comprehensive brand voice description. Should reflect how the brand communicates, its personality, and communication style. Research the project's content, social media, and customer interactions to determine this.
Clear enough to supply this argument.
brandMentionVariations
Optional brand/entity mention variants used for branded keyword filtering and AI citation mention checks. Include the canonical brand name plus natural variants such as spacing/casing differences, acronyms, domain names, and known aliases. Example: ['Omnius', 'omnius agency', 'omnius seo', 'omnius.so'].
Clear enough to supply this argument.
competitors
Main competitors or alternatives the audience might consider.
Clear enough to supply this argument.
brandPointOfView
Brand beliefs, mission, vision, values, and market perspective.
Clear enough to supply this argument.
authorPersona
Author persona agents should adopt for brand writing.
Clear enough to supply this argument.
writingRules
Concrete writing rules, including do's, don'ts, banned words, capitalization, avoided phrases, and Oxford comma preference.
Clear enough to supply this argument.
writingSampleUrl
URL to a representative writing sample.
Explain the meaning of this value, not just its name.
writingSampleTitle
Title or label for the writing sample.
Clear enough to supply this argument.
clientLinkedInProfileUrl
Public personal LinkedIn profile URL in the form https://www.linkedin.com/in/profile-id/.
Clear enough to supply this argument.
chartPrimaryColor
Optional primary chart color in hex format (e.g. '#065bfd').
Remove validation rules already expressed in this field’s schema; describe its meaning and usage instead.
chartAdditionalColors
Ordered colors for series after the primary color. Pass [] for a primary-only palette.
Remove validation rules already expressed in this field’s schema; describe its meaning and usage instead.
chartBackgroundColor
Optional chart background color in hex format (e.g. '#ffffff').
Remove validation rules already expressed in this field’s schema; describe its meaning and usage instead.
chartTextColor
Optional chart text color in hex format (e.g. '#111827').
Remove validation rules already expressed in this field’s schema; describe its meaning and usage instead.
chartFont
Optional chart font stack (e.g. 'Inter, Arial, sans-serif').
Clear enough to supply this argument.
featuredImageGuidelines
Optional featured image art direction, layout guidance, or stylistic rules for blog hero images. Example: 'Use painterly editorial shapes, restrained type, and a simple right-side illustration that feels designed rather than obviously AI-generated.'
Clear enough to supply this argument.
featuredImagePrimaryColor
Optional primary featured image color in hex format (e.g. '#b91c1c').
Remove validation rules already expressed in this field’s schema; describe its meaning and usage instead.
featuredImageAccentColor
Optional accent featured image color in hex format (e.g. '#f97316').
Remove validation rules already expressed in this field’s schema; describe its meaning and usage instead.
featuredImageBackgroundColor
Optional featured image background color in hex format (e.g. '#190707').
Remove validation rules already expressed in this field’s schema; describe its meaning and usage instead.
featuredImageBackgroundOpacity
Optional opacity multiplier from 0 to 1 for the featured-image background color wash over generated inline/background visuals.
Clear enough to supply this argument.
featuredImagePalettes › items › id
Stable palette identifier within the brand kit. Preserve the existing ID when editing a palette.
Remove validation rules already expressed in this field’s schema; describe its meaning and usage instead.
featuredImagePalettes › items › name
Human-readable name of the item being created or edited.
Remove validation rules already expressed in this field’s schema; describe its meaning and usage instead.
featuredImagePalettes › items › backgroundColor
Background color for the visual element.
Remove validation rules already expressed in this field’s schema; describe its meaning and usage instead.
featuredImagePalettes › items › primaryColor
Primary brand or chart color used for the main visual elements.
Remove validation rules already expressed in this field’s schema; describe its meaning and usage instead.
featuredImagePalettes › items › accentColor
Accent color used for visual emphasis.
Clear enough to supply this argument.
featuredImageAutoRotatePalettes
Randomly choose one saved palette for each new generation; one saved palette stays fixed. Requires at least one palette.
Clear enough to supply this argument.
featuredImageSelectedPaletteId
Saved palette ID for fixed generation when rotation is disabled. Pass null to restore the existing Manual/Auto color mode.
Clear enough to supply this argument.
featuredImageBackgroundStyle
Optional background treatment for non-inline featured images. Brand duotone uses the selected palette, while random spectrum introduces seeded ambient glow colors.
Clear enough to supply this argument.
featuredImageLogoUrl
Optional uploaded/public logo URL shown when the featured image background is dark. Pass null to clear the saved dark-surface logo.
Clear enough to supply this argument.
featuredImageBackgroundImageUrl
Optional uploaded/public image URL used as the full featured-image background instead of generating a new AI visual. Pass null to clear it.
Clear enough to supply this argument.
featuredImageTextColor
Optional text color in hex format used for the title and labels when a custom featured-image background is active. Pass null to clear it.
Clear enough to supply this argument.
featuredImageLightBackgroundLogoUrl
Optional uploaded/public logo URL shown when the featured image background is light. Pass null to clear the saved light-surface logo.
Clear enough to supply this argument.
featuredImageLogoPosition
Optional placement for the logo or fallback brand name in the left editorial area. Bottom anchors align with the CTA row.
Remove validation rules already expressed in this field’s schema; describe its meaning and usage instead.
featuredImageLogoSize
Optional size multiplier for the featured-image logo.
Remove validation rules already expressed in this field’s schema; describe its meaning and usage instead.
featuredImageVisualLayout
Optional placement and size for the right-side visual area of the featured image.
Remove validation rules already expressed in this field’s schema; describe its meaning and usage instead.
featuredImageShowEyebrow
Optional default visibility toggle for the eyebrow text when an image provides eyebrow content.
Remove validation rules already expressed in this field’s schema; describe its meaning and usage instead.
featuredImageShowDescription
Optional default visibility toggle for the description text when an image provides description content.
Remove validation rules already expressed in this field’s schema; describe its meaning and usage instead.
featuredImageShowBottomRightLabel
Optional default visibility toggle for the bottom-right label in generated featured images.
Remove validation rules already expressed in this field’s schema; describe its meaning and usage instead.
featuredImageBottomRightLabel
Optional saved default text for the bottom-right label. Leave empty to let generation fall back to the project domain.
Remove validation rules already expressed in this field’s schema; describe its meaning and usage instead.
featuredImageBottomRightLabelColor
Optional custom hex color for the bottom-right label and marker. Pass null to restore the automatic light/dark behavior.
Remove validation rules already expressed in this field’s schema; describe its meaning and usage instead.
featuredImageTitlePosition
Optional default title block position for generated featured images.
Remove validation rules already expressed in this field’s schema; describe its meaning and usage instead.
featuredImagePaddingX
Optional default horizontal padding for generated featured images, in pixels.
Remove validation rules already expressed in this field’s schema; describe its meaning and usage instead.
featuredImagePaddingY
Optional default vertical padding for generated featured images, in pixels.
Remove validation rules already expressed in this field’s schema; describe its meaning and usage instead.
featuredImagePaddingTop
Optional default top padding for generated featured images, in pixels.
Remove validation rules already expressed in this field’s schema; describe its meaning and usage instead.
featuredImagePaddingBottom
Optional default bottom padding for generated featured images, in pixels.
Clear enough to supply this argument.
featuredImageMaxWidth
Optional default maximum width for the title block, in pixels.
Remove validation rules already expressed in this field’s schema; describe its meaning and usage instead.
featuredImageAlignment
Optional default text alignment for the featured image headline block.
Remove validation rules already expressed in this field’s schema; describe its meaning and usage instead.
featuredImageTitleFont
Optional default title font stack for generated featured images.
Remove validation rules already expressed in this field’s schema; describe its meaning and usage instead.
featuredImageTitleFontSize
Optional default title font size for generated featured images, in pixels.
Remove validation rules already expressed in this field’s schema; describe its meaning and usage instead.
featuredImageTitleUppercase
Whether the featured-image title should render in uppercase by default.
Clear enough to supply this argument.
featuredImageTitleLineHeight
Optional line-height multiplier for the featured-image title.
Clear enough to supply this argument.
featuredImageTitleLetterSpacing
Optional letter spacing for the featured-image title, in pixels.
Clear enough to supply this argument.
featuredImageSecondaryFont
Optional default secondary font stack for labels in generated featured images.
Clear enough to supply this argument.
featuredImageFontOpacity
Optional default text opacity for generated featured images.
Clear enough to supply this argument.
featuredImageFontWeight
Optional default text font weight for generated featured images.
Clear enough to supply this argument.
featuredImageLetterSpacing
Optional default letter spacing for generated featured images.
Clear enough to supply this argument.
serpLocationId
SERP location ID. Use the project's existing serpLocationId if available, or keep the existing brand kit value if updating.
Clear enough to supply this argument.
preferredLanguageCode
Language used for SERP results, NLP analysis, and generated content.
Clear enough to supply this argument.
projectId
Atomic project ID from list_projects. Omit to use the configured project; if asked to choose, select one of the accessible returned IDs.
Clear enough to supply this argument.
context
Short purpose of this call for the activity log. Exclude personal data and private source content.
Clear enough to supply this argument.
llm_model
Use the exact model ID executing this call, from runtime/system context, for usage attribution. Supply it on every Atomic MCP tool call, including discovery and feedback, and update it if the model changes. Use the model ID rather than the client app name. If unavailable, omit it; never guess or ask the user.
The title clearly communicates the tool’s action and subject. Keep it concise.
Description91/100
Edit text or replace image media on an unpublished Buffer post, preserving its existing schedule. Does not create another post or change grid cells.
The description explains the capability, when to use it, and what to expect.
Inputs75/100
Remove validation rules already expressed in this field’s schema; describe its meaning and usage instead.
connectionId
Workspace Google connection identifier from list_workspace_google_connections.
Remove validation rules already expressed in this field’s schema; describe its meaning and usage instead.
postId
Native post identifier from list_buffer_posts or get_buffer_post.
Clear enough to supply this argument.
text
Text content for the targeted element or operation.
Explain the meaning of this value, not just its name.
videoUrl
Public HTTPS video URL; replaces media. Cannot be combined with images.
Clear enough to supply this argument.
images › items › url
Absolute public URL of the page or resource targeted by this operation.
Resolve the mismatch between this description and its schema constraints.
images › items › altText
Accessible text describing the image for readers who cannot see it.
Clear enough to supply this argument.
projectId
Atomic project ID from list_projects. Omit to use the configured project; if asked to choose, select one of the accessible returned IDs.
Clear enough to supply this argument.
context
Short purpose of this call for the activity log. Exclude personal data and private source content.
Remove validation rules already expressed in this field’s schema; describe its meaning and usage instead.
llm_model
Use the exact model ID executing this call, from runtime/system context, for usage attribution. Supply it on every Atomic MCP tool call, including discovery and feedback, and update it if the model changes. Use the model ID rather than the client app name. If unavailable, omit it; never guess or ask the user.
Remove validation rules already expressed in this field’s schema; describe its meaning and usage instead.
{
"type": "object",
"required": [
"success"
],
"properties": {
"url": {
"type": "string",
"description": "Link for resolving the failure or completing the operation."
},
"data": {
"type": "object",
"required": [
"id",
"channelId",
"status"
],
"properties": {
"id": {
"type": "string",
"description": "Identifier of this returned resource. Use it for subsequent reads or edits of the same resource."
},
"url": {
"type": "string",
"description": "URL returned for this resource or operation."
},
"text": {
"type": "string"
},
"dueAt": {
"type": "string"
},
"error": {
"type": "string",
"description": "Failure details reported by this operation or its provider."
},
"assets": {
"type": "array",
"items": {
"type": "object",
"properties": {},
"additionalProperties": {
"description": "JSON returned by the connected provider or selected operation; its fields depend on that operation."
}
}
},
"status": {
"type": "string",
"description": "Current saved or execution state reported by the operation."
},
"channelId": {
"type": "string"
}
},
"description": "Operation data; optional fields may be absent."
},
"error": {
"type": "string",
"description": "Why the operation failed."
},
"details": {
"type": "object",
"description": "Diagnostics keyed by errorCode."
},
"message": {
"type": "string",
"description": "Outcome or recovery instructions. Project selection means no action ran."
},
"success": {
"type": "boolean",
"description": "Operation success; on false inspect error/errorCode."
},
"upgrade": {
"type": "object",
"description": "Plan-upgrade guidance for an unavailable capability."
},
"category": {
"type": "string",
"description": "Failure category, such as invalid_input or plan_required."
},
"expected": {
"type": "boolean",
"description": "Whether this is an anticipated access, input, plan or state failure."
},
"projects": {
"type": "array",
"items": {
"type": "object",
"properties": {
"id": {
"type": "number",
"description": "Project ID for projectId."
},
"name": {
"type": "string",
"description": "Project name."
}
},
"description": "Accessible project."
},
"description": "Accessible project choices. Select a projectId and retry."
},
"errorCode": {
"type": "string",
"description": "Failure code for recovery."
},
"retryable": {
"type": "boolean",
"description": "Whether an unchanged request can be retried."
},
"statusCode": {
"type": "number",
"description": "HTTP-style failure status."
},
"executionTime": {
"type": "string",
"description": "Elapsed time in seconds, with an s suffix."
}
},
"description": "Operation result envelope."
}
Original tool metadata
{
"name": "update_buffer_post",
"title": "Update buffer post",
"description": "Edit text or replace image media on an unpublished Buffer post, preserving its existing schedule. Does not create another post or change grid cells.",
"inputSchema": {
"type": "object",
"required": [
"connectionId",
"postId"
],
"properties": {
"text": {
"type": "string",
"description": "Text content for the targeted element or operation."
},
"images": {
"type": "array",
"items": {
"type": "object",
"required": [
"url",
"altText"
],
"properties": {
"url": {
"type": "string",
"format": "uri",
"description": "Absolute public URL of the page or resource targeted by this operation."
},
"altText": {
"type": "string",
"maxLength": 1000,
"description": "Accessible text describing the image for readers who cannot see it."
}
},
"additionalProperties": false
},
"description": "Omit to preserve media; empty array clears media. Replaces existing media with these ordered images."
},
"postId": {
"type": "string",
"description": "Native post identifier from list_buffer_posts or get_buffer_post."
},
"context": {
"type": "string",
"maxLength": 120,
"description": "Short purpose of this call for the activity log. Exclude personal data and private source content."
},
"videoUrl": {
"type": "string",
"format": "uri",
"description": "Public HTTPS video URL; replaces media. Cannot be combined with images."
},
"llm_model": {
"type": "string",
"maxLength": 128,
"description": "Use the exact model ID executing this call, from runtime/system context, for usage attribution. Supply it on every Atomic MCP tool call, including discovery and feedback, and update it if the model changes. Use the model ID rather than the client app name. If unavailable, omit it; never guess or ask the user."
},
"projectId": {
"type": "number",
"description": "Atomic project ID from list_projects. Omit to use the configured project; if asked to choose, select one of the accessible returned IDs."
},
"connectionId": {
"type": "number",
"minimum": 1,
"description": "Workspace Google connection identifier from list_workspace_google_connections."
}
},
"additionalProperties": false
},
"outputSchema": {
"type": "object",
"required": [
"success"
],
"properties": {
"url": {
"type": "string",
"description": "Link for resolving the failure or completing the operation."
},
"data": {
"type": "object",
"required": [
"id",
"channelId",
"status"
],
"properties": {
"id": {
"type": "string",
"description": "Identifier of this returned resource. Use it for subsequent reads or edits of the same resource."
},
"url": {
"type": "string",
"description": "URL returned for this resource or operation."
},
"text": {
"type": "string"
},
"dueAt": {
"type": "string"
},
"error": {
"type": "string",
"description": "Failure details reported by this operation or its provider."
},
"assets": {
"type": "array",
"items": {
"type": "object",
"properties": {},
"additionalProperties": {
"description": "JSON returned by the connected provider or selected operation; its fields depend on that operation."
}
}
},
"status": {
"type": "string",
"description": "Current saved or execution state reported by the operation."
},
"channelId": {
"type": "string"
}
},
"description": "Operation data; optional fields may be absent."
},
"error": {
"type": "string",
"description": "Why the operation failed."
},
"details": {
"type": "object",
"description": "Diagnostics keyed by errorCode."
},
"message": {
"type": "string",
"description": "Outcome or recovery instructions. Project selection means no action ran."
},
"success": {
"type": "boolean",
"description": "Operation success; on false inspect error/errorCode."
},
"upgrade": {
"type": "object",
"description": "Plan-upgrade guidance for an unavailable capability."
},
"category": {
"type": "string",
"description": "Failure category, such as invalid_input or plan_required."
},
"expected": {
"type": "boolean",
"description": "Whether this is an anticipated access, input, plan or state failure."
},
"projects": {
"type": "array",
"items": {
"type": "object",
"properties": {
"id": {
"type": "number",
"description": "Project ID for projectId."
},
"name": {
"type": "string",
"description": "Project name."
}
},
"description": "Accessible project."
},
"description": "Accessible project choices. Select a projectId and retry."
},
"errorCode": {
"type": "string",
"description": "Failure code for recovery."
},
"retryable": {
"type": "boolean",
"description": "Whether an unchanged request can be retried."
},
"statusCode": {
"type": "number",
"description": "HTTP-style failure status."
},
"executionTime": {
"type": "string",
"description": "Elapsed time in seconds, with an s suffix."
}
},
"description": "Operation result envelope."
},
"annotations": {
"readOnlyHint": false,
"openWorldHint": true,
"idempotentHint": false,
"destructiveHint": true
}
}
The title clearly communicates the tool’s action and subject. Keep it concise.
Description96/100
Reschedule an existing unpublished Buffer post without creating another post. Returns the reread post and confirmed time. Does not update grid cells automatically.
The description explains the capability, when to use it, and what to expect.
Inputs83/100
Remove validation rules already expressed in this field’s schema; describe its meaning and usage instead.
connectionId
Workspace Google connection identifier from list_workspace_google_connections.
Remove validation rules already expressed in this field’s schema; describe its meaning and usage instead.
postId
Native post identifier from list_buffer_posts or get_buffer_post.
Clear enough to supply this argument.
dueAt
Future ISO timestamp with timezone; changes this existing post only.
Remove validation rules already expressed in this field’s schema; describe its meaning and usage instead.
projectId
Atomic project ID from list_projects. Omit to use the configured project; if asked to choose, select one of the accessible returned IDs.
Clear enough to supply this argument.
context
Short purpose of this call for the activity log. Exclude personal data and private source content.
Remove validation rules already expressed in this field’s schema; describe its meaning and usage instead.
llm_model
Use the exact model ID executing this call, from runtime/system context, for usage attribution. Supply it on every Atomic MCP tool call, including discovery and feedback, and update it if the model changes. Use the model ID rather than the client app name. If unavailable, omit it; never guess or ask the user.
Remove validation rules already expressed in this field’s schema; describe its meaning and usage instead.
{
"type": "object",
"required": [
"success"
],
"properties": {
"url": {
"type": "string",
"description": "Link for resolving the failure or completing the operation."
},
"data": {
"type": "object",
"required": [
"id",
"channelId",
"status"
],
"properties": {
"id": {
"type": "string",
"description": "Identifier of this returned resource. Use it for subsequent reads or edits of the same resource."
},
"url": {
"type": "string",
"description": "URL returned for this resource or operation."
},
"text": {
"type": "string"
},
"dueAt": {
"type": "string"
},
"error": {
"type": "string",
"description": "Failure details reported by this operation or its provider."
},
"assets": {
"type": "array",
"items": {
"type": "object",
"properties": {},
"additionalProperties": {
"description": "JSON returned by the connected provider or selected operation; its fields depend on that operation."
}
}
},
"status": {
"type": "string",
"description": "Current saved or execution state reported by the operation."
},
"channelId": {
"type": "string"
}
},
"description": "Operation data; optional fields may be absent."
},
"error": {
"type": "string",
"description": "Why the operation failed."
},
"details": {
"type": "object",
"description": "Diagnostics keyed by errorCode."
},
"message": {
"type": "string",
"description": "Outcome or recovery instructions. Project selection means no action ran."
},
"success": {
"type": "boolean",
"description": "Operation success; on false inspect error/errorCode."
},
"upgrade": {
"type": "object",
"description": "Plan-upgrade guidance for an unavailable capability."
},
"category": {
"type": "string",
"description": "Failure category, such as invalid_input or plan_required."
},
"expected": {
"type": "boolean",
"description": "Whether this is an anticipated access, input, plan or state failure."
},
"projects": {
"type": "array",
"items": {
"type": "object",
"properties": {
"id": {
"type": "number",
"description": "Project ID for projectId."
},
"name": {
"type": "string",
"description": "Project name."
}
},
"description": "Accessible project."
},
"description": "Accessible project choices. Select a projectId and retry."
},
"errorCode": {
"type": "string",
"description": "Failure code for recovery."
},
"retryable": {
"type": "boolean",
"description": "Whether an unchanged request can be retried."
},
"statusCode": {
"type": "number",
"description": "HTTP-style failure status."
},
"executionTime": {
"type": "string",
"description": "Elapsed time in seconds, with an s suffix."
}
},
"description": "Operation result envelope."
}
Original tool metadata
{
"name": "update_buffer_post_schedule",
"title": "Update buffer post schedule",
"description": "Reschedule an existing unpublished Buffer post without creating another post. Returns the reread post and confirmed time. Does not update grid cells automatically.",
"inputSchema": {
"type": "object",
"required": [
"connectionId",
"postId",
"dueAt"
],
"properties": {
"dueAt": {
"type": "string",
"format": "date-time",
"description": "Future ISO timestamp with timezone; changes this existing post only."
},
"postId": {
"type": "string",
"description": "Native post identifier from list_buffer_posts or get_buffer_post."
},
"context": {
"type": "string",
"maxLength": 120,
"description": "Short purpose of this call for the activity log. Exclude personal data and private source content."
},
"llm_model": {
"type": "string",
"maxLength": 128,
"description": "Use the exact model ID executing this call, from runtime/system context, for usage attribution. Supply it on every Atomic MCP tool call, including discovery and feedback, and update it if the model changes. Use the model ID rather than the client app name. If unavailable, omit it; never guess or ask the user."
},
"projectId": {
"type": "number",
"description": "Atomic project ID from list_projects. Omit to use the configured project; if asked to choose, select one of the accessible returned IDs."
},
"connectionId": {
"type": "number",
"minimum": 1,
"description": "Workspace Google connection identifier from list_workspace_google_connections."
}
},
"additionalProperties": false
},
"outputSchema": {
"type": "object",
"required": [
"success"
],
"properties": {
"url": {
"type": "string",
"description": "Link for resolving the failure or completing the operation."
},
"data": {
"type": "object",
"required": [
"id",
"channelId",
"status"
],
"properties": {
"id": {
"type": "string",
"description": "Identifier of this returned resource. Use it for subsequent reads or edits of the same resource."
},
"url": {
"type": "string",
"description": "URL returned for this resource or operation."
},
"text": {
"type": "string"
},
"dueAt": {
"type": "string"
},
"error": {
"type": "string",
"description": "Failure details reported by this operation or its provider."
},
"assets": {
"type": "array",
"items": {
"type": "object",
"properties": {},
"additionalProperties": {
"description": "JSON returned by the connected provider or selected operation; its fields depend on that operation."
}
}
},
"status": {
"type": "string",
"description": "Current saved or execution state reported by the operation."
},
"channelId": {
"type": "string"
}
},
"description": "Operation data; optional fields may be absent."
},
"error": {
"type": "string",
"description": "Why the operation failed."
},
"details": {
"type": "object",
"description": "Diagnostics keyed by errorCode."
},
"message": {
"type": "string",
"description": "Outcome or recovery instructions. Project selection means no action ran."
},
"success": {
"type": "boolean",
"description": "Operation success; on false inspect error/errorCode."
},
"upgrade": {
"type": "object",
"description": "Plan-upgrade guidance for an unavailable capability."
},
"category": {
"type": "string",
"description": "Failure category, such as invalid_input or plan_required."
},
"expected": {
"type": "boolean",
"description": "Whether this is an anticipated access, input, plan or state failure."
},
"projects": {
"type": "array",
"items": {
"type": "object",
"properties": {
"id": {
"type": "number",
"description": "Project ID for projectId."
},
"name": {
"type": "string",
"description": "Project name."
}
},
"description": "Accessible project."
},
"description": "Accessible project choices. Select a projectId and retry."
},
"errorCode": {
"type": "string",
"description": "Failure code for recovery."
},
"retryable": {
"type": "boolean",
"description": "Whether an unchanged request can be retried."
},
"statusCode": {
"type": "number",
"description": "HTTP-style failure status."
},
"executionTime": {
"type": "string",
"description": "Elapsed time in seconds, with an s suffix."
}
},
"description": "Operation result envelope."
},
"annotations": {
"readOnlyHint": false,
"openWorldHint": true,
"idempotentHint": false,
"destructiveHint": true
}
}
The title clearly communicates the tool’s action and subject. Keep it concise.
Description91/100
Edit a content folder's name and description. List folders first, then supply both fields; use an empty description to clear it.
Changes the existing folder metadata, not the contained content content. Read list_content_folders first and preserve the description unless clearing it is intended.
The description explains the capability, when to use it, and what to expect.
Inputs79/100
Remove validation rules already expressed in this field’s schema; describe its meaning and usage instead.
folderId
Folder ID from the folder listing in this collection.
Remove validation rules already expressed in this field’s schema; describe its meaning and usage instead.
name
Folder name.
Remove validation rules already expressed in this field’s schema; describe its meaning and usage instead.
description
Folder description. Use an empty string to clear it.
Remove validation rules already expressed in this field’s schema; describe its meaning and usage instead.
projectId
Atomic project ID from list_projects. Omit to use the configured project; if asked to choose, select one of the accessible returned IDs.
Clear enough to supply this argument.
context
Short purpose of this call for the activity log. Exclude personal data and private source content.
Remove validation rules already expressed in this field’s schema; describe its meaning and usage instead.
llm_model
Use the exact model ID executing this call, from runtime/system context, for usage attribution. Supply it on every Atomic MCP tool call, including discovery and feedback, and update it if the model changes. Use the model ID rather than the client app name. If unavailable, omit it; never guess or ask the user.
Remove validation rules already expressed in this field’s schema; describe its meaning and usage instead.
{
"type": "object",
"required": [
"success"
],
"properties": {
"url": {
"type": "string",
"description": "Link for resolving the failure or completing the operation."
},
"data": {
"type": "object",
"required": [
"id",
"projectId",
"collection",
"name",
"description"
],
"properties": {
"id": {
"type": "number",
"description": "Identifier of this returned resource. Use it for subsequent reads or edits of the same resource."
},
"name": {
"type": "string",
"description": "Human-readable name of this resource."
},
"projectId": {
"type": "number",
"description": "Atomic project that owns this resource."
},
"collection": {
"enum": [
"content",
"grids",
"workflows",
"reports"
],
"type": "string",
"description": "Atomic collection that owns these folders or items."
},
"description": {
"type": "string",
"description": "Saved description of this resource or its purpose."
}
},
"description": "Operation data; optional fields may be absent."
},
"error": {
"type": "string",
"description": "Why the operation failed."
},
"details": {
"type": "object",
"description": "Diagnostics keyed by errorCode."
},
"message": {
"type": "string",
"description": "Outcome or recovery instructions. Project selection means no action ran."
},
"success": {
"type": "boolean",
"description": "Operation success; on false inspect error/errorCode."
},
"upgrade": {
"type": "object",
"description": "Plan-upgrade guidance for an unavailable capability."
},
"category": {
"type": "string",
"description": "Failure category, such as invalid_input or plan_required."
},
"expected": {
"type": "boolean",
"description": "Whether this is an anticipated access, input, plan or state failure."
},
"projects": {
"type": "array",
"items": {
"type": "object",
"properties": {
"id": {
"type": "number",
"description": "Project ID for projectId."
},
"name": {
"type": "string",
"description": "Project name."
}
},
"description": "Accessible project."
},
"description": "Accessible project choices. Select a projectId and retry."
},
"errorCode": {
"type": "string",
"description": "Failure code for recovery."
},
"retryable": {
"type": "boolean",
"description": "Whether an unchanged request can be retried."
},
"statusCode": {
"type": "number",
"description": "HTTP-style failure status."
},
"executionTime": {
"type": "string",
"description": "Elapsed time in seconds, with an s suffix."
}
},
"description": "Operation result envelope."
}
Original tool metadata
{
"name": "update_content_folder",
"title": "Update content folder",
"description": "Edit a content folder's name and description. List folders first, then supply both fields; use an empty description to clear it.\n\nChanges the existing folder metadata, not the contained content content. Read list_content_folders first and preserve the description unless clearing it is intended.",
"inputSchema": {
"type": "object",
"required": [
"folderId",
"name",
"description"
],
"properties": {
"name": {
"type": "string",
"maxLength": 120,
"minLength": 1,
"description": "Folder name."
},
"context": {
"type": "string",
"maxLength": 120,
"description": "Short purpose of this call for the activity log. Exclude personal data and private source content."
},
"folderId": {
"type": "number",
"minimum": 1,
"multipleOf": 1,
"description": "Folder ID from the folder listing in this collection."
},
"llm_model": {
"type": "string",
"maxLength": 128,
"description": "Use the exact model ID executing this call, from runtime/system context, for usage attribution. Supply it on every Atomic MCP tool call, including discovery and feedback, and update it if the model changes. Use the model ID rather than the client app name. If unavailable, omit it; never guess or ask the user."
},
"projectId": {
"type": "number",
"description": "Atomic project ID from list_projects. Omit to use the configured project; if asked to choose, select one of the accessible returned IDs."
},
"description": {
"type": "string",
"maxLength": 2000,
"description": "Folder description. Use an empty string to clear it."
}
},
"additionalProperties": false
},
"outputSchema": {
"type": "object",
"required": [
"success"
],
"properties": {
"url": {
"type": "string",
"description": "Link for resolving the failure or completing the operation."
},
"data": {
"type": "object",
"required": [
"id",
"projectId",
"collection",
"name",
"description"
],
"properties": {
"id": {
"type": "number",
"description": "Identifier of this returned resource. Use it for subsequent reads or edits of the same resource."
},
"name": {
"type": "string",
"description": "Human-readable name of this resource."
},
"projectId": {
"type": "number",
"description": "Atomic project that owns this resource."
},
"collection": {
"enum": [
"content",
"grids",
"workflows",
"reports"
],
"type": "string",
"description": "Atomic collection that owns these folders or items."
},
"description": {
"type": "string",
"description": "Saved description of this resource or its purpose."
}
},
"description": "Operation data; optional fields may be absent."
},
"error": {
"type": "string",
"description": "Why the operation failed."
},
"details": {
"type": "object",
"description": "Diagnostics keyed by errorCode."
},
"message": {
"type": "string",
"description": "Outcome or recovery instructions. Project selection means no action ran."
},
"success": {
"type": "boolean",
"description": "Operation success; on false inspect error/errorCode."
},
"upgrade": {
"type": "object",
"description": "Plan-upgrade guidance for an unavailable capability."
},
"category": {
"type": "string",
"description": "Failure category, such as invalid_input or plan_required."
},
"expected": {
"type": "boolean",
"description": "Whether this is an anticipated access, input, plan or state failure."
},
"projects": {
"type": "array",
"items": {
"type": "object",
"properties": {
"id": {
"type": "number",
"description": "Project ID for projectId."
},
"name": {
"type": "string",
"description": "Project name."
}
},
"description": "Accessible project."
},
"description": "Accessible project choices. Select a projectId and retry."
},
"errorCode": {
"type": "string",
"description": "Failure code for recovery."
},
"retryable": {
"type": "boolean",
"description": "Whether an unchanged request can be retried."
},
"statusCode": {
"type": "number",
"description": "HTTP-style failure status."
},
"executionTime": {
"type": "string",
"description": "Elapsed time in seconds, with an s suffix."
}
},
"description": "Operation result envelope."
},
"annotations": {
"readOnlyHint": false,
"openWorldHint": false,
"idempotentHint": false,
"destructiveHint": true
}
}
The title clearly communicates the tool’s action and subject. Keep it concise.
Description96/100
Update an existing content version with new markdown content. You only use this if you find a existing version. If you are creating a new version, use the create_content tool instead. Used for editing and refining content versions. Content is required and must be provided in markdown format. IMPORTANT: The response includes an editorUrl field - this is a direct link to open the content in the editor. Always include the editorUrl as a clickable markdown link in your response after updating content. Format: [Open in Editor](editorUrl).
Replaces the chosen version in place. Use create_content_version for a separate new version or duplicate_content_version for an exact copy; this does not publish to a CMS.
The description explains the capability, when to use it, and what to expect.
Inputs75/100
Clarify units, where to obtain this value, or conventions not already expressed in the schema.
versionId
The ID of the content version to update
Clarify units, where to obtain this value, or conventions not already expressed in the schema.
content
REQUIRED: The new markdown content for the version. Will be converted to HTML before saving. The content will be saved as is, without any additional processing.
Clear enough to supply this argument.
title
Optional new title for the version
Explain the meaning of this value, not just its name.
fullDescription
Optional new complete description for the version
Explain the meaning of this value, not just its name.
metaDescription
Optional new short SEO meta description for the version
Clear enough to supply this argument.
projectId
Atomic project ID from list_projects. Omit to use the configured project; if asked to choose, select one of the accessible returned IDs.
Clear enough to supply this argument.
context
Short purpose of this call for the activity log. Exclude personal data and private source content.
Remove validation rules already expressed in this field’s schema; describe its meaning and usage instead.
llm_model
Use the exact model ID executing this call, from runtime/system context, for usage attribution. Supply it on every Atomic MCP tool call, including discovery and feedback, and update it if the model changes. Use the model ID rather than the client app name. If unavailable, omit it; never guess or ask the user.
Remove validation rules already expressed in this field’s schema; describe its meaning and usage instead.
Align the output schema with the tool’s documented result.
View output schema
{
"type": "object",
"required": [
"success"
],
"properties": {
"url": {
"type": "string",
"description": "Link for resolving the failure or completing the operation."
},
"data": {
"type": "object",
"required": [
"id",
"contentId",
"versionNumber",
"title",
"content",
"isActive",
"updatedAt",
"editorUrl"
],
"properties": {
"id": {
"type": "number",
"description": "Identifier of this returned resource. Use it for subsequent reads or edits of the same resource."
},
"title": {
"type": "string",
"description": "Display or content title of this returned item."
},
"content": {
"type": "string",
"description": "Returned content body in the format described by the containing resource."
},
"isActive": {
"type": "boolean",
"description": "Whether this saved configuration is enabled."
},
"contentId": {
"type": "string"
},
"editorUrl": {
"type": "string",
"description": "Atomic editor URL for inspecting or editing this content item."
},
"updatedAt": {
"type": "string",
"format": "date-time",
"description": "Date and time this record was last updated, serialized as ISO 8601."
},
"versionNumber": {
"type": "number"
},
"fullDescription": {
"type": "string",
"description": "Saved full content body or description."
},
"metaDescription": {
"type": "string",
"description": "Saved page meta description used in search snippets."
}
},
"description": "Operation data; optional fields may be absent."
},
"error": {
"type": "string",
"description": "Why the operation failed."
},
"details": {
"type": "object",
"description": "Diagnostics keyed by errorCode."
},
"message": {
"type": "string",
"description": "Outcome or recovery instructions. Project selection means no action ran."
},
"success": {
"type": "boolean",
"description": "Operation success; on false inspect error/errorCode."
},
"upgrade": {
"type": "object",
"description": "Plan-upgrade guidance for an unavailable capability."
},
"category": {
"type": "string",
"description": "Failure category, such as invalid_input or plan_required."
},
"expected": {
"type": "boolean",
"description": "Whether this is an anticipated access, input, plan or state failure."
},
"projects": {
"type": "array",
"items": {
"type": "object",
"properties": {
"id": {
"type": "number",
"description": "Project ID for projectId."
},
"name": {
"type": "string",
"description": "Project name."
}
},
"description": "Accessible project."
},
"description": "Accessible project choices. Select a projectId and retry."
},
"errorCode": {
"type": "string",
"description": "Failure code for recovery."
},
"retryable": {
"type": "boolean",
"description": "Whether an unchanged request can be retried."
},
"statusCode": {
"type": "number",
"description": "HTTP-style failure status."
},
"executionTime": {
"type": "string",
"description": "Elapsed time in seconds, with an s suffix."
}
},
"description": "Operation result envelope."
}
Original tool metadata
{
"name": "update_content_version",
"title": "Update content version",
"description": "Update an existing content version with new markdown content. You only use this if you find a existing version. If you are creating a new version, use the create_content tool instead. Used for editing and refining content versions. Content is required and must be provided in markdown format. IMPORTANT: The response includes an editorUrl field - this is a direct link to open the content in the editor. Always include the editorUrl as a clickable markdown link in your response after updating content. Format: [Open in Editor](editorUrl).\n\nReplaces the chosen version in place. Use create_content_version for a separate new version or duplicate_content_version for an exact copy; this does not publish to a CMS.",
"inputSchema": {
"type": "object",
"required": [
"versionId",
"content"
],
"properties": {
"title": {
"type": "string",
"description": "Optional new title for the version"
},
"content": {
"type": "string",
"description": "REQUIRED: The new markdown content for the version. Will be converted to HTML before saving. The content will be saved as is, without any additional processing."
},
"context": {
"type": "string",
"maxLength": 120,
"description": "Short purpose of this call for the activity log. Exclude personal data and private source content."
},
"llm_model": {
"type": "string",
"maxLength": 128,
"description": "Use the exact model ID executing this call, from runtime/system context, for usage attribution. Supply it on every Atomic MCP tool call, including discovery and feedback, and update it if the model changes. Use the model ID rather than the client app name. If unavailable, omit it; never guess or ask the user."
},
"projectId": {
"type": "number",
"description": "Atomic project ID from list_projects. Omit to use the configured project; if asked to choose, select one of the accessible returned IDs."
},
"versionId": {
"type": "number",
"description": "The ID of the content version to update"
},
"fullDescription": {
"type": "string",
"description": "Optional new complete description for the version"
},
"metaDescription": {
"type": "string",
"description": "Optional new short SEO meta description for the version"
}
}
},
"outputSchema": {
"type": "object",
"required": [
"success"
],
"properties": {
"url": {
"type": "string",
"description": "Link for resolving the failure or completing the operation."
},
"data": {
"type": "object",
"required": [
"id",
"contentId",
"versionNumber",
"title",
"content",
"isActive",
"updatedAt",
"editorUrl"
],
"properties": {
"id": {
"type": "number",
"description": "Identifier of this returned resource. Use it for subsequent reads or edits of the same resource."
},
"title": {
"type": "string",
"description": "Display or content title of this returned item."
},
"content": {
"type": "string",
"description": "Returned content body in the format described by the containing resource."
},
"isActive": {
"type": "boolean",
"description": "Whether this saved configuration is enabled."
},
"contentId": {
"type": "string"
},
"editorUrl": {
"type": "string",
"description": "Atomic editor URL for inspecting or editing this content item."
},
"updatedAt": {
"type": "string",
"format": "date-time",
"description": "Date and time this record was last updated, serialized as ISO 8601."
},
"versionNumber": {
"type": "number"
},
"fullDescription": {
"type": "string",
"description": "Saved full content body or description."
},
"metaDescription": {
"type": "string",
"description": "Saved page meta description used in search snippets."
}
},
"description": "Operation data; optional fields may be absent."
},
"error": {
"type": "string",
"description": "Why the operation failed."
},
"details": {
"type": "object",
"description": "Diagnostics keyed by errorCode."
},
"message": {
"type": "string",
"description": "Outcome or recovery instructions. Project selection means no action ran."
},
"success": {
"type": "boolean",
"description": "Operation success; on false inspect error/errorCode."
},
"upgrade": {
"type": "object",
"description": "Plan-upgrade guidance for an unavailable capability."
},
"category": {
"type": "string",
"description": "Failure category, such as invalid_input or plan_required."
},
"expected": {
"type": "boolean",
"description": "Whether this is an anticipated access, input, plan or state failure."
},
"projects": {
"type": "array",
"items": {
"type": "object",
"properties": {
"id": {
"type": "number",
"description": "Project ID for projectId."
},
"name": {
"type": "string",
"description": "Project name."
}
},
"description": "Accessible project."
},
"description": "Accessible project choices. Select a projectId and retry."
},
"errorCode": {
"type": "string",
"description": "Failure code for recovery."
},
"retryable": {
"type": "boolean",
"description": "Whether an unchanged request can be retried."
},
"statusCode": {
"type": "number",
"description": "HTTP-style failure status."
},
"executionTime": {
"type": "string",
"description": "Elapsed time in seconds, with an s suffix."
}
},
"description": "Operation result envelope."
},
"annotations": {
"readOnlyHint": false,
"openWorldHint": false,
"idempotentHint": false,
"destructiveHint": true
}
}
The title clearly communicates the tool’s action and subject. Keep it concise.
Description94/100
Update a Notion-style DATA REPORT. The report name is rendered at the top as the main page heading, with the optional report description beneath it; do not repeat the report name as the first layout heading. The layout can mix narrative blocks (text and the single body Heading option, stored as heading-2), highlighted callout blocks (blockType "section", shown as "Callout" in the UI, with background tones), and metric/data blocks with charts/tables/cards. Use this ONLY for custom analytics reports and dashboards - NOT workflows or automation. You can update any combination of name, description, and config fields. IMPORTANT: The response includes a publicUrl field - When present, include it as a clickable markdown link (format: [View Report](publicUrl)).
The description explains the capability, when to use it, and what to expect.
Inputs75/100
Clarify units, where to obtain this value, or conventions not already expressed in the schema.
reportId
The ID of the custom report to update
Clarify units, where to obtain this value, or conventions not already expressed in the schema.
name
Optional new name for the report. This is displayed as the main heading at the top of the report.
Clear enough to supply this argument.
description
Optional new description for the report
Explain the meaning of this value, not just its name.
config › layout › items › oneOf › 0 › id
Required. Unique identifier for the layout item (e.g., "item-1", "executive-summary")
Remove validation rules already expressed in this field’s schema; describe its meaning and usage instead.
config › layout › items › oneOf › 0 › title
Optional display title. Use for metric/data blocks only. Text, heading, and callout blocks use content instead.
Clear enough to supply this argument.
config › layout › items › oneOf › 0 › size
Required. Size of the layout item. Use LARGE for Notion-style text, headings, callouts, and most charts.
Remove validation rules already expressed in this field’s schema; describe its meaning and usage instead.
config › layout › items › oneOf › 0 › blockType
Optional. Use "data" for metric/data blocks. If omitted, the item is treated as a data block.
Remove validation rules already expressed in this field’s schema; describe its meaning and usage instead.
config › layout › items › oneOf › 0 › description
Deprecated for metric blocks. Prefer leaving this empty; report metrics now show title/date full width without a description textarea.
Remove validation rules already expressed in this field’s schema; describe its meaning and usage instead.
config › layout › items › oneOf › 0 › dataSource
Required. Data source for the layout item. VALID COMBINATIONS: search-analytics→total, ai-search→total|by-source|by-page, ai-prompts→performance, ai-competitors→performance, ai-citations→performance, ai-mentions→distribution|performance, ai-platforms→performance|by-source|distribution|by-page, ai-sentiment→performance|by-source, keywords→distribution|performance (trend filter works with: performance), pages→performance (trend filter works with: performance), conversions→total|by-source|by-page|by-country, referrals→total|by-source, geography→performance (trend filter works with: performance), devices→performance, seo-audit→performance
Remove validation rules already expressed in this field’s schema; describe its meaning and usage instead.
Required. Section/view of the data source. Use: performance (table with rows - REQUIRED for trend filters to work), distribution (summary cards - no trend filtering), total (aggregate line chart), by-source/by-page/by-country (grouped tables). IMPORTANT: To filter by rising/falling trends, you MUST use sourceSection=performance with keywords, pages, or geography data sources.
Remove validation rules already expressed in this field’s schema; describe its meaning and usage instead.
config › layout › items › oneOf › 0 › startDate
Required. Start date for the data range in ISO format (YYYY-MM-DD)
Remove validation rules already expressed in this field’s schema; describe its meaning and usage instead.
config › layout › items › oneOf › 0 › endDate
Required. End date for the data range in ISO format (YYYY-MM-DD)
Remove validation rules already expressed in this field’s schema; describe its meaning and usage instead.
The dimension to filter on. query: Filter by search query/keyword text; page: Filter by page URL; device: Filter by device type [values: DESKTOP, MOBILE, TABLET]; country: Filter by country (3-letter code) [values: USA, GBR, CAN, DEU, FRA...]; sessionSource: Filter by traffic source [values: google, bing, chatgpt.com, google.com/aimode, perplexity.ai...]; trend: Filter by trend direction. IMPORTANT: Only works with sourceSection=performance [values: up, down, flat]; platform: Filter by AI platform [values: chatgpt, ai_mode, gemini, perplexity, copilot...]; type: Filter by citation type [values: you, competitor, ugc, corporate, editorial...]; category: Filter by content category [values: awareness, consideration, decision, branded]
Remove validation rules already expressed in this field’s schema; describe its meaning and usage instead.
The filter operator. Use: equals (exact match, best for trend/device/impact), contains (partial match, best for query/page), notContains/notEquals (exclusions), includingRegex/excludingRegex (pattern matching)
Remove validation rules already expressed in this field’s schema; describe its meaning and usage instead.
The filter value. Examples: For trend use "up" (rising), "down" (falling), or "flat" (stable). For device use "DESKTOP", "MOBILE", or "TABLET". For country use 3-letter codes like "USA", "GBR", "DEU". For query/page use the text to match.
Remove validation rules already expressed in this field’s schema; describe its meaning and usage instead.
Remove validation rules already expressed in this field’s schema; describe its meaning and usage instead.
config › layout › items › oneOf › 1 › id
Required. Unique identifier for the layout item (e.g., "item-1", "executive-summary")
Remove validation rules already expressed in this field’s schema; describe its meaning and usage instead.
config › layout › items › oneOf › 1 › title
Optional display title. Use for metric/data blocks only. Text, heading, and callout blocks use content instead.
Remove validation rules already expressed in this field’s schema; describe its meaning and usage instead.
config › layout › items › oneOf › 1 › size
Required. Size of the layout item. Use LARGE for Notion-style text, headings, callouts, and most charts.
Remove validation rules already expressed in this field’s schema; describe its meaning and usage instead.
config › layout › items › oneOf › 1 › blockType
Required. Supported narrative blocks are text and the single Heading option, stored as heading-2. Do not use heading-1, heading-3, heading-4, bulleted-list, numbered-list, or todo-list for new reports.
Remove validation rules already expressed in this field’s schema; describe its meaning and usage instead.
config › layout › items › oneOf › 1 › content
Required. Text to render.
Remove validation rules already expressed in this field’s schema; describe its meaning and usage instead.
config › layout › items › oneOf › 2 › id
Required. Unique identifier for the layout item (e.g., "item-1", "executive-summary")
Remove validation rules already expressed in this field’s schema; describe its meaning and usage instead.
config › layout › items › oneOf › 2 › title
Optional display title. Use for metric/data blocks only. Text, heading, and callout blocks use content instead.
Remove validation rules already expressed in this field’s schema; describe its meaning and usage instead.
config › layout › items › oneOf › 2 › size
Required. Size of the layout item. Use LARGE for Notion-style text, headings, callouts, and most charts.
Remove validation rules already expressed in this field’s schema; describe its meaning and usage instead.
config › layout › items › oneOf › 2 › blockType
Required. Use "section" for callout blocks. The UI labels this block type as "Callout".
Remove validation rules already expressed in this field’s schema; describe its meaning and usage instead.
config › layout › items › oneOf › 2 › content
Required. Callout body text. Can include multiple lines and bullet-style text.
Remove validation rules already expressed in this field’s schema; describe its meaning and usage instead.
config › layout › items › oneOf › 2 › icon
Optional emoji/icon for the callout, such as a lightbulb, warning, or check mark.
Remove validation rules already expressed in this field’s schema; describe its meaning and usage instead.
config › layout › items › oneOf › 2 › tone
Optional background color. Available tones: default, gray, brown, orange, yellow, green, blue, purple, pink, red. Use gray by default unless the user asks for another color.
Remove validation rules already expressed in this field’s schema; describe its meaning and usage instead.
config › layout › items › oneOf › 3 › id
Required. Unique identifier for the layout item (e.g., "item-1", "executive-summary")
Remove validation rules already expressed in this field’s schema; describe its meaning and usage instead.
config › layout › items › oneOf › 3 › title
Optional display title. Use for metric/data blocks only. Text, heading, and callout blocks use content instead.
Remove validation rules already expressed in this field’s schema; describe its meaning and usage instead.
config › layout › items › oneOf › 3 › size
Required. Size of the layout item. Use LARGE for Notion-style text, headings, callouts, and most charts.
Remove validation rules already expressed in this field’s schema; describe its meaning and usage instead.
config › layout › items › oneOf › 3 › blockType
Report block or widget type selecting the configuration structure.
Remove validation rules already expressed in this field’s schema; describe its meaning and usage instead.
config › layout › items › oneOf › 3 › pageSize
Rows per page. Defaults to 10.
Remove validation rules already expressed in this field’s schema; describe its meaning and usage instead.
Cell values within the supplied row or table configuration.
Remove validation rules already expressed in this field’s schema; describe its meaning and usage instead.
config › filters › items › dimension
The dimension to filter on. query: Filter by search query/keyword text; page: Filter by page URL; device: Filter by device type [values: DESKTOP, MOBILE, TABLET]; country: Filter by country (3-letter code) [values: USA, GBR, CAN, DEU, FRA...]; sessionSource: Filter by traffic source [values: google, bing, chatgpt.com, google.com/aimode, perplexity.ai...]; trend: Filter by trend direction. IMPORTANT: Only works with sourceSection=performance [values: up, down, flat]; platform: Filter by AI platform [values: chatgpt, ai_mode, gemini, perplexity, copilot...]; type: Filter by citation type [values: you, competitor, ugc, corporate, editorial...]; category: Filter by content category [values: awareness, consideration, decision, branded]
Remove validation rules already expressed in this field’s schema; describe its meaning and usage instead.
config › filters › items › operator
The filter operator. Use: equals (exact match, best for trend/device/impact), contains (partial match, best for query/page), notContains/notEquals (exclusions), includingRegex/excludingRegex (pattern matching)
Remove validation rules already expressed in this field’s schema; describe its meaning and usage instead.
config › filters › items › expression
The filter value. Examples: For trend use "up" (rising), "down" (falling), or "flat" (stable). For device use "DESKTOP", "MOBILE", or "TABLET". For country use 3-letter codes like "USA", "GBR", "DEU". For query/page use the text to match.
Remove validation rules already expressed in this field’s schema; describe its meaning and usage instead.
projectId
Atomic project ID from list_projects. Omit to use the configured project; if asked to choose, select one of the accessible returned IDs.
Remove validation rules already expressed in this field’s schema; describe its meaning and usage instead.
context
Short purpose of this call for the activity log. Exclude personal data and private source content.
Remove validation rules already expressed in this field’s schema; describe its meaning and usage instead.
llm_model
Use the exact model ID executing this call, from runtime/system context, for usage attribution. Supply it on every Atomic MCP tool call, including discovery and feedback, and update it if the model changes. Use the model ID rather than the client app name. If unavailable, omit it; never guess or ask the user.
Remove validation rules already expressed in this field’s schema; describe its meaning and usage instead.
The title clearly communicates the tool’s action and subject. Keep it concise.
Description97/100
Update publication settings for a project report. Publishing makes report data publicly accessible. Omitted settings are preserved; indexing is never enabled implicitly. Use isPublished=false to unpublish. publicSlug is a URL path slug, not a full URL. customDomainId must identify a verified domain owned by this project; null clears it. Returns saved settings and publicUrl only when explicitly published. Read get_custom_report_by_id to verify persistence; browser validation is separate.
The description explains the capability, when to use it, and what to expect.
Inputs81/100
Clarify units, where to obtain this value, or conventions not already expressed in the schema.
reportId
Saved custom report identifier from get_custom_reports.
Clear enough to supply this argument.
isPublished
Whether the saved custom report is available through its public sharing URL.
Clear enough to supply this argument.
isSearchIndexingEnabled
Whether search engines may index the published report.
Clear enough to supply this argument.
publicSlug
Human-readable public URL slug for the published report.
Clarify units, where to obtain this value, or conventions not already expressed in the schema.
customDomainId
Configured custom domain identifier used to publish the report.
Clarify units, where to obtain this value, or conventions not already expressed in the schema.
projectId
Atomic project ID from list_projects. Omit to use the configured project; if asked to choose, select one of the accessible returned IDs.
Clear enough to supply this argument.
context
Short purpose of this call for the activity log. Exclude personal data and private source content.
Remove validation rules already expressed in this field’s schema; describe its meaning and usage instead.
llm_model
Use the exact model ID executing this call, from runtime/system context, for usage attribution. Supply it on every Atomic MCP tool call, including discovery and feedback, and update it if the model changes. Use the model ID rather than the client app name. If unavailable, omit it; never guess or ask the user.
Remove validation rules already expressed in this field’s schema; describe its meaning and usage instead.
The title clearly communicates the tool’s action and subject. Keep it concise.
Description96/100
Edit a saved workspace-level custom report template. Use get_custom_report_templates first if you need to find the templateId. You can update any combination of name, description, and config. This edits the reusable template only, not existing reports created from it.
The description explains the capability, when to use it, and what to expect.
Inputs87/100
Explain the meaning of this value, not just its name.
templateId
The ID of the saved custom report template to edit.
Clear enough to supply this argument.
name
Optional new template name.
Explain the meaning of this value, not just its name.
description
Optional new template description.
Explain the meaning of this value, not just its name.
config › layout › items › oneOf › 0 › id
Required. Unique identifier for the layout item (e.g., "item-1", "executive-summary")
Clear enough to supply this argument.
config › layout › items › oneOf › 0 › title
Optional display title. Use for metric/data blocks only. Text, heading, and callout blocks use content instead.
Clear enough to supply this argument.
config › layout › items › oneOf › 0 › size
Required. Size of the layout item. Use LARGE for Notion-style text, headings, callouts, and most charts.
Remove validation rules already expressed in this field’s schema; describe its meaning and usage instead.
config › layout › items › oneOf › 0 › blockType
Optional. Use "data" for metric/data blocks. If omitted, the item is treated as a data block.
Remove validation rules already expressed in this field’s schema; describe its meaning and usage instead.
config › layout › items › oneOf › 0 › description
Deprecated for metric blocks. Prefer leaving this empty; report metrics now show title/date full width without a description textarea.
Clear enough to supply this argument.
config › layout › items › oneOf › 0 › dataSource
Required. Data source for the layout item. VALID COMBINATIONS: search-analytics→total, ai-search→total|by-source|by-page, ai-prompts→performance, ai-competitors→performance, ai-citations→performance, ai-mentions→distribution|performance, ai-platforms→performance|by-source|distribution|by-page, ai-sentiment→performance|by-source, keywords→distribution|performance (trend filter works with: performance), pages→performance (trend filter works with: performance), conversions→total|by-source|by-page|by-country, referrals→total|by-source, geography→performance (trend filter works with: performance), devices→performance, seo-audit→performance
Required. Section/view of the data source. Use: performance (table with rows - REQUIRED for trend filters to work), distribution (summary cards - no trend filtering), total (aggregate line chart), by-source/by-page/by-country (grouped tables). IMPORTANT: To filter by rising/falling trends, you MUST use sourceSection=performance with keywords, pages, or geography data sources.
Remove validation rules already expressed in this field’s schema; describe its meaning and usage instead.
config › layout › items › oneOf › 0 › startDate
Required. Start date for the data range in ISO format (YYYY-MM-DD)
Remove validation rules already expressed in this field’s schema; describe its meaning and usage instead.
config › layout › items › oneOf › 0 › endDate
Required. End date for the data range in ISO format (YYYY-MM-DD)
Remove validation rules already expressed in this field’s schema; describe its meaning and usage instead.
The dimension to filter on. query: Filter by search query/keyword text; page: Filter by page URL; device: Filter by device type [values: DESKTOP, MOBILE, TABLET]; country: Filter by country (3-letter code) [values: USA, GBR, CAN, DEU, FRA...]; sessionSource: Filter by traffic source [values: google, bing, chatgpt.com, google.com/aimode, perplexity.ai...]; trend: Filter by trend direction. IMPORTANT: Only works with sourceSection=performance [values: up, down, flat]; platform: Filter by AI platform [values: chatgpt, ai_mode, gemini, perplexity, copilot...]; type: Filter by citation type [values: you, competitor, ugc, corporate, editorial...]; category: Filter by content category [values: awareness, consideration, decision, branded]
Remove validation rules already expressed in this field’s schema; describe its meaning and usage instead.
The filter operator. Use: equals (exact match, best for trend/device/impact), contains (partial match, best for query/page), notContains/notEquals (exclusions), includingRegex/excludingRegex (pattern matching)
Remove validation rules already expressed in this field’s schema; describe its meaning and usage instead.
The filter value. Examples: For trend use "up" (rising), "down" (falling), or "flat" (stable). For device use "DESKTOP", "MOBILE", or "TABLET". For country use 3-letter codes like "USA", "GBR", "DEU". For query/page use the text to match.
Remove validation rules already expressed in this field’s schema; describe its meaning and usage instead.
Remove validation rules already expressed in this field’s schema; describe its meaning and usage instead.
config › layout › items › oneOf › 1 › id
Required. Unique identifier for the layout item (e.g., "item-1", "executive-summary")
Remove validation rules already expressed in this field’s schema; describe its meaning and usage instead.
config › layout › items › oneOf › 1 › title
Optional display title. Use for metric/data blocks only. Text, heading, and callout blocks use content instead.
Remove validation rules already expressed in this field’s schema; describe its meaning and usage instead.
config › layout › items › oneOf › 1 › size
Required. Size of the layout item. Use LARGE for Notion-style text, headings, callouts, and most charts.
Remove validation rules already expressed in this field’s schema; describe its meaning and usage instead.
config › layout › items › oneOf › 1 › blockType
Required. Supported narrative blocks are text and the single Heading option, stored as heading-2. Do not use heading-1, heading-3, heading-4, bulleted-list, numbered-list, or todo-list for new reports.
Clear enough to supply this argument.
config › layout › items › oneOf › 1 › content
Required. Text to render.
Clear enough to supply this argument.
config › layout › items › oneOf › 2 › id
Required. Unique identifier for the layout item (e.g., "item-1", "executive-summary")
Clear enough to supply this argument.
config › layout › items › oneOf › 2 › title
Optional display title. Use for metric/data blocks only. Text, heading, and callout blocks use content instead.
Clear enough to supply this argument.
config › layout › items › oneOf › 2 › size
Required. Size of the layout item. Use LARGE for Notion-style text, headings, callouts, and most charts.
Clear enough to supply this argument.
config › layout › items › oneOf › 2 › blockType
Required. Use "section" for callout blocks. The UI labels this block type as "Callout".
Remove validation rules already expressed in this field’s schema; describe its meaning and usage instead.
config › layout › items › oneOf › 2 › content
Required. Callout body text. Can include multiple lines and bullet-style text.
Clear enough to supply this argument.
config › layout › items › oneOf › 2 › icon
Optional emoji/icon for the callout, such as a lightbulb, warning, or check mark.
Clear enough to supply this argument.
config › layout › items › oneOf › 2 › tone
Optional background color. Available tones: default, gray, brown, orange, yellow, green, blue, purple, pink, red. Use gray by default unless the user asks for another color.
Clear enough to supply this argument.
config › layout › items › oneOf › 3 › id
Required. Unique identifier for the layout item (e.g., "item-1", "executive-summary")
Clear enough to supply this argument.
config › layout › items › oneOf › 3 › title
Optional display title. Use for metric/data blocks only. Text, heading, and callout blocks use content instead.
Clear enough to supply this argument.
config › layout › items › oneOf › 3 › size
Required. Size of the layout item. Use LARGE for Notion-style text, headings, callouts, and most charts.
Clear enough to supply this argument.
config › layout › items › oneOf › 3 › blockType
Report block or widget type selecting the configuration structure.
Cell values within the supplied row or table configuration.
Clear enough to supply this argument.
config › filters › items › dimension
The dimension to filter on. query: Filter by search query/keyword text; page: Filter by page URL; device: Filter by device type [values: DESKTOP, MOBILE, TABLET]; country: Filter by country (3-letter code) [values: USA, GBR, CAN, DEU, FRA...]; sessionSource: Filter by traffic source [values: google, bing, chatgpt.com, google.com/aimode, perplexity.ai...]; trend: Filter by trend direction. IMPORTANT: Only works with sourceSection=performance [values: up, down, flat]; platform: Filter by AI platform [values: chatgpt, ai_mode, gemini, perplexity, copilot...]; type: Filter by citation type [values: you, competitor, ugc, corporate, editorial...]; category: Filter by content category [values: awareness, consideration, decision, branded]
Clear enough to supply this argument.
config › filters › items › operator
The filter operator. Use: equals (exact match, best for trend/device/impact), contains (partial match, best for query/page), notContains/notEquals (exclusions), includingRegex/excludingRegex (pattern matching)
Clear enough to supply this argument.
config › filters › items › expression
The filter value. Examples: For trend use "up" (rising), "down" (falling), or "flat" (stable). For device use "DESKTOP", "MOBILE", or "TABLET". For country use 3-letter codes like "USA", "GBR", "DEU". For query/page use the text to match.
Clear enough to supply this argument.
projectId
Atomic project ID from list_projects. Omit to use the configured project; if asked to choose, select one of the accessible returned IDs.
Clear enough to supply this argument.
context
Short purpose of this call for the activity log. Exclude personal data and private source content.
Clear enough to supply this argument.
llm_model
Use the exact model ID executing this call, from runtime/system context, for usage attribution. Supply it on every Atomic MCP tool call, including discovery and feedback, and update it if the model changes. Use the model ID rather than the client app name. If unavailable, omit it; never guess or ask the user.
{
"type": "object",
"required": [
"success"
],
"properties": {
"url": {
"type": "string",
"description": "Link for resolving the failure or completing the operation."
},
"data": {
"type": "object",
"required": [
"name",
"workspaceId",
"createdAt",
"updatedAt",
"config"
],
"properties": {
"id": {
"type": "number",
"description": "Identifier of this returned resource. Use it for subsequent reads or edits of the same resource."
},
"name": {
"type": "string",
"description": "Human-readable name of this resource."
},
"config": {
"type": "object",
"required": [
"layout"
],
"properties": {
"layout": {
"type": "array",
"items": {
"type": "object",
"description": "Nested operation-specific fields."
}
},
"filters": {
"type": "array",
"items": {
"type": "object",
"description": "Nested operation-specific fields."
},
"description": "Filters applied to this result or saved reporting configuration."
}
},
"description": "Saved configuration specific to this resource's type."
},
"createdAt": {
"type": "string",
"format": "date-time",
"description": "Date and time this record was created, serialized as ISO 8601."
},
"updatedAt": {
"type": "string",
"format": "date-time",
"description": "Date and time this record was last updated, serialized as ISO 8601."
},
"description": {
"type": "string",
"description": "Saved description of this resource or its purpose."
},
"workspaceId": {
"type": "number",
"description": "Atomic workspace that owns this project or resource."
}
},
"description": "Operation data; optional fields may be absent."
},
"error": {
"type": "string",
"description": "Why the operation failed."
},
"details": {
"type": "object",
"description": "Diagnostics keyed by errorCode."
},
"message": {
"type": "string",
"description": "Outcome or recovery instructions. Project selection means no action ran."
},
"success": {
"type": "boolean",
"description": "Operation success; on false inspect error/errorCode."
},
"upgrade": {
"type": "object",
"description": "Plan-upgrade guidance for an unavailable capability."
},
"category": {
"type": "string",
"description": "Failure category, such as invalid_input or plan_required."
},
"expected": {
"type": "boolean",
"description": "Whether this is an anticipated access, input, plan or state failure."
},
"projects": {
"type": "array",
"items": {
"type": "object",
"properties": {
"id": {
"type": "number",
"description": "Project ID for projectId."
},
"name": {
"type": "string",
"description": "Project name."
}
},
"description": "Accessible project."
},
"description": "Accessible project choices. Select a projectId and retry."
},
"errorCode": {
"type": "string",
"description": "Failure code for recovery."
},
"retryable": {
"type": "boolean",
"description": "Whether an unchanged request can be retried."
},
"statusCode": {
"type": "number",
"description": "HTTP-style failure status."
},
"executionTime": {
"type": "string",
"description": "Elapsed time in seconds, with an s suffix."
}
},
"description": "Operation result envelope."
}
Original tool metadata
{
"name": "update_custom_report_template",
"title": "Update custom report template",
"description": "Edit a saved workspace-level custom report template. Use get_custom_report_templates first if you need to find the templateId. You can update any combination of name, description, and config. This edits the reusable template only, not existing reports created from it.",
"inputSchema": {
"type": "object",
"required": [
"templateId"
],
"properties": {
"name": {
"type": "string",
"description": "Optional new template name."
},
"config": {
"type": "object",
"properties": {
"layout": {
"type": "array",
"items": {
"oneOf": [
{
"type": "object",
"required": [
"id",
"size",
"dataSource",
"sourceSection"
],
"properties": {
"id": {
"type": "string",
"description": "Required. Unique identifier for the layout item (e.g., \"item-1\", \"executive-summary\")"
},
"size": {
"enum": [
"SMALL",
"MEDIUM",
"LARGE"
],
"type": "string",
"description": "Required. Size of the layout item. Use LARGE for Notion-style text, headings, callouts, and most charts."
},
"title": {
"type": "string",
"description": "Optional display title. Use for metric/data blocks only. Text, heading, and callout blocks use content instead."
},
"endDate": {
"type": "string",
"description": "Required. End date for the data range in ISO format (YYYY-MM-DD)"
},
"filters": {
"type": "array",
"items": {
"type": "object",
"properties": {
"operator": {
"enum": [
"contains",
"equals",
"notContains",
"notEquals",
"includingRegex",
"excludingRegex"
],
"type": "string",
"description": "The filter operator. Use: equals (exact match, best for trend/device/impact), contains (partial match, best for query/page), notContains/notEquals (exclusions), includingRegex/excludingRegex (pattern matching)"
},
"dimension": {
"enum": [
"query",
"page",
"device",
"country",
"sessionSource",
"trend",
"platform",
"type",
"category"
],
"type": "string",
"description": "The dimension to filter on. query: Filter by search query/keyword text; page: Filter by page URL; device: Filter by device type [values: DESKTOP, MOBILE, TABLET]; country: Filter by country (3-letter code) [values: USA, GBR, CAN, DEU, FRA...]; sessionSource: Filter by traffic source [values: google, bing, chatgpt.com, google.com/aimode, perplexity.ai...]; trend: Filter by trend direction. IMPORTANT: Only works with sourceSection=performance [values: up, down, flat]; platform: Filter by AI platform [values: chatgpt, ai_mode, gemini, perplexity, copilot...]; type: Filter by citation type [values: you, competitor, ugc, corporate, editorial...]; category: Filter by content category [values: awareness, consideration, decision, branded]"
},
"expression": {
"type": "string",
"description": "The filter value. Examples: For trend use \"up\" (rising), \"down\" (falling), or \"flat\" (stable). For device use \"DESKTOP\", \"MOBILE\", or \"TABLET\". For country use 3-letter codes like \"USA\", \"GBR\", \"DEU\". For query/page use the text to match."
}
}
},
"description": "Filters to apply. IMPORTANT: Use filters to narrow down data based on user requests like \"rising keywords\", \"mobile traffic\", \"US visitors\", etc."
},
"blockType": {
"enum": [
"data"
],
"type": "string",
"description": "Optional. Use \"data\" for metric/data blocks. If omitted, the item is treated as a data block."
},
"startDate": {
"type": "string",
"description": "Required. Start date for the data range in ISO format (YYYY-MM-DD)"
},
"dataSource": {
"enum": [
"search-analytics",
"organic-traffic",
"ai-search",
"ai-prompts",
"ai-competitors",
"ai-citations",
"ai-mentions",
"ai-platforms",
"ai-sentiment",
"keywords",
"pages",
"conversions",
"referrals",
"geography",
"devices",
"seo-audit",
"zero-click-pages"
],
"type": "string",
"description": "Required. Data source for the layout item. VALID COMBINATIONS: search-analytics→total, ai-search→total|by-source|by-page, ai-prompts→performance, ai-competitors→performance, ai-citations→performance, ai-mentions→distribution|performance, ai-platforms→performance|by-source|distribution|by-page, ai-sentiment→performance|by-source, keywords→distribution|performance (trend filter works with: performance), pages→performance (trend filter works with: performance), conversions→total|by-source|by-page|by-country, referrals→total|by-source, geography→performance (trend filter works with: performance), devices→performance, seo-audit→performance"
},
"description": {
"type": "string",
"description": "Deprecated for metric blocks. Prefer leaving this empty; report metrics now show title/date full width without a description textarea."
},
"selectedViews": {
"type": "array",
"items": {
"enum": [
"chartWithTable",
"tabsWithChartsOnly",
"tabsWithTablesOnly",
"lineChart",
"stackedChart",
"pieChart",
"barChart",
"worldMap",
"table",
"switch",
"card",
"split",
"sentimentBreakdown"
],
"type": "string"
},
"description": "Optional. Canonical visualization types to render for this metric. Use ONLY these enum values: chartWithTable, tabsWithChartsOnly, tabsWithTablesOnly, lineChart, stackedChart, pieChart, barChart, worldMap, table, switch, card, split, sentimentBreakdown. Pick values supported by the chosen dataSource + sourceSection. Valid combinations: search-analytics -> total: [lineChart] | organic-traffic -> total: [lineChart, pieChart, barChart, table] | ai-search -> total: [lineChart]; by-source: [lineChart, pieChart, barChart, table]; by-page: [lineChart, pieChart, barChart, table] | ai-prompts -> performance: [card, pieChart, table] | ai-competitors -> performance: [lineChart, table] | ai-citations -> performance: [lineChart, table] | ai-mentions -> distribution: [card]; performance: [table] | ai-platforms -> performance: [lineChart, table]; by-source: [barChart, table]; distribution: [barChart, table]; by-page: [table] | ai-sentiment -> performance: [lineChart, sentimentBreakdown]; by-source: [table] | keywords -> distribution: [card]; performance: [lineChart, pieChart, barChart, table] | pages -> performance: [lineChart, pieChart, barChart, table] | conversions -> total: [lineChart]; by-source: [lineChart, pieChart, barChart, table]; by-page: [lineChart, pieChart, barChart, table]; by-country: [lineChart, pieChart, barChart, table] | referrals -> total: [lineChart]; by-source: [table] | geography -> performance: [worldMap, pieChart, barChart, table] | devices -> performance: [lineChart, pieChart, barChart, table] | seo-audit -> performance: [card] | zero-click-pages -> performance: [card, pieChart, barChart, table]"
},
"sourceSection": {
"enum": [
"total",
"by-source",
"by-page",
"performance",
"distribution",
"by-country"
],
"type": "string",
"description": "Required. Section/view of the data source. Use: performance (table with rows - REQUIRED for trend filters to work), distribution (summary cards - no trend filtering), total (aggregate line chart), by-source/by-page/by-country (grouped tables). IMPORTANT: To filter by rising/falling trends, you MUST use sourceSection=performance with keywords, pages, or geography data sources."
}
},
"description": "Metric/data block. Use for analytics widgets, charts, tables, and cards. Metric blocks do not need a description field."
},
{
"type": "object",
"required": [
"id",
"size",
"blockType",
"content"
],
"properties": {
"id": {
"type": "string",
"description": "Required. Unique identifier for the layout item (e.g., \"item-1\", \"executive-summary\")"
},
"size": {
"enum": [
"SMALL",
"MEDIUM",
"LARGE"
],
"type": "string",
"description": "Required. Size of the layout item. Use LARGE for Notion-style text, headings, callouts, and most charts."
},
"title": {
"type": "string",
"description": "Optional display title. Use for metric/data blocks only. Text, heading, and callout blocks use content instead."
},
"content": {
"type": "string",
"description": "Required. Text to render."
},
"blockType": {
"enum": [
"text",
"heading-2"
],
"type": "string",
"description": "Required. Supported narrative blocks are text and the single Heading option, stored as heading-2. Do not use heading-1, heading-3, heading-4, bulleted-list, numbered-list, or todo-list for new reports."
}
},
"description": "Text/heading block. Use these to make reports read like a Notion document with explanatory context between metrics. The report name is already rendered at the top as the main page heading, so do not duplicate it as a layout heading."
},
{
"type": "object",
"required": [
"id",
"size",
"blockType",
"content"
],
"properties": {
"id": {
"type": "string",
"description": "Required. Unique identifier for the layout item (e.g., \"item-1\", \"executive-summary\")"
},
"icon": {
"type": "string",
"description": "Optional emoji/icon for the callout, such as a lightbulb, warning, or check mark."
},
"size": {
"enum": [
"SMALL",
"MEDIUM",
"LARGE"
],
"type": "string",
"description": "Required. Size of the layout item. Use LARGE for Notion-style text, headings, callouts, and most charts."
},
"tone": {
"enum": [
"default",
"gray",
"no_background",
"brown",
"orange",
"yellow",
"green",
"blue",
"purple",
"pink",
"red"
],
"type": "string",
"description": "Optional background color. Available tones: default, gray, brown, orange, yellow, green, blue, purple, pink, red. Use gray by default unless the user asks for another color."
},
"title": {
"type": "string",
"description": "Optional display title. Use for metric/data blocks only. Text, heading, and callout blocks use content instead."
},
"content": {
"type": "string",
"description": "Required. Callout body text. Can include multiple lines and bullet-style text."
},
"blockType": {
"enum": [
"section"
],
"type": "string",
"description": "Required. Use \"section\" for callout blocks. The UI labels this block type as \"Callout\"."
}
},
"description": "Callout block. Use for highlighted narrative sections, notes, summaries, recommendations, or warnings with a background color."
},
{
"type": "object",
"required": [
"id",
"size",
"blockType",
"columns",
"rows"
],
"properties": {
"id": {
"type": "string",
"description": "Required. Unique identifier for the layout item (e.g., \"item-1\", \"executive-summary\")"
},
"rows": {
"type": "array",
"items": {
"type": "object",
"required": [
"id",
"cells"
],
"properties": {
"id": {
"type": "string",
"description": "Stable identifier for this report layout row or column; preserve it when editing the layout."
},
"cells": {
"type": "object",
"description": "Cell values within the supplied row or table configuration.",
"additionalProperties": {
"type": "string"
}
}
}
},
"maxItems": 1000,
"description": "Row definitions or row values for this table or block."
},
"size": {
"enum": [
"SMALL",
"MEDIUM",
"LARGE"
],
"type": "string",
"description": "Required. Size of the layout item. Use LARGE for Notion-style text, headings, callouts, and most charts."
},
"title": {
"type": "string",
"description": "Optional display title. Use for metric/data blocks only. Text, heading, and callout blocks use content instead."
},
"columns": {
"type": "array",
"items": {
"type": "object",
"required": [
"id",
"label"
],
"properties": {
"id": {
"type": "string",
"description": "Stable identifier for this report layout row or column; preserve it when editing the layout."
},
"type": {
"enum": [
"text",
"url",
"single-select"
],
"type": "string",
"description": "Column presentation. Omitted means text. URL renders a favicon link; single-select renders a colored badge."
},
"label": {
"type": "string",
"description": "Human-readable label shown for this item in Atomic."
},
"options": {
"type": "array",
"items": {
"type": "object",
"required": [
"name",
"color"
],
"properties": {
"name": {
"type": "string",
"description": "Human-readable name of the item being created or edited."
},
"color": {
"enum": [
"#9aa0a6",
"#e06666",
"#f6b26b",
"#ffd966",
"#93c47d",
"#76a5af",
"#6fa8dc",
"#8e7cc3",
"#c27ba0"
],
"type": "string",
"description": "Color for this visual element, expressed in the format accepted by the selected chart or image settings."
}
}
},
"description": "Configuration options specific to the selected block or operation."
}
}
},
"maxItems": 20,
"minItems": 1,
"description": "Ordered column definitions for the table or report block."
},
"pageSize": {
"enum": [
10,
20,
50,
100
],
"type": "number",
"description": "Rows per page. Defaults to 10."
},
"blockType": {
"enum": [
"custom-table"
],
"type": "string",
"description": "Report block or widget type selecting the configuration structure."
}
},
"description": "Manually populated native table, for verified backlinks or other supplied rows. No analytics source or date queries. Cells are plain text keyed by column id."
}
],
"description": "Report layout item. Can be a metric/data block, text/heading block, callout block, or manually populated custom-table. Compose reports like a Notion page: text for prose, heading-2 for body section headings, callouts for highlighted context, and metrics where useful. The report title/name is outside this layout and is already shown as the main heading."
},
"description": "Array of report blocks in display order, rendered below the report title and description. Use text blocks for narrative context, heading-2 blocks for body section headings, callout blocks for highlighted sections, and data blocks for analytics widgets. Do not add a first heading that repeats the report name."
},
"filters": {
"type": "array",
"items": {
"type": "object",
"properties": {
"operator": {
"enum": [
"contains",
"equals",
"notContains",
"notEquals",
"includingRegex",
"excludingRegex"
],
"type": "string",
"description": "The filter operator. Use: equals (exact match, best for trend/device/impact), contains (partial match, best for query/page), notContains/notEquals (exclusions), includingRegex/excludingRegex (pattern matching)"
},
"dimension": {
"enum": [
"query",
"page",
"device",
"country",
"sessionSource",
"trend",
"platform",
"type",
"category"
],
"type": "string",
"description": "The dimension to filter on. query: Filter by search query/keyword text; page: Filter by page URL; device: Filter by device type [values: DESKTOP, MOBILE, TABLET]; country: Filter by country (3-letter code) [values: USA, GBR, CAN, DEU, FRA...]; sessionSource: Filter by traffic source [values: google, bing, chatgpt.com, google.com/aimode, perplexity.ai...]; trend: Filter by trend direction. IMPORTANT: Only works with sourceSection=performance [values: up, down, flat]; platform: Filter by AI platform [values: chatgpt, ai_mode, gemini, perplexity, copilot...]; type: Filter by citation type [values: you, competitor, ugc, corporate, editorial...]; category: Filter by content category [values: awareness, consideration, decision, branded]"
},
"expression": {
"type": "string",
"description": "The filter value. Examples: For trend use \"up\" (rising), \"down\" (falling), or \"flat\" (stable). For device use \"DESKTOP\", \"MOBILE\", or \"TABLET\". For country use 3-letter codes like \"USA\", \"GBR\", \"DEU\". For query/page use the text to match."
}
}
},
"description": "Global filters applied to ALL layout items in the report. Use for report-wide filtering like \"only show US data\" or \"only mobile traffic\"."
}
},
"description": "The report configuration object. Create Notion-style reports by mixing text, the single body Heading option, callouts, and metric/data blocks in layout order. The report name is shown above the layout as the main heading."
},
"context": {
"type": "string",
"maxLength": 120,
"description": "Short purpose of this call for the activity log. Exclude personal data and private source content."
},
"llm_model": {
"type": "string",
"maxLength": 128,
"description": "Use the exact model ID executing this call, from runtime/system context, for usage attribution. Supply it on every Atomic MCP tool call, including discovery and feedback, and update it if the model changes. Use the model ID rather than the client app name. If unavailable, omit it; never guess or ask the user."
},
"projectId": {
"type": "number",
"description": "Atomic project ID from list_projects. Omit to use the configured project; if asked to choose, select one of the accessible returned IDs."
},
"templateId": {
"type": "number",
"description": "The ID of the saved custom report template to edit."
},
"description": {
"type": "string",
"description": "Optional new template description."
}
}
},
"outputSchema": {
"type": "object",
"required": [
"success"
],
"properties": {
"url": {
"type": "string",
"description": "Link for resolving the failure or completing the operation."
},
"data": {
"type": "object",
"required": [
"name",
"workspaceId",
"createdAt",
"updatedAt",
"config"
],
"properties": {
"id": {
"type": "number",
"description": "Identifier of this returned resource. Use it for subsequent reads or edits of the same resource."
},
"name": {
"type": "string",
"description": "Human-readable name of this resource."
},
"config": {
"type": "object",
"required": [
"layout"
],
"properties": {
"layout": {
"type": "array",
"items": {
"type": "object",
"description": "Nested operation-specific fields."
}
},
"filters": {
"type": "array",
"items": {
"type": "object",
"description": "Nested operation-specific fields."
},
"description": "Filters applied to this result or saved reporting configuration."
}
},
"description": "Saved configuration specific to this resource's type."
},
"createdAt": {
"type": "string",
"format": "date-time",
"description": "Date and time this record was created, serialized as ISO 8601."
},
"updatedAt": {
"type": "string",
"format": "date-time",
"description": "Date and time this record was last updated, serialized as ISO 8601."
},
"description": {
"type": "string",
"description": "Saved description of this resource or its purpose."
},
"workspaceId": {
"type": "number",
"description": "Atomic workspace that owns this project or resource."
}
},
"description": "Operation data; optional fields may be absent."
},
"error": {
"type": "string",
"description": "Why the operation failed."
},
"details": {
"type": "object",
"description": "Diagnostics keyed by errorCode."
},
"message": {
"type": "string",
"description": "Outcome or recovery instructions. Project selection means no action ran."
},
"success": {
"type": "boolean",
"description": "Operation success; on false inspect error/errorCode."
},
"upgrade": {
"type": "object",
"description": "Plan-upgrade guidance for an unavailable capability."
},
"category": {
"type": "string",
"description": "Failure category, such as invalid_input or plan_required."
},
"expected": {
"type": "boolean",
"description": "Whether this is an anticipated access, input, plan or state failure."
},
"projects": {
"type": "array",
"items": {
"type": "object",
"properties": {
"id": {
"type": "number",
"description": "Project ID for projectId."
},
"name": {
"type": "string",
"description": "Project name."
}
},
"description": "Accessible project."
},
"description": "Accessible project choices. Select a projectId and retry."
},
"errorCode": {
"type": "string",
"description": "Failure code for recovery."
},
"retryable": {
"type": "boolean",
"description": "Whether an unchanged request can be retried."
},
"statusCode": {
"type": "number",
"description": "HTTP-style failure status."
},
"executionTime": {
"type": "string",
"description": "Elapsed time in seconds, with an s suffix."
}
},
"description": "Operation result envelope."
},
"annotations": {
"readOnlyHint": false,
"openWorldHint": false,
"idempotentHint": false,
"destructiveHint": true
}
}
The title clearly communicates the tool’s action and subject. Keep it concise.
Description79/100
Write a value into one grid cell. Fetch the grid first so you use valid sheet, row, and column IDs. Values may be strings, numbers, booleans, objects, arrays, or null. For existing Social posts use review_grid_social_post to revise or approve with revision checks.
The description explains the capability, when to use it, and what to expect.
Inputs89/100
Explain the meaning of this value, not just its name.
sheetId
Sheet ID from get_grid or create_grid_sheet; the selected sheet must belong to the current project.
Clear enough to supply this argument.
rowId
Existing row ID from get_grid_sheet_rows/get_grid_sheet, not its mutable visual position.
Clear enough to supply this argument.
columnId
Existing column ID from the selected sheet in get_grid/get_grid_sheet, not the display name or position.
Clear enough to supply this argument.
value
Value to write into the cell.
Explain the meaning of this value, not just its name.
projectId
Atomic project ID from list_projects. Omit to use the configured project; if asked to choose, select one of the accessible returned IDs.
Clear enough to supply this argument.
context
Short purpose of this call for the activity log. Exclude personal data and private source content.
Remove validation rules already expressed in this field’s schema; describe its meaning and usage instead.
llm_model
Use the exact model ID executing this call, from runtime/system context, for usage attribution. Supply it on every Atomic MCP tool call, including discovery and feedback, and update it if the model changes. Use the model ID rather than the client app name. If unavailable, omit it; never guess or ask the user.
{
"type": "object",
"required": [
"success"
],
"properties": {
"url": {
"type": "string",
"description": "Link for resolving the failure or completing the operation."
},
"data": {
"type": "object",
"required": [
"rowId",
"columnId",
"status",
"createdAt",
"updatedAt"
],
"properties": {
"id": {
"type": "number",
"description": "Identifier of this returned resource. Use it for subsequent reads or edits of the same resource."
},
"error": {
"anyOf": [
{
"type": "null"
},
{
"type": "string"
}
],
"description": "Failure details reported by this operation or its provider."
},
"rowId": {
"type": "number",
"description": "Grid row identifier for this item."
},
"value": {
"description": "Returned value for the containing field, setting or observation."
},
"status": {
"enum": [
"EMPTY",
"PENDING",
"RUNNING",
"WAITING_FOR_APPROVAL",
"COMPLETED",
"FAILED",
"CANCELED"
],
"type": "string",
"description": "Current saved or execution state reported by the operation."
},
"columnId": {
"type": "number",
"description": "Grid column identifier for this item."
},
"createdAt": {
"type": "string",
"format": "date-time",
"description": "Date and time this record was created, serialized as ISO 8601."
},
"updatedAt": {
"type": "string",
"format": "date-time",
"description": "Date and time this record was last updated, serialized as ISO 8601."
},
"scheduledAt": {
"anyOf": [
{
"type": "null"
},
{
"type": "string",
"format": "date-time",
"description": "Timestamp serialized as an ISO 8601 date and time."
}
],
"description": "Date and time this task or publication is scheduled to run."
},
"workflowRunId": {
"anyOf": [
{
"type": "null"
},
{
"type": "number"
}
],
"description": "Workflow execution associated with this result, distinct from its definition ID."
},
"workflowStepTestRunId": {
"anyOf": [
{
"type": "null"
},
{
"type": "number"
}
],
"description": "Existing workflow step test execution associated with this result."
}
},
"description": "Operation data; optional fields may be absent."
},
"error": {
"type": "string",
"description": "Why the operation failed."
},
"details": {
"type": "object",
"description": "Diagnostics keyed by errorCode."
},
"message": {
"type": "string",
"description": "Outcome or recovery instructions. Project selection means no action ran."
},
"success": {
"type": "boolean",
"description": "Operation success; on false inspect error/errorCode."
},
"upgrade": {
"type": "object",
"description": "Plan-upgrade guidance for an unavailable capability."
},
"category": {
"type": "string",
"description": "Failure category, such as invalid_input or plan_required."
},
"expected": {
"type": "boolean",
"description": "Whether this is an anticipated access, input, plan or state failure."
},
"projects": {
"type": "array",
"items": {
"type": "object",
"properties": {
"id": {
"type": "number",
"description": "Project ID for projectId."
},
"name": {
"type": "string",
"description": "Project name."
}
},
"description": "Accessible project."
},
"description": "Accessible project choices. Select a projectId and retry."
},
"errorCode": {
"type": "string",
"description": "Failure code for recovery."
},
"retryable": {
"type": "boolean",
"description": "Whether an unchanged request can be retried."
},
"statusCode": {
"type": "number",
"description": "HTTP-style failure status."
},
"executionTime": {
"type": "string",
"description": "Elapsed time in seconds, with an s suffix."
}
},
"description": "Operation result envelope."
}
Original tool metadata
{
"name": "update_grid_cell",
"title": "Update grid cell",
"description": "Write a value into one grid cell. Fetch the grid first so you use valid sheet, row, and column IDs. Values may be strings, numbers, booleans, objects, arrays, or null. For existing Social posts use review_grid_social_post to revise or approve with revision checks.",
"inputSchema": {
"type": "object",
"required": [
"sheetId",
"rowId",
"columnId",
"value"
],
"properties": {
"rowId": {
"type": "number",
"description": "Existing row ID from get_grid_sheet_rows/get_grid_sheet, not its mutable visual position."
},
"value": {
"description": "Value to write into the cell."
},
"context": {
"type": "string",
"maxLength": 120,
"description": "Short purpose of this call for the activity log. Exclude personal data and private source content."
},
"sheetId": {
"type": "number",
"description": "Sheet ID from get_grid or create_grid_sheet; the selected sheet must belong to the current project."
},
"columnId": {
"type": "number",
"description": "Existing column ID from the selected sheet in get_grid/get_grid_sheet, not the display name or position."
},
"llm_model": {
"type": "string",
"maxLength": 128,
"description": "Use the exact model ID executing this call, from runtime/system context, for usage attribution. Supply it on every Atomic MCP tool call, including discovery and feedback, and update it if the model changes. Use the model ID rather than the client app name. If unavailable, omit it; never guess or ask the user."
},
"projectId": {
"type": "number",
"description": "Atomic project ID from list_projects. Omit to use the configured project; if asked to choose, select one of the accessible returned IDs."
}
}
},
"outputSchema": {
"type": "object",
"required": [
"success"
],
"properties": {
"url": {
"type": "string",
"description": "Link for resolving the failure or completing the operation."
},
"data": {
"type": "object",
"required": [
"rowId",
"columnId",
"status",
"createdAt",
"updatedAt"
],
"properties": {
"id": {
"type": "number",
"description": "Identifier of this returned resource. Use it for subsequent reads or edits of the same resource."
},
"error": {
"anyOf": [
{
"type": "null"
},
{
"type": "string"
}
],
"description": "Failure details reported by this operation or its provider."
},
"rowId": {
"type": "number",
"description": "Grid row identifier for this item."
},
"value": {
"description": "Returned value for the containing field, setting or observation."
},
"status": {
"enum": [
"EMPTY",
"PENDING",
"RUNNING",
"WAITING_FOR_APPROVAL",
"COMPLETED",
"FAILED",
"CANCELED"
],
"type": "string",
"description": "Current saved or execution state reported by the operation."
},
"columnId": {
"type": "number",
"description": "Grid column identifier for this item."
},
"createdAt": {
"type": "string",
"format": "date-time",
"description": "Date and time this record was created, serialized as ISO 8601."
},
"updatedAt": {
"type": "string",
"format": "date-time",
"description": "Date and time this record was last updated, serialized as ISO 8601."
},
"scheduledAt": {
"anyOf": [
{
"type": "null"
},
{
"type": "string",
"format": "date-time",
"description": "Timestamp serialized as an ISO 8601 date and time."
}
],
"description": "Date and time this task or publication is scheduled to run."
},
"workflowRunId": {
"anyOf": [
{
"type": "null"
},
{
"type": "number"
}
],
"description": "Workflow execution associated with this result, distinct from its definition ID."
},
"workflowStepTestRunId": {
"anyOf": [
{
"type": "null"
},
{
"type": "number"
}
],
"description": "Existing workflow step test execution associated with this result."
}
},
"description": "Operation data; optional fields may be absent."
},
"error": {
"type": "string",
"description": "Why the operation failed."
},
"details": {
"type": "object",
"description": "Diagnostics keyed by errorCode."
},
"message": {
"type": "string",
"description": "Outcome or recovery instructions. Project selection means no action ran."
},
"success": {
"type": "boolean",
"description": "Operation success; on false inspect error/errorCode."
},
"upgrade": {
"type": "object",
"description": "Plan-upgrade guidance for an unavailable capability."
},
"category": {
"type": "string",
"description": "Failure category, such as invalid_input or plan_required."
},
"expected": {
"type": "boolean",
"description": "Whether this is an anticipated access, input, plan or state failure."
},
"projects": {
"type": "array",
"items": {
"type": "object",
"properties": {
"id": {
"type": "number",
"description": "Project ID for projectId."
},
"name": {
"type": "string",
"description": "Project name."
}
},
"description": "Accessible project."
},
"description": "Accessible project choices. Select a projectId and retry."
},
"errorCode": {
"type": "string",
"description": "Failure code for recovery."
},
"retryable": {
"type": "boolean",
"description": "Whether an unchanged request can be retried."
},
"statusCode": {
"type": "number",
"description": "HTTP-style failure status."
},
"executionTime": {
"type": "string",
"description": "Elapsed time in seconds, with an s suffix."
}
},
"description": "Operation result envelope."
},
"annotations": {
"readOnlyHint": false,
"openWorldHint": false,
"idempotentHint": false,
"destructiveHint": true
}
}
The title clearly communicates the tool’s action and subject. Keep it concise.
Description79/100
Bulk update grid cell values in one call. Prefer this over repeated update_grid_cell calls when writing multiple generated values into existing rows. For existing Social posts use review_grid_social_post instead; generic writes cannot revise review state or content.
The description explains the capability, when to use it, and what to expect.
Inputs71/100
Explain the meaning of this value, not just its name.
sheetId
Sheet ID from get_grid or create_grid_sheet; the selected sheet must belong to the current project.
Clear enough to supply this argument.
cells › items › rowId
Target row ID.
Explain the meaning of this value, not just its name.
cells › items › columnId
Target column ID.
Explain the meaning of this value, not just its name.
cells › items › value
Value to write into the cell.
Explain the meaning of this value, not just its name.
projectId
Atomic project ID from list_projects. Omit to use the configured project; if asked to choose, select one of the accessible returned IDs.
Clear enough to supply this argument.
context
Short purpose of this call for the activity log. Exclude personal data and private source content.
Remove validation rules already expressed in this field’s schema; describe its meaning and usage instead.
llm_model
Use the exact model ID executing this call, from runtime/system context, for usage attribution. Supply it on every Atomic MCP tool call, including discovery and feedback, and update it if the model changes. Use the model ID rather than the client app name. If unavailable, omit it; never guess or ask the user.
Remove validation rules already expressed in this field’s schema; describe its meaning and usage instead.
{
"type": "object",
"required": [
"success"
],
"properties": {
"url": {
"type": "string",
"description": "Link for resolving the failure or completing the operation."
},
"data": {
"type": "object",
"required": [
"cells"
],
"properties": {
"cells": {
"type": "array",
"items": {
"type": "object",
"required": [
"rowId",
"columnId",
"status",
"createdAt",
"updatedAt"
],
"properties": {
"id": {
"type": "number",
"description": "Identifier of this returned resource. Use it for subsequent reads or edits of the same resource."
},
"error": {
"anyOf": [
{
"type": "null"
},
{
"type": "string"
}
],
"description": "Failure details reported by this operation or its provider."
},
"rowId": {
"type": "number",
"description": "Grid row identifier for this item."
},
"value": {
"description": "Returned value for the containing field, setting or observation."
},
"status": {
"enum": [
"EMPTY",
"PENDING",
"RUNNING",
"WAITING_FOR_APPROVAL",
"COMPLETED",
"FAILED",
"CANCELED"
],
"type": "string",
"description": "Current saved or execution state reported by the operation."
},
"columnId": {
"type": "number",
"description": "Grid column identifier for this item."
},
"createdAt": {
"type": "string",
"format": "date-time",
"description": "Date and time this record was created, serialized as ISO 8601."
},
"updatedAt": {
"type": "string",
"format": "date-time",
"description": "Date and time this record was last updated, serialized as ISO 8601."
},
"scheduledAt": {
"anyOf": [
{
"type": "null"
},
{
"type": "string",
"format": "date-time",
"description": "Timestamp serialized as an ISO 8601 date and time."
}
],
"description": "Date and time this task or publication is scheduled to run."
},
"workflowRunId": {
"anyOf": [
{
"type": "null"
},
{
"type": "number"
}
],
"description": "Workflow execution associated with this result, distinct from its definition ID."
},
"workflowStepTestRunId": {
"anyOf": [
{
"type": "null"
},
{
"type": "number"
}
],
"description": "Existing workflow step test execution associated with this result."
}
}
}
}
},
"description": "Operation data; optional fields may be absent."
},
"error": {
"type": "string",
"description": "Why the operation failed."
},
"details": {
"type": "object",
"description": "Diagnostics keyed by errorCode."
},
"message": {
"type": "string",
"description": "Outcome or recovery instructions. Project selection means no action ran."
},
"success": {
"type": "boolean",
"description": "Operation success; on false inspect error/errorCode."
},
"upgrade": {
"type": "object",
"description": "Plan-upgrade guidance for an unavailable capability."
},
"category": {
"type": "string",
"description": "Failure category, such as invalid_input or plan_required."
},
"expected": {
"type": "boolean",
"description": "Whether this is an anticipated access, input, plan or state failure."
},
"projects": {
"type": "array",
"items": {
"type": "object",
"properties": {
"id": {
"type": "number",
"description": "Project ID for projectId."
},
"name": {
"type": "string",
"description": "Project name."
}
},
"description": "Accessible project."
},
"description": "Accessible project choices. Select a projectId and retry."
},
"errorCode": {
"type": "string",
"description": "Failure code for recovery."
},
"retryable": {
"type": "boolean",
"description": "Whether an unchanged request can be retried."
},
"statusCode": {
"type": "number",
"description": "HTTP-style failure status."
},
"executionTime": {
"type": "string",
"description": "Elapsed time in seconds, with an s suffix."
}
},
"description": "Operation result envelope."
}
Original tool metadata
{
"name": "update_grid_cells",
"title": "Update grid cells",
"description": "Bulk update grid cell values in one call. Prefer this over repeated update_grid_cell calls when writing multiple generated values into existing rows. For existing Social posts use review_grid_social_post instead; generic writes cannot revise review state or content.",
"inputSchema": {
"type": "object",
"required": [
"sheetId",
"cells"
],
"properties": {
"cells": {
"type": "array",
"items": {
"type": "object",
"required": [
"rowId",
"columnId",
"value"
],
"properties": {
"rowId": {
"type": "number",
"description": "Target row ID."
},
"value": {
"description": "Value to write into the cell."
},
"columnId": {
"type": "number",
"description": "Target column ID."
}
}
},
"description": "Cells to update, each with rowId, columnId, and value."
},
"context": {
"type": "string",
"maxLength": 120,
"description": "Short purpose of this call for the activity log. Exclude personal data and private source content."
},
"sheetId": {
"type": "number",
"description": "Sheet ID from get_grid or create_grid_sheet; the selected sheet must belong to the current project."
},
"llm_model": {
"type": "string",
"maxLength": 128,
"description": "Use the exact model ID executing this call, from runtime/system context, for usage attribution. Supply it on every Atomic MCP tool call, including discovery and feedback, and update it if the model changes. Use the model ID rather than the client app name. If unavailable, omit it; never guess or ask the user."
},
"projectId": {
"type": "number",
"description": "Atomic project ID from list_projects. Omit to use the configured project; if asked to choose, select one of the accessible returned IDs."
}
}
},
"outputSchema": {
"type": "object",
"required": [
"success"
],
"properties": {
"url": {
"type": "string",
"description": "Link for resolving the failure or completing the operation."
},
"data": {
"type": "object",
"required": [
"cells"
],
"properties": {
"cells": {
"type": "array",
"items": {
"type": "object",
"required": [
"rowId",
"columnId",
"status",
"createdAt",
"updatedAt"
],
"properties": {
"id": {
"type": "number",
"description": "Identifier of this returned resource. Use it for subsequent reads or edits of the same resource."
},
"error": {
"anyOf": [
{
"type": "null"
},
{
"type": "string"
}
],
"description": "Failure details reported by this operation or its provider."
},
"rowId": {
"type": "number",
"description": "Grid row identifier for this item."
},
"value": {
"description": "Returned value for the containing field, setting or observation."
},
"status": {
"enum": [
"EMPTY",
"PENDING",
"RUNNING",
"WAITING_FOR_APPROVAL",
"COMPLETED",
"FAILED",
"CANCELED"
],
"type": "string",
"description": "Current saved or execution state reported by the operation."
},
"columnId": {
"type": "number",
"description": "Grid column identifier for this item."
},
"createdAt": {
"type": "string",
"format": "date-time",
"description": "Date and time this record was created, serialized as ISO 8601."
},
"updatedAt": {
"type": "string",
"format": "date-time",
"description": "Date and time this record was last updated, serialized as ISO 8601."
},
"scheduledAt": {
"anyOf": [
{
"type": "null"
},
{
"type": "string",
"format": "date-time",
"description": "Timestamp serialized as an ISO 8601 date and time."
}
],
"description": "Date and time this task or publication is scheduled to run."
},
"workflowRunId": {
"anyOf": [
{
"type": "null"
},
{
"type": "number"
}
],
"description": "Workflow execution associated with this result, distinct from its definition ID."
},
"workflowStepTestRunId": {
"anyOf": [
{
"type": "null"
},
{
"type": "number"
}
],
"description": "Existing workflow step test execution associated with this result."
}
}
}
}
},
"description": "Operation data; optional fields may be absent."
},
"error": {
"type": "string",
"description": "Why the operation failed."
},
"details": {
"type": "object",
"description": "Diagnostics keyed by errorCode."
},
"message": {
"type": "string",
"description": "Outcome or recovery instructions. Project selection means no action ran."
},
"success": {
"type": "boolean",
"description": "Operation success; on false inspect error/errorCode."
},
"upgrade": {
"type": "object",
"description": "Plan-upgrade guidance for an unavailable capability."
},
"category": {
"type": "string",
"description": "Failure category, such as invalid_input or plan_required."
},
"expected": {
"type": "boolean",
"description": "Whether this is an anticipated access, input, plan or state failure."
},
"projects": {
"type": "array",
"items": {
"type": "object",
"properties": {
"id": {
"type": "number",
"description": "Project ID for projectId."
},
"name": {
"type": "string",
"description": "Project name."
}
},
"description": "Accessible project."
},
"description": "Accessible project choices. Select a projectId and retry."
},
"errorCode": {
"type": "string",
"description": "Failure code for recovery."
},
"retryable": {
"type": "boolean",
"description": "Whether an unchanged request can be retried."
},
"statusCode": {
"type": "number",
"description": "HTTP-style failure status."
},
"executionTime": {
"type": "string",
"description": "Elapsed time in seconds, with an s suffix."
}
},
"description": "Operation result envelope."
},
"annotations": {
"readOnlyHint": false,
"openWorldHint": false,
"idempotentHint": false,
"destructiveHint": true
}
}
The title clearly communicates the tool’s action and subject. Keep it concise.
Description82/100
Update a grid column header, type, or config. Use this for column header options such as renaming or changing a column type.
Changes a saved column definition. Type/config changes can affect interpretation or execution of existing cells; inspect the current sheet and preserve unrelated configuration before editing.
The description explains the capability, when to use it, and what to expect.
Inputs83/100
Remove validation rules already expressed in this field’s schema; describe its meaning and usage instead.
columnId
Existing column ID from the selected sheet in get_grid/get_grid_sheet, not the display name or position.
Clear enough to supply this argument.
name
Optional new column name.
Clear enough to supply this argument.
type
Optional new column type.
Remove validation rules already expressed in this field’s schema; describe its meaning and usage instead.
config › type
Type discriminator for this operation or item. Use the supported values in this field's schema.
Remove validation rules already expressed in this field’s schema; describe its meaning and usage instead.
config › options › items › name
Human-readable name of the item being created or edited.
Remove validation rules already expressed in this field’s schema; describe its meaning and usage instead.
config › options › items › color
Display color of this grid select/status option, chosen from the supported palette. This does not change chart or image styling.
Remove validation rules already expressed in this field’s schema; describe its meaning and usage instead.
projectId
Atomic project ID from list_projects. Omit to use the configured project; if asked to choose, select one of the accessible returned IDs.
Clear enough to supply this argument.
context
Short purpose of this call for the activity log. Exclude personal data and private source content.
Remove validation rules already expressed in this field’s schema; describe its meaning and usage instead.
llm_model
Use the exact model ID executing this call, from runtime/system context, for usage attribution. Supply it on every Atomic MCP tool call, including discovery and feedback, and update it if the model changes. Use the model ID rather than the client app name. If unavailable, omit it; never guess or ask the user.
Remove validation rules already expressed in this field’s schema; describe its meaning and usage instead.
The title clearly communicates the tool’s action and subject. Keep it concise.
Description91/100
Edit a grids folder's name and description. List folders first, then supply both fields; use an empty description to clear it.
Changes the existing folder metadata, not the contained grid content. Read list_grid_folders first and preserve the description unless clearing it is intended.
The description explains the capability, when to use it, and what to expect.
Inputs79/100
Remove validation rules already expressed in this field’s schema; describe its meaning and usage instead.
folderId
Folder ID from the folder listing in this collection.
Remove validation rules already expressed in this field’s schema; describe its meaning and usage instead.
name
Folder name.
Remove validation rules already expressed in this field’s schema; describe its meaning and usage instead.
description
Folder description. Use an empty string to clear it.
Remove validation rules already expressed in this field’s schema; describe its meaning and usage instead.
projectId
Atomic project ID from list_projects. Omit to use the configured project; if asked to choose, select one of the accessible returned IDs.
Clear enough to supply this argument.
context
Short purpose of this call for the activity log. Exclude personal data and private source content.
Remove validation rules already expressed in this field’s schema; describe its meaning and usage instead.
llm_model
Use the exact model ID executing this call, from runtime/system context, for usage attribution. Supply it on every Atomic MCP tool call, including discovery and feedback, and update it if the model changes. Use the model ID rather than the client app name. If unavailable, omit it; never guess or ask the user.
Remove validation rules already expressed in this field’s schema; describe its meaning and usage instead.
{
"type": "object",
"required": [
"success"
],
"properties": {
"url": {
"type": "string",
"description": "Link for resolving the failure or completing the operation."
},
"data": {
"type": "object",
"required": [
"id",
"projectId",
"collection",
"name",
"description"
],
"properties": {
"id": {
"type": "number",
"description": "Identifier of this returned resource. Use it for subsequent reads or edits of the same resource."
},
"name": {
"type": "string",
"description": "Human-readable name of this resource."
},
"projectId": {
"type": "number",
"description": "Atomic project that owns this resource."
},
"collection": {
"enum": [
"content",
"grids",
"workflows",
"reports"
],
"type": "string",
"description": "Atomic collection that owns these folders or items."
},
"description": {
"type": "string",
"description": "Saved description of this resource or its purpose."
}
},
"description": "Operation data; optional fields may be absent."
},
"error": {
"type": "string",
"description": "Why the operation failed."
},
"details": {
"type": "object",
"description": "Diagnostics keyed by errorCode."
},
"message": {
"type": "string",
"description": "Outcome or recovery instructions. Project selection means no action ran."
},
"success": {
"type": "boolean",
"description": "Operation success; on false inspect error/errorCode."
},
"upgrade": {
"type": "object",
"description": "Plan-upgrade guidance for an unavailable capability."
},
"category": {
"type": "string",
"description": "Failure category, such as invalid_input or plan_required."
},
"expected": {
"type": "boolean",
"description": "Whether this is an anticipated access, input, plan or state failure."
},
"projects": {
"type": "array",
"items": {
"type": "object",
"properties": {
"id": {
"type": "number",
"description": "Project ID for projectId."
},
"name": {
"type": "string",
"description": "Project name."
}
},
"description": "Accessible project."
},
"description": "Accessible project choices. Select a projectId and retry."
},
"errorCode": {
"type": "string",
"description": "Failure code for recovery."
},
"retryable": {
"type": "boolean",
"description": "Whether an unchanged request can be retried."
},
"statusCode": {
"type": "number",
"description": "HTTP-style failure status."
},
"executionTime": {
"type": "string",
"description": "Elapsed time in seconds, with an s suffix."
}
},
"description": "Operation result envelope."
}
Original tool metadata
{
"name": "update_grid_folder",
"title": "Update grid folder",
"description": "Edit a grids folder's name and description. List folders first, then supply both fields; use an empty description to clear it.\n\nChanges the existing folder metadata, not the contained grid content. Read list_grid_folders first and preserve the description unless clearing it is intended.",
"inputSchema": {
"type": "object",
"required": [
"folderId",
"name",
"description"
],
"properties": {
"name": {
"type": "string",
"maxLength": 120,
"minLength": 1,
"description": "Folder name."
},
"context": {
"type": "string",
"maxLength": 120,
"description": "Short purpose of this call for the activity log. Exclude personal data and private source content."
},
"folderId": {
"type": "number",
"minimum": 1,
"multipleOf": 1,
"description": "Folder ID from the folder listing in this collection."
},
"llm_model": {
"type": "string",
"maxLength": 128,
"description": "Use the exact model ID executing this call, from runtime/system context, for usage attribution. Supply it on every Atomic MCP tool call, including discovery and feedback, and update it if the model changes. Use the model ID rather than the client app name. If unavailable, omit it; never guess or ask the user."
},
"projectId": {
"type": "number",
"description": "Atomic project ID from list_projects. Omit to use the configured project; if asked to choose, select one of the accessible returned IDs."
},
"description": {
"type": "string",
"maxLength": 2000,
"description": "Folder description. Use an empty string to clear it."
}
},
"additionalProperties": false
},
"outputSchema": {
"type": "object",
"required": [
"success"
],
"properties": {
"url": {
"type": "string",
"description": "Link for resolving the failure or completing the operation."
},
"data": {
"type": "object",
"required": [
"id",
"projectId",
"collection",
"name",
"description"
],
"properties": {
"id": {
"type": "number",
"description": "Identifier of this returned resource. Use it for subsequent reads or edits of the same resource."
},
"name": {
"type": "string",
"description": "Human-readable name of this resource."
},
"projectId": {
"type": "number",
"description": "Atomic project that owns this resource."
},
"collection": {
"enum": [
"content",
"grids",
"workflows",
"reports"
],
"type": "string",
"description": "Atomic collection that owns these folders or items."
},
"description": {
"type": "string",
"description": "Saved description of this resource or its purpose."
}
},
"description": "Operation data; optional fields may be absent."
},
"error": {
"type": "string",
"description": "Why the operation failed."
},
"details": {
"type": "object",
"description": "Diagnostics keyed by errorCode."
},
"message": {
"type": "string",
"description": "Outcome or recovery instructions. Project selection means no action ran."
},
"success": {
"type": "boolean",
"description": "Operation success; on false inspect error/errorCode."
},
"upgrade": {
"type": "object",
"description": "Plan-upgrade guidance for an unavailable capability."
},
"category": {
"type": "string",
"description": "Failure category, such as invalid_input or plan_required."
},
"expected": {
"type": "boolean",
"description": "Whether this is an anticipated access, input, plan or state failure."
},
"projects": {
"type": "array",
"items": {
"type": "object",
"properties": {
"id": {
"type": "number",
"description": "Project ID for projectId."
},
"name": {
"type": "string",
"description": "Project name."
}
},
"description": "Accessible project."
},
"description": "Accessible project choices. Select a projectId and retry."
},
"errorCode": {
"type": "string",
"description": "Failure code for recovery."
},
"retryable": {
"type": "boolean",
"description": "Whether an unchanged request can be retried."
},
"statusCode": {
"type": "number",
"description": "HTTP-style failure status."
},
"executionTime": {
"type": "string",
"description": "Elapsed time in seconds, with an s suffix."
}
},
"description": "Operation result envelope."
},
"annotations": {
"readOnlyHint": false,
"openWorldHint": false,
"idempotentHint": false,
"destructiveHint": true
}
}
The title clearly communicates the tool’s action and subject. Keep it concise.
Description88/100
Update grid sheet properties, such as renaming a sheet.
Changes the existing sheet's metadata, such as its name, without importing data or executing workflows. Use reorder_grid_sheets for order and create_grid_sheet for another sheet.
The description explains the capability, when to use it, and what to expect.
Inputs85/100
Explain the meaning of this value, not just its name.
sheetId
Sheet ID from get_grid or create_grid_sheet; the selected sheet must belong to the current project.
Clear enough to supply this argument.
name
New sheet name.
Explain the meaning of this value, not just its name.
projectId
Atomic project ID from list_projects. Omit to use the configured project; if asked to choose, select one of the accessible returned IDs.
Clear enough to supply this argument.
context
Short purpose of this call for the activity log. Exclude personal data and private source content.
Remove validation rules already expressed in this field’s schema; describe its meaning and usage instead.
llm_model
Use the exact model ID executing this call, from runtime/system context, for usage attribution. Supply it on every Atomic MCP tool call, including discovery and feedback, and update it if the model changes. Use the model ID rather than the client app name. If unavailable, omit it; never guess or ask the user.
{
"type": "object",
"required": [
"success"
],
"properties": {
"url": {
"type": "string",
"description": "Link for resolving the failure or completing the operation."
},
"data": {
"type": "object",
"required": [
"gridId",
"name",
"position",
"createdAt",
"updatedAt"
],
"properties": {
"id": {
"type": "number",
"description": "Identifier of this returned resource. Use it for subsequent reads or edits of the same resource."
},
"name": {
"type": "string",
"description": "Human-readable name of this resource."
},
"gridId": {
"type": "number",
"description": "Grid that owns these sheets or results."
},
"position": {
"type": "number",
"description": "Saved ordering position or visual editor coordinates for this item."
},
"createdAt": {
"type": "string",
"format": "date-time",
"description": "Date and time this record was created, serialized as ISO 8601."
},
"updatedAt": {
"type": "string",
"format": "date-time",
"description": "Date and time this record was last updated, serialized as ISO 8601."
}
},
"description": "Operation data; optional fields may be absent."
},
"error": {
"type": "string",
"description": "Why the operation failed."
},
"details": {
"type": "object",
"description": "Diagnostics keyed by errorCode."
},
"message": {
"type": "string",
"description": "Outcome or recovery instructions. Project selection means no action ran."
},
"success": {
"type": "boolean",
"description": "Operation success; on false inspect error/errorCode."
},
"upgrade": {
"type": "object",
"description": "Plan-upgrade guidance for an unavailable capability."
},
"category": {
"type": "string",
"description": "Failure category, such as invalid_input or plan_required."
},
"expected": {
"type": "boolean",
"description": "Whether this is an anticipated access, input, plan or state failure."
},
"projects": {
"type": "array",
"items": {
"type": "object",
"properties": {
"id": {
"type": "number",
"description": "Project ID for projectId."
},
"name": {
"type": "string",
"description": "Project name."
}
},
"description": "Accessible project."
},
"description": "Accessible project choices. Select a projectId and retry."
},
"errorCode": {
"type": "string",
"description": "Failure code for recovery."
},
"retryable": {
"type": "boolean",
"description": "Whether an unchanged request can be retried."
},
"statusCode": {
"type": "number",
"description": "HTTP-style failure status."
},
"executionTime": {
"type": "string",
"description": "Elapsed time in seconds, with an s suffix."
}
},
"description": "Operation result envelope."
}
Original tool metadata
{
"name": "update_grid_sheet",
"title": "Update grid sheet",
"description": "Update grid sheet properties, such as renaming a sheet.\n\nChanges the existing sheet's metadata, such as its name, without importing data or executing workflows. Use reorder_grid_sheets for order and create_grid_sheet for another sheet.",
"inputSchema": {
"type": "object",
"required": [
"sheetId"
],
"properties": {
"name": {
"type": "string",
"description": "New sheet name."
},
"context": {
"type": "string",
"maxLength": 120,
"description": "Short purpose of this call for the activity log. Exclude personal data and private source content."
},
"sheetId": {
"type": "number",
"description": "Sheet ID from get_grid or create_grid_sheet; the selected sheet must belong to the current project."
},
"llm_model": {
"type": "string",
"maxLength": 128,
"description": "Use the exact model ID executing this call, from runtime/system context, for usage attribution. Supply it on every Atomic MCP tool call, including discovery and feedback, and update it if the model changes. Use the model ID rather than the client app name. If unavailable, omit it; never guess or ask the user."
},
"projectId": {
"type": "number",
"description": "Atomic project ID from list_projects. Omit to use the configured project; if asked to choose, select one of the accessible returned IDs."
}
}
},
"outputSchema": {
"type": "object",
"required": [
"success"
],
"properties": {
"url": {
"type": "string",
"description": "Link for resolving the failure or completing the operation."
},
"data": {
"type": "object",
"required": [
"gridId",
"name",
"position",
"createdAt",
"updatedAt"
],
"properties": {
"id": {
"type": "number",
"description": "Identifier of this returned resource. Use it for subsequent reads or edits of the same resource."
},
"name": {
"type": "string",
"description": "Human-readable name of this resource."
},
"gridId": {
"type": "number",
"description": "Grid that owns these sheets or results."
},
"position": {
"type": "number",
"description": "Saved ordering position or visual editor coordinates for this item."
},
"createdAt": {
"type": "string",
"format": "date-time",
"description": "Date and time this record was created, serialized as ISO 8601."
},
"updatedAt": {
"type": "string",
"format": "date-time",
"description": "Date and time this record was last updated, serialized as ISO 8601."
}
},
"description": "Operation data; optional fields may be absent."
},
"error": {
"type": "string",
"description": "Why the operation failed."
},
"details": {
"type": "object",
"description": "Diagnostics keyed by errorCode."
},
"message": {
"type": "string",
"description": "Outcome or recovery instructions. Project selection means no action ran."
},
"success": {
"type": "boolean",
"description": "Operation success; on false inspect error/errorCode."
},
"upgrade": {
"type": "object",
"description": "Plan-upgrade guidance for an unavailable capability."
},
"category": {
"type": "string",
"description": "Failure category, such as invalid_input or plan_required."
},
"expected": {
"type": "boolean",
"description": "Whether this is an anticipated access, input, plan or state failure."
},
"projects": {
"type": "array",
"items": {
"type": "object",
"properties": {
"id": {
"type": "number",
"description": "Project ID for projectId."
},
"name": {
"type": "string",
"description": "Project name."
}
},
"description": "Accessible project."
},
"description": "Accessible project choices. Select a projectId and retry."
},
"errorCode": {
"type": "string",
"description": "Failure code for recovery."
},
"retryable": {
"type": "boolean",
"description": "Whether an unchanged request can be retried."
},
"statusCode": {
"type": "number",
"description": "HTTP-style failure status."
},
"executionTime": {
"type": "string",
"description": "Elapsed time in seconds, with an s suffix."
}
},
"description": "Operation result envelope."
},
"annotations": {
"readOnlyHint": false,
"openWorldHint": false,
"idempotentHint": false,
"destructiveHint": true
}
}
The title clearly communicates the tool’s action and subject. Keep it concise.
Description88/100
Rename a knowledge base or update its purpose description. Description changes make affected files stale and schedule their canonical re-indexing.
The description explains the capability, when to use it, and what to expect.
Inputs83/100
Remove validation rules already expressed in this field’s schema; describe its meaning and usage instead.
knowledgeBaseId
Destination or search-scope knowledge-base ID from list_knowledge_bases; the base must be accessible in this project.
Remove validation rules already expressed in this field’s schema; describe its meaning and usage instead.
name
New name.
Explain the meaning of this value, not just its name.
description
New purpose and scope description.
Remove validation rules already expressed in this field’s schema; describe its meaning and usage instead.
projectId
Atomic project ID from list_projects. Omit to use the configured project; if asked to choose, select one of the accessible returned IDs.
Clear enough to supply this argument.
context
Short purpose of this call for the activity log. Exclude personal data and private source content.
Clear enough to supply this argument.
llm_model
Use the exact model ID executing this call, from runtime/system context, for usage attribution. Supply it on every Atomic MCP tool call, including discovery and feedback, and update it if the model changes. Use the model ID rather than the client app name. If unavailable, omit it; never guess or ask the user.
{
"type": "object",
"required": [
"success"
],
"properties": {
"url": {
"type": "string",
"description": "Link for resolving the failure or completing the operation."
},
"data": {
"type": "object",
"required": [
"id",
"projectId",
"name",
"description",
"rootPath",
"createdAt",
"updatedAt"
],
"properties": {
"id": {
"type": "number",
"description": "Identifier of this returned resource. Use it for subsequent reads or edits of the same resource."
},
"name": {
"type": "string",
"description": "Human-readable name of this resource."
},
"rootPath": {
"type": "string"
},
"createdAt": {
"type": "string",
"format": "date-time",
"description": "Date and time this record was created, serialized as ISO 8601."
},
"projectId": {
"type": "number",
"description": "Atomic project that owns this resource."
},
"updatedAt": {
"type": "string",
"format": "date-time",
"description": "Date and time this record was last updated, serialized as ISO 8601."
},
"description": {
"type": "string",
"description": "Saved description of this resource or its purpose."
}
},
"description": "Operation data; optional fields may be absent."
},
"error": {
"type": "string",
"description": "Why the operation failed."
},
"details": {
"type": "object",
"description": "Diagnostics keyed by errorCode."
},
"message": {
"type": "string",
"description": "Outcome or recovery instructions. Project selection means no action ran."
},
"success": {
"type": "boolean",
"description": "Operation success; on false inspect error/errorCode."
},
"upgrade": {
"type": "object",
"description": "Plan-upgrade guidance for an unavailable capability."
},
"category": {
"type": "string",
"description": "Failure category, such as invalid_input or plan_required."
},
"expected": {
"type": "boolean",
"description": "Whether this is an anticipated access, input, plan or state failure."
},
"projects": {
"type": "array",
"items": {
"type": "object",
"properties": {
"id": {
"type": "number",
"description": "Project ID for projectId."
},
"name": {
"type": "string",
"description": "Project name."
}
},
"description": "Accessible project."
},
"description": "Accessible project choices. Select a projectId and retry."
},
"errorCode": {
"type": "string",
"description": "Failure code for recovery."
},
"retryable": {
"type": "boolean",
"description": "Whether an unchanged request can be retried."
},
"statusCode": {
"type": "number",
"description": "HTTP-style failure status."
},
"executionTime": {
"type": "string",
"description": "Elapsed time in seconds, with an s suffix."
}
},
"description": "Operation result envelope."
}
Original tool metadata
{
"name": "update_knowledge_base",
"title": "Update knowledge base",
"description": "Rename a knowledge base or update its purpose description. Description changes make affected files stale and schedule their canonical re-indexing.",
"inputSchema": {
"type": "object",
"required": [
"knowledgeBaseId"
],
"properties": {
"name": {
"type": "string",
"maxLength": 255,
"minLength": 1,
"description": "New name."
},
"context": {
"type": "string",
"maxLength": 120,
"description": "Short purpose of this call for the activity log. Exclude personal data and private source content."
},
"llm_model": {
"type": "string",
"maxLength": 128,
"description": "Use the exact model ID executing this call, from runtime/system context, for usage attribution. Supply it on every Atomic MCP tool call, including discovery and feedback, and update it if the model changes. Use the model ID rather than the client app name. If unavailable, omit it; never guess or ask the user."
},
"projectId": {
"type": "number",
"description": "Atomic project ID from list_projects. Omit to use the configured project; if asked to choose, select one of the accessible returned IDs."
},
"description": {
"type": "string",
"maxLength": 1000,
"minLength": 10,
"description": "New purpose and scope description."
},
"knowledgeBaseId": {
"type": "number",
"minimum": 1,
"multipleOf": 1,
"description": "Destination or search-scope knowledge-base ID from list_knowledge_bases; the base must be accessible in this project."
}
},
"additionalProperties": false
},
"outputSchema": {
"type": "object",
"required": [
"success"
],
"properties": {
"url": {
"type": "string",
"description": "Link for resolving the failure or completing the operation."
},
"data": {
"type": "object",
"required": [
"id",
"projectId",
"name",
"description",
"rootPath",
"createdAt",
"updatedAt"
],
"properties": {
"id": {
"type": "number",
"description": "Identifier of this returned resource. Use it for subsequent reads or edits of the same resource."
},
"name": {
"type": "string",
"description": "Human-readable name of this resource."
},
"rootPath": {
"type": "string"
},
"createdAt": {
"type": "string",
"format": "date-time",
"description": "Date and time this record was created, serialized as ISO 8601."
},
"projectId": {
"type": "number",
"description": "Atomic project that owns this resource."
},
"updatedAt": {
"type": "string",
"format": "date-time",
"description": "Date and time this record was last updated, serialized as ISO 8601."
},
"description": {
"type": "string",
"description": "Saved description of this resource or its purpose."
}
},
"description": "Operation data; optional fields may be absent."
},
"error": {
"type": "string",
"description": "Why the operation failed."
},
"details": {
"type": "object",
"description": "Diagnostics keyed by errorCode."
},
"message": {
"type": "string",
"description": "Outcome or recovery instructions. Project selection means no action ran."
},
"success": {
"type": "boolean",
"description": "Operation success; on false inspect error/errorCode."
},
"upgrade": {
"type": "object",
"description": "Plan-upgrade guidance for an unavailable capability."
},
"category": {
"type": "string",
"description": "Failure category, such as invalid_input or plan_required."
},
"expected": {
"type": "boolean",
"description": "Whether this is an anticipated access, input, plan or state failure."
},
"projects": {
"type": "array",
"items": {
"type": "object",
"properties": {
"id": {
"type": "number",
"description": "Project ID for projectId."
},
"name": {
"type": "string",
"description": "Project name."
}
},
"description": "Accessible project."
},
"description": "Accessible project choices. Select a projectId and retry."
},
"errorCode": {
"type": "string",
"description": "Failure code for recovery."
},
"retryable": {
"type": "boolean",
"description": "Whether an unchanged request can be retried."
},
"statusCode": {
"type": "number",
"description": "HTTP-style failure status."
},
"executionTime": {
"type": "string",
"description": "Elapsed time in seconds, with an s suffix."
}
},
"description": "Operation result envelope."
},
"annotations": {
"readOnlyHint": false,
"openWorldHint": false,
"idempotentHint": false,
"destructiveHint": true
}
}
The title clearly communicates the tool’s action and subject. Keep it concise.
Description87/100
Update canonical file metadata/markdown or move it to another folder. Changed content or context becomes Pending or Stale and schedules the canonical indexing lifecycle.
The description explains the capability, when to use it, and what to expect.
Inputs80/100
Explain the meaning of this value, not just its name.
fileId
Explicit knowledge file ID to update.
Clear enough to supply this argument.
folderId
New folder ID, or null for the knowledge-base root.
Clear enough to supply this argument.
type
New file type.
Explain the meaning of this value, not just its name.
title
New title.
Explain the meaning of this value, not just its name.
description
New description or null to clear it.
Remove validation rules already expressed in this field’s schema; describe its meaning and usage instead.
resource
New source reference or null to clear it.
Explain the meaning of this value, not just its name.
tags
Replacement user-authored tags.
Explain the meaning of this value, not just its name.
markdown
Replacement canonical markdown body.
Clear enough to supply this argument.
projectId
Atomic project ID from list_projects. Omit to use the configured project; if asked to choose, select one of the accessible returned IDs.
Clear enough to supply this argument.
context
Short purpose of this call for the activity log. Exclude personal data and private source content.
Clear enough to supply this argument.
llm_model
Use the exact model ID executing this call, from runtime/system context, for usage attribution. Supply it on every Atomic MCP tool call, including discovery and feedback, and update it if the model changes. Use the model ID rather than the client app name. If unavailable, omit it; never guess or ask the user.
The title clearly communicates the tool’s action and subject. Keep it concise.
Description86/100
Rename, describe, or move one folder. Set parentFolderId to null to move it to the knowledge-base root. Descendant paths and indexing context are updated canonically.
The description explains the capability, when to use it, and what to expect.
Inputs82/100
Remove validation rules already expressed in this field’s schema; describe its meaning and usage instead.
folderId
Explicit folder ID to update.
Remove validation rules already expressed in this field’s schema; describe its meaning and usage instead.
name
New folder name.
Remove validation rules already expressed in this field’s schema; describe its meaning and usage instead.
description
New description or null to clear it.
Remove validation rules already expressed in this field’s schema; describe its meaning and usage instead.
parentFolderId
New parent folder ID, or null for the knowledge-base root.
Clear enough to supply this argument.
projectId
Atomic project ID from list_projects. Omit to use the configured project; if asked to choose, select one of the accessible returned IDs.
Clear enough to supply this argument.
context
Short purpose of this call for the activity log. Exclude personal data and private source content.
Remove validation rules already expressed in this field’s schema; describe its meaning and usage instead.
llm_model
Use the exact model ID executing this call, from runtime/system context, for usage attribution. Supply it on every Atomic MCP tool call, including discovery and feedback, and update it if the model changes. Use the model ID rather than the client app name. If unavailable, omit it; never guess or ask the user.
Remove validation rules already expressed in this field’s schema; describe its meaning and usage instead.
{
"type": "object",
"required": [
"success"
],
"properties": {
"url": {
"type": "string",
"description": "Link for resolving the failure or completing the operation."
},
"data": {
"type": "object",
"required": [
"id",
"knowledgeBaseId",
"name",
"path",
"createdAt",
"updatedAt"
],
"properties": {
"id": {
"type": "number",
"description": "Identifier of this returned resource. Use it for subsequent reads or edits of the same resource."
},
"name": {
"type": "string",
"description": "Human-readable name of this resource."
},
"path": {
"type": "string"
},
"createdAt": {
"type": "string",
"format": "date-time",
"description": "Date and time this record was created, serialized as ISO 8601."
},
"updatedAt": {
"type": "string",
"format": "date-time",
"description": "Date and time this record was last updated, serialized as ISO 8601."
},
"description": {
"anyOf": [
{
"type": "null"
},
{
"type": "string"
}
],
"description": "Saved description of this resource or its purpose."
},
"parentFolderId": {
"anyOf": [
{
"type": "null"
},
{
"type": "number"
}
]
},
"knowledgeBaseId": {
"type": "number"
}
},
"description": "Operation data; optional fields may be absent."
},
"error": {
"type": "string",
"description": "Why the operation failed."
},
"details": {
"type": "object",
"description": "Diagnostics keyed by errorCode."
},
"message": {
"type": "string",
"description": "Outcome or recovery instructions. Project selection means no action ran."
},
"success": {
"type": "boolean",
"description": "Operation success; on false inspect error/errorCode."
},
"upgrade": {
"type": "object",
"description": "Plan-upgrade guidance for an unavailable capability."
},
"category": {
"type": "string",
"description": "Failure category, such as invalid_input or plan_required."
},
"expected": {
"type": "boolean",
"description": "Whether this is an anticipated access, input, plan or state failure."
},
"projects": {
"type": "array",
"items": {
"type": "object",
"properties": {
"id": {
"type": "number",
"description": "Project ID for projectId."
},
"name": {
"type": "string",
"description": "Project name."
}
},
"description": "Accessible project."
},
"description": "Accessible project choices. Select a projectId and retry."
},
"errorCode": {
"type": "string",
"description": "Failure code for recovery."
},
"retryable": {
"type": "boolean",
"description": "Whether an unchanged request can be retried."
},
"statusCode": {
"type": "number",
"description": "HTTP-style failure status."
},
"executionTime": {
"type": "string",
"description": "Elapsed time in seconds, with an s suffix."
}
},
"description": "Operation result envelope."
}
Original tool metadata
{
"name": "update_knowledge_folder",
"title": "Update knowledge folder",
"description": "Rename, describe, or move one folder. Set parentFolderId to null to move it to the knowledge-base root. Descendant paths and indexing context are updated canonically.",
"inputSchema": {
"type": "object",
"required": [
"folderId"
],
"properties": {
"name": {
"type": "string",
"maxLength": 255,
"minLength": 1,
"description": "New folder name."
},
"context": {
"type": "string",
"maxLength": 120,
"description": "Short purpose of this call for the activity log. Exclude personal data and private source content."
},
"folderId": {
"type": "number",
"minimum": 1,
"multipleOf": 1,
"description": "Explicit folder ID to update."
},
"llm_model": {
"type": "string",
"maxLength": 128,
"description": "Use the exact model ID executing this call, from runtime/system context, for usage attribution. Supply it on every Atomic MCP tool call, including discovery and feedback, and update it if the model changes. Use the model ID rather than the client app name. If unavailable, omit it; never guess or ask the user."
},
"projectId": {
"type": "number",
"description": "Atomic project ID from list_projects. Omit to use the configured project; if asked to choose, select one of the accessible returned IDs."
},
"description": {
"oneOf": [
{
"type": "string",
"maxLength": 1000,
"minLength": 1
},
{
"type": "null"
}
],
"description": "New description or null to clear it."
},
"parentFolderId": {
"oneOf": [
{
"type": "number",
"minimum": 1,
"multipleOf": 1
},
{
"type": "null"
}
],
"description": "New parent folder ID, or null for the knowledge-base root."
}
},
"additionalProperties": false
},
"outputSchema": {
"type": "object",
"required": [
"success"
],
"properties": {
"url": {
"type": "string",
"description": "Link for resolving the failure or completing the operation."
},
"data": {
"type": "object",
"required": [
"id",
"knowledgeBaseId",
"name",
"path",
"createdAt",
"updatedAt"
],
"properties": {
"id": {
"type": "number",
"description": "Identifier of this returned resource. Use it for subsequent reads or edits of the same resource."
},
"name": {
"type": "string",
"description": "Human-readable name of this resource."
},
"path": {
"type": "string"
},
"createdAt": {
"type": "string",
"format": "date-time",
"description": "Date and time this record was created, serialized as ISO 8601."
},
"updatedAt": {
"type": "string",
"format": "date-time",
"description": "Date and time this record was last updated, serialized as ISO 8601."
},
"description": {
"anyOf": [
{
"type": "null"
},
{
"type": "string"
}
],
"description": "Saved description of this resource or its purpose."
},
"parentFolderId": {
"anyOf": [
{
"type": "null"
},
{
"type": "number"
}
]
},
"knowledgeBaseId": {
"type": "number"
}
},
"description": "Operation data; optional fields may be absent."
},
"error": {
"type": "string",
"description": "Why the operation failed."
},
"details": {
"type": "object",
"description": "Diagnostics keyed by errorCode."
},
"message": {
"type": "string",
"description": "Outcome or recovery instructions. Project selection means no action ran."
},
"success": {
"type": "boolean",
"description": "Operation success; on false inspect error/errorCode."
},
"upgrade": {
"type": "object",
"description": "Plan-upgrade guidance for an unavailable capability."
},
"category": {
"type": "string",
"description": "Failure category, such as invalid_input or plan_required."
},
"expected": {
"type": "boolean",
"description": "Whether this is an anticipated access, input, plan or state failure."
},
"projects": {
"type": "array",
"items": {
"type": "object",
"properties": {
"id": {
"type": "number",
"description": "Project ID for projectId."
},
"name": {
"type": "string",
"description": "Project name."
}
},
"description": "Accessible project."
},
"description": "Accessible project choices. Select a projectId and retry."
},
"errorCode": {
"type": "string",
"description": "Failure code for recovery."
},
"retryable": {
"type": "boolean",
"description": "Whether an unchanged request can be retried."
},
"statusCode": {
"type": "number",
"description": "HTTP-style failure status."
},
"executionTime": {
"type": "string",
"description": "Elapsed time in seconds, with an s suffix."
}
},
"description": "Operation result envelope."
},
"annotations": {
"readOnlyHint": false,
"openWorldHint": false,
"idempotentHint": false,
"destructiveHint": true
}
}
The title clearly communicates the tool’s action and subject. Keep it concise.
Description83/100
Update project name, domain, industry, SERP location or brand mention variants. Omitted fields are preserved. Requires full project general-settings permission. Use get_serp_locations for valid location IDs. Does not alter source connections or existing brand kits.
The description explains the capability, when to use it, and what to expect.
Inputs81/100
Remove validation rules already expressed in this field’s schema; describe its meaning and usage instead.
name
Human-readable name of the item being created or edited.
Remove validation rules already expressed in this field’s schema; describe its meaning and usage instead.
domain
Website domain for the project or research target, without an unrelated path.
Remove validation rules already expressed in this field’s schema; describe its meaning and usage instead.
industry
Industry used to classify or contextualize the project.
Explain the meaning of this value, not just its name.
serpLocationId
Search location identifier from get_serp_locations.
Clear enough to supply this argument.
brandMentionVariations
Canonical brand name and spelling, spacing, acronym, domain, or product aliases used to recognize branded mentions.
Clear enough to supply this argument.
projectId
Atomic project ID from list_projects. Omit to use the configured project; if asked to choose, select one of the accessible returned IDs.
Clear enough to supply this argument.
context
Short purpose of this call for the activity log. Exclude personal data and private source content.
Remove validation rules already expressed in this field’s schema; describe its meaning and usage instead.
llm_model
Use the exact model ID executing this call, from runtime/system context, for usage attribution. Supply it on every Atomic MCP tool call, including discovery and feedback, and update it if the model changes. Use the model ID rather than the client app name. If unavailable, omit it; never guess or ask the user.
Remove validation rules already expressed in this field’s schema; describe its meaning and usage instead.
{
"type": "object",
"required": [
"success"
],
"properties": {
"url": {
"type": "string",
"description": "Link for resolving the failure or completing the operation."
},
"data": {
"type": "object",
"required": [
"projectId",
"updatedFields"
],
"properties": {
"projectId": {
"type": "number",
"description": "Atomic project that owns this resource."
},
"updatedFields": {
"type": "array",
"items": {
"type": "string"
},
"description": "Fields confirmed as changed by this write."
}
},
"description": "Operation data; optional fields may be absent."
},
"error": {
"type": "string",
"description": "Why the operation failed."
},
"details": {
"type": "object",
"description": "Diagnostics keyed by errorCode."
},
"message": {
"type": "string",
"description": "Outcome or recovery instructions. Project selection means no action ran."
},
"success": {
"type": "boolean",
"description": "Operation success; on false inspect error/errorCode."
},
"upgrade": {
"type": "object",
"description": "Plan-upgrade guidance for an unavailable capability."
},
"category": {
"type": "string",
"description": "Failure category, such as invalid_input or plan_required."
},
"expected": {
"type": "boolean",
"description": "Whether this is an anticipated access, input, plan or state failure."
},
"projects": {
"type": "array",
"items": {
"type": "object",
"properties": {
"id": {
"type": "number",
"description": "Project ID for projectId."
},
"name": {
"type": "string",
"description": "Project name."
}
},
"description": "Accessible project."
},
"description": "Accessible project choices. Select a projectId and retry."
},
"errorCode": {
"type": "string",
"description": "Failure code for recovery."
},
"retryable": {
"type": "boolean",
"description": "Whether an unchanged request can be retried."
},
"statusCode": {
"type": "number",
"description": "HTTP-style failure status."
},
"executionTime": {
"type": "string",
"description": "Elapsed time in seconds, with an s suffix."
}
},
"description": "Operation result envelope."
}
Original tool metadata
{
"name": "update_project",
"title": "Update project",
"description": "Update project name, domain, industry, SERP location or brand mention variants. Omitted fields are preserved. Requires full project general-settings permission. Use get_serp_locations for valid location IDs. Does not alter source connections or existing brand kits.",
"inputSchema": {
"type": "object",
"required": [],
"properties": {
"name": {
"type": "string",
"minLength": 1,
"description": "Human-readable name of the item being created or edited."
},
"domain": {
"type": "string",
"minLength": 1,
"description": "Website domain for the project or research target, without an unrelated path."
},
"context": {
"type": "string",
"maxLength": 120,
"description": "Short purpose of this call for the activity log. Exclude personal data and private source content."
},
"industry": {
"type": "string",
"description": "Industry used to classify or contextualize the project."
},
"llm_model": {
"type": "string",
"maxLength": 128,
"description": "Use the exact model ID executing this call, from runtime/system context, for usage attribution. Supply it on every Atomic MCP tool call, including discovery and feedback, and update it if the model changes. Use the model ID rather than the client app name. If unavailable, omit it; never guess or ask the user."
},
"projectId": {
"type": "number",
"description": "Atomic project ID from list_projects. Omit to use the configured project; if asked to choose, select one of the accessible returned IDs."
},
"serpLocationId": {
"type": "number",
"minimum": 1,
"multipleOf": 1,
"description": "Search location identifier from get_serp_locations."
},
"brandMentionVariations": {
"type": "array",
"items": {
"type": "string",
"minLength": 1
},
"description": "Canonical brand name and spelling, spacing, acronym, domain, or product aliases used to recognize branded mentions."
}
},
"additionalProperties": false
},
"outputSchema": {
"type": "object",
"required": [
"success"
],
"properties": {
"url": {
"type": "string",
"description": "Link for resolving the failure or completing the operation."
},
"data": {
"type": "object",
"required": [
"projectId",
"updatedFields"
],
"properties": {
"projectId": {
"type": "number",
"description": "Atomic project that owns this resource."
},
"updatedFields": {
"type": "array",
"items": {
"type": "string"
},
"description": "Fields confirmed as changed by this write."
}
},
"description": "Operation data; optional fields may be absent."
},
"error": {
"type": "string",
"description": "Why the operation failed."
},
"details": {
"type": "object",
"description": "Diagnostics keyed by errorCode."
},
"message": {
"type": "string",
"description": "Outcome or recovery instructions. Project selection means no action ran."
},
"success": {
"type": "boolean",
"description": "Operation success; on false inspect error/errorCode."
},
"upgrade": {
"type": "object",
"description": "Plan-upgrade guidance for an unavailable capability."
},
"category": {
"type": "string",
"description": "Failure category, such as invalid_input or plan_required."
},
"expected": {
"type": "boolean",
"description": "Whether this is an anticipated access, input, plan or state failure."
},
"projects": {
"type": "array",
"items": {
"type": "object",
"properties": {
"id": {
"type": "number",
"description": "Project ID for projectId."
},
"name": {
"type": "string",
"description": "Project name."
}
},
"description": "Accessible project."
},
"description": "Accessible project choices. Select a projectId and retry."
},
"errorCode": {
"type": "string",
"description": "Failure code for recovery."
},
"retryable": {
"type": "boolean",
"description": "Whether an unchanged request can be retried."
},
"statusCode": {
"type": "number",
"description": "HTTP-style failure status."
},
"executionTime": {
"type": "string",
"description": "Elapsed time in seconds, with an s suffix."
}
},
"description": "Operation result envelope."
},
"annotations": {
"readOnlyHint": false,
"openWorldHint": false,
"idempotentHint": false,
"destructiveHint": true
}
}
The title clearly communicates the tool’s action and subject. Keep it concise.
Description93/100
Update one tracked AI-search prompt in the current project. Use get_project_prompts to find its promptId. Change text, funnel stage, topic assignments or active status; omitted fields are preserved. Requires full AI Search permission. Does not schedule an immediate tracking run.
The description explains the capability, when to use it, and what to expect.
Inputs94/100
Remove validation rules already expressed in this field’s schema; describe its meaning and usage instead.
promptId
Saved tracked prompt ID from get_project_prompts, not a one-off test run ID.
Clear enough to supply this argument.
prompt
New prompt text.
Remove validation rules already expressed in this field’s schema; describe its meaning and usage instead.
promptCategory
Project prompt category used to label or filter AI-search runs.
Clear enough to supply this argument.
promptTopicIds
Project topic IDs. An empty array clears all assigned topics.
Clear enough to supply this argument.
isActive
Enable or pause prompt tracking.
Clear enough to supply this argument.
projectId
Atomic project ID from list_projects. Omit to use the configured project; if asked to choose, select one of the accessible returned IDs.
Clear enough to supply this argument.
context
Short purpose of this call for the activity log. Exclude personal data and private source content.
Remove validation rules already expressed in this field’s schema; describe its meaning and usage instead.
llm_model
Use the exact model ID executing this call, from runtime/system context, for usage attribution. Supply it on every Atomic MCP tool call, including discovery and feedback, and update it if the model changes. Use the model ID rather than the client app name. If unavailable, omit it; never guess or ask the user.
The title clearly communicates the tool’s action and subject. Keep it concise.
Description81/100
Update one AI-search prompt topic in the current project. Requires full AI Search permission. Omitted fields are preserved; an empty description clears it.
The description explains the capability, when to use it, and what to expect.
Inputs83/100
Remove validation rules already expressed in this field’s schema; describe its meaning and usage instead.
topicId
Existing prompt-topic ID from get_project_prompt_topics; this groups tracked questions.
Remove validation rules already expressed in this field’s schema; describe its meaning and usage instead.
name
Human-readable name of the item being created or edited.
Remove validation rules already expressed in this field’s schema; describe its meaning and usage instead.
description
Human-readable purpose or description of this item. On edits, preserve existing text unless replacing it intentionally.
Clear enough to supply this argument.
projectId
Atomic project ID from list_projects. Omit to use the configured project; if asked to choose, select one of the accessible returned IDs.
Clear enough to supply this argument.
context
Short purpose of this call for the activity log. Exclude personal data and private source content.
Remove validation rules already expressed in this field’s schema; describe its meaning and usage instead.
llm_model
Use the exact model ID executing this call, from runtime/system context, for usage attribution. Supply it on every Atomic MCP tool call, including discovery and feedback, and update it if the model changes. Use the model ID rather than the client app name. If unavailable, omit it; never guess or ask the user.
Remove validation rules already expressed in this field’s schema; describe its meaning and usage instead.
{
"type": "object",
"required": [
"success"
],
"properties": {
"url": {
"type": "string",
"description": "Link for resolving the failure or completing the operation."
},
"data": {
"type": "object",
"required": [
"topic"
],
"properties": {
"topic": {
"type": "object",
"required": [
"id",
"projectId",
"name",
"createdAt",
"updatedAt"
],
"properties": {
"id": {
"type": "number",
"description": "Identifier of this returned resource. Use it for subsequent reads or edits of the same resource."
},
"name": {
"type": "string",
"description": "Human-readable name of this resource."
},
"createdAt": {
"type": "string",
"format": "date-time",
"description": "Date and time this record was created, serialized as ISO 8601."
},
"projectId": {
"type": "number",
"description": "Atomic project that owns this resource."
},
"updatedAt": {
"type": "string",
"format": "date-time",
"description": "Date and time this record was last updated, serialized as ISO 8601."
},
"description": {
"anyOf": [
{
"type": "null"
},
{
"type": "string"
}
],
"description": "Saved description of this resource or its purpose."
},
"promptCount": {
"type": "number"
}
}
}
},
"description": "Operation data; optional fields may be absent."
},
"error": {
"type": "string",
"description": "Why the operation failed."
},
"details": {
"type": "object",
"description": "Diagnostics keyed by errorCode."
},
"message": {
"type": "string",
"description": "Outcome or recovery instructions. Project selection means no action ran."
},
"success": {
"type": "boolean",
"description": "Operation success; on false inspect error/errorCode."
},
"upgrade": {
"type": "object",
"description": "Plan-upgrade guidance for an unavailable capability."
},
"category": {
"type": "string",
"description": "Failure category, such as invalid_input or plan_required."
},
"expected": {
"type": "boolean",
"description": "Whether this is an anticipated access, input, plan or state failure."
},
"projects": {
"type": "array",
"items": {
"type": "object",
"properties": {
"id": {
"type": "number",
"description": "Project ID for projectId."
},
"name": {
"type": "string",
"description": "Project name."
}
},
"description": "Accessible project."
},
"description": "Accessible project choices. Select a projectId and retry."
},
"errorCode": {
"type": "string",
"description": "Failure code for recovery."
},
"retryable": {
"type": "boolean",
"description": "Whether an unchanged request can be retried."
},
"statusCode": {
"type": "number",
"description": "HTTP-style failure status."
},
"executionTime": {
"type": "string",
"description": "Elapsed time in seconds, with an s suffix."
}
},
"description": "Operation result envelope."
}
Original tool metadata
{
"name": "update_project_prompt_topic",
"title": "Update project prompt topic",
"description": "Update one AI-search prompt topic in the current project. Requires full AI Search permission. Omitted fields are preserved; an empty description clears it.",
"inputSchema": {
"type": "object",
"required": [
"topicId"
],
"properties": {
"name": {
"type": "string",
"minLength": 1,
"description": "Human-readable name of the item being created or edited."
},
"context": {
"type": "string",
"maxLength": 120,
"description": "Short purpose of this call for the activity log. Exclude personal data and private source content."
},
"topicId": {
"type": "number",
"minimum": 1,
"multipleOf": 1,
"description": "Existing prompt-topic ID from get_project_prompt_topics; this groups tracked questions."
},
"llm_model": {
"type": "string",
"maxLength": 128,
"description": "Use the exact model ID executing this call, from runtime/system context, for usage attribution. Supply it on every Atomic MCP tool call, including discovery and feedback, and update it if the model changes. Use the model ID rather than the client app name. If unavailable, omit it; never guess or ask the user."
},
"projectId": {
"type": "number",
"description": "Atomic project ID from list_projects. Omit to use the configured project; if asked to choose, select one of the accessible returned IDs."
},
"description": {
"type": "string",
"description": "Human-readable purpose or description of this item. On edits, preserve existing text unless replacing it intentionally."
}
},
"additionalProperties": false
},
"outputSchema": {
"type": "object",
"required": [
"success"
],
"properties": {
"url": {
"type": "string",
"description": "Link for resolving the failure or completing the operation."
},
"data": {
"type": "object",
"required": [
"topic"
],
"properties": {
"topic": {
"type": "object",
"required": [
"id",
"projectId",
"name",
"createdAt",
"updatedAt"
],
"properties": {
"id": {
"type": "number",
"description": "Identifier of this returned resource. Use it for subsequent reads or edits of the same resource."
},
"name": {
"type": "string",
"description": "Human-readable name of this resource."
},
"createdAt": {
"type": "string",
"format": "date-time",
"description": "Date and time this record was created, serialized as ISO 8601."
},
"projectId": {
"type": "number",
"description": "Atomic project that owns this resource."
},
"updatedAt": {
"type": "string",
"format": "date-time",
"description": "Date and time this record was last updated, serialized as ISO 8601."
},
"description": {
"anyOf": [
{
"type": "null"
},
{
"type": "string"
}
],
"description": "Saved description of this resource or its purpose."
},
"promptCount": {
"type": "number"
}
}
}
},
"description": "Operation data; optional fields may be absent."
},
"error": {
"type": "string",
"description": "Why the operation failed."
},
"details": {
"type": "object",
"description": "Diagnostics keyed by errorCode."
},
"message": {
"type": "string",
"description": "Outcome or recovery instructions. Project selection means no action ran."
},
"success": {
"type": "boolean",
"description": "Operation success; on false inspect error/errorCode."
},
"upgrade": {
"type": "object",
"description": "Plan-upgrade guidance for an unavailable capability."
},
"category": {
"type": "string",
"description": "Failure category, such as invalid_input or plan_required."
},
"expected": {
"type": "boolean",
"description": "Whether this is an anticipated access, input, plan or state failure."
},
"projects": {
"type": "array",
"items": {
"type": "object",
"properties": {
"id": {
"type": "number",
"description": "Project ID for projectId."
},
"name": {
"type": "string",
"description": "Project name."
}
},
"description": "Accessible project."
},
"description": "Accessible project choices. Select a projectId and retry."
},
"errorCode": {
"type": "string",
"description": "Failure code for recovery."
},
"retryable": {
"type": "boolean",
"description": "Whether an unchanged request can be retried."
},
"statusCode": {
"type": "number",
"description": "HTTP-style failure status."
},
"executionTime": {
"type": "string",
"description": "Elapsed time in seconds, with an s suffix."
}
},
"description": "Operation result envelope."
},
"annotations": {
"readOnlyHint": false,
"openWorldHint": false,
"idempotentHint": false,
"destructiveHint": true
}
}
The title clearly communicates the tool’s action and subject. Keep it concise.
Description92/100
Edit a reports folder's name and description. List folders first, then supply both fields; use an empty description to clear it.
Changes the existing folder metadata, not the contained report content. Read list_report_folders first and preserve the description unless clearing it is intended.
The description explains the capability, when to use it, and what to expect.
Inputs83/100
Remove validation rules already expressed in this field’s schema; describe its meaning and usage instead.
folderId
Folder ID from the folder listing in this collection.
Remove validation rules already expressed in this field’s schema; describe its meaning and usage instead.
name
Folder name.
Remove validation rules already expressed in this field’s schema; describe its meaning and usage instead.
description
Folder description. Use an empty string to clear it.
Remove validation rules already expressed in this field’s schema; describe its meaning and usage instead.
projectId
Atomic project ID from list_projects. Omit to use the configured project; if asked to choose, select one of the accessible returned IDs.
Clear enough to supply this argument.
context
Short purpose of this call for the activity log. Exclude personal data and private source content.
Remove validation rules already expressed in this field’s schema; describe its meaning and usage instead.
llm_model
Use the exact model ID executing this call, from runtime/system context, for usage attribution. Supply it on every Atomic MCP tool call, including discovery and feedback, and update it if the model changes. Use the model ID rather than the client app name. If unavailable, omit it; never guess or ask the user.
{
"type": "object",
"required": [
"success"
],
"properties": {
"url": {
"type": "string",
"description": "Link for resolving the failure or completing the operation."
},
"data": {
"type": "object",
"required": [
"id",
"projectId",
"collection",
"name",
"description"
],
"properties": {
"id": {
"type": "number",
"description": "Identifier of this returned resource. Use it for subsequent reads or edits of the same resource."
},
"name": {
"type": "string",
"description": "Human-readable name of this resource."
},
"projectId": {
"type": "number",
"description": "Atomic project that owns this resource."
},
"collection": {
"enum": [
"content",
"grids",
"workflows",
"reports"
],
"type": "string",
"description": "Atomic collection that owns these folders or items."
},
"description": {
"type": "string",
"description": "Saved description of this resource or its purpose."
}
},
"description": "Operation data; optional fields may be absent."
},
"error": {
"type": "string",
"description": "Why the operation failed."
},
"details": {
"type": "object",
"description": "Diagnostics keyed by errorCode."
},
"message": {
"type": "string",
"description": "Outcome or recovery instructions. Project selection means no action ran."
},
"success": {
"type": "boolean",
"description": "Operation success; on false inspect error/errorCode."
},
"upgrade": {
"type": "object",
"description": "Plan-upgrade guidance for an unavailable capability."
},
"category": {
"type": "string",
"description": "Failure category, such as invalid_input or plan_required."
},
"expected": {
"type": "boolean",
"description": "Whether this is an anticipated access, input, plan or state failure."
},
"projects": {
"type": "array",
"items": {
"type": "object",
"properties": {
"id": {
"type": "number",
"description": "Project ID for projectId."
},
"name": {
"type": "string",
"description": "Project name."
}
},
"description": "Accessible project."
},
"description": "Accessible project choices. Select a projectId and retry."
},
"errorCode": {
"type": "string",
"description": "Failure code for recovery."
},
"retryable": {
"type": "boolean",
"description": "Whether an unchanged request can be retried."
},
"statusCode": {
"type": "number",
"description": "HTTP-style failure status."
},
"executionTime": {
"type": "string",
"description": "Elapsed time in seconds, with an s suffix."
}
},
"description": "Operation result envelope."
}
Original tool metadata
{
"name": "update_report_folder",
"title": "Update report folder",
"description": "Edit a reports folder's name and description. List folders first, then supply both fields; use an empty description to clear it.\n\nChanges the existing folder metadata, not the contained report content. Read list_report_folders first and preserve the description unless clearing it is intended.",
"inputSchema": {
"type": "object",
"required": [
"folderId",
"name",
"description"
],
"properties": {
"name": {
"type": "string",
"maxLength": 120,
"minLength": 1,
"description": "Folder name."
},
"context": {
"type": "string",
"maxLength": 120,
"description": "Short purpose of this call for the activity log. Exclude personal data and private source content."
},
"folderId": {
"type": "number",
"minimum": 1,
"multipleOf": 1,
"description": "Folder ID from the folder listing in this collection."
},
"llm_model": {
"type": "string",
"maxLength": 128,
"description": "Use the exact model ID executing this call, from runtime/system context, for usage attribution. Supply it on every Atomic MCP tool call, including discovery and feedback, and update it if the model changes. Use the model ID rather than the client app name. If unavailable, omit it; never guess or ask the user."
},
"projectId": {
"type": "number",
"description": "Atomic project ID from list_projects. Omit to use the configured project; if asked to choose, select one of the accessible returned IDs."
},
"description": {
"type": "string",
"maxLength": 2000,
"description": "Folder description. Use an empty string to clear it."
}
},
"additionalProperties": false
},
"outputSchema": {
"type": "object",
"required": [
"success"
],
"properties": {
"url": {
"type": "string",
"description": "Link for resolving the failure or completing the operation."
},
"data": {
"type": "object",
"required": [
"id",
"projectId",
"collection",
"name",
"description"
],
"properties": {
"id": {
"type": "number",
"description": "Identifier of this returned resource. Use it for subsequent reads or edits of the same resource."
},
"name": {
"type": "string",
"description": "Human-readable name of this resource."
},
"projectId": {
"type": "number",
"description": "Atomic project that owns this resource."
},
"collection": {
"enum": [
"content",
"grids",
"workflows",
"reports"
],
"type": "string",
"description": "Atomic collection that owns these folders or items."
},
"description": {
"type": "string",
"description": "Saved description of this resource or its purpose."
}
},
"description": "Operation data; optional fields may be absent."
},
"error": {
"type": "string",
"description": "Why the operation failed."
},
"details": {
"type": "object",
"description": "Diagnostics keyed by errorCode."
},
"message": {
"type": "string",
"description": "Outcome or recovery instructions. Project selection means no action ran."
},
"success": {
"type": "boolean",
"description": "Operation success; on false inspect error/errorCode."
},
"upgrade": {
"type": "object",
"description": "Plan-upgrade guidance for an unavailable capability."
},
"category": {
"type": "string",
"description": "Failure category, such as invalid_input or plan_required."
},
"expected": {
"type": "boolean",
"description": "Whether this is an anticipated access, input, plan or state failure."
},
"projects": {
"type": "array",
"items": {
"type": "object",
"properties": {
"id": {
"type": "number",
"description": "Project ID for projectId."
},
"name": {
"type": "string",
"description": "Project name."
}
},
"description": "Accessible project."
},
"description": "Accessible project choices. Select a projectId and retry."
},
"errorCode": {
"type": "string",
"description": "Failure code for recovery."
},
"retryable": {
"type": "boolean",
"description": "Whether an unchanged request can be retried."
},
"statusCode": {
"type": "number",
"description": "HTTP-style failure status."
},
"executionTime": {
"type": "string",
"description": "Elapsed time in seconds, with an s suffix."
}
},
"description": "Operation result envelope."
},
"annotations": {
"readOnlyHint": false,
"openWorldHint": false,
"idempotentHint": false,
"destructiveHint": true
}
}
The title clearly communicates the tool’s action and subject. Keep it concise.
Description78/100
Update an existing task. Use this to rename work, keep checklist progress current, reassign to an agent, or mark the task as IN_PROGRESS or BLOCKED while you work. Call this as soon as each checklist item finishes instead of waiting to batch several completed items together. Keep checklist updates short and phase-based, grouping parallel work into one item when possible.
The description explains the capability, when to use it, and what to expect.
Inputs84/100
Remove validation rules already expressed in this field’s schema; describe its meaning and usage instead.
taskIdentifier
Project-scoped public task identifier to update, for example OMN-12
Clear enough to supply this argument.
title
Non-empty title naming the work, for example "Add notable citations to the client report".
Remove validation rules already expressed in this field’s schema; describe its meaning and usage instead.
description
Optional new description
Explain the meaning of this value, not just its name.
dueDate
Optional valid calendar date in YYYY-MM-DD format, for example 2026-10-20. Omit when no deadline is set.
Remove validation rules already expressed in this field’s schema; describe its meaning and usage instead.
status
Optional new status
Explain the meaning of this value, not just its name.
assignmentMode
Optional new assignment mode
Explain the meaning of this value, not just its name.
agentId
Optional assigned agent ID. AGENT tasks may leave this unset when the conversation is not tied to a specific agent.
Clear enough to supply this argument.
checklist › items › id
Stable item identifier within this task, for example "research".
Remove validation rules already expressed in this field’s schema; describe its meaning and usage instead.
checklist › items › label
Work or outcome this item tracks.
Clear enough to supply this argument.
checklist › items › completed
Whether this item is finished. Use false for unfinished work.
Clear enough to supply this argument.
isGeneralAgentAssignment
Optional flag for assigning the task to the general agent pool when no specific agent is selected.
Clear enough to supply this argument.
projectId
Atomic project ID from list_projects. Omit to use the configured project; if asked to choose, select one of the accessible returned IDs.
Clear enough to supply this argument.
context
Short purpose of this call for the activity log. Exclude personal data and private source content.
Clear enough to supply this argument.
llm_model
Use the exact model ID executing this call, from runtime/system context, for usage attribution. Supply it on every Atomic MCP tool call, including discovery and feedback, and update it if the model changes. Use the model ID rather than the client app name. If unavailable, omit it; never guess or ask the user.
{
"type": "object",
"required": [
"success"
],
"properties": {
"url": {
"type": "string",
"description": "Link for resolving the failure or completing the operation."
},
"data": {
"type": "object",
"required": [
"projectId",
"title",
"status",
"assignmentMode",
"createdAt",
"updatedAt"
],
"properties": {
"id": {
"type": "number",
"description": "Identifier of this returned resource. Use it for subsequent reads or edits of the same resource."
},
"agent": {
"anyOf": [
{
"type": "null"
},
{
"type": "object",
"required": [
"name",
"type"
],
"properties": {
"id": {
"type": "number",
"description": "Identifier of this returned resource. Use it for subsequent reads or edits of the same resource."
},
"icon": {
"type": "object",
"required": [
"name",
"color"
],
"properties": {
"name": {
"type": "string",
"description": "Human-readable name of this resource."
},
"color": {
"enum": [
"gray",
"blue",
"teal",
"green",
"orange",
"red",
"magenta",
"purple"
],
"type": "string",
"description": "Color value saved for this visual element."
}
},
"description": "Icon identifier or image reference saved for this resource."
},
"name": {
"type": "string",
"description": "Human-readable name of this resource."
},
"type": {
"enum": [
"custom",
"predefined"
],
"type": "string",
"description": "Kind of the returned item; determines how its operation-specific fields should be interpreted."
},
"roleTitle": {
"anyOf": [
{
"type": "null"
},
{
"type": "string"
}
],
"description": "Human-readable title of the returned member role."
},
"organizationRole": {
"anyOf": [
{
"type": "null"
},
{
"type": "string",
"const": "solo"
},
{
"type": "string",
"const": "orchestrator"
},
{
"type": "string",
"const": "employee"
}
],
"description": "Workspace-level role associated with this membership."
}
}
}
],
"description": "Saved agent definition or context associated with this result."
},
"title": {
"type": "string",
"description": "Display or content title of this returned item."
},
"status": {
"enum": [
"OPEN",
"IN_PROGRESS",
"DONE",
"BLOCKED",
"CANCELED"
],
"type": "string",
"description": "Current saved or execution state reported by the operation."
},
"agentId": {
"anyOf": [
{
"type": "null"
},
{
"type": "number"
}
],
"description": "Saved Atomic agent associated with this resource or execution."
},
"dueDate": {
"anyOf": [
{
"type": "null"
},
{
"type": "string"
}
]
},
"activity": {
"anyOf": [
{
"type": "null"
},
{
"type": "array",
"items": {
"type": "object",
"required": [
"id",
"type",
"actor",
"message",
"createdAt"
],
"properties": {
"id": {
"type": "string",
"description": "Identifier of this returned resource. Use it for subsequent reads or edits of the same resource."
},
"type": {
"enum": [
"CREATED",
"CONVERSATION_LINKED",
"TITLE_UPDATED",
"DESCRIPTION_UPDATED",
"DUE_DATE_UPDATED",
"STATUS_UPDATED",
"ASSIGNEE_UPDATED",
"CHECKLIST_UPDATED"
],
"type": "string",
"description": "Kind of the returned item; determines how its operation-specific fields should be interpreted."
},
"actor": {
"type": "object",
"description": "Nested operation-specific fields."
},
"message": {
"type": "string",
"description": "Outcome, explanation or recovery instructions returned by the operation."
},
"createdAt": {
"type": "string",
"format": "date-time",
"description": "Date and time this record was created, serialized as ISO 8601."
},
"conversationId": {
"anyOf": [
{
"type": "null"
},
{
"type": "string"
}
],
"description": "Conversation associated with this task or execution."
}
}
}
}
]
},
"publicId": {
"type": "string"
},
"checklist": {
"anyOf": [
{
"type": "null"
},
{
"type": "array",
"items": {
"type": "object",
"required": [
"id",
"label",
"completed"
],
"properties": {
"id": {
"type": "string",
"description": "Identifier of this returned resource. Use it for subsequent reads or edits of the same resource."
},
"label": {
"type": "string",
"description": "Human-readable label reported by the provider."
},
"completed": {
"type": "boolean"
}
}
}
}
]
},
"createdAt": {
"type": "string",
"format": "date-time",
"description": "Date and time this record was created, serialized as ISO 8601."
},
"projectId": {
"type": "number",
"description": "Atomic project that owns this resource."
},
"updatedAt": {
"type": "string",
"format": "date-time",
"description": "Date and time this record was last updated, serialized as ISO 8601."
},
"description": {
"anyOf": [
{
"type": "null"
},
{
"type": "string"
}
],
"description": "Saved description of this resource or its purpose."
},
"assignmentMode": {
"enum": [
"MANUAL",
"AGENT"
],
"type": "string"
},
"sourceConversationId": {
"anyOf": [
{
"type": "null"
},
{
"type": "string"
}
],
"description": "Conversation that produced this saved result."
},
"sourceConversationIds": {
"anyOf": [
{
"type": "null"
},
{
"type": "array",
"items": {
"type": "string"
}
}
]
},
"isGeneralAgentAssignment": {
"type": "boolean"
}
},
"description": "Operation data; optional fields may be absent."
},
"error": {
"type": "string",
"description": "Why the operation failed."
},
"details": {
"type": "object",
"description": "Diagnostics keyed by errorCode."
},
"message": {
"type": "string",
"description": "Outcome or recovery instructions. Project selection means no action ran."
},
"success": {
"type": "boolean",
"description": "Operation success; on false inspect error/errorCode."
},
"upgrade": {
"type": "object",
"description": "Plan-upgrade guidance for an unavailable capability."
},
"category": {
"type": "string",
"description": "Failure category, such as invalid_input or plan_required."
},
"expected": {
"type": "boolean",
"description": "Whether this is an anticipated access, input, plan or state failure."
},
"projects": {
"type": "array",
"items": {
"type": "object",
"properties": {
"id": {
"type": "number",
"description": "Project ID for projectId."
},
"name": {
"type": "string",
"description": "Project name."
}
},
"description": "Accessible project."
},
"description": "Accessible project choices. Select a projectId and retry."
},
"errorCode": {
"type": "string",
"description": "Failure code for recovery."
},
"retryable": {
"type": "boolean",
"description": "Whether an unchanged request can be retried."
},
"statusCode": {
"type": "number",
"description": "HTTP-style failure status."
},
"executionTime": {
"type": "string",
"description": "Elapsed time in seconds, with an s suffix."
}
},
"description": "Operation result envelope."
}
Original tool metadata
{
"name": "update_task",
"title": "Update task",
"description": "Update an existing task. Use this to rename work, keep checklist progress current, reassign to an agent, or mark the task as IN_PROGRESS or BLOCKED while you work. Call this as soon as each checklist item finishes instead of waiting to batch several completed items together. Keep checklist updates short and phase-based, grouping parallel work into one item when possible.",
"inputSchema": {
"type": "object",
"required": [
"taskIdentifier"
],
"properties": {
"title": {
"type": "string",
"pattern": "\\S",
"maxLength": 255,
"minLength": 1,
"description": "Non-empty title naming the work, for example \"Add notable citations to the client report\"."
},
"status": {
"enum": [
"OPEN",
"IN_PROGRESS",
"DONE",
"BLOCKED",
"CANCELED"
],
"type": "string",
"description": "Optional new status"
},
"agentId": {
"type": "number",
"description": "Optional assigned agent ID. AGENT tasks may leave this unset when the conversation is not tied to a specific agent."
},
"context": {
"type": "string",
"maxLength": 120,
"description": "Short purpose of this call for the activity log. Exclude personal data and private source content."
},
"dueDate": {
"type": "string",
"format": "date",
"description": "Optional valid calendar date in YYYY-MM-DD format, for example 2026-10-20. Omit when no deadline is set."
},
"checklist": {
"type": "array",
"items": {
"type": "object",
"required": [
"id",
"label",
"completed"
],
"properties": {
"id": {
"type": "string",
"pattern": "\\S",
"minLength": 1,
"description": "Stable item identifier within this task, for example \"research\"."
},
"label": {
"type": "string",
"pattern": "\\S",
"minLength": 1,
"description": "Work or outcome this item tracks."
},
"completed": {
"type": "boolean",
"description": "Whether this item is finished. Use false for unfinished work."
}
},
"additionalProperties": false
},
"description": "Optional complete checklist. Prefer 3-5 concise phases, grouping parallel work. Every item needs a stable non-empty id, a non-empty label, and completed (false for new work). When updating, send the full list with existing item IDs; it replaces the saved checklist. Update progress as each item finishes."
},
"llm_model": {
"type": "string",
"maxLength": 128,
"description": "Use the exact model ID executing this call, from runtime/system context, for usage attribution. Supply it on every Atomic MCP tool call, including discovery and feedback, and update it if the model changes. Use the model ID rather than the client app name. If unavailable, omit it; never guess or ask the user."
},
"projectId": {
"type": "number",
"description": "Atomic project ID from list_projects. Omit to use the configured project; if asked to choose, select one of the accessible returned IDs."
},
"description": {
"type": "string",
"description": "Optional new description"
},
"assignmentMode": {
"enum": [
"MANUAL",
"AGENT"
],
"type": "string",
"description": "Optional new assignment mode"
},
"taskIdentifier": {
"type": "string",
"description": "Project-scoped public task identifier to update, for example OMN-12"
},
"isGeneralAgentAssignment": {
"type": "boolean",
"description": "Optional flag for assigning the task to the general agent pool when no specific agent is selected."
}
}
},
"outputSchema": {
"type": "object",
"required": [
"success"
],
"properties": {
"url": {
"type": "string",
"description": "Link for resolving the failure or completing the operation."
},
"data": {
"type": "object",
"required": [
"projectId",
"title",
"status",
"assignmentMode",
"createdAt",
"updatedAt"
],
"properties": {
"id": {
"type": "number",
"description": "Identifier of this returned resource. Use it for subsequent reads or edits of the same resource."
},
"agent": {
"anyOf": [
{
"type": "null"
},
{
"type": "object",
"required": [
"name",
"type"
],
"properties": {
"id": {
"type": "number",
"description": "Identifier of this returned resource. Use it for subsequent reads or edits of the same resource."
},
"icon": {
"type": "object",
"required": [
"name",
"color"
],
"properties": {
"name": {
"type": "string",
"description": "Human-readable name of this resource."
},
"color": {
"enum": [
"gray",
"blue",
"teal",
"green",
"orange",
"red",
"magenta",
"purple"
],
"type": "string",
"description": "Color value saved for this visual element."
}
},
"description": "Icon identifier or image reference saved for this resource."
},
"name": {
"type": "string",
"description": "Human-readable name of this resource."
},
"type": {
"enum": [
"custom",
"predefined"
],
"type": "string",
"description": "Kind of the returned item; determines how its operation-specific fields should be interpreted."
},
"roleTitle": {
"anyOf": [
{
"type": "null"
},
{
"type": "string"
}
],
"description": "Human-readable title of the returned member role."
},
"organizationRole": {
"anyOf": [
{
"type": "null"
},
{
"type": "string",
"const": "solo"
},
{
"type": "string",
"const": "orchestrator"
},
{
"type": "string",
"const": "employee"
}
],
"description": "Workspace-level role associated with this membership."
}
}
}
],
"description": "Saved agent definition or context associated with this result."
},
"title": {
"type": "string",
"description": "Display or content title of this returned item."
},
"status": {
"enum": [
"OPEN",
"IN_PROGRESS",
"DONE",
"BLOCKED",
"CANCELED"
],
"type": "string",
"description": "Current saved or execution state reported by the operation."
},
"agentId": {
"anyOf": [
{
"type": "null"
},
{
"type": "number"
}
],
"description": "Saved Atomic agent associated with this resource or execution."
},
"dueDate": {
"anyOf": [
{
"type": "null"
},
{
"type": "string"
}
]
},
"activity": {
"anyOf": [
{
"type": "null"
},
{
"type": "array",
"items": {
"type": "object",
"required": [
"id",
"type",
"actor",
"message",
"createdAt"
],
"properties": {
"id": {
"type": "string",
"description": "Identifier of this returned resource. Use it for subsequent reads or edits of the same resource."
},
"type": {
"enum": [
"CREATED",
"CONVERSATION_LINKED",
"TITLE_UPDATED",
"DESCRIPTION_UPDATED",
"DUE_DATE_UPDATED",
"STATUS_UPDATED",
"ASSIGNEE_UPDATED",
"CHECKLIST_UPDATED"
],
"type": "string",
"description": "Kind of the returned item; determines how its operation-specific fields should be interpreted."
},
"actor": {
"type": "object",
"description": "Nested operation-specific fields."
},
"message": {
"type": "string",
"description": "Outcome, explanation or recovery instructions returned by the operation."
},
"createdAt": {
"type": "string",
"format": "date-time",
"description": "Date and time this record was created, serialized as ISO 8601."
},
"conversationId": {
"anyOf": [
{
"type": "null"
},
{
"type": "string"
}
],
"description": "Conversation associated with this task or execution."
}
}
}
}
]
},
"publicId": {
"type": "string"
},
"checklist": {
"anyOf": [
{
"type": "null"
},
{
"type": "array",
"items": {
"type": "object",
"required": [
"id",
"label",
"completed"
],
"properties": {
"id": {
"type": "string",
"description": "Identifier of this returned resource. Use it for subsequent reads or edits of the same resource."
},
"label": {
"type": "string",
"description": "Human-readable label reported by the provider."
},
"completed": {
"type": "boolean"
}
}
}
}
]
},
"createdAt": {
"type": "string",
"format": "date-time",
"description": "Date and time this record was created, serialized as ISO 8601."
},
"projectId": {
"type": "number",
"description": "Atomic project that owns this resource."
},
"updatedAt": {
"type": "string",
"format": "date-time",
"description": "Date and time this record was last updated, serialized as ISO 8601."
},
"description": {
"anyOf": [
{
"type": "null"
},
{
"type": "string"
}
],
"description": "Saved description of this resource or its purpose."
},
"assignmentMode": {
"enum": [
"MANUAL",
"AGENT"
],
"type": "string"
},
"sourceConversationId": {
"anyOf": [
{
"type": "null"
},
{
"type": "string"
}
],
"description": "Conversation that produced this saved result."
},
"sourceConversationIds": {
"anyOf": [
{
"type": "null"
},
{
"type": "array",
"items": {
"type": "string"
}
}
]
},
"isGeneralAgentAssignment": {
"type": "boolean"
}
},
"description": "Operation data; optional fields may be absent."
},
"error": {
"type": "string",
"description": "Why the operation failed."
},
"details": {
"type": "object",
"description": "Diagnostics keyed by errorCode."
},
"message": {
"type": "string",
"description": "Outcome or recovery instructions. Project selection means no action ran."
},
"success": {
"type": "boolean",
"description": "Operation success; on false inspect error/errorCode."
},
"upgrade": {
"type": "object",
"description": "Plan-upgrade guidance for an unavailable capability."
},
"category": {
"type": "string",
"description": "Failure category, such as invalid_input or plan_required."
},
"expected": {
"type": "boolean",
"description": "Whether this is an anticipated access, input, plan or state failure."
},
"projects": {
"type": "array",
"items": {
"type": "object",
"properties": {
"id": {
"type": "number",
"description": "Project ID for projectId."
},
"name": {
"type": "string",
"description": "Project name."
}
},
"description": "Accessible project."
},
"description": "Accessible project choices. Select a projectId and retry."
},
"errorCode": {
"type": "string",
"description": "Failure code for recovery."
},
"retryable": {
"type": "boolean",
"description": "Whether an unchanged request can be retried."
},
"statusCode": {
"type": "number",
"description": "HTTP-style failure status."
},
"executionTime": {
"type": "string",
"description": "Elapsed time in seconds, with an s suffix."
}
},
"description": "Operation result envelope."
},
"annotations": {
"readOnlyHint": false,
"openWorldHint": false,
"idempotentHint": false,
"destructiveHint": true
}
}
The title clearly communicates the tool’s action and subject. Keep it concise.
Description94/100
Update only an image asset altText using its original expectedAltText. Use an explicit empty string for decorative assets. Reads back the asset; this does not publish the site or verify rendered elements, which may override asset alt text.
Read the native record and capabilities first. Supply originals for the targeted patch; stale state is a conflict, not permission to overwrite. Saved/staged content and verified public rendering are separate outcomes.
The description explains the capability, when to use it, and what to expect.
Inputs86/100
Remove validation rules already expressed in this field’s schema; describe its meaning and usage instead.
projectPublishingId
Atomic publishing connection ID from get_publishing_connections, not the provider site or post ID.
Remove validation rules already expressed in this field’s schema; describe its meaning and usage instead.
assetId
Asset ID obtained from list_webflow_assets or get_webflow_asset, never guessed.
Remove validation rules already expressed in this field’s schema; describe its meaning and usage instead.
altText
Image description; explicit empty string for decorative assets.
Clear enough to supply this argument.
expectedAltText
Original asset altText from a fresh read.
Clear enough to supply this argument.
projectId
Atomic project ID from list_projects. Omit to use the configured project; if asked to choose, select one of the accessible returned IDs.
Clear enough to supply this argument.
context
Short purpose of this call for the activity log. Exclude personal data and private source content.
Remove validation rules already expressed in this field’s schema; describe its meaning and usage instead.
llm_model
Use the exact model ID executing this call, from runtime/system context, for usage attribution. Supply it on every Atomic MCP tool call, including discovery and feedback, and update it if the model changes. Use the model ID rather than the client app name. If unavailable, omit it; never guess or ask the user.
Remove validation rules already expressed in this field’s schema; describe its meaning and usage instead.
{
"type": "object",
"required": [
"success"
],
"properties": {
"url": {
"type": "string",
"description": "Link for resolving the failure or completing the operation."
},
"data": {
"type": "object",
"required": [
"asset",
"verified",
"changed"
],
"properties": {
"asset": {
"type": "object",
"required": [
"id",
"siteId",
"hostedUrl",
"contentType",
"displayName",
"altText"
],
"properties": {
"id": {
"type": "string",
"description": "Identifier of this returned resource. Use it for subsequent reads or edits of the same resource."
},
"siteId": {
"type": "string",
"description": "Native provider site identifier for this connection."
},
"altText": {
"anyOf": [
{
"type": "null"
},
{
"type": "string"
}
]
},
"hostedUrl": {
"type": "string"
},
"contentType": {
"type": "string",
"description": "Content kind returned by the operation, such as a native CMS post type or a file MIME type."
},
"displayName": {
"type": "string",
"description": "Human-readable display name of this item."
}
}
},
"changed": {
"type": "boolean"
},
"verified": {
"type": "boolean"
}
},
"description": "Operation data; optional fields may be absent."
},
"error": {
"type": "string",
"description": "Why the operation failed."
},
"details": {
"type": "object",
"description": "Diagnostics keyed by errorCode."
},
"message": {
"type": "string",
"description": "Outcome or recovery instructions. Project selection means no action ran."
},
"success": {
"type": "boolean",
"description": "Operation success; on false inspect error/errorCode."
},
"upgrade": {
"type": "object",
"description": "Plan-upgrade guidance for an unavailable capability."
},
"category": {
"type": "string",
"description": "Failure category, such as invalid_input or plan_required."
},
"expected": {
"type": "boolean",
"description": "Whether this is an anticipated access, input, plan or state failure."
},
"projects": {
"type": "array",
"items": {
"type": "object",
"properties": {
"id": {
"type": "number",
"description": "Project ID for projectId."
},
"name": {
"type": "string",
"description": "Project name."
}
},
"description": "Accessible project."
},
"description": "Accessible project choices. Select a projectId and retry."
},
"errorCode": {
"type": "string",
"description": "Failure code for recovery."
},
"retryable": {
"type": "boolean",
"description": "Whether an unchanged request can be retried."
},
"statusCode": {
"type": "number",
"description": "HTTP-style failure status."
},
"executionTime": {
"type": "string",
"description": "Elapsed time in seconds, with an s suffix."
}
},
"description": "Operation result envelope."
}
Original tool metadata
{
"name": "update_webflow_asset_alt",
"title": "Update Webflow asset alt",
"description": "Update only an image asset altText using its original expectedAltText. Use an explicit empty string for decorative assets. Reads back the asset; this does not publish the site or verify rendered elements, which may override asset alt text.\n\nRead the native record and capabilities first. Supply originals for the targeted patch; stale state is a conflict, not permission to overwrite. Saved/staged content and verified public rendering are separate outcomes.",
"inputSchema": {
"type": "object",
"required": [
"projectPublishingId",
"assetId",
"altText",
"expectedAltText"
],
"properties": {
"altText": {
"type": "string",
"maxLength": 2000,
"description": "Image description; explicit empty string for decorative assets."
},
"assetId": {
"type": "string",
"pattern": "^[a-fA-F0-9]{24}$",
"description": "Asset ID obtained from list_webflow_assets or get_webflow_asset, never guessed."
},
"context": {
"type": "string",
"maxLength": 120,
"description": "Short purpose of this call for the activity log. Exclude personal data and private source content."
},
"llm_model": {
"type": "string",
"maxLength": 128,
"description": "Use the exact model ID executing this call, from runtime/system context, for usage attribution. Supply it on every Atomic MCP tool call, including discovery and feedback, and update it if the model changes. Use the model ID rather than the client app name. If unavailable, omit it; never guess or ask the user."
},
"projectId": {
"type": "number",
"description": "Atomic project ID from list_projects. Omit to use the configured project; if asked to choose, select one of the accessible returned IDs."
},
"expectedAltText": {
"oneOf": [
{
"type": "string"
},
{
"type": "null"
}
],
"description": "Original asset altText from a fresh read."
},
"projectPublishingId": {
"type": "number",
"minimum": 1,
"description": "Atomic publishing connection ID from get_publishing_connections, not the provider site or post ID."
}
},
"additionalProperties": false
},
"outputSchema": {
"type": "object",
"required": [
"success"
],
"properties": {
"url": {
"type": "string",
"description": "Link for resolving the failure or completing the operation."
},
"data": {
"type": "object",
"required": [
"asset",
"verified",
"changed"
],
"properties": {
"asset": {
"type": "object",
"required": [
"id",
"siteId",
"hostedUrl",
"contentType",
"displayName",
"altText"
],
"properties": {
"id": {
"type": "string",
"description": "Identifier of this returned resource. Use it for subsequent reads or edits of the same resource."
},
"siteId": {
"type": "string",
"description": "Native provider site identifier for this connection."
},
"altText": {
"anyOf": [
{
"type": "null"
},
{
"type": "string"
}
]
},
"hostedUrl": {
"type": "string"
},
"contentType": {
"type": "string",
"description": "Content kind returned by the operation, such as a native CMS post type or a file MIME type."
},
"displayName": {
"type": "string",
"description": "Human-readable display name of this item."
}
}
},
"changed": {
"type": "boolean"
},
"verified": {
"type": "boolean"
}
},
"description": "Operation data; optional fields may be absent."
},
"error": {
"type": "string",
"description": "Why the operation failed."
},
"details": {
"type": "object",
"description": "Diagnostics keyed by errorCode."
},
"message": {
"type": "string",
"description": "Outcome or recovery instructions. Project selection means no action ran."
},
"success": {
"type": "boolean",
"description": "Operation success; on false inspect error/errorCode."
},
"upgrade": {
"type": "object",
"description": "Plan-upgrade guidance for an unavailable capability."
},
"category": {
"type": "string",
"description": "Failure category, such as invalid_input or plan_required."
},
"expected": {
"type": "boolean",
"description": "Whether this is an anticipated access, input, plan or state failure."
},
"projects": {
"type": "array",
"items": {
"type": "object",
"properties": {
"id": {
"type": "number",
"description": "Project ID for projectId."
},
"name": {
"type": "string",
"description": "Project name."
}
},
"description": "Accessible project."
},
"description": "Accessible project choices. Select a projectId and retry."
},
"errorCode": {
"type": "string",
"description": "Failure code for recovery."
},
"retryable": {
"type": "boolean",
"description": "Whether an unchanged request can be retried."
},
"statusCode": {
"type": "number",
"description": "HTTP-style failure status."
},
"executionTime": {
"type": "string",
"description": "Elapsed time in seconds, with an s suffix."
}
},
"description": "Operation result envelope."
},
"annotations": {
"readOnlyHint": false,
"openWorldHint": true,
"idempotentHint": false,
"destructiveHint": true
}
}
The title clearly communicates the tool’s action and subject. Keep it concise.
Description93/100
Update an existing primary-locale Webflow CMS post or collection page using native CMS field slugs. Supply original values for exactly the patched fields. Omitted fields stay unchanged. status publish publishes this item and verifies staged and live values; draft saves without publishing. Publishing includes all staged fields of the item. Retain the UUID v4 attemptId and identical inputs on retries to reconcile partial or unknown outcomes. Static pages are not supported.
Read the native record and capabilities first. Supply originals for the targeted patch; stale state is a conflict, not permission to overwrite. Saved/staged content and verified public rendering are separate outcomes. Reuse the same attemptId and identical payload only for a retry of the same intended action; a new action needs a new key.
The description explains the capability, when to use it, and what to expect.
Inputs83/100
Clarify units, where to obtain this value, or conventions not already expressed in the schema.
projectPublishingId
Atomic publishing connection ID from get_publishing_connections, not the provider site or post ID.
Clear enough to supply this argument.
collectionId
CMS collection in the connected site
Clarify units, where to obtain this value, or conventions not already expressed in the schema.
itemId
Existing primary-locale CMS post or collection page
Clear enough to supply this argument.
attemptId
Caller-generated identifier for one intended mutation. Reuse it with the identical payload after an uncertain response; use a new identifier for a different intended action.
Clear enough to supply this argument.
patch
Target CMS field values keyed by native field slug
Remove validation rules already expressed in this field’s schema; describe its meaning and usage instead.
expected
Original values for exactly the patched fields
Explain the meaning of this value, not just its name.
status
Publication or execution status to select or set. Use the statuses supported by this operation.
Remove validation rules already expressed in this field’s schema; describe its meaning and usage instead.
projectId
Atomic project ID from list_projects. Omit to use the configured project; if asked to choose, select one of the accessible returned IDs.
Clear enough to supply this argument.
context
Short purpose of this call for the activity log. Exclude personal data and private source content.
Remove validation rules already expressed in this field’s schema; describe its meaning and usage instead.
llm_model
Use the exact model ID executing this call, from runtime/system context, for usage attribution. Supply it on every Atomic MCP tool call, including discovery and feedback, and update it if the model changes. Use the model ID rather than the client app name. If unavailable, omit it; never guess or ask the user.
{
"type": "object",
"required": [
"success"
],
"properties": {
"url": {
"type": "string",
"description": "Link for resolving the failure or completing the operation."
},
"data": {
"type": "object",
"required": [
"success",
"attemptId",
"itemId",
"outcome",
"saved",
"published",
"updatedFields"
],
"properties": {
"error": {
"type": "string",
"description": "Failure details reported by this operation or its provider."
},
"saved": {
"type": "boolean",
"description": "Whether the operation confirmed the requested persisted state."
},
"itemId": {
"type": "string",
"description": "Native CMS item ID within the returned collection."
},
"outcome": {
"enum": [
"unknown",
"success",
"conflict",
"partial"
],
"type": "string"
},
"success": {
"type": "boolean",
"description": "Whether this nested operation completed successfully. Inspect the containing result for details."
},
"attemptId": {
"type": "string",
"description": "Identifier of the intended write attempt, used to reconcile retries with its recorded outcome."
},
"published": {
"type": "boolean",
"description": "Whether the operation verified or reported publication; this alone does not prove rendered HTML correctness."
},
"updatedFields": {
"type": "array",
"items": {
"type": "string"
},
"description": "Fields confirmed as changed by this write."
},
"bookkeepingWarning": {
"type": "string"
}
},
"description": "Operation data; optional fields may be absent."
},
"error": {
"type": "string",
"description": "Why the operation failed."
},
"details": {
"type": "object",
"description": "Diagnostics keyed by errorCode."
},
"message": {
"type": "string",
"description": "Outcome or recovery instructions. Project selection means no action ran."
},
"success": {
"type": "boolean",
"description": "Operation success; on false inspect error/errorCode."
},
"upgrade": {
"type": "object",
"description": "Plan-upgrade guidance for an unavailable capability."
},
"category": {
"type": "string",
"description": "Failure category, such as invalid_input or plan_required."
},
"expected": {
"type": "boolean",
"description": "Whether this is an anticipated access, input, plan or state failure."
},
"projects": {
"type": "array",
"items": {
"type": "object",
"properties": {
"id": {
"type": "number",
"description": "Project ID for projectId."
},
"name": {
"type": "string",
"description": "Project name."
}
},
"description": "Accessible project."
},
"description": "Accessible project choices. Select a projectId and retry."
},
"errorCode": {
"type": "string",
"description": "Failure code for recovery."
},
"retryable": {
"type": "boolean",
"description": "Whether an unchanged request can be retried."
},
"statusCode": {
"type": "number",
"description": "HTTP-style failure status."
},
"executionTime": {
"type": "string",
"description": "Elapsed time in seconds, with an s suffix."
}
},
"description": "Operation result envelope."
}
Original tool metadata
{
"name": "update_webflow_content",
"title": "Update Webflow content",
"description": "Update an existing primary-locale Webflow CMS post or collection page using native CMS field slugs. Supply original values for exactly the patched fields. Omitted fields stay unchanged. status publish publishes this item and verifies staged and live values; draft saves without publishing. Publishing includes all staged fields of the item. Retain the UUID v4 attemptId and identical inputs on retries to reconcile partial or unknown outcomes. Static pages are not supported.\n\nRead the native record and capabilities first. Supply originals for the targeted patch; stale state is a conflict, not permission to overwrite. Saved/staged content and verified public rendering are separate outcomes. Reuse the same attemptId and identical payload only for a retry of the same intended action; a new action needs a new key.",
"inputSchema": {
"type": "object",
"required": [
"projectPublishingId",
"collectionId",
"itemId",
"attemptId",
"patch",
"expected",
"status"
],
"properties": {
"patch": {
"type": "object",
"description": "Target CMS field values keyed by native field slug",
"minProperties": 1,
"additionalProperties": true
},
"itemId": {
"type": "string",
"pattern": "^[a-fA-F0-9]{24}$",
"description": "Existing primary-locale CMS post or collection page"
},
"status": {
"enum": [
"draft",
"publish"
],
"type": "string",
"description": "Publication or execution status to select or set. Use the statuses supported by this operation."
},
"context": {
"type": "string",
"maxLength": 120,
"description": "Short purpose of this call for the activity log. Exclude personal data and private source content."
},
"expected": {
"type": "object",
"description": "Original values for exactly the patched fields",
"minProperties": 1,
"additionalProperties": true
},
"attemptId": {
"type": "string",
"format": "uuid",
"description": "Caller-generated identifier for one intended mutation. Reuse it with the identical payload after an uncertain response; use a new identifier for a different intended action."
},
"llm_model": {
"type": "string",
"maxLength": 128,
"description": "Use the exact model ID executing this call, from runtime/system context, for usage attribution. Supply it on every Atomic MCP tool call, including discovery and feedback, and update it if the model changes. Use the model ID rather than the client app name. If unavailable, omit it; never guess or ask the user."
},
"projectId": {
"type": "number",
"description": "Atomic project ID from list_projects. Omit to use the configured project; if asked to choose, select one of the accessible returned IDs."
},
"collectionId": {
"type": "string",
"pattern": "^[a-fA-F0-9]{24}$",
"description": "CMS collection in the connected site"
},
"projectPublishingId": {
"type": "number",
"minimum": 1,
"description": "Atomic publishing connection ID from get_publishing_connections, not the provider site or post ID."
}
},
"additionalProperties": false
},
"outputSchema": {
"type": "object",
"required": [
"success"
],
"properties": {
"url": {
"type": "string",
"description": "Link for resolving the failure or completing the operation."
},
"data": {
"type": "object",
"required": [
"success",
"attemptId",
"itemId",
"outcome",
"saved",
"published",
"updatedFields"
],
"properties": {
"error": {
"type": "string",
"description": "Failure details reported by this operation or its provider."
},
"saved": {
"type": "boolean",
"description": "Whether the operation confirmed the requested persisted state."
},
"itemId": {
"type": "string",
"description": "Native CMS item ID within the returned collection."
},
"outcome": {
"enum": [
"unknown",
"success",
"conflict",
"partial"
],
"type": "string"
},
"success": {
"type": "boolean",
"description": "Whether this nested operation completed successfully. Inspect the containing result for details."
},
"attemptId": {
"type": "string",
"description": "Identifier of the intended write attempt, used to reconcile retries with its recorded outcome."
},
"published": {
"type": "boolean",
"description": "Whether the operation verified or reported publication; this alone does not prove rendered HTML correctness."
},
"updatedFields": {
"type": "array",
"items": {
"type": "string"
},
"description": "Fields confirmed as changed by this write."
},
"bookkeepingWarning": {
"type": "string"
}
},
"description": "Operation data; optional fields may be absent."
},
"error": {
"type": "string",
"description": "Why the operation failed."
},
"details": {
"type": "object",
"description": "Diagnostics keyed by errorCode."
},
"message": {
"type": "string",
"description": "Outcome or recovery instructions. Project selection means no action ran."
},
"success": {
"type": "boolean",
"description": "Operation success; on false inspect error/errorCode."
},
"upgrade": {
"type": "object",
"description": "Plan-upgrade guidance for an unavailable capability."
},
"category": {
"type": "string",
"description": "Failure category, such as invalid_input or plan_required."
},
"expected": {
"type": "boolean",
"description": "Whether this is an anticipated access, input, plan or state failure."
},
"projects": {
"type": "array",
"items": {
"type": "object",
"properties": {
"id": {
"type": "number",
"description": "Project ID for projectId."
},
"name": {
"type": "string",
"description": "Project name."
}
},
"description": "Accessible project."
},
"description": "Accessible project choices. Select a projectId and retry."
},
"errorCode": {
"type": "string",
"description": "Failure code for recovery."
},
"retryable": {
"type": "boolean",
"description": "Whether an unchanged request can be retried."
},
"statusCode": {
"type": "number",
"description": "HTTP-style failure status."
},
"executionTime": {
"type": "string",
"description": "Elapsed time in seconds, with an s suffix."
}
},
"description": "Operation result envelope."
},
"annotations": {
"readOnlyHint": false,
"openWorldHint": true,
"idempotentHint": true,
"destructiveHint": true
}
}
The title clearly communicates the tool’s action and subject. Keep it concise.
Description96/100
Save one native Webflow design action without publishing: create nested elements, edit text/settings/bindings, move elements, assign classes or create/update styles across breakpoints. Pass current native schema arguments from get_webflow_design, a fresh designToken and UUID v4 attemptId. Shared class edits affect every use across the site. Retrying the same attempt never repeats a write; unknown means inspect the page. Applied means acknowledged and read back, not visually verified. Verify exact settings and appearance before separate site publication. Element deletion and arbitrary remote tools are not supported.
Read the native record and capabilities first. Supply originals for the targeted patch; stale state is a conflict, not permission to overwrite. Saved/staged content and verified public rendering are separate outcomes. Reuse the same attemptId and identical payload only for a retry of the same intended action; a new action needs a new key.
The description explains the capability, when to use it, and what to expect.
Inputs89/100
Remove validation rules already expressed in this field’s schema; describe its meaning and usage instead.
projectPublishingId
Atomic publishing connection ID from get_publishing_connections, not the provider site or post ID.
Clear enough to supply this argument.
pageId
Page ID from the connected site, including a Collection Page template.
Remove validation rules already expressed in this field’s schema; describe its meaning and usage instead.
call › tool
Native operation name from the design schema returned by get_webflow_design.
Remove validation rules already expressed in this field’s schema; describe its meaning and usage instead.
call › arguments
One native action using the tool schema returned by get_webflow_design. Omit siteId/pageId; Atomic supplies them. Component scope overrides are not allowed.
Clear enough to supply this argument.
attemptId
Caller-generated identifier for one intended mutation. Reuse it with the identical payload after an uncertain response; use a new identifier for a different intended action.
Clear enough to supply this argument.
expectedDesignToken
Design token returned by a fresh get_webflow_design read. It binds the write to the design state you inspected.
Clear enough to supply this argument.
projectId
Atomic project ID from list_projects. Omit to use the configured project; if asked to choose, select one of the accessible returned IDs.
Clear enough to supply this argument.
context
Short purpose of this call for the activity log. Exclude personal data and private source content.
Remove validation rules already expressed in this field’s schema; describe its meaning and usage instead.
llm_model
Use the exact model ID executing this call, from runtime/system context, for usage attribution. Supply it on every Atomic MCP tool call, including discovery and feedback, and update it if the model changes. Use the model ID rather than the client app name. If unavailable, omit it; never guess or ask the user.
Remove validation rules already expressed in this field’s schema; describe its meaning and usage instead.
{
"type": "object",
"required": [
"success"
],
"properties": {
"url": {
"type": "string",
"description": "Link for resolving the failure or completing the operation."
},
"data": {
"type": "object",
"required": [
"status",
"attemptId",
"published"
],
"properties": {
"state": {
"type": "object",
"required": [
"siteId",
"pageId",
"designToken",
"tools"
],
"properties": {
"tools": {
"type": "array",
"items": {
"type": "object",
"description": "Nested operation-specific fields."
}
},
"pageId": {
"type": "string"
},
"siteId": {
"type": "string",
"description": "Native provider site identifier for this connection."
},
"styles": {
"description": "JSON returned by the connected provider or selected operation; its fields depend on that operation."
},
"elements": {
"description": "JSON returned by the connected provider or selected operation; its fields depend on that operation."
},
"designToken": {
"type": "string"
}
}
},
"result": {
"description": "JSON returned by the connected provider or selected operation; its fields depend on that operation."
},
"status": {
"enum": [
"unknown",
"applied"
],
"type": "string",
"description": "Current saved or execution state reported by the operation."
},
"message": {
"type": "string",
"description": "Outcome, explanation or recovery instructions returned by the operation."
},
"attemptId": {
"type": "string",
"description": "Identifier of the intended write attempt, used to reconcile retries with its recorded outcome."
},
"published": {
"type": "boolean",
"description": "Whether the operation verified or reported publication; this alone does not prove rendered HTML correctness."
}
},
"description": "Operation data; optional fields may be absent."
},
"error": {
"type": "string",
"description": "Why the operation failed."
},
"details": {
"type": "object",
"description": "Diagnostics keyed by errorCode."
},
"message": {
"type": "string",
"description": "Outcome or recovery instructions. Project selection means no action ran."
},
"success": {
"type": "boolean",
"description": "Operation success; on false inspect error/errorCode."
},
"upgrade": {
"type": "object",
"description": "Plan-upgrade guidance for an unavailable capability."
},
"category": {
"type": "string",
"description": "Failure category, such as invalid_input or plan_required."
},
"expected": {
"type": "boolean",
"description": "Whether this is an anticipated access, input, plan or state failure."
},
"projects": {
"type": "array",
"items": {
"type": "object",
"properties": {
"id": {
"type": "number",
"description": "Project ID for projectId."
},
"name": {
"type": "string",
"description": "Project name."
}
},
"description": "Accessible project."
},
"description": "Accessible project choices. Select a projectId and retry."
},
"errorCode": {
"type": "string",
"description": "Failure code for recovery."
},
"retryable": {
"type": "boolean",
"description": "Whether an unchanged request can be retried."
},
"statusCode": {
"type": "number",
"description": "HTTP-style failure status."
},
"executionTime": {
"type": "string",
"description": "Elapsed time in seconds, with an s suffix."
}
},
"description": "Operation result envelope."
}
Original tool metadata
{
"name": "update_webflow_design",
"title": "Update Webflow design",
"description": "Save one native Webflow design action without publishing: create nested elements, edit text/settings/bindings, move elements, assign classes or create/update styles across breakpoints. Pass current native schema arguments from get_webflow_design, a fresh designToken and UUID v4 attemptId. Shared class edits affect every use across the site. Retrying the same attempt never repeats a write; unknown means inspect the page. Applied means acknowledged and read back, not visually verified. Verify exact settings and appearance before separate site publication. Element deletion and arbitrary remote tools are not supported.\n\nRead the native record and capabilities first. Supply originals for the targeted patch; stale state is a conflict, not permission to overwrite. Saved/staged content and verified public rendering are separate outcomes. Reuse the same attemptId and identical payload only for a retry of the same intended action; a new action needs a new key.",
"inputSchema": {
"type": "object",
"required": [
"projectPublishingId",
"pageId",
"call",
"attemptId",
"expectedDesignToken"
],
"properties": {
"call": {
"type": "object",
"required": [
"tool",
"arguments"
],
"properties": {
"tool": {
"enum": [
"data_element_tool",
"data_element_settings_tool",
"data_element_builder",
"data_style_tool",
"element_snapshot_tool"
],
"type": "string",
"description": "Native operation name from the design schema returned by get_webflow_design."
},
"arguments": {
"type": "object",
"description": "One native action using the tool schema returned by get_webflow_design. Omit siteId/pageId; Atomic supplies them. Component scope overrides are not allowed.",
"additionalProperties": true
}
},
"description": "Native design tool call selected from the schema returned by get_webflow_design; include its tool name and arguments.",
"additionalProperties": false
},
"pageId": {
"type": "string",
"pattern": "^[a-fA-F0-9]{24}$",
"description": "Page ID from the connected site, including a Collection Page template."
},
"context": {
"type": "string",
"maxLength": 120,
"description": "Short purpose of this call for the activity log. Exclude personal data and private source content."
},
"attemptId": {
"type": "string",
"format": "uuid",
"description": "Caller-generated identifier for one intended mutation. Reuse it with the identical payload after an uncertain response; use a new identifier for a different intended action."
},
"llm_model": {
"type": "string",
"maxLength": 128,
"description": "Use the exact model ID executing this call, from runtime/system context, for usage attribution. Supply it on every Atomic MCP tool call, including discovery and feedback, and update it if the model changes. Use the model ID rather than the client app name. If unavailable, omit it; never guess or ask the user."
},
"projectId": {
"type": "number",
"description": "Atomic project ID from list_projects. Omit to use the configured project; if asked to choose, select one of the accessible returned IDs."
},
"expectedDesignToken": {
"type": "string",
"pattern": "^[a-f0-9]{64}$",
"description": "Design token returned by a fresh get_webflow_design read. It binds the write to the design state you inspected."
},
"projectPublishingId": {
"type": "number",
"minimum": 1,
"description": "Atomic publishing connection ID from get_publishing_connections, not the provider site or post ID."
}
},
"additionalProperties": false
},
"outputSchema": {
"type": "object",
"required": [
"success"
],
"properties": {
"url": {
"type": "string",
"description": "Link for resolving the failure or completing the operation."
},
"data": {
"type": "object",
"required": [
"status",
"attemptId",
"published"
],
"properties": {
"state": {
"type": "object",
"required": [
"siteId",
"pageId",
"designToken",
"tools"
],
"properties": {
"tools": {
"type": "array",
"items": {
"type": "object",
"description": "Nested operation-specific fields."
}
},
"pageId": {
"type": "string"
},
"siteId": {
"type": "string",
"description": "Native provider site identifier for this connection."
},
"styles": {
"description": "JSON returned by the connected provider or selected operation; its fields depend on that operation."
},
"elements": {
"description": "JSON returned by the connected provider or selected operation; its fields depend on that operation."
},
"designToken": {
"type": "string"
}
}
},
"result": {
"description": "JSON returned by the connected provider or selected operation; its fields depend on that operation."
},
"status": {
"enum": [
"unknown",
"applied"
],
"type": "string",
"description": "Current saved or execution state reported by the operation."
},
"message": {
"type": "string",
"description": "Outcome, explanation or recovery instructions returned by the operation."
},
"attemptId": {
"type": "string",
"description": "Identifier of the intended write attempt, used to reconcile retries with its recorded outcome."
},
"published": {
"type": "boolean",
"description": "Whether the operation verified or reported publication; this alone does not prove rendered HTML correctness."
}
},
"description": "Operation data; optional fields may be absent."
},
"error": {
"type": "string",
"description": "Why the operation failed."
},
"details": {
"type": "object",
"description": "Diagnostics keyed by errorCode."
},
"message": {
"type": "string",
"description": "Outcome or recovery instructions. Project selection means no action ran."
},
"success": {
"type": "boolean",
"description": "Operation success; on false inspect error/errorCode."
},
"upgrade": {
"type": "object",
"description": "Plan-upgrade guidance for an unavailable capability."
},
"category": {
"type": "string",
"description": "Failure category, such as invalid_input or plan_required."
},
"expected": {
"type": "boolean",
"description": "Whether this is an anticipated access, input, plan or state failure."
},
"projects": {
"type": "array",
"items": {
"type": "object",
"properties": {
"id": {
"type": "number",
"description": "Project ID for projectId."
},
"name": {
"type": "string",
"description": "Project name."
}
},
"description": "Accessible project."
},
"description": "Accessible project choices. Select a projectId and retry."
},
"errorCode": {
"type": "string",
"description": "Failure code for recovery."
},
"retryable": {
"type": "boolean",
"description": "Whether an unchanged request can be retried."
},
"statusCode": {
"type": "number",
"description": "HTTP-style failure status."
},
"executionTime": {
"type": "string",
"description": "Elapsed time in seconds, with an s suffix."
}
},
"description": "Operation result envelope."
},
"annotations": {
"readOnlyHint": false,
"openWorldHint": true,
"idempotentHint": true,
"destructiveHint": true
}
}
The title clearly communicates the tool’s action and subject. Keep it concise.
Description83/100
Edit global attribute metadata using native fields and targeted originals.
Edits a store-wide attribute definition, not an individual value. Read list_woocommerce_attributes first; supply originals only for changed fields so conflicts are visible and unrelated fields remain intact. Reuse the same attemptId and identical payload only for a retry of the same intended action; a new action needs a new key.
The description explains the capability, when to use it, and what to expect.
Inputs94/100
Remove validation rules already expressed in this field’s schema; describe its meaning and usage instead.
projectPublishingId
Atomic publishing connection ID from get_publishing_connections, not the provider site or post ID.
Clear enough to supply this argument.
id
Global WooCommerce attribute ID from list_woocommerce_attributes.
Clear enough to supply this argument.
attemptId
Caller-generated identifier for one intended mutation. Reuse it with the identical payload after an uncertain response; use a new identifier for a different intended action.
Clear enough to supply this argument.
fields
Explicit native fields to change. Omitted fields remain unchanged; read the current item and capabilities before constructing edits.
Clear enough to supply this argument.
expected
Original values read immediately before editing. Supply originals only for targeted fields so concurrent changes can be detected.
Clear enough to supply this argument.
projectId
Atomic project ID from list_projects. Omit to use the configured project; if asked to choose, select one of the accessible returned IDs.
Clear enough to supply this argument.
context
Short purpose of this call for the activity log. Exclude personal data and private source content.
Remove validation rules already expressed in this field’s schema; describe its meaning and usage instead.
llm_model
Use the exact model ID executing this call, from runtime/system context, for usage attribution. Supply it on every Atomic MCP tool call, including discovery and feedback, and update it if the model changes. Use the model ID rather than the client app name. If unavailable, omit it; never guess or ask the user.
{
"type": "object",
"required": [
"success"
],
"properties": {
"url": {
"type": "string",
"description": "Link for resolving the failure or completing the operation."
},
"data": {
"type": "object",
"required": [
"data"
],
"properties": {
"data": {
"type": "object",
"required": [
"id"
],
"properties": {
"id": {
"type": "number",
"description": "Identifier of this returned resource. Use it for subsequent reads or edits of the same resource."
},
"link": {
"type": "string"
},
"name": {
"type": "string",
"description": "Human-readable name of this resource."
},
"slug": {
"type": "string",
"description": "Saved URL slug or native CMS slug of this item."
},
"type": {
"type": "string",
"description": "Kind of the returned item; determines how its operation-specific fields should be interpreted."
},
"count": {
"type": "number",
"description": "Number of records reported by the provider for this group."
},
"title": {
"type": "object",
"properties": {
"raw": {
"type": "string"
},
"rendered": {
"type": "string"
}
},
"description": "Display or content title of this returned item."
},
"parent": {
"type": "number",
"description": "Native parent record ID; zero denotes the provider root when applicable."
},
"status": {
"type": "string",
"description": "Current saved or execution state reported by the operation."
},
"caption": {
"type": "object",
"properties": {
"raw": {
"type": "string"
},
"rendered": {
"type": "string"
}
},
"description": "Native media caption with raw/rendered values when supplied."
},
"alt_text": {
"type": "string",
"description": "Saved accessible alternative text on the native WordPress media record."
},
"order_by": {
"type": "string",
"description": "Native ordering policy for WooCommerce attribute terms."
},
"taxonomy": {
"type": "string",
"description": "Native taxonomy slug owning this term."
},
"mime_type": {
"type": "string",
"description": "Native MIME type of this media record."
},
"media_type": {
"type": "string",
"description": "WordPress media category, such as image or file."
},
"source_url": {
"type": "string",
"description": "Provider URL of the media asset."
},
"description": {
"anyOf": [
{
"type": "string"
},
{
"type": "object",
"properties": {
"raw": {
"type": "string"
},
"rendered": {
"type": "string"
}
}
}
],
"description": "Saved description of this resource or its purpose."
},
"has_archives": {
"type": "boolean",
"description": "Whether this WooCommerce attribute enables public archives."
}
},
"description": "Result items or operation data inside this returned payload. Pagination fields describe only this result page."
},
"total": {
"type": "number",
"description": "Total number of matching items across all result pages."
},
"nextPage": {
"anyOf": [
{
"type": "null"
},
{
"type": "number"
}
],
"description": "Next page to request when more results exist; use the returned value rather than constructing a cursor."
},
"replayed": {
"type": "boolean",
"description": "Whether this response reuses the recorded outcome of an earlier attempt rather than performing a new write."
}
},
"description": "Operation data; optional fields may be absent."
},
"error": {
"type": "string",
"description": "Why the operation failed."
},
"details": {
"type": "object",
"description": "Diagnostics keyed by errorCode."
},
"message": {
"type": "string",
"description": "Outcome or recovery instructions. Project selection means no action ran."
},
"success": {
"type": "boolean",
"description": "Operation success; on false inspect error/errorCode."
},
"upgrade": {
"type": "object",
"description": "Plan-upgrade guidance for an unavailable capability."
},
"category": {
"type": "string",
"description": "Failure category, such as invalid_input or plan_required."
},
"expected": {
"type": "boolean",
"description": "Whether this is an anticipated access, input, plan or state failure."
},
"projects": {
"type": "array",
"items": {
"type": "object",
"properties": {
"id": {
"type": "number",
"description": "Project ID for projectId."
},
"name": {
"type": "string",
"description": "Project name."
}
},
"description": "Accessible project."
},
"description": "Accessible project choices. Select a projectId and retry."
},
"errorCode": {
"type": "string",
"description": "Failure code for recovery."
},
"retryable": {
"type": "boolean",
"description": "Whether an unchanged request can be retried."
},
"statusCode": {
"type": "number",
"description": "HTTP-style failure status."
},
"executionTime": {
"type": "string",
"description": "Elapsed time in seconds, with an s suffix."
}
},
"description": "Operation result envelope."
}
Original tool metadata
{
"name": "update_woocommerce_attribute",
"title": "Update WooCommerce attribute",
"description": "Edit global attribute metadata using native fields and targeted originals.\n\nEdits a store-wide attribute definition, not an individual value. Read list_woocommerce_attributes first; supply originals only for changed fields so conflicts are visible and unrelated fields remain intact. Reuse the same attemptId and identical payload only for a retry of the same intended action; a new action needs a new key.",
"inputSchema": {
"type": "object",
"required": [
"projectPublishingId",
"id",
"attemptId",
"fields",
"expected"
],
"properties": {
"id": {
"type": "number",
"minimum": 1,
"description": "Global WooCommerce attribute ID from list_woocommerce_attributes."
},
"fields": {
"type": "object",
"description": "Explicit native fields to change. Omitted fields remain unchanged; read the current item and capabilities before constructing edits.",
"minProperties": 1,
"additionalProperties": true
},
"context": {
"type": "string",
"maxLength": 120,
"description": "Short purpose of this call for the activity log. Exclude personal data and private source content."
},
"expected": {
"type": "object",
"description": "Original values read immediately before editing. Supply originals only for targeted fields so concurrent changes can be detected.",
"additionalProperties": true
},
"attemptId": {
"type": "string",
"format": "uuid",
"description": "Caller-generated identifier for one intended mutation. Reuse it with the identical payload after an uncertain response; use a new identifier for a different intended action."
},
"llm_model": {
"type": "string",
"maxLength": 128,
"description": "Use the exact model ID executing this call, from runtime/system context, for usage attribution. Supply it on every Atomic MCP tool call, including discovery and feedback, and update it if the model changes. Use the model ID rather than the client app name. If unavailable, omit it; never guess or ask the user."
},
"projectId": {
"type": "number",
"description": "Atomic project ID from list_projects. Omit to use the configured project; if asked to choose, select one of the accessible returned IDs."
},
"projectPublishingId": {
"type": "number",
"minimum": 1,
"description": "Atomic publishing connection ID from get_publishing_connections, not the provider site or post ID."
}
},
"additionalProperties": false
},
"outputSchema": {
"type": "object",
"required": [
"success"
],
"properties": {
"url": {
"type": "string",
"description": "Link for resolving the failure or completing the operation."
},
"data": {
"type": "object",
"required": [
"data"
],
"properties": {
"data": {
"type": "object",
"required": [
"id"
],
"properties": {
"id": {
"type": "number",
"description": "Identifier of this returned resource. Use it for subsequent reads or edits of the same resource."
},
"link": {
"type": "string"
},
"name": {
"type": "string",
"description": "Human-readable name of this resource."
},
"slug": {
"type": "string",
"description": "Saved URL slug or native CMS slug of this item."
},
"type": {
"type": "string",
"description": "Kind of the returned item; determines how its operation-specific fields should be interpreted."
},
"count": {
"type": "number",
"description": "Number of records reported by the provider for this group."
},
"title": {
"type": "object",
"properties": {
"raw": {
"type": "string"
},
"rendered": {
"type": "string"
}
},
"description": "Display or content title of this returned item."
},
"parent": {
"type": "number",
"description": "Native parent record ID; zero denotes the provider root when applicable."
},
"status": {
"type": "string",
"description": "Current saved or execution state reported by the operation."
},
"caption": {
"type": "object",
"properties": {
"raw": {
"type": "string"
},
"rendered": {
"type": "string"
}
},
"description": "Native media caption with raw/rendered values when supplied."
},
"alt_text": {
"type": "string",
"description": "Saved accessible alternative text on the native WordPress media record."
},
"order_by": {
"type": "string",
"description": "Native ordering policy for WooCommerce attribute terms."
},
"taxonomy": {
"type": "string",
"description": "Native taxonomy slug owning this term."
},
"mime_type": {
"type": "string",
"description": "Native MIME type of this media record."
},
"media_type": {
"type": "string",
"description": "WordPress media category, such as image or file."
},
"source_url": {
"type": "string",
"description": "Provider URL of the media asset."
},
"description": {
"anyOf": [
{
"type": "string"
},
{
"type": "object",
"properties": {
"raw": {
"type": "string"
},
"rendered": {
"type": "string"
}
}
}
],
"description": "Saved description of this resource or its purpose."
},
"has_archives": {
"type": "boolean",
"description": "Whether this WooCommerce attribute enables public archives."
}
},
"description": "Result items or operation data inside this returned payload. Pagination fields describe only this result page."
},
"total": {
"type": "number",
"description": "Total number of matching items across all result pages."
},
"nextPage": {
"anyOf": [
{
"type": "null"
},
{
"type": "number"
}
],
"description": "Next page to request when more results exist; use the returned value rather than constructing a cursor."
},
"replayed": {
"type": "boolean",
"description": "Whether this response reuses the recorded outcome of an earlier attempt rather than performing a new write."
}
},
"description": "Operation data; optional fields may be absent."
},
"error": {
"type": "string",
"description": "Why the operation failed."
},
"details": {
"type": "object",
"description": "Diagnostics keyed by errorCode."
},
"message": {
"type": "string",
"description": "Outcome or recovery instructions. Project selection means no action ran."
},
"success": {
"type": "boolean",
"description": "Operation success; on false inspect error/errorCode."
},
"upgrade": {
"type": "object",
"description": "Plan-upgrade guidance for an unavailable capability."
},
"category": {
"type": "string",
"description": "Failure category, such as invalid_input or plan_required."
},
"expected": {
"type": "boolean",
"description": "Whether this is an anticipated access, input, plan or state failure."
},
"projects": {
"type": "array",
"items": {
"type": "object",
"properties": {
"id": {
"type": "number",
"description": "Project ID for projectId."
},
"name": {
"type": "string",
"description": "Project name."
}
},
"description": "Accessible project."
},
"description": "Accessible project choices. Select a projectId and retry."
},
"errorCode": {
"type": "string",
"description": "Failure code for recovery."
},
"retryable": {
"type": "boolean",
"description": "Whether an unchanged request can be retried."
},
"statusCode": {
"type": "number",
"description": "HTTP-style failure status."
},
"executionTime": {
"type": "string",
"description": "Elapsed time in seconds, with an s suffix."
}
},
"description": "Operation result envelope."
},
"annotations": {
"readOnlyHint": false,
"openWorldHint": true,
"idempotentHint": true,
"destructiveHint": true
}
}
The title clearly communicates the tool’s action and subject. Keep it concise.
Description82/100
Edit a global attribute value using native fields and targeted originals.
Edits one value under an existing attribute. Read list_woocommerce_attribute_terms first; use create_woocommerce_attribute_term for a new value and preserve unrelated native fields. Reuse the same attemptId and identical payload only for a retry of the same intended action; a new action needs a new key.
The description explains the capability, when to use it, and what to expect.
Inputs95/100
Input documentation gives an agent enough context to populate the arguments.
projectPublishingId
Atomic publishing connection ID from get_publishing_connections, not the provider site or post ID.
Clear enough to supply this argument.
id
Attribute-term ID from list_woocommerce_attribute_terms for the selected attributeId.
Clear enough to supply this argument.
attributeId
Global WooCommerce attribute identifier from list_woocommerce_attributes.
Clear enough to supply this argument.
attemptId
Caller-generated identifier for one intended mutation. Reuse it with the identical payload after an uncertain response; use a new identifier for a different intended action.
Clear enough to supply this argument.
fields
Explicit native fields to change. Omitted fields remain unchanged; read the current item and capabilities before constructing edits.
Clear enough to supply this argument.
expected
Original values read immediately before editing. Supply originals only for targeted fields so concurrent changes can be detected.
Clear enough to supply this argument.
projectId
Atomic project ID from list_projects. Omit to use the configured project; if asked to choose, select one of the accessible returned IDs.
Clear enough to supply this argument.
context
Short purpose of this call for the activity log. Exclude personal data and private source content.
Clear enough to supply this argument.
llm_model
Use the exact model ID executing this call, from runtime/system context, for usage attribution. Supply it on every Atomic MCP tool call, including discovery and feedback, and update it if the model changes. Use the model ID rather than the client app name. If unavailable, omit it; never guess or ask the user.
{
"type": "object",
"required": [
"success"
],
"properties": {
"url": {
"type": "string",
"description": "Link for resolving the failure or completing the operation."
},
"data": {
"type": "object",
"required": [
"data"
],
"properties": {
"data": {
"type": "object",
"required": [
"id"
],
"properties": {
"id": {
"type": "number",
"description": "Identifier of this returned resource. Use it for subsequent reads or edits of the same resource."
},
"link": {
"type": "string"
},
"name": {
"type": "string",
"description": "Human-readable name of this resource."
},
"slug": {
"type": "string",
"description": "Saved URL slug or native CMS slug of this item."
},
"type": {
"type": "string",
"description": "Kind of the returned item; determines how its operation-specific fields should be interpreted."
},
"count": {
"type": "number",
"description": "Number of records reported by the provider for this group."
},
"title": {
"type": "object",
"properties": {
"raw": {
"type": "string"
},
"rendered": {
"type": "string"
}
},
"description": "Display or content title of this returned item."
},
"parent": {
"type": "number",
"description": "Native parent record ID; zero denotes the provider root when applicable."
},
"status": {
"type": "string",
"description": "Current saved or execution state reported by the operation."
},
"caption": {
"type": "object",
"properties": {
"raw": {
"type": "string"
},
"rendered": {
"type": "string"
}
},
"description": "Native media caption with raw/rendered values when supplied."
},
"alt_text": {
"type": "string",
"description": "Saved accessible alternative text on the native WordPress media record."
},
"order_by": {
"type": "string",
"description": "Native ordering policy for WooCommerce attribute terms."
},
"taxonomy": {
"type": "string",
"description": "Native taxonomy slug owning this term."
},
"mime_type": {
"type": "string",
"description": "Native MIME type of this media record."
},
"media_type": {
"type": "string",
"description": "WordPress media category, such as image or file."
},
"source_url": {
"type": "string",
"description": "Provider URL of the media asset."
},
"description": {
"anyOf": [
{
"type": "string"
},
{
"type": "object",
"properties": {
"raw": {
"type": "string"
},
"rendered": {
"type": "string"
}
}
}
],
"description": "Saved description of this resource or its purpose."
},
"has_archives": {
"type": "boolean",
"description": "Whether this WooCommerce attribute enables public archives."
}
},
"description": "Result items or operation data inside this returned payload. Pagination fields describe only this result page."
},
"total": {
"type": "number",
"description": "Total number of matching items across all result pages."
},
"nextPage": {
"anyOf": [
{
"type": "null"
},
{
"type": "number"
}
],
"description": "Next page to request when more results exist; use the returned value rather than constructing a cursor."
},
"replayed": {
"type": "boolean",
"description": "Whether this response reuses the recorded outcome of an earlier attempt rather than performing a new write."
}
},
"description": "Operation data; optional fields may be absent."
},
"error": {
"type": "string",
"description": "Why the operation failed."
},
"details": {
"type": "object",
"description": "Diagnostics keyed by errorCode."
},
"message": {
"type": "string",
"description": "Outcome or recovery instructions. Project selection means no action ran."
},
"success": {
"type": "boolean",
"description": "Operation success; on false inspect error/errorCode."
},
"upgrade": {
"type": "object",
"description": "Plan-upgrade guidance for an unavailable capability."
},
"category": {
"type": "string",
"description": "Failure category, such as invalid_input or plan_required."
},
"expected": {
"type": "boolean",
"description": "Whether this is an anticipated access, input, plan or state failure."
},
"projects": {
"type": "array",
"items": {
"type": "object",
"properties": {
"id": {
"type": "number",
"description": "Project ID for projectId."
},
"name": {
"type": "string",
"description": "Project name."
}
},
"description": "Accessible project."
},
"description": "Accessible project choices. Select a projectId and retry."
},
"errorCode": {
"type": "string",
"description": "Failure code for recovery."
},
"retryable": {
"type": "boolean",
"description": "Whether an unchanged request can be retried."
},
"statusCode": {
"type": "number",
"description": "HTTP-style failure status."
},
"executionTime": {
"type": "string",
"description": "Elapsed time in seconds, with an s suffix."
}
},
"description": "Operation result envelope."
}
Original tool metadata
{
"name": "update_woocommerce_attribute_term",
"title": "Update WooCommerce attribute term",
"description": "Edit a global attribute value using native fields and targeted originals.\n\nEdits one value under an existing attribute. Read list_woocommerce_attribute_terms first; use create_woocommerce_attribute_term for a new value and preserve unrelated native fields. Reuse the same attemptId and identical payload only for a retry of the same intended action; a new action needs a new key.",
"inputSchema": {
"type": "object",
"required": [
"projectPublishingId",
"id",
"attributeId",
"attemptId",
"fields",
"expected"
],
"properties": {
"id": {
"type": "number",
"minimum": 1,
"description": "Attribute-term ID from list_woocommerce_attribute_terms for the selected attributeId."
},
"fields": {
"type": "object",
"description": "Explicit native fields to change. Omitted fields remain unchanged; read the current item and capabilities before constructing edits.",
"minProperties": 1,
"additionalProperties": true
},
"context": {
"type": "string",
"maxLength": 120,
"description": "Short purpose of this call for the activity log. Exclude personal data and private source content."
},
"expected": {
"type": "object",
"description": "Original values read immediately before editing. Supply originals only for targeted fields so concurrent changes can be detected.",
"additionalProperties": true
},
"attemptId": {
"type": "string",
"format": "uuid",
"description": "Caller-generated identifier for one intended mutation. Reuse it with the identical payload after an uncertain response; use a new identifier for a different intended action."
},
"llm_model": {
"type": "string",
"maxLength": 128,
"description": "Use the exact model ID executing this call, from runtime/system context, for usage attribution. Supply it on every Atomic MCP tool call, including discovery and feedback, and update it if the model changes. Use the model ID rather than the client app name. If unavailable, omit it; never guess or ask the user."
},
"projectId": {
"type": "number",
"description": "Atomic project ID from list_projects. Omit to use the configured project; if asked to choose, select one of the accessible returned IDs."
},
"attributeId": {
"type": "number",
"minimum": 1,
"description": "Global WooCommerce attribute identifier from list_woocommerce_attributes."
},
"projectPublishingId": {
"type": "number",
"minimum": 1,
"description": "Atomic publishing connection ID from get_publishing_connections, not the provider site or post ID."
}
},
"additionalProperties": false
},
"outputSchema": {
"type": "object",
"required": [
"success"
],
"properties": {
"url": {
"type": "string",
"description": "Link for resolving the failure or completing the operation."
},
"data": {
"type": "object",
"required": [
"data"
],
"properties": {
"data": {
"type": "object",
"required": [
"id"
],
"properties": {
"id": {
"type": "number",
"description": "Identifier of this returned resource. Use it for subsequent reads or edits of the same resource."
},
"link": {
"type": "string"
},
"name": {
"type": "string",
"description": "Human-readable name of this resource."
},
"slug": {
"type": "string",
"description": "Saved URL slug or native CMS slug of this item."
},
"type": {
"type": "string",
"description": "Kind of the returned item; determines how its operation-specific fields should be interpreted."
},
"count": {
"type": "number",
"description": "Number of records reported by the provider for this group."
},
"title": {
"type": "object",
"properties": {
"raw": {
"type": "string"
},
"rendered": {
"type": "string"
}
},
"description": "Display or content title of this returned item."
},
"parent": {
"type": "number",
"description": "Native parent record ID; zero denotes the provider root when applicable."
},
"status": {
"type": "string",
"description": "Current saved or execution state reported by the operation."
},
"caption": {
"type": "object",
"properties": {
"raw": {
"type": "string"
},
"rendered": {
"type": "string"
}
},
"description": "Native media caption with raw/rendered values when supplied."
},
"alt_text": {
"type": "string",
"description": "Saved accessible alternative text on the native WordPress media record."
},
"order_by": {
"type": "string",
"description": "Native ordering policy for WooCommerce attribute terms."
},
"taxonomy": {
"type": "string",
"description": "Native taxonomy slug owning this term."
},
"mime_type": {
"type": "string",
"description": "Native MIME type of this media record."
},
"media_type": {
"type": "string",
"description": "WordPress media category, such as image or file."
},
"source_url": {
"type": "string",
"description": "Provider URL of the media asset."
},
"description": {
"anyOf": [
{
"type": "string"
},
{
"type": "object",
"properties": {
"raw": {
"type": "string"
},
"rendered": {
"type": "string"
}
}
}
],
"description": "Saved description of this resource or its purpose."
},
"has_archives": {
"type": "boolean",
"description": "Whether this WooCommerce attribute enables public archives."
}
},
"description": "Result items or operation data inside this returned payload. Pagination fields describe only this result page."
},
"total": {
"type": "number",
"description": "Total number of matching items across all result pages."
},
"nextPage": {
"anyOf": [
{
"type": "null"
},
{
"type": "number"
}
],
"description": "Next page to request when more results exist; use the returned value rather than constructing a cursor."
},
"replayed": {
"type": "boolean",
"description": "Whether this response reuses the recorded outcome of an earlier attempt rather than performing a new write."
}
},
"description": "Operation data; optional fields may be absent."
},
"error": {
"type": "string",
"description": "Why the operation failed."
},
"details": {
"type": "object",
"description": "Diagnostics keyed by errorCode."
},
"message": {
"type": "string",
"description": "Outcome or recovery instructions. Project selection means no action ran."
},
"success": {
"type": "boolean",
"description": "Operation success; on false inspect error/errorCode."
},
"upgrade": {
"type": "object",
"description": "Plan-upgrade guidance for an unavailable capability."
},
"category": {
"type": "string",
"description": "Failure category, such as invalid_input or plan_required."
},
"expected": {
"type": "boolean",
"description": "Whether this is an anticipated access, input, plan or state failure."
},
"projects": {
"type": "array",
"items": {
"type": "object",
"properties": {
"id": {
"type": "number",
"description": "Project ID for projectId."
},
"name": {
"type": "string",
"description": "Project name."
}
},
"description": "Accessible project."
},
"description": "Accessible project choices. Select a projectId and retry."
},
"errorCode": {
"type": "string",
"description": "Failure code for recovery."
},
"retryable": {
"type": "boolean",
"description": "Whether an unchanged request can be retried."
},
"statusCode": {
"type": "number",
"description": "HTTP-style failure status."
},
"executionTime": {
"type": "string",
"description": "Elapsed time in seconds, with an s suffix."
}
},
"description": "Operation result envelope."
},
"annotations": {
"readOnlyHint": false,
"openWorldHint": true,
"idempotentHint": true,
"destructiveHint": true
}
}
The title clearly communicates the tool’s action and subject. Keep it concise.
Description89/100
Apply an explicitly authorized product patch to one existing product. Review is optional. Send targeted original values as expected; for multiple SEO targets send their originals as expectedSeo and native product originals as expected. Retain attemptId on retries. Fields unsupported by every target reject the patch; plugin-specific fields only update supporting targets. Check seoResults for independent persisted values and partial outcomes. Commerce fields change only when explicitly patched; URL remains unchanged. Prices are decimal strings, saleFrom/saleTo are UTC dates or null, stockQuantity may be null only with stock management disabled, dimensions require length/width/height strings, and images/categories/tags use existing IDs only. For variations supply parentProductId. Check success/outcome; never blindly retry unknown or conflict outcomes.
Read the native record and capabilities first. Supply originals for the targeted patch; stale state is a conflict, not permission to overwrite. Saved/staged content and verified public rendering are separate outcomes. Reuse the same attemptId and identical payload only for a retry of the same intended action; a new action needs a new key.
The description explains the capability, when to use it, and what to expect.
Inputs77/100
Remove validation rules already expressed in this field’s schema; describe its meaning and usage instead.
projectPublishingId
Atomic publishing connection ID from get_publishing_connections, not the provider site or post ID.
Clear enough to supply this argument.
seoPlugin
SEO plugin target. all updates every available supported plugin. Overrides the connection preference. Required for SEO writes when multiple plugins exist and no preference is saved.
Remove validation rules already expressed in this field’s schema; describe its meaning and usage instead.
parentProductId
Parent variable product ID when listing, reading or updating variations.
Clear enough to supply this argument.
productId
Existing WooCommerce product ID from list/get.
Clear enough to supply this argument.
attemptId
Caller-generated identifier for one intended mutation. Reuse it with the identical payload after an uncertain response; use a new identifier for a different intended action.
Clear enough to supply this argument.
patch › name
Human-readable name of the item being created or edited.
Clear enough to supply this argument.
patch › description
Human-readable purpose or description of this item. On edits, preserve existing text unless replacing it intentionally.
Clear enough to supply this argument.
patch › shortDescription
Short product summary displayed separately from the full product description.
Clear enough to supply this argument.
patch › sku
Merchant stock-keeping unit used to identify this product or variation.
Clear enough to supply this argument.
patch › regularPrice
Regular product price in the store currency, represented as a decimal string.
Clear enough to supply this argument.
patch › salePrice
Sale price in the store currency, represented as a decimal string. Use the documented empty value to clear a sale.
Clear enough to supply this argument.
patch › saleFrom
Start of the sale schedule, using the store's supported date/time representation; null clears the boundary.
Clarify units, where to obtain this value, or conventions not already expressed in the schema.
patch › saleTo
End of the sale schedule, using the store's supported date/time representation; null clears the boundary.
Clear enough to supply this argument.
patch › manageStock
Whether WooCommerce manages a stock quantity for this product.
Clear enough to supply this argument.
patch › stockQuantity
Available stock quantity when stock management is enabled; null clears the saved quantity where supported.
Resolve the mismatch between this description and its schema constraints.
patch › stockStatus
Product availability status, such as in stock or out of stock.
Resolve the mismatch between this description and its schema constraints.
patch › backorders
WooCommerce policy for allowing orders when stock is unavailable.
Explain the meaning of this value, not just its name.
patch › categories
Category assignments. Obtain existing category IDs from the site's taxonomy or product-listing tools; an edit replaces the targeted assignment field.
Clear enough to supply this argument.
patch › tags
Tag assignments. Obtain existing tag IDs from the site's taxonomy tools; an edit replaces the targeted assignment field.
Clear enough to supply this argument.
patch › images
Ordered product image assignments using the native WooCommerce item structure. Read the product before replacing this field.
Clear enough to supply this argument.
patch › attributes
Product attribute assignments using the native WooCommerce structure. Obtain global attribute IDs with list_woocommerce_attributes.
Clear enough to supply this argument.
patch › defaultAttributes
Default attribute selections for a variable product, using its existing attribute names or identifiers and option values.
Clear enough to supply this argument.
patch › weight
Product shipping weight in the store's configured weight unit.
Clear enough to supply this argument.
patch › dimensions
Product shipping dimensions in the store's configured dimension unit, using the native length/width/height structure.
Clear enough to supply this argument.
patch › taxStatus
WooCommerce tax treatment for the product.
Clear enough to supply this argument.
patch › taxClass
WooCommerce tax-class slug for the product.
Clear enough to supply this argument.
patch › shippingClass
Shipping-class slug used for this product.
Clear enough to supply this argument.
patch › catalogVisibility
Where the product appears in the store catalog and search.
Clear enough to supply this argument.
patch › featured
Whether WooCommerce marks the product as featured.
Clear enough to supply this argument.
patch › virtual
Whether the product is virtual and does not require shipping.
Clear enough to supply this argument.
patch › soldIndividually
Whether only one unit of this product may be purchased in an order.
Clear enough to supply this argument.
patch › upsellIds
Product IDs suggested as upgrades; obtain IDs from product discovery tools.
Clear enough to supply this argument.
patch › crossSellIds
Product IDs suggested as complementary purchases.
Clear enough to supply this argument.
patch › purchaseNote
Note shown to a customer after purchasing this product.
Clear enough to supply this argument.
patch › seoTitle
Search-result title managed by the selected SEO plugin.
Clear enough to supply this argument.
patch › metaDescription
Search-result description managed by the selected SEO plugin.
Clear enough to supply this argument.
patch › focusKeywords
SEO plugin focus-keyword phrases for this item.
Clear enough to supply this argument.
patch › canonicalUrl
Canonical URL declared for this item; use the page's intended canonical address.
Clear enough to supply this argument.
patch › openGraphTitle
Title used in Open Graph link previews.
Clear enough to supply this argument.
patch › openGraphDescription
Description used in Open Graph link previews.
Clear enough to supply this argument.
patch › openGraphImage
Image URL used in Open Graph link previews.
Clear enough to supply this argument.
patch › openGraphType
Open Graph content type for the page.
Clear enough to supply this argument.
patch › openGraphAuthor
Author value used in Open Graph metadata.
Clear enough to supply this argument.
patch › openGraphImageId
Existing CMS media identifier for the Open Graph image; obtain it from media discovery tools.
Clear enough to supply this argument.
patch › openGraphImageOverlayEnabled
Whether the SEO plugin's Open Graph image overlay is enabled.
Clear enough to supply this argument.
patch › openGraphImageOverlay
Native SEO-plugin configuration for the Open Graph image overlay.
Clear enough to supply this argument.
patch › twitterTitle
Title used for X/Twitter link cards.
Clear enough to supply this argument.
patch › twitterDescription
Description used for X/Twitter link cards.
Clear enough to supply this argument.
patch › twitterImage
Image URL used for X/Twitter link cards.
Clear enough to supply this argument.
patch › twitterImageId
Existing CMS media identifier for the X/Twitter card image.
Clear enough to supply this argument.
patch › twitterCardType
X/Twitter card format for this page.
Clear enough to supply this argument.
patch › twitterUseFacebook
Whether X/Twitter cards reuse the saved Open Graph values.
Clear enough to supply this argument.
patch › twitterAuthor
Author handle or attribution used in X/Twitter card metadata.
Clear enough to supply this argument.
patch › twitterImageOverlayEnabled
Whether the SEO plugin's X/Twitter image overlay is enabled.
Clear enough to supply this argument.
patch › twitterImageOverlay
Native SEO-plugin configuration for the X/Twitter image overlay.
Remove validation rules already expressed in this field’s schema; describe its meaning and usage instead.
patch › noindex
Whether to request that search engines exclude this page from their index.
Remove validation rules already expressed in this field’s schema; describe its meaning and usage instead.
patch › nofollow
Whether to request that search engines avoid following links on this page.
Remove validation rules already expressed in this field’s schema; describe its meaning and usage instead.
patch › excludeFromSitemap
Whether the SEO plugin excludes this item from its generated sitemap.
Remove validation rules already expressed in this field’s schema; describe its meaning and usage instead.
patch › seoEnabled
Whether the selected SEO plugin's metadata is enabled for this item.
Remove validation rules already expressed in this field’s schema; describe its meaning and usage instead.
patch › robots
Robots directives for the page, using the selected plugin's supported representation.
Remove validation rules already expressed in this field’s schema; describe its meaning and usage instead.
patch › advancedRobots
Additional robots directives supported by the selected SEO plugin.
Remove validation rules already expressed in this field’s schema; describe its meaning and usage instead.
patch › primaryCategory
Primary category identifier for SEO and breadcrumb metadata.
Remove validation rules already expressed in this field’s schema; describe its meaning and usage instead.
patch › breadcrumbTitle
Label used for this item in SEO-plugin breadcrumbs.
Remove validation rules already expressed in this field’s schema; describe its meaning and usage instead.
patch › pillarContent
Whether the SEO plugin marks this page as pillar or cornerstone content.
Remove validation rules already expressed in this field’s schema; describe its meaning and usage instead.
patch › hideSeoScore
Whether the SEO plugin hides its on-page SEO score indicator for this item.
Remove validation rules already expressed in this field’s schema; describe its meaning and usage instead.
patch › lockModifiedDate
Whether the SEO plugin should preserve the item's existing modified date when supported.
Remove validation rules already expressed in this field’s schema; describe its meaning and usage instead.
patch › redirectUrl
Destination URL for a redirect configured by the selected SEO plugin.
Remove validation rules already expressed in this field’s schema; describe its meaning and usage instead.
patch › schemaTypes
Structured-data types selected for this page in the SEO plugin.
Remove validation rules already expressed in this field’s schema; describe its meaning and usage instead.
patch › customSchema
Custom structured-data configuration accepted by the selected SEO plugin.
Remove validation rules already expressed in this field’s schema; describe its meaning and usage instead.
patch › schemas
Structured-data schema entries in the native SEO-plugin format.
Remove validation rules already expressed in this field’s schema; describe its meaning and usage instead.
patch › twitterAppCountry
Country code used for the X/Twitter app card.
Remove validation rules already expressed in this field’s schema; describe its meaning and usage instead.
patch › twitterAppDescription
App description used for the X/Twitter app card.
Remove validation rules already expressed in this field’s schema; describe its meaning and usage instead.
patch › twitterAppGoogleplayId
Google Play application identifier for the app card.
Remove validation rules already expressed in this field’s schema; describe its meaning and usage instead.
patch › twitterAppGoogleplayName
Android application name for the app card.
Remove validation rules already expressed in this field’s schema; describe its meaning and usage instead.
patch › twitterAppGoogleplayUrl
Google Play application URL for the app card.
Remove validation rules already expressed in this field’s schema; describe its meaning and usage instead.
patch › twitterAppIpadId
iPad App Store identifier for the app card.
Remove validation rules already expressed in this field’s schema; describe its meaning and usage instead.
patch › twitterAppIpadName
iPad application name for the app card.
Remove validation rules already expressed in this field’s schema; describe its meaning and usage instead.
patch › twitterAppIpadUrl
iPad App Store URL for the app card.
Remove validation rules already expressed in this field’s schema; describe its meaning and usage instead.
patch › twitterAppIphoneId
iPhone App Store identifier for the app card.
Remove validation rules already expressed in this field’s schema; describe its meaning and usage instead.
patch › twitterAppIphoneName
iPhone application name for the app card.
Remove validation rules already expressed in this field’s schema; describe its meaning and usage instead.
patch › twitterAppIphoneUrl
iPhone App Store URL for the app card.
Remove validation rules already expressed in this field’s schema; describe its meaning and usage instead.
patch › twitterPlayerSize
Video-player dimensions for an X/Twitter player card, using the plugin's native structure.
Remove validation rules already expressed in this field’s schema; describe its meaning and usage instead.
patch › twitterPlayerStream
Direct media stream URL for the X/Twitter player card.
Remove validation rules already expressed in this field’s schema; describe its meaning and usage instead.
patch › twitterPlayerStreamCtype
MIME content type of the player-card media stream.
Remove validation rules already expressed in this field’s schema; describe its meaning and usage instead.
patch › twitterPlayerUrl
Embeddable player URL for the X/Twitter player card.
Remove validation rules already expressed in this field’s schema; describe its meaning and usage instead.
expected › name
Human-readable name of the item being created or edited.
Remove validation rules already expressed in this field’s schema; describe its meaning and usage instead.
expected › description
Human-readable purpose or description of this item. On edits, preserve existing text unless replacing it intentionally.
Remove validation rules already expressed in this field’s schema; describe its meaning and usage instead.
expected › shortDescription
Short product summary displayed separately from the full product description.
Remove validation rules already expressed in this field’s schema; describe its meaning and usage instead.
expected › sku
Merchant stock-keeping unit used to identify this product or variation.
Remove validation rules already expressed in this field’s schema; describe its meaning and usage instead.
expected › regularPrice
Regular product price in the store currency, represented as a decimal string.
Remove validation rules already expressed in this field’s schema; describe its meaning and usage instead.
expected › salePrice
Sale price in the store currency, represented as a decimal string. Use the documented empty value to clear a sale.
Remove validation rules already expressed in this field’s schema; describe its meaning and usage instead.
expected › saleFrom
Start of the sale schedule, using the store's supported date/time representation; null clears the boundary.
Remove validation rules already expressed in this field’s schema; describe its meaning and usage instead.
expected › saleTo
End of the sale schedule, using the store's supported date/time representation; null clears the boundary.
Remove validation rules already expressed in this field’s schema; describe its meaning and usage instead.
expected › manageStock
Whether WooCommerce manages a stock quantity for this product.
Remove validation rules already expressed in this field’s schema; describe its meaning and usage instead.
expected › stockQuantity
Available stock quantity when stock management is enabled; null clears the saved quantity where supported.
Remove validation rules already expressed in this field’s schema; describe its meaning and usage instead.
expected › stockStatus
Product availability status, such as in stock or out of stock.
Remove validation rules already expressed in this field’s schema; describe its meaning and usage instead.
expected › backorders
WooCommerce policy for allowing orders when stock is unavailable.
Remove validation rules already expressed in this field’s schema; describe its meaning and usage instead.
expected › categories
Category assignments. Obtain existing category IDs from the site's taxonomy or product-listing tools; an edit replaces the targeted assignment field.
Remove validation rules already expressed in this field’s schema; describe its meaning and usage instead.
expected › tags
Tag assignments. Obtain existing tag IDs from the site's taxonomy tools; an edit replaces the targeted assignment field.
Remove validation rules already expressed in this field’s schema; describe its meaning and usage instead.
expected › images
Ordered product image assignments using the native WooCommerce item structure. Read the product before replacing this field.
Remove validation rules already expressed in this field’s schema; describe its meaning and usage instead.
expected › attributes
Product attribute assignments using the native WooCommerce structure. Obtain global attribute IDs with list_woocommerce_attributes.
Remove validation rules already expressed in this field’s schema; describe its meaning and usage instead.
expected › defaultAttributes
Default attribute selections for a variable product, using its existing attribute names or identifiers and option values.
Remove validation rules already expressed in this field’s schema; describe its meaning and usage instead.
expected › weight
Product shipping weight in the store's configured weight unit.
Remove validation rules already expressed in this field’s schema; describe its meaning and usage instead.
expected › dimensions
Product shipping dimensions in the store's configured dimension unit, using the native length/width/height structure.
Remove validation rules already expressed in this field’s schema; describe its meaning and usage instead.
expected › taxStatus
WooCommerce tax treatment for the product.
Remove validation rules already expressed in this field’s schema; describe its meaning and usage instead.
expected › taxClass
WooCommerce tax-class slug for the product.
Remove validation rules already expressed in this field’s schema; describe its meaning and usage instead.
expected › shippingClass
Shipping-class slug used for this product.
Remove validation rules already expressed in this field’s schema; describe its meaning and usage instead.
expected › catalogVisibility
Where the product appears in the store catalog and search.
Remove validation rules already expressed in this field’s schema; describe its meaning and usage instead.
expected › featured
Whether WooCommerce marks the product as featured.
Remove validation rules already expressed in this field’s schema; describe its meaning and usage instead.
expected › virtual
Whether the product is virtual and does not require shipping.
Remove validation rules already expressed in this field’s schema; describe its meaning and usage instead.
expected › soldIndividually
Whether only one unit of this product may be purchased in an order.
Remove validation rules already expressed in this field’s schema; describe its meaning and usage instead.
expected › upsellIds
Product IDs suggested as upgrades; obtain IDs from product discovery tools.
Remove validation rules already expressed in this field’s schema; describe its meaning and usage instead.
expected › crossSellIds
Product IDs suggested as complementary purchases.
Remove validation rules already expressed in this field’s schema; describe its meaning and usage instead.
expected › purchaseNote
Note shown to a customer after purchasing this product.
Remove validation rules already expressed in this field’s schema; describe its meaning and usage instead.
expected › seoTitle
Search-result title managed by the selected SEO plugin.
Remove validation rules already expressed in this field’s schema; describe its meaning and usage instead.
expected › metaDescription
Search-result description managed by the selected SEO plugin.
Explain the meaning of this value, not just its name.
expected › focusKeywords
SEO plugin focus-keyword phrases for this item.
Explain the meaning of this value, not just its name.
expected › canonicalUrl
Canonical URL declared for this item; use the page's intended canonical address.
Remove validation rules already expressed in this field’s schema; describe its meaning and usage instead.
expected › openGraphTitle
Title used in Open Graph link previews.
Remove validation rules already expressed in this field’s schema; describe its meaning and usage instead.
expected › openGraphDescription
Description used in Open Graph link previews.
Remove validation rules already expressed in this field’s schema; describe its meaning and usage instead.
expected › openGraphImage
Image URL used in Open Graph link previews.
Remove validation rules already expressed in this field’s schema; describe its meaning and usage instead.
expected › openGraphType
Open Graph content type for the page.
Remove validation rules already expressed in this field’s schema; describe its meaning and usage instead.
expected › openGraphAuthor
Author value used in Open Graph metadata.
Remove validation rules already expressed in this field’s schema; describe its meaning and usage instead.
expected › openGraphImageId
Existing CMS media identifier for the Open Graph image; obtain it from media discovery tools.
Remove validation rules already expressed in this field’s schema; describe its meaning and usage instead.
expected › openGraphImageOverlayEnabled
Whether the SEO plugin's Open Graph image overlay is enabled.
Remove validation rules already expressed in this field’s schema; describe its meaning and usage instead.
expected › openGraphImageOverlay
Native SEO-plugin configuration for the Open Graph image overlay.
Remove validation rules already expressed in this field’s schema; describe its meaning and usage instead.
expected › twitterTitle
Title used for X/Twitter link cards.
Remove validation rules already expressed in this field’s schema; describe its meaning and usage instead.
expected › twitterDescription
Description used for X/Twitter link cards.
Remove validation rules already expressed in this field’s schema; describe its meaning and usage instead.
expected › twitterImage
Image URL used for X/Twitter link cards.
Remove validation rules already expressed in this field’s schema; describe its meaning and usage instead.
expected › twitterImageId
Existing CMS media identifier for the X/Twitter card image.
Remove validation rules already expressed in this field’s schema; describe its meaning and usage instead.
expected › twitterCardType
X/Twitter card format for this page.
Remove validation rules already expressed in this field’s schema; describe its meaning and usage instead.
expected › twitterUseFacebook
Whether X/Twitter cards reuse the saved Open Graph values.
Remove validation rules already expressed in this field’s schema; describe its meaning and usage instead.
expected › twitterAuthor
Author handle or attribution used in X/Twitter card metadata.
Remove validation rules already expressed in this field’s schema; describe its meaning and usage instead.
expected › twitterImageOverlayEnabled
Whether the SEO plugin's X/Twitter image overlay is enabled.
Remove validation rules already expressed in this field’s schema; describe its meaning and usage instead.
expected › twitterImageOverlay
Native SEO-plugin configuration for the X/Twitter image overlay.
Remove validation rules already expressed in this field’s schema; describe its meaning and usage instead.
expected › noindex
Whether to request that search engines exclude this page from their index.
Remove validation rules already expressed in this field’s schema; describe its meaning and usage instead.
expected › nofollow
Whether to request that search engines avoid following links on this page.
Remove validation rules already expressed in this field’s schema; describe its meaning and usage instead.
expected › excludeFromSitemap
Whether the SEO plugin excludes this item from its generated sitemap.
Remove validation rules already expressed in this field’s schema; describe its meaning and usage instead.
expected › seoEnabled
Whether the selected SEO plugin's metadata is enabled for this item.
Remove validation rules already expressed in this field’s schema; describe its meaning and usage instead.
expected › robots
Robots directives for the page, using the selected plugin's supported representation.
Remove validation rules already expressed in this field’s schema; describe its meaning and usage instead.
expected › advancedRobots
Additional robots directives supported by the selected SEO plugin.
Remove validation rules already expressed in this field’s schema; describe its meaning and usage instead.
expected › primaryCategory
Primary category identifier for SEO and breadcrumb metadata.
Remove validation rules already expressed in this field’s schema; describe its meaning and usage instead.
expected › breadcrumbTitle
Label used for this item in SEO-plugin breadcrumbs.
Remove validation rules already expressed in this field’s schema; describe its meaning and usage instead.
expected › pillarContent
Whether the SEO plugin marks this page as pillar or cornerstone content.
Remove validation rules already expressed in this field’s schema; describe its meaning and usage instead.
expected › hideSeoScore
Whether the SEO plugin hides its on-page SEO score indicator for this item.
Remove validation rules already expressed in this field’s schema; describe its meaning and usage instead.
expected › lockModifiedDate
Whether the SEO plugin should preserve the item's existing modified date when supported.
Remove validation rules already expressed in this field’s schema; describe its meaning and usage instead.
expected › redirectUrl
Destination URL for a redirect configured by the selected SEO plugin.
Remove validation rules already expressed in this field’s schema; describe its meaning and usage instead.
expected › schemaTypes
Structured-data types selected for this page in the SEO plugin.
Remove validation rules already expressed in this field’s schema; describe its meaning and usage instead.
expected › customSchema
Custom structured-data configuration accepted by the selected SEO plugin.
Remove validation rules already expressed in this field’s schema; describe its meaning and usage instead.
expected › schemas
Structured-data schema entries in the native SEO-plugin format.
Remove validation rules already expressed in this field’s schema; describe its meaning and usage instead.
expected › twitterAppCountry
Country code used for the X/Twitter app card.
Remove validation rules already expressed in this field’s schema; describe its meaning and usage instead.
expected › twitterAppDescription
App description used for the X/Twitter app card.
Remove validation rules already expressed in this field’s schema; describe its meaning and usage instead.
expected › twitterAppGoogleplayId
Google Play application identifier for the app card.
Remove validation rules already expressed in this field’s schema; describe its meaning and usage instead.
expected › twitterAppGoogleplayName
Android application name for the app card.
Remove validation rules already expressed in this field’s schema; describe its meaning and usage instead.
expected › twitterAppGoogleplayUrl
Google Play application URL for the app card.
Remove validation rules already expressed in this field’s schema; describe its meaning and usage instead.
expected › twitterAppIpadId
iPad App Store identifier for the app card.
Remove validation rules already expressed in this field’s schema; describe its meaning and usage instead.
expected › twitterAppIpadName
iPad application name for the app card.
Remove validation rules already expressed in this field’s schema; describe its meaning and usage instead.
expected › twitterAppIpadUrl
iPad App Store URL for the app card.
Remove validation rules already expressed in this field’s schema; describe its meaning and usage instead.
expected › twitterAppIphoneId
iPhone App Store identifier for the app card.
Remove validation rules already expressed in this field’s schema; describe its meaning and usage instead.
expected › twitterAppIphoneName
iPhone application name for the app card.
Remove validation rules already expressed in this field’s schema; describe its meaning and usage instead.
expected › twitterAppIphoneUrl
iPhone App Store URL for the app card.
Remove validation rules already expressed in this field’s schema; describe its meaning and usage instead.
expected › twitterPlayerSize
Video-player dimensions for an X/Twitter player card, using the plugin's native structure.
Remove validation rules already expressed in this field’s schema; describe its meaning and usage instead.
expected › twitterPlayerStream
Direct media stream URL for the X/Twitter player card.
Remove validation rules already expressed in this field’s schema; describe its meaning and usage instead.
expected › twitterPlayerStreamCtype
MIME content type of the player-card media stream.
Remove validation rules already expressed in this field’s schema; describe its meaning and usage instead.
expected › twitterPlayerUrl
Embeddable player URL for the X/Twitter player card.
Remove validation rules already expressed in this field’s schema; describe its meaning and usage instead.
expectedSeo › squirrly › name
Human-readable name of the item being created or edited.
Remove validation rules already expressed in this field’s schema; describe its meaning and usage instead.
expectedSeo › squirrly › description
Human-readable purpose or description of this item. On edits, preserve existing text unless replacing it intentionally.
Remove validation rules already expressed in this field’s schema; describe its meaning and usage instead.
expectedSeo › squirrly › shortDescription
Short product summary displayed separately from the full product description.
Remove validation rules already expressed in this field’s schema; describe its meaning and usage instead.
expectedSeo › squirrly › sku
Merchant stock-keeping unit used to identify this product or variation.
Remove validation rules already expressed in this field’s schema; describe its meaning and usage instead.
expectedSeo › squirrly › regularPrice
Regular product price in the store currency, represented as a decimal string.
Remove validation rules already expressed in this field’s schema; describe its meaning and usage instead.
expectedSeo › squirrly › salePrice
Sale price in the store currency, represented as a decimal string. Use the documented empty value to clear a sale.
Remove validation rules already expressed in this field’s schema; describe its meaning and usage instead.
expectedSeo › squirrly › saleFrom
Start of the sale schedule, using the store's supported date/time representation; null clears the boundary.
Remove validation rules already expressed in this field’s schema; describe its meaning and usage instead.
expectedSeo › squirrly › saleTo
End of the sale schedule, using the store's supported date/time representation; null clears the boundary.
Remove validation rules already expressed in this field’s schema; describe its meaning and usage instead.
expectedSeo › squirrly › manageStock
Whether WooCommerce manages a stock quantity for this product.
Remove validation rules already expressed in this field’s schema; describe its meaning and usage instead.
expectedSeo › squirrly › stockQuantity
Available stock quantity when stock management is enabled; null clears the saved quantity where supported.
Remove validation rules already expressed in this field’s schema; describe its meaning and usage instead.
expectedSeo › squirrly › stockStatus
Product availability status, such as in stock or out of stock.
Remove validation rules already expressed in this field’s schema; describe its meaning and usage instead.
expectedSeo › squirrly › backorders
WooCommerce policy for allowing orders when stock is unavailable.
Remove validation rules already expressed in this field’s schema; describe its meaning and usage instead.
expectedSeo › squirrly › categories
Category assignments. Obtain existing category IDs from the site's taxonomy or product-listing tools; an edit replaces the targeted assignment field.
Remove validation rules already expressed in this field’s schema; describe its meaning and usage instead.
expectedSeo › squirrly › tags
Tag assignments. Obtain existing tag IDs from the site's taxonomy tools; an edit replaces the targeted assignment field.
Remove validation rules already expressed in this field’s schema; describe its meaning and usage instead.
expectedSeo › squirrly › images
Ordered product image assignments using the native WooCommerce item structure. Read the product before replacing this field.
Remove validation rules already expressed in this field’s schema; describe its meaning and usage instead.
expectedSeo › squirrly › attributes
Product attribute assignments using the native WooCommerce structure. Obtain global attribute IDs with list_woocommerce_attributes.
Remove validation rules already expressed in this field’s schema; describe its meaning and usage instead.
expectedSeo › squirrly › defaultAttributes
Default attribute selections for a variable product, using its existing attribute names or identifiers and option values.
Remove validation rules already expressed in this field’s schema; describe its meaning and usage instead.
expectedSeo › squirrly › weight
Product shipping weight in the store's configured weight unit.
Remove validation rules already expressed in this field’s schema; describe its meaning and usage instead.
expectedSeo › squirrly › dimensions
Product shipping dimensions in the store's configured dimension unit, using the native length/width/height structure.
Remove validation rules already expressed in this field’s schema; describe its meaning and usage instead.
expectedSeo › squirrly › taxStatus
WooCommerce tax treatment for the product.
Remove validation rules already expressed in this field’s schema; describe its meaning and usage instead.
expectedSeo › squirrly › taxClass
WooCommerce tax-class slug for the product.
Remove validation rules already expressed in this field’s schema; describe its meaning and usage instead.
expectedSeo › squirrly › shippingClass
Shipping-class slug used for this product.
Remove validation rules already expressed in this field’s schema; describe its meaning and usage instead.
expectedSeo › squirrly › catalogVisibility
Where the product appears in the store catalog and search.
Remove validation rules already expressed in this field’s schema; describe its meaning and usage instead.
expectedSeo › squirrly › featured
Whether WooCommerce marks the product as featured.
Remove validation rules already expressed in this field’s schema; describe its meaning and usage instead.
expectedSeo › squirrly › virtual
Whether the product is virtual and does not require shipping.
Remove validation rules already expressed in this field’s schema; describe its meaning and usage instead.
expectedSeo › squirrly › soldIndividually
Whether only one unit of this product may be purchased in an order.
Remove validation rules already expressed in this field’s schema; describe its meaning and usage instead.
expectedSeo › squirrly › upsellIds
Product IDs suggested as upgrades; obtain IDs from product discovery tools.
Remove validation rules already expressed in this field’s schema; describe its meaning and usage instead.
expectedSeo › squirrly › crossSellIds
Product IDs suggested as complementary purchases.
Remove validation rules already expressed in this field’s schema; describe its meaning and usage instead.
expectedSeo › squirrly › purchaseNote
Note shown to a customer after purchasing this product.
Remove validation rules already expressed in this field’s schema; describe its meaning and usage instead.
expectedSeo › squirrly › seoTitle
Search-result title managed by the selected SEO plugin.
Remove validation rules already expressed in this field’s schema; describe its meaning and usage instead.
expectedSeo › squirrly › metaDescription
Search-result description managed by the selected SEO plugin.
Remove validation rules already expressed in this field’s schema; describe its meaning and usage instead.
expectedSeo › squirrly › focusKeywords
SEO plugin focus-keyword phrases for this item.
Remove validation rules already expressed in this field’s schema; describe its meaning and usage instead.
expectedSeo › squirrly › canonicalUrl
Canonical URL declared for this item; use the page's intended canonical address.
Remove validation rules already expressed in this field’s schema; describe its meaning and usage instead.
expectedSeo › squirrly › openGraphTitle
Title used in Open Graph link previews.
Remove validation rules already expressed in this field’s schema; describe its meaning and usage instead.
expectedSeo › squirrly › openGraphDescription
Description used in Open Graph link previews.
Remove validation rules already expressed in this field’s schema; describe its meaning and usage instead.
expectedSeo › squirrly › openGraphImage
Image URL used in Open Graph link previews.
Remove validation rules already expressed in this field’s schema; describe its meaning and usage instead.
expectedSeo › squirrly › openGraphType
Open Graph content type for the page.
Remove validation rules already expressed in this field’s schema; describe its meaning and usage instead.
expectedSeo › squirrly › openGraphAuthor
Author value used in Open Graph metadata.
Remove validation rules already expressed in this field’s schema; describe its meaning and usage instead.
expectedSeo › squirrly › openGraphImageId
Existing CMS media identifier for the Open Graph image; obtain it from media discovery tools.
Remove validation rules already expressed in this field’s schema; describe its meaning and usage instead.
Whether the SEO plugin's Open Graph image overlay is enabled.
Remove validation rules already expressed in this field’s schema; describe its meaning and usage instead.
expectedSeo › yoast › openGraphImageOverlay
Native SEO-plugin configuration for the Open Graph image overlay.
Remove validation rules already expressed in this field’s schema; describe its meaning and usage instead.
expectedSeo › yoast › twitterTitle
Title used for X/Twitter link cards.
Remove validation rules already expressed in this field’s schema; describe its meaning and usage instead.
expectedSeo › yoast › twitterDescription
Description used for X/Twitter link cards.
Remove validation rules already expressed in this field’s schema; describe its meaning and usage instead.
expectedSeo › yoast › twitterImage
Image URL used for X/Twitter link cards.
Remove validation rules already expressed in this field’s schema; describe its meaning and usage instead.
expectedSeo › yoast › twitterImageId
Existing CMS media identifier for the X/Twitter card image.
Remove validation rules already expressed in this field’s schema; describe its meaning and usage instead.
expectedSeo › yoast › twitterCardType
X/Twitter card format for this page.
Remove validation rules already expressed in this field’s schema; describe its meaning and usage instead.
expectedSeo › yoast › twitterUseFacebook
Whether X/Twitter cards reuse the saved Open Graph values.
Remove validation rules already expressed in this field’s schema; describe its meaning and usage instead.
expectedSeo › yoast › twitterAuthor
Author handle or attribution used in X/Twitter card metadata.
Remove validation rules already expressed in this field’s schema; describe its meaning and usage instead.
expectedSeo › yoast › twitterImageOverlayEnabled
Whether the SEO plugin's X/Twitter image overlay is enabled.
Remove validation rules already expressed in this field’s schema; describe its meaning and usage instead.
expectedSeo › yoast › twitterImageOverlay
Native SEO-plugin configuration for the X/Twitter image overlay.
Remove validation rules already expressed in this field’s schema; describe its meaning and usage instead.
expectedSeo › yoast › noindex
Whether to request that search engines exclude this page from their index.
Remove validation rules already expressed in this field’s schema; describe its meaning and usage instead.
expectedSeo › yoast › nofollow
Whether to request that search engines avoid following links on this page.
Remove validation rules already expressed in this field’s schema; describe its meaning and usage instead.
expectedSeo › yoast › excludeFromSitemap
Whether the SEO plugin excludes this item from its generated sitemap.
Remove validation rules already expressed in this field’s schema; describe its meaning and usage instead.
expectedSeo › yoast › seoEnabled
Whether the selected SEO plugin's metadata is enabled for this item.
Remove validation rules already expressed in this field’s schema; describe its meaning and usage instead.
expectedSeo › yoast › robots
Robots directives for the page, using the selected plugin's supported representation.
Remove validation rules already expressed in this field’s schema; describe its meaning and usage instead.
expectedSeo › yoast › advancedRobots
Additional robots directives supported by the selected SEO plugin.
Remove validation rules already expressed in this field’s schema; describe its meaning and usage instead.
expectedSeo › yoast › primaryCategory
Primary category identifier for SEO and breadcrumb metadata.
Remove validation rules already expressed in this field’s schema; describe its meaning and usage instead.
expectedSeo › yoast › breadcrumbTitle
Label used for this item in SEO-plugin breadcrumbs.
Remove validation rules already expressed in this field’s schema; describe its meaning and usage instead.
expectedSeo › yoast › pillarContent
Whether the SEO plugin marks this page as pillar or cornerstone content.
Remove validation rules already expressed in this field’s schema; describe its meaning and usage instead.
expectedSeo › yoast › hideSeoScore
Whether the SEO plugin hides its on-page SEO score indicator for this item.
Remove validation rules already expressed in this field’s schema; describe its meaning and usage instead.
expectedSeo › yoast › lockModifiedDate
Whether the SEO plugin should preserve the item's existing modified date when supported.
Remove validation rules already expressed in this field’s schema; describe its meaning and usage instead.
expectedSeo › yoast › redirectUrl
Destination URL for a redirect configured by the selected SEO plugin.
Remove validation rules already expressed in this field’s schema; describe its meaning and usage instead.
expectedSeo › yoast › schemaTypes
Structured-data types selected for this page in the SEO plugin.
Remove validation rules already expressed in this field’s schema; describe its meaning and usage instead.
expectedSeo › yoast › customSchema
Custom structured-data configuration accepted by the selected SEO plugin.
Remove validation rules already expressed in this field’s schema; describe its meaning and usage instead.
expectedSeo › yoast › schemas
Structured-data schema entries in the native SEO-plugin format.
Remove validation rules already expressed in this field’s schema; describe its meaning and usage instead.
expectedSeo › yoast › twitterAppCountry
Country code used for the X/Twitter app card.
Remove validation rules already expressed in this field’s schema; describe its meaning and usage instead.
expectedSeo › yoast › twitterAppDescription
App description used for the X/Twitter app card.
Remove validation rules already expressed in this field’s schema; describe its meaning and usage instead.
expectedSeo › yoast › twitterAppGoogleplayId
Google Play application identifier for the app card.
Remove validation rules already expressed in this field’s schema; describe its meaning and usage instead.
expectedSeo › yoast › twitterAppGoogleplayName
Android application name for the app card.
Remove validation rules already expressed in this field’s schema; describe its meaning and usage instead.
expectedSeo › yoast › twitterAppGoogleplayUrl
Google Play application URL for the app card.
Remove validation rules already expressed in this field’s schema; describe its meaning and usage instead.
expectedSeo › yoast › twitterAppIpadId
iPad App Store identifier for the app card.
Remove validation rules already expressed in this field’s schema; describe its meaning and usage instead.
expectedSeo › yoast › twitterAppIpadName
iPad application name for the app card.
Remove validation rules already expressed in this field’s schema; describe its meaning and usage instead.
expectedSeo › yoast › twitterAppIpadUrl
iPad App Store URL for the app card.
Remove validation rules already expressed in this field’s schema; describe its meaning and usage instead.
expectedSeo › yoast › twitterAppIphoneId
iPhone App Store identifier for the app card.
Remove validation rules already expressed in this field’s schema; describe its meaning and usage instead.
expectedSeo › yoast › twitterAppIphoneName
iPhone application name for the app card.
Remove validation rules already expressed in this field’s schema; describe its meaning and usage instead.
expectedSeo › yoast › twitterAppIphoneUrl
iPhone App Store URL for the app card.
Remove validation rules already expressed in this field’s schema; describe its meaning and usage instead.
expectedSeo › yoast › twitterPlayerSize
Video-player dimensions for an X/Twitter player card, using the plugin's native structure.
Remove validation rules already expressed in this field’s schema; describe its meaning and usage instead.
expectedSeo › yoast › twitterPlayerStream
Direct media stream URL for the X/Twitter player card.
Remove validation rules already expressed in this field’s schema; describe its meaning and usage instead.
expectedSeo › yoast › twitterPlayerStreamCtype
MIME content type of the player-card media stream.
Remove validation rules already expressed in this field’s schema; describe its meaning and usage instead.
expectedSeo › yoast › twitterPlayerUrl
Embeddable player URL for the X/Twitter player card.
Remove validation rules already expressed in this field’s schema; describe its meaning and usage instead.
projectId
Atomic project ID from list_projects. Omit to use the configured project; if asked to choose, select one of the accessible returned IDs.
Remove validation rules already expressed in this field’s schema; describe its meaning and usage instead.
context
Short purpose of this call for the activity log. Exclude personal data and private source content.
Remove validation rules already expressed in this field’s schema; describe its meaning and usage instead.
llm_model
Use the exact model ID executing this call, from runtime/system context, for usage attribution. Supply it on every Atomic MCP tool call, including discovery and feedback, and update it if the model changes. Use the model ID rather than the client app name. If unavailable, omit it; never guess or ask the user.
Remove validation rules already expressed in this field’s schema; describe its meaning and usage instead.
{
"type": "object",
"required": [
"success"
],
"properties": {
"url": {
"type": "string",
"description": "Link for resolving the failure or completing the operation."
},
"data": {
"type": "object",
"required": [
"success",
"attemptId",
"outcome",
"productId",
"updatedFields"
],
"properties": {
"error": {
"type": "string",
"description": "Failure details reported by this operation or its provider."
},
"outcome": {
"enum": [
"failed",
"unknown",
"success",
"conflict",
"partial"
],
"type": "string"
},
"success": {
"type": "boolean",
"description": "Whether this nested operation completed successfully. Inspect the containing result for details."
},
"attemptId": {
"type": "string",
"description": "Identifier of the intended write attempt, used to reconcile retries with its recorded outcome."
},
"permalink": {
"type": "string",
"description": "Public CMS URL assigned to this content item; publication status determines whether it is live."
},
"productId": {
"type": "number"
},
"seoResults": {
"type": "object",
"properties": {}
},
"updatedFields": {
"type": "array",
"items": {
"enum": [
"name",
"description",
"metaDescription",
"shortDescription",
"sku",
"regularPrice",
"salePrice",
"saleFrom",
"saleTo",
"manageStock",
"stockQuantity",
"stockStatus",
"backorders",
"categories",
"tags",
"images",
"attributes",
"defaultAttributes",
"weight",
"dimensions",
"taxStatus",
"taxClass",
"shippingClass",
"catalogVisibility",
"featured",
"virtual",
"soldIndividually",
"upsellIds",
"crossSellIds",
"purchaseNote",
"seoTitle",
"focusKeywords",
"canonicalUrl",
"openGraphTitle",
"openGraphDescription",
"openGraphImage",
"openGraphType",
"openGraphAuthor",
"openGraphImageId",
"openGraphImageOverlayEnabled",
"openGraphImageOverlay",
"twitterTitle",
"twitterDescription",
"twitterImage",
"twitterImageId",
"twitterCardType",
"twitterUseFacebook",
"twitterAuthor",
"twitterImageOverlayEnabled",
"twitterImageOverlay",
"noindex",
"nofollow",
"excludeFromSitemap",
"seoEnabled",
"robots",
"advancedRobots",
"primaryCategory",
"breadcrumbTitle",
"pillarContent",
"hideSeoScore",
"lockModifiedDate",
"redirectUrl",
"schemaTypes",
"customSchema",
"schemas",
"trackingCode",
"seoScore",
"contentAiScore",
"twitterAppCountry",
"twitterAppDescription",
"twitterAppGoogleplayId",
"twitterAppGoogleplayName",
"twitterAppGoogleplayUrl",
"twitterAppIpadId",
"twitterAppIpadName",
"twitterAppIpadUrl",
"twitterAppIphoneId",
"twitterAppIphoneName",
"twitterAppIphoneUrl",
"twitterPlayerSize",
"twitterPlayerStream",
"twitterPlayerStreamCtype",
"twitterPlayerUrl"
],
"type": "string"
},
"description": "Fields confirmed as changed by this write."
},
"bookkeepingWarning": {
"type": "string"
}
},
"description": "Operation data; optional fields may be absent."
},
"error": {
"type": "string",
"description": "Why the operation failed."
},
"details": {
"type": "object",
"description": "Diagnostics keyed by errorCode."
},
"message": {
"type": "string",
"description": "Outcome or recovery instructions. Project selection means no action ran."
},
"success": {
"type": "boolean",
"description": "Operation success; on false inspect error/errorCode."
},
"upgrade": {
"type": "object",
"description": "Plan-upgrade guidance for an unavailable capability."
},
"category": {
"type": "string",
"description": "Failure category, such as invalid_input or plan_required."
},
"expected": {
"type": "boolean",
"description": "Whether this is an anticipated access, input, plan or state failure."
},
"projects": {
"type": "array",
"items": {
"type": "object",
"properties": {
"id": {
"type": "number",
"description": "Project ID for projectId."
},
"name": {
"type": "string",
"description": "Project name."
}
},
"description": "Accessible project."
},
"description": "Accessible project choices. Select a projectId and retry."
},
"errorCode": {
"type": "string",
"description": "Failure code for recovery."
},
"retryable": {
"type": "boolean",
"description": "Whether an unchanged request can be retried."
},
"statusCode": {
"type": "number",
"description": "HTTP-style failure status."
},
"executionTime": {
"type": "string",
"description": "Elapsed time in seconds, with an s suffix."
}
},
"description": "Operation result envelope."
}
Original tool metadata
{
"name": "update_woocommerce_product",
"title": "Update WooCommerce product",
"description": "Apply an explicitly authorized product patch to one existing product. Review is optional. Send targeted original values as expected; for multiple SEO targets send their originals as expectedSeo and native product originals as expected. Retain attemptId on retries. Fields unsupported by every target reject the patch; plugin-specific fields only update supporting targets. Check seoResults for independent persisted values and partial outcomes. Commerce fields change only when explicitly patched; URL remains unchanged. Prices are decimal strings, saleFrom/saleTo are UTC dates or null, stockQuantity may be null only with stock management disabled, dimensions require length/width/height strings, and images/categories/tags use existing IDs only. For variations supply parentProductId. Check success/outcome; never blindly retry unknown or conflict outcomes.\n\nRead the native record and capabilities first. Supply originals for the targeted patch; stale state is a conflict, not permission to overwrite. Saved/staged content and verified public rendering are separate outcomes. Reuse the same attemptId and identical payload only for a retry of the same intended action; a new action needs a new key.",
"inputSchema": {
"type": "object",
"required": [
"projectPublishingId",
"productId",
"attemptId",
"patch",
"expected"
],
"properties": {
"patch": {
"type": "object",
"properties": {
"sku": {
"type": "string",
"description": "Merchant stock-keeping unit used to identify this product or variation."
},
"name": {
"type": "string",
"description": "Human-readable name of the item being created or edited."
},
"tags": {
"type": "array",
"items": {
"type": "object",
"additionalProperties": true
},
"description": "Tag assignments. Obtain existing tag IDs from the site's taxonomy tools; an edit replaces the targeted assignment field."
},
"images": {
"type": "array",
"items": {
"type": "object",
"additionalProperties": true
},
"description": "Ordered product image assignments using the native WooCommerce item structure. Read the product before replacing this field."
},
"robots": {
"type": "array",
"items": {
"type": "string"
},
"description": "Robots directives for the page, using the selected plugin's supported representation."
},
"saleTo": {
"oneOf": [
{
"type": "string"
},
{
"type": "null"
}
],
"description": "End of the sale schedule, using the store's supported date/time representation; null clears the boundary."
},
"weight": {
"type": "string",
"description": "Product shipping weight in the store's configured weight unit."
},
"noindex": {
"type": "boolean",
"description": "Whether to request that search engines exclude this page from their index."
},
"schemas": {
"type": "array",
"items": {
"type": "object",
"additionalProperties": true
},
"description": "Structured-data schema entries in the native SEO-plugin format."
},
"virtual": {
"type": "boolean",
"description": "Whether the product is virtual and does not require shipping."
},
"featured": {
"type": "boolean",
"description": "Whether WooCommerce marks the product as featured."
},
"nofollow": {
"type": "boolean",
"description": "Whether to request that search engines avoid following links on this page."
},
"saleFrom": {
"oneOf": [
{
"type": "string"
},
{
"type": "null"
}
],
"description": "Start of the sale schedule, using the store's supported date/time representation; null clears the boundary."
},
"seoTitle": {
"type": "string",
"description": "Search-result title managed by the selected SEO plugin."
},
"taxClass": {
"type": "string",
"description": "WooCommerce tax-class slug for the product."
},
"salePrice": {
"type": "string",
"description": "Sale price in the store currency, represented as a decimal string. Use the documented empty value to clear a sale."
},
"taxStatus": {
"type": "string",
"description": "WooCommerce tax treatment for the product."
},
"upsellIds": {
"type": "array",
"items": {
"type": "number"
},
"description": "Product IDs suggested as upgrades; obtain IDs from product discovery tools."
},
"attributes": {
"type": "array",
"items": {
"type": "object",
"additionalProperties": true
},
"description": "Product attribute assignments using the native WooCommerce structure. Obtain global attribute IDs with list_woocommerce_attributes."
},
"backorders": {
"type": "string",
"description": "WooCommerce policy for allowing orders when stock is unavailable."
},
"categories": {
"type": "array",
"items": {
"type": "object",
"additionalProperties": true
},
"description": "Category assignments. Obtain existing category IDs from the site's taxonomy or product-listing tools; an edit replaces the targeted assignment field."
},
"dimensions": {
"type": "object",
"description": "Product shipping dimensions in the store's configured dimension unit, using the native length/width/height structure.",
"additionalProperties": true
},
"seoEnabled": {
"type": "boolean",
"description": "Whether the selected SEO plugin's metadata is enabled for this item."
},
"description": {
"type": "string",
"description": "Human-readable purpose or description of this item. On edits, preserve existing text unless replacing it intentionally."
},
"manageStock": {
"type": "boolean",
"description": "Whether WooCommerce manages a stock quantity for this product."
},
"redirectUrl": {
"type": "string",
"description": "Destination URL for a redirect configured by the selected SEO plugin."
},
"schemaTypes": {
"type": "array",
"items": {
"type": "string"
},
"description": "Structured-data types selected for this page in the SEO plugin."
},
"stockStatus": {
"type": "string",
"description": "Product availability status, such as in stock or out of stock."
},
"canonicalUrl": {
"type": "string",
"description": "Canonical URL declared for this item; use the page's intended canonical address."
},
"crossSellIds": {
"type": "array",
"items": {
"type": "number"
},
"description": "Product IDs suggested as complementary purchases."
},
"customSchema": {
"type": "string",
"description": "Custom structured-data configuration accepted by the selected SEO plugin."
},
"hideSeoScore": {
"type": "boolean",
"description": "Whether the SEO plugin hides its on-page SEO score indicator for this item."
},
"purchaseNote": {
"type": "string",
"description": "Note shown to a customer after purchasing this product."
},
"regularPrice": {
"type": "string",
"description": "Regular product price in the store currency, represented as a decimal string."
},
"twitterImage": {
"type": "string",
"description": "Image URL used for X/Twitter link cards."
},
"twitterTitle": {
"type": "string",
"description": "Title used for X/Twitter link cards."
},
"focusKeywords": {
"type": "string",
"description": "SEO plugin focus-keyword phrases for this item."
},
"openGraphType": {
"type": "string",
"description": "Open Graph content type for the page."
},
"pillarContent": {
"type": "boolean",
"description": "Whether the SEO plugin marks this page as pillar or cornerstone content."
},
"shippingClass": {
"type": "string",
"description": "Shipping-class slug used for this product."
},
"stockQuantity": {
"oneOf": [
{
"type": "number"
},
{
"type": "null"
}
],
"description": "Available stock quantity when stock management is enabled; null clears the saved quantity where supported."
},
"twitterAuthor": {
"type": "string",
"description": "Author handle or attribution used in X/Twitter card metadata."
},
"advancedRobots": {
"type": "object",
"description": "Additional robots directives supported by the selected SEO plugin.",
"additionalProperties": true
},
"openGraphImage": {
"type": "string",
"description": "Image URL used in Open Graph link previews."
},
"openGraphTitle": {
"type": "string",
"description": "Title used in Open Graph link previews."
},
"twitterImageId": {
"type": "number",
"description": "Existing CMS media identifier for the X/Twitter card image."
},
"breadcrumbTitle": {
"type": "string",
"description": "Label used for this item in SEO-plugin breadcrumbs."
},
"metaDescription": {
"type": "string",
"description": "Search-result description managed by the selected SEO plugin."
},
"openGraphAuthor": {
"type": "string",
"description": "Author value used in Open Graph metadata."
},
"primaryCategory": {
"type": "string",
"description": "Primary category identifier for SEO and breadcrumb metadata."
},
"twitterCardType": {
"type": "string",
"description": "X/Twitter card format for this page."
},
"lockModifiedDate": {
"type": "boolean",
"description": "Whether the SEO plugin should preserve the item's existing modified date when supported."
},
"openGraphImageId": {
"type": "number",
"description": "Existing CMS media identifier for the Open Graph image; obtain it from media discovery tools."
},
"shortDescription": {
"type": "string",
"description": "Short product summary displayed separately from the full product description."
},
"soldIndividually": {
"type": "boolean",
"description": "Whether only one unit of this product may be purchased in an order."
},
"twitterAppIpadId": {
"type": "string",
"description": "iPad App Store identifier for the app card."
},
"twitterPlayerUrl": {
"type": "string",
"description": "Embeddable player URL for the X/Twitter player card."
},
"catalogVisibility": {
"type": "string",
"description": "Where the product appears in the store catalog and search."
},
"defaultAttributes": {
"type": "array",
"items": {
"type": "object",
"additionalProperties": true
},
"description": "Default attribute selections for a variable product, using its existing attribute names or identifiers and option values."
},
"twitterAppCountry": {
"type": "string",
"description": "Country code used for the X/Twitter app card."
},
"twitterAppIpadUrl": {
"type": "string",
"description": "iPad App Store URL for the app card."
},
"twitterPlayerSize": {
"type": "string",
"description": "Video-player dimensions for an X/Twitter player card, using the plugin's native structure."
},
"excludeFromSitemap": {
"type": "boolean",
"description": "Whether the SEO plugin excludes this item from its generated sitemap."
},
"twitterAppIpadName": {
"type": "string",
"description": "iPad application name for the app card."
},
"twitterAppIphoneId": {
"type": "string",
"description": "iPhone App Store identifier for the app card."
},
"twitterDescription": {
"type": "string",
"description": "Description used for X/Twitter link cards."
},
"twitterUseFacebook": {
"type": "boolean",
"description": "Whether X/Twitter cards reuse the saved Open Graph values."
},
"twitterAppIphoneUrl": {
"type": "string",
"description": "iPhone App Store URL for the app card."
},
"twitterImageOverlay": {
"type": "string",
"description": "Native SEO-plugin configuration for the X/Twitter image overlay."
},
"twitterPlayerStream": {
"type": "string",
"description": "Direct media stream URL for the X/Twitter player card."
},
"openGraphDescription": {
"type": "string",
"description": "Description used in Open Graph link previews."
},
"twitterAppIphoneName": {
"type": "string",
"description": "iPhone application name for the app card."
},
"openGraphImageOverlay": {
"type": "string",
"description": "Native SEO-plugin configuration for the Open Graph image overlay."
},
"twitterAppDescription": {
"type": "string",
"description": "App description used for the X/Twitter app card."
},
"twitterAppGoogleplayId": {
"type": "string",
"description": "Google Play application identifier for the app card."
},
"twitterAppGoogleplayUrl": {
"type": "string",
"description": "Google Play application URL for the app card."
},
"twitterAppGoogleplayName": {
"type": "string",
"description": "Android application name for the app card."
},
"twitterPlayerStreamCtype": {
"type": "string",
"description": "MIME content type of the player-card media stream."
},
"twitterImageOverlayEnabled": {
"type": "boolean",
"description": "Whether the SEO plugin's X/Twitter image overlay is enabled."
},
"openGraphImageOverlayEnabled": {
"type": "boolean",
"description": "Whether the SEO plugin's Open Graph image overlay is enabled."
}
},
"description": "Explicit allowed fields only. Omission leaves unchanged; empty strings/lists/objects clear overrides. Structured fields replace the targeted field in full. Name must not be empty.",
"minProperties": 1,
"additionalProperties": false
},
"context": {
"type": "string",
"maxLength": 120,
"description": "Short purpose of this call for the activity log. Exclude personal data and private source content."
},
"expected": {
"type": "object",
"properties": {
"sku": {
"type": "string",
"description": "Merchant stock-keeping unit used to identify this product or variation."
},
"name": {
"type": "string",
"description": "Human-readable name of the item being created or edited."
},
"tags": {
"type": "array",
"items": {
"type": "object",
"additionalProperties": true
},
"description": "Tag assignments. Obtain existing tag IDs from the site's taxonomy tools; an edit replaces the targeted assignment field."
},
"images": {
"type": "array",
"items": {
"type": "object",
"additionalProperties": true
},
"description": "Ordered product image assignments using the native WooCommerce item structure. Read the product before replacing this field."
},
"robots": {
"type": "array",
"items": {
"type": "string"
},
"description": "Robots directives for the page, using the selected plugin's supported representation."
},
"saleTo": {
"oneOf": [
{
"type": "string"
},
{
"type": "null"
}
],
"description": "End of the sale schedule, using the store's supported date/time representation; null clears the boundary."
},
"weight": {
"type": "string",
"description": "Product shipping weight in the store's configured weight unit."
},
"noindex": {
"type": "boolean",
"description": "Whether to request that search engines exclude this page from their index."
},
"schemas": {
"type": "array",
"items": {
"type": "object",
"additionalProperties": true
},
"description": "Structured-data schema entries in the native SEO-plugin format."
},
"virtual": {
"type": "boolean",
"description": "Whether the product is virtual and does not require shipping."
},
"featured": {
"type": "boolean",
"description": "Whether WooCommerce marks the product as featured."
},
"nofollow": {
"type": "boolean",
"description": "Whether to request that search engines avoid following links on this page."
},
"saleFrom": {
"oneOf": [
{
"type": "string"
},
{
"type": "null"
}
],
"description": "Start of the sale schedule, using the store's supported date/time representation; null clears the boundary."
},
"seoTitle": {
"type": "string",
"description": "Search-result title managed by the selected SEO plugin."
},
"taxClass": {
"type": "string",
"description": "WooCommerce tax-class slug for the product."
},
"salePrice": {
"type": "string",
"description": "Sale price in the store currency, represented as a decimal string. Use the documented empty value to clear a sale."
},
"taxStatus": {
"type": "string",
"description": "WooCommerce tax treatment for the product."
},
"upsellIds": {
"type": "array",
"items": {
"type": "number"
},
"description": "Product IDs suggested as upgrades; obtain IDs from product discovery tools."
},
"attributes": {
"type": "array",
"items": {
"type": "object",
"additionalProperties": true
},
"description": "Product attribute assignments using the native WooCommerce structure. Obtain global attribute IDs with list_woocommerce_attributes."
},
"backorders": {
"type": "string",
"description": "WooCommerce policy for allowing orders when stock is unavailable."
},
"categories": {
"type": "array",
"items": {
"type": "object",
"additionalProperties": true
},
"description": "Category assignments. Obtain existing category IDs from the site's taxonomy or product-listing tools; an edit replaces the targeted assignment field."
},
"dimensions": {
"type": "object",
"description": "Product shipping dimensions in the store's configured dimension unit, using the native length/width/height structure.",
"additionalProperties": true
},
"seoEnabled": {
"type": "boolean",
"description": "Whether the selected SEO plugin's metadata is enabled for this item."
},
"description": {
"type": "string",
"description": "Human-readable purpose or description of this item. On edits, preserve existing text unless replacing it intentionally."
},
"manageStock": {
"type": "boolean",
"description": "Whether WooCommerce manages a stock quantity for this product."
},
"redirectUrl": {
"type": "string",
"description": "Destination URL for a redirect configured by the selected SEO plugin."
},
"schemaTypes": {
"type": "array",
"items": {
"type": "string"
},
"description": "Structured-data types selected for this page in the SEO plugin."
},
"stockStatus": {
"type": "string",
"description": "Product availability status, such as in stock or out of stock."
},
"canonicalUrl": {
"type": "string",
"description": "Canonical URL declared for this item; use the page's intended canonical address."
},
"crossSellIds": {
"type": "array",
"items": {
"type": "number"
},
"description": "Product IDs suggested as complementary purchases."
},
"customSchema": {
"type": "string",
"description": "Custom structured-data configuration accepted by the selected SEO plugin."
},
"hideSeoScore": {
"type": "boolean",
"description": "Whether the SEO plugin hides its on-page SEO score indicator for this item."
},
"purchaseNote": {
"type": "string",
"description": "Note shown to a customer after purchasing this product."
},
"regularPrice": {
"type": "string",
"description": "Regular product price in the store currency, represented as a decimal string."
},
"twitterImage": {
"type": "string",
"description": "Image URL used for X/Twitter link cards."
},
"twitterTitle": {
"type": "string",
"description": "Title used for X/Twitter link cards."
},
"focusKeywords": {
"type": "string",
"description": "SEO plugin focus-keyword phrases for this item."
},
"openGraphType": {
"type": "string",
"description": "Open Graph content type for the page."
},
"pillarContent": {
"type": "boolean",
"description": "Whether the SEO plugin marks this page as pillar or cornerstone content."
},
"shippingClass": {
"type": "string",
"description": "Shipping-class slug used for this product."
},
"stockQuantity": {
"oneOf": [
{
"type": "number"
},
{
"type": "null"
}
],
"description": "Available stock quantity when stock management is enabled; null clears the saved quantity where supported."
},
"twitterAuthor": {
"type": "string",
"description": "Author handle or attribution used in X/Twitter card metadata."
},
"advancedRobots": {
"type": "object",
"description": "Additional robots directives supported by the selected SEO plugin.",
"additionalProperties": true
},
"openGraphImage": {
"type": "string",
"description": "Image URL used in Open Graph link previews."
},
"openGraphTitle": {
"type": "string",
"description": "Title used in Open Graph link previews."
},
"twitterImageId": {
"type": "number",
"description": "Existing CMS media identifier for the X/Twitter card image."
},
"breadcrumbTitle": {
"type": "string",
"description": "Label used for this item in SEO-plugin breadcrumbs."
},
"metaDescription": {
"type": "string",
"description": "Search-result description managed by the selected SEO plugin."
},
"openGraphAuthor": {
"type": "string",
"description": "Author value used in Open Graph metadata."
},
"primaryCategory": {
"type": "string",
"description": "Primary category identifier for SEO and breadcrumb metadata."
},
"twitterCardType": {
"type": "string",
"description": "X/Twitter card format for this page."
},
"lockModifiedDate": {
"type": "boolean",
"description": "Whether the SEO plugin should preserve the item's existing modified date when supported."
},
"openGraphImageId": {
"type": "number",
"description": "Existing CMS media identifier for the Open Graph image; obtain it from media discovery tools."
},
"shortDescription": {
"type": "string",
"description": "Short product summary displayed separately from the full product description."
},
"soldIndividually": {
"type": "boolean",
"description": "Whether only one unit of this product may be purchased in an order."
},
"twitterAppIpadId": {
"type": "string",
"description": "iPad App Store identifier for the app card."
},
"twitterPlayerUrl": {
"type": "string",
"description": "Embeddable player URL for the X/Twitter player card."
},
"catalogVisibility": {
"type": "string",
"description": "Where the product appears in the store catalog and search."
},
"defaultAttributes": {
"type": "array",
"items": {
"type": "object",
"additionalProperties": true
},
"description": "Default attribute selections for a variable product, using its existing attribute names or identifiers and option values."
},
"twitterAppCountry": {
"type": "string",
"description": "Country code used for the X/Twitter app card."
},
"twitterAppIpadUrl": {
"type": "string",
"description": "iPad App Store URL for the app card."
},
"twitterPlayerSize": {
"type": "string",
"description": "Video-player dimensions for an X/Twitter player card, using the plugin's native structure."
},
"excludeFromSitemap": {
"type": "boolean",
"description": "Whether the SEO plugin excludes this item from its generated sitemap."
},
"twitterAppIpadName": {
"type": "string",
"description": "iPad application name for the app card."
},
"twitterAppIphoneId": {
"type": "string",
"description": "iPhone App Store identifier for the app card."
},
"twitterDescription": {
"type": "string",
"description": "Description used for X/Twitter link cards."
},
"twitterUseFacebook": {
"type": "boolean",
"description": "Whether X/Twitter cards reuse the saved Open Graph values."
},
"twitterAppIphoneUrl": {
"type": "string",
"description": "iPhone App Store URL for the app card."
},
"twitterImageOverlay": {
"type": "string",
"description": "Native SEO-plugin configuration for the X/Twitter image overlay."
},
"twitterPlayerStream": {
"type": "string",
"description": "Direct media stream URL for the X/Twitter player card."
},
"openGraphDescription": {
"type": "string",
"description": "Description used in Open Graph link previews."
},
"twitterAppIphoneName": {
"type": "string",
"description": "iPhone application name for the app card."
},
"openGraphImageOverlay": {
"type": "string",
"description": "Native SEO-plugin configuration for the Open Graph image overlay."
},
"twitterAppDescription": {
"type": "string",
"description": "App description used for the X/Twitter app card."
},
"twitterAppGoogleplayId": {
"type": "string",
"description": "Google Play application identifier for the app card."
},
"twitterAppGoogleplayUrl": {
"type": "string",
"description": "Google Play application URL for the app card."
},
"twitterAppGoogleplayName": {
"type": "string",
"description": "Android application name for the app card."
},
"twitterPlayerStreamCtype": {
"type": "string",
"description": "MIME content type of the player-card media stream."
},
"twitterImageOverlayEnabled": {
"type": "boolean",
"description": "Whether the SEO plugin's X/Twitter image overlay is enabled."
},
"openGraphImageOverlayEnabled": {
"type": "boolean",
"description": "Whether the SEO plugin's Open Graph image overlay is enabled."
}
},
"description": "Original targeted values. When expectedSeo is provided, include only native product fields here (empty object is allowed).",
"minProperties": 0,
"additionalProperties": false
},
"attemptId": {
"type": "string",
"format": "uuid",
"description": "Caller-generated identifier for one intended mutation. Reuse it with the identical payload after an uncertain response; use a new identifier for a different intended action."
},
"llm_model": {
"type": "string",
"maxLength": 128,
"description": "Use the exact model ID executing this call, from runtime/system context, for usage attribution. Supply it on every Atomic MCP tool call, including discovery and feedback, and update it if the model changes. Use the model ID rather than the client app name. If unavailable, omit it; never guess or ask the user."
},
"productId": {
"type": "number",
"minimum": 1,
"description": "Existing WooCommerce product ID from list/get."
},
"projectId": {
"type": "number",
"description": "Atomic project ID from list_projects. Omit to use the configured project; if asked to choose, select one of the accessible returned IDs."
},
"seoPlugin": {
"enum": [
"squirrly",
"rankMath",
"yoast",
"all"
],
"type": "string",
"description": "SEO plugin target. all updates every available supported plugin. Overrides the connection preference. Required for SEO writes when multiple plugins exist and no preference is saved."
},
"expectedSeo": {
"type": "object",
"properties": {
"yoast": {
"type": "object",
"properties": {
"sku": {
"type": "string",
"description": "Merchant stock-keeping unit used to identify this product or variation."
},
"name": {
"type": "string",
"description": "Human-readable name of the item being created or edited."
},
"tags": {
"type": "array",
"items": {
"type": "object",
"additionalProperties": true
},
"description": "Tag assignments. Obtain existing tag IDs from the site's taxonomy tools; an edit replaces the targeted assignment field."
},
"images": {
"type": "array",
"items": {
"type": "object",
"additionalProperties": true
},
"description": "Ordered product image assignments using the native WooCommerce item structure. Read the product before replacing this field."
},
"robots": {
"type": "array",
"items": {
"type": "string"
},
"description": "Robots directives for the page, using the selected plugin's supported representation."
},
"saleTo": {
"oneOf": [
{
"type": "string"
},
{
"type": "null"
}
],
"description": "End of the sale schedule, using the store's supported date/time representation; null clears the boundary."
},
"weight": {
"type": "string",
"description": "Product shipping weight in the store's configured weight unit."
},
"noindex": {
"type": "boolean",
"description": "Whether to request that search engines exclude this page from their index."
},
"schemas": {
"type": "array",
"items": {
"type": "object",
"additionalProperties": true
},
"description": "Structured-data schema entries in the native SEO-plugin format."
},
"virtual": {
"type": "boolean",
"description": "Whether the product is virtual and does not require shipping."
},
"featured": {
"type": "boolean",
"description": "Whether WooCommerce marks the product as featured."
},
"nofollow": {
"type": "boolean",
"description": "Whether to request that search engines avoid following links on this page."
},
"saleFrom": {
"oneOf": [
{
"type": "string"
},
{
"type": "null"
}
],
"description": "Start of the sale schedule, using the store's supported date/time representation; null clears the boundary."
},
"seoTitle": {
"type": "string",
"description": "Search-result title managed by the selected SEO plugin."
},
"taxClass": {
"type": "string",
"description": "WooCommerce tax-class slug for the product."
},
"salePrice": {
"type": "string",
"description": "Sale price in the store currency, represented as a decimal string. Use the documented empty value to clear a sale."
},
"taxStatus": {
"type": "string",
"description": "WooCommerce tax treatment for the product."
},
"upsellIds": {
"type": "array",
"items": {
"type": "number"
},
"description": "Product IDs suggested as upgrades; obtain IDs from product discovery tools."
},
"attributes": {
"type": "array",
"items": {
"type": "object",
"additionalProperties": true
},
"description": "Product attribute assignments using the native WooCommerce structure. Obtain global attribute IDs with list_woocommerce_attributes."
},
"backorders": {
"type": "string",
"description": "WooCommerce policy for allowing orders when stock is unavailable."
},
"categories": {
"type": "array",
"items": {
"type": "object",
"additionalProperties": true
},
"description": "Category assignments. Obtain existing category IDs from the site's taxonomy or product-listing tools; an edit replaces the targeted assignment field."
},
"dimensions": {
"type": "object",
"description": "Product shipping dimensions in the store's configured dimension unit, using the native length/width/height structure.",
"additionalProperties": true
},
"seoEnabled": {
"type": "boolean",
"description": "Whether the selected SEO plugin's metadata is enabled for this item."
},
"description": {
"type": "string",
"description": "Human-readable purpose or description of this item. On edits, preserve existing text unless replacing it intentionally."
},
"manageStock": {
"type": "boolean",
"description": "Whether WooCommerce manages a stock quantity for this product."
},
"redirectUrl": {
"type": "string",
"description": "Destination URL for a redirect configured by the selected SEO plugin."
},
"schemaTypes": {
"type": "array",
"items": {
"type": "string"
},
"description": "Structured-data types selected for this page in the SEO plugin."
},
"stockStatus": {
"type": "string",
"description": "Product availability status, such as in stock or out of stock."
},
"canonicalUrl": {
"type": "string",
"description": "Canonical URL declared for this item; use the page's intended canonical address."
},
"crossSellIds": {
"type": "array",
"items": {
"type": "number"
},
"description": "Product IDs suggested as complementary purchases."
},
"customSchema": {
"type": "string",
"description": "Custom structured-data configuration accepted by the selected SEO plugin."
},
"hideSeoScore": {
"type": "boolean",
"description": "Whether the SEO plugin hides its on-page SEO score indicator for this item."
},
"purchaseNote": {
"type": "string",
"description": "Note shown to a customer after purchasing this product."
},
"regularPrice": {
"type": "string",
"description": "Regular product price in the store currency, represented as a decimal string."
},
"twitterImage": {
"type": "string",
"description": "Image URL used for X/Twitter link cards."
},
"twitterTitle": {
"type": "string",
"description": "Title used for X/Twitter link cards."
},
"focusKeywords": {
"type": "string",
"description": "SEO plugin focus-keyword phrases for this item."
},
"openGraphType": {
"type": "string",
"description": "Open Graph content type for the page."
},
"pillarContent": {
"type": "boolean",
"description": "Whether the SEO plugin marks this page as pillar or cornerstone content."
},
"shippingClass": {
"type": "string",
"description": "Shipping-class slug used for this product."
},
"stockQuantity": {
"oneOf": [
{
"type": "number"
},
{
"type": "null"
}
],
"description": "Available stock quantity when stock management is enabled; null clears the saved quantity where supported."
},
"twitterAuthor": {
"type": "string",
"description": "Author handle or attribution used in X/Twitter card metadata."
},
"advancedRobots": {
"type": "object",
"description": "Additional robots directives supported by the selected SEO plugin.",
"additionalProperties": true
},
"openGraphImage": {
"type": "string",
"description": "Image URL used in Open Graph link previews."
},
"openGraphTitle": {
"type": "string",
"description": "Title used in Open Graph link previews."
},
"twitterImageId": {
"type": "number",
"description": "Existing CMS media identifier for the X/Twitter card image."
},
"breadcrumbTitle": {
"type": "string",
"description": "Label used for this item in SEO-plugin breadcrumbs."
},
"metaDescription": {
"type": "string",
"description": "Search-result description managed by the selected SEO plugin."
},
"openGraphAuthor": {
"type": "string",
"description": "Author value used in Open Graph metadata."
},
"primaryCategory": {
"type": "string",
"description": "Primary category identifier for SEO and breadcrumb metadata."
},
"twitterCardType": {
"type": "string",
"description": "X/Twitter card format for this page."
},
"lockModifiedDate": {
"type": "boolean",
"description": "Whether the SEO plugin should preserve the item's existing modified date when supported."
},
"openGraphImageId": {
"type": "number",
"description": "Existing CMS media identifier for the Open Graph image; obtain it from media discovery tools."
},
"shortDescription": {
"type": "string",
"description": "Short product summary displayed separately from the full product description."
},
"soldIndividually": {
"type": "boolean",
"description": "Whether only one unit of this product may be purchased in an order."
},
"twitterAppIpadId": {
"type": "string",
"description": "iPad App Store identifier for the app card."
},
"twitterPlayerUrl": {
"type": "string",
"description": "Embeddable player URL for the X/Twitter player card."
},
"catalogVisibility": {
"type": "string",
"description": "Where the product appears in the store catalog and search."
},
"defaultAttributes": {
"type": "array",
"items": {
"type": "object",
"additionalProperties": true
},
"description": "Default attribute selections for a variable product, using its existing attribute names or identifiers and option values."
},
"twitterAppCountry": {
"type": "string",
"description": "Country code used for the X/Twitter app card."
},
"twitterAppIpadUrl": {
"type": "string",
"description": "iPad App Store URL for the app card."
},
"twitterPlayerSize": {
"type": "string",
"description": "Video-player dimensions for an X/Twitter player card, using the plugin's native structure."
},
"excludeFromSitemap": {
"type": "boolean",
"description": "Whether the SEO plugin excludes this item from its generated sitemap."
},
"twitterAppIpadName": {
"type": "string",
"description": "iPad application name for the app card."
},
"twitterAppIphoneId": {
"type": "string",
"description": "iPhone App Store identifier for the app card."
},
"twitterDescription": {
"type": "string",
"description": "Description used for X/Twitter link cards."
},
"twitterUseFacebook": {
"type": "boolean",
"description": "Whether X/Twitter cards reuse the saved Open Graph values."
},
"twitterAppIphoneUrl": {
"type": "string",
"description": "iPhone App Store URL for the app card."
},
"twitterImageOverlay": {
"type": "string",
"description": "Native SEO-plugin configuration for the X/Twitter image overlay."
},
"twitterPlayerStream": {
"type": "string",
"description": "Direct media stream URL for the X/Twitter player card."
},
"openGraphDescription": {
"type": "string",
"description": "Description used in Open Graph link previews."
},
"twitterAppIphoneName": {
"type": "string",
"description": "iPhone application name for the app card."
},
"openGraphImageOverlay": {
"type": "string",
"description": "Native SEO-plugin configuration for the Open Graph image overlay."
},
"twitterAppDescription": {
"type": "string",
"description": "App description used for the X/Twitter app card."
},
"twitterAppGoogleplayId": {
"type": "string",
"description": "Google Play application identifier for the app card."
},
"twitterAppGoogleplayUrl": {
"type": "string",
"description": "Google Play application URL for the app card."
},
"twitterAppGoogleplayName": {
"type": "string",
"description": "Android application name for the app card."
},
"twitterPlayerStreamCtype": {
"type": "string",
"description": "MIME content type of the player-card media stream."
},
"twitterImageOverlayEnabled": {
"type": "boolean",
"description": "Whether the SEO plugin's X/Twitter image overlay is enabled."
},
"openGraphImageOverlayEnabled": {
"type": "boolean",
"description": "Whether the SEO plugin's Open Graph image overlay is enabled."
}
},
"description": "Explicit allowed fields only. Omission leaves unchanged; empty strings/lists/objects clear overrides. Structured fields replace the targeted field in full. Name must not be empty.",
"minProperties": 1,
"additionalProperties": false
},
"rankMath": {
"type": "object",
"properties": {
"sku": {
"type": "string",
"description": "Merchant stock-keeping unit used to identify this product or variation."
},
"name": {
"type": "string",
"description": "Human-readable name of the item being created or edited."
},
"tags": {
"type": "array",
"items": {
"type": "object",
"additionalProperties": true
},
"description": "Tag assignments. Obtain existing tag IDs from the site's taxonomy tools; an edit replaces the targeted assignment field."
},
"images": {
"type": "array",
"items": {
"type": "object",
"additionalProperties": true
},
"description": "Ordered product image assignments using the native WooCommerce item structure. Read the product before replacing this field."
},
"robots": {
"type": "array",
"items": {
"type": "string"
},
"description": "Robots directives for the page, using the selected plugin's supported representation."
},
"saleTo": {
"oneOf": [
{
"type": "string"
},
{
"type": "null"
}
],
"description": "End of the sale schedule, using the store's supported date/time representation; null clears the boundary."
},
"weight": {
"type": "string",
"description": "Product shipping weight in the store's configured weight unit."
},
"noindex": {
"type": "boolean",
"description": "Whether to request that search engines exclude this page from their index."
},
"schemas": {
"type": "array",
"items": {
"type": "object",
"additionalProperties": true
},
"description": "Structured-data schema entries in the native SEO-plugin format."
},
"virtual": {
"type": "boolean",
"description": "Whether the product is virtual and does not require shipping."
},
"featured": {
"type": "boolean",
"description": "Whether WooCommerce marks the product as featured."
},
"nofollow": {
"type": "boolean",
"description": "Whether to request that search engines avoid following links on this page."
},
"saleFrom": {
"oneOf": [
{
"type": "string"
},
{
"type": "null"
}
],
"description": "Start of the sale schedule, using the store's supported date/time representation; null clears the boundary."
},
"seoTitle": {
"type": "string",
"description": "Search-result title managed by the selected SEO plugin."
},
"taxClass": {
"type": "string",
"description": "WooCommerce tax-class slug for the product."
},
"salePrice": {
"type": "string",
"description": "Sale price in the store currency, represented as a decimal string. Use the documented empty value to clear a sale."
},
"taxStatus": {
"type": "string",
"description": "WooCommerce tax treatment for the product."
},
"upsellIds": {
"type": "array",
"items": {
"type": "number"
},
"description": "Product IDs suggested as upgrades; obtain IDs from product discovery tools."
},
"attributes": {
"type": "array",
"items": {
"type": "object",
"additionalProperties": true
},
"description": "Product attribute assignments using the native WooCommerce structure. Obtain global attribute IDs with list_woocommerce_attributes."
},
"backorders": {
"type": "string",
"description": "WooCommerce policy for allowing orders when stock is unavailable."
},
"categories": {
"type": "array",
"items": {
"type": "object",
"additionalProperties": true
},
"description": "Category assignments. Obtain existing category IDs from the site's taxonomy or product-listing tools; an edit replaces the targeted assignment field."
},
"dimensions": {
"type": "object",
"description": "Product shipping dimensions in the store's configured dimension unit, using the native length/width/height structure.",
"additionalProperties": true
},
"seoEnabled": {
"type": "boolean",
"description": "Whether the selected SEO plugin's metadata is enabled for this item."
},
"description": {
"type": "string",
"description": "Human-readable purpose or description of this item. On edits, preserve existing text unless replacing it intentionally."
},
"manageStock": {
"type": "boolean",
"description": "Whether WooCommerce manages a stock quantity for this product."
},
"redirectUrl": {
"type": "string",
"description": "Destination URL for a redirect configured by the selected SEO plugin."
},
"schemaTypes": {
"type": "array",
"items": {
"type": "string"
},
"description": "Structured-data types selected for this page in the SEO plugin."
},
"stockStatus": {
"type": "string",
"description": "Product availability status, such as in stock or out of stock."
},
"canonicalUrl": {
"type": "string",
"description": "Canonical URL declared for this item; use the page's intended canonical address."
},
"crossSellIds": {
"type": "array",
"items": {
"type": "number"
},
"description": "Product IDs suggested as complementary purchases."
},
"customSchema": {
"type": "string",
"description": "Custom structured-data configuration accepted by the selected SEO plugin."
},
"hideSeoScore": {
"type": "boolean",
"description": "Whether the SEO plugin hides its on-page SEO score indicator for this item."
},
"purchaseNote": {
"type": "string",
"description": "Note shown to a customer after purchasing this product."
},
"regularPrice": {
"type": "string",
"description": "Regular product price in the store currency, represented as a decimal string."
},
"twitterImage": {
"type": "string",
"description": "Image URL used for X/Twitter link cards."
},
"twitterTitle": {
"type": "string",
"description": "Title used for X/Twitter link cards."
},
"focusKeywords": {
"type": "string",
"description": "SEO plugin focus-keyword phrases for this item."
},
"openGraphType": {
"type": "string",
"description": "Open Graph content type for the page."
},
"pillarContent": {
"type": "boolean",
"description": "Whether the SEO plugin marks this page as pillar or cornerstone content."
},
"shippingClass": {
"type": "string",
"description": "Shipping-class slug used for this product."
},
"stockQuantity": {
"oneOf": [
{
"type": "number"
},
{
"type": "null"
}
],
"description": "Available stock quantity when stock management is enabled; null clears the saved quantity where supported."
},
"twitterAuthor": {
"type": "string",
"description": "Author handle or attribution used in X/Twitter card metadata."
},
"advancedRobots": {
"type": "object",
"description": "Additional robots directives supported by the selected SEO plugin.",
"additionalProperties": true
},
"openGraphImage": {
"type": "string",
"description": "Image URL used in Open Graph link previews."
},
"openGraphTitle": {
"type": "string",
"description": "Title used in Open Graph link previews."
},
"twitterImageId": {
"type": "number",
"description": "Existing CMS media identifier for the X/Twitter card image."
},
"breadcrumbTitle": {
"type": "string",
"description": "Label used for this item in SEO-plugin breadcrumbs."
},
"metaDescription": {
"type": "string",
"description": "Search-result description managed by the selected SEO plugin."
},
"openGraphAuthor": {
"type": "string",
"description": "Author value used in Open Graph metadata."
},
"primaryCategory": {
"type": "string",
"description": "Primary category identifier for SEO and breadcrumb metadata."
},
"twitterCardType": {
"type": "string",
"description": "X/Twitter card format for this page."
},
"lockModifiedDate": {
"type": "boolean",
"description": "Whether the SEO plugin should preserve the item's existing modified date when supported."
},
"openGraphImageId": {
"type": "number",
"description": "Existing CMS media identifier for the Open Graph image; obtain it from media discovery tools."
},
"shortDescription": {
"type": "string",
"description": "Short product summary displayed separately from the full product description."
},
"soldIndividually": {
"type": "boolean",
"description": "Whether only one unit of this product may be purchased in an order."
},
"twitterAppIpadId": {
"type": "string",
"description": "iPad App Store identifier for the app card."
},
"twitterPlayerUrl": {
"type": "string",
"description": "Embeddable player URL for the X/Twitter player card."
},
"catalogVisibility": {
"type": "string",
"description": "Where the product appears in the store catalog and search."
},
"defaultAttributes": {
"type": "array",
"items": {
"type": "object",
"additionalProperties": true
},
"description": "Default attribute selections for a variable product, using its existing attribute names or identifiers and option values."
},
"twitterAppCountry": {
"type": "string",
"description": "Country code used for the X/Twitter app card."
},
"twitterAppIpadUrl": {
"type": "string",
"description": "iPad App Store URL for the app card."
},
"twitterPlayerSize": {
"type": "string",
"description": "Video-player dimensions for an X/Twitter player card, using the plugin's native structure."
},
"excludeFromSitemap": {
"type": "boolean",
"description": "Whether the SEO plugin excludes this item from its generated sitemap."
},
"twitterAppIpadName": {
"type": "string",
"description": "iPad application name for the app card."
},
"twitterAppIphoneId": {
"type": "string",
"description": "iPhone App Store identifier for the app card."
},
"twitterDescription": {
"type": "string",
"description": "Description used for X/Twitter link cards."
},
"twitterUseFacebook": {
"type": "boolean",
"description": "Whether X/Twitter cards reuse the saved Open Graph values."
},
"twitterAppIphoneUrl": {
"type": "string",
"description": "iPhone App Store URL for the app card."
},
"twitterImageOverlay": {
"type": "string",
"description": "Native SEO-plugin configuration for the X/Twitter image overlay."
},
"twitterPlayerStream": {
"type": "string",
"description": "Direct media stream URL for the X/Twitter player card."
},
"openGraphDescription": {
"type": "string",
"description": "Description used in Open Graph link previews."
},
"twitterAppIphoneName": {
"type": "string",
"description": "iPhone application name for the app card."
},
"openGraphImageOverlay": {
"type": "string",
"description": "Native SEO-plugin configuration for the Open Graph image overlay."
},
"twitterAppDescription": {
"type": "string",
"description": "App description used for the X/Twitter app card."
},
"twitterAppGoogleplayId": {
"type": "string",
"description": "Google Play application identifier for the app card."
},
"twitterAppGoogleplayUrl": {
"type": "string",
"description": "Google Play application URL for the app card."
},
"twitterAppGoogleplayName": {
"type": "string",
"description": "Android application name for the app card."
},
"twitterPlayerStreamCtype": {
"type": "string",
"description": "MIME content type of the player-card media stream."
},
"twitterImageOverlayEnabled": {
"type": "boolean",
"description": "Whether the SEO plugin's X/Twitter image overlay is enabled."
},
"openGraphImageOverlayEnabled": {
"type": "boolean",
"description": "Whether the SEO plugin's Open Graph image overlay is enabled."
}
},
"description": "Explicit allowed fields only. Omission leaves unchanged; empty strings/lists/objects clear overrides. Structured fields replace the targeted field in full. Name must not be empty.",
"minProperties": 1,
"additionalProperties": false
},
"squirrly": {
"type": "object",
"properties": {
"sku": {
"type": "string",
"description": "Merchant stock-keeping unit used to identify this product or variation."
},
"name": {
"type": "string",
"description": "Human-readable name of the item being created or edited."
},
"tags": {
"type": "array",
"items": {
"type": "object",
"additionalProperties": true
},
"description": "Tag assignments. Obtain existing tag IDs from the site's taxonomy tools; an edit replaces the targeted assignment field."
},
"images": {
"type": "array",
"items": {
"type": "object",
"additionalProperties": true
},
"description": "Ordered product image assignments using the native WooCommerce item structure. Read the product before replacing this field."
},
"robots": {
"type": "array",
"items": {
"type": "string"
},
"description": "Robots directives for the page, using the selected plugin's supported representation."
},
"saleTo": {
"oneOf": [
{
"type": "string"
},
{
"type": "null"
}
],
"description": "End of the sale schedule, using the store's supported date/time representation; null clears the boundary."
},
"weight": {
"type": "string",
"description": "Product shipping weight in the store's configured weight unit."
},
"noindex": {
"type": "boolean",
"description": "Whether to request that search engines exclude this page from their index."
},
"schemas": {
"type": "array",
"items": {
"type": "object",
"additionalProperties": true
},
"description": "Structured-data schema entries in the native SEO-plugin format."
},
"virtual": {
"type": "boolean",
"description": "Whether the product is virtual and does not require shipping."
},
"featured": {
"type": "boolean",
"description": "Whether WooCommerce marks the product as featured."
},
"nofollow": {
"type": "boolean",
"description": "Whether to request that search engines avoid following links on this page."
},
"saleFrom": {
"oneOf": [
{
"type": "string"
},
{
"type": "null"
}
],
"description": "Start of the sale schedule, using the store's supported date/time representation; null clears the boundary."
},
"seoTitle": {
"type": "string",
"description": "Search-result title managed by the selected SEO plugin."
},
"taxClass": {
"type": "string",
"description": "WooCommerce tax-class slug for the product."
},
"salePrice": {
"type": "string",
"description": "Sale price in the store currency, represented as a decimal string. Use the documented empty value to clear a sale."
},
"taxStatus": {
"type": "string",
"description": "WooCommerce tax treatment for the product."
},
"upsellIds": {
"type": "array",
"items": {
"type": "number"
},
"description": "Product IDs suggested as upgrades; obtain IDs from product discovery tools."
},
"attributes": {
"type": "array",
"items": {
"type": "object",
"additionalProperties": true
},
"description": "Product attribute assignments using the native WooCommerce structure. Obtain global attribute IDs with list_woocommerce_attributes."
},
"backorders": {
"type": "string",
"description": "WooCommerce policy for allowing orders when stock is unavailable."
},
"categories": {
"type": "array",
"items": {
"type": "object",
"additionalProperties": true
},
"description": "Category assignments. Obtain existing category IDs from the site's taxonomy or product-listing tools; an edit replaces the targeted assignment field."
},
"dimensions": {
"type": "object",
"description": "Product shipping dimensions in the store's configured dimension unit, using the native length/width/height structure.",
"additionalProperties": true
},
"seoEnabled": {
"type": "boolean",
"description": "Whether the selected SEO plugin's metadata is enabled for this item."
},
"description": {
"type": "string",
"description": "Human-readable purpose or description of this item. On edits, preserve existing text unless replacing it intentionally."
},
"manageStock": {
"type": "boolean",
"description": "Whether WooCommerce manages a stock quantity for this product."
},
"redirectUrl": {
"type": "string",
"description": "Destination URL for a redirect configured by the selected SEO plugin."
},
"schemaTypes": {
"type": "array",
"items": {
"type": "string"
},
"description": "Structured-data types selected for this page in the SEO plugin."
},
"stockStatus": {
"type": "string",
"description": "Product availability status, such as in stock or out of stock."
},
"canonicalUrl": {
"type": "string",
"description": "Canonical URL declared for this item; use the page's intended canonical address."
},
"crossSellIds": {
"type": "array",
"items": {
"type": "number"
},
"description": "Product IDs suggested as complementary purchases."
},
"customSchema": {
"type": "string",
"description": "Custom structured-data configuration accepted by the selected SEO plugin."
},
"hideSeoScore": {
"type": "boolean",
"description": "Whether the SEO plugin hides its on-page SEO score indicator for this item."
},
"purchaseNote": {
"type": "string",
"description": "Note shown to a customer after purchasing this product."
},
"regularPrice": {
"type": "string",
"description": "Regular product price in the store currency, represented as a decimal string."
},
"twitterImage": {
"type": "string",
"description": "Image URL used for X/Twitter link cards."
},
"twitterTitle": {
"type": "string",
"description": "Title used for X/Twitter link cards."
},
"focusKeywords": {
"type": "string",
"description": "SEO plugin focus-keyword phrases for this item."
},
"openGraphType": {
"type": "string",
"description": "Open Graph content type for the page."
},
"pillarContent": {
"type": "boolean",
"description": "Whether the SEO plugin marks this page as pillar or cornerstone content."
},
"shippingClass": {
"type": "string",
"description": "Shipping-class slug used for this product."
},
"stockQuantity": {
"oneOf": [
{
"type": "number"
},
{
"type": "null"
}
],
"description": "Available stock quantity when stock management is enabled; null clears the saved quantity where supported."
},
"twitterAuthor": {
"type": "string",
"description": "Author handle or attribution used in X/Twitter card metadata."
},
"advancedRobots": {
"type": "object",
"description": "Additional robots directives supported by the selected SEO plugin.",
"additionalProperties": true
},
"openGraphImage": {
"type": "string",
"description": "Image URL used in Open Graph link previews."
},
"openGraphTitle": {
"type": "string",
"description": "Title used in Open Graph link previews."
},
"twitterImageId": {
"type": "number",
"description": "Existing CMS media identifier for the X/Twitter card image."
},
"breadcrumbTitle": {
"type": "string",
"description": "Label used for this item in SEO-plugin breadcrumbs."
},
"metaDescription": {
"type": "string",
"description": "Search-result description managed by the selected SEO plugin."
},
"openGraphAuthor": {
"type": "string",
"description": "Author value used in Open Graph metadata."
},
"primaryCategory": {
"type": "string",
"description": "Primary category identifier for SEO and breadcrumb metadata."
},
"twitterCardType": {
"type": "string",
"description": "X/Twitter card format for this page."
},
"lockModifiedDate": {
"type": "boolean",
"description": "Whether the SEO plugin should preserve the item's existing modified date when supported."
},
"openGraphImageId": {
"type": "number",
"description": "Existing CMS media identifier for the Open Graph image; obtain it from media discovery tools."
},
"shortDescription": {
"type": "string",
"description": "Short product summary displayed separately from the full product description."
},
"soldIndividually": {
"type": "boolean",
"description": "Whether only one unit of this product may be purchased in an order."
},
"twitterAppIpadId": {
"type": "string",
"description": "iPad App Store identifier for the app card."
},
"twitterPlayerUrl": {
"type": "string",
"description": "Embeddable player URL for the X/Twitter player card."
},
"catalogVisibility": {
"type": "string",
"description": "Where the product appears in the store catalog and search."
},
"defaultAttributes": {
"type": "array",
"items": {
"type": "object",
"additionalProperties": true
},
"description": "Default attribute selections for a variable product, using its existing attribute names or identifiers and option values."
},
"twitterAppCountry": {
"type": "string",
"description": "Country code used for the X/Twitter app card."
},
"twitterAppIpadUrl": {
"type": "string",
"description": "iPad App Store URL for the app card."
},
"twitterPlayerSize": {
"type": "string",
"description": "Video-player dimensions for an X/Twitter player card, using the plugin's native structure."
},
"excludeFromSitemap": {
"type": "boolean",
"description": "Whether the SEO plugin excludes this item from its generated sitemap."
},
"twitterAppIpadName": {
"type": "string",
"description": "iPad application name for the app card."
},
"twitterAppIphoneId": {
"type": "string",
"description": "iPhone App Store identifier for the app card."
},
"twitterDescription": {
"type": "string",
"description": "Description used for X/Twitter link cards."
},
"twitterUseFacebook": {
"type": "boolean",
"description": "Whether X/Twitter cards reuse the saved Open Graph values."
},
"twitterAppIphoneUrl": {
"type": "string",
"description": "iPhone App Store URL for the app card."
},
"twitterImageOverlay": {
"type": "string",
"description": "Native SEO-plugin configuration for the X/Twitter image overlay."
},
"twitterPlayerStream": {
"type": "string",
"description": "Direct media stream URL for the X/Twitter player card."
},
"openGraphDescription": {
"type": "string",
"description": "Description used in Open Graph link previews."
},
"twitterAppIphoneName": {
"type": "string",
"description": "iPhone application name for the app card."
},
"openGraphImageOverlay": {
"type": "string",
"description": "Native SEO-plugin configuration for the Open Graph image overlay."
},
"twitterAppDescription": {
"type": "string",
"description": "App description used for the X/Twitter app card."
},
"twitterAppGoogleplayId": {
"type": "string",
"description": "Google Play application identifier for the app card."
},
"twitterAppGoogleplayUrl": {
"type": "string",
"description": "Google Play application URL for the app card."
},
"twitterAppGoogleplayName": {
"type": "string",
"description": "Android application name for the app card."
},
"twitterPlayerStreamCtype": {
"type": "string",
"description": "MIME content type of the player-card media stream."
},
"twitterImageOverlayEnabled": {
"type": "boolean",
"description": "Whether the SEO plugin's X/Twitter image overlay is enabled."
},
"openGraphImageOverlayEnabled": {
"type": "boolean",
"description": "Whether the SEO plugin's Open Graph image overlay is enabled."
}
},
"description": "Explicit allowed fields only. Omission leaves unchanged; empty strings/lists/objects clear overrides. Structured fields replace the targeted field in full. Name must not be empty.",
"minProperties": 1,
"additionalProperties": false
}
},
"description": "Original supported SEO field values for each targeted plugin, from product.seoPlugins. Required for all when multiple plugins are available; supports different original values.",
"additionalProperties": false
},
"parentProductId": {
"type": "number",
"minimum": 1,
"description": "Parent variable product ID when listing, reading or updating variations."
},
"projectPublishingId": {
"type": "number",
"minimum": 1,
"description": "Atomic publishing connection ID from get_publishing_connections, not the provider site or post ID."
}
},
"additionalProperties": false
},
"outputSchema": {
"type": "object",
"required": [
"success"
],
"properties": {
"url": {
"type": "string",
"description": "Link for resolving the failure or completing the operation."
},
"data": {
"type": "object",
"required": [
"success",
"attemptId",
"outcome",
"productId",
"updatedFields"
],
"properties": {
"error": {
"type": "string",
"description": "Failure details reported by this operation or its provider."
},
"outcome": {
"enum": [
"failed",
"unknown",
"success",
"conflict",
"partial"
],
"type": "string"
},
"success": {
"type": "boolean",
"description": "Whether this nested operation completed successfully. Inspect the containing result for details."
},
"attemptId": {
"type": "string",
"description": "Identifier of the intended write attempt, used to reconcile retries with its recorded outcome."
},
"permalink": {
"type": "string",
"description": "Public CMS URL assigned to this content item; publication status determines whether it is live."
},
"productId": {
"type": "number"
},
"seoResults": {
"type": "object",
"properties": {}
},
"updatedFields": {
"type": "array",
"items": {
"enum": [
"name",
"description",
"metaDescription",
"shortDescription",
"sku",
"regularPrice",
"salePrice",
"saleFrom",
"saleTo",
"manageStock",
"stockQuantity",
"stockStatus",
"backorders",
"categories",
"tags",
"images",
"attributes",
"defaultAttributes",
"weight",
"dimensions",
"taxStatus",
"taxClass",
"shippingClass",
"catalogVisibility",
"featured",
"virtual",
"soldIndividually",
"upsellIds",
"crossSellIds",
"purchaseNote",
"seoTitle",
"focusKeywords",
"canonicalUrl",
"openGraphTitle",
"openGraphDescription",
"openGraphImage",
"openGraphType",
"openGraphAuthor",
"openGraphImageId",
"openGraphImageOverlayEnabled",
"openGraphImageOverlay",
"twitterTitle",
"twitterDescription",
"twitterImage",
"twitterImageId",
"twitterCardType",
"twitterUseFacebook",
"twitterAuthor",
"twitterImageOverlayEnabled",
"twitterImageOverlay",
"noindex",
"nofollow",
"excludeFromSitemap",
"seoEnabled",
"robots",
"advancedRobots",
"primaryCategory",
"breadcrumbTitle",
"pillarContent",
"hideSeoScore",
"lockModifiedDate",
"redirectUrl",
"schemaTypes",
"customSchema",
"schemas",
"trackingCode",
"seoScore",
"contentAiScore",
"twitterAppCountry",
"twitterAppDescription",
"twitterAppGoogleplayId",
"twitterAppGoogleplayName",
"twitterAppGoogleplayUrl",
"twitterAppIpadId",
"twitterAppIpadName",
"twitterAppIpadUrl",
"twitterAppIphoneId",
"twitterAppIphoneName",
"twitterAppIphoneUrl",
"twitterPlayerSize",
"twitterPlayerStream",
"twitterPlayerStreamCtype",
"twitterPlayerUrl"
],
"type": "string"
},
"description": "Fields confirmed as changed by this write."
},
"bookkeepingWarning": {
"type": "string"
}
},
"description": "Operation data; optional fields may be absent."
},
"error": {
"type": "string",
"description": "Why the operation failed."
},
"details": {
"type": "object",
"description": "Diagnostics keyed by errorCode."
},
"message": {
"type": "string",
"description": "Outcome or recovery instructions. Project selection means no action ran."
},
"success": {
"type": "boolean",
"description": "Operation success; on false inspect error/errorCode."
},
"upgrade": {
"type": "object",
"description": "Plan-upgrade guidance for an unavailable capability."
},
"category": {
"type": "string",
"description": "Failure category, such as invalid_input or plan_required."
},
"expected": {
"type": "boolean",
"description": "Whether this is an anticipated access, input, plan or state failure."
},
"projects": {
"type": "array",
"items": {
"type": "object",
"properties": {
"id": {
"type": "number",
"description": "Project ID for projectId."
},
"name": {
"type": "string",
"description": "Project name."
}
},
"description": "Accessible project."
},
"description": "Accessible project choices. Select a projectId and retry."
},
"errorCode": {
"type": "string",
"description": "Failure code for recovery."
},
"retryable": {
"type": "boolean",
"description": "Whether an unchanged request can be retried."
},
"statusCode": {
"type": "number",
"description": "HTTP-style failure status."
},
"executionTime": {
"type": "string",
"description": "Elapsed time in seconds, with an s suffix."
}
},
"description": "Operation result envelope."
},
"annotations": {
"readOnlyHint": false,
"openWorldHint": true,
"idempotentHint": true,
"destructiveHint": true
}
}
The title clearly communicates the tool’s action and subject. Keep it concise.
Description91/100
Apply an authorized targeted patch to an existing WordPress content item by URL or ID. For content-only or other native edits, omit seoPlugin and expectedSeo; send patch: {content: "new HTML"} and expected: {content: "original HTML"}. Only for SEO field edits, select Rank Math, Squirrly, Yoast or all with seoPlugin. Send targeted original values as expected; when targeting multiple plugins supply their independent originals as expectedSeo and retain attemptId on retries. Omitted fields stay unchanged. Read-only fields and generated SEO scores cannot be edited. Inspect outcome; unknown or partial outcomes require reconciliation. Optional Human review can precede the update.
Read the native record and capabilities first. Supply originals for the targeted patch; stale state is a conflict, not permission to overwrite. Saved/staged content and verified public rendering are separate outcomes. Reuse the same attemptId and identical payload only for a retry of the same intended action; a new action needs a new key.
The description explains the capability, when to use it, and what to expect.
Inputs86/100
Remove validation rules already expressed in this field’s schema; describe its meaning and usage instead.
seoPlugin
Optional for native edits such as content, title and links; omit for content-only changes. all targets every available supported plugin; explicit selection overrides connection preference. Required for SEO writes when multiple plugins exist without a preference.
Remove validation rules already expressed in this field’s schema; describe its meaning and usage instead.
projectPublishingId
Atomic publishing connection ID from get_publishing_connections, not the provider site or post ID.
Clear enough to supply this argument.
contentType
Registered WordPress post-type slug from get_wordpress_capabilities.postTypes, including custom types. Use the registry key, not restBase.
Clear enough to supply this argument.
contentId
Saved Atomic content document identifier from get_contents or get_content_by_id.
Clear enough to supply this argument.
contentUrl
Exact permalink on the connected site
Clear enough to supply this argument.
attemptId
Caller-generated identifier for one intended mutation. Reuse it with the identical payload after an uncertain response; use a new identifier for a different intended action.
Clear enough to supply this argument.
patch › seoTitle
Search-result title managed by the selected SEO plugin.
Clear enough to supply this argument.
patch › metaDescription
Search-result description managed by the selected SEO plugin.
Clear enough to supply this argument.
patch › focusKeywords
SEO plugin focus-keyword phrases for this item.
Clear enough to supply this argument.
patch › canonicalUrl
Canonical URL declared for this item; use the page's intended canonical address.
Clear enough to supply this argument.
patch › openGraphTitle
Title used in Open Graph link previews.
Clear enough to supply this argument.
patch › openGraphDescription
Description used in Open Graph link previews.
Clear enough to supply this argument.
patch › openGraphImage
Image URL used in Open Graph link previews.
Clear enough to supply this argument.
patch › openGraphType
Open Graph content type for the page.
Clear enough to supply this argument.
patch › openGraphAuthor
Author value used in Open Graph metadata.
Clear enough to supply this argument.
patch › openGraphImageId
Existing CMS media identifier for the Open Graph image; obtain it from media discovery tools.
Clear enough to supply this argument.
patch › openGraphImageOverlayEnabled
Whether the SEO plugin's Open Graph image overlay is enabled.
Clear enough to supply this argument.
patch › openGraphImageOverlay
Native SEO-plugin configuration for the Open Graph image overlay.
Clear enough to supply this argument.
patch › twitterTitle
Title used for X/Twitter link cards.
Clear enough to supply this argument.
patch › twitterDescription
Description used for X/Twitter link cards.
Clear enough to supply this argument.
patch › twitterImage
Image URL used for X/Twitter link cards.
Clear enough to supply this argument.
patch › twitterImageId
Existing CMS media identifier for the X/Twitter card image.
Clear enough to supply this argument.
patch › twitterCardType
X/Twitter card format for this page.
Clear enough to supply this argument.
patch › twitterUseFacebook
Whether X/Twitter cards reuse the saved Open Graph values.
Clear enough to supply this argument.
patch › twitterAuthor
Author handle or attribution used in X/Twitter card metadata.
Clear enough to supply this argument.
patch › twitterImageOverlayEnabled
Whether the SEO plugin's X/Twitter image overlay is enabled.
Clear enough to supply this argument.
patch › twitterImageOverlay
Native SEO-plugin configuration for the X/Twitter image overlay.
Clear enough to supply this argument.
patch › noindex
Whether to request that search engines exclude this page from their index.
Clear enough to supply this argument.
patch › nofollow
Whether to request that search engines avoid following links on this page.
Clear enough to supply this argument.
patch › excludeFromSitemap
Whether the SEO plugin excludes this item from its generated sitemap.
Clear enough to supply this argument.
patch › seoEnabled
Whether the selected SEO plugin's metadata is enabled for this item.
Clear enough to supply this argument.
patch › robots
Robots directives for the page, using the selected plugin's supported representation.
Clear enough to supply this argument.
patch › advancedRobots
Additional robots directives supported by the selected SEO plugin.
Clear enough to supply this argument.
patch › primaryCategory
Primary category identifier for SEO and breadcrumb metadata.
Clear enough to supply this argument.
patch › breadcrumbTitle
Label used for this item in SEO-plugin breadcrumbs.
Clear enough to supply this argument.
patch › pillarContent
Whether the SEO plugin marks this page as pillar or cornerstone content.
Clear enough to supply this argument.
patch › hideSeoScore
Whether the SEO plugin hides its on-page SEO score indicator for this item.
Clear enough to supply this argument.
patch › lockModifiedDate
Whether the SEO plugin should preserve the item's existing modified date when supported.
Clear enough to supply this argument.
patch › redirectUrl
Destination URL for a redirect configured by the selected SEO plugin.
Clear enough to supply this argument.
patch › schemaTypes
Structured-data types selected for this page in the SEO plugin.
Clear enough to supply this argument.
patch › customSchema
Custom structured-data configuration accepted by the selected SEO plugin.
Clear enough to supply this argument.
patch › schemas
Structured-data schema entries in the native SEO-plugin format.
Clear enough to supply this argument.
patch › twitterAppCountry
Country code used for the X/Twitter app card.
Clear enough to supply this argument.
patch › twitterAppDescription
App description used for the X/Twitter app card.
Clear enough to supply this argument.
patch › twitterAppGoogleplayId
Google Play application identifier for the app card.
Clear enough to supply this argument.
patch › twitterAppGoogleplayName
Android application name for the app card.
Clear enough to supply this argument.
patch › twitterAppGoogleplayUrl
Google Play application URL for the app card.
Clear enough to supply this argument.
patch › twitterAppIpadId
iPad App Store identifier for the app card.
Clear enough to supply this argument.
patch › twitterAppIpadName
iPad application name for the app card.
Clear enough to supply this argument.
patch › twitterAppIpadUrl
iPad App Store URL for the app card.
Clear enough to supply this argument.
patch › twitterAppIphoneId
iPhone App Store identifier for the app card.
Clear enough to supply this argument.
patch › twitterAppIphoneName
iPhone application name for the app card.
Clear enough to supply this argument.
patch › twitterAppIphoneUrl
iPhone App Store URL for the app card.
Clear enough to supply this argument.
patch › twitterPlayerSize
Video-player dimensions for an X/Twitter player card, using the plugin's native structure.
Clear enough to supply this argument.
patch › twitterPlayerStream
Direct media stream URL for the X/Twitter player card.
Clear enough to supply this argument.
patch › twitterPlayerStreamCtype
MIME content type of the player-card media stream.
Clear enough to supply this argument.
patch › twitterPlayerUrl
Embeddable player URL for the X/Twitter player card.
Clear enough to supply this argument.
expected › seoTitle
Search-result title managed by the selected SEO plugin.
Clear enough to supply this argument.
expected › metaDescription
Search-result description managed by the selected SEO plugin.
Clear enough to supply this argument.
expected › focusKeywords
SEO plugin focus-keyword phrases for this item.
Clear enough to supply this argument.
expected › canonicalUrl
Canonical URL declared for this item; use the page's intended canonical address.
Clear enough to supply this argument.
expected › openGraphTitle
Title used in Open Graph link previews.
Clear enough to supply this argument.
expected › openGraphDescription
Description used in Open Graph link previews.
Clear enough to supply this argument.
expected › openGraphImage
Image URL used in Open Graph link previews.
Clear enough to supply this argument.
expected › openGraphType
Open Graph content type for the page.
Clear enough to supply this argument.
expected › openGraphAuthor
Author value used in Open Graph metadata.
Clear enough to supply this argument.
expected › openGraphImageId
Existing CMS media identifier for the Open Graph image; obtain it from media discovery tools.
Clear enough to supply this argument.
expected › openGraphImageOverlayEnabled
Whether the SEO plugin's Open Graph image overlay is enabled.
Clear enough to supply this argument.
expected › openGraphImageOverlay
Native SEO-plugin configuration for the Open Graph image overlay.
Clear enough to supply this argument.
expected › twitterTitle
Title used for X/Twitter link cards.
Clear enough to supply this argument.
expected › twitterDescription
Description used for X/Twitter link cards.
Clear enough to supply this argument.
expected › twitterImage
Image URL used for X/Twitter link cards.
Clear enough to supply this argument.
expected › twitterImageId
Existing CMS media identifier for the X/Twitter card image.
Clear enough to supply this argument.
expected › twitterCardType
X/Twitter card format for this page.
Clear enough to supply this argument.
expected › twitterUseFacebook
Whether X/Twitter cards reuse the saved Open Graph values.
Clear enough to supply this argument.
expected › twitterAuthor
Author handle or attribution used in X/Twitter card metadata.
Clear enough to supply this argument.
expected › twitterImageOverlayEnabled
Whether the SEO plugin's X/Twitter image overlay is enabled.
Clear enough to supply this argument.
expected › twitterImageOverlay
Native SEO-plugin configuration for the X/Twitter image overlay.
Clear enough to supply this argument.
expected › noindex
Whether to request that search engines exclude this page from their index.
Clear enough to supply this argument.
expected › nofollow
Whether to request that search engines avoid following links on this page.
Clear enough to supply this argument.
expected › excludeFromSitemap
Whether the SEO plugin excludes this item from its generated sitemap.
Clear enough to supply this argument.
expected › seoEnabled
Whether the selected SEO plugin's metadata is enabled for this item.
Clear enough to supply this argument.
expected › robots
Robots directives for the page, using the selected plugin's supported representation.
Clear enough to supply this argument.
expected › advancedRobots
Additional robots directives supported by the selected SEO plugin.
Clear enough to supply this argument.
expected › primaryCategory
Primary category identifier for SEO and breadcrumb metadata.
Clear enough to supply this argument.
expected › breadcrumbTitle
Label used for this item in SEO-plugin breadcrumbs.
Clear enough to supply this argument.
expected › pillarContent
Whether the SEO plugin marks this page as pillar or cornerstone content.
Clear enough to supply this argument.
expected › hideSeoScore
Whether the SEO plugin hides its on-page SEO score indicator for this item.
Clear enough to supply this argument.
expected › lockModifiedDate
Whether the SEO plugin should preserve the item's existing modified date when supported.
Clear enough to supply this argument.
expected › redirectUrl
Destination URL for a redirect configured by the selected SEO plugin.
Clear enough to supply this argument.
expected › schemaTypes
Structured-data types selected for this page in the SEO plugin.
Clear enough to supply this argument.
expected › customSchema
Custom structured-data configuration accepted by the selected SEO plugin.
Clear enough to supply this argument.
expected › schemas
Structured-data schema entries in the native SEO-plugin format.
Clear enough to supply this argument.
expected › twitterAppCountry
Country code used for the X/Twitter app card.
Clear enough to supply this argument.
expected › twitterAppDescription
App description used for the X/Twitter app card.
Clear enough to supply this argument.
expected › twitterAppGoogleplayId
Google Play application identifier for the app card.
Clear enough to supply this argument.
expected › twitterAppGoogleplayName
Android application name for the app card.
Clear enough to supply this argument.
expected › twitterAppGoogleplayUrl
Google Play application URL for the app card.
Clear enough to supply this argument.
expected › twitterAppIpadId
iPad App Store identifier for the app card.
Clear enough to supply this argument.
expected › twitterAppIpadName
iPad application name for the app card.
Remove validation rules already expressed in this field’s schema; describe its meaning and usage instead.
expected › twitterAppIpadUrl
iPad App Store URL for the app card.
Clear enough to supply this argument.
expected › twitterAppIphoneId
iPhone App Store identifier for the app card.
Clear enough to supply this argument.
expected › twitterAppIphoneName
iPhone application name for the app card.
Clear enough to supply this argument.
expected › twitterAppIphoneUrl
iPhone App Store URL for the app card.
Clear enough to supply this argument.
expected › twitterPlayerSize
Video-player dimensions for an X/Twitter player card, using the plugin's native structure.
Clear enough to supply this argument.
expected › twitterPlayerStream
Direct media stream URL for the X/Twitter player card.
Clear enough to supply this argument.
expected › twitterPlayerStreamCtype
MIME content type of the player-card media stream.
Clear enough to supply this argument.
expected › twitterPlayerUrl
Embeddable player URL for the X/Twitter player card.
Clear enough to supply this argument.
expectedSeo › rankMath › seoTitle
Search-result title managed by the selected SEO plugin.
Clear enough to supply this argument.
expectedSeo › rankMath › metaDescription
Search-result description managed by the selected SEO plugin.
Clear enough to supply this argument.
expectedSeo › rankMath › focusKeywords
SEO plugin focus-keyword phrases for this item.
Clear enough to supply this argument.
expectedSeo › rankMath › canonicalUrl
Canonical URL declared for this item; use the page's intended canonical address.
Clear enough to supply this argument.
expectedSeo › rankMath › openGraphTitle
Title used in Open Graph link previews.
Clear enough to supply this argument.
expectedSeo › rankMath › openGraphDescription
Description used in Open Graph link previews.
Clear enough to supply this argument.
expectedSeo › rankMath › openGraphImage
Image URL used in Open Graph link previews.
Clear enough to supply this argument.
expectedSeo › rankMath › openGraphType
Open Graph content type for the page.
Clear enough to supply this argument.
expectedSeo › rankMath › openGraphAuthor
Author value used in Open Graph metadata.
Clear enough to supply this argument.
expectedSeo › rankMath › openGraphImageId
Existing CMS media identifier for the Open Graph image; obtain it from media discovery tools.
Whether the SEO plugin's Open Graph image overlay is enabled.
Remove validation rules already expressed in this field’s schema; describe its meaning and usage instead.
expectedSeo › yoast › openGraphImageOverlay
Native SEO-plugin configuration for the Open Graph image overlay.
Remove validation rules already expressed in this field’s schema; describe its meaning and usage instead.
expectedSeo › yoast › twitterTitle
Title used for X/Twitter link cards.
Remove validation rules already expressed in this field’s schema; describe its meaning and usage instead.
expectedSeo › yoast › twitterDescription
Description used for X/Twitter link cards.
Remove validation rules already expressed in this field’s schema; describe its meaning and usage instead.
expectedSeo › yoast › twitterImage
Image URL used for X/Twitter link cards.
Remove validation rules already expressed in this field’s schema; describe its meaning and usage instead.
expectedSeo › yoast › twitterImageId
Existing CMS media identifier for the X/Twitter card image.
Remove validation rules already expressed in this field’s schema; describe its meaning and usage instead.
expectedSeo › yoast › twitterCardType
X/Twitter card format for this page.
Remove validation rules already expressed in this field’s schema; describe its meaning and usage instead.
expectedSeo › yoast › twitterUseFacebook
Whether X/Twitter cards reuse the saved Open Graph values.
Remove validation rules already expressed in this field’s schema; describe its meaning and usage instead.
expectedSeo › yoast › twitterAuthor
Author handle or attribution used in X/Twitter card metadata.
Remove validation rules already expressed in this field’s schema; describe its meaning and usage instead.
expectedSeo › yoast › twitterImageOverlayEnabled
Whether the SEO plugin's X/Twitter image overlay is enabled.
Remove validation rules already expressed in this field’s schema; describe its meaning and usage instead.
expectedSeo › yoast › twitterImageOverlay
Native SEO-plugin configuration for the X/Twitter image overlay.
Remove validation rules already expressed in this field’s schema; describe its meaning and usage instead.
expectedSeo › yoast › noindex
Whether to request that search engines exclude this page from their index.
Remove validation rules already expressed in this field’s schema; describe its meaning and usage instead.
expectedSeo › yoast › nofollow
Whether to request that search engines avoid following links on this page.
Remove validation rules already expressed in this field’s schema; describe its meaning and usage instead.
expectedSeo › yoast › excludeFromSitemap
Whether the SEO plugin excludes this item from its generated sitemap.
Remove validation rules already expressed in this field’s schema; describe its meaning and usage instead.
expectedSeo › yoast › seoEnabled
Whether the selected SEO plugin's metadata is enabled for this item.
Remove validation rules already expressed in this field’s schema; describe its meaning and usage instead.
expectedSeo › yoast › robots
Robots directives for the page, using the selected plugin's supported representation.
Remove validation rules already expressed in this field’s schema; describe its meaning and usage instead.
expectedSeo › yoast › advancedRobots
Additional robots directives supported by the selected SEO plugin.
Remove validation rules already expressed in this field’s schema; describe its meaning and usage instead.
expectedSeo › yoast › primaryCategory
Primary category identifier for SEO and breadcrumb metadata.
Remove validation rules already expressed in this field’s schema; describe its meaning and usage instead.
expectedSeo › yoast › breadcrumbTitle
Label used for this item in SEO-plugin breadcrumbs.
Remove validation rules already expressed in this field’s schema; describe its meaning and usage instead.
expectedSeo › yoast › pillarContent
Whether the SEO plugin marks this page as pillar or cornerstone content.
Remove validation rules already expressed in this field’s schema; describe its meaning and usage instead.
expectedSeo › yoast › hideSeoScore
Whether the SEO plugin hides its on-page SEO score indicator for this item.
Remove validation rules already expressed in this field’s schema; describe its meaning and usage instead.
expectedSeo › yoast › lockModifiedDate
Whether the SEO plugin should preserve the item's existing modified date when supported.
Remove validation rules already expressed in this field’s schema; describe its meaning and usage instead.
expectedSeo › yoast › redirectUrl
Destination URL for a redirect configured by the selected SEO plugin.
Remove validation rules already expressed in this field’s schema; describe its meaning and usage instead.
expectedSeo › yoast › schemaTypes
Structured-data types selected for this page in the SEO plugin.
Remove validation rules already expressed in this field’s schema; describe its meaning and usage instead.
expectedSeo › yoast › customSchema
Custom structured-data configuration accepted by the selected SEO plugin.
Remove validation rules already expressed in this field’s schema; describe its meaning and usage instead.
expectedSeo › yoast › schemas
Structured-data schema entries in the native SEO-plugin format.
Remove validation rules already expressed in this field’s schema; describe its meaning and usage instead.
expectedSeo › yoast › twitterAppCountry
Country code used for the X/Twitter app card.
Remove validation rules already expressed in this field’s schema; describe its meaning and usage instead.
expectedSeo › yoast › twitterAppDescription
App description used for the X/Twitter app card.
Remove validation rules already expressed in this field’s schema; describe its meaning and usage instead.
expectedSeo › yoast › twitterAppGoogleplayId
Google Play application identifier for the app card.
Remove validation rules already expressed in this field’s schema; describe its meaning and usage instead.
expectedSeo › yoast › twitterAppGoogleplayName
Android application name for the app card.
Remove validation rules already expressed in this field’s schema; describe its meaning and usage instead.
expectedSeo › yoast › twitterAppGoogleplayUrl
Google Play application URL for the app card.
Remove validation rules already expressed in this field’s schema; describe its meaning and usage instead.
expectedSeo › yoast › twitterAppIpadId
iPad App Store identifier for the app card.
Remove validation rules already expressed in this field’s schema; describe its meaning and usage instead.
expectedSeo › yoast › twitterAppIpadName
iPad application name for the app card.
Remove validation rules already expressed in this field’s schema; describe its meaning and usage instead.
expectedSeo › yoast › twitterAppIpadUrl
iPad App Store URL for the app card.
Remove validation rules already expressed in this field’s schema; describe its meaning and usage instead.
expectedSeo › yoast › twitterAppIphoneId
iPhone App Store identifier for the app card.
Remove validation rules already expressed in this field’s schema; describe its meaning and usage instead.
expectedSeo › yoast › twitterAppIphoneName
iPhone application name for the app card.
Remove validation rules already expressed in this field’s schema; describe its meaning and usage instead.
expectedSeo › yoast › twitterAppIphoneUrl
iPhone App Store URL for the app card.
Clarify units, where to obtain this value, or conventions not already expressed in the schema.
expectedSeo › yoast › twitterPlayerSize
Video-player dimensions for an X/Twitter player card, using the plugin's native structure.
Remove validation rules already expressed in this field’s schema; describe its meaning and usage instead.
expectedSeo › yoast › twitterPlayerStream
Direct media stream URL for the X/Twitter player card.
Remove validation rules already expressed in this field’s schema; describe its meaning and usage instead.
expectedSeo › yoast › twitterPlayerStreamCtype
MIME content type of the player-card media stream.
Clear enough to supply this argument.
expectedSeo › yoast › twitterPlayerUrl
Embeddable player URL for the X/Twitter player card.
Remove validation rules already expressed in this field’s schema; describe its meaning and usage instead.
projectId
Atomic project ID from list_projects. Omit to use the configured project; if asked to choose, select one of the accessible returned IDs.
Remove validation rules already expressed in this field’s schema; describe its meaning and usage instead.
context
Short purpose of this call for the activity log. Exclude personal data and private source content.
Remove validation rules already expressed in this field’s schema; describe its meaning and usage instead.
llm_model
Use the exact model ID executing this call, from runtime/system context, for usage attribution. Supply it on every Atomic MCP tool call, including discovery and feedback, and update it if the model changes. Use the model ID rather than the client app name. If unavailable, omit it; never guess or ask the user.
Remove validation rules already expressed in this field’s schema; describe its meaning and usage instead.
{
"type": "object",
"required": [
"success"
],
"properties": {
"url": {
"type": "string",
"description": "Link for resolving the failure or completing the operation."
},
"data": {
"type": "object",
"required": [
"success",
"attemptId",
"outcome",
"updatedFields"
],
"properties": {
"error": {
"type": "string",
"description": "Failure details reported by this operation or its provider."
},
"outcome": {
"enum": [
"failed",
"unknown",
"success",
"conflict",
"partial"
],
"type": "string"
},
"success": {
"type": "boolean",
"description": "Whether this nested operation completed successfully. Inspect the containing result for details."
},
"attemptId": {
"type": "string",
"description": "Identifier of the intended write attempt, used to reconcile retries with its recorded outcome."
},
"contentId": {
"type": "number"
},
"permalink": {
"type": "string",
"description": "Public CMS URL assigned to this content item; publication status determines whether it is live."
},
"seoResults": {
"type": "object",
"properties": {}
},
"updatedFields": {
"type": "array",
"items": {
"type": "string"
},
"description": "Fields confirmed as changed by this write."
},
"bookkeepingWarning": {
"type": "string"
}
},
"description": "Operation data; optional fields may be absent."
},
"error": {
"type": "string",
"description": "Why the operation failed."
},
"details": {
"type": "object",
"description": "Diagnostics keyed by errorCode."
},
"message": {
"type": "string",
"description": "Outcome or recovery instructions. Project selection means no action ran."
},
"success": {
"type": "boolean",
"description": "Operation success; on false inspect error/errorCode."
},
"upgrade": {
"type": "object",
"description": "Plan-upgrade guidance for an unavailable capability."
},
"category": {
"type": "string",
"description": "Failure category, such as invalid_input or plan_required."
},
"expected": {
"type": "boolean",
"description": "Whether this is an anticipated access, input, plan or state failure."
},
"projects": {
"type": "array",
"items": {
"type": "object",
"properties": {
"id": {
"type": "number",
"description": "Project ID for projectId."
},
"name": {
"type": "string",
"description": "Project name."
}
},
"description": "Accessible project."
},
"description": "Accessible project choices. Select a projectId and retry."
},
"errorCode": {
"type": "string",
"description": "Failure code for recovery."
},
"retryable": {
"type": "boolean",
"description": "Whether an unchanged request can be retried."
},
"statusCode": {
"type": "number",
"description": "HTTP-style failure status."
},
"executionTime": {
"type": "string",
"description": "Elapsed time in seconds, with an s suffix."
}
},
"description": "Operation result envelope."
}
Original tool metadata
{
"name": "update_wordpress_content",
"title": "Update WordPress content",
"description": "Apply an authorized targeted patch to an existing WordPress content item by URL or ID. For content-only or other native edits, omit seoPlugin and expectedSeo; send patch: {content: \"new HTML\"} and expected: {content: \"original HTML\"}. Only for SEO field edits, select Rank Math, Squirrly, Yoast or all with seoPlugin. Send targeted original values as expected; when targeting multiple plugins supply their independent originals as expectedSeo and retain attemptId on retries. Omitted fields stay unchanged. Read-only fields and generated SEO scores cannot be edited. Inspect outcome; unknown or partial outcomes require reconciliation. Optional Human review can precede the update.\n\nRead the native record and capabilities first. Supply originals for the targeted patch; stale state is a conflict, not permission to overwrite. Saved/staged content and verified public rendering are separate outcomes. Reuse the same attemptId and identical payload only for a retry of the same intended action; a new action needs a new key.",
"inputSchema": {
"type": "object",
"oneOf": [
{
"required": [
"contentId"
]
},
{
"required": [
"contentUrl"
]
}
],
"required": [
"projectPublishingId",
"contentType",
"attemptId",
"patch",
"expected"
],
"properties": {
"patch": {
"type": "object",
"properties": {
"robots": {
"type": "array",
"items": {
"type": "string"
},
"description": "Robots directives for the page, using the selected plugin's supported representation."
},
"noindex": {
"type": "boolean",
"description": "Whether to request that search engines exclude this page from their index."
},
"schemas": {
"type": "array",
"items": {
"type": "object",
"additionalProperties": true
},
"description": "Structured-data schema entries in the native SEO-plugin format."
},
"nofollow": {
"type": "boolean",
"description": "Whether to request that search engines avoid following links on this page."
},
"seoTitle": {
"type": "string",
"description": "Search-result title managed by the selected SEO plugin."
},
"seoEnabled": {
"type": "boolean",
"description": "Whether the selected SEO plugin's metadata is enabled for this item."
},
"redirectUrl": {
"type": "string",
"description": "Destination URL for a redirect configured by the selected SEO plugin."
},
"schemaTypes": {
"type": "array",
"items": {
"type": "string"
},
"description": "Structured-data types selected for this page in the SEO plugin."
},
"canonicalUrl": {
"type": "string",
"description": "Canonical URL declared for this item; use the page's intended canonical address."
},
"customSchema": {
"type": "string",
"description": "Custom structured-data configuration accepted by the selected SEO plugin."
},
"hideSeoScore": {
"type": "boolean",
"description": "Whether the SEO plugin hides its on-page SEO score indicator for this item."
},
"twitterImage": {
"type": "string",
"description": "Image URL used for X/Twitter link cards."
},
"twitterTitle": {
"type": "string",
"description": "Title used for X/Twitter link cards."
},
"focusKeywords": {
"type": "string",
"description": "SEO plugin focus-keyword phrases for this item."
},
"openGraphType": {
"type": "string",
"description": "Open Graph content type for the page."
},
"pillarContent": {
"type": "boolean",
"description": "Whether the SEO plugin marks this page as pillar or cornerstone content."
},
"twitterAuthor": {
"type": "string",
"description": "Author handle or attribution used in X/Twitter card metadata."
},
"advancedRobots": {
"type": "object",
"description": "Additional robots directives supported by the selected SEO plugin.",
"additionalProperties": true
},
"openGraphImage": {
"type": "string",
"description": "Image URL used in Open Graph link previews."
},
"openGraphTitle": {
"type": "string",
"description": "Title used in Open Graph link previews."
},
"twitterImageId": {
"type": "number",
"description": "Existing CMS media identifier for the X/Twitter card image."
},
"breadcrumbTitle": {
"type": "string",
"description": "Label used for this item in SEO-plugin breadcrumbs."
},
"metaDescription": {
"type": "string",
"description": "Search-result description managed by the selected SEO plugin."
},
"openGraphAuthor": {
"type": "string",
"description": "Author value used in Open Graph metadata."
},
"primaryCategory": {
"type": "string",
"description": "Primary category identifier for SEO and breadcrumb metadata."
},
"twitterCardType": {
"type": "string",
"description": "X/Twitter card format for this page."
},
"lockModifiedDate": {
"type": "boolean",
"description": "Whether the SEO plugin should preserve the item's existing modified date when supported."
},
"openGraphImageId": {
"type": "number",
"description": "Existing CMS media identifier for the Open Graph image; obtain it from media discovery tools."
},
"twitterAppIpadId": {
"type": "string",
"description": "iPad App Store identifier for the app card."
},
"twitterPlayerUrl": {
"type": "string",
"description": "Embeddable player URL for the X/Twitter player card."
},
"twitterAppCountry": {
"type": "string",
"description": "Country code used for the X/Twitter app card."
},
"twitterAppIpadUrl": {
"type": "string",
"description": "iPad App Store URL for the app card."
},
"twitterPlayerSize": {
"type": "string",
"description": "Video-player dimensions for an X/Twitter player card, using the plugin's native structure."
},
"excludeFromSitemap": {
"type": "boolean",
"description": "Whether the SEO plugin excludes this item from its generated sitemap."
},
"twitterAppIpadName": {
"type": "string",
"description": "iPad application name for the app card."
},
"twitterAppIphoneId": {
"type": "string",
"description": "iPhone App Store identifier for the app card."
},
"twitterDescription": {
"type": "string",
"description": "Description used for X/Twitter link cards."
},
"twitterUseFacebook": {
"type": "boolean",
"description": "Whether X/Twitter cards reuse the saved Open Graph values."
},
"twitterAppIphoneUrl": {
"type": "string",
"description": "iPhone App Store URL for the app card."
},
"twitterImageOverlay": {
"type": "string",
"description": "Native SEO-plugin configuration for the X/Twitter image overlay."
},
"twitterPlayerStream": {
"type": "string",
"description": "Direct media stream URL for the X/Twitter player card."
},
"openGraphDescription": {
"type": "string",
"description": "Description used in Open Graph link previews."
},
"twitterAppIphoneName": {
"type": "string",
"description": "iPhone application name for the app card."
},
"openGraphImageOverlay": {
"type": "string",
"description": "Native SEO-plugin configuration for the Open Graph image overlay."
},
"twitterAppDescription": {
"type": "string",
"description": "App description used for the X/Twitter app card."
},
"twitterAppGoogleplayId": {
"type": "string",
"description": "Google Play application identifier for the app card."
},
"twitterAppGoogleplayUrl": {
"type": "string",
"description": "Google Play application URL for the app card."
},
"twitterAppGoogleplayName": {
"type": "string",
"description": "Android application name for the app card."
},
"twitterPlayerStreamCtype": {
"type": "string",
"description": "MIME content type of the player-card media stream."
},
"twitterImageOverlayEnabled": {
"type": "boolean",
"description": "Whether the SEO plugin's X/Twitter image overlay is enabled."
},
"openGraphImageOverlayEnabled": {
"type": "boolean",
"description": "Whether the SEO plugin's Open Graph image overlay is enabled."
}
},
"description": "Flat field patch, matching product update SEO semantics. Native writable WordPress REST fields such as title, content, excerpt, slug, status, author, taxonomies, meta and ACF share the object with seoTitle, metaDescription and other supported SEO fields. Omitted fields remain unchanged; nested native objects target their supplied leaves, arrays and SEO objects replace their targeted field.",
"minProperties": 1,
"additionalProperties": true
},
"context": {
"type": "string",
"maxLength": 120,
"description": "Short purpose of this call for the activity log. Exclude personal data and private source content."
},
"expected": {
"type": "object",
"properties": {
"robots": {
"type": "array",
"items": {
"type": "string"
},
"description": "Robots directives for the page, using the selected plugin's supported representation."
},
"noindex": {
"type": "boolean",
"description": "Whether to request that search engines exclude this page from their index."
},
"schemas": {
"type": "array",
"items": {
"type": "object",
"additionalProperties": true
},
"description": "Structured-data schema entries in the native SEO-plugin format."
},
"nofollow": {
"type": "boolean",
"description": "Whether to request that search engines avoid following links on this page."
},
"seoTitle": {
"type": "string",
"description": "Search-result title managed by the selected SEO plugin."
},
"seoEnabled": {
"type": "boolean",
"description": "Whether the selected SEO plugin's metadata is enabled for this item."
},
"redirectUrl": {
"type": "string",
"description": "Destination URL for a redirect configured by the selected SEO plugin."
},
"schemaTypes": {
"type": "array",
"items": {
"type": "string"
},
"description": "Structured-data types selected for this page in the SEO plugin."
},
"canonicalUrl": {
"type": "string",
"description": "Canonical URL declared for this item; use the page's intended canonical address."
},
"customSchema": {
"type": "string",
"description": "Custom structured-data configuration accepted by the selected SEO plugin."
},
"hideSeoScore": {
"type": "boolean",
"description": "Whether the SEO plugin hides its on-page SEO score indicator for this item."
},
"twitterImage": {
"type": "string",
"description": "Image URL used for X/Twitter link cards."
},
"twitterTitle": {
"type": "string",
"description": "Title used for X/Twitter link cards."
},
"focusKeywords": {
"type": "string",
"description": "SEO plugin focus-keyword phrases for this item."
},
"openGraphType": {
"type": "string",
"description": "Open Graph content type for the page."
},
"pillarContent": {
"type": "boolean",
"description": "Whether the SEO plugin marks this page as pillar or cornerstone content."
},
"twitterAuthor": {
"type": "string",
"description": "Author handle or attribution used in X/Twitter card metadata."
},
"advancedRobots": {
"type": "object",
"description": "Additional robots directives supported by the selected SEO plugin.",
"additionalProperties": true
},
"openGraphImage": {
"type": "string",
"description": "Image URL used in Open Graph link previews."
},
"openGraphTitle": {
"type": "string",
"description": "Title used in Open Graph link previews."
},
"twitterImageId": {
"type": "number",
"description": "Existing CMS media identifier for the X/Twitter card image."
},
"breadcrumbTitle": {
"type": "string",
"description": "Label used for this item in SEO-plugin breadcrumbs."
},
"metaDescription": {
"type": "string",
"description": "Search-result description managed by the selected SEO plugin."
},
"openGraphAuthor": {
"type": "string",
"description": "Author value used in Open Graph metadata."
},
"primaryCategory": {
"type": "string",
"description": "Primary category identifier for SEO and breadcrumb metadata."
},
"twitterCardType": {
"type": "string",
"description": "X/Twitter card format for this page."
},
"lockModifiedDate": {
"type": "boolean",
"description": "Whether the SEO plugin should preserve the item's existing modified date when supported."
},
"openGraphImageId": {
"type": "number",
"description": "Existing CMS media identifier for the Open Graph image; obtain it from media discovery tools."
},
"twitterAppIpadId": {
"type": "string",
"description": "iPad App Store identifier for the app card."
},
"twitterPlayerUrl": {
"type": "string",
"description": "Embeddable player URL for the X/Twitter player card."
},
"twitterAppCountry": {
"type": "string",
"description": "Country code used for the X/Twitter app card."
},
"twitterAppIpadUrl": {
"type": "string",
"description": "iPad App Store URL for the app card."
},
"twitterPlayerSize": {
"type": "string",
"description": "Video-player dimensions for an X/Twitter player card, using the plugin's native structure."
},
"excludeFromSitemap": {
"type": "boolean",
"description": "Whether the SEO plugin excludes this item from its generated sitemap."
},
"twitterAppIpadName": {
"type": "string",
"description": "iPad application name for the app card."
},
"twitterAppIphoneId": {
"type": "string",
"description": "iPhone App Store identifier for the app card."
},
"twitterDescription": {
"type": "string",
"description": "Description used for X/Twitter link cards."
},
"twitterUseFacebook": {
"type": "boolean",
"description": "Whether X/Twitter cards reuse the saved Open Graph values."
},
"twitterAppIphoneUrl": {
"type": "string",
"description": "iPhone App Store URL for the app card."
},
"twitterImageOverlay": {
"type": "string",
"description": "Native SEO-plugin configuration for the X/Twitter image overlay."
},
"twitterPlayerStream": {
"type": "string",
"description": "Direct media stream URL for the X/Twitter player card."
},
"openGraphDescription": {
"type": "string",
"description": "Description used in Open Graph link previews."
},
"twitterAppIphoneName": {
"type": "string",
"description": "iPhone application name for the app card."
},
"openGraphImageOverlay": {
"type": "string",
"description": "Native SEO-plugin configuration for the Open Graph image overlay."
},
"twitterAppDescription": {
"type": "string",
"description": "App description used for the X/Twitter app card."
},
"twitterAppGoogleplayId": {
"type": "string",
"description": "Google Play application identifier for the app card."
},
"twitterAppGoogleplayUrl": {
"type": "string",
"description": "Google Play application URL for the app card."
},
"twitterAppGoogleplayName": {
"type": "string",
"description": "Android application name for the app card."
},
"twitterPlayerStreamCtype": {
"type": "string",
"description": "MIME content type of the player-card media stream."
},
"twitterImageOverlayEnabled": {
"type": "boolean",
"description": "Whether the SEO plugin's X/Twitter image overlay is enabled."
},
"openGraphImageOverlayEnabled": {
"type": "boolean",
"description": "Whether the SEO plugin's Open Graph image overlay is enabled."
}
},
"description": "Flat field patch, matching product update SEO semantics. Native writable WordPress REST fields such as title, content, excerpt, slug, status, author, taxonomies, meta and ACF share the object with seoTitle, metaDescription and other supported SEO fields. Omitted fields remain unchanged; nested native objects target their supplied leaves, arrays and SEO objects replace their targeted field.",
"minProperties": 0,
"additionalProperties": true
},
"attemptId": {
"type": "string",
"format": "uuid",
"description": "Caller-generated identifier for one intended mutation. Reuse it with the identical payload after an uncertain response; use a new identifier for a different intended action."
},
"contentId": {
"type": "number",
"minimum": 1,
"description": "Saved Atomic content document identifier from get_contents or get_content_by_id."
},
"llm_model": {
"type": "string",
"maxLength": 128,
"description": "Use the exact model ID executing this call, from runtime/system context, for usage attribution. Supply it on every Atomic MCP tool call, including discovery and feedback, and update it if the model changes. Use the model ID rather than the client app name. If unavailable, omit it; never guess or ask the user."
},
"projectId": {
"type": "number",
"description": "Atomic project ID from list_projects. Omit to use the configured project; if asked to choose, select one of the accessible returned IDs."
},
"seoPlugin": {
"enum": [
"rankMath",
"squirrly",
"yoast",
"all"
],
"type": "string",
"description": "Optional for native edits such as content, title and links; omit for content-only changes. all targets every available supported plugin; explicit selection overrides connection preference. Required for SEO writes when multiple plugins exist without a preference."
},
"contentUrl": {
"type": "string",
"format": "uri",
"description": "Exact permalink on the connected site"
},
"contentType": {
"type": "string",
"pattern": "^[a-z0-9_-]+$",
"description": "Registered WordPress post-type slug from get_wordpress_capabilities.postTypes, including custom types. Use the registry key, not restBase."
},
"expectedSeo": {
"type": "object",
"properties": {
"yoast": {
"type": "object",
"properties": {
"robots": {
"type": "array",
"items": {
"type": "string"
},
"description": "Robots directives for the page, using the selected plugin's supported representation."
},
"noindex": {
"type": "boolean",
"description": "Whether to request that search engines exclude this page from their index."
},
"schemas": {
"type": "array",
"items": {
"type": "object",
"additionalProperties": true
},
"description": "Structured-data schema entries in the native SEO-plugin format."
},
"nofollow": {
"type": "boolean",
"description": "Whether to request that search engines avoid following links on this page."
},
"seoTitle": {
"type": "string",
"description": "Search-result title managed by the selected SEO plugin."
},
"seoEnabled": {
"type": "boolean",
"description": "Whether the selected SEO plugin's metadata is enabled for this item."
},
"redirectUrl": {
"type": "string",
"description": "Destination URL for a redirect configured by the selected SEO plugin."
},
"schemaTypes": {
"type": "array",
"items": {
"type": "string"
},
"description": "Structured-data types selected for this page in the SEO plugin."
},
"canonicalUrl": {
"type": "string",
"description": "Canonical URL declared for this item; use the page's intended canonical address."
},
"customSchema": {
"type": "string",
"description": "Custom structured-data configuration accepted by the selected SEO plugin."
},
"hideSeoScore": {
"type": "boolean",
"description": "Whether the SEO plugin hides its on-page SEO score indicator for this item."
},
"twitterImage": {
"type": "string",
"description": "Image URL used for X/Twitter link cards."
},
"twitterTitle": {
"type": "string",
"description": "Title used for X/Twitter link cards."
},
"focusKeywords": {
"type": "string",
"description": "SEO plugin focus-keyword phrases for this item."
},
"openGraphType": {
"type": "string",
"description": "Open Graph content type for the page."
},
"pillarContent": {
"type": "boolean",
"description": "Whether the SEO plugin marks this page as pillar or cornerstone content."
},
"twitterAuthor": {
"type": "string",
"description": "Author handle or attribution used in X/Twitter card metadata."
},
"advancedRobots": {
"type": "object",
"description": "Additional robots directives supported by the selected SEO plugin.",
"additionalProperties": true
},
"openGraphImage": {
"type": "string",
"description": "Image URL used in Open Graph link previews."
},
"openGraphTitle": {
"type": "string",
"description": "Title used in Open Graph link previews."
},
"twitterImageId": {
"type": "number",
"description": "Existing CMS media identifier for the X/Twitter card image."
},
"breadcrumbTitle": {
"type": "string",
"description": "Label used for this item in SEO-plugin breadcrumbs."
},
"metaDescription": {
"type": "string",
"description": "Search-result description managed by the selected SEO plugin."
},
"openGraphAuthor": {
"type": "string",
"description": "Author value used in Open Graph metadata."
},
"primaryCategory": {
"type": "string",
"description": "Primary category identifier for SEO and breadcrumb metadata."
},
"twitterCardType": {
"type": "string",
"description": "X/Twitter card format for this page."
},
"lockModifiedDate": {
"type": "boolean",
"description": "Whether the SEO plugin should preserve the item's existing modified date when supported."
},
"openGraphImageId": {
"type": "number",
"description": "Existing CMS media identifier for the Open Graph image; obtain it from media discovery tools."
},
"twitterAppIpadId": {
"type": "string",
"description": "iPad App Store identifier for the app card."
},
"twitterPlayerUrl": {
"type": "string",
"description": "Embeddable player URL for the X/Twitter player card."
},
"twitterAppCountry": {
"type": "string",
"description": "Country code used for the X/Twitter app card."
},
"twitterAppIpadUrl": {
"type": "string",
"description": "iPad App Store URL for the app card."
},
"twitterPlayerSize": {
"type": "string",
"description": "Video-player dimensions for an X/Twitter player card, using the plugin's native structure."
},
"excludeFromSitemap": {
"type": "boolean",
"description": "Whether the SEO plugin excludes this item from its generated sitemap."
},
"twitterAppIpadName": {
"type": "string",
"description": "iPad application name for the app card."
},
"twitterAppIphoneId": {
"type": "string",
"description": "iPhone App Store identifier for the app card."
},
"twitterDescription": {
"type": "string",
"description": "Description used for X/Twitter link cards."
},
"twitterUseFacebook": {
"type": "boolean",
"description": "Whether X/Twitter cards reuse the saved Open Graph values."
},
"twitterAppIphoneUrl": {
"type": "string",
"description": "iPhone App Store URL for the app card."
},
"twitterImageOverlay": {
"type": "string",
"description": "Native SEO-plugin configuration for the X/Twitter image overlay."
},
"twitterPlayerStream": {
"type": "string",
"description": "Direct media stream URL for the X/Twitter player card."
},
"openGraphDescription": {
"type": "string",
"description": "Description used in Open Graph link previews."
},
"twitterAppIphoneName": {
"type": "string",
"description": "iPhone application name for the app card."
},
"openGraphImageOverlay": {
"type": "string",
"description": "Native SEO-plugin configuration for the Open Graph image overlay."
},
"twitterAppDescription": {
"type": "string",
"description": "App description used for the X/Twitter app card."
},
"twitterAppGoogleplayId": {
"type": "string",
"description": "Google Play application identifier for the app card."
},
"twitterAppGoogleplayUrl": {
"type": "string",
"description": "Google Play application URL for the app card."
},
"twitterAppGoogleplayName": {
"type": "string",
"description": "Android application name for the app card."
},
"twitterPlayerStreamCtype": {
"type": "string",
"description": "MIME content type of the player-card media stream."
},
"twitterImageOverlayEnabled": {
"type": "boolean",
"description": "Whether the SEO plugin's X/Twitter image overlay is enabled."
},
"openGraphImageOverlayEnabled": {
"type": "boolean",
"description": "Whether the SEO plugin's Open Graph image overlay is enabled."
}
},
"description": "Yoast metadata in its native field structure. Read current values and capabilities before editing.",
"minProperties": 0,
"additionalProperties": false
},
"rankMath": {
"type": "object",
"properties": {
"robots": {
"type": "array",
"items": {
"type": "string"
},
"description": "Robots directives for the page, using the selected plugin's supported representation."
},
"noindex": {
"type": "boolean",
"description": "Whether to request that search engines exclude this page from their index."
},
"schemas": {
"type": "array",
"items": {
"type": "object",
"additionalProperties": true
},
"description": "Structured-data schema entries in the native SEO-plugin format."
},
"nofollow": {
"type": "boolean",
"description": "Whether to request that search engines avoid following links on this page."
},
"seoTitle": {
"type": "string",
"description": "Search-result title managed by the selected SEO plugin."
},
"seoEnabled": {
"type": "boolean",
"description": "Whether the selected SEO plugin's metadata is enabled for this item."
},
"redirectUrl": {
"type": "string",
"description": "Destination URL for a redirect configured by the selected SEO plugin."
},
"schemaTypes": {
"type": "array",
"items": {
"type": "string"
},
"description": "Structured-data types selected for this page in the SEO plugin."
},
"canonicalUrl": {
"type": "string",
"description": "Canonical URL declared for this item; use the page's intended canonical address."
},
"customSchema": {
"type": "string",
"description": "Custom structured-data configuration accepted by the selected SEO plugin."
},
"hideSeoScore": {
"type": "boolean",
"description": "Whether the SEO plugin hides its on-page SEO score indicator for this item."
},
"twitterImage": {
"type": "string",
"description": "Image URL used for X/Twitter link cards."
},
"twitterTitle": {
"type": "string",
"description": "Title used for X/Twitter link cards."
},
"focusKeywords": {
"type": "string",
"description": "SEO plugin focus-keyword phrases for this item."
},
"openGraphType": {
"type": "string",
"description": "Open Graph content type for the page."
},
"pillarContent": {
"type": "boolean",
"description": "Whether the SEO plugin marks this page as pillar or cornerstone content."
},
"twitterAuthor": {
"type": "string",
"description": "Author handle or attribution used in X/Twitter card metadata."
},
"advancedRobots": {
"type": "object",
"description": "Additional robots directives supported by the selected SEO plugin.",
"additionalProperties": true
},
"openGraphImage": {
"type": "string",
"description": "Image URL used in Open Graph link previews."
},
"openGraphTitle": {
"type": "string",
"description": "Title used in Open Graph link previews."
},
"twitterImageId": {
"type": "number",
"description": "Existing CMS media identifier for the X/Twitter card image."
},
"breadcrumbTitle": {
"type": "string",
"description": "Label used for this item in SEO-plugin breadcrumbs."
},
"metaDescription": {
"type": "string",
"description": "Search-result description managed by the selected SEO plugin."
},
"openGraphAuthor": {
"type": "string",
"description": "Author value used in Open Graph metadata."
},
"primaryCategory": {
"type": "string",
"description": "Primary category identifier for SEO and breadcrumb metadata."
},
"twitterCardType": {
"type": "string",
"description": "X/Twitter card format for this page."
},
"lockModifiedDate": {
"type": "boolean",
"description": "Whether the SEO plugin should preserve the item's existing modified date when supported."
},
"openGraphImageId": {
"type": "number",
"description": "Existing CMS media identifier for the Open Graph image; obtain it from media discovery tools."
},
"twitterAppIpadId": {
"type": "string",
"description": "iPad App Store identifier for the app card."
},
"twitterPlayerUrl": {
"type": "string",
"description": "Embeddable player URL for the X/Twitter player card."
},
"twitterAppCountry": {
"type": "string",
"description": "Country code used for the X/Twitter app card."
},
"twitterAppIpadUrl": {
"type": "string",
"description": "iPad App Store URL for the app card."
},
"twitterPlayerSize": {
"type": "string",
"description": "Video-player dimensions for an X/Twitter player card, using the plugin's native structure."
},
"excludeFromSitemap": {
"type": "boolean",
"description": "Whether the SEO plugin excludes this item from its generated sitemap."
},
"twitterAppIpadName": {
"type": "string",
"description": "iPad application name for the app card."
},
"twitterAppIphoneId": {
"type": "string",
"description": "iPhone App Store identifier for the app card."
},
"twitterDescription": {
"type": "string",
"description": "Description used for X/Twitter link cards."
},
"twitterUseFacebook": {
"type": "boolean",
"description": "Whether X/Twitter cards reuse the saved Open Graph values."
},
"twitterAppIphoneUrl": {
"type": "string",
"description": "iPhone App Store URL for the app card."
},
"twitterImageOverlay": {
"type": "string",
"description": "Native SEO-plugin configuration for the X/Twitter image overlay."
},
"twitterPlayerStream": {
"type": "string",
"description": "Direct media stream URL for the X/Twitter player card."
},
"openGraphDescription": {
"type": "string",
"description": "Description used in Open Graph link previews."
},
"twitterAppIphoneName": {
"type": "string",
"description": "iPhone application name for the app card."
},
"openGraphImageOverlay": {
"type": "string",
"description": "Native SEO-plugin configuration for the Open Graph image overlay."
},
"twitterAppDescription": {
"type": "string",
"description": "App description used for the X/Twitter app card."
},
"twitterAppGoogleplayId": {
"type": "string",
"description": "Google Play application identifier for the app card."
},
"twitterAppGoogleplayUrl": {
"type": "string",
"description": "Google Play application URL for the app card."
},
"twitterAppGoogleplayName": {
"type": "string",
"description": "Android application name for the app card."
},
"twitterPlayerStreamCtype": {
"type": "string",
"description": "MIME content type of the player-card media stream."
},
"twitterImageOverlayEnabled": {
"type": "boolean",
"description": "Whether the SEO plugin's X/Twitter image overlay is enabled."
},
"openGraphImageOverlayEnabled": {
"type": "boolean",
"description": "Whether the SEO plugin's Open Graph image overlay is enabled."
}
},
"description": "Rank Math metadata in its native field structure. Read current values and capabilities before editing.",
"minProperties": 0,
"additionalProperties": false
},
"squirrly": {
"type": "object",
"properties": {
"robots": {
"type": "array",
"items": {
"type": "string"
},
"description": "Robots directives for the page, using the selected plugin's supported representation."
},
"noindex": {
"type": "boolean",
"description": "Whether to request that search engines exclude this page from their index."
},
"schemas": {
"type": "array",
"items": {
"type": "object",
"additionalProperties": true
},
"description": "Structured-data schema entries in the native SEO-plugin format."
},
"nofollow": {
"type": "boolean",
"description": "Whether to request that search engines avoid following links on this page."
},
"seoTitle": {
"type": "string",
"description": "Search-result title managed by the selected SEO plugin."
},
"seoEnabled": {
"type": "boolean",
"description": "Whether the selected SEO plugin's metadata is enabled for this item."
},
"redirectUrl": {
"type": "string",
"description": "Destination URL for a redirect configured by the selected SEO plugin."
},
"schemaTypes": {
"type": "array",
"items": {
"type": "string"
},
"description": "Structured-data types selected for this page in the SEO plugin."
},
"canonicalUrl": {
"type": "string",
"description": "Canonical URL declared for this item; use the page's intended canonical address."
},
"customSchema": {
"type": "string",
"description": "Custom structured-data configuration accepted by the selected SEO plugin."
},
"hideSeoScore": {
"type": "boolean",
"description": "Whether the SEO plugin hides its on-page SEO score indicator for this item."
},
"twitterImage": {
"type": "string",
"description": "Image URL used for X/Twitter link cards."
},
"twitterTitle": {
"type": "string",
"description": "Title used for X/Twitter link cards."
},
"focusKeywords": {
"type": "string",
"description": "SEO plugin focus-keyword phrases for this item."
},
"openGraphType": {
"type": "string",
"description": "Open Graph content type for the page."
},
"pillarContent": {
"type": "boolean",
"description": "Whether the SEO plugin marks this page as pillar or cornerstone content."
},
"twitterAuthor": {
"type": "string",
"description": "Author handle or attribution used in X/Twitter card metadata."
},
"advancedRobots": {
"type": "object",
"description": "Additional robots directives supported by the selected SEO plugin.",
"additionalProperties": true
},
"openGraphImage": {
"type": "string",
"description": "Image URL used in Open Graph link previews."
},
"openGraphTitle": {
"type": "string",
"description": "Title used in Open Graph link previews."
},
"twitterImageId": {
"type": "number",
"description": "Existing CMS media identifier for the X/Twitter card image."
},
"breadcrumbTitle": {
"type": "string",
"description": "Label used for this item in SEO-plugin breadcrumbs."
},
"metaDescription": {
"type": "string",
"description": "Search-result description managed by the selected SEO plugin."
},
"openGraphAuthor": {
"type": "string",
"description": "Author value used in Open Graph metadata."
},
"primaryCategory": {
"type": "string",
"description": "Primary category identifier for SEO and breadcrumb metadata."
},
"twitterCardType": {
"type": "string",
"description": "X/Twitter card format for this page."
},
"lockModifiedDate": {
"type": "boolean",
"description": "Whether the SEO plugin should preserve the item's existing modified date when supported."
},
"openGraphImageId": {
"type": "number",
"description": "Existing CMS media identifier for the Open Graph image; obtain it from media discovery tools."
},
"twitterAppIpadId": {
"type": "string",
"description": "iPad App Store identifier for the app card."
},
"twitterPlayerUrl": {
"type": "string",
"description": "Embeddable player URL for the X/Twitter player card."
},
"twitterAppCountry": {
"type": "string",
"description": "Country code used for the X/Twitter app card."
},
"twitterAppIpadUrl": {
"type": "string",
"description": "iPad App Store URL for the app card."
},
"twitterPlayerSize": {
"type": "string",
"description": "Video-player dimensions for an X/Twitter player card, using the plugin's native structure."
},
"excludeFromSitemap": {
"type": "boolean",
"description": "Whether the SEO plugin excludes this item from its generated sitemap."
},
"twitterAppIpadName": {
"type": "string",
"description": "iPad application name for the app card."
},
"twitterAppIphoneId": {
"type": "string",
"description": "iPhone App Store identifier for the app card."
},
"twitterDescription": {
"type": "string",
"description": "Description used for X/Twitter link cards."
},
"twitterUseFacebook": {
"type": "boolean",
"description": "Whether X/Twitter cards reuse the saved Open Graph values."
},
"twitterAppIphoneUrl": {
"type": "string",
"description": "iPhone App Store URL for the app card."
},
"twitterImageOverlay": {
"type": "string",
"description": "Native SEO-plugin configuration for the X/Twitter image overlay."
},
"twitterPlayerStream": {
"type": "string",
"description": "Direct media stream URL for the X/Twitter player card."
},
"openGraphDescription": {
"type": "string",
"description": "Description used in Open Graph link previews."
},
"twitterAppIphoneName": {
"type": "string",
"description": "iPhone application name for the app card."
},
"openGraphImageOverlay": {
"type": "string",
"description": "Native SEO-plugin configuration for the Open Graph image overlay."
},
"twitterAppDescription": {
"type": "string",
"description": "App description used for the X/Twitter app card."
},
"twitterAppGoogleplayId": {
"type": "string",
"description": "Google Play application identifier for the app card."
},
"twitterAppGoogleplayUrl": {
"type": "string",
"description": "Google Play application URL for the app card."
},
"twitterAppGoogleplayName": {
"type": "string",
"description": "Android application name for the app card."
},
"twitterPlayerStreamCtype": {
"type": "string",
"description": "MIME content type of the player-card media stream."
},
"twitterImageOverlayEnabled": {
"type": "boolean",
"description": "Whether the SEO plugin's X/Twitter image overlay is enabled."
},
"openGraphImageOverlayEnabled": {
"type": "boolean",
"description": "Whether the SEO plugin's Open Graph image overlay is enabled."
}
},
"description": "Squirrly metadata in its native field structure. Read current values and capabilities before editing.",
"minProperties": 0,
"additionalProperties": false
}
},
"description": "Only for patched SEO fields. Omit for native/content-only edits; empty plugin maps have no effect on native edits. Required when multiple SEO plugins are targeted; supply the original patched SEO values, with native originals in expected.",
"additionalProperties": false
},
"projectPublishingId": {
"type": "number",
"minimum": 1,
"description": "Atomic publishing connection ID from get_publishing_connections, not the provider site or post ID."
}
},
"additionalProperties": false
},
"outputSchema": {
"type": "object",
"required": [
"success"
],
"properties": {
"url": {
"type": "string",
"description": "Link for resolving the failure or completing the operation."
},
"data": {
"type": "object",
"required": [
"success",
"attemptId",
"outcome",
"updatedFields"
],
"properties": {
"error": {
"type": "string",
"description": "Failure details reported by this operation or its provider."
},
"outcome": {
"enum": [
"failed",
"unknown",
"success",
"conflict",
"partial"
],
"type": "string"
},
"success": {
"type": "boolean",
"description": "Whether this nested operation completed successfully. Inspect the containing result for details."
},
"attemptId": {
"type": "string",
"description": "Identifier of the intended write attempt, used to reconcile retries with its recorded outcome."
},
"contentId": {
"type": "number"
},
"permalink": {
"type": "string",
"description": "Public CMS URL assigned to this content item; publication status determines whether it is live."
},
"seoResults": {
"type": "object",
"properties": {}
},
"updatedFields": {
"type": "array",
"items": {
"type": "string"
},
"description": "Fields confirmed as changed by this write."
},
"bookkeepingWarning": {
"type": "string"
}
},
"description": "Operation data; optional fields may be absent."
},
"error": {
"type": "string",
"description": "Why the operation failed."
},
"details": {
"type": "object",
"description": "Diagnostics keyed by errorCode."
},
"message": {
"type": "string",
"description": "Outcome or recovery instructions. Project selection means no action ran."
},
"success": {
"type": "boolean",
"description": "Operation success; on false inspect error/errorCode."
},
"upgrade": {
"type": "object",
"description": "Plan-upgrade guidance for an unavailable capability."
},
"category": {
"type": "string",
"description": "Failure category, such as invalid_input or plan_required."
},
"expected": {
"type": "boolean",
"description": "Whether this is an anticipated access, input, plan or state failure."
},
"projects": {
"type": "array",
"items": {
"type": "object",
"properties": {
"id": {
"type": "number",
"description": "Project ID for projectId."
},
"name": {
"type": "string",
"description": "Project name."
}
},
"description": "Accessible project."
},
"description": "Accessible project choices. Select a projectId and retry."
},
"errorCode": {
"type": "string",
"description": "Failure code for recovery."
},
"retryable": {
"type": "boolean",
"description": "Whether an unchanged request can be retried."
},
"statusCode": {
"type": "number",
"description": "HTTP-style failure status."
},
"executionTime": {
"type": "string",
"description": "Elapsed time in seconds, with an s suffix."
}
},
"description": "Operation result envelope."
},
"annotations": {
"readOnlyHint": false,
"openWorldHint": true,
"idempotentHint": true,
"destructiveHint": true
}
}
The title clearly communicates the tool’s action and subject. Keep it concise.
Description86/100
Edit existing Elementor settings using the revision returned by the document read. Stale writes conflict; preserve bound sources.
Read the native record and capabilities first. Supply originals for the targeted patch; stale state is a conflict, not permission to overwrite. Saved/staged content and verified public rendering are separate outcomes.
The description explains the capability, when to use it, and what to expect.
Inputs95/100
Input documentation gives an agent enough context to populate the arguments.
projectPublishingId
Atomic publishing connection ID from get_publishing_connections, not the provider site or post ID.
Clear enough to supply this argument.
documentId
Native Elementor document identifier from get_wordpress_elementor_document or the template listing.
Clear enough to supply this argument.
pageSettings
Registered Elementor document controls; native post fields cannot be changed here
Clear enough to supply this argument.
allowShared
Acknowledge that an Elementor library template can affect multiple pages
Clear enough to supply this argument.
expectedRevision
Revision returned by the latest read. The write is rejected if the saved item changed after that read.
Clear enough to supply this argument.
elements
Native Elementor element tree. Preserve IDs, settings and children outside the intended edit.
Clear enough to supply this argument.
changes › items › elementId
Identifier of the native element from the current design or Elementor document read.
Clear enough to supply this argument.
changes › items › settingPath
Exact path of the setting within the native element's settings object.
Clear enough to supply this argument.
changes › items › value
Replacement value for the targeted field, with the same native representation required by that field.
Clear enough to supply this argument.
projectId
Atomic project ID from list_projects. Omit to use the configured project; if asked to choose, select one of the accessible returned IDs.
Clear enough to supply this argument.
context
Short purpose of this call for the activity log. Exclude personal data and private source content.
Clear enough to supply this argument.
llm_model
Use the exact model ID executing this call, from runtime/system context, for usage attribution. Supply it on every Atomic MCP tool call, including discovery and feedback, and update it if the model changes. Use the model ID rather than the client app name. If unavailable, omit it; never guess or ask the user.
{
"type": "object",
"required": [
"success"
],
"properties": {
"url": {
"type": "string",
"description": "Link for resolving the failure or completing the operation."
},
"data": {
"type": "object",
"required": [
"pageSettings",
"shared",
"revision",
"status",
"link",
"id",
"title",
"elements"
],
"properties": {
"id": {
"type": "number",
"description": "Identifier of this returned resource. Use it for subsequent reads or edits of the same resource."
},
"link": {
"type": "string"
},
"title": {
"type": "string",
"description": "Display or content title of this returned item."
},
"shared": {
"type": "boolean"
},
"status": {
"type": "string",
"description": "Current saved or execution state reported by the operation."
},
"elements": {
"type": "array",
"items": {
"type": "object",
"required": [
"id",
"elType",
"settings"
],
"properties": {
"id": {
"type": "string",
"description": "Identifier of this returned resource. Use it for subsequent reads or edits of the same resource."
},
"elType": {
"type": "string"
},
"elements": {
"type": "array",
"items": {
"type": "object",
"description": "Nested operation-specific fields."
}
},
"settings": {
"type": "object",
"description": "Nested operation-specific fields."
},
"widgetType": {
"type": "string"
}
},
"additionalProperties": {
"description": "JSON returned by the connected provider or selected operation; its fields depend on that operation."
}
}
},
"revision": {
"type": "string",
"description": "Current saved revision, to be supplied as the expected revision on a subsequent edit."
},
"pageSettings": {
"type": "object",
"properties": {},
"additionalProperties": {
"description": "JSON returned by the connected provider or selected operation; its fields depend on that operation."
}
}
},
"description": "Operation data; optional fields may be absent."
},
"error": {
"type": "string",
"description": "Why the operation failed."
},
"details": {
"type": "object",
"description": "Diagnostics keyed by errorCode."
},
"message": {
"type": "string",
"description": "Outcome or recovery instructions. Project selection means no action ran."
},
"success": {
"type": "boolean",
"description": "Operation success; on false inspect error/errorCode."
},
"upgrade": {
"type": "object",
"description": "Plan-upgrade guidance for an unavailable capability."
},
"category": {
"type": "string",
"description": "Failure category, such as invalid_input or plan_required."
},
"expected": {
"type": "boolean",
"description": "Whether this is an anticipated access, input, plan or state failure."
},
"projects": {
"type": "array",
"items": {
"type": "object",
"properties": {
"id": {
"type": "number",
"description": "Project ID for projectId."
},
"name": {
"type": "string",
"description": "Project name."
}
},
"description": "Accessible project."
},
"description": "Accessible project choices. Select a projectId and retry."
},
"errorCode": {
"type": "string",
"description": "Failure code for recovery."
},
"retryable": {
"type": "boolean",
"description": "Whether an unchanged request can be retried."
},
"statusCode": {
"type": "number",
"description": "HTTP-style failure status."
},
"executionTime": {
"type": "string",
"description": "Elapsed time in seconds, with an s suffix."
}
},
"description": "Operation result envelope."
}
Original tool metadata
{
"name": "update_wordpress_elementor_document",
"title": "Update WordPress elementor document",
"description": "Edit existing Elementor settings using the revision returned by the document read. Stale writes conflict; preserve bound sources.\n\nRead the native record and capabilities first. Supply originals for the targeted patch; stale state is a conflict, not permission to overwrite. Saved/staged content and verified public rendering are separate outcomes.",
"inputSchema": {
"type": "object",
"oneOf": [
{
"required": [
"changes"
]
},
{
"required": [
"elements"
]
},
{
"required": [
"pageSettings"
]
}
],
"required": [
"projectPublishingId",
"documentId",
"expectedRevision"
],
"properties": {
"changes": {
"type": "array",
"items": {
"type": "object",
"required": [
"elementId",
"settingPath",
"value"
],
"properties": {
"value": {
"oneOf": [
{
"type": "string"
},
{
"type": "number"
},
{
"type": "boolean"
}
],
"description": "Replacement value for the targeted field, with the same native representation required by that field."
},
"elementId": {
"type": "string",
"description": "Identifier of the native element from the current design or Elementor document read."
},
"settingPath": {
"type": "array",
"items": {
"type": "string"
},
"description": "Exact path of the setting within the native element's settings object."
}
},
"additionalProperties": false
},
"maxItems": 100,
"minItems": 1,
"description": "Targeted edits to native elements or settings. Read the current document and use each change's exact target and original value."
},
"context": {
"type": "string",
"maxLength": 120,
"description": "Short purpose of this call for the activity log. Exclude personal data and private source content."
},
"elements": {
"type": "array",
"items": {
"type": "object",
"additionalProperties": true
},
"maxItems": 2000,
"description": "Native Elementor element tree. Preserve IDs, settings and children outside the intended edit."
},
"llm_model": {
"type": "string",
"maxLength": 128,
"description": "Use the exact model ID executing this call, from runtime/system context, for usage attribution. Supply it on every Atomic MCP tool call, including discovery and feedback, and update it if the model changes. Use the model ID rather than the client app name. If unavailable, omit it; never guess or ask the user."
},
"projectId": {
"type": "number",
"description": "Atomic project ID from list_projects. Omit to use the configured project; if asked to choose, select one of the accessible returned IDs."
},
"documentId": {
"type": "number",
"minimum": 1,
"description": "Native Elementor document identifier from get_wordpress_elementor_document or the template listing."
},
"allowShared": {
"type": "boolean",
"description": "Acknowledge that an Elementor library template can affect multiple pages"
},
"pageSettings": {
"type": "object",
"description": "Registered Elementor document controls; native post fields cannot be changed here",
"additionalProperties": true
},
"expectedRevision": {
"type": "string",
"pattern": "^[a-f0-9]{64}$",
"description": "Revision returned by the latest read. The write is rejected if the saved item changed after that read."
},
"projectPublishingId": {
"type": "number",
"minimum": 1,
"description": "Atomic publishing connection ID from get_publishing_connections, not the provider site or post ID."
}
},
"additionalProperties": false
},
"outputSchema": {
"type": "object",
"required": [
"success"
],
"properties": {
"url": {
"type": "string",
"description": "Link for resolving the failure or completing the operation."
},
"data": {
"type": "object",
"required": [
"pageSettings",
"shared",
"revision",
"status",
"link",
"id",
"title",
"elements"
],
"properties": {
"id": {
"type": "number",
"description": "Identifier of this returned resource. Use it for subsequent reads or edits of the same resource."
},
"link": {
"type": "string"
},
"title": {
"type": "string",
"description": "Display or content title of this returned item."
},
"shared": {
"type": "boolean"
},
"status": {
"type": "string",
"description": "Current saved or execution state reported by the operation."
},
"elements": {
"type": "array",
"items": {
"type": "object",
"required": [
"id",
"elType",
"settings"
],
"properties": {
"id": {
"type": "string",
"description": "Identifier of this returned resource. Use it for subsequent reads or edits of the same resource."
},
"elType": {
"type": "string"
},
"elements": {
"type": "array",
"items": {
"type": "object",
"description": "Nested operation-specific fields."
}
},
"settings": {
"type": "object",
"description": "Nested operation-specific fields."
},
"widgetType": {
"type": "string"
}
},
"additionalProperties": {
"description": "JSON returned by the connected provider or selected operation; its fields depend on that operation."
}
}
},
"revision": {
"type": "string",
"description": "Current saved revision, to be supplied as the expected revision on a subsequent edit."
},
"pageSettings": {
"type": "object",
"properties": {},
"additionalProperties": {
"description": "JSON returned by the connected provider or selected operation; its fields depend on that operation."
}
}
},
"description": "Operation data; optional fields may be absent."
},
"error": {
"type": "string",
"description": "Why the operation failed."
},
"details": {
"type": "object",
"description": "Diagnostics keyed by errorCode."
},
"message": {
"type": "string",
"description": "Outcome or recovery instructions. Project selection means no action ran."
},
"success": {
"type": "boolean",
"description": "Operation success; on false inspect error/errorCode."
},
"upgrade": {
"type": "object",
"description": "Plan-upgrade guidance for an unavailable capability."
},
"category": {
"type": "string",
"description": "Failure category, such as invalid_input or plan_required."
},
"expected": {
"type": "boolean",
"description": "Whether this is an anticipated access, input, plan or state failure."
},
"projects": {
"type": "array",
"items": {
"type": "object",
"properties": {
"id": {
"type": "number",
"description": "Project ID for projectId."
},
"name": {
"type": "string",
"description": "Project name."
}
},
"description": "Accessible project."
},
"description": "Accessible project choices. Select a projectId and retry."
},
"errorCode": {
"type": "string",
"description": "Failure code for recovery."
},
"retryable": {
"type": "boolean",
"description": "Whether an unchanged request can be retried."
},
"statusCode": {
"type": "number",
"description": "HTTP-style failure status."
},
"executionTime": {
"type": "string",
"description": "Elapsed time in seconds, with an s suffix."
}
},
"description": "Operation result envelope."
},
"annotations": {
"readOnlyHint": false,
"openWorldHint": true,
"idempotentHint": false,
"destructiveHint": true
}
}
The title clearly communicates the tool’s action and subject. Keep it concise.
Description79/100
Edit media title, alt_text, caption or description. Supply original targeted values in expected; stale values conflict.
Read the native record and capabilities first. Supply originals for the targeted patch; stale state is a conflict, not permission to overwrite. Saved/staged content and verified public rendering are separate outcomes. Reuse the same attemptId and identical payload only for a retry of the same intended action; a new action needs a new key.
The description explains the capability, when to use it, and what to expect.
Inputs94/100
Remove validation rules already expressed in this field’s schema; describe its meaning and usage instead.
projectPublishingId
Atomic publishing connection ID from get_publishing_connections, not the provider site or post ID.
Remove validation rules already expressed in this field’s schema; describe its meaning and usage instead.
attemptId
Caller-generated identifier for one intended mutation. Reuse it with the identical payload after an uncertain response; use a new identifier for a different intended action.
Clear enough to supply this argument.
id
Native WordPress media ID from list_wordpress_media or get_wordpress_media.
Clear enough to supply this argument.
fields › title
Human-readable title for this item.
Clear enough to supply this argument.
fields › alt_text
Accessible text describing this WordPress media item.
Clear enough to supply this argument.
fields › caption
Caption displayed with the media item.
Clear enough to supply this argument.
fields › description
Human-readable purpose or description of this item. On edits, preserve existing text unless replacing it intentionally.
Clear enough to supply this argument.
expected
Original values read immediately before editing. Supply originals only for targeted fields so concurrent changes can be detected.
Clear enough to supply this argument.
projectId
Atomic project ID from list_projects. Omit to use the configured project; if asked to choose, select one of the accessible returned IDs.
Clear enough to supply this argument.
context
Short purpose of this call for the activity log. Exclude personal data and private source content.
Clear enough to supply this argument.
llm_model
Use the exact model ID executing this call, from runtime/system context, for usage attribution. Supply it on every Atomic MCP tool call, including discovery and feedback, and update it if the model changes. Use the model ID rather than the client app name. If unavailable, omit it; never guess or ask the user.
{
"type": "object",
"required": [
"success"
],
"properties": {
"url": {
"type": "string",
"description": "Link for resolving the failure or completing the operation."
},
"data": {
"type": "object",
"required": [
"data"
],
"properties": {
"data": {
"type": "object",
"required": [
"id"
],
"properties": {
"id": {
"type": "number",
"description": "Identifier of this returned resource. Use it for subsequent reads or edits of the same resource."
},
"link": {
"type": "string"
},
"name": {
"type": "string",
"description": "Human-readable name of this resource."
},
"slug": {
"type": "string",
"description": "Saved URL slug or native CMS slug of this item."
},
"type": {
"type": "string",
"description": "Kind of the returned item; determines how its operation-specific fields should be interpreted."
},
"count": {
"type": "number",
"description": "Number of records reported by the provider for this group."
},
"title": {
"type": "object",
"properties": {
"raw": {
"type": "string"
},
"rendered": {
"type": "string"
}
},
"description": "Display or content title of this returned item."
},
"parent": {
"type": "number",
"description": "Native parent record ID; zero denotes the provider root when applicable."
},
"status": {
"type": "string",
"description": "Current saved or execution state reported by the operation."
},
"caption": {
"type": "object",
"properties": {
"raw": {
"type": "string"
},
"rendered": {
"type": "string"
}
},
"description": "Native media caption with raw/rendered values when supplied."
},
"alt_text": {
"type": "string",
"description": "Saved accessible alternative text on the native WordPress media record."
},
"order_by": {
"type": "string",
"description": "Native ordering policy for WooCommerce attribute terms."
},
"taxonomy": {
"type": "string",
"description": "Native taxonomy slug owning this term."
},
"mime_type": {
"type": "string",
"description": "Native MIME type of this media record."
},
"media_type": {
"type": "string",
"description": "WordPress media category, such as image or file."
},
"source_url": {
"type": "string",
"description": "Provider URL of the media asset."
},
"description": {
"anyOf": [
{
"type": "string"
},
{
"type": "object",
"properties": {
"raw": {
"type": "string"
},
"rendered": {
"type": "string"
}
}
}
],
"description": "Saved description of this resource or its purpose."
},
"has_archives": {
"type": "boolean",
"description": "Whether this WooCommerce attribute enables public archives."
}
},
"description": "Result items or operation data inside this returned payload. Pagination fields describe only this result page."
},
"total": {
"type": "number",
"description": "Total number of matching items across all result pages."
},
"nextPage": {
"anyOf": [
{
"type": "null"
},
{
"type": "number"
}
],
"description": "Next page to request when more results exist; use the returned value rather than constructing a cursor."
},
"replayed": {
"type": "boolean",
"description": "Whether this response reuses the recorded outcome of an earlier attempt rather than performing a new write."
}
},
"description": "Operation data; optional fields may be absent."
},
"error": {
"type": "string",
"description": "Why the operation failed."
},
"details": {
"type": "object",
"description": "Diagnostics keyed by errorCode."
},
"message": {
"type": "string",
"description": "Outcome or recovery instructions. Project selection means no action ran."
},
"success": {
"type": "boolean",
"description": "Operation success; on false inspect error/errorCode."
},
"upgrade": {
"type": "object",
"description": "Plan-upgrade guidance for an unavailable capability."
},
"category": {
"type": "string",
"description": "Failure category, such as invalid_input or plan_required."
},
"expected": {
"type": "boolean",
"description": "Whether this is an anticipated access, input, plan or state failure."
},
"projects": {
"type": "array",
"items": {
"type": "object",
"properties": {
"id": {
"type": "number",
"description": "Project ID for projectId."
},
"name": {
"type": "string",
"description": "Project name."
}
},
"description": "Accessible project."
},
"description": "Accessible project choices. Select a projectId and retry."
},
"errorCode": {
"type": "string",
"description": "Failure code for recovery."
},
"retryable": {
"type": "boolean",
"description": "Whether an unchanged request can be retried."
},
"statusCode": {
"type": "number",
"description": "HTTP-style failure status."
},
"executionTime": {
"type": "string",
"description": "Elapsed time in seconds, with an s suffix."
}
},
"description": "Operation result envelope."
}
Original tool metadata
{
"name": "update_wordpress_media",
"title": "Update WordPress media",
"description": "Edit media title, alt_text, caption or description. Supply original targeted values in expected; stale values conflict.\n\nRead the native record and capabilities first. Supply originals for the targeted patch; stale state is a conflict, not permission to overwrite. Saved/staged content and verified public rendering are separate outcomes. Reuse the same attemptId and identical payload only for a retry of the same intended action; a new action needs a new key.",
"inputSchema": {
"type": "object",
"required": [
"projectPublishingId",
"attemptId",
"id",
"fields",
"expected"
],
"properties": {
"id": {
"type": "number",
"minimum": 1,
"description": "Native WordPress media ID from list_wordpress_media or get_wordpress_media."
},
"fields": {
"type": "object",
"properties": {
"title": {
"type": "string",
"description": "Human-readable title for this item."
},
"caption": {
"type": "string",
"description": "Caption displayed with the media item."
},
"alt_text": {
"type": "string",
"description": "Accessible text describing this WordPress media item."
},
"description": {
"type": "string",
"description": "Human-readable purpose or description of this item. On edits, preserve existing text unless replacing it intentionally."
}
},
"description": "Explicit native fields to change. Omitted fields remain unchanged; read the current item and capabilities before constructing edits.",
"minProperties": 1,
"additionalProperties": false
},
"context": {
"type": "string",
"maxLength": 120,
"description": "Short purpose of this call for the activity log. Exclude personal data and private source content."
},
"expected": {
"type": "object",
"description": "Original values read immediately before editing. Supply originals only for targeted fields so concurrent changes can be detected.",
"additionalProperties": true
},
"attemptId": {
"type": "string",
"format": "uuid",
"description": "Caller-generated identifier for one intended mutation. Reuse it with the identical payload after an uncertain response; use a new identifier for a different intended action."
},
"llm_model": {
"type": "string",
"maxLength": 128,
"description": "Use the exact model ID executing this call, from runtime/system context, for usage attribution. Supply it on every Atomic MCP tool call, including discovery and feedback, and update it if the model changes. Use the model ID rather than the client app name. If unavailable, omit it; never guess or ask the user."
},
"projectId": {
"type": "number",
"description": "Atomic project ID from list_projects. Omit to use the configured project; if asked to choose, select one of the accessible returned IDs."
},
"projectPublishingId": {
"type": "number",
"minimum": 1,
"description": "Atomic publishing connection ID from get_publishing_connections, not the provider site or post ID."
}
},
"additionalProperties": false
},
"outputSchema": {
"type": "object",
"required": [
"success"
],
"properties": {
"url": {
"type": "string",
"description": "Link for resolving the failure or completing the operation."
},
"data": {
"type": "object",
"required": [
"data"
],
"properties": {
"data": {
"type": "object",
"required": [
"id"
],
"properties": {
"id": {
"type": "number",
"description": "Identifier of this returned resource. Use it for subsequent reads or edits of the same resource."
},
"link": {
"type": "string"
},
"name": {
"type": "string",
"description": "Human-readable name of this resource."
},
"slug": {
"type": "string",
"description": "Saved URL slug or native CMS slug of this item."
},
"type": {
"type": "string",
"description": "Kind of the returned item; determines how its operation-specific fields should be interpreted."
},
"count": {
"type": "number",
"description": "Number of records reported by the provider for this group."
},
"title": {
"type": "object",
"properties": {
"raw": {
"type": "string"
},
"rendered": {
"type": "string"
}
},
"description": "Display or content title of this returned item."
},
"parent": {
"type": "number",
"description": "Native parent record ID; zero denotes the provider root when applicable."
},
"status": {
"type": "string",
"description": "Current saved or execution state reported by the operation."
},
"caption": {
"type": "object",
"properties": {
"raw": {
"type": "string"
},
"rendered": {
"type": "string"
}
},
"description": "Native media caption with raw/rendered values when supplied."
},
"alt_text": {
"type": "string",
"description": "Saved accessible alternative text on the native WordPress media record."
},
"order_by": {
"type": "string",
"description": "Native ordering policy for WooCommerce attribute terms."
},
"taxonomy": {
"type": "string",
"description": "Native taxonomy slug owning this term."
},
"mime_type": {
"type": "string",
"description": "Native MIME type of this media record."
},
"media_type": {
"type": "string",
"description": "WordPress media category, such as image or file."
},
"source_url": {
"type": "string",
"description": "Provider URL of the media asset."
},
"description": {
"anyOf": [
{
"type": "string"
},
{
"type": "object",
"properties": {
"raw": {
"type": "string"
},
"rendered": {
"type": "string"
}
}
}
],
"description": "Saved description of this resource or its purpose."
},
"has_archives": {
"type": "boolean",
"description": "Whether this WooCommerce attribute enables public archives."
}
},
"description": "Result items or operation data inside this returned payload. Pagination fields describe only this result page."
},
"total": {
"type": "number",
"description": "Total number of matching items across all result pages."
},
"nextPage": {
"anyOf": [
{
"type": "null"
},
{
"type": "number"
}
],
"description": "Next page to request when more results exist; use the returned value rather than constructing a cursor."
},
"replayed": {
"type": "boolean",
"description": "Whether this response reuses the recorded outcome of an earlier attempt rather than performing a new write."
}
},
"description": "Operation data; optional fields may be absent."
},
"error": {
"type": "string",
"description": "Why the operation failed."
},
"details": {
"type": "object",
"description": "Diagnostics keyed by errorCode."
},
"message": {
"type": "string",
"description": "Outcome or recovery instructions. Project selection means no action ran."
},
"success": {
"type": "boolean",
"description": "Operation success; on false inspect error/errorCode."
},
"upgrade": {
"type": "object",
"description": "Plan-upgrade guidance for an unavailable capability."
},
"category": {
"type": "string",
"description": "Failure category, such as invalid_input or plan_required."
},
"expected": {
"type": "boolean",
"description": "Whether this is an anticipated access, input, plan or state failure."
},
"projects": {
"type": "array",
"items": {
"type": "object",
"properties": {
"id": {
"type": "number",
"description": "Project ID for projectId."
},
"name": {
"type": "string",
"description": "Project name."
}
},
"description": "Accessible project."
},
"description": "Accessible project choices. Select a projectId and retry."
},
"errorCode": {
"type": "string",
"description": "Failure code for recovery."
},
"retryable": {
"type": "boolean",
"description": "Whether an unchanged request can be retried."
},
"statusCode": {
"type": "number",
"description": "HTTP-style failure status."
},
"executionTime": {
"type": "string",
"description": "Elapsed time in seconds, with an s suffix."
}
},
"description": "Operation result envelope."
},
"annotations": {
"readOnlyHint": false,
"openWorldHint": true,
"idempotentHint": true,
"destructiveHint": true
}
}
The title clearly communicates the tool’s action and subject. Keep it concise.
Description77/100
Edit a taxonomy term using native fields and targeted originals. A stale original conflicts.
Read the native record and capabilities first. Supply originals for the targeted patch; stale state is a conflict, not permission to overwrite. Saved/staged content and verified public rendering are separate outcomes. Reuse the same attemptId and identical payload only for a retry of the same intended action; a new action needs a new key.
The description explains the capability, when to use it, and what to expect.
Inputs86/100
Remove validation rules already expressed in this field’s schema; describe its meaning and usage instead.
projectPublishingId
Atomic publishing connection ID from get_publishing_connections, not the provider site or post ID.
Remove validation rules already expressed in this field’s schema; describe its meaning and usage instead.
id
Native term ID from list_wordpress_terms in the selected taxonomy.
Remove validation rules already expressed in this field’s schema; describe its meaning and usage instead.
taxonomy
Native WordPress taxonomy slug from list_wordpress_taxonomies.
Clear enough to supply this argument.
attemptId
Caller-generated identifier for one intended mutation. Reuse it with the identical payload after an uncertain response; use a new identifier for a different intended action.
Clear enough to supply this argument.
fields
Explicit native fields to change. Omitted fields remain unchanged; read the current item and capabilities before constructing edits.
Remove validation rules already expressed in this field’s schema; describe its meaning and usage instead.
expected
Original values read immediately before editing. Supply originals only for targeted fields so concurrent changes can be detected.
Clear enough to supply this argument.
projectId
Atomic project ID from list_projects. Omit to use the configured project; if asked to choose, select one of the accessible returned IDs.
Clear enough to supply this argument.
context
Short purpose of this call for the activity log. Exclude personal data and private source content.
Remove validation rules already expressed in this field’s schema; describe its meaning and usage instead.
llm_model
Use the exact model ID executing this call, from runtime/system context, for usage attribution. Supply it on every Atomic MCP tool call, including discovery and feedback, and update it if the model changes. Use the model ID rather than the client app name. If unavailable, omit it; never guess or ask the user.
Remove validation rules already expressed in this field’s schema; describe its meaning and usage instead.
{
"type": "object",
"required": [
"success"
],
"properties": {
"url": {
"type": "string",
"description": "Link for resolving the failure or completing the operation."
},
"data": {
"type": "object",
"required": [
"data"
],
"properties": {
"data": {
"type": "object",
"required": [
"id"
],
"properties": {
"id": {
"type": "number",
"description": "Identifier of this returned resource. Use it for subsequent reads or edits of the same resource."
},
"link": {
"type": "string"
},
"name": {
"type": "string",
"description": "Human-readable name of this resource."
},
"slug": {
"type": "string",
"description": "Saved URL slug or native CMS slug of this item."
},
"type": {
"type": "string",
"description": "Kind of the returned item; determines how its operation-specific fields should be interpreted."
},
"count": {
"type": "number",
"description": "Number of records reported by the provider for this group."
},
"title": {
"type": "object",
"properties": {
"raw": {
"type": "string"
},
"rendered": {
"type": "string"
}
},
"description": "Display or content title of this returned item."
},
"parent": {
"type": "number",
"description": "Native parent record ID; zero denotes the provider root when applicable."
},
"status": {
"type": "string",
"description": "Current saved or execution state reported by the operation."
},
"caption": {
"type": "object",
"properties": {
"raw": {
"type": "string"
},
"rendered": {
"type": "string"
}
},
"description": "Native media caption with raw/rendered values when supplied."
},
"alt_text": {
"type": "string",
"description": "Saved accessible alternative text on the native WordPress media record."
},
"order_by": {
"type": "string",
"description": "Native ordering policy for WooCommerce attribute terms."
},
"taxonomy": {
"type": "string",
"description": "Native taxonomy slug owning this term."
},
"mime_type": {
"type": "string",
"description": "Native MIME type of this media record."
},
"media_type": {
"type": "string",
"description": "WordPress media category, such as image or file."
},
"source_url": {
"type": "string",
"description": "Provider URL of the media asset."
},
"description": {
"anyOf": [
{
"type": "string"
},
{
"type": "object",
"properties": {
"raw": {
"type": "string"
},
"rendered": {
"type": "string"
}
}
}
],
"description": "Saved description of this resource or its purpose."
},
"has_archives": {
"type": "boolean",
"description": "Whether this WooCommerce attribute enables public archives."
}
},
"description": "Result items or operation data inside this returned payload. Pagination fields describe only this result page."
},
"total": {
"type": "number",
"description": "Total number of matching items across all result pages."
},
"nextPage": {
"anyOf": [
{
"type": "null"
},
{
"type": "number"
}
],
"description": "Next page to request when more results exist; use the returned value rather than constructing a cursor."
},
"replayed": {
"type": "boolean",
"description": "Whether this response reuses the recorded outcome of an earlier attempt rather than performing a new write."
}
},
"description": "Operation data; optional fields may be absent."
},
"error": {
"type": "string",
"description": "Why the operation failed."
},
"details": {
"type": "object",
"description": "Diagnostics keyed by errorCode."
},
"message": {
"type": "string",
"description": "Outcome or recovery instructions. Project selection means no action ran."
},
"success": {
"type": "boolean",
"description": "Operation success; on false inspect error/errorCode."
},
"upgrade": {
"type": "object",
"description": "Plan-upgrade guidance for an unavailable capability."
},
"category": {
"type": "string",
"description": "Failure category, such as invalid_input or plan_required."
},
"expected": {
"type": "boolean",
"description": "Whether this is an anticipated access, input, plan or state failure."
},
"projects": {
"type": "array",
"items": {
"type": "object",
"properties": {
"id": {
"type": "number",
"description": "Project ID for projectId."
},
"name": {
"type": "string",
"description": "Project name."
}
},
"description": "Accessible project."
},
"description": "Accessible project choices. Select a projectId and retry."
},
"errorCode": {
"type": "string",
"description": "Failure code for recovery."
},
"retryable": {
"type": "boolean",
"description": "Whether an unchanged request can be retried."
},
"statusCode": {
"type": "number",
"description": "HTTP-style failure status."
},
"executionTime": {
"type": "string",
"description": "Elapsed time in seconds, with an s suffix."
}
},
"description": "Operation result envelope."
}
Original tool metadata
{
"name": "update_wordpress_term",
"title": "Update WordPress term",
"description": "Edit a taxonomy term using native fields and targeted originals. A stale original conflicts.\n\nRead the native record and capabilities first. Supply originals for the targeted patch; stale state is a conflict, not permission to overwrite. Saved/staged content and verified public rendering are separate outcomes. Reuse the same attemptId and identical payload only for a retry of the same intended action; a new action needs a new key.",
"inputSchema": {
"type": "object",
"required": [
"projectPublishingId",
"id",
"taxonomy",
"attemptId",
"fields",
"expected"
],
"properties": {
"id": {
"type": "number",
"minimum": 1,
"description": "Native term ID from list_wordpress_terms in the selected taxonomy."
},
"fields": {
"type": "object",
"description": "Explicit native fields to change. Omitted fields remain unchanged; read the current item and capabilities before constructing edits.",
"minProperties": 1,
"additionalProperties": true
},
"context": {
"type": "string",
"maxLength": 120,
"description": "Short purpose of this call for the activity log. Exclude personal data and private source content."
},
"expected": {
"type": "object",
"description": "Original values read immediately before editing. Supply originals only for targeted fields so concurrent changes can be detected.",
"additionalProperties": true
},
"taxonomy": {
"type": "string",
"description": "Native WordPress taxonomy slug from list_wordpress_taxonomies."
},
"attemptId": {
"type": "string",
"format": "uuid",
"description": "Caller-generated identifier for one intended mutation. Reuse it with the identical payload after an uncertain response; use a new identifier for a different intended action."
},
"llm_model": {
"type": "string",
"maxLength": 128,
"description": "Use the exact model ID executing this call, from runtime/system context, for usage attribution. Supply it on every Atomic MCP tool call, including discovery and feedback, and update it if the model changes. Use the model ID rather than the client app name. If unavailable, omit it; never guess or ask the user."
},
"projectId": {
"type": "number",
"description": "Atomic project ID from list_projects. Omit to use the configured project; if asked to choose, select one of the accessible returned IDs."
},
"projectPublishingId": {
"type": "number",
"minimum": 1,
"description": "Atomic publishing connection ID from get_publishing_connections, not the provider site or post ID."
}
},
"additionalProperties": false
},
"outputSchema": {
"type": "object",
"required": [
"success"
],
"properties": {
"url": {
"type": "string",
"description": "Link for resolving the failure or completing the operation."
},
"data": {
"type": "object",
"required": [
"data"
],
"properties": {
"data": {
"type": "object",
"required": [
"id"
],
"properties": {
"id": {
"type": "number",
"description": "Identifier of this returned resource. Use it for subsequent reads or edits of the same resource."
},
"link": {
"type": "string"
},
"name": {
"type": "string",
"description": "Human-readable name of this resource."
},
"slug": {
"type": "string",
"description": "Saved URL slug or native CMS slug of this item."
},
"type": {
"type": "string",
"description": "Kind of the returned item; determines how its operation-specific fields should be interpreted."
},
"count": {
"type": "number",
"description": "Number of records reported by the provider for this group."
},
"title": {
"type": "object",
"properties": {
"raw": {
"type": "string"
},
"rendered": {
"type": "string"
}
},
"description": "Display or content title of this returned item."
},
"parent": {
"type": "number",
"description": "Native parent record ID; zero denotes the provider root when applicable."
},
"status": {
"type": "string",
"description": "Current saved or execution state reported by the operation."
},
"caption": {
"type": "object",
"properties": {
"raw": {
"type": "string"
},
"rendered": {
"type": "string"
}
},
"description": "Native media caption with raw/rendered values when supplied."
},
"alt_text": {
"type": "string",
"description": "Saved accessible alternative text on the native WordPress media record."
},
"order_by": {
"type": "string",
"description": "Native ordering policy for WooCommerce attribute terms."
},
"taxonomy": {
"type": "string",
"description": "Native taxonomy slug owning this term."
},
"mime_type": {
"type": "string",
"description": "Native MIME type of this media record."
},
"media_type": {
"type": "string",
"description": "WordPress media category, such as image or file."
},
"source_url": {
"type": "string",
"description": "Provider URL of the media asset."
},
"description": {
"anyOf": [
{
"type": "string"
},
{
"type": "object",
"properties": {
"raw": {
"type": "string"
},
"rendered": {
"type": "string"
}
}
}
],
"description": "Saved description of this resource or its purpose."
},
"has_archives": {
"type": "boolean",
"description": "Whether this WooCommerce attribute enables public archives."
}
},
"description": "Result items or operation data inside this returned payload. Pagination fields describe only this result page."
},
"total": {
"type": "number",
"description": "Total number of matching items across all result pages."
},
"nextPage": {
"anyOf": [
{
"type": "null"
},
{
"type": "number"
}
],
"description": "Next page to request when more results exist; use the returned value rather than constructing a cursor."
},
"replayed": {
"type": "boolean",
"description": "Whether this response reuses the recorded outcome of an earlier attempt rather than performing a new write."
}
},
"description": "Operation data; optional fields may be absent."
},
"error": {
"type": "string",
"description": "Why the operation failed."
},
"details": {
"type": "object",
"description": "Diagnostics keyed by errorCode."
},
"message": {
"type": "string",
"description": "Outcome or recovery instructions. Project selection means no action ran."
},
"success": {
"type": "boolean",
"description": "Operation success; on false inspect error/errorCode."
},
"upgrade": {
"type": "object",
"description": "Plan-upgrade guidance for an unavailable capability."
},
"category": {
"type": "string",
"description": "Failure category, such as invalid_input or plan_required."
},
"expected": {
"type": "boolean",
"description": "Whether this is an anticipated access, input, plan or state failure."
},
"projects": {
"type": "array",
"items": {
"type": "object",
"properties": {
"id": {
"type": "number",
"description": "Project ID for projectId."
},
"name": {
"type": "string",
"description": "Project name."
}
},
"description": "Accessible project."
},
"description": "Accessible project choices. Select a projectId and retry."
},
"errorCode": {
"type": "string",
"description": "Failure code for recovery."
},
"retryable": {
"type": "boolean",
"description": "Whether an unchanged request can be retried."
},
"statusCode": {
"type": "number",
"description": "HTTP-style failure status."
},
"executionTime": {
"type": "string",
"description": "Elapsed time in seconds, with an s suffix."
}
},
"description": "Operation result envelope."
},
"annotations": {
"readOnlyHint": false,
"openWorldHint": true,
"idempotentHint": true,
"destructiveHint": true
}
}
The title clearly communicates the tool’s action and subject. Keep it concise.
Description89/100
Edit a workflows folder's name and description. List folders first, then supply both fields; use an empty description to clear it.
Changes the existing folder metadata, not the contained workflow content. Read list_workflow_folders first and preserve the description unless clearing it is intended.
The description explains the capability, when to use it, and what to expect.
Inputs79/100
Remove validation rules already expressed in this field’s schema; describe its meaning and usage instead.
folderId
Folder ID from the folder listing in this collection.
Remove validation rules already expressed in this field’s schema; describe its meaning and usage instead.
name
Folder name.
Remove validation rules already expressed in this field’s schema; describe its meaning and usage instead.
description
Folder description. Use an empty string to clear it.
Remove validation rules already expressed in this field’s schema; describe its meaning and usage instead.
projectId
Atomic project ID from list_projects. Omit to use the configured project; if asked to choose, select one of the accessible returned IDs.
Clear enough to supply this argument.
context
Short purpose of this call for the activity log. Exclude personal data and private source content.
Remove validation rules already expressed in this field’s schema; describe its meaning and usage instead.
llm_model
Use the exact model ID executing this call, from runtime/system context, for usage attribution. Supply it on every Atomic MCP tool call, including discovery and feedback, and update it if the model changes. Use the model ID rather than the client app name. If unavailable, omit it; never guess or ask the user.
Remove validation rules already expressed in this field’s schema; describe its meaning and usage instead.
{
"type": "object",
"required": [
"success"
],
"properties": {
"url": {
"type": "string",
"description": "Link for resolving the failure or completing the operation."
},
"data": {
"type": "object",
"required": [
"id",
"projectId",
"collection",
"name",
"description"
],
"properties": {
"id": {
"type": "number",
"description": "Identifier of this returned resource. Use it for subsequent reads or edits of the same resource."
},
"name": {
"type": "string",
"description": "Human-readable name of this resource."
},
"projectId": {
"type": "number",
"description": "Atomic project that owns this resource."
},
"collection": {
"enum": [
"content",
"grids",
"workflows",
"reports"
],
"type": "string",
"description": "Atomic collection that owns these folders or items."
},
"description": {
"type": "string",
"description": "Saved description of this resource or its purpose."
}
},
"description": "Operation data; optional fields may be absent."
},
"error": {
"type": "string",
"description": "Why the operation failed."
},
"details": {
"type": "object",
"description": "Diagnostics keyed by errorCode."
},
"message": {
"type": "string",
"description": "Outcome or recovery instructions. Project selection means no action ran."
},
"success": {
"type": "boolean",
"description": "Operation success; on false inspect error/errorCode."
},
"upgrade": {
"type": "object",
"description": "Plan-upgrade guidance for an unavailable capability."
},
"category": {
"type": "string",
"description": "Failure category, such as invalid_input or plan_required."
},
"expected": {
"type": "boolean",
"description": "Whether this is an anticipated access, input, plan or state failure."
},
"projects": {
"type": "array",
"items": {
"type": "object",
"properties": {
"id": {
"type": "number",
"description": "Project ID for projectId."
},
"name": {
"type": "string",
"description": "Project name."
}
},
"description": "Accessible project."
},
"description": "Accessible project choices. Select a projectId and retry."
},
"errorCode": {
"type": "string",
"description": "Failure code for recovery."
},
"retryable": {
"type": "boolean",
"description": "Whether an unchanged request can be retried."
},
"statusCode": {
"type": "number",
"description": "HTTP-style failure status."
},
"executionTime": {
"type": "string",
"description": "Elapsed time in seconds, with an s suffix."
}
},
"description": "Operation result envelope."
}
Original tool metadata
{
"name": "update_workflow_folder",
"title": "Update workflow folder",
"description": "Edit a workflows folder's name and description. List folders first, then supply both fields; use an empty description to clear it.\n\nChanges the existing folder metadata, not the contained workflow content. Read list_workflow_folders first and preserve the description unless clearing it is intended.",
"inputSchema": {
"type": "object",
"required": [
"folderId",
"name",
"description"
],
"properties": {
"name": {
"type": "string",
"maxLength": 120,
"minLength": 1,
"description": "Folder name."
},
"context": {
"type": "string",
"maxLength": 120,
"description": "Short purpose of this call for the activity log. Exclude personal data and private source content."
},
"folderId": {
"type": "number",
"minimum": 1,
"multipleOf": 1,
"description": "Folder ID from the folder listing in this collection."
},
"llm_model": {
"type": "string",
"maxLength": 128,
"description": "Use the exact model ID executing this call, from runtime/system context, for usage attribution. Supply it on every Atomic MCP tool call, including discovery and feedback, and update it if the model changes. Use the model ID rather than the client app name. If unavailable, omit it; never guess or ask the user."
},
"projectId": {
"type": "number",
"description": "Atomic project ID from list_projects. Omit to use the configured project; if asked to choose, select one of the accessible returned IDs."
},
"description": {
"type": "string",
"maxLength": 2000,
"description": "Folder description. Use an empty string to clear it."
}
},
"additionalProperties": false
},
"outputSchema": {
"type": "object",
"required": [
"success"
],
"properties": {
"url": {
"type": "string",
"description": "Link for resolving the failure or completing the operation."
},
"data": {
"type": "object",
"required": [
"id",
"projectId",
"collection",
"name",
"description"
],
"properties": {
"id": {
"type": "number",
"description": "Identifier of this returned resource. Use it for subsequent reads or edits of the same resource."
},
"name": {
"type": "string",
"description": "Human-readable name of this resource."
},
"projectId": {
"type": "number",
"description": "Atomic project that owns this resource."
},
"collection": {
"enum": [
"content",
"grids",
"workflows",
"reports"
],
"type": "string",
"description": "Atomic collection that owns these folders or items."
},
"description": {
"type": "string",
"description": "Saved description of this resource or its purpose."
}
},
"description": "Operation data; optional fields may be absent."
},
"error": {
"type": "string",
"description": "Why the operation failed."
},
"details": {
"type": "object",
"description": "Diagnostics keyed by errorCode."
},
"message": {
"type": "string",
"description": "Outcome or recovery instructions. Project selection means no action ran."
},
"success": {
"type": "boolean",
"description": "Operation success; on false inspect error/errorCode."
},
"upgrade": {
"type": "object",
"description": "Plan-upgrade guidance for an unavailable capability."
},
"category": {
"type": "string",
"description": "Failure category, such as invalid_input or plan_required."
},
"expected": {
"type": "boolean",
"description": "Whether this is an anticipated access, input, plan or state failure."
},
"projects": {
"type": "array",
"items": {
"type": "object",
"properties": {
"id": {
"type": "number",
"description": "Project ID for projectId."
},
"name": {
"type": "string",
"description": "Project name."
}
},
"description": "Accessible project."
},
"description": "Accessible project choices. Select a projectId and retry."
},
"errorCode": {
"type": "string",
"description": "Failure code for recovery."
},
"retryable": {
"type": "boolean",
"description": "Whether an unchanged request can be retried."
},
"statusCode": {
"type": "number",
"description": "HTTP-style failure status."
},
"executionTime": {
"type": "string",
"description": "Elapsed time in seconds, with an s suffix."
}
},
"description": "Operation result envelope."
},
"annotations": {
"readOnlyHint": false,
"openWorldHint": false,
"idempotentHint": false,
"destructiveHint": true
}
}
The title clearly communicates the tool’s action and subject. Keep it concise.
Description96/100
Update an existing draft workflow step without deleting it. Use this for prompt corrections, variable-reference fixes, tool access changes, positions, or disabling a step. The step ID and graph edges remain stable. Returns the canonical stepName and exact outputReferences.
The description explains the capability, when to use it, and what to expect.
Inputs72/100
Explain the meaning of this value, not just its name.
stepId
Database step ID from get_workflow_steps or add_workflow_step; do not supply the workflow-local stepIndex.
Clear enough to supply this argument.
inputs
Input fields to merge into the current step configuration
Explain the meaning of this value, not just its name.
position › x
Horizontal workflow-editor position.
Clarify units, where to obtain this value, or conventions not already expressed in the schema.
position › y
Vertical workflow-editor position.
Clarify units, where to obtain this value, or conventions not already expressed in the schema.
disabled
Whether the step is disabled
Explain the meaning of this value, not just its name.
projectId
Atomic project ID from list_projects. Omit to use the configured project; if asked to choose, select one of the accessible returned IDs.
Clear enough to supply this argument.
context
Short purpose of this call for the activity log. Exclude personal data and private source content.
Remove validation rules already expressed in this field’s schema; describe its meaning and usage instead.
llm_model
Use the exact model ID executing this call, from runtime/system context, for usage attribution. Supply it on every Atomic MCP tool call, including discovery and feedback, and update it if the model changes. Use the model ID rather than the client app name. If unavailable, omit it; never guess or ask the user.
The title clearly communicates the tool’s action and subject. Keep it concise.
Description95/100
Upload a file to S3 storage and get a public URL. Useful when generating files (images, PDFs, etc.) via code execution and need to share them in markdown responses. Accepts base64 encoded data or data URLs (e.g., data:image/png;base64,...). Returns a public URL that can be used in markdown.
The description explains the capability, when to use it, and what to expect.
Inputs93/100
Remove validation rules already expressed in this field’s schema; describe its meaning and usage instead.
fileData
Base64 encoded file data or data URL (e.g., "data:image/png;base64,iVBORw0KGgo..." or just the base64 string). For data URLs, the content type will be extracted automatically.
Clear enough to supply this argument.
filename
Filename with extension (e.g., "chart.png", "report.pdf", "data.csv")
Clear enough to supply this argument.
contentType
MIME type (e.g., "image/png", "application/pdf", "text/csv"). Optional - will be inferred from data URL or filename if not provided.
Clear enough to supply this argument.
projectId
Atomic project ID from list_projects. Omit to use the configured project; if asked to choose, select one of the accessible returned IDs.
Clear enough to supply this argument.
context
Short purpose of this call for the activity log. Exclude personal data and private source content.
Remove validation rules already expressed in this field’s schema; describe its meaning and usage instead.
llm_model
Use the exact model ID executing this call, from runtime/system context, for usage attribution. Supply it on every Atomic MCP tool call, including discovery and feedback, and update it if the model changes. Use the model ID rather than the client app name. If unavailable, omit it; never guess or ask the user.
{
"type": "object",
"required": [
"success"
],
"properties": {
"url": {
"type": "string",
"description": "Link for resolving the failure or completing the operation."
},
"data": {
"type": "object",
"required": [
"url",
"key",
"filename",
"contentType",
"size"
],
"properties": {
"key": {
"type": "string",
"description": "Storage or provider key identifying this returned resource."
},
"url": {
"type": "string",
"description": "URL returned for this resource or operation."
},
"size": {
"type": "number",
"description": "Size measurement reported by this resource; file results use bytes and visual results use their documented dimensions."
},
"filename": {
"type": "string",
"description": "Filename of the stored or uploaded asset."
},
"contentType": {
"type": "string",
"description": "Content kind returned by the operation, such as a native CMS post type or a file MIME type."
}
},
"description": "Operation data; optional fields may be absent."
},
"error": {
"type": "string",
"description": "Why the operation failed."
},
"details": {
"type": "object",
"description": "Diagnostics keyed by errorCode."
},
"message": {
"type": "string",
"description": "Outcome or recovery instructions. Project selection means no action ran."
},
"success": {
"type": "boolean",
"description": "Operation success; on false inspect error/errorCode."
},
"upgrade": {
"type": "object",
"description": "Plan-upgrade guidance for an unavailable capability."
},
"category": {
"type": "string",
"description": "Failure category, such as invalid_input or plan_required."
},
"expected": {
"type": "boolean",
"description": "Whether this is an anticipated access, input, plan or state failure."
},
"projects": {
"type": "array",
"items": {
"type": "object",
"properties": {
"id": {
"type": "number",
"description": "Project ID for projectId."
},
"name": {
"type": "string",
"description": "Project name."
}
},
"description": "Accessible project."
},
"description": "Accessible project choices. Select a projectId and retry."
},
"errorCode": {
"type": "string",
"description": "Failure code for recovery."
},
"retryable": {
"type": "boolean",
"description": "Whether an unchanged request can be retried."
},
"statusCode": {
"type": "number",
"description": "HTTP-style failure status."
},
"executionTime": {
"type": "string",
"description": "Elapsed time in seconds, with an s suffix."
}
},
"description": "Operation result envelope."
}
Original tool metadata
{
"name": "upload_file_to_s3",
"title": "Upload file to S3",
"description": "Upload a file to S3 storage and get a public URL. Useful when generating files (images, PDFs, etc.) via code execution and need to share them in markdown responses. Accepts base64 encoded data or data URLs (e.g., data:image/png;base64,...). Returns a public URL that can be used in markdown.",
"inputSchema": {
"type": "object",
"required": [
"fileData",
"filename"
],
"properties": {
"context": {
"type": "string",
"maxLength": 120,
"description": "Short purpose of this call for the activity log. Exclude personal data and private source content."
},
"fileData": {
"type": "string",
"description": "Base64 encoded file data or data URL (e.g., \"data:image/png;base64,iVBORw0KGgo...\" or just the base64 string). For data URLs, the content type will be extracted automatically."
},
"filename": {
"type": "string",
"description": "Filename with extension (e.g., \"chart.png\", \"report.pdf\", \"data.csv\")"
},
"llm_model": {
"type": "string",
"maxLength": 128,
"description": "Use the exact model ID executing this call, from runtime/system context, for usage attribution. Supply it on every Atomic MCP tool call, including discovery and feedback, and update it if the model changes. Use the model ID rather than the client app name. If unavailable, omit it; never guess or ask the user."
},
"projectId": {
"type": "number",
"description": "Atomic project ID from list_projects. Omit to use the configured project; if asked to choose, select one of the accessible returned IDs."
},
"contentType": {
"type": "string",
"description": "MIME type (e.g., \"image/png\", \"application/pdf\", \"text/csv\"). Optional - will be inferred from data URL or filename if not provided."
}
}
},
"outputSchema": {
"type": "object",
"required": [
"success"
],
"properties": {
"url": {
"type": "string",
"description": "Link for resolving the failure or completing the operation."
},
"data": {
"type": "object",
"required": [
"url",
"key",
"filename",
"contentType",
"size"
],
"properties": {
"key": {
"type": "string",
"description": "Storage or provider key identifying this returned resource."
},
"url": {
"type": "string",
"description": "URL returned for this resource or operation."
},
"size": {
"type": "number",
"description": "Size measurement reported by this resource; file results use bytes and visual results use their documented dimensions."
},
"filename": {
"type": "string",
"description": "Filename of the stored or uploaded asset."
},
"contentType": {
"type": "string",
"description": "Content kind returned by the operation, such as a native CMS post type or a file MIME type."
}
},
"description": "Operation data; optional fields may be absent."
},
"error": {
"type": "string",
"description": "Why the operation failed."
},
"details": {
"type": "object",
"description": "Diagnostics keyed by errorCode."
},
"message": {
"type": "string",
"description": "Outcome or recovery instructions. Project selection means no action ran."
},
"success": {
"type": "boolean",
"description": "Operation success; on false inspect error/errorCode."
},
"upgrade": {
"type": "object",
"description": "Plan-upgrade guidance for an unavailable capability."
},
"category": {
"type": "string",
"description": "Failure category, such as invalid_input or plan_required."
},
"expected": {
"type": "boolean",
"description": "Whether this is an anticipated access, input, plan or state failure."
},
"projects": {
"type": "array",
"items": {
"type": "object",
"properties": {
"id": {
"type": "number",
"description": "Project ID for projectId."
},
"name": {
"type": "string",
"description": "Project name."
}
},
"description": "Accessible project."
},
"description": "Accessible project choices. Select a projectId and retry."
},
"errorCode": {
"type": "string",
"description": "Failure code for recovery."
},
"retryable": {
"type": "boolean",
"description": "Whether an unchanged request can be retried."
},
"statusCode": {
"type": "number",
"description": "HTTP-style failure status."
},
"executionTime": {
"type": "string",
"description": "Elapsed time in seconds, with an s suffix."
}
},
"description": "Operation result envelope."
},
"annotations": {
"readOnlyHint": false,
"openWorldHint": true,
"idempotentHint": false,
"destructiveHint": false
}
}
The title clearly communicates the tool’s action and subject. Keep it concise.
Description72/100
Upload a base64 JPEG, PNG, GIF or WebP image up to 5 MiB and set title and alt text. Reuse attemptId on retries.
Read the target and native capabilities before constructing this operation. Reuse the same attemptId and identical payload only for a retry of the same intended action; a new action needs a new key.
Describe the returned information so the agent knows whether it will answer the request.
Inputs88/100
Remove validation rules already expressed in this field’s schema; describe its meaning and usage instead.
projectPublishingId
Atomic publishing connection ID from get_publishing_connections, not the provider site or post ID.
Clear enough to supply this argument.
attemptId
Caller-generated identifier for one intended mutation. Reuse it with the identical payload after an uncertain response; use a new identifier for a different intended action.
Clear enough to supply this argument.
filename
Filename, including the intended extension, for the uploaded file.
Clear enough to supply this argument.
base64
Base64-encoded file bytes; pass the encoded content rather than a local filesystem path.
Remove validation rules already expressed in this field’s schema; describe its meaning and usage instead.
title
Human-readable title for this item.
Clear enough to supply this argument.
altText
Accessible text describing the image for readers who cannot see it.
Clear enough to supply this argument.
projectId
Atomic project ID from list_projects. Omit to use the configured project; if asked to choose, select one of the accessible returned IDs.
Clear enough to supply this argument.
context
Short purpose of this call for the activity log. Exclude personal data and private source content.
Remove validation rules already expressed in this field’s schema; describe its meaning and usage instead.
llm_model
Use the exact model ID executing this call, from runtime/system context, for usage attribution. Supply it on every Atomic MCP tool call, including discovery and feedback, and update it if the model changes. Use the model ID rather than the client app name. If unavailable, omit it; never guess or ask the user.
Remove validation rules already expressed in this field’s schema; describe its meaning and usage instead.
{
"type": "object",
"required": [
"success"
],
"properties": {
"url": {
"type": "string",
"description": "Link for resolving the failure or completing the operation."
},
"data": {
"type": "object",
"required": [
"data"
],
"properties": {
"data": {
"type": "object",
"required": [
"id"
],
"properties": {
"id": {
"type": "number",
"description": "Identifier of this returned resource. Use it for subsequent reads or edits of the same resource."
},
"link": {
"type": "string"
},
"name": {
"type": "string",
"description": "Human-readable name of this resource."
},
"slug": {
"type": "string",
"description": "Saved URL slug or native CMS slug of this item."
},
"type": {
"type": "string",
"description": "Kind of the returned item; determines how its operation-specific fields should be interpreted."
},
"count": {
"type": "number",
"description": "Number of records reported by the provider for this group."
},
"title": {
"type": "object",
"properties": {
"raw": {
"type": "string"
},
"rendered": {
"type": "string"
}
},
"description": "Display or content title of this returned item."
},
"parent": {
"type": "number",
"description": "Native parent record ID; zero denotes the provider root when applicable."
},
"status": {
"type": "string",
"description": "Current saved or execution state reported by the operation."
},
"caption": {
"type": "object",
"properties": {
"raw": {
"type": "string"
},
"rendered": {
"type": "string"
}
},
"description": "Native media caption with raw/rendered values when supplied."
},
"alt_text": {
"type": "string",
"description": "Saved accessible alternative text on the native WordPress media record."
},
"order_by": {
"type": "string",
"description": "Native ordering policy for WooCommerce attribute terms."
},
"taxonomy": {
"type": "string",
"description": "Native taxonomy slug owning this term."
},
"mime_type": {
"type": "string",
"description": "Native MIME type of this media record."
},
"media_type": {
"type": "string",
"description": "WordPress media category, such as image or file."
},
"source_url": {
"type": "string",
"description": "Provider URL of the media asset."
},
"description": {
"anyOf": [
{
"type": "string"
},
{
"type": "object",
"properties": {
"raw": {
"type": "string"
},
"rendered": {
"type": "string"
}
}
}
],
"description": "Saved description of this resource or its purpose."
},
"has_archives": {
"type": "boolean",
"description": "Whether this WooCommerce attribute enables public archives."
}
},
"description": "Result items or operation data inside this returned payload. Pagination fields describe only this result page."
},
"total": {
"type": "number",
"description": "Total number of matching items across all result pages."
},
"nextPage": {
"anyOf": [
{
"type": "null"
},
{
"type": "number"
}
],
"description": "Next page to request when more results exist; use the returned value rather than constructing a cursor."
},
"replayed": {
"type": "boolean",
"description": "Whether this response reuses the recorded outcome of an earlier attempt rather than performing a new write."
}
},
"description": "Operation data; optional fields may be absent."
},
"error": {
"type": "string",
"description": "Why the operation failed."
},
"details": {
"type": "object",
"description": "Diagnostics keyed by errorCode."
},
"message": {
"type": "string",
"description": "Outcome or recovery instructions. Project selection means no action ran."
},
"success": {
"type": "boolean",
"description": "Operation success; on false inspect error/errorCode."
},
"upgrade": {
"type": "object",
"description": "Plan-upgrade guidance for an unavailable capability."
},
"category": {
"type": "string",
"description": "Failure category, such as invalid_input or plan_required."
},
"expected": {
"type": "boolean",
"description": "Whether this is an anticipated access, input, plan or state failure."
},
"projects": {
"type": "array",
"items": {
"type": "object",
"properties": {
"id": {
"type": "number",
"description": "Project ID for projectId."
},
"name": {
"type": "string",
"description": "Project name."
}
},
"description": "Accessible project."
},
"description": "Accessible project choices. Select a projectId and retry."
},
"errorCode": {
"type": "string",
"description": "Failure code for recovery."
},
"retryable": {
"type": "boolean",
"description": "Whether an unchanged request can be retried."
},
"statusCode": {
"type": "number",
"description": "HTTP-style failure status."
},
"executionTime": {
"type": "string",
"description": "Elapsed time in seconds, with an s suffix."
}
},
"description": "Operation result envelope."
}
Original tool metadata
{
"name": "upload_wordpress_media",
"title": "Upload WordPress media",
"description": "Upload a base64 JPEG, PNG, GIF or WebP image up to 5 MiB and set title and alt text. Reuse attemptId on retries.\n\nRead the target and native capabilities before constructing this operation. Reuse the same attemptId and identical payload only for a retry of the same intended action; a new action needs a new key.",
"inputSchema": {
"type": "object",
"required": [
"projectPublishingId",
"attemptId",
"filename",
"base64"
],
"properties": {
"title": {
"type": "string",
"description": "Human-readable title for this item."
},
"base64": {
"type": "string",
"maxLength": 6990508,
"description": "Base64-encoded file bytes; pass the encoded content rather than a local filesystem path."
},
"altText": {
"type": "string",
"description": "Accessible text describing the image for readers who cannot see it."
},
"context": {
"type": "string",
"maxLength": 120,
"description": "Short purpose of this call for the activity log. Exclude personal data and private source content."
},
"filename": {
"type": "string",
"description": "Filename, including the intended extension, for the uploaded file."
},
"attemptId": {
"type": "string",
"format": "uuid",
"description": "Caller-generated identifier for one intended mutation. Reuse it with the identical payload after an uncertain response; use a new identifier for a different intended action."
},
"llm_model": {
"type": "string",
"maxLength": 128,
"description": "Use the exact model ID executing this call, from runtime/system context, for usage attribution. Supply it on every Atomic MCP tool call, including discovery and feedback, and update it if the model changes. Use the model ID rather than the client app name. If unavailable, omit it; never guess or ask the user."
},
"projectId": {
"type": "number",
"description": "Atomic project ID from list_projects. Omit to use the configured project; if asked to choose, select one of the accessible returned IDs."
},
"projectPublishingId": {
"type": "number",
"minimum": 1,
"description": "Atomic publishing connection ID from get_publishing_connections, not the provider site or post ID."
}
},
"additionalProperties": false
},
"outputSchema": {
"type": "object",
"required": [
"success"
],
"properties": {
"url": {
"type": "string",
"description": "Link for resolving the failure or completing the operation."
},
"data": {
"type": "object",
"required": [
"data"
],
"properties": {
"data": {
"type": "object",
"required": [
"id"
],
"properties": {
"id": {
"type": "number",
"description": "Identifier of this returned resource. Use it for subsequent reads or edits of the same resource."
},
"link": {
"type": "string"
},
"name": {
"type": "string",
"description": "Human-readable name of this resource."
},
"slug": {
"type": "string",
"description": "Saved URL slug or native CMS slug of this item."
},
"type": {
"type": "string",
"description": "Kind of the returned item; determines how its operation-specific fields should be interpreted."
},
"count": {
"type": "number",
"description": "Number of records reported by the provider for this group."
},
"title": {
"type": "object",
"properties": {
"raw": {
"type": "string"
},
"rendered": {
"type": "string"
}
},
"description": "Display or content title of this returned item."
},
"parent": {
"type": "number",
"description": "Native parent record ID; zero denotes the provider root when applicable."
},
"status": {
"type": "string",
"description": "Current saved or execution state reported by the operation."
},
"caption": {
"type": "object",
"properties": {
"raw": {
"type": "string"
},
"rendered": {
"type": "string"
}
},
"description": "Native media caption with raw/rendered values when supplied."
},
"alt_text": {
"type": "string",
"description": "Saved accessible alternative text on the native WordPress media record."
},
"order_by": {
"type": "string",
"description": "Native ordering policy for WooCommerce attribute terms."
},
"taxonomy": {
"type": "string",
"description": "Native taxonomy slug owning this term."
},
"mime_type": {
"type": "string",
"description": "Native MIME type of this media record."
},
"media_type": {
"type": "string",
"description": "WordPress media category, such as image or file."
},
"source_url": {
"type": "string",
"description": "Provider URL of the media asset."
},
"description": {
"anyOf": [
{
"type": "string"
},
{
"type": "object",
"properties": {
"raw": {
"type": "string"
},
"rendered": {
"type": "string"
}
}
}
],
"description": "Saved description of this resource or its purpose."
},
"has_archives": {
"type": "boolean",
"description": "Whether this WooCommerce attribute enables public archives."
}
},
"description": "Result items or operation data inside this returned payload. Pagination fields describe only this result page."
},
"total": {
"type": "number",
"description": "Total number of matching items across all result pages."
},
"nextPage": {
"anyOf": [
{
"type": "null"
},
{
"type": "number"
}
],
"description": "Next page to request when more results exist; use the returned value rather than constructing a cursor."
},
"replayed": {
"type": "boolean",
"description": "Whether this response reuses the recorded outcome of an earlier attempt rather than performing a new write."
}
},
"description": "Operation data; optional fields may be absent."
},
"error": {
"type": "string",
"description": "Why the operation failed."
},
"details": {
"type": "object",
"description": "Diagnostics keyed by errorCode."
},
"message": {
"type": "string",
"description": "Outcome or recovery instructions. Project selection means no action ran."
},
"success": {
"type": "boolean",
"description": "Operation success; on false inspect error/errorCode."
},
"upgrade": {
"type": "object",
"description": "Plan-upgrade guidance for an unavailable capability."
},
"category": {
"type": "string",
"description": "Failure category, such as invalid_input or plan_required."
},
"expected": {
"type": "boolean",
"description": "Whether this is an anticipated access, input, plan or state failure."
},
"projects": {
"type": "array",
"items": {
"type": "object",
"properties": {
"id": {
"type": "number",
"description": "Project ID for projectId."
},
"name": {
"type": "string",
"description": "Project name."
}
},
"description": "Accessible project."
},
"description": "Accessible project choices. Select a projectId and retry."
},
"errorCode": {
"type": "string",
"description": "Failure code for recovery."
},
"retryable": {
"type": "boolean",
"description": "Whether an unchanged request can be retried."
},
"statusCode": {
"type": "number",
"description": "HTTP-style failure status."
},
"executionTime": {
"type": "string",
"description": "Elapsed time in seconds, with an s suffix."
}
},
"description": "Operation result envelope."
},
"annotations": {
"readOnlyHint": false,
"openWorldHint": true,
"idempotentHint": true,
"destructiveHint": false
}
}
The title clearly communicates the tool’s action and subject. Keep it concise.
Description95/100
Create or update multiple draft workflow steps in one serialized mutation. Prefer this over parallel add_workflow_step calls. All items are validated before mutation and the draft is restored if a later item fails. Existing stepIds are updated in place. New steps omit stepId. Each result includes the canonical stepName and exact outputReferences. Do not include INPUT or OUTPUT; configure them with their dedicated tools.
The description explains the capability, when to use it, and what to expect.
Inputs77/100
Remove validation rules already expressed in this field’s schema; describe its meaning and usage instead.
workflowId
Existing project workflow ID from get_workflows or create_workflow; this identifies a pipeline, not a run.
Clear enough to supply this argument.
steps › items › clientKey
Unique caller-owned key used to match results
Clear enough to supply this argument.
steps › items › stepId
Existing database step ID; omit to create a new step
Clear enough to supply this argument.
steps › items › stepType
Workflow step kind selecting the required inputs. Use supported workflow step types and validate before running.
Remove validation rules already expressed in this field’s schema; describe its meaning and usage instead.
steps › items › inputs
Full inputs for new steps or fields to merge for existing steps
Clarify units, where to obtain this value, or conventions not already expressed in the schema.
steps › items › position › x
Horizontal workflow-editor position.
Explain the meaning of this value, not just its name.
steps › items › position › y
Vertical workflow-editor position.
Explain what happens when this optional value is omitted.
steps › items › disabled
Whether the workflow step is skipped during execution.
Clear enough to supply this argument.
projectId
Atomic project ID from list_projects. Omit to use the configured project; if asked to choose, select one of the accessible returned IDs.
Remove validation rules already expressed in this field’s schema; describe its meaning and usage instead.
context
Short purpose of this call for the activity log. Exclude personal data and private source content.
Remove validation rules already expressed in this field’s schema; describe its meaning and usage instead.
llm_model
Use the exact model ID executing this call, from runtime/system context, for usage attribution. Supply it on every Atomic MCP tool call, including discovery and feedback, and update it if the model changes. Use the model ID rather than the client app name. If unavailable, omit it; never guess or ask the user.
Remove validation rules already expressed in this field’s schema; describe its meaning and usage instead.
The title clearly communicates the tool’s action and subject. Keep it concise.
Description94/100
Validate a workflow draft before testing. Checks step inputs, exact variable names and output fields, dependency order, graph reachability, and PROMPT_LLM tool side effects. Fix validation errors with update_workflow_step or upsert_workflow_steps before spending credits on tests.
Checks the saved draft without executing its steps or publishing changes. Fix reported errors before test_workflow_step/test_workflow_steps; a passing check does not prove provider calls will succeed.
The description explains the capability, when to use it, and what to expect.
Inputs94/100
Remove validation rules already expressed in this field’s schema; describe its meaning and usage instead.
workflowId
Existing project workflow ID from get_workflows or create_workflow; this identifies a pipeline, not a run.
Clear enough to supply this argument.
projectId
Atomic project ID from list_projects. Omit to use the configured project; if asked to choose, select one of the accessible returned IDs.
Clear enough to supply this argument.
context
Short purpose of this call for the activity log. Exclude personal data and private source content.
Remove validation rules already expressed in this field’s schema; describe its meaning and usage instead.
llm_model
Use the exact model ID executing this call, from runtime/system context, for usage attribution. Supply it on every Atomic MCP tool call, including discovery and feedback, and update it if the model changes. Use the model ID rather than the client app name. If unavailable, omit it; never guess or ask the user.
The title clearly communicates the tool’s action and subject. Keep it concise.
Description90/100
Verify one or more email addresses using a cheap-first provider waterfall: DeBounce, Bouncer, then ZeroBounce.
Queries external verification providers and may consume credits; it does not send mail or prove consent to contact an address. Use returned verification status rather than assuming deliverability.
The description explains the capability, when to use it, and what to expect.
Inputs91/100
Remove validation rules already expressed in this field’s schema; describe its meaning and usage instead.
Email addresses to verify. At most 100 unique addresses are checked.
Remove validation rules already expressed in this field’s schema; describe its meaning and usage instead.
stopOnFirstValid
Stop checking addresses after the first valid, safe-to-send result.
Clear enough to supply this argument.
projectId
Atomic project ID from list_projects. Omit to use the configured project; if asked to choose, select one of the accessible returned IDs.
Clear enough to supply this argument.
context
Short purpose of this call for the activity log. Exclude personal data and private source content.
Remove validation rules already expressed in this field’s schema; describe its meaning and usage instead.
llm_model
Use the exact model ID executing this call, from runtime/system context, for usage attribution. Supply it on every Atomic MCP tool call, including discovery and feedback, and update it if the model changes. Use the model ID rather than the client app name. If unavailable, omit it; never guess or ask the user.
The title clearly communicates the tool’s action and subject. Keep it concise.
Description79/100
Independently read staged and live CMS records and compare expected field values. Published verifies the Webflow live API, not rendered HTML.
The description explains the capability, when to use it, and what to expect.
Inputs89/100
Clarify units, where to obtain this value, or conventions not already expressed in the schema.
projectPublishingId
Atomic publishing connection ID from get_publishing_connections, not the provider site or post ID.
Clear enough to supply this argument.
collectionId
CMS collection in the connected site
Clarify units, where to obtain this value, or conventions not already expressed in the schema.
itemId
Existing primary-locale CMS post or collection page
Clear enough to supply this argument.
expected
Exact CMS field values to verify in staged and live records
Clear enough to supply this argument.
projectId
Atomic project ID from list_projects. Omit to use the configured project; if asked to choose, select one of the accessible returned IDs.
Clear enough to supply this argument.
context
Short purpose of this call for the activity log. Exclude personal data and private source content.
Remove validation rules already expressed in this field’s schema; describe its meaning and usage instead.
llm_model
Use the exact model ID executing this call, from runtime/system context, for usage attribution. Supply it on every Atomic MCP tool call, including discovery and feedback, and update it if the model changes. Use the model ID rather than the client app name. If unavailable, omit it; never guess or ask the user.
{
"type": "object",
"required": [
"success"
],
"properties": {
"url": {
"type": "string",
"description": "Link for resolving the failure or completing the operation."
},
"data": {
"type": "object",
"required": [
"saved",
"published",
"stagedMismatches",
"liveMismatches",
"checkedAt"
],
"properties": {
"saved": {
"type": "boolean",
"description": "Whether the operation confirmed the requested persisted state."
},
"checkedAt": {
"type": "string",
"description": "Timestamp when the returned verification evidence was collected."
},
"published": {
"type": "boolean",
"description": "Whether the operation verified or reported publication; this alone does not prove rendered HTML correctness."
},
"liveMismatches": {
"type": "array",
"items": {
"type": "string"
},
"description": "Expected fields that differ from the live CMS API record."
},
"stagedMismatches": {
"type": "array",
"items": {
"type": "string"
},
"description": "Expected fields that differ from the staged CMS record."
}
},
"description": "Operation data; optional fields may be absent."
},
"error": {
"type": "string",
"description": "Why the operation failed."
},
"details": {
"type": "object",
"description": "Diagnostics keyed by errorCode."
},
"message": {
"type": "string",
"description": "Outcome or recovery instructions. Project selection means no action ran."
},
"success": {
"type": "boolean",
"description": "Operation success; on false inspect error/errorCode."
},
"upgrade": {
"type": "object",
"description": "Plan-upgrade guidance for an unavailable capability."
},
"category": {
"type": "string",
"description": "Failure category, such as invalid_input or plan_required."
},
"expected": {
"type": "boolean",
"description": "Whether this is an anticipated access, input, plan or state failure."
},
"projects": {
"type": "array",
"items": {
"type": "object",
"properties": {
"id": {
"type": "number",
"description": "Project ID for projectId."
},
"name": {
"type": "string",
"description": "Project name."
}
},
"description": "Accessible project."
},
"description": "Accessible project choices. Select a projectId and retry."
},
"errorCode": {
"type": "string",
"description": "Failure code for recovery."
},
"retryable": {
"type": "boolean",
"description": "Whether an unchanged request can be retried."
},
"statusCode": {
"type": "number",
"description": "HTTP-style failure status."
},
"executionTime": {
"type": "string",
"description": "Elapsed time in seconds, with an s suffix."
}
},
"description": "Operation result envelope."
}
Original tool metadata
{
"name": "verify_webflow_content",
"title": "Verify Webflow content",
"description": "Independently read staged and live CMS records and compare expected field values. Published verifies the Webflow live API, not rendered HTML.",
"inputSchema": {
"type": "object",
"required": [
"projectPublishingId",
"collectionId",
"itemId",
"expected"
],
"properties": {
"itemId": {
"type": "string",
"pattern": "^[a-fA-F0-9]{24}$",
"description": "Existing primary-locale CMS post or collection page"
},
"context": {
"type": "string",
"maxLength": 120,
"description": "Short purpose of this call for the activity log. Exclude personal data and private source content."
},
"expected": {
"type": "object",
"description": "Exact CMS field values to verify in staged and live records",
"minProperties": 1,
"additionalProperties": true
},
"llm_model": {
"type": "string",
"maxLength": 128,
"description": "Use the exact model ID executing this call, from runtime/system context, for usage attribution. Supply it on every Atomic MCP tool call, including discovery and feedback, and update it if the model changes. Use the model ID rather than the client app name. If unavailable, omit it; never guess or ask the user."
},
"projectId": {
"type": "number",
"description": "Atomic project ID from list_projects. Omit to use the configured project; if asked to choose, select one of the accessible returned IDs."
},
"collectionId": {
"type": "string",
"pattern": "^[a-fA-F0-9]{24}$",
"description": "CMS collection in the connected site"
},
"projectPublishingId": {
"type": "number",
"minimum": 1,
"description": "Atomic publishing connection ID from get_publishing_connections, not the provider site or post ID."
}
},
"additionalProperties": false
},
"outputSchema": {
"type": "object",
"required": [
"success"
],
"properties": {
"url": {
"type": "string",
"description": "Link for resolving the failure or completing the operation."
},
"data": {
"type": "object",
"required": [
"saved",
"published",
"stagedMismatches",
"liveMismatches",
"checkedAt"
],
"properties": {
"saved": {
"type": "boolean",
"description": "Whether the operation confirmed the requested persisted state."
},
"checkedAt": {
"type": "string",
"description": "Timestamp when the returned verification evidence was collected."
},
"published": {
"type": "boolean",
"description": "Whether the operation verified or reported publication; this alone does not prove rendered HTML correctness."
},
"liveMismatches": {
"type": "array",
"items": {
"type": "string"
},
"description": "Expected fields that differ from the live CMS API record."
},
"stagedMismatches": {
"type": "array",
"items": {
"type": "string"
},
"description": "Expected fields that differ from the staged CMS record."
}
},
"description": "Operation data; optional fields may be absent."
},
"error": {
"type": "string",
"description": "Why the operation failed."
},
"details": {
"type": "object",
"description": "Diagnostics keyed by errorCode."
},
"message": {
"type": "string",
"description": "Outcome or recovery instructions. Project selection means no action ran."
},
"success": {
"type": "boolean",
"description": "Operation success; on false inspect error/errorCode."
},
"upgrade": {
"type": "object",
"description": "Plan-upgrade guidance for an unavailable capability."
},
"category": {
"type": "string",
"description": "Failure category, such as invalid_input or plan_required."
},
"expected": {
"type": "boolean",
"description": "Whether this is an anticipated access, input, plan or state failure."
},
"projects": {
"type": "array",
"items": {
"type": "object",
"properties": {
"id": {
"type": "number",
"description": "Project ID for projectId."
},
"name": {
"type": "string",
"description": "Project name."
}
},
"description": "Accessible project."
},
"description": "Accessible project choices. Select a projectId and retry."
},
"errorCode": {
"type": "string",
"description": "Failure code for recovery."
},
"retryable": {
"type": "boolean",
"description": "Whether an unchanged request can be retried."
},
"statusCode": {
"type": "number",
"description": "HTTP-style failure status."
},
"executionTime": {
"type": "string",
"description": "Elapsed time in seconds, with an s suffix."
}
},
"description": "Operation result envelope."
},
"annotations": {
"readOnlyHint": true,
"openWorldHint": true,
"idempotentHint": true,
"destructiveHint": false
}
}
The title clearly communicates the tool’s action and subject. Keep it concise.
Description82/100
Verify published page, post or product rendering against expected text and SEO. Fetches the public permalink without credentials; follows bounded same-site redirects and rejects cross-site redirects or drafts.
The description explains the capability, when to use it, and what to expect.
Inputs89/100
Remove validation rules already expressed in this field’s schema; describe its meaning and usage instead.
projectPublishingId
Atomic publishing connection ID from get_publishing_connections, not the provider site or post ID.
Clear enough to supply this argument.
id
Native WordPress content ID from list_wordpress_content or get_wordpress_content.
Clear enough to supply this argument.
expected › text
Text content for the targeted element or operation.
Remove validation rules already expressed in this field’s schema; describe its meaning and usage instead.
expected › title
Human-readable title for this item.
Explain the meaning of this value, not just its name.
expected › metaDescription
Search-result description managed by the selected SEO plugin.
Clear enough to supply this argument.
expected › canonicalUrl
Canonical URL declared for this item; use the page's intended canonical address.
Clear enough to supply this argument.
expected › robots
Robots directives for the page, using the selected plugin's supported representation.
Clarify units, where to obtain this value, or conventions not already expressed in the schema.
expected › openGraphTitle
Title used in Open Graph link previews.
Clear enough to supply this argument.
expected › openGraphDescription
Description used in Open Graph link previews.
Clear enough to supply this argument.
expected › twitterTitle
Title used for X/Twitter link cards.
Clear enough to supply this argument.
expected › schemaTypes
Structured-data types selected for this page in the SEO plugin.
Clear enough to supply this argument.
projectId
Atomic project ID from list_projects. Omit to use the configured project; if asked to choose, select one of the accessible returned IDs.
Clear enough to supply this argument.
context
Short purpose of this call for the activity log. Exclude personal data and private source content.
Clear enough to supply this argument.
llm_model
Use the exact model ID executing this call, from runtime/system context, for usage attribution. Supply it on every Atomic MCP tool call, including discovery and feedback, and update it if the model changes. Use the model ID rather than the client app name. If unavailable, omit it; never guess or ask the user.
Remove validation rules already expressed in this field’s schema; describe its meaning and usage instead.
{
"type": "object",
"required": [
"success"
],
"properties": {
"url": {
"type": "string",
"description": "Link for resolving the failure or completing the operation."
},
"data": {
"type": "object",
"required": [
"data"
],
"properties": {
"data": {
"type": "object",
"required": [
"url",
"status",
"checkedAt",
"passed",
"checks",
"rendered"
],
"properties": {
"url": {
"type": "string",
"description": "URL returned for this resource or operation."
},
"checks": {
"type": "array",
"items": {
"type": "object",
"description": "Nested operation-specific fields."
}
},
"passed": {
"type": "boolean"
},
"status": {
"type": "number",
"description": "Current saved or execution state reported by the operation."
},
"rendered": {
"type": "object",
"properties": {
"text": {
"type": "array",
"items": {
"type": "string"
}
},
"title": {
"type": "string",
"description": "Display or content title of this returned item."
},
"robots": {
"type": "array",
"items": {
"type": "string"
}
},
"schemaTypes": {
"type": "array",
"items": {
"type": "string"
}
},
"canonicalUrl": {
"type": "string"
},
"twitterTitle": {
"type": "string"
},
"openGraphTitle": {
"type": "string"
},
"metaDescription": {
"type": "string",
"description": "Saved page meta description used in search snippets."
},
"openGraphDescription": {
"type": "string"
}
}
},
"checkedAt": {
"type": "string",
"description": "Timestamp when the returned verification evidence was collected."
}
},
"description": "Result items or operation data inside this returned payload. Pagination fields describe only this result page."
}
},
"description": "Operation data; optional fields may be absent."
},
"error": {
"type": "string",
"description": "Why the operation failed."
},
"details": {
"type": "object",
"description": "Diagnostics keyed by errorCode."
},
"message": {
"type": "string",
"description": "Outcome or recovery instructions. Project selection means no action ran."
},
"success": {
"type": "boolean",
"description": "Operation success; on false inspect error/errorCode."
},
"upgrade": {
"type": "object",
"description": "Plan-upgrade guidance for an unavailable capability."
},
"category": {
"type": "string",
"description": "Failure category, such as invalid_input or plan_required."
},
"expected": {
"type": "boolean",
"description": "Whether this is an anticipated access, input, plan or state failure."
},
"projects": {
"type": "array",
"items": {
"type": "object",
"properties": {
"id": {
"type": "number",
"description": "Project ID for projectId."
},
"name": {
"type": "string",
"description": "Project name."
}
},
"description": "Accessible project."
},
"description": "Accessible project choices. Select a projectId and retry."
},
"errorCode": {
"type": "string",
"description": "Failure code for recovery."
},
"retryable": {
"type": "boolean",
"description": "Whether an unchanged request can be retried."
},
"statusCode": {
"type": "number",
"description": "HTTP-style failure status."
},
"executionTime": {
"type": "string",
"description": "Elapsed time in seconds, with an s suffix."
}
},
"description": "Operation result envelope."
}
Original tool metadata
{
"name": "verify_wordpress_frontend",
"title": "Verify WordPress frontend",
"description": "Verify published page, post or product rendering against expected text and SEO. Fetches the public permalink without credentials; follows bounded same-site redirects and rejects cross-site redirects or drafts.",
"inputSchema": {
"type": "object",
"required": [
"projectPublishingId",
"id",
"expected"
],
"properties": {
"id": {
"type": "number",
"minimum": 1,
"description": "Native WordPress content ID from list_wordpress_content or get_wordpress_content."
},
"context": {
"type": "string",
"maxLength": 120,
"description": "Short purpose of this call for the activity log. Exclude personal data and private source content."
},
"expected": {
"type": "object",
"properties": {
"text": {
"type": "array",
"items": {
"type": "string"
},
"minItems": 1,
"description": "Text content for the targeted element or operation."
},
"title": {
"type": "string",
"description": "Human-readable title for this item."
},
"robots": {
"type": "array",
"items": {
"type": "string"
},
"description": "Robots directives for the page, using the selected plugin's supported representation."
},
"schemaTypes": {
"type": "array",
"items": {
"type": "string"
},
"description": "Structured-data types selected for this page in the SEO plugin."
},
"canonicalUrl": {
"type": "string",
"description": "Canonical URL declared for this item; use the page's intended canonical address."
},
"twitterTitle": {
"type": "string",
"description": "Title used for X/Twitter link cards."
},
"openGraphTitle": {
"type": "string",
"description": "Title used in Open Graph link previews."
},
"metaDescription": {
"type": "string",
"description": "Search-result description managed by the selected SEO plugin."
},
"openGraphDescription": {
"type": "string",
"description": "Description used in Open Graph link previews."
}
},
"description": "Expected visible text and metadata after publication. Verification compares the actual frontend with these intended values.",
"minProperties": 1,
"additionalProperties": false
},
"llm_model": {
"type": "string",
"maxLength": 128,
"description": "Use the exact model ID executing this call, from runtime/system context, for usage attribution. Supply it on every Atomic MCP tool call, including discovery and feedback, and update it if the model changes. Use the model ID rather than the client app name. If unavailable, omit it; never guess or ask the user."
},
"projectId": {
"type": "number",
"description": "Atomic project ID from list_projects. Omit to use the configured project; if asked to choose, select one of the accessible returned IDs."
},
"projectPublishingId": {
"type": "number",
"minimum": 1,
"description": "Atomic publishing connection ID from get_publishing_connections, not the provider site or post ID."
}
},
"additionalProperties": false
},
"outputSchema": {
"type": "object",
"required": [
"success"
],
"properties": {
"url": {
"type": "string",
"description": "Link for resolving the failure or completing the operation."
},
"data": {
"type": "object",
"required": [
"data"
],
"properties": {
"data": {
"type": "object",
"required": [
"url",
"status",
"checkedAt",
"passed",
"checks",
"rendered"
],
"properties": {
"url": {
"type": "string",
"description": "URL returned for this resource or operation."
},
"checks": {
"type": "array",
"items": {
"type": "object",
"description": "Nested operation-specific fields."
}
},
"passed": {
"type": "boolean"
},
"status": {
"type": "number",
"description": "Current saved or execution state reported by the operation."
},
"rendered": {
"type": "object",
"properties": {
"text": {
"type": "array",
"items": {
"type": "string"
}
},
"title": {
"type": "string",
"description": "Display or content title of this returned item."
},
"robots": {
"type": "array",
"items": {
"type": "string"
}
},
"schemaTypes": {
"type": "array",
"items": {
"type": "string"
}
},
"canonicalUrl": {
"type": "string"
},
"twitterTitle": {
"type": "string"
},
"openGraphTitle": {
"type": "string"
},
"metaDescription": {
"type": "string",
"description": "Saved page meta description used in search snippets."
},
"openGraphDescription": {
"type": "string"
}
}
},
"checkedAt": {
"type": "string",
"description": "Timestamp when the returned verification evidence was collected."
}
},
"description": "Result items or operation data inside this returned payload. Pagination fields describe only this result page."
}
},
"description": "Operation data; optional fields may be absent."
},
"error": {
"type": "string",
"description": "Why the operation failed."
},
"details": {
"type": "object",
"description": "Diagnostics keyed by errorCode."
},
"message": {
"type": "string",
"description": "Outcome or recovery instructions. Project selection means no action ran."
},
"success": {
"type": "boolean",
"description": "Operation success; on false inspect error/errorCode."
},
"upgrade": {
"type": "object",
"description": "Plan-upgrade guidance for an unavailable capability."
},
"category": {
"type": "string",
"description": "Failure category, such as invalid_input or plan_required."
},
"expected": {
"type": "boolean",
"description": "Whether this is an anticipated access, input, plan or state failure."
},
"projects": {
"type": "array",
"items": {
"type": "object",
"properties": {
"id": {
"type": "number",
"description": "Project ID for projectId."
},
"name": {
"type": "string",
"description": "Project name."
}
},
"description": "Accessible project."
},
"description": "Accessible project choices. Select a projectId and retry."
},
"errorCode": {
"type": "string",
"description": "Failure code for recovery."
},
"retryable": {
"type": "boolean",
"description": "Whether an unchanged request can be retried."
},
"statusCode": {
"type": "number",
"description": "HTTP-style failure status."
},
"executionTime": {
"type": "string",
"description": "Elapsed time in seconds, with an s suffix."
}
},
"description": "Operation result envelope."
},
"annotations": {
"readOnlyHint": true,
"openWorldHint": true,
"idempotentHint": true,
"destructiveHint": false
}
}
The title clearly communicates the tool’s action and subject. Keep it concise.
Description90/100
Wait for programmatic market research to complete, fail, or reach the timeout.
Waits for the existing researchId; it does not start another job. Timeout is not completion: resume with the same ID or inspect get_programmatic_market_research.
The description explains the capability, when to use it, and what to expect.
Inputs83/100
Remove validation rules already expressed in this field’s schema; describe its meaning and usage instead.
researchId
Research ID returned by programmatic_market_research.
Clear enough to supply this argument.
timeoutSeconds
Maximum time to wait, capped at 300 seconds. Defaults to 60.
Remove validation rules already expressed in this field’s schema; describe its meaning and usage instead.
pollIntervalSeconds
Polling interval, capped at 30 seconds. Defaults to 5.
Remove validation rules already expressed in this field’s schema; describe its meaning and usage instead.
projectId
Atomic project ID from list_projects. Omit to use the configured project; if asked to choose, select one of the accessible returned IDs.
Clear enough to supply this argument.
context
Short purpose of this call for the activity log. Exclude personal data and private source content.
Remove validation rules already expressed in this field’s schema; describe its meaning and usage instead.
llm_model
Use the exact model ID executing this call, from runtime/system context, for usage attribution. Supply it on every Atomic MCP tool call, including discovery and feedback, and update it if the model changes. Use the model ID rather than the client app name. If unavailable, omit it; never guess or ask the user.
Remove validation rules already expressed in this field’s schema; describe its meaning and usage instead.
{
"type": "object",
"required": [
"success"
],
"properties": {
"url": {
"type": "string",
"description": "Link for resolving the failure or completing the operation."
},
"data": {
"type": "object",
"required": [
"data"
],
"properties": {
"data": {
"type": "object",
"required": [
"status",
"createdAt",
"updatedAt"
],
"properties": {
"status": {
"enum": [
"queued",
"running",
"completed",
"failed"
],
"type": "string",
"description": "Current saved or execution state reported by the operation."
},
"createdAt": {
"type": "string",
"format": "date-time",
"description": "Date and time this record was created, serialized as ISO 8601."
},
"updatedAt": {
"type": "string",
"format": "date-time",
"description": "Date and time this record was last updated, serialized as ISO 8601."
},
"researchId": {
"type": "number",
"description": "Saved market research identifier for subsequent result or wait tools."
},
"errorMessage": {
"type": "string",
"description": "Explanation of why this run or item could not be processed."
}
},
"description": "Result items or operation data inside this returned payload. Pagination fields describe only this result page.",
"additionalProperties": {
"description": "JSON returned by the connected provider or selected operation; its fields depend on that operation."
}
}
},
"description": "Operation data; optional fields may be absent."
},
"error": {
"type": "string",
"description": "Why the operation failed."
},
"details": {
"type": "object",
"description": "Diagnostics keyed by errorCode."
},
"message": {
"type": "string",
"description": "Outcome or recovery instructions. Project selection means no action ran."
},
"success": {
"type": "boolean",
"description": "Operation success; on false inspect error/errorCode."
},
"upgrade": {
"type": "object",
"description": "Plan-upgrade guidance for an unavailable capability."
},
"category": {
"type": "string",
"description": "Failure category, such as invalid_input or plan_required."
},
"expected": {
"type": "boolean",
"description": "Whether this is an anticipated access, input, plan or state failure."
},
"projects": {
"type": "array",
"items": {
"type": "object",
"properties": {
"id": {
"type": "number",
"description": "Project ID for projectId."
},
"name": {
"type": "string",
"description": "Project name."
}
},
"description": "Accessible project."
},
"description": "Accessible project choices. Select a projectId and retry."
},
"errorCode": {
"type": "string",
"description": "Failure code for recovery."
},
"retryable": {
"type": "boolean",
"description": "Whether an unchanged request can be retried."
},
"statusCode": {
"type": "number",
"description": "HTTP-style failure status."
},
"executionTime": {
"type": "string",
"description": "Elapsed time in seconds, with an s suffix."
}
},
"description": "Operation result envelope."
}
Original tool metadata
{
"name": "wait_for_programmatic_market_research",
"title": "Wait for programmatic market research",
"description": "Wait for programmatic market research to complete, fail, or reach the timeout.\n\nWaits for the existing researchId; it does not start another job. Timeout is not completion: resume with the same ID or inspect get_programmatic_market_research.",
"inputSchema": {
"type": "object",
"required": [
"researchId"
],
"properties": {
"context": {
"type": "string",
"maxLength": 120,
"description": "Short purpose of this call for the activity log. Exclude personal data and private source content."
},
"llm_model": {
"type": "string",
"maxLength": 128,
"description": "Use the exact model ID executing this call, from runtime/system context, for usage attribution. Supply it on every Atomic MCP tool call, including discovery and feedback, and update it if the model changes. Use the model ID rather than the client app name. If unavailable, omit it; never guess or ask the user."
},
"projectId": {
"type": "number",
"description": "Atomic project ID from list_projects. Omit to use the configured project; if asked to choose, select one of the accessible returned IDs."
},
"researchId": {
"type": "number",
"description": "Research ID returned by programmatic_market_research."
},
"timeoutSeconds": {
"type": "number",
"description": "Maximum time to wait, capped at 300 seconds. Defaults to 60."
},
"pollIntervalSeconds": {
"type": "number",
"description": "Polling interval, capped at 30 seconds. Defaults to 5."
}
}
},
"outputSchema": {
"type": "object",
"required": [
"success"
],
"properties": {
"url": {
"type": "string",
"description": "Link for resolving the failure or completing the operation."
},
"data": {
"type": "object",
"required": [
"data"
],
"properties": {
"data": {
"type": "object",
"required": [
"status",
"createdAt",
"updatedAt"
],
"properties": {
"status": {
"enum": [
"queued",
"running",
"completed",
"failed"
],
"type": "string",
"description": "Current saved or execution state reported by the operation."
},
"createdAt": {
"type": "string",
"format": "date-time",
"description": "Date and time this record was created, serialized as ISO 8601."
},
"updatedAt": {
"type": "string",
"format": "date-time",
"description": "Date and time this record was last updated, serialized as ISO 8601."
},
"researchId": {
"type": "number",
"description": "Saved market research identifier for subsequent result or wait tools."
},
"errorMessage": {
"type": "string",
"description": "Explanation of why this run or item could not be processed."
}
},
"description": "Result items or operation data inside this returned payload. Pagination fields describe only this result page.",
"additionalProperties": {
"description": "JSON returned by the connected provider or selected operation; its fields depend on that operation."
}
}
},
"description": "Operation data; optional fields may be absent."
},
"error": {
"type": "string",
"description": "Why the operation failed."
},
"details": {
"type": "object",
"description": "Diagnostics keyed by errorCode."
},
"message": {
"type": "string",
"description": "Outcome or recovery instructions. Project selection means no action ran."
},
"success": {
"type": "boolean",
"description": "Operation success; on false inspect error/errorCode."
},
"upgrade": {
"type": "object",
"description": "Plan-upgrade guidance for an unavailable capability."
},
"category": {
"type": "string",
"description": "Failure category, such as invalid_input or plan_required."
},
"expected": {
"type": "boolean",
"description": "Whether this is an anticipated access, input, plan or state failure."
},
"projects": {
"type": "array",
"items": {
"type": "object",
"properties": {
"id": {
"type": "number",
"description": "Project ID for projectId."
},
"name": {
"type": "string",
"description": "Project name."
}
},
"description": "Accessible project."
},
"description": "Accessible project choices. Select a projectId and retry."
},
"errorCode": {
"type": "string",
"description": "Failure code for recovery."
},
"retryable": {
"type": "boolean",
"description": "Whether an unchanged request can be retried."
},
"statusCode": {
"type": "number",
"description": "HTTP-style failure status."
},
"executionTime": {
"type": "string",
"description": "Elapsed time in seconds, with an s suffix."
}
},
"description": "Operation result envelope."
},
"annotations": {
"readOnlyHint": true,
"openWorldHint": false,
"idempotentHint": true,
"destructiveHint": false
}
}
The title clearly communicates the tool’s action and subject. Keep it concise.
Description87/100
Wait for a content SERP analysis to complete, fail, or reach the timeout.
Waits for an existing analysis and may save its normalized summary on completion. Timeout does not cancel the underlying work or authorize a duplicate start.
The description explains the capability, when to use it, and what to expect.
Inputs83/100
Remove validation rules already expressed in this field’s schema; describe its meaning and usage instead.
analysisId
Analysis ID returned by a start page or content SERP analysis tool.
Clear enough to supply this argument.
timeoutSeconds
Maximum time to wait, capped at 300 seconds. Defaults to 60.
Remove validation rules already expressed in this field’s schema; describe its meaning and usage instead.
pollIntervalSeconds
Polling interval, capped at 30 seconds. Defaults to 5.
Remove validation rules already expressed in this field’s schema; describe its meaning and usage instead.
projectId
Atomic project ID from list_projects. Omit to use the configured project; if asked to choose, select one of the accessible returned IDs.
Clear enough to supply this argument.
context
Short purpose of this call for the activity log. Exclude personal data and private source content.
Remove validation rules already expressed in this field’s schema; describe its meaning and usage instead.
llm_model
Use the exact model ID executing this call, from runtime/system context, for usage attribution. Supply it on every Atomic MCP tool call, including discovery and feedback, and update it if the model changes. Use the model ID rather than the client app name. If unavailable, omit it; never guess or ask the user.
Remove validation rules already expressed in this field’s schema; describe its meaning and usage instead.
{
"type": "object",
"required": [
"success"
],
"properties": {
"url": {
"type": "string",
"description": "Link for resolving the failure or completing the operation."
},
"data": {
"type": "object",
"required": [
"data"
],
"properties": {
"data": {
"type": "object",
"required": [
"projectId",
"keyword",
"serpLocationId",
"depth",
"status",
"createdAt",
"updatedAt"
],
"properties": {
"slug": {
"type": "string",
"description": "Saved URL slug or native CMS slug of this item."
},
"depth": {
"enum": [
"lite",
"standard",
"deep"
],
"type": "string"
},
"title": {
"type": "string",
"description": "Display or content title of this returned item."
},
"status": {
"enum": [
"queued",
"running",
"completed",
"failed"
],
"type": "string",
"description": "Current saved or execution state reported by the operation."
},
"keyword": {
"type": "string"
},
"summary": {
"type": "object",
"required": [
"generatedAt",
"target",
"competitors",
"nlpTerms",
"entityGaps",
"structureGaps",
"internalLinkOpportunities",
"recommendations",
"sourceSignals"
],
"properties": {
"target": {
"type": "object",
"description": "Nested operation-specific fields."
},
"nlpTerms": {
"type": "array",
"items": {
"type": "object",
"description": "Nested operation-specific fields."
}
},
"entityGaps": {
"type": "array",
"items": {
"type": "object",
"description": "Nested operation-specific fields."
}
},
"competitors": {
"type": "array",
"items": {
"type": "object",
"description": "Nested operation-specific fields."
},
"description": "Competitors or competitor observations returned for this project or analysis."
},
"generatedAt": {
"type": "string"
},
"sourceSignals": {
"type": "object",
"description": "Nested operation-specific fields."
},
"structureGaps": {
"type": "array",
"items": {
"type": "object",
"description": "Nested operation-specific fields."
}
},
"recommendations": {
"type": "array",
"items": {
"type": "object",
"description": "Nested operation-specific fields."
}
},
"internalLinkOpportunities": {
"type": "array",
"items": {
"type": "object",
"description": "Nested operation-specific fields."
}
},
"contentStructureCompetitors": {
"type": "object",
"description": "Nested operation-specific fields."
}
}
},
"createdAt": {
"type": "string",
"format": "date-time",
"description": "Date and time this record was created, serialized as ISO 8601."
},
"projectId": {
"type": "number",
"description": "Atomic project that owns this resource."
},
"targetUrl": {
"type": "string"
},
"updatedAt": {
"type": "string",
"format": "date-time",
"description": "Date and time this record was last updated, serialized as ISO 8601."
},
"analysisId": {
"type": "number",
"description": "Saved content SERP analysis identifier for subsequent analysis or optimization tools."
},
"errorMessage": {
"type": "string",
"description": "Explanation of why this run or item could not be processed."
},
"rankTrackerId": {
"type": "number"
},
"serpLocationId": {
"type": "number",
"description": "Identifier of the selected search location."
},
"metaDescription": {
"type": "string",
"description": "Saved page meta description used in search snippets."
}
},
"description": "Result items or operation data inside this returned payload. Pagination fields describe only this result page."
}
},
"description": "Operation data; optional fields may be absent."
},
"error": {
"type": "string",
"description": "Why the operation failed."
},
"details": {
"type": "object",
"description": "Diagnostics keyed by errorCode."
},
"message": {
"type": "string",
"description": "Outcome or recovery instructions. Project selection means no action ran."
},
"success": {
"type": "boolean",
"description": "Operation success; on false inspect error/errorCode."
},
"upgrade": {
"type": "object",
"description": "Plan-upgrade guidance for an unavailable capability."
},
"category": {
"type": "string",
"description": "Failure category, such as invalid_input or plan_required."
},
"expected": {
"type": "boolean",
"description": "Whether this is an anticipated access, input, plan or state failure."
},
"projects": {
"type": "array",
"items": {
"type": "object",
"properties": {
"id": {
"type": "number",
"description": "Project ID for projectId."
},
"name": {
"type": "string",
"description": "Project name."
}
},
"description": "Accessible project."
},
"description": "Accessible project choices. Select a projectId and retry."
},
"errorCode": {
"type": "string",
"description": "Failure code for recovery."
},
"retryable": {
"type": "boolean",
"description": "Whether an unchanged request can be retried."
},
"statusCode": {
"type": "number",
"description": "HTTP-style failure status."
},
"executionTime": {
"type": "string",
"description": "Elapsed time in seconds, with an s suffix."
}
},
"description": "Operation result envelope."
}
Original tool metadata
{
"name": "wait_for_serp_analysis",
"title": "Wait for SERP analysis",
"description": "Wait for a content SERP analysis to complete, fail, or reach the timeout.\n\nWaits for an existing analysis and may save its normalized summary on completion. Timeout does not cancel the underlying work or authorize a duplicate start.",
"inputSchema": {
"type": "object",
"required": [
"analysisId"
],
"properties": {
"context": {
"type": "string",
"maxLength": 120,
"description": "Short purpose of this call for the activity log. Exclude personal data and private source content."
},
"llm_model": {
"type": "string",
"maxLength": 128,
"description": "Use the exact model ID executing this call, from runtime/system context, for usage attribution. Supply it on every Atomic MCP tool call, including discovery and feedback, and update it if the model changes. Use the model ID rather than the client app name. If unavailable, omit it; never guess or ask the user."
},
"projectId": {
"type": "number",
"description": "Atomic project ID from list_projects. Omit to use the configured project; if asked to choose, select one of the accessible returned IDs."
},
"analysisId": {
"type": "number",
"description": "Analysis ID returned by a start page or content SERP analysis tool."
},
"timeoutSeconds": {
"type": "number",
"description": "Maximum time to wait, capped at 300 seconds. Defaults to 60."
},
"pollIntervalSeconds": {
"type": "number",
"description": "Polling interval, capped at 30 seconds. Defaults to 5."
}
}
},
"outputSchema": {
"type": "object",
"required": [
"success"
],
"properties": {
"url": {
"type": "string",
"description": "Link for resolving the failure or completing the operation."
},
"data": {
"type": "object",
"required": [
"data"
],
"properties": {
"data": {
"type": "object",
"required": [
"projectId",
"keyword",
"serpLocationId",
"depth",
"status",
"createdAt",
"updatedAt"
],
"properties": {
"slug": {
"type": "string",
"description": "Saved URL slug or native CMS slug of this item."
},
"depth": {
"enum": [
"lite",
"standard",
"deep"
],
"type": "string"
},
"title": {
"type": "string",
"description": "Display or content title of this returned item."
},
"status": {
"enum": [
"queued",
"running",
"completed",
"failed"
],
"type": "string",
"description": "Current saved or execution state reported by the operation."
},
"keyword": {
"type": "string"
},
"summary": {
"type": "object",
"required": [
"generatedAt",
"target",
"competitors",
"nlpTerms",
"entityGaps",
"structureGaps",
"internalLinkOpportunities",
"recommendations",
"sourceSignals"
],
"properties": {
"target": {
"type": "object",
"description": "Nested operation-specific fields."
},
"nlpTerms": {
"type": "array",
"items": {
"type": "object",
"description": "Nested operation-specific fields."
}
},
"entityGaps": {
"type": "array",
"items": {
"type": "object",
"description": "Nested operation-specific fields."
}
},
"competitors": {
"type": "array",
"items": {
"type": "object",
"description": "Nested operation-specific fields."
},
"description": "Competitors or competitor observations returned for this project or analysis."
},
"generatedAt": {
"type": "string"
},
"sourceSignals": {
"type": "object",
"description": "Nested operation-specific fields."
},
"structureGaps": {
"type": "array",
"items": {
"type": "object",
"description": "Nested operation-specific fields."
}
},
"recommendations": {
"type": "array",
"items": {
"type": "object",
"description": "Nested operation-specific fields."
}
},
"internalLinkOpportunities": {
"type": "array",
"items": {
"type": "object",
"description": "Nested operation-specific fields."
}
},
"contentStructureCompetitors": {
"type": "object",
"description": "Nested operation-specific fields."
}
}
},
"createdAt": {
"type": "string",
"format": "date-time",
"description": "Date and time this record was created, serialized as ISO 8601."
},
"projectId": {
"type": "number",
"description": "Atomic project that owns this resource."
},
"targetUrl": {
"type": "string"
},
"updatedAt": {
"type": "string",
"format": "date-time",
"description": "Date and time this record was last updated, serialized as ISO 8601."
},
"analysisId": {
"type": "number",
"description": "Saved content SERP analysis identifier for subsequent analysis or optimization tools."
},
"errorMessage": {
"type": "string",
"description": "Explanation of why this run or item could not be processed."
},
"rankTrackerId": {
"type": "number"
},
"serpLocationId": {
"type": "number",
"description": "Identifier of the selected search location."
},
"metaDescription": {
"type": "string",
"description": "Saved page meta description used in search snippets."
}
},
"description": "Result items or operation data inside this returned payload. Pagination fields describe only this result page."
}
},
"description": "Operation data; optional fields may be absent."
},
"error": {
"type": "string",
"description": "Why the operation failed."
},
"details": {
"type": "object",
"description": "Diagnostics keyed by errorCode."
},
"message": {
"type": "string",
"description": "Outcome or recovery instructions. Project selection means no action ran."
},
"success": {
"type": "boolean",
"description": "Operation success; on false inspect error/errorCode."
},
"upgrade": {
"type": "object",
"description": "Plan-upgrade guidance for an unavailable capability."
},
"category": {
"type": "string",
"description": "Failure category, such as invalid_input or plan_required."
},
"expected": {
"type": "boolean",
"description": "Whether this is an anticipated access, input, plan or state failure."
},
"projects": {
"type": "array",
"items": {
"type": "object",
"properties": {
"id": {
"type": "number",
"description": "Project ID for projectId."
},
"name": {
"type": "string",
"description": "Project name."
}
},
"description": "Accessible project."
},
"description": "Accessible project choices. Select a projectId and retry."
},
"errorCode": {
"type": "string",
"description": "Failure code for recovery."
},
"retryable": {
"type": "boolean",
"description": "Whether an unchanged request can be retried."
},
"statusCode": {
"type": "number",
"description": "HTTP-style failure status."
},
"executionTime": {
"type": "string",
"description": "Elapsed time in seconds, with an s suffix."
}
},
"description": "Operation result envelope."
},
"annotations": {
"readOnlyHint": false,
"openWorldHint": true,
"idempotentHint": false,
"destructiveHint": true
}
}
The title clearly communicates the tool’s action and subject. Keep it concise.
Description91/100
Search the web for relevant information, documentation, and best practices. Returns search results with titles, URLs, and content snippets.
Use for discovering public URLs; readWebPage retrieves one exact page and search_knowledge searches project sources. Queries external search providers without editing the result pages; quota/availability apply.
The description explains the capability, when to use it, and what to expect.
Inputs75/100
Explain the meaning of this value, not just its name.
query
Search query string
Explain the meaning of this value, not just its name.
num_results
Number of search results to return
Remove validation rules already expressed in this field’s schema; describe its meaning and usage instead.
max_characters
Maximum characters of content to return per result
Remove validation rules already expressed in this field’s schema; describe its meaning and usage instead.
include_domains
Optional Exa domain or domain/path filters. Paths are supported, for example ["linkedin.com/posts"].
Remove validation rules already expressed in this field’s schema; describe its meaning and usage instead.
projectId
Atomic project ID from list_projects. Omit to use the configured project; if asked to choose, select one of the accessible returned IDs.
Clear enough to supply this argument.
context
Short purpose of this call for the activity log. Exclude personal data and private source content.
Remove validation rules already expressed in this field’s schema; describe its meaning and usage instead.
llm_model
Use the exact model ID executing this call, from runtime/system context, for usage attribution. Supply it on every Atomic MCP tool call, including discovery and feedback, and update it if the model changes. Use the model ID rather than the client app name. If unavailable, omit it; never guess or ask the user.
Remove validation rules already expressed in this field’s schema; describe its meaning and usage instead.
{
"type": "object",
"required": [
"success"
],
"properties": {
"url": {
"type": "string",
"description": "Link for resolving the failure or completing the operation."
},
"data": {
"type": "object",
"required": [
"data",
"usage"
],
"properties": {
"data": {
"type": "array",
"items": {
"type": "object",
"required": [
"title",
"url",
"content"
],
"properties": {
"url": {
"type": "string",
"description": "URL returned for this resource or operation."
},
"title": {
"type": "string",
"description": "Display or content title of this returned item."
},
"content": {
"type": "string",
"description": "Returned content body in the format described by the containing resource."
},
"publishedDate": {
"type": "string"
}
}
},
"description": "Result items or operation data inside this returned payload. Pagination fields describe only this result page."
},
"usage": {
"type": "object",
"required": [
"inputTokens",
"outputTokens",
"executionTime",
"creditsUsed",
"model"
],
"properties": {
"model": {
"type": "string",
"description": "Model identifier used for the reported generation or AI-search run."
},
"modelUsage": {
"type": "object",
"properties": {},
"description": "Actual execution models, including verification; never inferred from a phase label.",
"additionalProperties": {
"type": "object",
"description": "Nested operation-specific fields."
}
},
"phaseUsage": {
"type": "object",
"properties": {},
"description": "Costs charged in this execution, excluding phases restored from an earlier run."
},
"creditsUsed": {
"type": "number",
"description": "Atomic credits recorded as used by this execution."
},
"inputTokens": {
"type": "number",
"description": "Input tokens reported for this model execution."
},
"toolRetries": {
"type": "object",
"required": [
"attempts",
"providerCostDollars",
"toolCostDollars"
],
"properties": {
"attempts": {
"type": "number",
"description": "Processing or execution attempts associated with this record."
},
"toolCostDollars": {
"type": "number",
"description": "Independent costs for retry tool calls only; included in the phase total."
},
"providerCostDollars": {
"type": "number",
"description": "Whole model turns containing retries; included in the phase total."
}
},
"description": "Number of tool retries recorded for the execution."
},
"outputTokens": {
"type": "number",
"description": "Output tokens reported for this model execution."
},
"executionTime": {
"type": "number",
"description": "Elapsed execution duration reported by the tool."
},
"toolCostDollars": {
"type": "number",
"description": "Tool-related cost recorded for this execution, in US dollars."
},
"providerCostDollars": {
"type": "number",
"description": "Provider cost recorded for this execution, in US dollars."
},
"cacheReadInputTokens": {
"type": "number",
"description": "Input tokens served from a model prompt cache."
},
"cacheCreationInputTokens": {
"type": "number",
"description": "Input tokens charged for creating a model prompt cache."
}
},
"description": "Provider or Atomic usage measurements for this execution."
}
},
"description": "Operation data; optional fields may be absent."
},
"error": {
"type": "string",
"description": "Why the operation failed."
},
"details": {
"type": "object",
"description": "Diagnostics keyed by errorCode."
},
"message": {
"type": "string",
"description": "Outcome or recovery instructions. Project selection means no action ran."
},
"success": {
"type": "boolean",
"description": "Operation success; on false inspect error/errorCode."
},
"upgrade": {
"type": "object",
"description": "Plan-upgrade guidance for an unavailable capability."
},
"category": {
"type": "string",
"description": "Failure category, such as invalid_input or plan_required."
},
"expected": {
"type": "boolean",
"description": "Whether this is an anticipated access, input, plan or state failure."
},
"projects": {
"type": "array",
"items": {
"type": "object",
"properties": {
"id": {
"type": "number",
"description": "Project ID for projectId."
},
"name": {
"type": "string",
"description": "Project name."
}
},
"description": "Accessible project."
},
"description": "Accessible project choices. Select a projectId and retry."
},
"errorCode": {
"type": "string",
"description": "Failure code for recovery."
},
"retryable": {
"type": "boolean",
"description": "Whether an unchanged request can be retried."
},
"statusCode": {
"type": "number",
"description": "HTTP-style failure status."
},
"executionTime": {
"type": "string",
"description": "Elapsed time in seconds, with an s suffix."
}
},
"description": "Operation result envelope."
}
Original tool metadata
{
"name": "webSearch",
"title": "Web search",
"description": "Search the web for relevant information, documentation, and best practices. Returns search results with titles, URLs, and content snippets.\n\nUse for discovering public URLs; readWebPage retrieves one exact page and search_knowledge searches project sources. Queries external search providers without editing the result pages; quota/availability apply.",
"inputSchema": {
"type": "object",
"required": [
"query"
],
"properties": {
"query": {
"type": "string",
"description": "Search query string"
},
"context": {
"type": "string",
"maxLength": 120,
"description": "Short purpose of this call for the activity log. Exclude personal data and private source content."
},
"llm_model": {
"type": "string",
"maxLength": 128,
"description": "Use the exact model ID executing this call, from runtime/system context, for usage attribution. Supply it on every Atomic MCP tool call, including discovery and feedback, and update it if the model changes. Use the model ID rather than the client app name. If unavailable, omit it; never guess or ask the user."
},
"projectId": {
"type": "number",
"description": "Atomic project ID from list_projects. Omit to use the configured project; if asked to choose, select one of the accessible returned IDs."
},
"num_results": {
"type": "number",
"default": 5,
"maximum": 10,
"minimum": 1,
"description": "Number of search results to return"
},
"max_characters": {
"type": "number",
"default": 5000,
"maximum": 10000,
"minimum": 1,
"description": "Maximum characters of content to return per result"
},
"include_domains": {
"type": "array",
"items": {
"type": "string"
},
"maxItems": 10,
"minItems": 1,
"description": "Optional Exa domain or domain/path filters. Paths are supported, for example [\"linkedin.com/posts\"]."
}
}
},
"outputSchema": {
"type": "object",
"required": [
"success"
],
"properties": {
"url": {
"type": "string",
"description": "Link for resolving the failure or completing the operation."
},
"data": {
"type": "object",
"required": [
"data",
"usage"
],
"properties": {
"data": {
"type": "array",
"items": {
"type": "object",
"required": [
"title",
"url",
"content"
],
"properties": {
"url": {
"type": "string",
"description": "URL returned for this resource or operation."
},
"title": {
"type": "string",
"description": "Display or content title of this returned item."
},
"content": {
"type": "string",
"description": "Returned content body in the format described by the containing resource."
},
"publishedDate": {
"type": "string"
}
}
},
"description": "Result items or operation data inside this returned payload. Pagination fields describe only this result page."
},
"usage": {
"type": "object",
"required": [
"inputTokens",
"outputTokens",
"executionTime",
"creditsUsed",
"model"
],
"properties": {
"model": {
"type": "string",
"description": "Model identifier used for the reported generation or AI-search run."
},
"modelUsage": {
"type": "object",
"properties": {},
"description": "Actual execution models, including verification; never inferred from a phase label.",
"additionalProperties": {
"type": "object",
"description": "Nested operation-specific fields."
}
},
"phaseUsage": {
"type": "object",
"properties": {},
"description": "Costs charged in this execution, excluding phases restored from an earlier run."
},
"creditsUsed": {
"type": "number",
"description": "Atomic credits recorded as used by this execution."
},
"inputTokens": {
"type": "number",
"description": "Input tokens reported for this model execution."
},
"toolRetries": {
"type": "object",
"required": [
"attempts",
"providerCostDollars",
"toolCostDollars"
],
"properties": {
"attempts": {
"type": "number",
"description": "Processing or execution attempts associated with this record."
},
"toolCostDollars": {
"type": "number",
"description": "Independent costs for retry tool calls only; included in the phase total."
},
"providerCostDollars": {
"type": "number",
"description": "Whole model turns containing retries; included in the phase total."
}
},
"description": "Number of tool retries recorded for the execution."
},
"outputTokens": {
"type": "number",
"description": "Output tokens reported for this model execution."
},
"executionTime": {
"type": "number",
"description": "Elapsed execution duration reported by the tool."
},
"toolCostDollars": {
"type": "number",
"description": "Tool-related cost recorded for this execution, in US dollars."
},
"providerCostDollars": {
"type": "number",
"description": "Provider cost recorded for this execution, in US dollars."
},
"cacheReadInputTokens": {
"type": "number",
"description": "Input tokens served from a model prompt cache."
},
"cacheCreationInputTokens": {
"type": "number",
"description": "Input tokens charged for creating a model prompt cache."
}
},
"description": "Provider or Atomic usage measurements for this execution."
}
},
"description": "Operation data; optional fields may be absent."
},
"error": {
"type": "string",
"description": "Why the operation failed."
},
"details": {
"type": "object",
"description": "Diagnostics keyed by errorCode."
},
"message": {
"type": "string",
"description": "Outcome or recovery instructions. Project selection means no action ran."
},
"success": {
"type": "boolean",
"description": "Operation success; on false inspect error/errorCode."
},
"upgrade": {
"type": "object",
"description": "Plan-upgrade guidance for an unavailable capability."
},
"category": {
"type": "string",
"description": "Failure category, such as invalid_input or plan_required."
},
"expected": {
"type": "boolean",
"description": "Whether this is an anticipated access, input, plan or state failure."
},
"projects": {
"type": "array",
"items": {
"type": "object",
"properties": {
"id": {
"type": "number",
"description": "Project ID for projectId."
},
"name": {
"type": "string",
"description": "Project name."
}
},
"description": "Accessible project."
},
"description": "Accessible project choices. Select a projectId and retry."
},
"errorCode": {
"type": "string",
"description": "Failure code for recovery."
},
"retryable": {
"type": "boolean",
"description": "Whether an unchanged request can be retried."
},
"statusCode": {
"type": "number",
"description": "HTTP-style failure status."
},
"executionTime": {
"type": "string",
"description": "Elapsed time in seconds, with an s suffix."
}
},
"description": "Operation result envelope."
},
"annotations": {
"readOnlyHint": true,
"openWorldHint": true,
"idempotentHint": true,
"destructiveHint": false
}
}
Loading score analytics…
Put your MCP to the test
A few tasks worth trying with this server, chosen from its reviewed tools. These have not been run.
01Search knowledgeSearch project Knowledge and return exact published supporting segments with stable citation locators.
02Web searchSearch the web for relevant information, documentation, and best practices.
03Get taskGet a single project task by identifier.
04List projectsList every Atomic project accessible to the authenticated user.
05Read web pageFetch a public web page at an absolute HTTP(S) URL and return its content as Markdown.
Want to run these tasks against your MCP server with us?
Atomic AGI setup, tools, quality score, publishing readiness, and alternatives.
How do I add Atomic AGI to Claude, ChatGPT, or Cursor?
Add Atomic AGI to Claude, ChatGPT, or Cursor by connecting its remote MCP URL in each client's MCP settings. In Claude, add a custom connector. In ChatGPT, add an MCP app. In Cursor, add an MCP server under Settings. The MCP URL is https://app.atomicagi.com/api/mcp.
Is Atomic AGI MCP ready for ChatGPT and Claude?
As of November 12, 2026, Atomic AGI scores 100/100 on Manufact's MCP publishing checklist. The scan meets ChatGPT publishing checks and meets Claude publishing checks. Passing these checks does not guarantee marketplace approval.
How clear is Atomic AGI's MCP tool documentation?
As of November 12, 2026, Atomic AGI scores 89/100 in Manufact's review of tool titles, descriptions, input and output schemas, and behavior annotations. The review covers 259 of 259 discovered tools. The quality score measures documentation clarity; runtime behavior and marketplace readiness require separate checks.
What are the best alternatives to Atomic AGI?
As of November 12, 2026, alternatives to Atomic AGI in marketing-seo on the Manufact MCP leaderboard include BulkPublish, Fuxux, Refluenced, The Prompting Company MCP, and Buzzmark.
How can Atomic AGI improve its MCP documentation?
improve is the lowest-scoring reviewed tool at 77/100. Name the specific action and subject instead of using a generic label such as ‘manage’ or ‘tool’. Open its review for feedback and a copyable fix prompt, then rerun the documentation review after updating your tool metadata.
Not your MCP?
Review any public or OAuth MCP server for protocol compatibility, tool documentation, and ChatGPT and Claude publishing readiness. No account required.