Skip to main content
Glama

Server Details

Run your social media from Claude, ChatGPT or any MCP client. Feedlio's MCP server lets your assistant list workspaces and connected accounts, import media from a URL, and create, edit, reschedule and cancel posts on Facebook, Instagram, LinkedIn, YouTube, TikTok, Threads, Bluesky, Mastodon and Dev.to, with per-platform settings for YouTube, TikTok and Dev.to. Sign in with OAuth on Feedlio's own page; MCP access is included on the Standard plan and up, with a 7-day free trial. Support: support@feedlio.io

Ownership verified
Status
Healthy
Uptime
1.2% over 14 days
OAuth
Works in Glama
Last Tested
Transport
Streamable HTTP · MCP 2025-11-25
URL

TDQS

A3.8/5.0

Scored across 19 tools

Disambiguation5/5

Every tool targets a distinct resource+action, and the descriptions explicitly delimit the tricky pairs (add_media_from_url vs create_upload_link, cancel_post vs delete_post, reschedule_post vs update_post). An agent can pick the right tool without guessing, including the multi-step upload flow (create_upload_link → get_upload_status).

Naming Consistency5/5

All 19 tools are snake_case with a verb-first pattern (create_/list_/get_/update_/delete_/cancel_/reschedule_/set_ + noun). Resource nouns are consistent across the set (post, media, workspace, social_accounts), so names map predictably to domains.

Tool Count4/5

19 tools spread over four coherent domains (posts, media, workspaces, account connections) is slightly heavy but each tool covers a real lifecycle step rather than duplicating another. Nothing looks like filler, though the surface could be trimmed by folding get_upload_status into the upload flow.

Completeness4/5

Posts have full lifecycle coverage (create, list, update, reschedule, cancel, delete) and media covers add/list/delete plus a complete upload flow; workspace and account listing/creation are also present. Minor gaps: no workspace rename/update, no account-disconnect tool, and no single-post get, all of which agents can work around via list_posts/list_workspaces.

Available Tools

19 tools
add_media_from_urlAdd an image/video to the media library from a URLAInspect

Downloads a publicly reachable image or video URL into the user's Feedlio media library and returns its uid, which can then be passed to create_post.media_uids. For a file on the user's device (no public URL), use create_upload_link instead.

NameRequiredDescriptionDefault
urlYesPublicly reachable http(s) URL of the image/video
nameNoOptional display name for the file
workspace_uidNouid from list_workspaces; omit for the default workspace. Use the same workspace as the post the media is for.

TDQS

A4.4/5.0
Behavior4/5

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

Annotations already declare readOnlyHint=false, destructiveHint=false, openWorldHint=true, idempotentHint=false, so the safety profile is covered; the description adds useful context that it writes into the media library and yields a uid for reuse. It does not say whether the download is synchronous or requires polling (a get_upload_status sibling exists), nor what happens on a failed/unreachable URL — a meaningful gap for an open-world network operation.

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 zero waste: the primary behavior and return value come first, the alternative routing second. Every clause carries operational 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?

With no output schema, the description correctly states the return value (uid) and its intended use. For a 3-param, open-world write tool the main missing piece is whether the agent must poll upload status or handle failure modes before using the uid.

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 are documented in the schema itself, including the workspace_uid guidance about matching the post's workspace. The description only reinforces the 'publicly reachable' constraint on url and adds nothing about formatting or naming behavior beyond the schema.

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 ('downloads'), source (publicly reachable URL), destination ('user's Feedlio media library'), and the output (uid). The scope distinction from create_upload_link is made explicit, so an agent can distinguish this from the sibling 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?

Gives an explicit when-to-use condition ('publicly reachable image or video URL'), names the alternative for the opposite case ('For a file on the user's device (no public URL), use create_upload_link instead'), and even names the downstream consumer (create_post.media_uids). Nothing is left to inference.

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

cancel_postCancel a scheduled postA
DestructiveIdempotent
Inspect

Cancel a scheduled post so it will not be published (uid from list_posts). The post record is kept with status cancelled; use delete_post to remove it entirely.

NameRequiredDescriptionDefault
post_uidYesuid from list_posts

TDQS

A4.4/5.0
Behavior4/5

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

Annotations already declare destructiveHint=true and idempotentHint=true, but 'the post record is kept with status cancelled' clarifies what the destruction actually means (a status change, not a row removal) — real value beyond the annotation. It stops short of saying whether a cancelled post can later be revived via reschedule_post.

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 waste. The primary effect is front-loaded and the disambiguation follows 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 one-parameter mutation tool with full annotation coverage, the description covers what happens, what persists, and which sibling to use instead. It omits reversibility (whether a cancelled post can be rescheduled), a minor 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 coverage is 100% and the schema already documents post_uid as 'uid from list_posts,' which the description merely repeats. No additional format, sourcing, or validation detail is added, so baseline 3 applies.

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 ('cancel') and resource ('a scheduled post') plus the effect ('so it will not be published'). It also names the sibling it is not (delete_post), so an agent can separate the two without opening schemas.

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 routes the agent: use this tool to stop publication while keeping the record, and use delete_post 'to remove it entirely.' That is an explicit when/when-not with a named alternative, plus a pointer to list_posts as the uid source.

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

create_postCreate or schedule a postAInspect

Create a post on one or more connected social accounts. Call list_social_accounts first and only use accounts with can_post: true, copying their platform_slug and uid exactly — never guess platform_slug. You must choose exactly one of: scheduled_at (ISO 8601 with timezone offset or Z, in the future) to schedule, or publish_now: true to publish to the real accounts immediately. Publishing is irreversible — only set publish_now after the user has explicitly asked to publish now; when in doubt, schedule. Returns the new post_uid for reschedule_post / cancel_post. publish_now only queues publishing; check list_posts for the result. Some platforms need extra settings: YouTube needs youtube (title, tags, category, privacy) and one video; TikTok needs tiktok (privacy_level the user chose from get_tiktok_creator_info); Pinterest needs pinterest (board_id from list_pinterest_boards); Dev.to needs devto (title, optional tags, canonical_url, description, series, published) and must be posted on its own. The same settings apply to every account of that platform in this post.

NameRequiredDescriptionDefault
devtoNoRequired when posting to Dev.to. text_content is the article body in Markdown; the first image in media_uids becomes the cover. Dev.to articles cannot be deleted or edited from Feedlio once published. Post Dev.to on its own (no other platforms in the same post).
tiktokNoRequired when posting to TikTok. Call get_tiktok_creator_info first.
youtubeNoRequired when posting to YouTube. Use content_type reel_or_short for a Short (vertical video, max 60s) and normal_post for a regular (landscape) video. Exactly one video in media_uids.
pinterestNoRequired when posting to Pinterest: the board to pin to.
platformsYesOne or more platform accounts to post to
media_uidsNoFeedlio media file uids to attach, from list_media or add_media_from_url. Never invent one.
publish_nowNoSet true to publish immediately instead of scheduling. Irreversible — requires the user to have explicitly asked for immediate publishing.
content_typeYesKind of content this post is
scheduled_atNoISO 8601 datetime to schedule the post (e.g. 2026-09-15T10:00:00+06:00). Required unless publish_now is true.
text_contentYesThe post caption/body text
first_commentNo
workspace_uidYesuid from list_workspaces

TDQS

A4.6/5.0
Behavior4/5

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

Annotations already declare non-read-only, non-idempotent, open-world, non-destructive, so the description's job is to add nuance — and it does: publishing is irreversible, publish_now only queues, and the result must be checked via list_posts. The only gap is that 'irreversible publishing' sits uneasily beside destructiveHint=false without reconciling that destructive refers to deletion, leaving a small ambiguity.

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 the account-selection prerequisite, then the mode choice, then the irreversibility warning, then platform extras — a sensible priority order. Every sentence carries a constraint, though the platform-specific paragraph partially duplicates nested schema descriptions and could be trimmed without losing guidance.

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 12-parameter, deeply nested, non-idempotent mutation with no output schema, the description covers the account resolution path, mode exclusivity, irreversibility, return value (post_uid), and the four platform-specific sub-objects with their prerequisite lookups. Nothing an agent needs in order to call this correctly is missing.

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 92% so the baseline is 3, but the description adds genuine semantics the schema cannot express: the exactly-one-of constraint between scheduled_at and publish_now (there is no oneOf/top-level exclusivity in the schema), the rule that one platform settings object applies to every account of that platform, and that a YouTube post takes exactly one video. It repeats some nested-object descriptions already present in the schema, which keeps it off a 5.

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 and resource ('Create a post on one or more connected social accounts') and immediately distinguishes itself from siblings by naming reschedule_post / cancel_post as the consumers of its return value and by describing its own create-and-schedule dual mode. An agent can separate this from update_post or list_posts without opening a 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?

Explicit prerequisites and exclusions: call list_social_accounts first, use only accounts with can_post: true, copy platform_slug verbatim, never guess. It gives the decision rule between the two modes ('when in doubt, schedule'), requires explicit user consent for publish_now, and adds per-platform preconditions (get_tiktok_creator_info, list_pinterest_boards) plus the Dev.to isolation constraint.

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

create_workspaceCreate a Feedlio workspaceCInspect

Create a new Feedlio workspace.

NameRequiredDescriptionDefault
nameYesWorkspace name

TDQS

C2.6/5.0
Behavior2/5

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

Annotations already declare the write profile (readOnlyHint=false, destructiveHint=false, idempotentHint=false, openWorldHint=false), so the safety bar is lower, but the description adds nothing beyond them. It does not mention that repeat calls create duplicates (non-idempotent), whether the caller becomes owner, or what the response contains.

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?

One short, front-loaded sentence with zero filler. It is appropriately sized structurally, though the brevity comes at the cost of substance rather than being a model of efficient density.

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

Completeness2/5

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

For a simple one-parameter creation tool with no output schema, the description still leaves open what is returned (workspace id?), whether duplicates are allowed, and any post-creation expectations. The mutation context is only conveyed by the tool name and annotations.

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 required parameter with 100% schema description coverage ('Workspace name'), so the schema carries the load. The description contributes no extra meaning such as constraints on the name or whether it must be unique.

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

Purpose3/5

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

The description states a specific verb (create) and resource (workspace), so the agent can tell it apart from delete_workspace and list_workspaces by name alone. But the sentence is a near-verbatim restatement of the title, adding no distinguishing detail about what a created workspace contains or defaults to.

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 guidance on when to use this versus add_media_from_url/set_default_workspace, no prerequisites (plan limits, name uniqueness), and no note on what to do afterwards. Usage must be entirely inferred from the tool name.

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

delete_mediaDelete a media fileA
DestructiveIdempotent
Inspect

Permanently delete a file from the media library (uid from list_media). Irreversible — confirm with the user first.

NameRequiredDescriptionDefault
media_uidYesuid from list_media
workspace_uidNouid from list_workspaces; omit for the default workspace.

TDQS

A4/5.0
Behavior4/5

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

Annotations already declare destructiveHint=true and readOnlyHint=false, so the description isn't carrying the safety burden alone; it still adds the workflow requirement to confirm with the user before calling, which annotations cannot express. 'Irreversible' is consistent with destructiveHint and deletion remaining idempotent, so there's no contradiction, though it says nothing about downstream effects on posts referencing the file.

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: the action and scope come first, the uid source and the irreversibility warning follow. Nothing is wasted and nothing important is buried.

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 two-parameter destructive tool with full annotations and no output schema, the definition covers the action, the identifier source, and the safety precondition. Only the collateral impact (e.g. whether posts using the media are affected) is left unstated.

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% and the schema already documents that media_uid comes from list_media and that workspace_uid may be omitted for the default workspace. The description repeats the uid provenance but adds no meaning beyond the schema, 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 gives a precise verb-plus-resource ('Permanently delete a file from the media library') and names the sibling list_media as the source of the uid. It doesn't explicitly contrast itself with delete_post or delete_workspace, so sibling differentiation is only implicit in the resource noun.

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

Usage Guidelines4/5

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

'Irreversible — confirm with the user first' establishes a required precondition for use, and '(uid from list_media)' routes the agent to the tool that supplies the identifier. There's no when-not guidance, but the usage context is clear enough for an agent to act on.

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

delete_postDelete a postA
DestructiveIdempotent
Inspect

Permanently delete a post from Feedlio (uid from list_posts). Irreversible — confirm with the user first. This does not remove content already published on the social platform itself.

NameRequiredDescriptionDefault
post_uidYesuid from list_posts

TDQS

A4.3/5.0
Behavior4/5

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

Annotations already declare destructiveHint=true and idempotentHint=true, so the description's added value is real: 'Permanently... Irreversible' plus a confirm-first instruction and the platform-side persistence caveat. It still doesn't describe what happens on an invalid/repeated uid or the response shape, keeping it just short of top marks.

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 with the destructive scope front-loaded, the identifier source next, and the platform-side boundary last. No redundancy against the schema or title.

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 single-parameter destructive tool with no output schema, the description covers purpose, argument source, irreversibility, user confirmation, and the caveat about the social platform. Nothing material an agent needs before calling 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?

Only one parameter and schema coverage is 100%, so the schema already documents post_uid. The description's 'uid from list_posts' mirrors the schema and adds no format or edge-case detail beyond it, so the baseline 3 applies.

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 (permanently delete) and resource (a post from Feedlio) with the source of the identifier (uid from list_posts). It also clarifies the boundary of the operation ('does not remove content already published on the social platform'), which makes it distinguishable from cancel_post and update_post.

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

Usage Guidelines4/5

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

Gives clear context for how to obtain the argument and an explicit confirm-with-user prerequisite before calling. It does not, however, explicitly contrast with the sibling cancel_post, leaving the delete-vs-cancel decision to inference.

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

delete_workspaceDelete a Feedlio workspaceA
DestructiveIdempotent
Inspect

Delete a workspace (uid from list_workspaces). It disappears from the user's workspaces and can't be restored through MCP — confirm with the user first. The default workspace can't be deleted; set another default first. Posts already scheduled in it are not cancelled by this — cancel them first if they should not publish.

NameRequiredDescriptionDefault
workspace_uidYesuid from list_workspaces

TDQS

A4.5/5.0
Behavior5/5

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

Annotations already declare destructiveHint=true and idempotentHint=true, and the description adds substantial context beyond that: deletion is irreversible through MCP, the workspace vanishes from the user's list, the default workspace is protected, and scheduled posts survive the deletion. These are exactly the side effects an agent needs before calling a destructive tool.

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 dense sentences, each carrying a distinct constraint: irreversibility/confirmation, default-workspace protection, and scheduled-post behavior. The destructive nature is front-loaded in sentence one with zero filler.

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 single-parameter destructive tool with no output schema, the description covers everything an agent needs: the risk profile, the confirmation requirement, the blocking precondition, and the uncascaded side effect. Nothing material is left to inference.

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 only one parameter and schema coverage is 100%, so the schema already documents workspace_uid. The parenthetical "uid from list_workspaces" duplicates the schema description rather than adding new meaning. 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?

States a specific verb and resource ("Delete a workspace") and immediately identifies the identifier source (uid from list_workspaces). An agent can distinguish this from create_workspace or set_default_workspace without opening the schema.

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

Usage Guidelines4/5

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

Gives clear preconditions and ordering constraints: confirm with the user first, switch the default workspace before deleting, and cancel scheduled posts if they shouldn't publish. It does not name the sibling tools (set_default_workspace, cancel_post) explicitly, so the agent must map actions to tools, but the conditions themselves are unambiguous.

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

get_tiktok_creator_infoGet TikTok posting optionsA
Read-onlyIdempotent
Inspect

Returns what a connected TikTok account is allowed to post right now: privacy_level_options (show these to the user and let them choose one for create_post.tiktok.privacy_level), whether comments, duets and stitches are disabled for this creator, the maximum video length, and can_post. Call it before every TikTok post; if can_post is false, tell the user to try again later.

NameRequiredDescriptionDefault
social_account_uidYesuid of a TikTok account from list_social_accounts

TDQS

A4.3/5.0
Behavior4/5

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

Annotations already declare readOnlyHint=true, idempotentHint=true, and destructiveHint=false, so safety is covered. The description adds useful behavioral context by naming the returned posting options and specifying the action to take when can_post is false, though it does not cover every possible response detail or failure mode.

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

Conciseness5/5

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

The description is front-loaded with the main purpose and then gives the critical usage rule. Every sentence contributes directly to understanding what the tool returns and when to call it, with no wasted text.

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 simple read-only tool with one fully documented parameter and rich annotations, the description supplies the important output fields and the pre-post workflow. It is complete enough for an agent to call it correctly without an output schema.

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 parameter social_account_uid is fully documented as a TikTok account uid from list_social_accounts. The description itself does not add meaning beyond the schema, so the baseline of 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 states a specific verb and resource: it returns what a connected TikTok account is allowed to post right now, including named fields such as privacy_level_options, can_post, and max video length. It also ties the tool directly to create_post.tiktok.privacy_level, making its role distinct from sibling tools like create_post or list_social_accounts.

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

Usage Guidelines4/5

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

It gives a clear usage rule: call it before every TikTok post, and if can_post is false, tell the user to try again later. The context is explicit, though it does not name when not to use it or compare it against alternatives beyond the create_post reference.

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

get_upload_statusCheck an upload linkA
Read-onlyIdempotent
Inspect

Status of a link from create_upload_link: pending (not uploaded yet), uploaded (use media_uid in create_post), failed (see error; create a new link) or expired.

NameRequiredDescriptionDefault
ticket_uidYesticket_uid from create_upload_link

TDQS

A4.2/5.0
Behavior4/5

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

Annotations already declare readOnly, idempotent, non-destructive, so the safety profile is covered; the description contributes the actual state machine (pending/uploaded/failed/expired) and what each state means for downstream action. It does not say whether the call is cheap enough to poll, how long before pending turns to expired, or where the error payload lives, which would be the remaining behavioral detail.

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?

One sentence, front-loaded with the resource and its source, then a compact parenthetical mapping each state to its consequence. Every clause earns its place and there is no filler.

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?

With no output schema, the description does the work of explaining return values by enumerating the four possible statuses and their meanings, which is exactly what an agent needs to branch on. Minor gaps remain (expiry timing, where the error detail is surfaced, polling expectations) that keep it from being fully self-sufficient.

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% and the single parameter ticket_uid is already documented as coming from create_upload_link, so the description only echoes the schema's origin note. No additional syntax, format, or lifetime semantics for the ticket are added; baseline 3 applies.

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 resource and operation – retrieving the status of a link produced by create_upload_link – and names the originating sibling tool, so an agent can place it in the upload workflow without inspecting the schema. It is distinguishable from create_upload_link and create_post, the siblings that share its domain.

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

Usage Guidelines4/5

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

Goes beyond mere purpose by prescribing the next action per state (use media_uid in create_post when uploaded; create a new link when failed), which effectively tells an agent where to go next. It lacks an explicit statement of when to poll versus wait, or that this should be called after create_upload_link rather than before, so it stops short of full when/when-not guidance.

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

list_mediaList uploaded media filesA
Read-onlyIdempotent
Inspect

List images/videos in the user's Feedlio media library. Use a result's uid in create_post.media_uids to attach it to a post.

NameRequiredDescriptionDefault
pageNo
typeNoOnly image and video files can be attached to posts
limitNo
searchNoFilter by file name
workspace_uidNouid from list_workspaces; omit for the default workspace. Use the same workspace as the post the media is for.

TDQS

A3.7/5.0
Behavior3/5

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

Annotations already declare readOnlyHint, idempotentHint and non-destructive, so safety is covered. The description adds the genuinely useful fact that results carry a uid consumed by create_post, but stays silent on pagination (page/limit exist) and on the fact that document/audio items cannot be attached despite being listable.

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 stated first and the downstream usage second. Nothing could be removed without losing 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 read-only list tool with annotations covering safety, this is nearly complete: it names the resource, the scope, and the shape of at least one returned field (uid), which matters because there is no output schema. Missing only pagination guidance and the type-vs-attachability caveat.

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 60%, so the description is not obligated to carry everything, yet 'images/videos' reinforces the type filter's practical meaning and the uid hint connects results to a parameter. It still leaves page and limit unexplained in either place, so it does not fully compensate for the coverage gap.

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 images/videos in the user's Feedlio media library'), which cleanly separates it from siblings like add_media_from_url or list_posts. The only blemish is that the schema's type enum also allows document/audio, so the stated scope is slightly narrower than what the tool actually returns.

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 second sentence gives a concrete downstream use (feed the uid into create_post.media_uids), which implies 'use this to find attachable media'. It never says when to prefer add_media_from_url, create_upload_link, or delete_media instead, nor what happens when the library is empty.

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

list_pinterest_boardsList Pinterest boardsA
Read-onlyIdempotent
Inspect

Lists the boards on a connected Pinterest account. Pinterest posts must go to a board: pass the chosen board id as create_post.pinterest.board_id.

NameRequiredDescriptionDefault
social_account_uidYesuid of a Pinterest account from list_social_accounts

TDQS

A4/5.0
Behavior3/5

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

Annotations already declare readOnlyHint, idempotentHint and non-destructive behavior, so the safety profile is covered without the description. The description adds the workflow context but says nothing about pagination, result size, or what a board object contains.

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 what the tool does and followed by the single most useful integration fact. No filler.

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 read-only single-parameter list tool with full annotation coverage, the description plus schema give enough to call it correctly and to use the result. Minor gap: no note on return shape (board id/name) or whether all boards are returned, and there is no output schema to compensate.

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 parameter is already documented as 'uid of a Pinterest account from list_social_accounts'. The description adds no further meaning about the parameter, which is acceptable at full coverage.

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 and resource ('Lists the boards on a connected Pinterest account') and is clearly distinct from sibling list tools such as list_media, list_posts and list_social_accounts.

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

Usage Guidelines4/5

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

Explains the downstream purpose — Pinterest posts must target a board, so the returned board id is passed to create_post.pinterest.board_id — which tells the agent why and when to call this before create_post. It does not explicitly name list_social_accounts as the prerequisite for obtaining social_account_uid, though the schema covers that.

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

list_postsList postsA
Read-onlyIdempotent
Inspect

List posts (scheduled, in progress, completed, cancelled) in a Feedlio workspace, most recent first. Timestamps are UTC ISO 8601; convert to the workspace timezone (from list_workspaces) when presenting them to the user.

NameRequiredDescriptionDefault
pageNo
limitNo
searchNo
platformNoFilter by platform slug, e.g. facebook
content_typeNo
workspace_uidNo

TDQS

A3.5/5.0
Behavior4/5

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

Annotations already cover the safety profile (readOnly, idempotent, non-destructive), yet the description still adds non-obvious behavior: results come most-recent-first and timestamps are UTC ISO 8601. That is real context beyond structured fields, though pagination defaults and total-count behavior are unstated.

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 core scope and ordering front-loaded and the timezone caveat second. 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?

The description covers identity, scope, ordering, and time semantics, which is adequate for a read-only list tool with annotations carrying safety. But with six optional parameters, low schema coverage, and no output schema, the absence of any pagination or search guidance leaves a real gap.

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 17% — just the platform slug is documented — and the description does not compensate for the other five parameters (page, limit, search, content_type, workspace_uid). It only alludes to workspace scoping in prose; nothing explains filtering or paging semantics an agent would need to call it well.

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?

Names a specific verb and resource ('List posts') and adds scope (a Feedlio workspace), the statuses included, and the sort order, so an agent knows exactly what set it gets back. It does not explicitly contrast itself with siblings like list_media or list_workspaces, which is the only thing keeping it from 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?

Usage is only implied by the listed statuses; there is no statement of when to prefer this over list_media or when filtering is required. The one real piece of guidance is the presentation instruction to convert timestamps using list_workspaces, which is helpful but limited to output formatting rather than tool selection.

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

list_social_accountsList connected social accountsA
Read-onlyIdempotent
Inspect

List the social media accounts connected to a Feedlio workspace. Each result includes uid, platform_slug, and can_post. Only accounts with can_post: true can be used with create_post — pass their uid as social_account_uid and platform_slug as platform_slug, exactly as returned. Never guess platform_slug from the account name. Accounts with can_post: false are connected for other features (e.g. inbox/messaging) and create_post will reject them; tell the user instead of retrying.

NameRequiredDescriptionDefault
workspace_uidYesuid from list_workspaces
social_platformNoFilter to one platform slug, e.g. facebook

TDQS

A4.7/5.0
Behavior4/5

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

Annotations already declare readOnly/idempotent/non-destructive/closed-world, so safety is covered. The description adds genuinely new behavioral facts: the shape of each result (uid, platform_slug, can_post), that create_post rejects ineligible accounts, and that platform slugs must be taken verbatim rather than inferred. It stops short of covering ordering, pagination, or the size of a typical result set, keeping it at 4 rather than 5.

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?

Four tight sentences: purpose first, then result shape, then the create_post handoff, then the failure case. No restatement of the title or annotations, and every sentence carries decision-relevant information.

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?

Two simple parameters with full schema coverage, no output schema, and closed-world/read-only annotations. The description supplies the one thing the structured data cannot: what the returned fields mean and how to use them correctly downstream. Nothing an agent needs to call this successfully is missing.

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. The description goes slightly beyond it by establishing that platform_slug values are authoritative and must come from real account records rather than being guessed, which informs how the social_platform filter should be populated. It adds no detail on workspace_uid beyond the schema's own note.

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?

Opens with a specific verb+resource ('List the social media accounts connected to a Feedlio workspace'), which is clearly distinct from sibling listers like list_workspaces, list_media, and list_posts. An agent can route to this tool without inspecting the 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?

Explicitly ties the tool to the downstream create_post flow, states the eligibility rule (can_post: true), and gives a when-not path for can_post: false ('tell the user instead of retrying'). That is both positive routing and an exclusion, which is the top of the rubric.

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

list_workspacesList Feedlio workspacesB
Read-onlyIdempotent
Inspect

List the authenticated user's Feedlio workspaces. Workspaces with locked_by_plan: true exceed the user's plan allowance and can't be used (accounts, posts) until the user upgrades or chooses which workspaces to keep active in the Feedlio dashboard.

NameRequiredDescriptionDefault
pageNo
limitNo
searchNoFilter by workspace name

TDQS

B3.2/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 the description adds genuinely non-obvious behavior: results can include workspaces with locked_by_plan: true that are unusable until upgrade or dashboard action. It doesn't cover pagination limits or the return shape, keeping it below a 5.

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 tight sentences with the core purpose front-loaded and no filler. The parenthetical '(accounts, posts)' is slightly awkward but earns its place by naming affected resources.

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?

A paginated list tool with no output schema should at least hint at bounds or ordering, which it doesn't. The locked-plan disclosure is valuable, but the pagination parameters and result shape remain unexplained, leaving an agent guessing on page/limit 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 only 33% — page and limit have no descriptions at all, and the description says nothing about pagination or filtering semantics. With low coverage the description should compensate, but it does not; only 'search' is self-documenting in the schema.

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 ('List') and resource ('authenticated user's Feedlio workspaces') with clear ownership scope. It is distinguishable from siblings like list_posts or list_social_accounts by resource, though it doesn't explicitly say so.

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 call this versus related tools (e.g., before create_workspace or set_default_workspace), nor any prerequisites. The second sentence explains plan-locked behavior but is not usage selection guidance.

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

reschedule_postReschedule a postA
Idempotent
Inspect

Change the scheduled time of a scheduled post (uid from list_posts).

NameRequiredDescriptionDefault
post_uidYesuid from list_posts
scheduled_atYesNew ISO 8601 datetime, in the future

TDQS

A3.6/5.0
Behavior3/5

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

The annotations already state that this is a non-destructive, idempotent mutation with no open-world side effects. The description adds the useful constraint that the target must be a scheduled post, but it does not cover failure cases, timezone behavior, or permissions.

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

Conciseness5/5

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

The description is a single front-loaded sentence with no filler. The parenthetical uid hint is directly useful and does not distract from the core action.

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, idempotent mutation with full schema coverage and clear annotations, the description is largely complete. The remaining gap is minor: it could say more about what happens when the post is no longer scheduled or how time zones are interpreted.

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 are fully documented in the schema, including the ISO 8601 future-datetime format. The description only repeats the post_uid source and adds no further parameter meaning beyond the schema.

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: change the scheduled time of a scheduled post. It also identifies where the uid comes from (list_posts), which helps distinguish it from broader update_post usage, though it does not explicitly name sibling alternatives.

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?

It implies the tool should be used for posts that are still scheduled and points to list_posts for the uid. However, it gives no explicit exclusions such as not using it for published posts or using update_post for other edits.

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

set_default_workspaceSet the default Feedlio workspaceA
Idempotent
Inspect

Set which Feedlio workspace is the default. New posts/queries that omit workspace_uid use this one.

NameRequiredDescriptionDefault
workspace_uidYesuid from list_workspaces

TDQS

A3.8/5.0
Behavior4/5

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

Annotations already declare readOnlyHint=false, idempotentHint=true, and destructiveHint=false, so the safety profile is covered. The description adds genuine value beyond that by disclosing the downstream effect: subsequent calls that omit workspace_uid inherit this setting. It stops short of saying whether this is per-user, per-account, or requires admin rights.

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 padding; the core action is front-loaded and the scoping note follows immediately. Nothing to trim.

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, idempotent setter with no output schema, the description covers action and effect adequately. Gaps are permission/scope persistence and what the response confirms, which are minor but non-trivial for a settings mutation.

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?

Only one parameter and schema coverage is 100% ("uid from list_workspaces"), so the schema already carries the semantics. The description adds no format hints or examples beyond what the schema states, which is the baseline case.

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 ("Set which Feedlio workspace is the default"), plus the consequence in a second sentence. An agent can distinguish it from list_workspaces/create_workspace/delete_workspace by verb alone, though the description never explicitly contrasts 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?

The note that "new posts/queries that omit workspace_uid use this one" implies when the tool matters, but the description never says when to call it versus simply passing workspace_uid per call, nor any prerequisite. Usage is inferable rather than stated.

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

update_postEdit a scheduled postA
Idempotent
Inspect

Edit a post that is still scheduled, keeping the same post (uid from list_posts). Only the fields you pass change; everything else stays as it is. You can change the text, media, first comment, scheduled time and the YouTube/TikTok/Pinterest/Dev.to settings. The accounts it posts to cannot be changed here (cancel_post and create_post instead). Posts that already started publishing, or are due within a few minutes, cannot be edited.

NameRequiredDescriptionDefault
devtoNo
tiktokNo
youtubeNo
post_uidYesuid from list_posts
pinterestNoRequired when posting to Pinterest: the board to pin to.
media_uidsNoReplaces all attached media (from list_media or add_media_from_url)
scheduled_atNoNew ISO 8601 datetime in the future; omit to keep the current time
text_contentNoNew caption/body text
first_commentNo
workspace_uidYesuid of the workspace the post belongs to

TDQS

A4.8/5.0
Behavior5/5

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

Annotations only say non-read-only, idempotent, non-destructive; the description goes further by disclosing PATCH-style merge semantics ("only the fields you pass change"), that target accounts are immutable here, and the time-based eligibility cutoff. That is exactly the extra context the annotations do not provide.

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?

Four tight sentences, front-loaded with the core operation and identity, then merge semantics, then editability boundaries. No filler and no restatement of the title or name.

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?

Covers eligibility, partial-update behavior, and the account-immutability boundary, which is everything needed to invoke a 10-param mutation safely. It does not say what a successful edit returns, which is a minor gap given there is no output schema.

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 60%, and the description maps the editable parameter groups (text, media, first comment, scheduled time, per-platform settings blocks) so the agent knows which top-level params are updatable. It still defers per-field rules (pinterest board_id requirement, TikTok privacy sourcing, tag limits) to the schema.

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 and resource (edit a scheduled post) and pins the identity semantics with "keeping the same post (uid from list_posts)". It is clearly distinguishable from create_post and cancel_post, which it names.

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?

Gives explicit when-to-use (only posts still scheduled, not already publishing or due within minutes) and explicit when-not/alternatives (change target accounts via cancel_post and create_post instead). Nothing is left to inference.

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. 19 tool updates
    • First observedadd_media_from_url
    • First observedcancel_post
    • First observedcreate_post
    • First observedcreate_upload_link
    • First observedcreate_workspace
    • First observeddelete_media
    • First observeddelete_post
    • First observeddelete_workspace
    • First observedget_connect_platform_link
    • First observedget_tiktok_creator_info
    • First observedget_upload_status
    • First observedlist_media
    • First observedlist_pinterest_boards
    • First observedlist_posts
    • First observedlist_social_accounts
    • First observedlist_workspaces
    • First observedreschedule_post
    • First observedset_default_workspace
    • First observedupdate_post

Publisher details

Operator
Feedlio (iTech Soft Solutions) · Publisher source
Operator website
https://feedlio.io
Vendor relationship
First-party
Trust center
Not available
Restrictions
Requires a Feedlio account on the Standard plan or higher (7-day free trial on every paid plan). Each social account must be connected in the Feedlio dashboard before posting. · Publisher source

Related MCP Connectors

  • Schedule and publish social posts across 9 platforms (Instagram, LinkedIn, X, TikTok, Facebook, Threads, Pinterest, Bluesky, Mastodon) straight from Claude, ChatGPT, Cursor, or any MCP client. Create, edit, and reschedule posts, upload media, and pull account and post analytics, follower demographics, and best-time windows. 20 tools, free on every plan.

    https://socialrobot.io/api/mcp
  • Publish and schedule videos to TikTok, YouTube Shorts, Instagram, Facebook, LinkedIn, Pinterest, Bluesky, Threads and X from Claude, Cursor or any MCP client. Upload once, post everywhere, track views in unified analytics, and retry failed posts. Official platform APIs only, free plan available. Docs: https://docs.multi-upload-tool.com/mcp

  • Draft and schedule social media posts on your connected channels from Claude or any MCP client.

  • SocialFaktory (https://www.socialfaktory.com) is a social media MCP server that lets your AI agent run a brand's social content with you. It reads the brands, channels and media you already have, writes posts in the brand's own voice, prices and generates short video, takes a file you upload, composes one post per channel, schedules or sends it on TikTok, Instagram, YouTube, X, LinkedIn, Facebook and Pinterest, and reads the metrics back. It is a hosted remote server at https://www.socialfaktory.com/mcp (Streamable HTTP) with OAuth 2.1 sign-in and 20 tools. Install steps cover Claude Code, Claude Desktop, Cursor, VS Code, Codex CLI, Gemini CLI and Windsurf. You stay in control. Generating spends the credits in your wallet, and the agent is told to quote the price and ask you first. Posts are drafts until you send them, and nothing reaches a channel without the publish permission you grant on the consent screen, where you also pin the connection to one brand, cap monthly spend and choose when it expires. Generating and publishing need an active SocialFaktory plan. Not available through an agent yet: cloning a video from a link, and generating still images or carousels. Connecting a social channel is a browser sign-in and stays in the app. Docs: https://www.socialfaktory.com/docs/mcp

    https://www.socialfaktory.com/mcp

Related MCP Servers

  • A
    license
    Not graded
    quality
    A
    maintenance
    Schedule and analyze social media posts from Claude, ChatGPT, or Cursor. Remote OAuth server, 17 tools across 9 platforms, free on every plan. Server URL: https://socialrobot.io/api/mcp
    MIT
  • A
    license
    A
    quality
    B
    maintenance
    Schedule and manage social media posts across 10 platforms (Instagram, Facebook, TikTok, X, LinkedIn, YouTube, Threads, Pinterest, Bluesky, Telegram) from any MCP-compatible AI assistant. Supports batch posting, media uploads, analytics, and platform-specific features like Reels, Shorts, and carousels.
    11
    455 npm
    7
    MIT
  • A
    license
    Not graded
    quality
    B
    maintenance
    A hosted MCP server that lets AI assistants schedule and publish social media posts across Instagram, TikTok, X, LinkedIn, YouTube, Pinterest, Facebook, Telegram, Threads, and Bluesky. It provides tools for managing accounts, posts, media, and analytics, including post previewing before publishing.
    1
    MIT
Try in Browser

Glama MCP Gateway

Add one secure layer between your agents and this server.

Resources