List Articles
list_articlesRecent articles for a site with their status (draft/review/published) and generation status. (requires an agent API key)
Input Schema
| Name | Required | Description | Default |
|---|---|---|---|
| limit | No | ||
| siteId | Yes |
list_articlesRecent articles for a site with their status (draft/review/published) and generation status. (requires an agent API key)
| Name | Required | Description | Default |
|---|---|---|---|
| limit | No | ||
| siteId | Yes |
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
Beyond the readOnlyHint annotation, the description adds that an agent API key is required and reveals the output includes status fields. It does not cover pagination or error handling, but with the annotation already signaling a safe read operation, the added context is meaningful.
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 concise sentence plus a parenthetical, front-loading the core purpose. Every word earns its place without redundancy.
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 simple tool with two parameters and no output schema, the description covers the return content (statuses) and the required auth. It lacks explicit pagination/sorting details, but 'recent' conveys ordering, making it adequate for this complexity.
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?
The input schema has 0% description coverage, and the description only implicitly references siteId ('for a site') and limit ('recent'). It does not explicitly explain parameter formats or default behavior, though it provides partial context that helps infer their purpose.
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 it lists recent articles for a site, including their status (draft/review/published) and generation status. It distinguishes from sibling tools like get_article (single article), generate_article (create), publish_article (publish), and list_sites (list sites) by specifying the resource and 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 clear context for when to use the tool: to fetch recent articles for a site. It also notes a prerequisite (agent API key). It does not explicitly name alternatives or state when not to use, but the scoped context is adequate for such a simple list operation.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
Add one secure layer between your agents and this server.
Most tools have distinct purposes, but word-counter and character-counter overlap heavily, and meta-tag-generator subsumes several other generators (title, description, canonical). The sheer number of adjacent content generators creates some ambiguity, though descriptions generally clarify.
Tool names are inconsistent: some use snake_case (create_site, get_article, list_articles) while others use hyphenated lowercase (ad-copy-generator, meta-tag-generator, robots-txt-generator). This mixing of conventions makes it hard for an agent to predict the name for a given action.
With 59 tools, the server is heavily over-scoped for a typical MCP server. Many tools are similar (various calculators, many content generators) and could be consolidated, making the surface bloated and harder to navigate.
The server covers a broad range of SEO tasks: site management, article generation/publishing, analytics, technical SEO, and content tools. However, there are gaps such as missing update/delete operations for articles and no backlink analysis, leaving some workflows incomplete.