Skip to main content
Glama

Server Details

Publish and manage articles, series, comments, reactions, newsletters, and analytics — from any AI…

If you are the author of this connector, you can claim ownership by verifying the domain or GitHub account it belongs to. Claimed connector authors can inspect health checks, view analytics, and manage their listing.
Status
Healthy
Uptime
96.9% over 62 days
Last Tested
Transport
Streamable HTTP · MCP 2025-06-18
URL
Repository
Misar-AI/misarblog-mcp
GitHub Stars
1
Server Listing
MisarBlog MCP Server

TDQS

B3.4/5.0

Scored across 23 tools

Disambiguation4/5

Most tools target a distinct resource+action (articles, series, reactions, newsletter, analytics). The main overlap is generate_title_seo vs suggest_titles, but the descriptions explicitly cross-reference each other ('Use generate_title_seo instead if...') which resolves the ambiguity. A few name pairs (create_draft/publish_article, list_my_articles/search_articles) are also carefully delineated in text.

Naming Consistency4/5

Nearly all tools follow a clean verb_noun snake_case pattern (add_reaction, create_draft, get_analytics_summary, list_newsletter_subscribers, etc.). The only real deviation is the bare verb 'upgrade', which lacks the object noun the rest of the set uses. Minor stylistic inconsistency but overall very predictable.

Tool Count3/5

23 tools is on the heavy side for a single blogging platform, sitting in the borderline 16-25 band. The breadth is partly justified by covering many sub-domains (articles, series, reactions, newsletter, analytics, AI generation, billing), but a surface this large risks overwhelming selection. Some consolidation (e.g. one title-suggestion tool, fewer reaction calls) would tighten it.

Completeness3/5

Core publishing workflow (draft, publish, update, get, list, search) is well covered, but there are notable gaps: no delete_article, no comment-creation/reply tool (only list_comments), no follow/unfollow action despite get_follow_status, and no remove_from_series or delete_series. Agents will hit dead ends on moderation, interaction, and cleanup tasks.

Available Tools

23 tools
add_reactionAdd reactionA
Idempotent
Inspect

Add a reaction to an article. No-ops if already reacted. Requires API key.

ParametersJSON Schema
NameRequiredDescriptionDefault
typeYesReaction type: like, clap, or bookmark
article_idYesUUID of the article

TDQS

A3.8/5.0
Behavior4/5

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

Annotations already declare idempotentHint=true and the safety profile, so the bar is lower. The description still adds concrete value by explaining the no-op behavior on repeated reactions and disclosing the API key requirement, an auth detail annotations don't cover.

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?

Three tight sentences, front-loaded with the core action, then the edge-case behavior, then the prerequisite. No filler and every sentence carries required information.

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

Completeness4/5

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

For a simple two-parameter mutation with a self-documenting schema and no output schema, the description covers the action, idempotency, and auth requirement. Only the return shape is unstated, which is a minor gap given no output schema exists.

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

Parameters3/5

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

Schema description coverage is 100% and the enum of reaction types is fully documented in the schema, so the description carries no extra parameter burden. It adds nothing beyond what the schema already states, making the baseline 3 correct.

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

Purpose4/5

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

States a specific verb (Add) and resource (reaction to an article), so an agent immediately knows what it does. It implicitly contrasts with the remove_reaction and get_reactions siblings, but never names them, so differentiation is left to inference.

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

Usage Guidelines3/5

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

Usage is implied by the action name and the 'No-ops if already reacted' note, but there is no explicit when-to-use or when-not-to-use guidance. It doesn't clarify, for example, when to call remove_reaction instead, leaving the agent to infer the pairing.

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

add_to_seriesAdd to seriesC
Idempotent
Inspect

Add an existing article to a series

ParametersJSON Schema
NameRequiredDescriptionDefault
positionNoPosition in the series (optional, appends if omitted)
series_slugYesThe series slug
article_slugYesThe article slug to add

TDQS

C2.9/5.0
Behavior2/5

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

Annotations already declare readOnly=false, idempotent=true, destructive=false, openWorld=true, so the safety profile is covered. The description adds nothing beyond them: no note that re-adding is a no-op (idempotency), no statement of what happens on conflict, no auth requirements. It is not contradictory, but it contributes no behavioral context of its own.

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

Conciseness4/5

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

A single front-loaded sentence with no filler. It is efficient, though the brevity comes at the cost of substance rather than being a model of tight specification.

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

Completeness3/5

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

For a simple 3-param mutation with a fully documented schema and annotations covering the safety profile, the description is minimally adequate. It omits failure modes (unknown series/article slug) and confirmation of idempotent re-add behavior, but nothing critical to invoking it is missing.

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

Parameters3/5

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

Schema description coverage is 100%, so all three parameters (series_slug, article_slug, optional position) are already documented in the schema, including append-if-omitted semantics for position. The description adds no format or ordering detail, so the baseline 3 is appropriate.

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

Purpose4/5

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

States a specific verb and resource: add an existing article to a series. The word 'existing' usefully implies this does not create the article, distinguishing it loosely from create_draft/create_series. It stops short of naming the sibling it complements (create_series, get_series).

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

Usage Guidelines2/5

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

No when-to-use context, no prerequisites (e.g. does the series have to exist? must the caller own the article?), and no mention of alternatives such as create_series. The agent must infer everything from the name.

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

create_draftCreate draftBInspect

Save an article as a draft on Misar.Blog (for review before publishing)

ParametersJSON Schema
NameRequiredDescriptionDefault
tagsNoTags for the draft
titleYesDraft title
body_markdownYesFull article body in Markdown

TDQS

B3.4/5.0
Behavior3/5

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

Annotations already declare this is a non-read-only, non-destructive, non-idempotent, open-world write, so the safety profile is covered. The description adds the workflow context that a draft is for review prior to publishing, but says nothing about authentication requirements, whether drafts are private, or what happens to the record on repeated calls.

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

Conciseness4/5

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

A single sentence that leads with the action and resource, with no redundant filler. The parenthetical is compact and carries real workflow information rather than padding.

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

Completeness3/5

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

For a simple 3-parameter creation tool with annotations covering the write profile, the description is adequate but thin. With no output schema, it could usefully state what the call returns (e.g., a draft identifier) or whether the draft can later be published or updated, neither of which is addressed.

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

Parameters3/5

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

Schema description coverage is 100%, so title, body_markdown, and tags are already documented in the schema with constraints (minLength, required). The description adds no additional parameter meaning, so the baseline of 3 applies.

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

Purpose4/5

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

The description states a specific verb and resource ('Save an article as a draft') and names the target service, so an agent can distinguish it from publish_article or update_article. It stops short of explicitly naming the sibling it differs from, leaving the differentiation implied by the parenthetical.

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

Usage Guidelines3/5

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

The parenthetical '(for review before publishing)' implies the workflow context — you create a draft when you want review before going live — which is useful guidance. However, it never names publish_article or update_article as the follow-up/alternative, nor states any preconditions, so the routing is only implied.

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

create_seriesCreate seriesBInspect

Create a new series to group related articles

ParametersJSON Schema
NameRequiredDescriptionDefault
titleYesSeries title
descriptionNoShort description of the series

TDQS

B3.1/5.0
Behavior2/5

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

Annotations already declare this is a non-readonly, non-idempotent, non-destructive, open-world write, so the safety profile is covered. The description adds no behavioral context beyond that — no mention of whether titles must be unique, what happens on duplicate creation, required auth, or what the call returns.

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?

A single short sentence with no filler, front-loading the verb and resource. Nothing is wasted.

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

Completeness3/5

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

For a simple two-parameter creation tool with full schema coverage, the description is minimally adequate. But with no output schema and no annotations covering uniqueness or idempotency semantics, an agent still lacks information about what a successful create yields or how it interacts with add_to_series.

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

Parameters3/5

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

Schema description coverage is 100% and both parameters (title, description) are documented in the schema, so the description carries no extra semantic burden. It adds nothing about title uniqueness or length constraints beyond the schema's minLength, so the baseline 3 applies.

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

Purpose4/5

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

States a specific verb and resource ('Create a new series') and adds the intent ('to group related articles'), so an agent knows exactly what resource is produced. It does not, however, distinguish itself from the sibling add_to_series, which is the most likely confusion point.

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

Usage Guidelines2/5

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

There is no when-to-use guidance at all — nothing about prerequisites (e.g., authentication), and no routing to or away from add_to_series, which also manipulates series. The agent must infer the context entirely.

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

generate_cover_imageGenerate cover imageBInspect

Generate a cover image using AI and upload it to the Misar.Blog CDN

ParametersJSON Schema
NameRequiredDescriptionDefault
sizeNoImage dimensions (default: landscape 1792x1024)1792x1024
promptYesDescription of the image to generate

TDQS

B3.3/5.0
Behavior3/5

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

Annotations already declare this is a non-read-only, open-world, non-idempotent write, so the safety profile is covered. The description usefully adds that the image is AI-generated and pushed to a CDN, but omits cost/latency implications of the AI call and what happens if it is re-invoked for the same prompt.

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?

A single tight sentence that front-loads the core action and appends the side effect. There is no filler, and every clause carries information.

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

Completeness3/5

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

For a two-parameter generation tool with no output schema, the definition is adequate but thin: it implies a CDN URL results from the upload but never states the return value, generation latency, or failure modes. An agent can call it, but cannot reason about the result.

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

Parameters3/5

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 'prompt' and 'size', including the enum dimensions and default. The description adds no additional parameter semantics beyond what the schema provides, making the baseline 3 appropriate.

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

Purpose4/5

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

States a specific verb+resource (generate a cover image) and the follow-on action (upload to the Misar.Blog CDN), which is more than a restatement of the name. However, it never contrasts itself with the sibling 'upload_image', so an agent must infer which one to reach for when a file already exists.

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

Usage Guidelines2/5

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

No when-to-use or when-not-to-use guidance is given. The obvious alternative, 'upload_image', is a sibling but is never mentioned, leaving the agent to guess whether this tool ingests an existing asset or synthesizes a new one.

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

generate_title_seoGenerate SEO titlesB
Read-only
Inspect

Generate 5 SEO/AEO/GEO-optimized article titles from a topic or keyword prompt. Targets high-volume, low-competition long-tail keywords. Optimized for Google, AI answer engines (ChatGPT, Perplexity, Claude), Google AI Overviews, and AI search experiences. Each title includes a keyword strategy hint.

ParametersJSON Schema
NameRequiredDescriptionDefault
promptYesYour article topic or target keywords. Be specific — include your niche, audience, and any long-tail phrases you want to rank for. Example: 'best AI writing tools for beginner bloggers 2025'
contextNoOptional: existing article content (plain text or markdown). Providing it lets the AI align titles with your actual content.

TDQS

B3.4/5.0
Behavior4/5

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

Annotations already cover the safety profile (readOnlyHint=true, destructiveHint=false), so the bar is lower. The description adds genuinely useful output-shape context — five titles per call, each carrying a keyword strategy hint, tuned for long-tail keywords and AI answer engines. It does not mention that idempotentHint=false means repeated calls yield different titles, which would help an agent avoid redundant invocations.

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

Conciseness4/5

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

The core capability and output count are front-loaded in the first sentence, which is the right priority. The engine enumeration ('ChatGPT, Perplexity, Claude, Google AI Overviews, and AI search experiences') is somewhat redundant and could be compressed without losing meaning.

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

Completeness3/5

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

With no output schema, the description carries the burden of explaining returns, and it does so adequately (five titles plus a keyword strategy hint). The significant remaining gap is sibling disambiguation — with 'suggest_titles' and 'research_topic' in the same namespace, an agent lacks the routing information it needs.

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

Parameters3/5

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

Schema description coverage is 100%, so both parameters ('prompt' and 'context') are already well documented, including examples and length limits. The description adds nothing beyond what the schema provides, so baseline 3 applies.

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

Purpose4/5

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

The description states a specific verb and resource ('Generate 5 SEO/AEO/GEO-optimized article titles') and quantifies the output, so the agent knows exactly what comes back. It does not, however, distinguish itself from the close sibling 'suggest_titles', which appears to do something very similar — an agent has no textual basis to choose between them.

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

Usage Guidelines2/5

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

There is no when-to-use guidance, no statement of when NOT to use it, and no mention of the obvious alternatives in the sibling list ('suggest_titles', 'research_topic'). The optimization-target language describes the output, not the invocation conditions.

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

get_analytics_summaryAnalytics summaryB
Read-onlyIdempotent
Inspect

Get analytics summary (views, revenue, subscribers) for a time period

ParametersJSON Schema
NameRequiredDescriptionDefault
daysNoNumber of days to look back (default: 30, max: 365)

TDQS

B3.2/5.0
Behavior3/5

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

Annotations already declare readOnlyHint, idempotentHint, and openWorldHint, so the safety and idempotency profile is fully covered. The description adds the useful detail of which metrics are returned (views, revenue, subscribers), which matters because there is no output schema, but it says nothing about granularity, aggregation, or auth needs.

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

Conciseness4/5

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

A single front-loaded sentence with zero filler. It is efficient and readable, though its terseness is also the source of the missing usage and behavioral detail.

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

Completeness4/5

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

For a one-parameter read-only tool whose annotations carry the safety profile and which has no output schema, the description is largely sufficient; naming the returned metrics fills the main gap. Minor omissions (aggregation granularity, period semantics) remain but do not block correct invocation.

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

Parameters3/5

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

There is a single parameter ('days') with 100% schema description coverage including default, min, and max. The description's 'for a time period' only loosely restates what the schema already documents, so the baseline 3 is appropriate.

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

Purpose4/5

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

States a specific verb+resource ('Get analytics summary') and enumerates the returned metrics (views, revenue, subscribers) plus the scope (a time period). It is immediately distinguishable from the unrelated siblings, though it doesn't explicitly contrast with any alternative since none exists.

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

Usage Guidelines2/5

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

The phrase 'for a time period' hints at the input scope but gives no when-to-use, when-not-to-use, or alternative-tool guidance. For a simple read tool this is tolerable, but the description provides no explicit usage direction.

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

get_articleGet articleA
Read-onlyIdempotent
Inspect

Get a single article by slug, including full markdown content

ParametersJSON Schema
NameRequiredDescriptionDefault
slugYesThe article slug

TDQS

A3.8/5.0
Behavior3/5

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

Annotations already declare readOnlyHint, idempotentHint, openWorldHint, and destructiveHint=false, so the safety profile is covered. The description adds that full markdown content is returned, which is useful return-context, but it does not disclose access limits, error behavior for missing slugs, or whether draft articles are included.

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?

A single front-loaded sentence with no filler. It states the action, identifier, and returned content immediately.

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

Completeness4/5

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

For a simple one-parameter read tool with annotations covering safety, the description is largely complete and even notes the markdown content return. It is slightly under-specified because there is no output schema and it does not describe other returned fields or error behavior.

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

Parameters3/5

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

Schema description coverage is 100%, and the schema already documents the single required parameter 'slug'. The description repeats 'by slug' but adds no format or validation detail beyond the schema, so baseline 3 is appropriate.

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 uses a specific verb ('Get') and resource ('single article by slug'), and it adds the returned content scope ('including full markdown content'). This distinguishes it from sibling list/search tools such as list_my_articles and search_articles.

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

Usage Guidelines3/5

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

The description implies usage—retrieve one article when you have its slug—and hints that full content is returned. However, it does not explicitly state when to use this tool versus alternatives like search_articles or list_my_articles.

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

get_follow_statusFollow statusA
Read-onlyIdempotent
Inspect

Get follow status and follower count for a profile UUID. Requires an API key; counts against your plan's request quota.

ParametersJSON Schema
NameRequiredDescriptionDefault
user_idYesUUID of the profile to check follow status for

TDQS

A3.8/5.0
Behavior4/5

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

Annotations already declare readOnly, idempotent, openWorld and non-destructive, so safety is covered. The description adds genuinely useful context beyond the annotations: it requires an API key and consumes the plan's request quota, which affects call budgeting. It stops short of describing error or pagination behavior, but for a single-value read that is a minor gap.

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?

Two short sentences with no filler; the core action and the returned values are front-loaded, with the operational caveat (API key, quota) placed after. Every clause earns its place.

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

Completeness4/5

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

For a one-parameter read tool whose annotations carry the full safety profile, the description covers the action, the cardinally relevant return fields, and quota cost. With no output schema, a little more detail on the returned shape (e.g. boolean follow flag vs counts) would close the remaining gap.

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

Parameters3/5

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

Schema description coverage is 100% and the single user_id parameter is fully documented in the schema as the profile UUID. The description only restates that the UUID identifies the profile, adding no format or constraint detail beyond the schema. Baseline 3 applies.

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

Purpose4/5

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

States a specific verb and resource ('Get follow status') and adds the returned data ('follower count'), which goes beyond the tool name. It does not explicitly distinguish itself from any sibling, but no sibling overlaps this function, so the lack of differentiation is low-risk.

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

Usage Guidelines3/5

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

Usage is implied by the name and the required profile UUID, so an agent can infer when to call it. However, there is no explicit when-to-use guidance or stated exclusions relative to siblings such as get_profile, which also returns profile-level information.

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

get_profileGet profileB
Read-onlyIdempotent
Inspect

Get your Misar.Blog creator profile

ParametersJSON Schema
NameRequiredDescriptionDefault

No parameters

TDQS

B3.3/5.0
Behavior3/5

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

Annotations already declare readOnlyHint, idempotentHint, openWorldHint and destructiveHint=false, so the safety profile is fully covered. The description adds only the ownership detail ('your ... creator profile'); it says nothing about authentication requirements or what the profile object contains. Adequate but thin against an already-informative annotation set.

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

Conciseness4/5

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

A single short clause with no waste, front-loading the verb and resource. It is efficient, though it borders on under-specified rather than merely concise.

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

Completeness3/5

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

There is no output schema, so nothing documents what the returned profile contains (fields, shape, or whether it can be empty). For a no-arg read of the caller's own profile this is a modest gap, but the definition stops short of complete.

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?

The tool takes zero parameters, so parameter semantics are trivially satisfied — the baseline for a no-arg tool. No compensating explanation is required.

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

Purpose4/5

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

States a specific verb ('Get') and resource ('your Misar.Blog creator profile'), and the possessive 'your' makes clear it targets the authenticated creator rather than an arbitrary user. No sibling tool covers profiles, so no differentiation is needed — the purpose is unambiguous.

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

Usage Guidelines2/5

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

The description gives no when-to-use guidance, no prerequisites, and no alternatives (e.g., whether profile data is also available via get_analytics_summary or status). Usage is only implied by the tool name and simplicity.

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

get_reactionsGet reactionsA
Read-onlyIdempotent
Inspect

Get reaction counts and your reactions for an article. Requires API key.

ParametersJSON Schema
NameRequiredDescriptionDefault
article_idYesUUID of the article

TDQS

A3.6/5.0
Behavior3/5

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

Annotations already declare readOnlyHint, idempotentHint, destructiveHint=false and openWorldHint, so the safety profile is covered. The description adds the auth requirement ('Requires API key'), which is genuine extra context, but says nothing about pagination, rate limits, or response shape.

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?

Two short sentences, front-loaded with the action and the returned data, then the prerequisite. No filler or redundancy.

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

Completeness4/5

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

For a one-parameter, fully annotated read tool with no output schema, the description helpfully sketches the return content ('reaction counts and your reactions') and the auth requirement. Only the lack of any pagination/format hint keeps it from being fully complete.

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

Parameters3/5

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

Schema description coverage is 100% (article_id: 'UUID of the article'), so the schema fully documents the single parameter. The description adds no syntax or format detail beyond it, making the baseline 3 correct.

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

Purpose4/5

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

The description states a specific verb (Get) and resource (reactions), and clarifies the return content: reaction counts plus the caller's own reactions. It implicitly separates itself from the write siblings add_reaction/remove_reaction, though it never names them.

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

Usage Guidelines3/5

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

Usage context is implied rather than stated: it is clearly the read counterpart to add_reaction/remove_reaction, and the 'Requires API key' clause gives one prerequisite. There is no explicit when-to-use/when-not statement or named alternative.

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

get_seriesList seriesA
Read-onlyIdempotent
Inspect

List all your series on Misar.Blog

ParametersJSON Schema
NameRequiredDescriptionDefault

No parameters

TDQS

A3.6/5.0
Behavior3/5

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

Annotations already declare readOnlyHint, idempotentHint, openWorldHint and destructiveHint=false, so the safety profile is covered. The description adds the useful scoping detail that results are limited to the caller's own series and ties the tool to the Misar.Blog service, but says nothing about ordering, pagination, or limits.

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

Conciseness4/5

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

A single short sentence with no filler, front-loaded on the verb. It is arguably too terse for a tool on a platform with many series-related siblings, but nothing is wasted.

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

Completeness4/5

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

For a no-parameter, read-only list with no output schema and rich annotations, the description covers what the agent needs to call it correctly. Only minor gaps remain (result ordering/size), which are not critical given the simplicity.

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?

The tool takes zero parameters, so per the rubric the baseline is 4; there is no argument semantics for the description to clarify and the empty schema is fully consistent with the description.

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

Purpose4/5

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

States a specific verb and resource ('List all your series'), and the word 'all' plus the possessive 'your' makes clear it is a complete enumeration scoped to the authenticated user. It is distinguishable by name from create_series and add_to_series, but the description never explicitly contrasts itself with those mutation siblings.

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

Usage Guidelines3/5

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

Usage is implied by the obvious read-only listing intent, but there is no explicit statement of when to reach for this versus create_series, add_to_series, or search-style siblings, and no prerequisites or exclusions are given.

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

list_commentsList commentsB
Read-onlyIdempotent
Inspect

Get the comment thread for an article. Requires an API key; counts against your plan's request quota.

ParametersJSON Schema
NameRequiredDescriptionDefault
limitNo
offsetNo
article_idYesUUID of the article to fetch comments for

TDQS

B3.3/5.0
Behavior4/5

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

Annotations already declare readOnly, idempotent and non-destructive, so the safety profile is covered. The description usefully adds auth and cost context ('Requires an API key; counts against your plan's request quota'), which is real behavioral information beyond the structured fields.

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?

Two tight sentences with the core action front-loaded and the auth/quota caveat appended. No filler.

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

Completeness3/5

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

With no output schema, the description should carry return-shape and pagination expectations, but it says nothing about ordering, paging, or result structure. It is adequate for a simple read but leaves the limit/offset contract unexplained.

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

Parameters2/5

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

Schema description coverage is only 33%: article_id is documented in the schema, but limit and offset are undocumented in both schema and description. The description does not compensate by explaining paging or ordering, so it adds no parameter meaning over the structured fields.

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

Purpose4/5

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

States a specific verb and resource ('Get the comment thread for an article'), which is clear and distinguishable from reaction siblings like get_reactions. It does not explicitly name an alternative or contrast with a sibling, but the resource scope is unambiguous.

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

Usage Guidelines2/5

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

There is no when-to-use guidance, no mention of how this differs from reaction tools or article tools, and no note on pagination behavior despite limit/offset params. The agent is left to infer the context entirely.

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

list_my_articlesList my articlesC
Read-onlyIdempotent
Inspect

List your articles on Misar.Blog

ParametersJSON Schema
NameRequiredDescriptionDefault
limitNoNumber of articles to return
statusNoFilter by status (omit for all published)

TDQS

C2.9/5.0
Behavior2/5

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

Annotations already declare readOnlyHint=true, idempotentHint=true, destructiveHint=false and openWorldHint=true, so the safety profile is covered. The description adds nothing beyond that: no note about default result count, ordering, pagination, or what happens when status is omitted.

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

Conciseness3/5

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

A single short sentence with no wasted words, but it is under-specified rather than optimally concise — there is no structure or detail to front-load because almost nothing is said.

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

Completeness3/5

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

For a simple two-optional-parameter read tool with full schema coverage and a complete annotation set, this is minimally adequate. However, it omits any mention of filtering, ordering, or result-shape context that would help an agent call it confidently.

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

Parameters3/5

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

Schema description coverage is 100%, so both 'limit' (with default/max) and 'status' (with enum) are fully documented in the schema. The description adds no parameter meaning beyond what is already structured, which is the baseline expectation.

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

Purpose4/5

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

The description states a clear verb ('List') and resource ('your articles') scoped to the user's own content on Misar.Blog. It does not, however, distinguish itself from the sibling search_articles, which an agent could easily confuse it with.

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

Usage Guidelines2/5

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 instead of search_articles or get_article, nor any mention of pagination limits or default behavior. The agent must infer usage purely from the name and schema.

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

list_newsletter_issuesList newsletter issuesB
Read-onlyIdempotent
Inspect

Get your sent and scheduled newsletter issues. Requires API key authentication.

ParametersJSON Schema
NameRequiredDescriptionDefault
limitNo

TDQS

B3.2/5.0
Behavior4/5

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

Annotations already declare readOnlyHint, idempotentHint, openWorldHint and destructiveHint=false, so the safety profile is covered. The description adds genuinely new context: the 'your' scope (only the caller's own issues) and the API key authentication requirement. It omits pagination behavior despite the limit parameter.

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

Conciseness4/5

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

Two short, front-loaded sentences with no filler; the purpose leads and the auth requirement follows. Slightly terse rather than padded, which is appropriate for a list tool.

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

Completeness3/5

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

For a read-only, single-optional-param list tool with no output schema, the description covers purpose, scope and auth. It leaves a gap around pagination/limit semantics and result shape, which matters given the tool returns a collection.

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

Parameters2/5

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

Schema description coverage is 0%, and the single optional 'limit' parameter (default 10, max 50) is never mentioned in the description. The agent gets no information about page size or the existence of pagination beyond what the raw schema type hints at.

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

Purpose4/5

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

States a specific verb (Get) and resource (newsletter issues) and narrows scope with 'sent and scheduled', which separates it from siblings like list_newsletter_subscribers. It doesn't explicitly name an alternative, but the resource is unambiguous.

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

Usage Guidelines2/5

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

The description says what you get but never says when to use this versus siblings such as list_newsletter_subscribers, nor whether there are prerequisites beyond the API key. No exclusions or alternative routing are offered.

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

list_newsletter_subscribersList subscribersB
Read-onlyIdempotent
Inspect

Get your newsletter subscriber list. Requires API key authentication.

ParametersJSON Schema
NameRequiredDescriptionDefault
limitNo
offsetNo

TDQS

B3/5.0
Behavior3/5

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

Annotations already declare readOnlyHint, idempotentHint, and destructiveHint=false, so safety is covered. The description adds one useful fact beyond them: API key authentication is required. It omits pagination behavior or result ordering, which would be valuable for a list tool.

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

Conciseness4/5

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

Two compact sentences, front-loaded with the purpose and followed by the auth requirement. No filler, though the second sentence is arguably the only value beyond the name.

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

Completeness3/5

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

For a simple read-only list tool, minimal description is defensible, and the auth note is helpful. However, with no output schema and zero param documentation, pagination semantics (limit default 20, max 100, offset) are entirely absent, leaving an agent to guess at return size behavior.

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

Parameters2/5

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

Schema coverage is 0% for two parameters (limit, offset), and the description says nothing about pagination, defaults, or ranges. With undocumented params, the description is expected to compensate and does not.

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

Purpose4/5

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

States a specific verb and resource ('Get your newsletter subscriber list'), which clearly separates it from siblings like list_newsletter_issues. It stops short of explicitly naming or contrasting with those siblings, so it is clear but not maximally distinguishing.

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

Usage Guidelines2/5

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

The description gives no when-to-use context, no prerequisites beyond auth, and no alternatives. An agent gets no guidance on choosing this over list_newsletter_issues or other listing tools.

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

publish_articlePublish articleBInspect

Publish a new article (or schedule it) on Misar.Blog

ParametersJSON Schema
NameRequiredDescriptionDefault
tagsNoUp to 10 tags
titleYesArticle title
visibilityNoWho can read this articlepublic
schedule_atNoISO 8601 timestamp to schedule. Omit to publish immediately.
body_markdownYesFull article body in Markdown
cover_image_urlNoURL of the cover image

TDQS

B3.4/5.0
Behavior3/5

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

Annotations already declare a non-read-only, non-idempotent, non-destructive, open-world mutation, so the safety profile is covered. The description only adds that the operation can be scheduled rather than immediate; it says nothing about auth requirements, side effects (notifications, newsletter delivery), or whether publishing is reversible.

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

Conciseness4/5

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

A single front-loaded sentence with zero waste; the verb+resource leads and the scheduling caveat follows. It is efficiently sized, though very sparse for a publish operation.

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

Completeness3/5

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

There is no output schema, so the description should ideally say what a successful publish returns (URL, article ID) and any preconditions such as whether a draft must exist first. Annotations and the fully described schema carry the rest, leaving this minimally adequate.

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

Parameters3/5

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 title, body, tags, visibility, schedule_at, and cover image. The description only adds meaning for schedule_at ('or schedule it'), which the schema already explains in more detail, so baseline 3 is appropriate.

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

Purpose4/5

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

States a specific verb+resource ('Publish a new article') and adds the scheduling variant, so the agent knows this creates published content rather than a draft. It does not explicitly differentiate from siblings like create_draft or update_article, which keeps it short of a 5.

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

Usage Guidelines3/5

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

The parenthetical '(or schedule it)' implies usage for the scheduled-publish case, but there is no explicit guidance on when to choose this over create_draft, update_article, or add_to_series. Usage is only inferable from the description.

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

remove_reactionRemove reactionB
DestructiveIdempotent
Inspect

Remove a specific reaction from an article. Requires API key.

ParametersJSON Schema
NameRequiredDescriptionDefault
typeYesReaction type to remove: like, clap, or bookmark
article_idYesUUID of the article

TDQS

B3.3/5.0
Behavior3/5

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

Annotations already declare destructiveHint=true, idempotentHint=true, and readOnlyHint=false, so the safety profile is well covered structurally. The description adds only the API-key requirement, a genuinely useful piece of context, but says nothing about behavior if the reaction doesn't exist or what the response looks like.

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?

Two short sentences with the action front-loaded and zero redundancy. Every clause carries information, and nothing is buried.

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

Completeness3/5

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

For a simple two-parameter destructive mutation, the description plus the rich annotations covers the essentials: the action, the auth requirement, and the safety profile. It remains silent on failure modes (reaction not present) and return behavior, which is acceptable given no output schema but leaves a gap.

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

Parameters3/5

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

Schema coverage is 100% with a documented enum for 'type' and a UUID format hint for 'article_id', so the schema carries the parameter burden. The phrase 'a specific reaction' adds no syntax or meaning beyond what the schema already provides; baseline 3 applies.

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

Purpose4/5

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

States a specific verb ('Remove') and resource (reaction on an article), which distinguishes it cleanly from add_reaction and get_reactions in the sibling list. It does not explicitly name the contrasting sibling, so it stops short of a 5.

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

Usage Guidelines2/5

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

'Requires API key' is a prerequisite, not usage guidance; it says nothing about when to remove a reaction versus adding one, or when this tool is appropriate. No alternatives or exclusion conditions are given.

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

research_topicResearch topicA
Read-only
Inspect

Research a topic and get AI-generated insights, sources, and a content outline. Useful before writing an article.

ParametersJSON Schema
NameRequiredDescriptionDefault
queryYesResearch topic or question. Be specific for best results.

TDQS

A3.5/5.0
Behavior3/5

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

Annotations already declare readOnlyHint=true, openWorldHint=true, idempotentHint=false, and destructiveHint=false, so safety and side-effect profile are covered. The description adds that the output is AI-generated and includes sources and an outline, which is modest but genuine behavioral context beyond the annotations.

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

Conciseness4/5

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

Two short sentences with the core purpose front-loaded and no filler. Nothing repeated from the schema or annotations, though it stops short of being maximally informative per word.

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

Completeness4/5

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

There is no output schema, so the description must describe returns, and it does so by naming insights, sources, and a content outline. Combined with annotations covering safety, this is nearly complete for a single-parameter tool, with only minor gaps in result format depth.

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

Parameters3/5

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

Schema description coverage is 100%, with the single 'query' parameter fully documented in the schema (including the 'be specific' guidance and length bounds). The description adds no parameter syntax or format meaning, so the baseline 3 for full schema coverage applies.

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

Purpose4/5

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

The description pairs a specific verb (Research) with a resource (a topic) and enumerates the outputs: AI-generated insights, sources, and a content outline. This is clear and concrete, though it does not explicitly contrast itself against content-generation siblings like generate_title_seo or suggest_titles.

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

Usage Guidelines3/5

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

"Useful before writing an article" gives an implied workflow position, so the agent can infer the stage at which to call it. However, no alternatives are named and no when-not conditions are stated, leaving usage guidance at an implied level.

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

search_articlesSearch articlesA
Read-onlyIdempotent
Inspect

Search PUBLISHED articles across Misar.Blog by keyword, tag, or author — including other creators' work. Use list_my_articles for your own drafts and unpublished posts.

ParametersJSON Schema
NameRequiredDescriptionDefault
qNoKeyword query (min 2 characters)
tagNoFilter by tag
limitNoResults to return (1-20)
authorNoFilter by author username

TDQS

A4.4/5.0
Behavior4/5

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

Annotations already declare readOnly, idempotent, non-destructive, and open-world behavior, so safety is covered. The description adds genuinely useful scope context: results are restricted to PUBLISHED posts and include other creators' work, which the annotations do not convey.

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?

Two sentences with zero filler; the capability and the scoping constraint come first, followed by the routing hint. Every clause earns its place.

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

Completeness4/5

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

For a four-parameter, fully self-documented read-only search with no output schema, the description covers what an agent needs to select and call it. It could briefly note result ordering or that filters combine, but nothing essential is missing.

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

Parameters3/5

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

Schema description coverage is 100%, so the four parameters (q, tag, limit, author) are already fully documented in the schema. The description restates the filter dimensions but adds no syntax, format, or combination guidance beyond it, making the baseline 3 appropriate.

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?

States a specific verb (Search) and resource (PUBLISHED articles) plus the searchable dimensions (keyword, tag, author) and the cross-creator scope. It is immediately distinguishable from siblings like list_my_articles or get_article.

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

Usage Guidelines5/5

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

Explicitly names the alternative tool (list_my_articles) and the condition that selects it (your own drafts and unpublished posts). The routing decision is fully specified without inference.

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

suggest_titlesSuggest titlesA
Read-only
Inspect

Generate 5 compelling, SEO-friendly article title options from your existing article content. Use generate_title_seo instead if you want to target specific keywords or have not written content yet.

ParametersJSON Schema
NameRequiredDescriptionDefault
contextYesYour article content in plain text or markdown

TDQS

A4.4/5.0
Behavior4/5

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

Annotations already cover the safety profile (readOnly, non-destructive, open-world), and the description adds real behavioral context: the tool requires pre-existing content and always returns 5 options. It does not discuss variability/non-determinism of generation (annotations flag idempotentHint=false) or output format, so it falls short of full disclosure.

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?

Two sentences, zero filler, with the core capability front-loaded and the routing rule second. Every clause carries information.

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

Completeness4/5

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

For a single-parameter read-only tool with full annotation coverage and no output schema, the description tells the agent what it produces (5 titles), what input it needs, and when to prefer a sibling. Only the shape of the returned value is left unspecified.

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

Parameters3/5

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

Schema description coverage is 100% and the single 'context' parameter is fully documented there, so baseline 3 applies. The description's phrase 'from your existing article content' implicitly maps to that parameter but adds no format or length guidance beyond the schema's minLength/maxLength constraints.

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?

States a specific verb (generate), resource (article title options), quantity (5), and qualifier (SEO-friendly from existing content). It also names the sibling it is not, so an agent can distinguish it from generate_title_seo without opening either schema.

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

Usage Guidelines5/5

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

The second sentence gives an explicit when-to-use-the-alternative condition: use generate_title_seo when targeting specific keywords or when no content exists yet. This is a direct prerequisite and routing rule, not just implied context.

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

update_articleUpdate articleA
DestructiveIdempotent
Inspect

Update the title, body, or tags of an existing article or draft. Only the fields you pass are changed; omitted fields keep their current values.

ParametersJSON Schema
NameRequiredDescriptionDefault
idYesArticle or draft ID
tagsNoReplace the tag list
titleNoNew title
body_markdownNoNew body in Markdown

TDQS

A3.6/5.0
Behavior4/5

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

Annotations already declare the mutation profile (readOnlyHint=false, destructiveHint=true, idempotentHint=true). The description adds genuinely useful PATCH semantics – "Only the fields you pass are changed; omitted fields keep their current values" – which the annotations do not convey. It still omits that tags are replaced wholesale rather than merged, but this is a solid addition beyond structured data.

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?

Two tight sentences, zero filler, with the partial-update contract front-loaded immediately after the action statement. Every clause earns its place.

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

Completeness4/5

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

For a 4-parameter mutation tool with 100% schema coverage, no output schema, and annotations covering the safety profile, the description covers the essentials. It is slightly short on prerequisites and does not clarify that tag updates are destructive replacements, but nothing critical for correct invocation is missing.

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

Parameters3/5

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 id, title, body_markdown, and tags with their constraints. The description restates the field names but adds no format, length, or replacement-syntax detail beyond what the schema provides. Baseline 3 applies.

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

Purpose4/5

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

The description gives a specific verb and resource ("Update the title, body, or tags of an existing article or draft") and even enumerates the mutable fields. The word "existing" implicitly separates it from create_draft, but it never names a sibling tool, so it stops short of full differentiation.

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

Usage Guidelines2/5

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

There is no guidance on when to choose this tool over create_draft or publish_article, nor any prerequisites (e.g. authentication or draft-vs-published constraints). Usage is only implied by the phrase "existing article or draft."

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

upgradePlan usage and upgradeA
Idempotent
Inspect

Show your current Misar.Blog plan, how much of each quota you have left, and what upgrading unlocks, with the link to upgrade. Call it any time — not only after hitting a limit. By default it only reads. With start_trial=true it starts the free, no-card trial on the account (a plan change; no payment is taken). It never upgrades a paid plan or takes payment itself: the user does that by following the link. On a local install, open=true also opens that link in the user's browser.

ParametersJSON Schema
NameRequiredDescriptionDefault
openNoLocal installs only: also open the upgrade link in the user's browser. Ignored by the hosted server, which returns the link instead.
planNoPlan slug to open (e.g. 'pro', 'business'). Defaults to the recommended plan.
start_trialNoStart the free no-card trial immediately, if you're eligible.

TDQS

A4.8/5.0
Behavior5/5

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

Annotations declare readOnlyHint=false with a mutating path, and the description explains exactly that: read-only by default, a plan change only with start_trial, and no payment ever taken. It also discloses the local-install browser side effect, adding context beyond the annotations.

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

Conciseness4/5

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

Front-loaded with what the tool shows, then the behavioral caveats, with no filler. Slightly repetitive in restating that the user follows the link to pay, but it is tight overall.

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?

For a 3-optional-param tool with no output schema, the description covers default behavior, the mutating branch, payment safety, and the local-install variant, so an agent has everything needed to call it correctly.

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 the schema doesn't carry: start_trial is a plan change that takes no payment, and open is a local-only branch that the hosted server ignores in favor of returning the link.

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 uses a concrete verb set (show plan, remaining quota, unlocked features, upgrade link) rather than restating the name. It is clearly distinguishable from every sibling, none of which touch billing or plan state.

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

Usage Guidelines5/5

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

It explicitly tells the agent to call it any time, not just after a limit, and spells out the exact conditions that change behavior: start_trial=true starts a trial, while open=true matters only on local installs. It also states what the tool will not do (upgrade a paid plan, take payment), which is precise routing guidance.

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.

  1. 1 tool update
    • Changedupgrade1 field changed
      • changedInput schema / properties / open / description
        Previous value: -"Open the upgrade/checkout page in the default browser."New value: +"Local installs only: also open the upgrade link in the user's browser. Ignored by the hosted server, which returns the link instead."
  2. 21 tool updates
    • Changedadd_reaction2 fields changed
      • changedInput schema / properties / article_id / description
        Previous value: -"UUID of the article to react to, from the `id` field of article tools."New value: +"UUID of the article"
      • changedInput schema / properties / type / description
        Previous value: -"Which reaction to add: 'like' approval, 'clap' stronger approval, 'bookmark' save for later."New value: +"Reaction type: like, clap, or bookmark"
    • Changedadd_to_series3 fields changed
      • changedInput schema / properties / article_slug / description
        Previous value: -"Slug of the article to add, from list_my_articles. Not its title or id."New value: +"The article slug to add"
      • changedInput schema / properties / position / description
        Previous value: -"1-based position within the series. Omit to append at the end. Inserting shifts later articles down."New value: +"Position in the series (optional, appends if omitted)"
      • changedInput schema / properties / series_slug / description
        Previous value: -"Slug of the target series, from get_series. Not its title or id."New value: +"The series slug"
    • Changedcreate_draft3 fields changed
      • changedInput schema / properties / body_markdown / description
        Previous value: -"Article body so far, as Markdown."New value: +"Full article body in Markdown"
      • changedInput schema / properties / tags / description
        Previous value: -"Topic tags to carry through to publication."New value: +"Tags for the draft"
      • changedInput schema / properties / title / description
        Previous value: -"Working headline. Can be changed before publishing."New value: +"Draft title"
    • Changedcreate_series2 fields changed
      • changedInput schema / properties / description / description
        Previous value: -"Short summary shown on the series page. Optional."New value: +"Short description of the series"
      • changedInput schema / properties / title / description
        Previous value: -"Display name of the series. The slug is derived from this."New value: +"Series title"
    • Changedgenerate_cover_image2 fields changed
      • changedInput schema / properties / prompt / description
        Previous value: -"What the image should show, in plain language, up to 1000 characters. Describe subject and style; avoid asking for text in the image."New value: +"Description of the image to generate"
      • changedInput schema / properties / size / description
        Previous value: -"Output dimensions: '1792x1024' landscape (the default, best for article covers), '1024x1024' square, '1024x1792' portrait."New value: +"Image dimensions (default: landscape 1792x1024)"
    • Changedgenerate_title_seo2 fields changed
      • changedInput schema / properties / context / description
        Previous value: -"Optional draft text (plain or Markdown, up to 8000 chars) so the titles match what the article actually says. Titles still follow `prompt` for keywords."New value: +"Optional: existing article content (plain text or markdown). Providing it lets the AI align titles with your actual content."
      • changedInput schema / properties / prompt / description
        Previous value: -"Topic or target keywords, 3-500 characters. Include niche, audience and any long-tail phrase you want to rank for, e.g. 'best AI writing tools for beginner bloggers 2025'."New value: +"Your article topic or target keywords. Be specific — include your niche, audience, and any long-tail phrases you want to rank for. Example: 'best AI writing tools for beginner bloggers 2025'"
    • Changedget_analytics_summary1 field changed
      • changedInput schema / properties / days / description
        Previous value: -"Size of the trailing window in days, ending today. 1-365, defaults to 30. Use 7 for a week, 365 for a year."New value: +"Number of days to look back (default: 30, max: 365)"
    • Changedget_article1 field changed
      • changedInput schema / properties / slug / description
        Previous value: -"URL slug of the article, e.g. 'how-we-cut-build-times'. Not the numeric id, and not the full URL."New value: +"The article slug"
    • Changedget_follow_status1 field changed
      • changedInput schema / properties / user_id / description
        Previous value: -"UUID of the profile to check, as returned in author fields by article tools. Not the username."New value: +"UUID of the profile to check follow status for"
    • Changedget_reactions1 field changed
      • changedInput schema / properties / article_id / description
        Previous value: -"UUID of the article, from the `id` field returned by article tools."New value: +"UUID of the article"
    • Changedlist_comments3 fields changed
      • changedInput schema / properties / article_id / description
        Previous value: -"UUID of the article, as returned in the `id` field by article tools. Not the slug."New value: +"UUID of the article to fetch comments for"
      • removedInput schema / properties / limit / description
        Removed value: -"Comments per page, 1-100. Defaults to 20."
      • removedInput schema / properties / offset / description
        Removed value: -"Comments to skip before this page. Defaults to 0."
    • Changedlist_my_articles2 fields changed
      • changedInput schema / properties / limit / description
        Previous value: -"Maximum articles to return, 1-100. Defaults to 20."New value: +"Number of articles to return"
      • changedInput schema / properties / status / description
        Previous value: -"Return only articles in this state. Omit to return every state the account owns."New value: +"Filter by status (omit for all published)"
    • Changedlist_newsletter_issues1 field changed
      • removedInput schema / properties / limit / description
        Removed value: -"Issues to return, 1-50, newest first. Defaults to 10."
    • Changedlist_newsletter_subscribers2 fields changed
      • removedInput schema / properties / limit / description
        Removed value: -"Subscribers per page, 1-100. Defaults to 20."
      • removedInput schema / properties / offset / description
        Removed value: -"Subscribers to skip before this page. Defaults to 0."
    • Changedpublish_article6 fields changed
      • changedInput schema / properties / body_markdown / description
        Previous value: -"Complete article body as Markdown. Images may be referenced by URL."New value: +"Full article body in Markdown"
      • changedInput schema / properties / cover_image_url / description
        Previous value: -"Absolute URL of the hero image. generate_cover_image returns a URL suitable here."New value: +"URL of the cover image"
      • changedInput schema / properties / schedule_at / description
        Previous value: -"ISO 8601 timestamp to publish at, e.g. '2026-09-01T09:00:00Z'. Omit to publish immediately. A past timestamp publishes immediately."New value: +"ISO 8601 timestamp to schedule. Omit to publish immediately."
      • changedInput schema / properties / tags / description
        Previous value: -"Up to 10 topic tags used for discovery and filtering."New value: +"Up to 10 tags"
      • changedInput schema / properties / title / description
        Previous value: -"Headline, 1-250 characters."New value: +"Article title"
      • changedInput schema / properties / visibility / description
        Previous value: -"Audience: 'public' anyone, 'subscribers' newsletter subscribers, 'paid' paying members, 'private' only you. Defaults to 'public'."New value: +"Who can read this article"
    • Changedremove_reaction2 fields changed
      • changedInput schema / properties / article_id / description
        Previous value: -"UUID of the article to un-react to, from the `id` field of article tools."New value: +"UUID of the article"
      • changedInput schema / properties / type / description
        Previous value: -"Which reaction to withdraw: 'like', 'clap', or 'bookmark'."New value: +"Reaction type to remove: like, clap, or bookmark"
    • Changedresearch_topic1 field changed
      • changedInput schema / properties / query / description
        Previous value: -"The topic or question to research, 5-500 characters. Specific beats broad: 'how small SaaS teams price annual plans' returns more than 'pricing'."New value: +"Research topic or question. Be specific for best results."
    • Changedsearch_articles4 fields changed
      • changedInput schema / properties / author / description
        Previous value: -"Restrict to one author, by username."New value: +"Filter by author username"
      • changedInput schema / properties / limit / description
        Previous value: -"Maximum results to return, 1-20. Defaults to 10."New value: +"Results to return (1-20)"
      • changedInput schema / properties / q / description
        Previous value: -"Free-text query matched against title and body. Minimum 2 characters."New value: +"Keyword query (min 2 characters)"
      • changedInput schema / properties / tag / description
        Previous value: -"Restrict to articles carrying this exact tag."New value: +"Filter by tag"
    • Changedsuggest_titles1 field changed
      • changedInput schema / properties / context / description
        Previous value: -"The article text to draw titles from, plain or Markdown, 20-8000 characters. More of the real draft yields better-fitting titles than a summary."New value: +"Your article content in plain text or markdown"
    • Changedupdate_article4 fields changed
      • changedInput schema / properties / body_markdown / description
        Previous value: -"Replacement body as Markdown. Replaces the whole body, not a patch."New value: +"New body in Markdown"
      • changedInput schema / properties / id / description
        Previous value: -"Article or draft id from a listing tool. This is the id, not the slug."New value: +"Article or draft ID"
      • changedInput schema / properties / tags / description
        Previous value: -"Replacement tag list, up to 10. Overwrites the existing tags entirely."New value: +"Replace the tag list"
      • changedInput schema / properties / title / description
        Previous value: -"Replacement headline."New value: +"New title"
    • Changedupgrade3 fields changed
      • changedInput schema / properties / open / description
        Previous value: -"Open the checkout page in the user's default browser. Side effect on their desktop — only when they asked to upgrade."New value: +"Open the upgrade/checkout page in the default browser."
      • changedInput schema / properties / plan / description
        Previous value: -"Plan slug to open, e.g. 'pro' or 'business'. Defaults to the recommended plan. Only meaningful with open=true."New value: +"Plan slug to open (e.g. 'pro', 'business'). Defaults to the recommended plan."
      • changedInput schema / properties / start_trial / description
        Previous value: -"Enrol in the free no-card trial now, if eligible. This changes the account's plan — do not set it speculatively."New value: +"Start the free no-card trial immediately, if you're eligible."
  3. 21 tool updates
    • Changedadd_reaction2 fields changed
      • changedInput schema / properties / article_id / description
        Previous value: -"UUID of the article"New value: +"UUID of the article to react to, from the `id` field of article tools."
      • changedInput schema / properties / type / description
        Previous value: -"Reaction type: like, clap, or bookmark"New value: +"Which reaction to add: 'like' approval, 'clap' stronger approval, 'bookmark' save for later."
    • Changedadd_to_series3 fields changed
      • changedInput schema / properties / article_slug / description
        Previous value: -"The article slug to add"New value: +"Slug of the article to add, from list_my_articles. Not its title or id."
      • changedInput schema / properties / position / description
        Previous value: -"Position in the series (optional, appends if omitted)"New value: +"1-based position within the series. Omit to append at the end. Inserting shifts later articles down."
      • changedInput schema / properties / series_slug / description
        Previous value: -"The series slug"New value: +"Slug of the target series, from get_series. Not its title or id."
    • Changedcreate_draft3 fields changed
      • changedInput schema / properties / body_markdown / description
        Previous value: -"Full article body in Markdown"New value: +"Article body so far, as Markdown."
      • changedInput schema / properties / tags / description
        Previous value: -"Tags for the draft"New value: +"Topic tags to carry through to publication."
      • changedInput schema / properties / title / description
        Previous value: -"Draft title"New value: +"Working headline. Can be changed before publishing."
    • Changedcreate_series2 fields changed
      • changedInput schema / properties / description / description
        Previous value: -"Short description of the series"New value: +"Short summary shown on the series page. Optional."
      • changedInput schema / properties / title / description
        Previous value: -"Series title"New value: +"Display name of the series. The slug is derived from this."
    • Changedgenerate_cover_image2 fields changed
      • changedInput schema / properties / prompt / description
        Previous value: -"Description of the image to generate"New value: +"What the image should show, in plain language, up to 1000 characters. Describe subject and style; avoid asking for text in the image."
      • changedInput schema / properties / size / description
        Previous value: -"Image dimensions (default: landscape 1792x1024)"New value: +"Output dimensions: '1792x1024' landscape (the default, best for article covers), '1024x1024' square, '1024x1792' portrait."
    • Changedgenerate_title_seo2 fields changed
      • changedInput schema / properties / context / description
        Previous value: -"Optional: existing article content (plain text or markdown). Providing it lets the AI align titles with your actual content."New value: +"Optional draft text (plain or Markdown, up to 8000 chars) so the titles match what the article actually says. Titles still follow `prompt` for keywords."
      • changedInput schema / properties / prompt / description
        Previous value: -"Your article topic or target keywords. Be specific — include your niche, audience, and any long-tail phrases you want to rank for. Example: 'best AI writing tools for beginner bloggers 2025'"New value: +"Topic or target keywords, 3-500 characters. Include niche, audience and any long-tail phrase you want to rank for, e.g. 'best AI writing tools for beginner bloggers 2025'."
    • Changedget_analytics_summary1 field changed
      • changedInput schema / properties / days / description
        Previous value: -"Number of days to look back (default: 30, max: 365)"New value: +"Size of the trailing window in days, ending today. 1-365, defaults to 30. Use 7 for a week, 365 for a year."
    • Changedget_article1 field changed
      • changedInput schema / properties / slug / description
        Previous value: -"The article slug"New value: +"URL slug of the article, e.g. 'how-we-cut-build-times'. Not the numeric id, and not the full URL."
    • Changedget_follow_status1 field changed
      • changedInput schema / properties / user_id / description
        Previous value: -"UUID of the profile to check follow status for"New value: +"UUID of the profile to check, as returned in author fields by article tools. Not the username."
    • Changedget_reactions1 field changed
      • changedInput schema / properties / article_id / description
        Previous value: -"UUID of the article"New value: +"UUID of the article, from the `id` field returned by article tools."
    • Changedlist_comments3 fields changed
      • changedInput schema / properties / article_id / description
        Previous value: -"UUID of the article to fetch comments for"New value: +"UUID of the article, as returned in the `id` field by article tools. Not the slug."
      • addedInput schema / properties / limit / description
        Added value: +"Comments per page, 1-100. Defaults to 20."
      • addedInput schema / properties / offset / description
        Added value: +"Comments to skip before this page. Defaults to 0."
    • Changedlist_my_articles2 fields changed
      • changedInput schema / properties / limit / description
        Previous value: -"Number of articles to return"New value: +"Maximum articles to return, 1-100. Defaults to 20."
      • changedInput schema / properties / status / description
        Previous value: -"Filter by status (omit for all published)"New value: +"Return only articles in this state. Omit to return every state the account owns."
    • Changedlist_newsletter_issues1 field changed
      • addedInput schema / properties / limit / description
        Added value: +"Issues to return, 1-50, newest first. Defaults to 10."
    • Changedlist_newsletter_subscribers2 fields changed
      • addedInput schema / properties / limit / description
        Added value: +"Subscribers per page, 1-100. Defaults to 20."
      • addedInput schema / properties / offset / description
        Added value: +"Subscribers to skip before this page. Defaults to 0."
    • Changedpublish_article6 fields changed
      • changedInput schema / properties / body_markdown / description
        Previous value: -"Full article body in Markdown"New value: +"Complete article body as Markdown. Images may be referenced by URL."
      • changedInput schema / properties / cover_image_url / description
        Previous value: -"URL of the cover image"New value: +"Absolute URL of the hero image. generate_cover_image returns a URL suitable here."
      • changedInput schema / properties / schedule_at / description
        Previous value: -"ISO 8601 timestamp to schedule. Omit to publish immediately."New value: +"ISO 8601 timestamp to publish at, e.g. '2026-09-01T09:00:00Z'. Omit to publish immediately. A past timestamp publishes immediately."
      • changedInput schema / properties / tags / description
        Previous value: -"Up to 10 tags"New value: +"Up to 10 topic tags used for discovery and filtering."
      • changedInput schema / properties / title / description
        Previous value: -"Article title"New value: +"Headline, 1-250 characters."
      • changedInput schema / properties / visibility / description
        Previous value: -"Who can read this article"New value: +"Audience: 'public' anyone, 'subscribers' newsletter subscribers, 'paid' paying members, 'private' only you. Defaults to 'public'."
    • Changedremove_reaction2 fields changed
      • changedInput schema / properties / article_id / description
        Previous value: -"UUID of the article"New value: +"UUID of the article to un-react to, from the `id` field of article tools."
      • changedInput schema / properties / type / description
        Previous value: -"Reaction type to remove: like, clap, or bookmark"New value: +"Which reaction to withdraw: 'like', 'clap', or 'bookmark'."
    • Changedresearch_topic1 field changed
      • changedInput schema / properties / query / description
        Previous value: -"Research topic or question. Be specific for best results."New value: +"The topic or question to research, 5-500 characters. Specific beats broad: 'how small SaaS teams price annual plans' returns more than 'pricing'."
    • Changedsearch_articles4 fields changed
      • changedInput schema / properties / author / description
        Previous value: -"Filter by author username"New value: +"Restrict to one author, by username."
      • changedInput schema / properties / limit / description
        Previous value: -"Results to return (1-20)"New value: +"Maximum results to return, 1-20. Defaults to 10."
      • changedInput schema / properties / q / description
        Previous value: -"Keyword query (min 2 characters)"New value: +"Free-text query matched against title and body. Minimum 2 characters."
      • changedInput schema / properties / tag / description
        Previous value: -"Filter by tag"New value: +"Restrict to articles carrying this exact tag."
    • Changedsuggest_titles1 field changed
      • changedInput schema / properties / context / description
        Previous value: -"Your article content in plain text or markdown"New value: +"The article text to draw titles from, plain or Markdown, 20-8000 characters. More of the real draft yields better-fitting titles than a summary."
    • Changedupdate_article4 fields changed
      • changedInput schema / properties / body_markdown / description
        Previous value: -"New body in Markdown"New value: +"Replacement body as Markdown. Replaces the whole body, not a patch."
      • changedInput schema / properties / id / description
        Previous value: -"Article or draft ID"New value: +"Article or draft id from a listing tool. This is the id, not the slug."
      • changedInput schema / properties / tags / description
        Previous value: -"Replace the tag list"New value: +"Replacement tag list, up to 10. Overwrites the existing tags entirely."
      • changedInput schema / properties / title / description
        Previous value: -"New title"New value: +"Replacement headline."
    • Changedupgrade3 fields changed
      • changedInput schema / properties / open / description
        Previous value: -"Open the upgrade/checkout page in the default browser."New value: +"Open the checkout page in the user's default browser. Side effect on their desktop — only when they asked to upgrade."
      • changedInput schema / properties / plan / description
        Previous value: -"Plan slug to open (e.g. 'pro', 'business'). Defaults to the recommended plan."New value: +"Plan slug to open, e.g. 'pro' or 'business'. Defaults to the recommended plan. Only meaningful with open=true."
      • changedInput schema / properties / start_trial / description
        Previous value: -"Start the free no-card trial immediately, if you're eligible."New value: +"Enrol in the free no-card trial now, if eligible. This changes the account's plan — do not set it speculatively."
  4. 23 tool updates
    • First observedadd_reaction
    • First observedadd_to_series
    • First observedcreate_draft
    • First observedcreate_series
    • First observedgenerate_cover_image
    • First observedgenerate_title_seo
    • First observedget_analytics_summary
    • First observedget_article
    • First observedget_follow_status
    • First observedget_profile
    • First observedget_reactions
    • First observedget_series
    • First observedlist_comments
    • First observedlist_my_articles
    • First observedlist_newsletter_issues
    • First observedlist_newsletter_subscribers
    • First observedpublish_article
    • First observedremove_reaction
    • First observedresearch_topic
    • First observedsearch_articles
    • First observedsuggest_titles
    • First observedupdate_article
    • First observedupgrade

Related MCP Connectors

Related MCP Servers

Try in Browser

Glama MCP Gateway

Add one secure layer between your agents and this server.