Skip to main content
Glama
helbertparanhos

postforme-mcp-pro

postforme-mcp-pro πŸ“±

The most complete Post for Me MCP server β€” publish, schedule, edit, delete and analyze social posts across 9 platforms from any MCP client.

npm version License: MIT GitHub Stars GitHub Forks GitHub Issues Glama Quality

TypeScript Node.js MCP Claude Code Cursor Claude Desktop

Instagram YouTube LinkedIn Buy Me A Coffee Strat Academy

postforme-mcp-pro wraps the Post for Me API in 27+ fully-typed MCP tools (one per operation) plus a postforme_raw escape hatch and a readonly safety mode. Unlike the official MCP β€” which exposes only a doc-search + sandboxed code-execution tool ("code mode") β€” every operation here is a first-class, directly-callable tool, so the model can post, schedule and pull analytics without writing SDK code.

Platforms: Instagram Β· Facebook Β· TikTok Β· YouTube Β· X Β· LinkedIn Β· Pinterest Β· Bluesky Β· Threads

Why this server

  • 27+ typed tools β€” create_post, schedule_post, publish_now, create_draft, upload_media, list_account_feeds, list_post_results, account & webhook management, and more.

  • High-level shortcuts β€” publish_now / schedule_post / create_draft / reschedule_post / upload_media collapse common multi-step flows into one call.

  • One-step media upload β€” upload_media takes a local file path or a public URL, gets a signed URL, uploads the bytes, and hands back a media_url ready to attach.

  • Per-platform tuning β€” platform_configurations models Instagram Reels, X polls, TikTok privacy, YouTube visibility, etc., and stays permissive for new options.

  • Readonly safety mode β€” POSTFORME_READONLY=true blocks every write; great for analytics-only sessions.

  • postforme_raw β€” call any endpoint for 100% API coverage, even brand-new ones.

  • Resilient client β€” Bearer auth, retries on 429/5xx with backoff, actionable error messages.

Related MCP server: so-easy-mcp

Install

npm install
npm run build

Or run published (after release) without cloning:

npx -y postforme-mcp-pro

Configuration

Copy .env.example β†’ .env and set your key:

Variable

Required

Description

POSTFORME_API_KEY

βœ…

Your Post for Me API key (Dashboard β†’ Settings β†’ API Keys).

POSTFORME_BASE_URL

β€”

Override the API base URL for self-hosted/open-source deployments. Default https://api.postforme.dev.

POSTFORME_READONLY

β€”

true blocks all write tools (only reads + postforme_raw GET run).

POSTFORME_DISABLE_RAW

β€”

true removes the postforme_raw tool.

POSTFORME_TIMEOUT_MS

β€”

Per-request timeout (default 60000).

POSTFORME_MAX_RETRIES

β€”

Max retries on 429/5xx/network (default 3).

Test locally

npx @modelcontextprotocol/inspector node dist/index.js

Add to Claude Code

.claude/settings.json β†’ mcpServers:

"postforme": {
  "command": "node",
  "args": ["projects/postforme-mcp-pro/dist/index.js"],
  "env": { "POSTFORME_API_KEY": "pfm_xxx" }
}

Add to Claude Desktop

%APPDATA%\Claude\claude_desktop_config.json (Windows) / ~/Library/Application Support/Claude/claude_desktop_config.json (macOS):

"postforme": {
  "command": "node",
  "args": ["/abs/path/projects/postforme-mcp-pro/dist/index.js"],
  "env": { "POSTFORME_API_KEY": "pfm_xxx" }
}

Cursor uses the same config shape in its MCP file.

Tools

Social accounts

Tool

Description

list_social_accounts

List connected accounts (filter by platform/username).

get_social_account

Get one account by id.

create_social_account

Connect an account by supplying credentials.

update_social_account

Update stored credentials/metadata.

create_auth_url

Start the OAuth connect flow (returns a URL).

disconnect_social_account

Revoke access for an account.

list_account_feeds

Analytics: recent feed + engagement metrics for an account.

Posts

Tool

Description

create_post

Create a post (publish now, schedule, or draft) across accounts.

publish_now

Shortcut: publish immediately.

schedule_post

Shortcut: schedule for an ISO-8601 time.

create_draft

Shortcut: save as draft.

get_post

Get a post by id.

list_posts

List posts (filter by status).

update_post

Edit caption/media/accounts/schedule/config.

reschedule_post

Shortcut: change a scheduled time.

delete_post

Delete a post.

Results & previews

Tool

Description

list_post_results

Analytics: per-platform publish outcomes.

get_post_result

One post result by id.

create_post_preview

Preview how a post renders per platform.

Media

Tool

Description

create_media_upload_url

Get a signed upload URL (2-step flow).

upload_media

One-step: upload a local file or remote URL β†’ returns media_url.

Webhooks

Tool

Description

list_webhooks Β· get_webhook Β· create_webhook Β· update_webhook Β· delete_webhook

Manage event subscriptions.

Escape hatch

Tool

Description

postforme_raw

Call any /v1/... endpoint directly (method, path, params, body).

Companion skill

/postforme (in skill/SKILL.md) orchestrates these tools into guided workflows: post, schedule, campaign, analytics, accounts, media. Copy it into .claude/skills/ to use it in Claude Code.

Example

You: post "LanΓ§amos a v2 πŸš€" no instagram e no x, com a imagem ./hero.png
β†’ list_social_accounts            (get the instagram + x account ids)
β†’ upload_media { file_path: "./hero.png" }   β†’ media_url
β†’ create_post_preview             (optional, confirm look)
β†’ publish_now { social_accounts: [...], caption: "...", media: [{ url: media_url }] }
β†’ list_post_results               (report success/links per platform)

Comparison with the official MCP

postforme-mcp-pro

official post-for-me-mcp

Tool model

27 typed tools, one per operation

2 tools (doc-search + code-execution sandbox)

Calls

Direct tool calls

Model must write SDK code in a sandbox

Shortcuts

publish_now / schedule_post / create_draft / upload_media

β€”

Safety

POSTFORME_READONLY mode + SSRF/file-read hardening

β€”

Escape hatch

postforme_raw (any /v1 endpoint)

code execution

Companion skill

/postforme guided workflows

β€”

Security

upload_media hardens remote fetches against SSRF (DNS resolution + public-unicast IP validation, no redirects, size cap) and restricts local file reads to recognized media extensions (optionally to POSTFORME_MEDIA_DIR). postforme_raw paths are validated to stay on the versioned API surface. See REVIEW.md for the full audit.

License

MIT Β© Helbert Paranhos / Strat Academy

Available Tools

27 tools
create_auth_urlA

Start the OAuth connect flow for a platform. Returns a URL β€” open it in a browser to authorize the account; once approved, it appears in list_social_accounts. Use this to connect a new Instagram/TikTok/X/etc.

ParametersJSON Schema
NameRequiredDescriptionDefault
platformYesPlatform to connect via OAuth.
external_idNoYour own reference id to correlate the resulting account on your side.
redirect_urlNoWhere to send the user after authorizing (overrides the workspace default).

TDQS

A3.9/5.0
Behavior3/5

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

With no annotations, the description covers the basic flow: returns a URL, user opens it in browser, account appears after approval. However, it omits behavioral details like rate limits, permissions, idempotency, or what happens if already connected.

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 two sentences, front-loaded with the core action, and every sentence adds value. No wasted words.

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 tool with three parameters and a single URL output, the description explains the entire flow: initiating OAuth, using the URL, and the result. It is complete and actionable.

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 descriptions for each parameter. The tool description adds context about the OAuth flow but does not explain parameter formats or constraints beyond the schema, so it meets the baseline without adding significant value.

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 clearly states the tool's purpose: start an OAuth connect flow and return a URL to authorize an account. It distinguishes from siblings like create_social_account by specifying the flow and the result (account appears in 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 Guidelines3/5

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

The description says 'Use this to connect a new Instagram/TikTok/X/etc.' which indicates when to use, but it does not explicitly state when not to use or mention alternative tools (e.g., create_social_account might be for direct API keys). This lacks comprehensive guidance.

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

create_draftA

Shortcut: save a post as a draft without publishing or scheduling it. Equivalent to create_post with status='draft'.

ParametersJSON Schema
NameRequiredDescriptionDefault
captionNoThe post text/caption. Can be overridden per-platform via platform_configurations.
social_accountsYesSocial account ids to publish to (from list_social_accounts). Required.
mediaNoMedia to attach (images/videos). Each item references a public URL β€” see upload_media.
external_idNoYour own reference id for this post, echoed back in results/webhooks.
platform_configurationsNoPer-platform overrides (Instagram Reels, X polls, TikTok privacy, YouTube title, etc.).
account_configurationsNoPer-ACCOUNT overrides (finer-grained than platform_configurations) β€” tweak caption/media/options for a single connected account id.

TDQS

A3.7/5.0
Behavior2/5

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

No annotations provided, so description must fully cover behavioral traits. It only states the core function (saving a draft) but omits details on side effects, permissions, error handling, or idempotency. This is insufficient for a mutation 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?

Extremely concise: two sentences that front-load the key purpose. Every word is necessary and no repetition of schema 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?

Given the complexity of the input schema (nested objects, 6 parameters) and no output schema, the description is adequate but incomplete. It tells the agent the tool's purpose but leaves gaps on expected return values and how drafts integrate with other tools (e.g., publishing later).

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 detailed parameter descriptions. The tool description adds marginal value by framing parameters in the context of drafting, but does not provide additional semantic information 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?

Clearly states it is a shortcut to save a post as a draft without publishing or scheduling, and explicitly equates it to create_post with status='draft'. This distinguishes it from sibling tools like create_post, publish_now, and schedule_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?

Provides clear context: use as a shortcut for drafting instead of create_post with status parameter. However, it does not explicitly state when not to use it or mention prerequisites like needing social accounts already listed.

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

create_media_upload_urlA

Get a signed URL to upload a media file. Returns an upload_url (PUT your bytes there) and the media URL to reference in a post. Prefer upload_media if you want the upload done for you in one step.

ParametersJSON Schema
NameRequiredDescriptionDefault
content_typeNoMIME type of the file you'll upload (e.g. 'image/jpeg', 'video/mp4').
file_nameNoOptional original file name.

TDQS

A4/5.0
Behavior3/5

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

No annotations present; description explains the basic flow (returns upload_url and media URL, PUT bytes) but omits details like URL expiration, authentication needs, or size limits.

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 concise sentences front-load the purpose, explain return values, and provide alternative tool guidance with no wasted words.

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?

Given no output schema, the description adequately covers return values and parameter usage, and contrasts with a sibling tool; lacks only minor details like URL expiry.

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 clear descriptions; description adds no extra meaning beyond the schema for the two parameters.

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?

Description clearly states the verb 'get' and resource 'signed URL for uploading a media file', and distinguishes from sibling upload_media by noting it returns a URL for manual upload.

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?

Explicitly suggests preferring upload_media for one-step upload, but does not elaborate on when not to use this tool or potential pitfalls.

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

create_postA

Create a social post across one or more connected accounts/platforms. This is the primary publishing tool. Set scheduled_at (ISO-8601) to schedule, status='draft' to save without publishing, or omit both to publish immediately. Use platform_configurations for per-network tweaks. For common cases the shortcuts publish_now / schedule_post / create_draft are simpler.

ParametersJSON Schema
NameRequiredDescriptionDefault
captionNoThe post text/caption. Can be overridden per-platform via platform_configurations.
social_accountsYesSocial account ids to publish to (from list_social_accounts). Required.
mediaNoMedia to attach (images/videos). Each item references a public URL β€” see upload_media.
external_idNoYour own reference id for this post, echoed back in results/webhooks.
platform_configurationsNoPer-platform overrides (Instagram Reels, X polls, TikTok privacy, YouTube title, etc.).
account_configurationsNoPer-ACCOUNT overrides (finer-grained than platform_configurations) β€” tweak caption/media/options for a single connected account id.
scheduled_atNoISO-8601 timestamp to schedule the post (e.g. '2026-07-01T14:30:00Z'). Omit to publish now.
statusNoExplicit status. Usually leave unset; use 'draft' to save without publishing.

TDQS

A4.3/5.0
Behavior3/5

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

With no annotations provided, the description must disclose behavioral traits. It covers the publish-schedule-draft flow but omits critical details such as what happens on partial failure, rate limits, required permissions, or response structure. The absence of error or return information limits transparency.

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 four sentences with no redundancy. It front-loads the core purpose, then logically proceeds to scheduling options, then shortcuts. Every sentence adds unique value, making it easy to parse quickly.

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?

Given the complexity (8 parameters, nested objects, no output schema), the description should cover what the tool returns (e.g., post ID, status). It omits this, leaving the agent unsure of the response format. However, it adequately covers the main use cases and references related tools (upload_media, list_social_accounts). Completeness is adequate but not strong.

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%, but the description adds significant semantic value beyond the schema. It explains the interplay between scheduled_at and status, describes platform_configurations as per-network tweaks, and clarifies that account_configurations are finer-grained than platform_configurations. This enables correct parameter use more effectively than schema alone.

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 clearly states 'Create a social post across one or more connected accounts/platforms' and labels it 'the primary publishing tool.' This distinguishes it from sibling tools like create_draft, publish_now, and schedule_post, which are explicitly mentioned as simpler alternatives for common cases.

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 description provides explicit guidance on when to use this tool versus shortcuts ('For common cases the shortcuts publish_now / schedule_post / create_draft are simpler'). It also explains how to configure immediate publish, scheduling, or draft mode using scheduled_at and status fields.

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

create_post_previewA

Generate a preview of how a post would appear on each target platform, without publishing it. Pass the same caption/media/social_accounts/platform_configurations you'd send to create_post. Great for a confirm-before-publish step.

ParametersJSON Schema
NameRequiredDescriptionDefault
captionNoThe caption to preview.
social_accountsNoSocial account ids to preview the post for.
mediaNoMedia to include in the preview.
platform_configurationsNoPer-platform overrides to reflect in the preview.
account_configurationsNoPer-account overrides to reflect in the preview ({ social_account_id, configuration }).

TDQS

A3.9/5.0
Behavior3/5

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

No annotations provided, so description carries full burden. It states no publishing occurs, implying read-only behavior. However, it does not disclose side effects, auth requirements, or return format. Basic disclosure but not comprehensive.

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: first states purpose, second gives usage and use case. No filler, efficiently conveys key 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?

No output schema, but description does not explain what the preview returns. For a preview tool, output format (e.g., rendered images or text) is important. Also, given nested parameters, more detail on how previews differ per platform would help.

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%, so baseline 3. Description adds context that parameters mirror create_post, which is helpful but not detailed. Schema already fully describes each parameter.

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 clearly states the tool generates a preview of how a post appears on each target platform without publishing. The verb 'Generate a preview' and resource 'post appearance on each target platform' are specific. It distinguishes from sibling create_post which actually publishes.

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?

Explicitly says 'without publishing it' and 'great for a confirm-before-publish step', indicating when to use. Mentions passing the same parameters as create_post, linking to the obvious alternative (create_post). No explicit when-not-to-use but clear context.

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

create_social_accountA

Manually create/connect a social account by supplying its platform and credentials/tokens. For the standard interactive OAuth flow, prefer create_auth_url instead.

ParametersJSON Schema
NameRequiredDescriptionDefault
platformYesPlatform to connect.
usernameNoAccount username/handle.
access_tokenNoOAuth access token for the account.
refresh_tokenNoOAuth refresh token, if applicable.
external_idNoThe platform's native account id, if you have it.
metadataNoAny additional credential/config fields the platform requires.

TDQS

A3.6/5.0
Behavior2/5

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

No annotations provided, so description carries full burden. Does not disclose behavioral traits such as whether it overwrites existing connections, required permissions, rate limits, or what happens on failure. Only states 'create/connect' without further context.

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 concise sentences, front-loaded with primary purpose and immediate alternative guidance. No extraneous information.

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?

No output schema, no annotations. Description does not mention return values, error behavior, idempotency, or prerequisites like authentication state. For a tool with 6 parameters and nested objects, this is insufficient for full autonomous 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?

Schema covers all 6 parameters with descriptions (100% coverage), so baseline is 3. Description adds context that credentials/tokens are for manual connection, but does not add new detail beyond 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?

Clearly states 'manually create/connect a social account' with specific verb and resource. Distinguishes from sibling 'create_auth_url' by contrasting manual vs OAuth flow.

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?

Explicitly advises when to use the alternative 'create_auth_url' for standard OAuth flow. Could mention other siblings like 'disconnect_social_account' but is adequate for primary guidance.

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

create_webhookB

Create a webhook that POSTs to your HTTPS endpoint when the chosen events occur (e.g. post published, post errored). Subscribe to specific event types or all of them.

ParametersJSON Schema
NameRequiredDescriptionDefault
urlYesHTTPS endpoint that will receive event payloads.
event_typesNoEvent types to subscribe to (e.g. 'social.post.created', 'social.post.updated', 'social.post.result.created'). Omit to receive all events.

TDQS

B3.4/5.0
Behavior2/5

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

No annotations present; description carries full burden. Mentions POST behavior and event subscription but lacks details on security (HTTPS required), rate limits, webhook verification, or what happens on failure. Could be more transparent.

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, front-loaded with purpose. Every sentence adds value. No wasted words.

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?

Adequate for a simple creation tool with two parameters. Covers what it does and how to subscribe. Could mention return value (e.g., webhook ID) but not critical. No output schema, so description is 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 100%, baseline 3. Description adds context that omitting event_types subscribes to all events, which is useful beyond schema. For url, description restates 'HTTPS endpoint' but no new meaning.

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?

Clearly states the tool creates a webhook that POSTs to an HTTPS endpoint on events. Examples provided (e.g., post published). Doesn't explicitly differentiate from sibling webhook tools but the action is clear.

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?

No explicit when-to-use or when-not-to-use. Implies usage by describing subscription options (specific or all events). No reference to alternatives like update_webhook or delete_webhook.

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

delete_postA

Delete a social post by id (drafts, scheduled or published records).

ParametersJSON Schema
NameRequiredDescriptionDefault
idYesSocial post id to delete.

TDQS

A4/5.0
Behavior3/5

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

No annotations are provided, so the description carries the full burden. It confirms the tool can delete drafts, scheduled, and published posts, but does not disclose whether deletion is permanent, if it triggers webhooks, or any other side effects. The description is minimally transparent.

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 sentence that efficiently communicates the tool's purpose and scope with no unnecessary words. It is front-loaded and 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 simple tool with one parameter and no output schema, the description adequately covers the purpose and scope. It could mention irreversibility or confirmation steps, but the current level is sufficient for common understanding.

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% with one parameter 'id' described as 'Social post id to delete.' The description adds context by specifying the type of posts (drafts, scheduled, published) that can be deleted, which adds meaning 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?

The description clearly states the verb ('Delete'), the resource ('social post'), and specifies the scope ('by id (drafts, scheduled or published records)'). It distinguishes from sibling tools that create, update, read, or list posts.

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 the tool is used when you want to delete a social post, but it does not provide explicit guidance on when to use this tool versus alternatives (e.g., unpublish, archive) or mention any prerequisites or restrictions beyond what is stated.

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

delete_webhookB

Delete a webhook by id.

ParametersJSON Schema
NameRequiredDescriptionDefault
idYesWebhook id to delete.

TDQS

B3.2/5.0
Behavior2/5

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

No annotations provided, so description must disclose behavior. It only says 'Delete' with no details on irreversibility, required permissions, or side effects. Minimal behavioral context.

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?

Single sentence, no wasted words, front-loaded. However, it is very brief and could include more useful information without becoming verbose.

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?

Tool has low complexity (1 param, no output schema). Description is adequate for basic use but lacks behavioral context like whether deletion is irreversible. Annotations 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 coverage is 100% and describes the id parameter. Description repeats 'by id' and adds no extra meaning beyond the schema. 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?

Description clearly states verb 'Delete' and resource 'webhook' with identifier 'by id'. It is specific and distinguishes from sibling tools like create_webhook, update_webhook, and list_webhooks.

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 tool versus alternatives such as update_webhook or create_webhook. No prerequisites or consequences mentioned.

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

disconnect_social_accountA

Disconnect a social account β€” revokes Post for Me's access. The account stops being usable for posting until reconnected via create_auth_url.

ParametersJSON Schema
NameRequiredDescriptionDefault
idYesSocial account id to disconnect.

TDQS

A4.3/5.0
Behavior4/5

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

No annotations provided, so description carries full burden. Discloses that account becomes unusable and reconnection path. Does not contradict any annotations. Could mention if data is preserved or deleted, but acceptable for this 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?

Two sentences, no wasted words. Front-loaded with key action and effect. Very concise.

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?

Tool is simple (1 param, no output schema). Description covers purpose, effect, and reconnection. Complete for its complexity.

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 'id' with schema description. Schema coverage is 100%, so description adds no additional meaning beyond schema. Baseline score 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?

Clearly states the verb 'disconnect' and resource 'social account'. Explains outcome: revokes access and account becomes unusable until reconnected. Distinguishes from siblings like create_social_account.

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 when to use (to revoke access) and consequence (account unusable until reconnected via create_auth_url). Lacks explicit exclusionary guidance, but context is clear.

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

get_postA

Get a single social post by id, including its status, caption, media and target accounts.

ParametersJSON Schema
NameRequiredDescriptionDefault
idYesSocial post id.

TDQS

A4.2/5.0
Behavior4/5

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

The description discloses what the response includes (status, caption, media, target accounts), providing good behavioral insight. Since no annotations are present, the description carries the full burden, and it does so adequately. However, it does not mention any side effects or additional constraints.

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, clear sentence with no filler. Every word contributes to understanding the tool's function.

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 single-parameter read tool with no output schema, the description sufficiently explains what the tool does and what is returned. It could mention that the output includes the full post object, but the listed fields cover the essentials.

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?

The schema covers the single parameter 'id' with description 'Social post id.' The description adds 'by id' but no further detail on format or validation, so value beyond schema is minimal, establishing a baseline 3.

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 clearly states the verb 'Get' and the resource 'single social post by id', listing the included fields (status, caption, media, target accounts). This distinguishes it from sibling tools like list_posts (list) and create_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?

The description implies that this tool should be used when you have a specific post id and need detailed information. However, it does not explicitly exclude cases or mention alternatives like list_posts for retrieving multiple posts.

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

get_post_resultA

Get a single post result by id β€” the detailed outcome of one post on one platform, including the native post URL/id and any error message.

ParametersJSON Schema
NameRequiredDescriptionDefault
idYesSocial post result id.

TDQS

A4.2/5.0
Behavior4/5

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

No annotations provided, so description carries full burden. Discloses return content (native URL, error message). Implies read-only but doesn't explicitly state. Adequate for non-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?

Single sentence concise (25 words). Front-loaded with action and resource, then details. No wasted words.

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?

Tool is simple (1 param, no output schema). Description covers what the tool gets and what it returns. Could mention read-only nature but not necessary for 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?

Schema coverage is 100% with a simple 'id' parameter. Description adds context ('by id', 'post result id') but no additional formatting or source details. 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?

Description clearly states verb 'Get', resource 'post result', and specifies scope 'single' and content 'including native post URL/id and error message'. Distinguishes from siblings like 'get_post' and 'list_post_results'.

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?

Implies usage when a specific post result ID is known. Does not explicitly mention alternatives, but the purpose is clear enough to differentiate from listing or getting the post itself.

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

get_social_accountB

Get a single connected social account by id, including platform, username and status.

ParametersJSON Schema
NameRequiredDescriptionDefault
idYesSocial account id.

TDQS

B3.4/5.0
Behavior2/5

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

No annotations provided, so description carries full burden. Only states it returns fields; no mention of side effects, permissions, error handling, or conditions (e.g., what if id not found). Minimal behavioral 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?

Single concise sentence that front-loads the action and resource. No fluff.

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?

Simple tool with one parameter; description covers purpose and return fields. Lacks explicit error/response info, but adequate for a basic read operation given sibling context.

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 parameter 'id' described. Tool description does not add extra meaning beyond the schema for the parameter, but listing return fields adds context. 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?

Description clearly states the verb 'Get', the resource 'connected social account', and specifies return fields (platform, username, status). Distinguishes from sibling tools like list_social_accounts and disconnect_social_account.

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 tool versus alternatives like list_social_accounts or update_social_account. No mention of prerequisites or context.

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

get_webhookB

Get a single webhook by id.

ParametersJSON Schema
NameRequiredDescriptionDefault
idYesWebhook id.

TDQS

B3.4/5.0
Behavior3/5

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

With no annotations, the description only states it is a get operation, implying read-only behavior. No side effects, permissions, or return format are disclosed, which is adequate for a simple tool but not thorough.

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 description is very concise with a single clause. It is front-loaded and to the point, though it could be more structured.

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?

Given the tool's simplicity (one parameter, no output schema), the description is minimally sufficient. However, it lacks context about the webhook object or return values, which could be helpful.

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?

The input schema provides 100% coverage with a description for the 'id' parameter. The tool description adds no additional semantic meaning beyond what is already in 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?

The description clearly states the verb 'Get', the resource 'webhook', and the scope 'by id'. It is specific and distinguishes from sibling tools like create_webhook, delete_webhook, and list_webhooks.

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 is provided on when to use this tool versus alternatives such as list_webhooks. The description does not mention prerequisites or context.

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

list_account_feedsA

ANALYTICS: list the recent feed for a connected account β€” the posts on that platform, optionally with engagement metrics (likes, comments, views, etc.). Use this to pull performance data for a given account.

ParametersJSON Schema
NameRequiredDescriptionDefault
social_account_idYesThe connected social account id to read the feed of.
limitNoMaximum number of items to return per page.
offsetNoNumber of items to skip (pagination offset).

TDQS

A3.9/5.0
Behavior3/5

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

No annotations provided, so the description must cover behavior. It implies a read operation ('ANALYTICS') and mentions returning performance metrics, but does not explicitly state it is read-only or describe pagination behavior beyond schema parameters.

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 two sentences with no wasted words. The front-loaded 'ANALYTICS' label immediately conveys the domain, and each sentence serves a purpose.

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?

No output schema, so description should explain return format. It mentions fields like likes, comments, views but not structure. Given moderate complexity, it is adequate but not 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 coverage is 100%, so baseline is 3. The description adds minimal extra meaning beyond parameter names, e.g., 'connected account' and 'performance data,' but does not detail parameter formats or 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?

The description clearly states it lists the recent feed for a connected account with optional engagement metrics. The verb 'list' and resource 'account_feeds' are specific, and it distinguishes from siblings like 'list_posts' by focusing on performance data for a given account.

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

Usage Guidelines4/5

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

The description explicitly says 'Use this to pull performance data for a given account,' which provides clear context. It does not explicitly mention when not to use it or compare to siblings, but the purpose is well-defined.

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

list_post_resultsA

ANALYTICS: list publishing results across posts β€” each row is the outcome of one post on one platform (success/error, native post id & URL). Filter by social_post_id to see how a specific post fared on every target account.

ParametersJSON Schema
NameRequiredDescriptionDefault
social_post_idNoFilter results to a single social post id.
limitNoMaximum number of items to return per page.
offsetNoNumber of items to skip (pagination offset).

TDQS

A4.2/5.0
Behavior3/5

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

No annotations are provided, so the description carries full burden. It describes the result row structure but does not disclose whether the operation is read-only, pagination behavior beyond param names, or any rate limits/auth requirements.

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, front-loaded with purpose and result format, followed by filter guidance. Every word is efficient and adds value, with no 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?

Given no output schema, the description adequately outlines the row structure (success/error, native post id & URL) and filter usage. However, it omits other potential fields and does not explain pagination handling beyond the limit/offset params.

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%. The description adds meaningful context for social_post_id ('see how a specific post fared on every target account') beyond the schema description. No additional detail for limit/offset, but baseline is 3 and this slight improvement warrants a 4.

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 clearly states it lists publishing results per post per platform, with details like success/error and native IDs. It distinguishes from sibling tools like list_posts and get_post_result by focusing on outcomes across platforms.

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

Usage Guidelines4/5

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

The 'ANALYTICS' prefix and filter guidance provide clear usage context. It explains when to use the filter (for a specific post's results) but does not explicitly state when not to use it or mention alternatives among siblings.

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

list_postsA

List social posts, optionally filtered by status (draft/scheduled/published/error) and paginated. Use this to review queued, scheduled or published content.

ParametersJSON Schema
NameRequiredDescriptionDefault
statusNoFilter by post status.
external_idNoFilter by your own external_id.
limitNoMaximum number of items to return per page.
offsetNoNumber of items to skip (pagination offset).

TDQS

A3.9/5.0
Behavior3/5

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

No annotations are provided, so the description carries full transparency burden. It mentions filtering and pagination but doesn't disclose potential side effects, rate limits, or ordering behavior. It's adequate for a read-only list operation but lacks depth on return format or constraints.

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 concise sentences, front-loaded with the main action and optional filters. No redundant 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?

No output schema, so the description should hint at return values. It doesn't specify what fields are returned (e.g., post content, timestamps). While not critical, it leaves some ambiguity for the agent. Adequate but could be more 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 coverage is 100% with clear parameter descriptions. The description adds minimal new meaning beyond restating status filtering and pagination. Baseline 3 is appropriate as the schema already documents all parameters sufficiently.

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 clearly states the tool lists social posts with optional status filtering and pagination, using specific verb 'List' and resource 'social posts'. It distinguishes from siblings like get_post (single post) and create_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?

The description suggests using this tool to review queued, scheduled, or published content, providing a clear use case. However, it doesn't explicitly mention when not to use it or contrast with sibling tools like list_post_results or list_account_feeds.

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

list_social_accountsA

List the social accounts connected to your Post for Me workspace. Optionally filter by platform (instagram, tiktok, x, ...). Returns account ids you pass to create_post via social_accounts.

ParametersJSON Schema
NameRequiredDescriptionDefault
platformNoFilter accounts by platform.
usernameNoFilter by account username/handle.
idNoFilter to specific social account ids.
limitNoMaximum number of items to return per page.
offsetNoNumber of items to skip (pagination offset).

TDQS

A4.2/5.0
Behavior3/5

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

No annotations are provided, so the description must disclose behavioral traits. It implies a read-only operation ("list") but does not explicitly state that it has no side effects, requires no special permissions, or other relevant behaviors. The description is adequate but not fully transparent at the lower end of the scale.

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 two concise sentences, front-loaded with the core purpose, and contains no redundant information. Every word serves a purpose.

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?

The description covers the primary output (account ids) and provides necessary context for integration with create_post. However, it does not mention pagination parameters (limit/offset) or the full response structure beyond ids. Given the absence of an output schema, a slightly more complete description would be beneficial.

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 description coverage is 100%, so baseline is 3. The description adds value by explaining the overall workflow (returning ids for create_post) and contextualizing the platform parameter with an example. This goes beyond the schema's parameter descriptions.

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 clearly states the tool lists social accounts connected to the workspace, specifies optional platform filtering, and identifies the context of use (returning ids for create_post). This distinguishes it well from sibling tools like get_social_account or list_account_feeds.

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

Usage Guidelines4/5

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

The description provides clear context for when to use the tool (to get account ids for create_post) and mentions optional filters. However, it does not explicitly state when not to use it or list alternatives, though the context is sufficient.

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

list_webhooksA

List the webhooks configured in your workspace.

ParametersJSON Schema
NameRequiredDescriptionDefault
limitNoMaximum number of items to return per page.
offsetNoNumber of items to skip (pagination offset).

TDQS

A3.5/5.0
Behavior2/5

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

No annotations provided, so the description must fully cover behavioral aspects. It only states 'list' which implies a read operation, but lacks details on auth requirements, rate limits, or what happens when no webhooks are configured.

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 concise sentence with no unnecessary words, effectively communicating the tool's purpose.

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 tool has no output schema, so the description should explain the return format. It does not describe what properties of webhooks are returned or how pagination is conveyed. For a simple list tool, this is a notable gap but not critical given the parameter documentation.

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 descriptions for both limit and offset. The tool description adds no additional meaning beyond what the schema already provides.

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 clearly states the verb 'list' and the resource 'webhooks', and specifies the scope 'in your workspace'. It is distinct from sibling tools like create_webhook, get_webhook, etc.

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?

No explicit guidance on when to use this tool vs alternatives. Usage is implied as listing all webhooks, but no exclusions or prerequisites are mentioned.

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

postforme_rawA

Call any Post for Me REST endpoint directly (escape hatch for full API coverage). Provide the HTTP method and the FULL path INCLUDING the version segment (e.g. '/v1/social-posts' or '/v1/social-accounts/acc_xxx'), plus optional query params and JSON body. Use this only when no dedicated tool exists. Auth, retries and rate-limiting are handled for you. Reference: https://api.postforme.dev/docs

ParametersJSON Schema
NameRequiredDescriptionDefault
methodYesHTTP method.
pathYesFull path including version, starting with '/'. Example: '/v1/social-posts'.
paramsNoQuery string parameters.
bodyNoRequest body (for POST/PUT/PATCH).

TDQS

A4.3/5.0
Behavior3/5

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

Without annotations, the description carries full burden. It mentions handled auth/retries/rate-limiting but does not disclose potential destructive actions (e.g., DELETE) or error handling behavior. Some transparency, but gaps remain.

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 sentences with no fluff. Front-loaded with main purpose. Each sentence adds necessary detail: when to use, how to specify path, optional components, and handled aspects. Highly 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?

For a raw API tool with no output schema, the description covers usage and constraints, but lacks mention of return value shape or error responses. The reference to docs partially compensates, but completeness could be higher.

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%, baseline is 3. Description adds value by emphasizing the requirement for full path including version segment, providing concrete examples, and clarifying optional params/body. This goes beyond 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?

The description clearly states the tool is an escape hatch to directly call any REST endpoint, specifying the verb 'call' and the resource as 'any Post for Me REST endpoint'. It effectively distinguishes from siblings by stating 'use this only when no dedicated tool exists'.

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 states when to use ('only when no dedicated tool exists') and that auth, retries, and rate-limiting are handled, providing clear guidance on context and alternatives.

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

publish_nowA

Shortcut: publish a post immediately to the given accounts. Equivalent to create_post with no scheduled_at and status='published'.

ParametersJSON Schema
NameRequiredDescriptionDefault
captionNoThe post text/caption. Can be overridden per-platform via platform_configurations.
social_accountsYesSocial account ids to publish to (from list_social_accounts). Required.
mediaNoMedia to attach (images/videos). Each item references a public URL β€” see upload_media.
external_idNoYour own reference id for this post, echoed back in results/webhooks.
platform_configurationsNoPer-platform overrides (Instagram Reels, X polls, TikTok privacy, YouTube title, etc.).
account_configurationsNoPer-ACCOUNT overrides (finer-grained than platform_configurations) β€” tweak caption/media/options for a single connected account id.

TDQS

A4/5.0
Behavior3/5

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

The description indicates it creates a post immediately (mutative), but without annotations, it lacks details on side effects, rate limits, or reversibility. It adds context over annotations (none provided) but could be more explicit.

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, perfectly front-loaded, and every word is valuable. No redundancy or fluff.

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 tool with complete schema coverage, the description provides the key differentiator and a reference to create_post for details. Lacks mention of return value (e.g., post ID), but overall 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%, so the schema already documents all parameters. The description adds no parameter-specific meaning beyond the schema, meeting the baseline of 3.

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 clearly states 'publish a post immediately' and positions it as a shortcut equivalent to create_post with specific parameters, distinguishing it from sibling tools like create_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?

It explains when to use (immediate publishing) and how it relates to create_post, providing clear context for usage, though it does not explicitly list when not to use.

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

reschedule_postA

Shortcut: move a scheduled post to a new time. Equivalent to update_post with only scheduled_at set.

ParametersJSON Schema
NameRequiredDescriptionDefault
idYesSocial post id to reschedule.
scheduled_atYesNew ISO-8601 timestamp to publish at (e.g. '2026-07-02T09:00:00Z').

TDQS

A3.7/5.0
Behavior2/5

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

No annotations are provided, so the description must fully convey behavioral traits. It states the tool moves a scheduled post, implying mutation, but does not disclose what happens if the post is not in a scheduled state, whether it requires specific permissions, or what the return value is. The description is too brief to provide adequate transparency.

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 consists of two terse sentences, front-loading the core purpose ('move a scheduled post to a new time') and immediately providing clarifying equivalence. Every word earns its place with no waste.

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?

Given the low complexity (2 params, no output schema, no annotations), the description covers the essential action but lacks details on return values or side effects. It is minimally adequate but not comprehensive for an agent to fully understand consequences.

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?

The input schema covers both parameters with clear descriptions ('id' and 'scheduled_at'), achieving 100% coverage. The description adds no additional meaning beyond the schema, earning the baseline score of 3.

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 clearly states the verb 'move' and resource 'scheduled post' with a specific purpose: rescheduling to a new time. It explicitly distinguishes itself from 'update_post' by noting equivalence with only 'scheduled_at' set, which differentiates it from the more general update tool.

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

Usage Guidelines4/5

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

The description frames the tool as a 'Shortcut' implying convenience, and mentions equivalence to update_post, suggesting it is a specialized alternative. However, it does not explicitly state when to use this tool over siblings like 'schedule_post' or 'publish_now', nor does it provide exclusions.

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

schedule_postC

Shortcut: schedule a post for a future time. Equivalent to create_post with scheduled_at set and status='scheduled'.

ParametersJSON Schema
NameRequiredDescriptionDefault
captionNoThe post text/caption. Can be overridden per-platform via platform_configurations.
social_accountsYesSocial account ids to publish to (from list_social_accounts). Required.
mediaNoMedia to attach (images/videos). Each item references a public URL β€” see upload_media.
external_idNoYour own reference id for this post, echoed back in results/webhooks.
platform_configurationsNoPer-platform overrides (Instagram Reels, X polls, TikTok privacy, YouTube title, etc.).
account_configurationsNoPer-ACCOUNT overrides (finer-grained than platform_configurations) β€” tweak caption/media/options for a single connected account id.
scheduled_atYesISO-8601 timestamp for when to publish (e.g. '2026-07-01T14:30:00Z'). Required.

TDQS

C2.9/5.0
Behavior2/5

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

With no annotations, the description carries full burden. It only states the equivalence and scheduling, but omits behavioral traits like error handling for past dates, whether the post is modifiable, or if it validates social_accounts connectivity. Lacks depth for a mutation 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?

Single sentence, no waste, front-loaded with purpose. Could be slightly expanded without harming conciseness, but currently efficient.

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?

Despite complex nested schema and no output schema, description is very thin. Doesn't mention media, platform_configurations, or per-account overrides. Lacks completeness for an agent to fully understand what the tool does beyond the shortcut equivalence.

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 already covers all 7 parameters with 100% description. The description adds no extra parameter meaning beyond implying scheduled_at is used. 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?

Clearly states it's a shortcut to schedule a post for a future time and names the equivalent create_post call. Distinguishes from create_post by specifying the default scheduled_at and status='scheduled'. However, it doesn't contrast with other sibling tools like publish_now or create_draft.

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?

Describes itself as a shortcut but gives no when-not-to-use guidance, no prerequisites, and no comparison to alternatives beyond create_post. Agent may not know when to prefer this over create_post with manual scheduled_at.

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

update_postA

Update an existing post by id β€” change the caption, media, target accounts, schedule or platform_configurations. Works on drafts and scheduled posts.

ParametersJSON Schema
NameRequiredDescriptionDefault
idYesSocial post id to update.
captionNoNew caption/text.
social_accountsNoReplace the set of target social account ids.
mediaNoReplace the attached media.
scheduled_atNoNew ISO-8601 schedule time.
statusNoNew status.
platform_configurationsNoReplace per-platform overrides.
account_configurationsNoReplace per-account overrides ({ social_account_id, configuration }).

TDQS

A3.5/5.0
Behavior2/5

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

No annotations provided, so description carries full burden. It discloses that updates apply to drafts and scheduled posts, but does not specify permissions, side effects (e.g., changing a scheduled post might affect its schedule), or that updating published posts is not allowed. Minimal behavioral context.

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?

Single sentence with a dash and period, no fluff. Clearly states the core action and scope. Front-loaded with key 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?

Covers main use cases and eligibility (drafts/scheduled), but missing details like required id, behavior on omitted parameters (remain unchanged vs reset), and whether updating scheduled posts triggers any side effects. For a complex tool with 8 params and nested objects, more completeness would help.

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 each parameter having a clear description. The tool description only lists high-level categories (caption, media, etc.) without adding extra meaning beyond the schema. 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 clearly states 'Update an existing post by id' and lists the changable fields (caption, media, target accounts, schedule, platform_configurations). It distinguishes from siblings like create_post, delete_post, and schedule_post by focusing on modifying existing posts.

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 mentions 'Works on drafts and scheduled posts', implying the post must be in one of those statuses, but does not explicitly state when to use vs alternatives like schedule_post or publish_now. No exclusions or alternatives given.

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

update_social_accountB

Update a connected social account (e.g. refresh stored credentials or metadata).

ParametersJSON Schema
NameRequiredDescriptionDefault
idYesSocial account id to update.
usernameNoNew username/handle.
access_tokenNoNew OAuth access token.
refresh_tokenNoNew OAuth refresh token.
metadataNoFields to merge into the account metadata.

TDQS

B3.2/5.0
Behavior2/5

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

With no annotations provided, the description only says 'Update', implying mutation, but does not disclose authentication requirements, idempotency, or error behavior.

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?

Single sentence with an example, no redundant words, and the key action is front-loaded.

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?

No output schema or annotations, and the description does not explain return values, error handling, or the behavior of the optional parameters, making it incomplete for a mutation tool with multiple fields.

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 individual parameter descriptions. The description adds the context of refreshing credentials/metadata, but this aligns closely with the parameter names, offering limited added value 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?

The description clearly states 'Update a connected social account' with the example of refreshing credentials or metadata, distinguishing it from create, disconnect, and get sibling tools.

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 explicit guidance on when to use this tool versus alternatives like create_social_account or disconnect_social_account, leaving the agent to infer from context.

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

update_webhookB

Update a webhook's URL or subscribed event types.

ParametersJSON Schema
NameRequiredDescriptionDefault
idYesWebhook id to update.
urlNoNew HTTPS endpoint.
event_typesNoNew set of event types to subscribe to.

TDQS

B3.4/5.0
Behavior2/5

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

With no annotations, the description bears full burden of behavioral disclosure. It only states that the tool updates a webhook, but does not reveal side effects, idempotency, required permissions, or what happens to unspecified 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?

The description is a single, efficient sentence with no redundancy. Every word contributes to conveying the tool's purpose.

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?

Despite good schema coverage, the description lacks details on return values or success behavior. Given the absence of an output schema and annotations, the tool's overall behavior is under-explained.

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?

The input schema has 100% description coverage for all three parameters. The description adds minimal extra meaning by naming the updatable attributes, but does not clarify formats or constraints 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?

The description clearly identifies the action (update), the resource (webhook), and the specific updatable attributes (URL or subscribed event types). It distinguishes this tool from siblings like create_webhook and delete_webhook.

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 for modifying webhook URL or event types, but it provides no explicit guidance on when to use this tool versus alternatives, nor does it mention prerequisites or exclusions.

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

upload_mediaA

One-step media upload: provide a local file path OR a public URL, and this generates a signed URL, uploads the bytes, and returns { media_url } ready to drop into create_post/publish_now/schedule_post media. Use this whenever you need to attach an image or video.

ParametersJSON Schema
NameRequiredDescriptionDefault
file_pathNoAbsolute path to a local image/video file to upload.
source_urlNoPublic URL of media to fetch and re-upload (alternative to file_path).
content_typeNoOverride the MIME type (auto-detected from extension otherwise).

TDQS

A4.2/5.0
Behavior3/5

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

No annotations provided, so description must convey all behavioral traits. Describes the upload process and auto-detection of MIME type, but omits details like file size limits, supported formats, async behavior, or whether the operation is destructive. Adequate but not comprehensive.

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: first explains the process, second gives usage guidance. Every word earns its place. No redundancy or fluff. Perfectly concise.

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?

No output schema, but description specifies return value { media_url }. Explains parameter interaction (mutual exclusivity implied). Missing details on file size limits, supported formats, or scalability. Fairly complete for a straightforward upload tool.

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 covers all three parameters with basic descriptions. Description adds value by explaining that file_path and source_url are alternatives (OR), and that content_type overrides auto-detection. Also relates output to other tools. Provides meaningful context beyond 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?

Description explicitly states 'One-step media upload' which is specific verb plus resource. It details the process: generates signed URL, uploads bytes, returns media_url ready for other tools. Distinguishes from sibling 'create_media_upload_url' by being a complete upload step.

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?

Clearly states 'Use this whenever you need to attach an image or video.' Mentions the output is ready for create_post/publish_now/schedule_post. Lacks explicit when-not-to-use or alternative comparisons, but the usage context is well-defined.

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

TDQS

A3.7/5.0
Disambiguation5/5

Each tool has a clearly distinct purpose. Shortcuts like publish_now and schedule_post are explicitly documented as equivalents to create_post parameters, avoiding ambiguity. Similarly, upload_media and create_media_upload_url serve different workflows (one-step vs signed URL). No two tools are easily confused.

Naming Consistency4/5

The vast majority follow a consistent verb_noun pattern (create_, get_, list_, update_, delete_). The exception is 'postforme_raw', which breaks the pattern but serves as a generic escape hatch. Also 'list_account_feeds' mixes noun order, but overall the naming is predictable.

Tool Count4/5

With 27 tools, the set is on the larger side but justified by the breadth of functionality: full CRUD for posts, accounts, webhooks, plus analytics, media upload, shortcuts, and a raw API endpoint. It covers all necessary operations without feeling bloated.

Completeness5/5

The tool surface covers the entire lifecycle of social media posting: account connection, post creation/scheduling/publishing, previews, updates, deletion, analytics, media upload, and webhooks. The inclusion of 'postforme_raw' ensures no API endpoint is inaccessible, making the set fully complete.

Maintenance

ActivityInactive
ResponsivenessUnresponsive

Resources

Unclaimed servers have limited discoverability.

Looking for Admin?

If you are the server author, to access and configure the admin panel.

Related MCP Connectors

Related MCP Servers

  • A
    license
    A
    quality
    B
    maintenance
    MCP server for Publer social media management API, enabling AI assistants to schedule posts, upload media, pull analytics, and manage accounts across 15+ social networks.
    15
    70
    21
    MIT
  • A
    license
    Not graded
    quality
    C
    maintenance
    A full social media management MCP server enabling post, read, schedule, and analyze across Facebook, Instagram, LinkedIn, X/Twitter, Pinterest, and YouTube from any MCP-compatible AI client.
    MIT
  • A
    license
    A
    quality
    B
    maintenance
    MCP server to manage social media accounts from AI assistants, enabling post creation, scheduling, publishing, and media uploads across multiple platforms.
    13
    166
    1
    MIT
  • A
    license
    Not graded
    quality
    C
    maintenance
    MCP server for managing social media posts across multiple platforms using the Postiz API. Supports creating, updating, deleting posts, and generating videos.
    60
    2
    MIT

Latest Blog Posts

MCP directory API

We provide all the information about MCP servers via our MCP API.

curl -X GET 'https://glama.ai/api/mcp/v1/servers/helbertparanhos/postforme-mcp-pro'

If you have feedback or need assistance with the MCP directory API, please join our Discord server