SearchAtlas MCP Server
The SearchAtlas MCP Server connects AI clients to a comprehensive SEO and digital marketing platform with 500+ tools, enabling automation across SEO, content, PPC, and more — accessible through natural language and compatible with clients like Claude, Cursor, VS Code, and Windsurf.
Multi-agent Orchestration – Route queries to specialized agents (SEO, content, PPC, etc.) using
searchatlas_orchestratorOn-Page SEO Automation (OTTO) – Deploy technical fixes, schema markup, and content optimizations via
searchatlas_otto_seoPPC / Google Ads Management – Create campaigns, set bid strategies, and analyze performance with
searchatlas_ppcAI Content Generation – Produce blog posts, landing pages, and optimized copy using
searchatlas_contentSite Auditing & Analysis – Crawl sites, analyze backlink profiles, and gather competitive intelligence with
searchatlas_site_explorerGoogle Business Profile Management – Manage listings, reviews, and local SEO via
searchatlas_gbpLink Building & Digital PR – Run outreach, guest posting, and authority-building campaigns with
searchatlas_authority_buildingLLM Brand Monitoring – Track how AI models reference your brand and competitors using
searchatlas_llm_visibilityKeyword Research – Analyze search volume, difficulty, SERP data, and clustering with
searchatlas_keywordsWebsite Building – Create and edit pages, layouts, and site structure via
searchatlas_website_studioProject Management – List and create SearchAtlas projects with
searchatlas_list_projectsandsearchatlas_create_projectConversation & Artifact Management – Browse past sessions and access generated code, content, and reports with
searchatlas_list_conversationsandsearchatlas_list_artifactsPlaybook Automation – Discover and execute pre-built automation recipes using
searchatlas_list_playbooksandsearchatlas_run_playbookPlan Mode – Enable step-by-step proposal mode before execution on any agent for safer, reviewable workflows
Provides tools for managing Google Business Profiles, local SEO optimization, and analyzing search engine results (SERP) for keyword insights.
Enables management and performance tracking of Google Ads campaigns, including bid adjustments.
SearchAtlas MCP Server
npm · MCP Registry · GitHub
Connect any MCP-compatible AI client to the SearchAtlas v2 MCP server — 500+ tools covering OTTO SEO, PPC, Content Genius, Site Explorer, Google Business Profile, Local SEO, Link Laboratory, Digital PR, LLM Visibility, keyword research, and more.
This package runs as a thin stdio bridge to the hosted v2 MCP server at https://mcp.searchatlas.com/mcp/ so it works with clients that only speak stdio. Clients with native Streamable-HTTP support can connect to the remote endpoint directly.
Works with Claude Code, Cursor, Claude Desktop, VS Code, Windsurf, and Zed.
Setup (3 steps)
1. Install & log in
With npm:
npm install -g searchatlas-mcp-server
searchatlas loginWith yarn:
yarn global add searchatlas-mcp-server
searchatlas loginWith pnpm:
pnpm add -g searchatlas-mcp-server
searchatlas loginWithout installing (npx):
npx searchatlas-mcp-server loginThis opens your browser. After logging in:
Press F12 (or Cmd+Option+I on Mac) to open DevTools
Go to Console tab
Run:
localStorage.getItem("token")Copy the result and paste it into the terminal
The CLI validates your token, saves it, and prints ready-to-paste configs with your paths auto-detected.
2. Add to your MCP client
Claude Code
macOS / Linux:
claude mcp add searchatlas -e SEARCHATLAS_TOKEN=your-token -- npx -y searchatlas-mcp-serverWindows (PowerShell):
claude mcp add searchatlas -e SEARCHATLAS_TOKEN=your-token -- npx.cmd -y searchatlas-mcp-serverWindows note: You must use
npx.cmdinstead ofnpx. This is because Claude Code spawns processes directly and Windows requires the.cmdextension.
Done. That's it.
Cursor
Create .cursor/mcp.json in your project root (or ~/.cursor/mcp.json for global):
{
"mcpServers": {
"searchatlas": {
"command": "/opt/homebrew/bin/node",
"args": ["/opt/homebrew/lib/node_modules/searchatlas-mcp-server/dist/index.js"],
"env": {
"SEARCHATLAS_TOKEN": "your-token"
}
}
}
}Your paths may differ. Run
which nodeandnpm root -gto find them, or just copy the config thatsearchatlas loginprinted — it has your exact paths.
Claude Desktop
Add to ~/Library/Application Support/Claude/claude_desktop_config.json (macOS) or %APPDATA%\Claude\claude_desktop_config.json (Windows):
{
"mcpServers": {
"searchatlas": {
"command": "/opt/homebrew/bin/node",
"args": ["/opt/homebrew/lib/node_modules/searchatlas-mcp-server/dist/index.js"],
"env": {
"SEARCHATLAS_TOKEN": "your-token"
}
}
}
}Restart Claude Desktop after saving.
Add to ~/.codeium/windsurf/mcp_config.json:
{
"mcpServers": {
"searchatlas": {
"command": "/opt/homebrew/bin/node",
"args": ["/opt/homebrew/lib/node_modules/searchatlas-mcp-server/dist/index.js"],
"env": {
"SEARCHATLAS_TOKEN": "your-token"
}
}
}
}Add to .vscode/mcp.json in your project:
{
"servers": {
"searchatlas": {
"command": "/opt/homebrew/bin/node",
"args": ["/opt/homebrew/lib/node_modules/searchatlas-mcp-server/dist/index.js"],
"env": {
"SEARCHATLAS_TOKEN": "your-token"
}
}
}
}Add to Zed settings.json:
{
"context_servers": {
"searchatlas": {
"command": {
"path": "/opt/homebrew/bin/node",
"args": ["/opt/homebrew/lib/node_modules/searchatlas-mcp-server/dist/index.js"],
"env": {
"SEARCHATLAS_TOKEN": "your-token"
}
}
}
}
}3. Verify
searchatlas check SearchAtlas MCP Server — Health Check
✓ Credential source: ~/.searchatlasrc
✓ Config loaded successfully (endpoint: https://mcp.searchatlas.com/mcp)
✓ JWT structure valid (expires in 12 days) — user 42
✓ MCP handshake succeeded — 587 tools available
All checks passed — you're ready to go!Related MCP server: MCP by Amal Alexander
Why full paths?
macOS GUI apps (Cursor, Claude Desktop, VS Code, Windsurf, Zed) don't inherit your shell's PATH, so they can't find node or npx. Using the full path to node and pointing it directly at the installed package avoids spawn npx ENOENT and env: node: No such file errors entirely.
searchatlas login detects your paths automatically and prints configs you can copy-paste.
How to find your paths | Command |
Full path to |
|
Global npm modules dir |
|
Usage
Just talk naturally. The AI picks the right tool:
"What are the top SEO issues for my site?"
"Run a technical SEO audit on example.com"
"Write a blog post about technical SEO best practices"
"Find long-tail keywords for project management software"
"List my projects"
"Show available playbooks and run one"CLI Commands
Command | Description |
| Log in, save token, print MCP configs |
| Validate credentials + API connectivity |
| Print version |
| Show help |
All commands also work via
npx searchatlas-mcp-server <command>.
Tools
Tools are discovered dynamically from the hosted v2 MCP server — your client sees the live catalogue (currently ~587 tools) without needing a package update when new ones ship. The major groups:
Prefix | Area | Representative tools |
| OTTO SEO automation (70 tools) |
|
| Google Ads / PPC (76 tools) |
|
| Content Genius (74 tools) |
|
| Site Explorer (46 tools) |
|
| Google Business Profile (96 tools) |
|
| Local SEO heatmaps (19 tools) |
|
| Link Laboratory (24 tools) |
|
| Digital PR (20 tools) |
|
| LLM Visibility (30 tools) |
|
| Keyword Rank Tracking (16 tools) |
|
| Brand Vault (25 tools) |
|
| Website Studio (8 tools) |
|
| Google Search Console (11 tools) |
|
| Social Hub (19 tools) |
|
| Content Strategy (12 tools) |
|
| Knowledge Graph (7 tools) |
|
| Domain Knowledge Network (7 tools) |
|
| Indexer (6 tools) |
|
| Report Builder (3 tools) |
|
| Press Release (14 tools) |
|
Run searchatlas check to see the live count, or ask your MCP client to list tools after connecting.
Configuration
Token priority (first match wins)
SEARCHATLAS_TOKENenv varSEARCHATLAS_API_KEYenv var~/.searchatlasrcfile (created bysearchatlas login)
Environment variables
Variable | Required | Description |
| Yes | JWT token from SearchAtlas |
| Alternative | API key auth |
| No | Custom v2 MCP endpoint (default: |
Native Streamable-HTTP clients
If your MCP client supports Streamable HTTP directly, you can skip this npm package and connect to the remote server in one step:
URL:
https://mcp.searchatlas.com/mcp/Transport: Streamable HTTP (JSON-RPC + SSE)
Header:
Authorization: Bearer <SEARCHATLAS_TOKEN>
Troubleshooting
Error | Fix |
| Use full paths (see Why full paths?) or re-run |
| Use |
| Run |
| Run |
| Token expired — run |
| Check network; run |
Tools not showing up | Restart your MCP client after adding config |
Still stuck? Run searchatlas check, make sure Node.js >= 18 (node --version), or open an issue.
Development
git clone https://github.com/Search-Atlas-Group/searchatlas-mcp-server.git
cd searchatlas-mcp-server
npm install && npm run buildTest with MCP Inspector:
npx @modelcontextprotocol/inspector npx searchatlas-mcp-serverRequirements
Node.js >= 18
A SearchAtlas account — sign up here
License
MIT
Available Tools
16 toolssearchatlas_authority_buildingC
Link building and digital PR — outreach, guest posts, and authority signals
| Name | Required | Description | Default |
|---|---|---|---|
| message | Yes | The message to send to the agent | |
| project_id | No | Project ID to scope the request (recommended) | |
| playbook_id | No | Playbook ID to execute within this agent | |
| plan_mode | No | Enable plan mode — agent proposes steps before executing |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
No annotations are provided, so the description carries the full burden of behavioral disclosure. It mentions 'link building and digital PR' activities but doesn't describe what the tool does behaviorally—e.g., whether it executes outreach, generates reports, requires authentication, has rate limits, or modifies data. This is a significant gap for a tool with potential mutative actions, as it lacks details on permissions, side effects, or response format.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
The description is a single, efficient phrase that front-loads the purpose. However, it's slightly under-specified for clarity, as it could benefit from a more specific verb to enhance understanding without adding unnecessary length.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
Given no annotations, no output schema, and a vague description, the description is incomplete. It doesn't explain what the tool returns, how it behaves, or when to use it, which is inadequate for a tool with 4 parameters and potential complex operations like link building. More context is needed to guide effective use.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Schema description coverage is 100%, so the schema already documents all 4 parameters (message, project_id, playbook_id, plan_mode) with descriptions. The description adds no meaning beyond the schema, such as explaining how parameters relate to link building activities. Baseline 3 is appropriate when the schema handles parameter documentation adequately.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description 'Link building and digital PR — outreach, guest posts, and authority signals' states a general purpose (link building/digital PR) and lists activities (outreach, guest posts, authority signals), but it's vague about what the tool actually does—whether it initiates, manages, or analyzes these activities. It doesn't specify a clear verb+resource combination (e.g., 'execute link building campaigns' or 'analyze authority signals'), and it doesn't distinguish from siblings like 'searchatlas_run_playbook' or 'searchatlas_content' that might overlap in SEO-related functions.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
No guidance is provided on when to use this tool versus alternatives. The description mentions activities but doesn't specify context, prerequisites, or exclusions. Given sibling tools like 'searchatlas_run_playbook' and 'searchatlas_content', there's no indication of when this tool is preferred, leaving usage unclear.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
searchatlas_contentC
AI content generation — blog posts, landing pages, and optimized copy
| Name | Required | Description | Default |
|---|---|---|---|
| message | Yes | The message to send to the agent | |
| project_id | No | Project ID to scope the request (recommended) | |
| playbook_id | No | Playbook ID to execute within this agent | |
| plan_mode | No | Enable plan mode — agent proposes steps before executing |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
With no annotations provided, the description carries the full burden of behavioral disclosure. It mentions 'AI content generation' but doesn't specify whether this is a read-only or write operation, what permissions are needed, how long it takes, rate limits, or what the output looks like. For a tool with 4 parameters and no output schema, this leaves significant gaps in understanding its behavior.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
The description is a single, efficient sentence that directly states the tool's purpose with examples. It's appropriately sized and front-loaded with the core function. However, it could be slightly more structured by explicitly mentioning it's for generating content via an AI agent.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
Given the complexity of a 4-parameter tool with no annotations and no output schema, the description is incomplete. It doesn't explain what the tool returns, how it interacts with the AI agent, or the implications of parameters like 'plan_mode'. For content generation, more context about output format or usage scenarios would be helpful.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Schema description coverage is 100%, so the schema already documents all parameters thoroughly. The description adds no additional meaning about parameters beyond implying general content generation. This meets the baseline of 3 since the schema does the heavy lifting, but the description doesn't compensate with any contextual insights about parameter usage.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description clearly states the tool's purpose as 'AI content generation' with specific examples (blog posts, landing pages, optimized copy), which is a clear verb+resource combination. However, it doesn't differentiate from sibling tools like 'searchatlas_website_studio' or 'searchatlas_run_playbook' which might also involve content generation, leaving some ambiguity about scope.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
The description provides no guidance on when to use this tool versus alternatives. It doesn't mention prerequisites, context for choosing this over other content-related tools, or any exclusions. The agent must infer usage from the name and parameters alone.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
searchatlas_create_projectC
Create a new SearchAtlas project
| Name | Required | Description | Default |
|---|---|---|---|
| domain | Yes | Project domain (e.g. example.com) | |
| country_code | No | ISO country code (default: US) | US |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
With no annotations provided, the description carries full burden for behavioral disclosure. 'Create' implies a write/mutation operation, but the description doesn't mention permission requirements, whether the operation is idempotent, what happens on duplicate domains, or what the expected response looks like. For a creation tool with zero annotation coverage, this leaves significant behavioral gaps.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
The description is a single, efficient sentence that states the core purpose without unnecessary words. It's front-loaded with the essential action and resource. There's zero waste or redundancy in the phrasing, making it maximally concise while still being clear.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
For a creation tool with no annotations and no output schema, the description is insufficient. It doesn't explain what constitutes a successful creation, what data is returned, error conditions, or how this tool integrates with the broader SearchAtlas ecosystem. The user gets minimal context beyond the basic action.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Schema description coverage is 100%, so the schema already documents both parameters thoroughly. The description adds no parameter-specific information beyond what's in the schema. The baseline score of 3 reflects adequate parameter documentation through the schema alone, though the description doesn't enhance understanding of how these parameters affect project creation.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description clearly states the verb ('Create') and resource ('new SearchAtlas project'), making the purpose immediately understandable. It distinguishes from siblings like 'searchatlas_list_projects' by focusing on creation rather than listing. However, it doesn't specify what a 'SearchAtlas project' entails or how it differs from other project types in the system.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
The description provides no guidance on when to use this tool versus alternatives. With siblings like 'searchatlas_list_projects' and 'searchatlas_run_playbook', there's no indication of prerequisites, dependencies, or appropriate contexts for project creation versus other operations. The user must infer usage from the tool name alone.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
searchatlas_gbpC
Google Business Profile management — listings, reviews, and local SEO
| Name | Required | Description | Default |
|---|---|---|---|
| message | Yes | The message to send to the agent | |
| project_id | No | Project ID to scope the request (recommended) | |
| playbook_id | No | Playbook ID to execute within this agent | |
| plan_mode | No | Enable plan mode — agent proposes steps before executing |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
No annotations are provided, so the description carries the full burden. It mentions 'management' but doesn't disclose behavioral traits like required permissions, rate limits, or what actions it performs (e.g., read vs. write). This leaves significant gaps in understanding how the tool behaves.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
The description is a single, efficient sentence that directly states the tool's domain. It's appropriately sized and front-loaded, with no wasted words, though it could be more specific to enhance clarity.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
Given the complexity implied by 'management' and the lack of annotations and output schema, the description is incomplete. It doesn't explain what the tool returns, how it handles errors, or the scope of operations, making it inadequate for a tool with multiple parameters and no structured behavioral hints.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Schema description coverage is 100%, so the schema fully documents the four parameters. The description adds no meaning beyond this, such as explaining how parameters interact or providing examples, resulting in a baseline score of 3.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description states the tool is for 'Google Business Profile management — listings, reviews, and local SEO', which provides a general domain but lacks a specific verb or action. It doesn't clearly distinguish what this tool does versus its siblings like 'searchatlas_run_playbook' or 'searchatlas_ppc', making the purpose somewhat vague.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
There is no guidance on when to use this tool versus alternatives. The description mentions a broad domain but doesn't specify contexts, prerequisites, or exclusions, leaving the agent with no usage direction beyond the general topic.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
searchatlas_keywordsC
Keyword research — search volume, difficulty, SERP analysis, and clustering
| Name | Required | Description | Default |
|---|---|---|---|
| message | Yes | The message to send to the agent | |
| project_id | No | Project ID to scope the request (recommended) | |
| playbook_id | No | Playbook ID to execute within this agent | |
| plan_mode | No | Enable plan mode — agent proposes steps before executing |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
No annotations are provided, so the description carries full burden for behavioral disclosure. While 'Keyword research' implies a read-only analytical operation, the description doesn't specify whether this tool makes API calls to external services, has rate limits, requires authentication, returns structured data, or has any side effects. For a tool with no annotation coverage, this leaves significant behavioral gaps.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
The description is extremely concise - a single phrase listing the tool's capabilities. Every word earns its place by specifying different aspects of keyword research. There's no wasted language or unnecessary elaboration. The structure is front-loaded with the core purpose immediately clear.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
Given the complexity of keyword research (which typically involves multiple metrics and analyses), no annotations, and no output schema, the description is insufficiently complete. It doesn't explain what format the results will be in, what specific metrics are returned, whether there are limitations on query volume, or how the clustering functionality works. For a research tool with rich potential outputs, more context is needed.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Schema description coverage is 100%, so the schema already documents all 4 parameters thoroughly. The description doesn't add any parameter-specific information beyond what's in the schema. It doesn't explain how parameters like 'message', 'project_id', or 'playbook_id' relate to keyword research functionality. The baseline of 3 is appropriate when the schema does the heavy lifting.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description clearly states the tool's purpose as 'Keyword research' with specific components: 'search volume, difficulty, SERP analysis, and clustering'. This provides a specific verb ('research') and resource ('keywords') with detailed scope. However, it doesn't explicitly differentiate from sibling tools like 'searchatlas_content' or 'searchatlas_ppc' which might also involve keyword-related functionality.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
The description provides no guidance on when to use this tool versus alternatives. With multiple sibling tools available (e.g., searchatlas_content, searchatlas_ppc, searchatlas_site_explorer), there's no indication of when keyword research is appropriate versus other SEO or content analysis tools. The description lacks any context about prerequisites, typical use cases, or exclusions.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
searchatlas_list_artifactsC
List artifacts (code, content, reports) across all sessions
| Name | Required | Description | Default |
|---|---|---|---|
| page | No | Page number | |
| page_size | No | Results per page | |
| type | No | Filter by artifact type (e.g. code, text, html) | |
| search | No | Search artifacts by title or content | |
| namespace | No | Filter by agent namespace (e.g. otto, content_genius) |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
No annotations are provided, so the description carries full burden. It states it's a list operation, implying read-only behavior, but doesn't disclose critical traits like pagination details (implied by parameters but not explained), rate limits, authentication needs, or what 'across all sessions' entails in terms of scope or permissions.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
The description is a single, efficient sentence that front-loads the core action ('List artifacts') and includes helpful examples. There's no wasted text, making it appropriately sized and well-structured for quick comprehension.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
Given no annotations and no output schema, the description is incomplete for a tool with 5 parameters. It lacks details on behavioral traits, return values, or error handling. While concise, it doesn't compensate for the missing structured data, leaving gaps in understanding the tool's full context.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Schema description coverage is 100%, so the schema fully documents all 5 parameters. The description adds no additional meaning beyond implying filtering by type with examples ('e.g. code, text, html'), which is already covered in the schema. Baseline 3 is appropriate as the schema handles parameter semantics adequately.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description clearly states the verb ('List') and resource ('artifacts') with examples of what artifacts include ('code, content, reports'), making the purpose specific and understandable. However, it doesn't explicitly differentiate from sibling tools like 'searchatlas_list_conversations' or 'searchatlas_list_projects', which also list resources, so it misses full sibling distinction.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
The description provides no guidance on when to use this tool versus alternatives. It mentions 'across all sessions' but doesn't clarify if this is the only way to list artifacts or when to choose it over other list tools, leaving the agent without usage context.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
searchatlas_list_conversationsB
List conversation sessions, optionally filtered by agent
| Name | Required | Description | Default |
|---|---|---|---|
| agent_namespace | No | Filter by agent namespace (e.g. orchestrator, otto, content_genius) | |
| page | No | Page number | |
| page_size | No | Results per page | |
| search | No | Search conversations by title |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
No annotations are provided, so the description carries the full burden of behavioral disclosure. It mentions listing and optional filtering, but fails to describe key behaviors such as pagination handling (implied by parameters but not explained), rate limits, authentication needs, or what the output looks like (e.g., format, error cases). This leaves significant gaps for an agent to understand how to interact with the tool effectively.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
The description is a single, efficient sentence that front-loads the core purpose ('List conversation sessions') and adds a useful qualifier ('optionally filtered by agent'). There is no wasted verbiage or redundancy, making it highly concise and well-structured.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
Given the tool's complexity (4 parameters, no annotations, no output schema), the description is insufficient. It doesn't explain the behavioral aspects (e.g., pagination, search functionality), output format, or error handling. While the schema covers parameters, the lack of annotations and output schema means the description should compensate more to provide a complete picture for an agent.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Schema description coverage is 100%, so the input schema fully documents all parameters. The description adds minimal value beyond the schema by mentioning optional filtering by agent, which loosely relates to 'agent_namespace', but doesn't provide additional semantics, examples, or constraints. This meets the baseline for high schema coverage.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description clearly states the verb 'List' and resource 'conversation sessions', making the purpose evident. It also mentions optional filtering by agent, which adds specificity. However, it doesn't explicitly differentiate from sibling tools like 'searchatlas_list_artifacts' or 'searchatlas_list_playbooks', which also list resources, preventing a perfect score.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
The description implies usage context by mentioning optional filtering by agent, suggesting it's for retrieving conversations, possibly in a search or monitoring scenario. However, it lacks explicit guidance on when to use this tool versus alternatives (e.g., no comparison to other list tools or search functions), and there's no mention of prerequisites or exclusions.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
searchatlas_list_playbooksB
List available playbooks (automation recipes), optionally filtered by agent or ownership
| Name | Required | Description | Default |
|---|---|---|---|
| filter | No | Ownership filter | all |
| agent_namespace | No | Filter by agent namespace (e.g. otto, content_genius, orchestrator) | |
| search | No | Search playbooks by name or description | |
| page | No | Page number | |
| page_size | No | Results per page |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
With no annotations provided, the description carries the full burden of behavioral disclosure. It mentions filtering capabilities but fails to describe key behavioral traits such as pagination behavior (implied by page/page_size parameters but not explained), rate limits, authentication requirements, or what the return format looks like (especially critical since there's no output schema). For a list tool with 5 parameters and no annotations, this leaves significant gaps.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
The description is a single, efficient sentence that front-loads the core purpose ('List available playbooks') and immediately adds optional filtering context. Every word earns its place with zero redundancy or wasted phrasing, making it easy to parse quickly.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
Given the complexity (5 parameters, no annotations, no output schema), the description is incomplete. It adequately states the purpose but lacks crucial behavioral context (e.g., pagination, return format, error handling) and doesn't compensate for the absence of annotations or output schema. For a tool that likely returns a list of playbooks with metadata, more guidance on the response structure would be helpful.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Schema description coverage is 100%, so the schema already documents all parameters thoroughly. The description adds marginal value by mentioning 'filtered by agent or ownership', which loosely maps to the 'filter' and 'agent_namespace' parameters, but doesn't provide additional syntax, format details, or usage examples beyond what the schema specifies. This meets the baseline for high schema coverage.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description clearly states the verb ('List') and resource ('available playbooks (automation recipes)'), making the purpose immediately understandable. It distinguishes itself from siblings like searchatlas_run_playbook by focusing on listing rather than execution. However, it doesn't explicitly differentiate from other list tools like searchatlas_list_artifacts or searchatlas_list_projects beyond the resource type.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
The description implies usage through the phrase 'optionally filtered by agent or ownership', suggesting it's for retrieving playbooks with potential filtering. However, it lacks explicit guidance on when to use this tool versus alternatives like searchatlas_list_artifacts or searchatlas_list_projects, and doesn't mention prerequisites or exclusions. The context is clear but not comprehensive.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
searchatlas_list_projectsB
List SearchAtlas projects for the authenticated user
| Name | Required | Description | Default |
|---|---|---|---|
| page | No | Page number | |
| page_size | No | Results per page | |
| search | No | Filter projects by domain |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
No annotations are provided, so the description carries full burden. It mentions authentication ('for the authenticated user') which is useful, but doesn't disclose other behavioral traits like pagination behavior (implied by parameters but not explicitly stated), rate limits, error conditions, or what the output looks like. For a list operation with no annotation coverage, this leaves significant gaps.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
The description is a single, efficient sentence with zero wasted words. It's appropriately sized for a simple list operation and front-loads the essential information without unnecessary elaboration.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
Given the tool's moderate complexity (list operation with pagination/search parameters), no annotations, and no output schema, the description is minimally adequate but has clear gaps. It covers the basic purpose and authentication context but lacks details about output format, error handling, and usage guidance that would be helpful for an agent.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Schema description coverage is 100%, so the schema already documents all three parameters with descriptions. The description doesn't add any parameter-specific information beyond what's in the schema, maintaining the baseline score of 3 when schema does the heavy lifting.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description clearly states the action ('List') and resource ('SearchAtlas projects') with scope ('for the authenticated user'), providing specific verb+resource. However, it doesn't differentiate from sibling list tools like searchatlas_list_artifacts or searchatlas_list_playbooks, which would require mentioning it's specifically about projects rather than other resource types.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
No guidance is provided on when to use this tool versus alternatives. The description doesn't mention when to use searchatlas_list_projects versus searchatlas_create_project or other project-related tools, nor does it provide context about prerequisites or typical use cases.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
searchatlas_llm_visibilityC
LLM brand monitoring — tracks how AI models reference your brand and competitors
| Name | Required | Description | Default |
|---|---|---|---|
| message | Yes | The message to send to the agent | |
| project_id | No | Project ID to scope the request (recommended) | |
| playbook_id | No | Playbook ID to execute within this agent | |
| plan_mode | No | Enable plan mode — agent proposes steps before executing |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
No annotations are provided, so the description carries the full burden of behavioral disclosure. It mentions 'tracks' but doesn't specify whether this is a read-only operation, if it requires authentication, what the output format is, or any rate limits. For a tool with 4 parameters and no output schema, this is a significant gap in transparency.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
The description is a single, efficient sentence that front-loads the core purpose without any wasted words. It's appropriately sized for the tool's complexity, making it easy for an agent to parse quickly.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
Given the tool's complexity (4 parameters, no output schema, no annotations), the description is incomplete. It doesn't address behavioral aspects like output format, error handling, or how it integrates with sibling tools, leaving the agent with insufficient context for effective use.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Schema description coverage is 100%, so the schema already documents all parameters thoroughly. The description adds no additional meaning beyond what's in the schema (e.g., it doesn't explain how parameters like 'message' or 'playbook_id' relate to brand monitoring). Baseline 3 is appropriate when the schema does the heavy lifting.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description clearly states the tool's purpose as 'LLM brand monitoring — tracks how AI models reference your brand and competitors,' which specifies the verb (tracks) and resource (brand/competitor references in AI models). However, it doesn't explicitly differentiate this from sibling tools like searchatlas_content or searchatlas_keywords, which might also involve monitoring or analysis, so it's not a perfect 5.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
The description provides no guidance on when to use this tool versus alternatives. It doesn't mention any prerequisites, exclusions, or compare it to sibling tools like searchatlas_run_playbook or searchatlas_authority_building, leaving the agent to guess based on the name alone.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
searchatlas_orchestratorB
Multi-agent coordinator — routes queries to the best specialized agent (SEO, content, PPC, etc.)
| Name | Required | Description | Default |
|---|---|---|---|
| message | Yes | The message to send to the agent | |
| project_id | No | Project ID to scope the request (recommended) | |
| playbook_id | No | Playbook ID to execute within this agent | |
| plan_mode | No | Enable plan mode — agent proposes steps before executing |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
With no annotations provided, the description carries full burden but lacks behavioral details. It doesn't disclose whether this is a read/write operation, what happens during routing (e.g., agent selection logic), response format, or any constraints like rate limits. The description adds minimal context beyond the basic coordination concept.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
The description is a single, efficient sentence that front-loads the core purpose ('Multi-agent coordinator') and immediately explains its function. Every word earns its place with no redundancy or unnecessary elaboration.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
Given no annotations, no output schema, and a coordination tool with 4 parameters, the description is incomplete. It doesn't explain what happens after routing (e.g., returns agent response, triggers execution), success/failure conditions, or how it interacts with the listed sibling tools, leaving significant gaps for an AI agent.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Schema description coverage is 100%, so the schema fully documents all 4 parameters. The description adds no parameter-specific information beyond implying 'queries' map to the 'message' parameter. Baseline 3 is appropriate since the schema handles parameter documentation adequately.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description clearly states the tool's purpose as a 'multi-agent coordinator' that 'routes queries to the best specialized agent', specifying the verb (routes) and resource (queries). It distinguishes from siblings by mentioning agent types (SEO, content, PPC), but doesn't explicitly name which sibling tools it routes to versus those that might be standalone.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
The description implies usage when needing specialized agent routing, but doesn't explicitly state when to use this tool versus alternatives like direct agent tools (e.g., searchatlas_seo). No exclusions or prerequisites are mentioned, leaving usage context somewhat vague.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
searchatlas_otto_seoC
On-page SEO automation — deploys technical fixes, schema markup, and content optimizations
| Name | Required | Description | Default |
|---|---|---|---|
| message | Yes | The message to send to the agent | |
| project_id | No | Project ID to scope the request (recommended) | |
| playbook_id | No | Playbook ID to execute within this agent | |
| plan_mode | No | Enable plan mode — agent proposes steps before executing |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
No annotations are provided, so the description carries full burden. It mentions 'automation' and 'deploys' which implies execution/mutation, but doesn't disclose critical behavioral traits: whether this is a read-only preview or actually makes changes, what permissions are needed, whether it's destructive, rate limits, or what the output looks like. For a tool with 'deploys' in its description and no annotations, this is a significant gap in transparency.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
The description is extremely concise - a single sentence that efficiently communicates the core functionality. Every word earns its place: 'on-page SEO automation' establishes the domain, and the three-item list specifies the scope. No wasted words or redundant information.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
For an automation tool with no annotations and no output schema, the description is insufficiently complete. It doesn't explain what 'deploys' means operationally - whether this executes changes or just plans them, what the response contains, or how it differs from related tools. The 100% schema coverage helps with parameters, but the behavioral context is critically lacking for what appears to be a mutation/execution tool.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Schema description coverage is 100%, so the schema already documents all 4 parameters thoroughly. The description adds no parameter-specific information beyond what's in the schema - it doesn't explain how 'message', 'project_id', 'playbook_id', or 'plan_mode' relate to the SEO automation process. With high schema coverage, the baseline 3 is appropriate as the description doesn't add value but doesn't need to compensate for schema gaps.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description clearly states the tool's purpose as 'on-page SEO automation' with specific actions: 'deploys technical fixes, schema markup, and content optimizations.' This provides a clear verb+resource combination. However, it doesn't explicitly differentiate from sibling tools like 'searchatlas_content' or 'searchatlas_run_playbook' which might also handle content or automation aspects.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
The description provides no guidance on when to use this tool versus alternatives. With multiple sibling tools like 'searchatlas_content', 'searchatlas_run_playbook', and 'searchatlas_website_studio' that might overlap in SEO or automation domains, there's no indication of when this specific automation tool is appropriate versus those others. No prerequisites, exclusions, or contextual boundaries are mentioned.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
searchatlas_ppcC
PPC / Google Ads management — campaign creation, bid strategy, and performance analysis
| Name | Required | Description | Default |
|---|---|---|---|
| message | Yes | The message to send to the agent | |
| project_id | No | Project ID to scope the request (recommended) | |
| playbook_id | No | Playbook ID to execute within this agent | |
| plan_mode | No | Enable plan mode — agent proposes steps before executing |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
With no annotations provided, the description carries the full burden of behavioral disclosure. It mentions three functional areas but doesn't describe how the tool behaves—e.g., whether it executes actions or just analyzes, what permissions are needed, if it modifies live campaigns, rate limits, or output format. The description is too high-level to guide an agent on behavioral expectations.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
The description is a single, efficient sentence that front-loads the key domain and functions without unnecessary words. However, it could be more structured by separating the three functions for clarity, and it lacks any follow-up context that might be useful for an agent.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
Given the complexity implied by managing P campaigns (which often involve mutations and analysis), no annotations, no output schema, and four parameters, the description is incomplete. It doesn't address how the tool integrates with the broader system (e.g., via playbooks or projects mentioned in parameters), what results to expect, or safety considerations for a potentially destructive domain like ad management.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Schema description coverage is 100%, so the schema fully documents all four parameters. The description adds no parameter-specific information beyond implying the tool handles PPC-related messages. Since the schema does the heavy lifting, the baseline score of 3 is appropriate, though the description doesn't compensate with additional context like example messages or parameter interactions.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description clearly states the tool's purpose as 'PPC / Google Ads management — campaign creation, bid strategy, and performance analysis', which specifies the domain (PPC/Google Ads) and three key functions. It distinguishes from most siblings (e.g., content, keywords, SEO tools) by focusing on paid advertising, though it doesn't explicitly differentiate from all possible alternatives within the same domain.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
The description provides no guidance on when to use this tool versus alternatives. It mentions three functions but doesn't specify contexts for campaign creation vs. bid strategy vs. performance analysis, nor does it reference sibling tools like searchatlas_run_playbook that might overlap. No exclusions or prerequisites are stated.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
searchatlas_run_playbookC
Execute a playbook (automation recipe) on a project using the appropriate agent
| Name | Required | Description | Default |
|---|---|---|---|
| playbook_id | Yes | UUID of the playbook to run | |
| project_id | Yes | Project ID to run the playbook against | |
| message | No | Optional instruction message to the agent | Run this playbook |
| agent_namespace | No | Agent namespace to execute in (default: orchestrator). Use the agent_namespace from the playbook listing. |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
With no annotations, the description carries full burden but provides minimal behavioral insight. It mentions execution and agent usage but lacks details on permissions needed, whether it's destructive, rate limits, or expected outcomes. This is inadequate for a tool that likely performs significant automation actions.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
The description is a single, efficient sentence that front-loads the core action. It could be slightly more informative but avoids redundancy and waste.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
For a tool with 4 parameters, no annotations, and no output schema, the description is insufficient. It doesn't cover behavioral aspects like execution safety, response format, or error handling, leaving significant gaps for an AI agent to understand its use.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Schema description coverage is 100%, so the baseline is 3. The description adds no additional parameter semantics beyond what's in the schema (e.g., it doesn't explain playbook selection criteria or agent namespace implications), but it doesn't need to compensate for gaps.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description clearly states the action ('Execute') and target ('a playbook on a project'), specifying it's an automation recipe. It distinguishes from siblings like 'searchatlas_list_playbooks' by focusing on execution rather than listing, though it doesn't explicitly contrast with all siblings.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
No guidance on when to use this tool versus alternatives is provided. It mentions 'using the appropriate agent' but doesn't specify what makes an agent appropriate or when to choose this over other tools like 'searchatlas_orchestrator' or 'searchatlas_llm_visibility'.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
searchatlas_site_explorerC
Site audit and analysis — crawl data, backlink profiles, and competitive intelligence
| Name | Required | Description | Default |
|---|---|---|---|
| message | Yes | The message to send to the agent | |
| project_id | No | Project ID to scope the request (recommended) | |
| playbook_id | No | Playbook ID to execute within this agent | |
| plan_mode | No | Enable plan mode — agent proposes steps before executing |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
No annotations are provided, so the description carries full burden. It mentions 'audit and analysis' which implies read-only behavior, but doesn't disclose critical traits like whether it performs mutations, requires authentication, has rate limits, or what the output entails. For a tool with 4 parameters and no output schema, this lack of behavioral detail is a significant gap.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
The description is a single, efficient sentence that front-loads the core purpose without unnecessary words. It's appropriately sized for the tool's complexity, though it could be more structured by explicitly separating functions. Every part earns its place, making it concise.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
Given the tool's complexity (4 parameters, no output schema, no annotations), the description is incomplete. It lacks details on behavior, output format, and how it integrates with siblings. For an analysis tool, more context on what 'audit and analysis' entails and the results is needed, making it inadequate for full agent understanding.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Schema description coverage is 100%, so the schema already documents all parameters well. The description adds no additional meaning about parameters beyond the generic 'site audit and analysis' context. This meets the baseline of 3, as the schema handles the heavy lifting, but the description doesn't compensate or enhance parameter understanding.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description states the tool performs 'site audit and analysis' with specific areas (crawl data, backlink profiles, competitive intelligence), which gives a general purpose. However, it doesn't specify a clear verb-action relationship or distinguish this from sibling tools like searchatlas_website_studio or searchatlas_authority_building that might have overlapping SEO functions, making it somewhat vague.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
The description provides no guidance on when to use this tool versus alternatives. It doesn't mention prerequisites, context, or exclusions, and with multiple SEO-related siblings, there's no indication of how this differs from tools like searchatlas_content or searchatlas_keywords, leaving the agent without usage direction.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
searchatlas_website_studioC
Website builder — creates and edits pages, layouts, and site structure
| Name | Required | Description | Default |
|---|---|---|---|
| message | Yes | The message to send to the agent | |
| project_id | No | Project ID to scope the request (recommended) | |
| playbook_id | No | Playbook ID to execute within this agent | |
| plan_mode | No | Enable plan mode — agent proposes steps before executing |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
With no annotations provided, the description carries the full burden of behavioral disclosure. It mentions creation and editing actions but fails to detail permissions, side effects, rate limits, or response formats. This is inadequate for a tool with potential mutations and complex operations.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
The description is a single, efficient sentence that front-loads the core purpose without unnecessary words. Every part earns its place by concisely conveying the tool's function, making it easy to scan and understand.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
Given the complexity of a website builder with no annotations and no output schema, the description is incomplete. It lacks details on behavioral traits, return values, error handling, and integration with sibling tools, leaving significant gaps for effective agent use.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Schema description coverage is 100%, so the schema already documents all four parameters thoroughly. The description adds no additional meaning about parameters, such as how 'message' relates to website building or the role of 'playbook_id'. Baseline 3 is appropriate as the schema handles the heavy lifting.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description clearly states the tool's purpose as a website builder that creates and edits pages, layouts, and site structure, using specific verbs and resources. It distinguishes itself from siblings like content creation or project listing tools by focusing on website construction, though it doesn't explicitly contrast with similar website-related siblings.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
The description provides no guidance on when to use this tool versus alternatives, such as other website-related siblings or general content tools. It lacks context about prerequisites, scenarios, or exclusions, leaving usage decisions ambiguous.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
Tool Schema Changelog
Recent tool additions, removals, and schema changes observed during successful MCP inspections.
16 tool updates
v1.3.8- First observed
searchatlas_authority_building - First observed
searchatlas_content - First observed
searchatlas_create_project - First observed
searchatlas_gbp - First observed
searchatlas_keywords - First observed
searchatlas_list_artifacts - First observed
searchatlas_list_conversations - First observed
searchatlas_list_playbooks - First observed
searchatlas_list_projects - First observed
searchatlas_llm_visibility - First observed
searchatlas_orchestrator - First observed
searchatlas_otto_seo - First observed
searchatlas_ppc - First observed
searchatlas_run_playbook - First observed
searchatlas_site_explorer - First observed
searchatlas_website_studio
TDQS
Scored across 16 tools
Most tools have distinct purposes targeting specific SEO and marketing domains (e.g., keywords, content, PPC), but there is some overlap in scope between 'searchatlas_site_explorer' (site audit) and 'searchatlas_otto_seo' (on-page SEO), which could cause confusion as both involve site analysis and optimization. The descriptions help clarify, but boundaries are not perfectly sharp.
All tool names follow a consistent 'searchatlas_' prefix with snake_case and clear verb_noun patterns (e.g., 'searchatlas_create_project', 'searchatlas_list_projects'), making them predictable and easy to parse. There are no deviations in naming conventions across the set.
With 16 tools, the count is slightly high but reasonable for a comprehensive SEO and marketing platform, covering areas like content, keywords, PPC, and site management. It feels a bit heavy but not excessive, as each tool appears to serve a distinct function within the broad domain.
The tool set provides broad coverage for SEO and marketing tasks, including project management, content generation, keyword research, and automation. Minor gaps exist, such as no explicit tools for deleting projects or managing user settings, but core workflows are well-supported, and agents can likely work around these omissions.
Maintenance
Related MCP Connectors
- CalmSEOOAuthcom.calmseo
SEO MCP server for keyword research, SERP analysis, audits, and Search Console workflows.
Live SEO workflow tools for Claude Code, Codex, and AI agents.
The OpenRouter MCP server plugs OpenRouter into the AI tools you already use. Once connected, your assistant can pull live OpenRouter data (models, prices, your credits, rankings, and docs) and send quick test messages, all without leaving your editor.
- VibeSEOOAuthdev.vibeseo
SEO research, audits, backlinks, GSC, and content workflow tools for AI agents.
Related MCP Servers
- FlicenseNot gradedqualityDmaintenanceMCP server that enables AI assistants to perform SEO automation tasks including keyword research, SERP analysis, and competitor analysis through Google Ads API integration.1-
- AlicenseNot gradedqualityCmaintenanceAn MCP server that connects AI assistants to SEO platforms like Google Search Console, GA4, Bing Webmaster Tools, and Adobe Analytics, enabling natural language queries about SEO performance.555 npmMIT
- AlicenseBqualityDmaintenanceProfessional Google Search Console MCP server providing 40+ SEO tools for performance analysis, content decay, CTR opportunities, and more, enabling real search data in clients like Cursor and Claude.4010 npm6MIT
- AlicenseBqualityDmaintenanceAn MCP server that gives AI assistants 23 SEO tools for rank tracking, Google Analytics, site audits, keyword research, competitive analysis, and more, accessible through natural language.2510MIT