Skip to main content
Glama

Schedule an article

schedule_article

Adds a custom article to the content calendar on a given date. The scheduler generates it around that date and consumes 1 article credit at generation time (not when scheduling), so the account needs an active subscription or at least 1 article credit. Limits: at most 90 pending (not yet generated) articles per website, 30 new schedules per hour, one scheduled article per keyword, 3 products per article. The website's publishing frequency is enforced: when the date already holds as many articles as the website publishes per day, the call fails and names the next free date, so pass that date, or move the existing article with reschedule_article. Pass keyword_id (from list_keywords, or add_keywords then list_keywords) to target a keyword, and brief for writing instructions. Returns the created row; nothing is written yet in the articles list until generation runs. Pass website_id when the account has several websites (see get_account).

Input Schema

TableJSON Schema
NameRequiredDescriptionDefault
briefNoContent brief the writer follows: angle, must-cover points, tone, audience, sources.
headlineYesArticle headline (title). Use suggest_headline afterwards to improve it.
keyword_idNoKeyword id from the keywords tools. One scheduled article per keyword.
website_idNoWebsite id from get_account. Optional when the account has a single website.
product_idsNoProduct ids to feature in the article (max 3). Unknown ids are dropped.
scheduled_dateYesGeneration date, YYYY-MM-DD. Today or later.

Output Schema

TableJSON Schema
NameRequiredDescriptionDefault
briefYesWriting brief the article follows.
headlineYes
is_customYestrue when the user planned the article; false for automatic topics.
created_atYes
product_idsYes
is_generatedYestrue once the article was written; generated rows can no longer be edited.
scheduled_atYesGeneration date, YYYY-MM-DD.
target_keywordYes
target_keyword_idYes
generated_article_idYesArticle id once generated, for the articles tools.
scheduled_article_idYes

Schema Changelog

Changes observed during successful MCP inspections.

  1. First observed

TDQS

A4.7/5.0
Behavior5/5

Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?

Annotations only carry four false hints, so the description carries the disclosure burden, and it does so thoroughly. It reveals that credit is consumed at generation time rather than scheduling time, that the call fails on full dates and names the next free date, that nothing is written to the articles list until generation, and it lists rate and pending limits. These are non-obvious behavioral traits an agent needs before calling.

Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.

Conciseness5/5

Is the description appropriately sized, front-loaded, and free of redundancy?

The description is long but densely packed, front-loading the core action and the most important caveat (credit consumption) before moving to limits, failure behavior, and parameter guidance. Every sentence carries operational value, and the structure is logical despite the length.

Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.

Completeness5/5

Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?

Given six parameters, complex scheduling behavior, and an output schema, the description covers the essential operational context: prerequisites, limits, failure mode, parameter sources, and what the call returns. An agent has enough information to call the tool correctly without needing additional discovery.

Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.

Parameters4/5

Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?

Schema coverage is 100%, so the baseline is 3, but the description adds meaning beyond the schema: it explains where keyword_id comes from, when website_id is needed, that product_ids are capped at 3, and that one scheduled article is allowed per keyword. This gives practical context the schema alone does not provide.

Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.

Purpose5/5

Does the description clearly state what the tool does and how it differs from similar tools?

The description opens with a specific verb and object: 'Adds a custom article to the content calendar on a given date.' It also distinguishes the tool from siblings by contrasting with reschedule_article ('move the existing article with reschedule_article') and by clarifying that scheduling is not generation.

Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.

Usage Guidelines4/5

Does the description explain when to use this tool, when not to, or what alternatives exist?

The description gives clear conditions: active subscription or article credit required, limits on pending articles and schedules, one scheduled article per keyword, and website publishing-frequency enforcement. It also points to reschedule_article as the alternative when the date is full and to list_keywords/add_keywords/get_account as data sources. It does not explicitly contrast with the bulk sibling schedule_articles_for_keywords, so it stops short of a full when-not-to-use statement.

Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.

Try in Browser

Glama MCP Gateway

Add one secure layer between your agents and this server.