Fuxux
Server Details
Schedule and manage social posts on 14 platforms, including Telegram and Slack: list posts, view the queue, create, edit, reschedule, and delete posts.
- Status
- Healthy
- Uptime
- 90.2% over 42 days
- OAuth
- Works in Glama
- Last Tested
- Transport
- Streamable HTTP · MCP 2025-11-25
- URL
- ChatGPT
- –
- Claude
- Fuxux
TDQS
Scored across 9 tools
Tool purposes are largely distinct: create/update/delete/get/list_posts map to clear post lifecycle operations, while analytics, dashboard, accounts, and whoami have separate scopes. There is minor overlap between get_dashboard's upcoming posts and list_posts, and between dashboard/analytics summary stats, but descriptions make intended use clear.
Eight of nine names use a snake_case verb_noun pattern (create_post, get_analytics, list_posts, etc.). whoami breaks the pattern as an identity command, so naming is mostly consistent with a minor deviation.
Nine tools are well-scoped for a social publishing/analytics connector; each covers a distinct operation without obvious excess. This fits comfortably in the 3–15 appropriate range.
The set covers the full post lifecycle (create, list, get, update, delete), connected accounts, analytics, dashboard, and connection identity. No obvious dead ends for the stated social publishing workflow; limitations like platform-side deletion are documented rather than missing operations.
Available Tools
9 toolscreate_postCreate postADestructiveInspect
Create a post: per-platform captions, optional prompt, optional scheduled_at (ISO, future), optional media_urls (strings). Without scheduled_at or draft, this publishes immediately to the connected social platforms. Set draft: true to save it for the user to review in Fuxux instead; nothing is published. TikTok posts go to the creator's TikTok inbox unless the target has tiktok_privacy_level, which the user must choose.
| Name | Required | Description | Default |
|---|---|---|---|
| draft | No | Save as a draft instead of publishing or scheduling (can't be combined with scheduled_at) | |
| prompt | No | Optional note on the idea behind the post (max 500 chars). Stored with the post for reference; it is not published. | |
| targets | No | Which accounts to post to. Without it, each captioned platform posts to its first connected account. Reddit isn't supported. | |
| captions | Yes | Map of platform id to caption text. Platform ids: twitter, instagram, linkedin, facebook, tiktok, youtube, bluesky, threads, pinterest, discord, kick, twitch, telegram, slack | |
| media_urls | No | Up to 4 public https image/video URLs to attach | |
| scheduled_at | No | ISO datetime with a time zone (Z or an offset such as +01:00; convert the user's local time first); if set, post is scheduled instead of published immediately |
Output Schema
| Name | Required | Description |
|---|---|---|
| post | Yes | The created post |
| results | No | Per-platform outcome; present only when published immediately |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
Annotations flag destructiveHint=true and openWorldHint=true, but the description adds the concrete consequence: the post goes live on connected social platforms right away unless draft or scheduled_at is set. It also discloses the TikTok-specific behavior (goes to the creator's inbox unless tiktok_privacy_level is supplied) and that the agent must not choose privacy level itself.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
Front-loads the core resource and fields, then the publishing behavior, then platform caveats — a sensible ordering. The final TikTok sentence is dense and slightly convoluted, but each clause carries distinct operational information.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
For a mutation tool with a nested targets object and an output schema, the description covers the critical decisions (publish vs draft vs schedule, TikTok privacy handoff, media limits). It leaves the targets default behavior to the schema, which is acceptable given full coverage there.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Schema coverage is 100%, so every parameter already has documentation; the description largely restates it (prompt optional, media_urls as strings, scheduled_at ISO and future). It adds a little prioritization by calling out the publish-vs-draft-vs-schedule interaction, but no new semantics for nested target fields.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
Opens with a specific verb+resource ("Create a post") and immediately enumerates what a post is composed of: per-platform captions, optional prompt, optional scheduled_at, optional media_urls. The verb alone separates it cleanly from the sibling update_post and delete_post.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
Gives explicit mode-selection rules: no scheduled_at and no draft means immediate publishing, draft:true means nothing is published, and scheduled_at means scheduling. It does not name siblings (e.g. use update_post to edit an existing post), so the when-not-to-use side is only implied.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
delete_postDelete postADestructiveInspect
Delete a post from Fuxux. A draft or scheduled post will then never publish. For an already-published post this removes only Fuxux's record; it does NOT delete it from the social platform. Fails while the post is publishing.
| Name | Required | Description | Default |
|---|---|---|---|
| id | Yes | Post id (from list_posts or create_post) |
Output Schema
| Name | Required | Description |
|---|---|---|
| success | Yes |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
Annotations only flag destructiveHint=true and idempotentHint=false; the description goes well beyond them by disclosing exactly what is destroyed in each case (draft/scheduled will never publish; published posts lose only the Fuxux record, not the platform copy) and a concrete failure mode. This is precisely the kind of consequence detail a destructive tool needs.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
Four short sentences, each carrying distinct decision-relevant information: the action, the draft/scheduled consequence, the published-post limitation, and the failure case. Front-loaded with the core action and no filler.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
For a one-parameter destructive tool with an output schema, the description covers everything the agent needs: side effects per post state, the key non-obvious limitation (no platform deletion), and the in-flight publishing failure. Return values are handled by the output schema, so nothing material is missing.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
There is a single parameter with 100% schema description coverage, and the schema already tells the agent it is a post UUID sourced from list_posts or create_post. The description adds no additional meaning about the id, so the baseline 3 applies.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
States a specific verb and resource ("Delete a post from Fuxux") and immediately sharpens the scope by explaining that deletion means different things for draft/scheduled vs already-published posts. An agent can distinguish this from update_post or get_post without opening any schema.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
Usage is implied rather than stated: the agent learns the effect of deleting in each post state, but there is no explicit when-to-use guidance or named alternative (e.g., use update_post to unpublish, or the platform's own tools to remove a live post). The failure condition "Fails while the post is publishing" is useful operational context but is not a routing rule.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
get_analyticsGet analyticsARead-onlyInspect
Read-only post performance for the current Fuxux workspace: posts published, success rate, likes, comments, shares, views and reach per platform, the top posts of the period, and recent posts on each connected account. Engagement is read from the platforms in insightsPlatforms only. Needs a plan that includes analytics.
| Name | Required | Description | Default |
|---|---|---|---|
| days | No | Period in days: 7, 14, 30, 90. Defaults to 30 |
Output Schema
| Name | Required | Description |
|---|---|---|
| days | No | |
| deltas | No | Change against the previous period of the same length |
| summary | No | Published totals, scheduled count, success rate |
| activity | No | Posts, active days and failures in the period |
| topPosts | No | Best posts of the period (captions shortened) |
| platforms | No | Per platform: published, failed, engagement |
| engagement | No | Totals over the period, where platforms report them |
| accountPosts | No | Most recent posts on connected accounts, including ones not made with Fuxux |
| lastSyncedAt | No | |
| engagementRate | No | Interactions / reach, in % |
| accountPostsTotal | No | |
| insightsPlatforms | No | |
| accountPostsUpdatedAt | No |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
Annotations already declare readOnlyHint=true, so restating read-only adds nothing, but the description contributes context the annotations cannot: the workspace scoping, the plan-tier gating requirement, and the fact that engagement only covers platforms in insightsPlatforms (i.e., some connected accounts may show no engagement). Those are non-obvious behavioral constraints an agent would otherwise miss.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
Three front-loaded sentences that each carry distinct information: what is returned, the platform-coverage caveat, and the plan prerequisite. The return-value enumeration is dense but not padded; nothing is repeated verbatim from the schema.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
With an output schema present, the description need not explain the response shape, and it already covers scope, plan gating, and engagement coverage limits. The only meaningful gap is the absence of guidance on choosing this over get_dashboard.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Schema coverage is 100% and the 'days' parameter already documents the allowed values (7/14/30/90) and the 30-day default in the schema itself. The description adds no further semantics about the period parameter, so this lands at the baseline.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
States a specific read of post-performance metrics and enumerates the metric families returned (published counts, success rate, engagement, top posts, recent posts per account) scoped to the current workspace. This clearly separates it from write siblings like create_post/update_post and from list_posts, though it never distinguishes itself from get_dashboard, the closest overlapping sibling.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
Gives one real precondition ('Needs a plan that includes analytics') and one coverage caveat ('Engagement is read from the platforms in insightsPlatforms only'), which is useful. But it never says when to pick this over get_dashboard or list_posts, so the choice between overlapping read tools is left to inference.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
get_dashboardGet dashboardBRead-onlyInspect
Summary stats, upcoming scheduled posts, and per-platform connection status.
| Name | Required | Description | Default |
|---|---|---|---|
No parameters | |||
Output Schema
| Name | Required | Description |
|---|---|---|
| stats | No | |
| profile | No | |
| platforms | No | Per-platform connection status and post counts |
| upcomingPosts | No | Next posts due to publish |
| needsAttention | No | Accounts that need reconnecting |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
The annotations already declare readOnlyHint=true, destructiveHint=false, and openWorldHint=false, so the safety profile is fully covered by structured data. The description adds only the payload contents, with no cost, caching, freshness, or rate-limit context — useful but modest value on top of the annotations.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
One short sentence with no filler, and the most important content (summary stats) is front-loaded. It is a noun-phrase fragment rather than a complete clause, which slightly weakens the lead but wastes no space.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
With an output schema present and annotations covering read-only/closed-world behavior, the description does not need to explain return values or safety. For a zero-parameter aggregate read, the content list is sufficient; the only real omission is when to prefer it over the narrower analytics and account-list siblings.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
The tool takes zero parameters, so there is nothing for the description to disambiguate and the baseline of 4 applies. Nothing in the text misleads about inputs.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description names the concrete contents returned (summary stats, upcoming scheduled posts, per-platform connection status), which is far more specific than the title 'Get dashboard' and lets an agent infer the scope. It stops short of a verb+scope framing like 'Get the dashboard overview' and does not explicitly distinguish itself from overlapping siblings such as get_analytics or list_connected_accounts.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
There is no when-to-use guidance at all, no mention of prerequisites, and no routing to alternatives. An agent cannot tell from this text whether to call get_dashboard first or go straight to get_analytics / list_connected_accounts for the same information.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
get_postGet postARead-onlyInspect
Get one post with its per-platform variants. Variant ids from here are what update_post uses to edit individual captions. Also finds drafts, which list_posts (month-scoped) can miss.
| Name | Required | Description | Default |
|---|---|---|---|
| id | Yes | Post id (from list_posts or create_post) |
Output Schema
| Name | Required | Description |
|---|---|---|
| post | Yes |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
Annotations already declare readOnlyHint=true and destructiveHint=false, so safety is covered. The description adds genuinely useful behavior: the response contains per-platform variants whose ids are the handles update_post needs, and it surfaces drafts that a month-scoped list would omit. It stops short of noting lookup failure behavior for an invalid or missing id.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
Three short sentences, front-loaded with what the tool returns, then the downstream use, then the draft edge case. No redundant restatement of the title or annotations.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
An output schema exists, so return values need no full explanation, and the description still highlights the important part of the payload (variant ids). Together with the annotations this is nearly complete; only error/not-found behavior is unaddressed.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Schema coverage is 100% and the single id parameter is documented as a UUID with its provenance ('from list_posts or create_post'). The description adds nothing about the id beyond the schema, so the baseline of 3 applies.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
States a specific verb and resource ('Get one post') plus the scope of what is returned ('with its per-platform variants'). It distinguishes itself from list_posts (month-scoped, can miss drafts) and links to update_post via variant ids, so an agent can tell it apart from every relevant sibling.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
Gives a clear condition for choosing it: fetch a single post, including drafts that list_posts may miss, and use it to obtain variant ids before calling update_post. It does not state explicit when-not-to-use cases (e.g., bulk retrieval), but the routing context is strong.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
list_connected_accountsList connected accountsARead-onlyInspect
List social accounts connected to the Fuxux workspace. Use an account's id in create_post targets to pick which account posts when a platform has more than one.
| Name | Required | Description | Default |
|---|---|---|---|
No parameters | |||
Output Schema
| Name | Required | Description |
|---|---|---|
| accounts | Yes | |
| workspace_name | No | |
| is_team_workspace | No |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
Annotations already declare readOnlyHint=true, destructiveHint=false, openWorldHint=false, so the safety profile is covered. The description adds workspace scoping (only accounts connected to this workspace) and the key semantic trait that the returned ids are stable references consumed by create_post — meaningful beyond the annotations. It says nothing about what happens when no accounts exist, which is the only real gap.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
Two sentences, front-loaded with the action and resource, second sentence devoted entirely to how to use the output. Nothing is padded and nothing is repeated from the schema or annotations.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
A read-only, no-param, output-schema-backed list tool — the return shape is documented elsewhere, so the description need not restate it. It covers purpose, scope and downstream id usage. Minor gap: no mention of ordering or the empty-accounts case.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Zero parameters, so there is nothing for the description to disambiguate; the baseline for a no-arg tool is 4. The description correctly implies no filtering input is accepted — the workspace itself scopes the result.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
Specific verb + resource: 'List social accounts connected to the Fuxux workspace.' The resource (accounts) is inherently distinct from the post-centric siblings (list_posts, create_post, get_post), though the description never names or contrasts an alternative explicitly.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
Gives concrete downstream usage rather than an abstract 'when to use': feed the returned account id into create_post targets to disambiguate posting when a platform has multiple accounts. This is a clear context signal an agent can act on. It doesn't state exclusions, but no sibling offers a competing way to enumerate accounts, so little is left ambiguous.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
list_postsList postsARead-onlyInspect
List posts (calendar / queue). Optional filters: month (YYYY-MM), status. Pass limit to get only what you need (e.g. limit 5 + order "newest" for the most recent posts). Page with offset while hasMore is true.
| Name | Required | Description | Default |
|---|---|---|---|
| limit | No | Max posts to return (1-50). Defaults to 20, or up to 100 posts of the month when month is set | |
| month | No | Calendar month, e.g. "2026-04" | |
| order | No | upcoming (default): by scheduled time, soonest first. newest: most recently created first. recently_published: latest published first. recently_updated: most recently changed first | |
| offset | No | Skip this many posts (for paging) | |
| status | No | Filter by status; omit for no status filter |
Output Schema
| Name | Required | Description |
|---|---|---|
| posts | Yes | |
| counts | No | Workspace-wide totals per status |
| hasMore | No | |
| nextOffset | No |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
Annotations already declare readOnlyHint=true, destructiveHint=false and openWorldHint=false, so the safety profile is covered. The description adds the pagination contract by referencing hasMore, which is real behavioral context beyond the annotations. Beyond that it discloses nothing about ordering defaults, result shape, or truncation, and an output schema already exists.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
Three short sentences, front-loaded with purpose before filters, then pagination. Minor waste in the quoted "newest" and slightly choppy phrasing, but nothing that obscures the call pattern.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
For a 5-parameter, zero-required read tool with full schema coverage and an output schema, the description covers purpose, filtering, limiting, and paging well enough to call correctly. The one gap is guidance on choosing between this and get_post when a specific post is wanted.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Schema description coverage is 100%, so the schema already explains limit bounds/defers, month format, the four order values, offset, and the status enum. The description only restates filters and adds a mild hint about combining limit with order, which is close to what the schema provides; baseline 3 applies.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
States a specific verb and resource ("List posts") and adds scope context ("calendar / queue"), which distinguishes it from get_post and the mutation siblings. It stops short of naming those siblings explicitly, so differentiation relies on the reader inferring list-vs-single semantics.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
Gives concrete usage patterns: optional month/status filters, a limit tip with an example combination (limit 5 + order "newest"), and the paging recipe (offset while hasMore is true). It never says when to prefer get_post instead or when not to use this tool, so no explicit exclusions are present.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
update_postUpdate postADestructiveIdempotentInspect
Edit a draft or scheduled post before it publishes: set or change scheduled_at (must be in the future), change captions, or replace media. Published or publishing posts can't be edited. Provide at least one of scheduled_at, variant_updates, media_urls. Setting scheduled_at on a draft schedules it: the same checks as create_post apply (plan limits, connected accounts) and the post keeps its id. A caption for a platform with no connected account is left out and listed in skipped.
| Name | Required | Description | Default |
|---|---|---|---|
| id | Yes | Post id (from list_posts or create_post) | |
| media_urls | No | Replaces the post's media (public https URLs) | |
| scheduled_at | No | ISO datetime in the future with a time zone (Z or an offset such as +01:00; convert the user's local time first). On a draft, this schedules it | |
| variant_updates | No | Caption changes, one entry per variant |
Output Schema
| Name | Required | Description |
|---|---|---|
| id | Yes | |
| post | No | The post after the update |
| success | Yes |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
Beyond the annotations, the description discloses that scheduling a draft runs create_post checks (plan limits, connected accounts), that the post keeps its id, and that captions for platforms without connected accounts are omitted and returned in skipped. These details materially affect invocation and interpretation of results, and they align with destructiveHint=true because media can be replaced.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
The description is dense but front-loaded: capability and scope come first, followed by constraints, conditional behavior, and output-related caveats. Every sentence carries operational information and none merely restates the tool name or schema.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
Given the existence of an output schema, the description need not document return fields, yet it usefully mentions skipped for unconnected platforms. It covers state restrictions, prerequisite-style checks, conditional scheduling behavior, and minimum input requirements, which is complete for a mutation tool with annotations already covering safety traits.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Schema coverage is 100%, so the schema already documents individual fields, but the description adds a valuable cross-parameter rule: at least one of scheduled_at, variant_updates, or media_urls must be supplied. It also clarifies that scheduled_at on a draft schedules rather than merely edits, which is more than the field-level schema text conveys.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description begins with a specific verb and resource ('Edit a draft or scheduled post') and immediately scopes the operation to unpublished posts. It clearly distinguishes update_post from create_post and delete_post.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
It states exactly when editing is allowed (draft or scheduled), when it is not (published or publishing), and the minimum payload requirement ('Provide at least one of scheduled_at, variant_updates, media_urls'). It also cross-references create_post for scheduling checks, leaving little ambiguity for an agent choosing between tools.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
whoamiWho am IARead-onlyInspect
Return the email, name and plan of the Fuxux account this connection is signed in to. Use it to confirm the connection works.
| Name | Required | Description | Default |
|---|---|---|---|
No parameters | |||
Output Schema
| Name | Required | Description |
|---|---|---|
| plan | No | free | creator | growth | pro |
| No | ||
| full_name | No |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
Annotations already declare readOnlyHint=true, destructiveHint=false and openWorldHint=false, so safety is covered. The description adds genuine context beyond them: the three fields returned and that the call doubles as a connectivity check, which tells the agent how to interpret a failure.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
Two short sentences with zero filler. The payload description comes first and the usage hint second, which is the right front-loading for a trivial identity call.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
For a no-argument read with full annotations and an output schema, this is essentially complete. The only minor gap is that it doesn't say what an agent should conclude if the call fails, though the "confirm the connection works" framing implies it.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
The tool takes zero parameters, so there is nothing for the description to disambiguate; the baseline for a parameterless tool applies. The description correctly adds no parameter noise.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
States a specific verb ("Return") and the exact resource: the email, name and plan of the account behind this connection. That is clearly distinct from sibling tools like list_connected_accounts or get_dashboard, though it never names an alternative explicitly.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
"Use it to confirm the connection works" gives a concrete triggering condition rather than leaving usage implied. It stops short of saying when not to use it or pointing at the sibling tool for enumerating multiple accounts.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
Tool Schema Changelog
Recent tool additions, removals, and schema changes observed during successful MCP inspections.
1 tool update
- Changed
create_post1 field changed- added
Input schema / properties / targets / items / properties / instagram_trial_reelAdded value: +{ + "description": "instagram only, one video: post it as a trial Reel, shown to non-followers first. manual: the user shares it to followers from the Instagram app; auto: Instagram shares it if it performs well.", + "enum": [ + "manual", + "auto" + ], + "type": "string" +}
1 tool update
- Changed
create_post4 fields changed- added
Input schema / properties / targets / items / properties / tiktok_allow_commentsAdded value: +{ + "description": "tiktok only, with tiktok_privacy_level: true lets people comment. Off unless the user asks for it.", + "type": "boolean" +} - added
Input schema / properties / targets / items / properties / tiktok_allow_duetAdded value: +{ + "description": "tiktok video only, with tiktok_privacy_level: true allows Duets. Off unless the user asks for it.", + "type": "boolean" +} - added
Input schema / properties / targets / items / properties / tiktok_allow_stitchAdded value: +{ + "description": "tiktok video only, with tiktok_privacy_level: true allows Stitches. Off unless the user asks for it.", + "type": "boolean" +} - added
Input schema / properties / targets / items / properties / tiktok_privacy_levelAdded value: +{ + "description": "tiktok only: who can see the post. Set it to publish directly to the profile; leave it out and the post goes to the creator's TikTok inbox to finish in the app. Never choose this yourself: ask the user who should see it, and only pass the value they picked. It must be one of the account's allowed levels (a private account can't use PUBLIC_TO_EVERYONE).", + "enum": [ + "PUBLIC_TO_EVERYONE", + "MUTUAL_FOLLOW_FRIENDS", + "FOLLOWER_OF_CREATOR", + "SELF_ONLY" + ], + "type": "string" +}
1 tool update
- Changed
create_post1 field changed- added
Input schema / properties / targets / items / properties / alt_textAdded value: +{ + "description": "pinterest only: the image description read by screen readers (up to 500 characters)", + "maxLength": 500, + "type": "string" +}
3 tool updates
- Changed
get_post1 field changed- changed
Output schema / properties / post / properties / post_variants / anyOfPrevious value: -[ - { - "items": { - "additionalProperties": {}, - "properties": { - "connected_account_id": { - "type": [ - "string", - "null" - ] - }, - "content": { - "description": "Caption for this platform/account", - "type": [ - "string", - "null" - ] - }, - "error_message": { - "type": [ - "string", - "null" - ] - }, - "id": { - "type": "string" - }, - "platform": { - "description": "Platform id, e.g. instagram, linkedin", - "type": "string" - }, - "platform_post_id": { - "type": [ - "string", - "null" - ] - }, - "published_at": { - "type": [ - "string", - "null" - ] - }, - "status": { - "type": [ - "string", - "null" - ] - } - }, - "required": [ - "id", - "platform" - ], - "type": "object" - }, - "type": "array" - }, - { - "type": "null" - } -]New value: +[ + { + "items": { + "additionalProperties": {}, + "properties": { + "connected_account_id": { + "type": [ + "string", + "null" + ] + }, + "content": { + "description": "Caption for this platform/account", + "type": [ + "string", + "null" + ] + }, + "error_message": { + "type": [ + "string", + "null" + ] + }, + "id": { + "type": "string" + }, + "permalink": { + "description": "Exact link to the published post when the platform gave one; otherwise build it from platform_post_id", + "type": [ + "string", + "null" + ] + }, + "platform": { + "description": "Platform id, e.g. instagram, linkedin", + "type": "string" + }, + "platform_post_id": { + "type": [ + "string", + "null" + ] + }, + "published_at": { + "type": [ + "string", + "null" + ] + }, + "status": { + "type": [ + "string", + "null" + ] + } + }, + "required": [ + "id", + "platform" + ], + "type": "object" + }, + "type": "array" + }, + { + "type": "null" + } +]
- Changed
list_posts1 field changed- changed
Output schema / properties / posts / items / properties / post_variants / anyOfPrevious value: -[ - { - "items": { - "additionalProperties": {}, - "properties": { - "connected_account_id": { - "type": [ - "string", - "null" - ] - }, - "content": { - "description": "Caption for this platform/account", - "type": [ - "string", - "null" - ] - }, - "error_message": { - "type": [ - "string", - "null" - ] - }, - "id": { - "type": "string" - }, - "platform": { - "description": "Platform id, e.g. instagram, linkedin", - "type": "string" - }, - "platform_post_id": { - "type": [ - "string", - "null" - ] - }, - "published_at": { - "type": [ - "string", - "null" - ] - }, - "status": { - "type": [ - "string", - "null" - ] - } - }, - "required": [ - "id", - "platform" - ], - "type": "object" - }, - "type": "array" - }, - { - "type": "null" - } -]New value: +[ + { + "items": { + "additionalProperties": {}, + "properties": { + "connected_account_id": { + "type": [ + "string", + "null" + ] + }, + "content": { + "description": "Caption for this platform/account", + "type": [ + "string", + "null" + ] + }, + "error_message": { + "type": [ + "string", + "null" + ] + }, + "id": { + "type": "string" + }, + "permalink": { + "description": "Exact link to the published post when the platform gave one; otherwise build it from platform_post_id", + "type": [ + "string", + "null" + ] + }, + "platform": { + "description": "Platform id, e.g. instagram, linkedin", + "type": "string" + }, + "platform_post_id": { + "type": [ + "string", + "null" + ] + }, + "published_at": { + "type": [ + "string", + "null" + ] + }, + "status": { + "type": [ + "string", + "null" + ] + } + }, + "required": [ + "id", + "platform" + ], + "type": "object" + }, + "type": "array" + }, + { + "type": "null" + } +]
- Changed
update_post1 field changed- changed
Output schema / properties / post / anyOfPrevious value: -[ - { - "additionalProperties": {}, - "properties": { - "created_at": { - "type": [ - "string", - "null" - ] - }, - "id": { - "type": "string" - }, - "media_urls": { - "anyOf": [ - { - "items": { - "type": "string" - }, - "type": "array" - }, - { - "type": "null" - } - ] - }, - "post_variants": { - "anyOf": [ - { - "items": { - "additionalProperties": {}, - "properties": { - "connected_account_id": { - "type": [ - "string", - "null" - ] - }, - "content": { - "description": "Caption for this platform/account", - "type": [ - "string", - "null" - ] - }, - "error_message": { - "type": [ - "string", - "null" - ] - }, - "id": { - "type": "string" - }, - "platform": { - "description": "Platform id, e.g. instagram, linkedin", - "type": "string" - }, - "platform_post_id": { - "type": [ - "string", - "null" - ] - }, - "published_at": { - "type": [ - "string", - "null" - ] - }, - "status": { - "type": [ - "string", - "null" - ] - } - }, - "required": [ - "id", - "platform" - ], - "type": "object" - }, - "type": "array" - }, - { - "type": "null" - } - ], - "description": "One entry per platform/account" - }, - "published_at": { - "type": [ - "string", - "null" - ] - }, - "raw_prompt": { - "type": [ - "string", - "null" - ] - }, - "scheduled_at": { - "type": [ - "string", - "null" - ] - }, - "status": { - "description": "draft | scheduled | publishing | published | failed", - "type": "string" - } - }, - "required": [ - "id", - "status" - ], - "type": "object" - }, - { - "type": "null" - } -]New value: +[ + { + "additionalProperties": {}, + "properties": { + "created_at": { + "type": [ + "string", + "null" + ] + }, + "id": { + "type": "string" + }, + "media_urls": { + "anyOf": [ + { + "items": { + "type": "string" + }, + "type": "array" + }, + { + "type": "null" + } + ] + }, + "post_variants": { + "anyOf": [ + { + "items": { + "additionalProperties": {}, + "properties": { + "connected_account_id": { + "type": [ + "string", + "null" + ] + }, + "content": { + "description": "Caption for this platform/account", + "type": [ + "string", + "null" + ] + }, + "error_message": { + "type": [ + "string", + "null" + ] + }, + "id": { + "type": "string" + }, + "permalink": { + "description": "Exact link to the published post when the platform gave one; otherwise build it from platform_post_id", + "type": [ + "string", + "null" + ] + }, + "platform": { + "description": "Platform id, e.g. instagram, linkedin", + "type": "string" + }, + "platform_post_id": { + "type": [ + "string", + "null" + ] + }, + "published_at": { + "type": [ + "string", + "null" + ] + }, + "status": { + "type": [ + "string", + "null" + ] + } + }, + "required": [ + "id", + "platform" + ], + "type": "object" + }, + "type": "array" + }, + { + "type": "null" + } + ], + "description": "One entry per platform/account" + }, + "published_at": { + "type": [ + "string", + "null" + ] + }, + "raw_prompt": { + "type": [ + "string", + "null" + ] + }, + "scheduled_at": { + "type": [ + "string", + "null" + ] + }, + "status": { + "description": "draft | scheduled | publishing | published | failed", + "type": "string" + } + }, + "required": [ + "id", + "status" + ], + "type": "object" + }, + { + "type": "null" + } +]
1 tool update
- Changed
update_post1 field changed- changed
Input schema / properties / scheduled_at / descriptionPrevious value: -"New ISO datetime in the future with a time zone (Z or an offset such as +01:00), scheduled posts only"New value: +"ISO datetime in the future with a time zone (Z or an offset such as +01:00; convert the user's local time first). On a draft, this schedules it"
1 tool update
- Changed
list_posts1 field changed- changed
Input schema / properties / limit / descriptionPrevious value: -"Max posts to return (1-50). Defaults to 20, or the whole month when month is set"New value: +"Max posts to return (1-50). Defaults to 20, or up to 100 posts of the month when month is set"
1 tool update
- Changed
create_post1 field changed- changed
Input schema / properties / targets / descriptionPrevious value: -"Which accounts to post to. Without it, each captioned platform posts to its first connected account. Reddit is not available here: Reddit posts are created in the Fuxux web app only."New value: +"Which accounts to post to. Without it, each captioned platform posts to its first connected account. Reddit isn't supported."
8 tool updates
- Changed
create_post3 fields changed- removed
Output schema / properties / post / properties / scheduled_at / anyOfRemoved value: -[ - { - "type": "string" - }, - { - "type": "null" - } -] - added
Output schema / properties / post / properties / scheduled_at / typeAdded value: +[ + "string", + "null" +] - changed
Output schema / properties / results / anyOfPrevious value: -[ - { - "items": { - "additionalProperties": {}, - "properties": { - "account_id": { - "anyOf": [ - { - "type": "string" - }, - { - "type": "null" - } - ] - }, - "account_label": { - "anyOf": [ - { - "type": "string" - }, - { - "type": "null" - } - ] - }, - "error": { - "anyOf": [ - { - "type": "string" - }, - { - "type": "null" - } - ] - }, - "inbox_pending": { - "anyOf": [ - { - "type": "boolean" - }, - { - "type": "null" - } - ] - }, - "platform": { - "type": "string" - }, - "platform_post_id": { - "anyOf": [ - { - "type": "string" - }, - { - "type": "null" - } - ] - }, - "still_processing": { - "anyOf": [ - { - "type": "boolean" - }, - { - "type": "null" - } - ] - }, - "success": { - "type": "boolean" - } - }, - "required": [ - "platform", - "success" - ], - "type": "object" - }, - "type": "array" - }, - { - "type": "null" - } -]New value: +[ + { + "items": { + "additionalProperties": {}, + "properties": { + "account_id": { + "type": [ + "string", + "null" + ] + }, + "account_label": { + "type": [ + "string", + "null" + ] + }, + "error": { + "type": [ + "string", + "null" + ] + }, + "inbox_pending": { + "type": [ + "boolean", + "null" + ] + }, + "platform": { + "type": "string" + }, + "platform_post_id": { + "type": [ + "string", + "null" + ] + }, + "still_processing": { + "type": [ + "boolean", + "null" + ] + }, + "success": { + "type": "boolean" + } + }, + "required": [ + "platform", + "success" + ], + "type": "object" + }, + "type": "array" + }, + { + "type": "null" + } +]
- Added
get_analytics - Changed
get_dashboard1 field changed- changed
Output schema / properties / stats / anyOfPrevious value: -[ - { - "additionalProperties": {}, - "properties": { - "accountsNeedingAttention": { - "anyOf": [ - { - "type": "number" - }, - { - "type": "null" - } - ] - }, - "connectedAccounts": { - "anyOf": [ - { - "type": "number" - }, - { - "type": "null" - } - ] - }, - "healthyAccounts": { - "anyOf": [ - { - "type": "number" - }, - { - "type": "null" - } - ] - }, - "momChange": { - "anyOf": [ - { - "type": "number" - }, - { - "type": "null" - } - ] - }, - "postsLastMonth": { - "anyOf": [ - { - "type": "number" - }, - { - "type": "null" - } - ] - }, - "postsThisMonth": { - "anyOf": [ - { - "type": "number" - }, - { - "type": "null" - } - ] - }, - "totalPublished": { - "anyOf": [ - { - "type": "number" - }, - { - "type": "null" - } - ] - }, - "upcomingThisWeek": { - "anyOf": [ - { - "type": "number" - }, - { - "type": "null" - } - ] - } - }, - "type": "object" - }, - { - "type": "null" - } -]New value: +[ + { + "additionalProperties": {}, + "properties": { + "accountsNeedingAttention": { + "type": [ + "number", + "null" + ] + }, + "connectedAccounts": { + "type": [ + "number", + "null" + ] + }, + "healthyAccounts": { + "type": [ + "number", + "null" + ] + }, + "momChange": { + "type": [ + "number", + "null" + ] + }, + "postsLastMonth": { + "type": [ + "number", + "null" + ] + }, + "postsThisMonth": { + "type": [ + "number", + "null" + ] + }, + "totalPublished": { + "type": [ + "number", + "null" + ] + }, + "upcomingThisWeek": { + "type": [ + "number", + "null" + ] + } + }, + "type": "object" + }, + { + "type": "null" + } +]
- Changed
get_post9 fields changed- removed
Output schema / properties / post / properties / created_at / anyOfRemoved value: -[ - { - "type": "string" - }, - { - "type": "null" - } -] - added
Output schema / properties / post / properties / created_at / typeAdded value: +[ + "string", + "null" +] - changed
Output schema / properties / post / properties / post_variants / anyOfPrevious value: -[ - { - "items": { - "additionalProperties": {}, - "properties": { - "connected_account_id": { - "anyOf": [ - { - "type": "string" - }, - { - "type": "null" - } - ] - }, - "content": { - "anyOf": [ - { - "type": "string" - }, - { - "type": "null" - } - ], - "description": "Caption for this platform/account" - }, - "error_message": { - "anyOf": [ - { - "type": "string" - }, - { - "type": "null" - } - ] - }, - "id": { - "type": "string" - }, - "platform": { - "description": "Platform id, e.g. instagram, linkedin", - "type": "string" - }, - "platform_post_id": { - "anyOf": [ - { - "type": "string" - }, - { - "type": "null" - } - ] - }, - "published_at": { - "anyOf": [ - { - "type": "string" - }, - { - "type": "null" - } - ] - }, - "status": { - "anyOf": [ - { - "type": "string" - }, - { - "type": "null" - } - ] - } - }, - "required": [ - "id", - "platform" - ], - "type": "object" - }, - "type": "array" - }, - { - "type": "null" - } -]New value: +[ + { + "items": { + "additionalProperties": {}, + "properties": { + "connected_account_id": { + "type": [ + "string", + "null" + ] + }, + "content": { + "description": "Caption for this platform/account", + "type": [ + "string", + "null" + ] + }, + "error_message": { + "type": [ + "string", + "null" + ] + }, + "id": { + "type": "string" + }, + "platform": { + "description": "Platform id, e.g. instagram, linkedin", + "type": "string" + }, + "platform_post_id": { + "type": [ + "string", + "null" + ] + }, + "published_at": { + "type": [ + "string", + "null" + ] + }, + "status": { + "type": [ + "string", + "null" + ] + } + }, + "required": [ + "id", + "platform" + ], + "type": "object" + }, + "type": "array" + }, + { + "type": "null" + } +] - removed
Output schema / properties / post / properties / published_at / anyOfRemoved value: -[ - { - "type": "string" - }, - { - "type": "null" - } -] - added
Output schema / properties / post / properties / published_at / typeAdded value: +[ + "string", + "null" +] - removed
Output schema / properties / post / properties / raw_prompt / anyOfRemoved value: -[ - { - "type": "string" - }, - { - "type": "null" - } -] - added
Output schema / properties / post / properties / raw_prompt / typeAdded value: +[ + "string", + "null" +] - removed
Output schema / properties / post / properties / scheduled_at / anyOfRemoved value: -[ - { - "type": "string" - }, - { - "type": "null" - } -] - added
Output schema / properties / post / properties / scheduled_at / typeAdded value: +[ + "string", + "null" +]
- Changed
list_connected_accounts10 fields changed- removed
Output schema / properties / accounts / items / properties / platform_username / anyOfRemoved value: -[ - { - "type": "string" - }, - { - "type": "null" - } -] - added
Output schema / properties / accounts / items / properties / platform_username / typeAdded value: +[ + "string", + "null" +] - removed
Output schema / properties / accounts / items / properties / status / anyOfRemoved value: -[ - { - "type": "string" - }, - { - "type": "null" - } -] - added
Output schema / properties / accounts / items / properties / status / typeAdded value: +[ + "string", + "null" +] - removed
Output schema / properties / accounts / items / properties / via_reminder / anyOfRemoved value: -[ - { - "type": "boolean" - }, - { - "type": "null" - } -] - added
Output schema / properties / accounts / items / properties / via_reminder / typeAdded value: +[ + "boolean", + "null" +] - removed
Output schema / properties / is_team_workspace / anyOfRemoved value: -[ - { - "type": "boolean" - }, - { - "type": "null" - } -] - added
Output schema / properties / is_team_workspace / typeAdded value: +[ + "boolean", + "null" +] - removed
Output schema / properties / workspace_name / anyOfRemoved value: -[ - { - "type": "string" - }, - { - "type": "null" - } -] - added
Output schema / properties / workspace_name / typeAdded value: +[ + "string", + "null" +]
- Changed
list_posts13 fields changed- removed
Output schema / properties / hasMore / anyOfRemoved value: -[ - { - "type": "boolean" - }, - { - "type": "null" - } -] - added
Output schema / properties / hasMore / typeAdded value: +[ + "boolean", + "null" +] - removed
Output schema / properties / nextOffset / anyOfRemoved value: -[ - { - "type": "number" - }, - { - "type": "null" - } -] - added
Output schema / properties / nextOffset / typeAdded value: +[ + "number", + "null" +] - removed
Output schema / properties / posts / items / properties / created_at / anyOfRemoved value: -[ - { - "type": "string" - }, - { - "type": "null" - } -] - added
Output schema / properties / posts / items / properties / created_at / typeAdded value: +[ + "string", + "null" +] - changed
Output schema / properties / posts / items / properties / post_variants / anyOfPrevious value: -[ - { - "items": { - "additionalProperties": {}, - "properties": { - "connected_account_id": { - "anyOf": [ - { - "type": "string" - }, - { - "type": "null" - } - ] - }, - "content": { - "anyOf": [ - { - "type": "string" - }, - { - "type": "null" - } - ], - "description": "Caption for this platform/account" - }, - "error_message": { - "anyOf": [ - { - "type": "string" - }, - { - "type": "null" - } - ] - }, - "id": { - "type": "string" - }, - "platform": { - "description": "Platform id, e.g. instagram, linkedin", - "type": "string" - }, - "platform_post_id": { - "anyOf": [ - { - "type": "string" - }, - { - "type": "null" - } - ] - }, - "published_at": { - "anyOf": [ - { - "type": "string" - }, - { - "type": "null" - } - ] - }, - "status": { - "anyOf": [ - { - "type": "string" - }, - { - "type": "null" - } - ] - } - }, - "required": [ - "id", - "platform" - ], - "type": "object" - }, - "type": "array" - }, - { - "type": "null" - } -]New value: +[ + { + "items": { + "additionalProperties": {}, + "properties": { + "connected_account_id": { + "type": [ + "string", + "null" + ] + }, + "content": { + "description": "Caption for this platform/account", + "type": [ + "string", + "null" + ] + }, + "error_message": { + "type": [ + "string", + "null" + ] + }, + "id": { + "type": "string" + }, + "platform": { + "description": "Platform id, e.g. instagram, linkedin", + "type": "string" + }, + "platform_post_id": { + "type": [ + "string", + "null" + ] + }, + "published_at": { + "type": [ + "string", + "null" + ] + }, + "status": { + "type": [ + "string", + "null" + ] + } + }, + "required": [ + "id", + "platform" + ], + "type": "object" + }, + "type": "array" + }, + { + "type": "null" + } +] - removed
Output schema / properties / posts / items / properties / published_at / anyOfRemoved value: -[ - { - "type": "string" - }, - { - "type": "null" - } -] - added
Output schema / properties / posts / items / properties / published_at / typeAdded value: +[ + "string", + "null" +] - removed
Output schema / properties / posts / items / properties / raw_prompt / anyOfRemoved value: -[ - { - "type": "string" - }, - { - "type": "null" - } -] - added
Output schema / properties / posts / items / properties / raw_prompt / typeAdded value: +[ + "string", + "null" +] - removed
Output schema / properties / posts / items / properties / scheduled_at / anyOfRemoved value: -[ - { - "type": "string" - }, - { - "type": "null" - } -] - added
Output schema / properties / posts / items / properties / scheduled_at / typeAdded value: +[ + "string", + "null" +]
- Changed
update_post1 field changed- changed
Output schema / properties / post / anyOfPrevious value: -[ - { - "additionalProperties": {}, - "properties": { - "created_at": { - "anyOf": [ - { - "type": "string" - }, - { - "type": "null" - } - ] - }, - "id": { - "type": "string" - }, - "media_urls": { - "anyOf": [ - { - "items": { - "type": "string" - }, - "type": "array" - }, - { - "type": "null" - } - ] - }, - "post_variants": { - "anyOf": [ - { - "items": { - "additionalProperties": {}, - "properties": { - "connected_account_id": { - "anyOf": [ - { - "type": "string" - }, - { - "type": "null" - } - ] - }, - "content": { - "anyOf": [ - { - "type": "string" - }, - { - "type": "null" - } - ], - "description": "Caption for this platform/account" - }, - "error_message": { - "anyOf": [ - { - "type": "string" - }, - { - "type": "null" - } - ] - }, - "id": { - "type": "string" - }, - "platform": { - "description": "Platform id, e.g. instagram, linkedin", - "type": "string" - }, - "platform_post_id": { - "anyOf": [ - { - "type": "string" - }, - { - "type": "null" - } - ] - }, - "published_at": { - "anyOf": [ - { - "type": "string" - }, - { - "type": "null" - } - ] - }, - "status": { - "anyOf": [ - { - "type": "string" - }, - { - "type": "null" - } - ] - } - }, - "required": [ - "id", - "platform" - ], - "type": "object" - }, - "type": "array" - }, - { - "type": "null" - } - ], - "description": "One entry per platform/account" - }, - "published_at": { - "anyOf": [ - { - "type": "string" - }, - { - "type": "null" - } - ] - }, - "raw_prompt": { - "anyOf": [ - { - "type": "string" - }, - { - "type": "null" - } - ] - }, - "scheduled_at": { - "anyOf": [ - { - "type": "string" - }, - { - "type": "null" - } - ] - }, - "status": { - "description": "draft | scheduled | publishing | published | failed", - "type": "string" - } - }, - "required": [ - "id", - "status" - ], - "type": "object" - }, - { - "type": "null" - } -]New value: +[ + { + "additionalProperties": {}, + "properties": { + "created_at": { + "type": [ + "string", + "null" + ] + }, + "id": { + "type": "string" + }, + "media_urls": { + "anyOf": [ + { + "items": { + "type": "string" + }, + "type": "array" + }, + { + "type": "null" + } + ] + }, + "post_variants": { + "anyOf": [ + { + "items": { + "additionalProperties": {}, + "properties": { + "connected_account_id": { + "type": [ + "string", + "null" + ] + }, + "content": { + "description": "Caption for this platform/account", + "type": [ + "string", + "null" + ] + }, + "error_message": { + "type": [ + "string", + "null" + ] + }, + "id": { + "type": "string" + }, + "platform": { + "description": "Platform id, e.g. instagram, linkedin", + "type": "string" + }, + "platform_post_id": { + "type": [ + "string", + "null" + ] + }, + "published_at": { + "type": [ + "string", + "null" + ] + }, + "status": { + "type": [ + "string", + "null" + ] + } + }, + "required": [ + "id", + "platform" + ], + "type": "object" + }, + "type": "array" + }, + { + "type": "null" + } + ], + "description": "One entry per platform/account" + }, + "published_at": { + "type": [ + "string", + "null" + ] + }, + "raw_prompt": { + "type": [ + "string", + "null" + ] + }, + "scheduled_at": { + "type": [ + "string", + "null" + ] + }, + "status": { + "description": "draft | scheduled | publishing | published | failed", + "type": "string" + } + }, + "required": [ + "id", + "status" + ], + "type": "object" + }, + { + "type": "null" + } +]
- Changed
whoami6 fields changed- removed
Output schema / properties / email / anyOfRemoved value: -[ - { - "type": "string" - }, - { - "type": "null" - } -] - added
Output schema / properties / email / typeAdded value: +[ + "string", + "null" +] - removed
Output schema / properties / full_name / anyOfRemoved value: -[ - { - "type": "string" - }, - { - "type": "null" - } -] - added
Output schema / properties / full_name / typeAdded value: +[ + "string", + "null" +] - removed
Output schema / properties / plan / anyOfRemoved value: -[ - { - "type": "string" - }, - { - "type": "null" - } -] - added
Output schema / properties / plan / typeAdded value: +[ + "string", + "null" +]
2 tool updates
- Changed
create_post1 field changed- changed
Input schema / properties / scheduled_at / descriptionPrevious value: -"ISO datetime; if set, post is scheduled instead of published immediately"New value: +"ISO datetime with a time zone (Z or an offset such as +01:00; convert the user's local time first); if set, post is scheduled instead of published immediately"
- Changed
update_post1 field changed- changed
Input schema / properties / scheduled_at / descriptionPrevious value: -"New ISO datetime in the future (scheduled posts only)"New value: +"New ISO datetime in the future with a time zone (Z or an offset such as +01:00), scheduled posts only"
1 tool update
- Changed
create_post2 fields changed- changed
Input schema / properties / captions / descriptionPrevious value: -"Map of platform id to caption text. Platform ids: twitter, instagram, linkedin, facebook, tiktok, youtube, bluesky, threads, pinterest, discord, kick, twitch"New value: +"Map of platform id to caption text. Platform ids: twitter, instagram, linkedin, facebook, tiktok, youtube, bluesky, threads, pinterest, discord, kick, twitch, telegram, slack" - changed
Input schema / properties / targets / items / properties / platform / enumPrevious value: -[ - "twitter", - "instagram", - "linkedin", - "facebook", - "tiktok", - "youtube", - "bluesky", - "threads", - "pinterest", - "discord", - "kick", - "twitch" -]New value: +[ + "twitter", + "instagram", + "linkedin", + "facebook", + "tiktok", + "youtube", + "bluesky", + "threads", + "pinterest", + "discord", + "kick", + "twitch", + "telegram", + "slack" +]
2 tool updates
- Changed
list_connected_accounts7 fields changed- removed
Output schema / properties / accounts / items / properties / created_atRemoved value: -{ - "anyOf": [ - { - "type": "string" - }, - { - "type": "null" - } - ] -} - added
Output schema / properties / accounts / items / properties / id / descriptionAdded value: +"Use as account_id in create_post targets" - removed
Output schema / properties / accounts / items / properties / platform_avatar_urlRemoved value: -{ - "anyOf": [ - { - "type": "string" - }, - { - "type": "null" - } - ] -} - removed
Output schema / properties / accounts / items / properties / scopesRemoved value: -{ - "anyOf": [ - { - "items": { - "type": "string" - }, - "type": "array" - }, - { - "type": "null" - } - ] -} - removed
Output schema / properties / accounts / items / properties / token_expires_atRemoved value: -{ - "anyOf": [ - { - "type": "string" - }, - { - "type": "null" - } - ] -} - added
Output schema / properties / accounts / items / properties / via_reminder / descriptionAdded value: +"True for a reminder-only entry: Fuxux reminds the user to post, it does not publish" - removed
Output schema / properties / workspace_idRemoved value: -{ - "anyOf": [ - { - "type": "string" - }, - { - "type": "null" - } - ] -}
- Changed
whoami8 fields changed- removed
Output schema / properties / created_atRemoved value: -{ - "anyOf": [ - { - "type": "string" - }, - { - "type": "null" - } - ] -} - removed
Output schema / properties / has_api_accessRemoved value: -{ - "anyOf": [ - { - "type": "boolean" - }, - { - "type": "null" - } - ], - "description": "Whether this account can use API keys" -} - removed
Output schema / properties / idRemoved value: -{ - "type": "string" -} - removed
Output schema / properties / onboarding_completedRemoved value: -{ - "anyOf": [ - { - "type": "boolean" - }, - { - "type": "null" - } - ] -} - added
Output schema / properties / plan / descriptionAdded value: +"free | creator | growth | pro" - removed
Output schema / properties / subscription_statusRemoved value: -{ - "anyOf": [ - { - "type": "string" - }, - { - "type": "null" - } - ] -} - removed
Output schema / properties / trial_endRemoved value: -{ - "anyOf": [ - { - "type": "string" - }, - { - "type": "null" - } - ] -} - removed
Output schema / requiredRemoved value: -[ - "id" -]
1 tool update
- Changed
create_post2 fields changed- changed
Input schema / properties / captions / descriptionPrevious value: -"Map of platform id to caption text. Platform ids: twitter, instagram, linkedin, facebook, tiktok, youtube, bluesky, threads, pinterest, google-business, discord, kick, twitch"New value: +"Map of platform id to caption text. Platform ids: twitter, instagram, linkedin, facebook, tiktok, youtube, bluesky, threads, pinterest, discord, kick, twitch" - changed
Input schema / properties / targets / items / properties / platform / enumPrevious value: -[ - "twitter", - "instagram", - "linkedin", - "facebook", - "tiktok", - "youtube", - "bluesky", - "threads", - "pinterest", - "google-business", - "discord", - "kick", - "twitch" -]New value: +[ + "twitter", + "instagram", + "linkedin", + "facebook", + "tiktok", + "youtube", + "bluesky", + "threads", + "pinterest", + "discord", + "kick", + "twitch" +]
1 tool update
- Changed
create_post5 fields changed- changed
Input schema / properties / captions / descriptionPrevious value: -"Map of platform id to caption text. Platform ids: twitter, instagram, linkedin, facebook, tiktok, youtube, bluesky, threads, pinterest, google-business, reddit, discord, kick, twitch"New value: +"Map of platform id to caption text. Platform ids: twitter, instagram, linkedin, facebook, tiktok, youtube, bluesky, threads, pinterest, google-business, discord, kick, twitch" - changed
Input schema / properties / targets / descriptionPrevious value: -"Which accounts to post to. Without it, each captioned platform posts to its first connected account. Required for reddit (subreddit)."New value: +"Which accounts to post to. Without it, each captioned platform posts to its first connected account. Reddit is not available here: Reddit posts are created in the Fuxux web app only." - removed
Input schema / properties / targets / items / properties / flair_idRemoved value: -{ - "description": "reddit only: post flair id, if the subreddit requires one", - "type": "string" -} - changed
Input schema / properties / targets / items / properties / platform / enumPrevious value: -[ - "twitter", - "instagram", - "linkedin", - "facebook", - "tiktok", - "youtube", - "bluesky", - "threads", - "pinterest", - "google-business", - "reddit", - "discord", - "kick", - "twitch" -]New value: +[ + "twitter", + "instagram", + "linkedin", + "facebook", + "tiktok", + "youtube", + "bluesky", + "threads", + "pinterest", + "google-business", + "discord", + "kick", + "twitch" +] - removed
Input schema / properties / targets / items / properties / subredditRemoved value: -{ - "description": "reddit only: subreddit name without r/ (required for reddit)", - "type": "string" -}
1 tool update
- Changed
create_post1 field changed- added
Input schema / properties / targets / items / properties / board_idAdded value: +{ + "description": "pinterest only: board id to pin to; defaults to the account's first public board", + "type": "string" +}
1 tool update
- Changed
create_post2 fields changed- changed
Input schema / properties / captions / descriptionPrevious value: -"Map of platform id to caption text"New value: +"Map of platform id to caption text. Platform ids: twitter, instagram, linkedin, facebook, tiktok, youtube, bluesky, threads, pinterest, google-business, reddit, discord, kick, twitch" - added
Input schema / properties / targetsAdded value: +{ + "description": "Which accounts to post to. Without it, each captioned platform posts to its first connected account. Required for reddit (subreddit).", + "items": { + "properties": { + "account_id": { + "description": "Connected account id from list_connected_accounts", + "format": "uuid", + "pattern": "^([0-9a-fA-F]{8}-[0-9a-fA-F]{4}-[1-8][0-9a-fA-F]{3}-[89abAB][0-9a-fA-F]{3}-[0-9a-fA-F]{12}|00000000-0000-0000-0000-000000000000|ffffffff-ffff-ffff-ffff-ffffffffffff)$", + "type": "string" + }, + "flair_id": { + "description": "reddit only: post flair id, if the subreddit requires one", + "type": "string" + }, + "format": { + "description": "instagram and facebook only; defaults to feed", + "enum": [ + "feed", + "story" + ], + "type": "string" + }, + "platform": { + "description": "That account's platform; needs a caption in captions", + "enum": [ + "twitter", + "instagram", + "linkedin", + "facebook", + "tiktok", + "youtube", + "bluesky", + "threads", + "pinterest", + "google-business", + "reddit", + "discord", + "kick", + "twitch" + ], + "type": "string" + }, + "subreddit": { + "description": "reddit only: subreddit name without r/ (required for reddit)", + "type": "string" + } + }, + "required": [ + "account_id", + "platform" + ], + "type": "object" + }, + "type": "array" +}
2 tool updates
- Changed
create_post1 field changed- added
Input schema / properties / draftAdded value: +{ + "description": "Save as a draft instead of publishing or scheduling (can't be combined with scheduled_at)", + "type": "boolean" +}
- Changed
list_posts4 fields changed- added
Input schema / properties / limitAdded value: +{ + "description": "Max posts to return (1-50). Defaults to 20, or the whole month when month is set", + "maximum": 50, + "minimum": 1, + "type": "integer" +} - added
Input schema / properties / offsetAdded value: +{ + "description": "Skip this many posts (for paging)", + "maximum": 9007199254740991, + "minimum": 0, + "type": "integer" +} - added
Input schema / properties / orderAdded value: +{ + "description": "upcoming (default): by scheduled time, soonest first. newest: most recently created first. recently_published: latest published first. recently_updated: most recently changed first", + "enum": [ + "upcoming", + "newest", + "recently_published", + "recently_updated" + ], + "type": "string" +} - changed
Input schema / properties / status / enumPrevious value: -[ - "scheduled", - "published", - "draft", - "all" -]New value: +[ + "scheduled", + "published", + "draft", + "failed", + "all" +]
8 tool updates
- Changed
create_post3 fields changed- added
Input schema / properties / media_urls / descriptionAdded value: +"Up to 4 public https image/video URLs to attach" - added
Input schema / properties / prompt / descriptionAdded value: +"Optional note on the idea behind the post (max 500 chars). Stored with the post for reference; it is not published." - changed
Output schema / (root)Previous value: -nullNew value: +{ + "$schema": "http://json-schema.org/draft-07/schema#", + "additionalProperties": {}, + "properties": { + "post": { + "additionalProperties": {}, + "description": "The created post", + "properties": { + "id": { + "type": "string" + }, + "scheduled_at": { + "anyOf": [ + { + "type": "string" + }, + { + "type": "null" + } + ] + }, + "status": { + "description": "draft | scheduled | published | failed", + "type": "string" + } + }, + "required": [ + "id", + "status" + ], + "type": "object" + }, + "results": { + "anyOf": [ + { + "items": { + "additionalProperties": {}, + "properties": { + "account_id": { + "anyOf": [ + { + "type": "string" + }, + { + "type": "null" + } + ] + }, + "account_label": { + "anyOf": [ + { + "type": "string" + }, + { + "type": "null" + } + ] + }, + "error": { + "anyOf": [ + { + "type": "string" + }, + { + "type": "null" + } + ] + }, + "inbox_pending": { + "anyOf": [ + { + "type": "boolean" + }, + { + "type": "null" + } + ] + }, + "platform": { + "type": "string" + }, + "platform_post_id": { + "anyOf": [ + { + "type": "string" + }, + { + "type": "null" + } + ] + }, + "still_processing": { + "anyOf": [ + { + "type": "boolean" + }, + { + "type": "null" + } + ] + }, + "success": { + "type": "boolean" + } + }, + "required": [ + "platform", + "success" + ], + "type": "object" + }, + "type": "array" + }, + { + "type": "null" + } + ], + "description": "Per-platform outcome; present only when published immediately" + } + }, + "required": [ + "post" + ], + "type": "object" +}
- Changed
delete_post1 field changed- changed
Output schema / (root)Previous value: -nullNew value: +{ + "$schema": "http://json-schema.org/draft-07/schema#", + "additionalProperties": {}, + "properties": { + "success": { + "type": "boolean" + } + }, + "required": [ + "success" + ], + "type": "object" +}
- Changed
get_dashboard1 field changed- changed
Output schema / (root)Previous value: -nullNew value: +{ + "$schema": "http://json-schema.org/draft-07/schema#", + "additionalProperties": {}, + "properties": { + "needsAttention": { + "anyOf": [ + { + "items": { + "additionalProperties": {}, + "propertyNames": { + "type": "string" + }, + "type": "object" + }, + "type": "array" + }, + { + "type": "null" + } + ], + "description": "Accounts that need reconnecting" + }, + "platforms": { + "anyOf": [ + { + "items": { + "additionalProperties": {}, + "propertyNames": { + "type": "string" + }, + "type": "object" + }, + "type": "array" + }, + { + "type": "null" + } + ], + "description": "Per-platform connection status and post counts" + }, + "profile": { + "anyOf": [ + { + "additionalProperties": {}, + "propertyNames": { + "type": "string" + }, + "type": "object" + }, + { + "type": "null" + } + ] + }, + "stats": { + "anyOf": [ + { + "additionalProperties": {}, + "properties": { + "accountsNeedingAttention": { + "anyOf": [ + { + "type": "number" + }, + { + "type": "null" + } + ] + }, + "connectedAccounts": { + "anyOf": [ + { + "type": "number" + }, + { + "type": "null" + } + ] + }, + "healthyAccounts": { + "anyOf": [ + { + "type": "number" + }, + { + "type": "null" + } + ] + }, + "momChange": { + "anyOf": [ + { + "type": "number" + }, + { + "type": "null" + } + ] + }, + "postsLastMonth": { + "anyOf": [ + { + "type": "number" + }, + { + "type": "null" + } + ] + }, + "postsThisMonth": { + "anyOf": [ + { + "type": "number" + }, + { + "type": "null" + } + ] + }, + "totalPublished": { + "anyOf": [ + { + "type": "number" + }, + { + "type": "null" + } + ] + }, + "upcomingThisWeek": { + "anyOf": [ + { + "type": "number" + }, + { + "type": "null" + } + ] + } + }, + "type": "object" + }, + { + "type": "null" + } + ] + }, + "upcomingPosts": { + "anyOf": [ + { + "items": { + "additionalProperties": {}, + "propertyNames": { + "type": "string" + }, + "type": "object" + }, + "type": "array" + }, + { + "type": "null" + } + ], + "description": "Next posts due to publish" + } + }, + "type": "object" +}
- Changed
get_post1 field changed- changed
Output schema / (root)Previous value: -nullNew value: +{ + "$schema": "http://json-schema.org/draft-07/schema#", + "additionalProperties": {}, + "properties": { + "post": { + "additionalProperties": {}, + "properties": { + "created_at": { + "anyOf": [ + { + "type": "string" + }, + { + "type": "null" + } + ] + }, + "id": { + "type": "string" + }, + "media_urls": { + "anyOf": [ + { + "items": { + "type": "string" + }, + "type": "array" + }, + { + "type": "null" + } + ] + }, + "post_variants": { + "anyOf": [ + { + "items": { + "additionalProperties": {}, + "properties": { + "connected_account_id": { + "anyOf": [ + { + "type": "string" + }, + { + "type": "null" + } + ] + }, + "content": { + "anyOf": [ + { + "type": "string" + }, + { + "type": "null" + } + ], + "description": "Caption for this platform/account" + }, + "error_message": { + "anyOf": [ + { + "type": "string" + }, + { + "type": "null" + } + ] + }, + "id": { + "type": "string" + }, + "platform": { + "description": "Platform id, e.g. instagram, linkedin", + "type": "string" + }, + "platform_post_id": { + "anyOf": [ + { + "type": "string" + }, + { + "type": "null" + } + ] + }, + "published_at": { + "anyOf": [ + { + "type": "string" + }, + { + "type": "null" + } + ] + }, + "status": { + "anyOf": [ + { + "type": "string" + }, + { + "type": "null" + } + ] + } + }, + "required": [ + "id", + "platform" + ], + "type": "object" + }, + "type": "array" + }, + { + "type": "null" + } + ], + "description": "One entry per platform/account" + }, + "published_at": { + "anyOf": [ + { + "type": "string" + }, + { + "type": "null" + } + ] + }, + "raw_prompt": { + "anyOf": [ + { + "type": "string" + }, + { + "type": "null" + } + ] + }, + "scheduled_at": { + "anyOf": [ + { + "type": "string" + }, + { + "type": "null" + } + ] + }, + "status": { + "description": "draft | scheduled | publishing | published | failed", + "type": "string" + } + }, + "required": [ + "id", + "status" + ], + "type": "object" + } + }, + "required": [ + "post" + ], + "type": "object" +}
- Changed
list_connected_accounts1 field changed- changed
Output schema / (root)Previous value: -nullNew value: +{ + "$schema": "http://json-schema.org/draft-07/schema#", + "additionalProperties": {}, + "properties": { + "accounts": { + "items": { + "additionalProperties": {}, + "properties": { + "created_at": { + "anyOf": [ + { + "type": "string" + }, + { + "type": "null" + } + ] + }, + "id": { + "type": "string" + }, + "platform": { + "type": "string" + }, + "platform_avatar_url": { + "anyOf": [ + { + "type": "string" + }, + { + "type": "null" + } + ] + }, + "platform_username": { + "anyOf": [ + { + "type": "string" + }, + { + "type": "null" + } + ] + }, + "scopes": { + "anyOf": [ + { + "items": { + "type": "string" + }, + "type": "array" + }, + { + "type": "null" + } + ] + }, + "status": { + "anyOf": [ + { + "type": "string" + }, + { + "type": "null" + } + ], + "description": "connected | expired" + }, + "token_expires_at": { + "anyOf": [ + { + "type": "string" + }, + { + "type": "null" + } + ] + }, + "via_reminder": { + "anyOf": [ + { + "type": "boolean" + }, + { + "type": "null" + } + ] + } + }, + "required": [ + "id", + "platform" + ], + "type": "object" + }, + "type": "array" + }, + "is_team_workspace": { + "anyOf": [ + { + "type": "boolean" + }, + { + "type": "null" + } + ] + }, + "workspace_id": { + "anyOf": [ + { + "type": "string" + }, + { + "type": "null" + } + ] + }, + "workspace_name": { + "anyOf": [ + { + "type": "string" + }, + { + "type": "null" + } + ] + } + }, + "required": [ + "accounts" + ], + "type": "object" +}
- Changed
list_posts1 field changed- changed
Output schema / (root)Previous value: -nullNew value: +{ + "$schema": "http://json-schema.org/draft-07/schema#", + "additionalProperties": {}, + "properties": { + "counts": { + "anyOf": [ + { + "additionalProperties": {}, + "properties": { + "drafts": { + "type": "number" + }, + "failed": { + "type": "number" + }, + "published": { + "type": "number" + }, + "scheduled": { + "type": "number" + }, + "total": { + "type": "number" + } + }, + "required": [ + "total", + "scheduled", + "published", + "drafts", + "failed" + ], + "type": "object" + }, + { + "type": "null" + } + ], + "description": "Workspace-wide totals per status" + }, + "hasMore": { + "anyOf": [ + { + "type": "boolean" + }, + { + "type": "null" + } + ] + }, + "nextOffset": { + "anyOf": [ + { + "type": "number" + }, + { + "type": "null" + } + ] + }, + "posts": { + "items": { + "additionalProperties": {}, + "properties": { + "created_at": { + "anyOf": [ + { + "type": "string" + }, + { + "type": "null" + } + ] + }, + "id": { + "type": "string" + }, + "media_urls": { + "anyOf": [ + { + "items": { + "type": "string" + }, + "type": "array" + }, + { + "type": "null" + } + ] + }, + "post_variants": { + "anyOf": [ + { + "items": { + "additionalProperties": {}, + "properties": { + "connected_account_id": { + "anyOf": [ + { + "type": "string" + }, + { + "type": "null" + } + ] + }, + "content": { + "anyOf": [ + { + "type": "string" + }, + { + "type": "null" + } + ], + "description": "Caption for this platform/account" + }, + "error_message": { + "anyOf": [ + { + "type": "string" + }, + { + "type": "null" + } + ] + }, + "id": { + "type": "string" + }, + "platform": { + "description": "Platform id, e.g. instagram, linkedin", + "type": "string" + }, + "platform_post_id": { + "anyOf": [ + { + "type": "string" + }, + { + "type": "null" + } + ] + }, + "published_at": { + "anyOf": [ + { + "type": "string" + }, + { + "type": "null" + } + ] + }, + "status": { + "anyOf": [ + { + "type": "string" + }, + { + "type": "null" + } + ] + } + }, + "required": [ + "id", + "platform" + ], + "type": "object" + }, + "type": "array" + }, + { + "type": "null" + } + ], + "description": "One entry per platform/account" + }, + "published_at": { + "anyOf": [ + { + "type": "string" + }, + { + "type": "null" + } + ] + }, + "raw_prompt": { + "anyOf": [ + { + "type": "string" + }, + { + "type": "null" + } + ] + }, + "scheduled_at": { + "anyOf": [ + { + "type": "string" + }, + { + "type": "null" + } + ] + }, + "status": { + "description": "draft | scheduled | publishing | published | failed", + "type": "string" + } + }, + "required": [ + "id", + "status" + ], + "type": "object" + }, + "type": "array" + } + }, + "required": [ + "posts" + ], + "type": "object" +}
- Changed
update_post1 field changed- changed
Output schema / (root)Previous value: -nullNew value: +{ + "$schema": "http://json-schema.org/draft-07/schema#", + "additionalProperties": {}, + "properties": { + "id": { + "type": "string" + }, + "post": { + "anyOf": [ + { + "additionalProperties": {}, + "properties": { + "created_at": { + "anyOf": [ + { + "type": "string" + }, + { + "type": "null" + } + ] + }, + "id": { + "type": "string" + }, + "media_urls": { + "anyOf": [ + { + "items": { + "type": "string" + }, + "type": "array" + }, + { + "type": "null" + } + ] + }, + "post_variants": { + "anyOf": [ + { + "items": { + "additionalProperties": {}, + "properties": { + "connected_account_id": { + "anyOf": [ + { + "type": "string" + }, + { + "type": "null" + } + ] + }, + "content": { + "anyOf": [ + { + "type": "string" + }, + { + "type": "null" + } + ], + "description": "Caption for this platform/account" + }, + "error_message": { + "anyOf": [ + { + "type": "string" + }, + { + "type": "null" + } + ] + }, + "id": { + "type": "string" + }, + "platform": { + "description": "Platform id, e.g. instagram, linkedin", + "type": "string" + }, + "platform_post_id": { + "anyOf": [ + { + "type": "string" + }, + { + "type": "null" + } + ] + }, + "published_at": { + "anyOf": [ + { + "type": "string" + }, + { + "type": "null" + } + ] + }, + "status": { + "anyOf": [ + { + "type": "string" + }, + { + "type": "null" + } + ] + } + }, + "required": [ + "id", + "platform" + ], + "type": "object" + }, + "type": "array" + }, + { + "type": "null" + } + ], + "description": "One entry per platform/account" + }, + "published_at": { + "anyOf": [ + { + "type": "string" + }, + { + "type": "null" + } + ] + }, + "raw_prompt": { + "anyOf": [ + { + "type": "string" + }, + { + "type": "null" + } + ] + }, + "scheduled_at": { + "anyOf": [ + { + "type": "string" + }, + { + "type": "null" + } + ] + }, + "status": { + "description": "draft | scheduled | publishing | published | failed", + "type": "string" + } + }, + "required": [ + "id", + "status" + ], + "type": "object" + }, + { + "type": "null" + } + ], + "description": "The post after the update" + }, + "success": { + "type": "boolean" + } + }, + "required": [ + "success", + "id" + ], + "type": "object" +}
- Changed
whoami1 field changed- changed
Output schema / (root)Previous value: -nullNew value: +{ + "$schema": "http://json-schema.org/draft-07/schema#", + "additionalProperties": {}, + "properties": { + "created_at": { + "anyOf": [ + { + "type": "string" + }, + { + "type": "null" + } + ] + }, + "email": { + "anyOf": [ + { + "type": "string" + }, + { + "type": "null" + } + ] + }, + "full_name": { + "anyOf": [ + { + "type": "string" + }, + { + "type": "null" + } + ] + }, + "has_api_access": { + "anyOf": [ + { + "type": "boolean" + }, + { + "type": "null" + } + ], + "description": "Whether this account can use API keys" + }, + "id": { + "type": "string" + }, + "onboarding_completed": { + "anyOf": [ + { + "type": "boolean" + }, + { + "type": "null" + } + ] + }, + "plan": { + "anyOf": [ + { + "type": "string" + }, + { + "type": "null" + } + ] + }, + "subscription_status": { + "anyOf": [ + { + "type": "string" + }, + { + "type": "null" + } + ] + }, + "trial_end": { + "anyOf": [ + { + "type": "string" + }, + { + "type": "null" + } + ] + } + }, + "required": [ + "id" + ], + "type": "object" +}
Publisher details
- Operator
- Fuxux · Publisher source
- Operator website
- https://www.fuxux.com · Publisher source
- Vendor relationship
- First-party · Publisher source
- Documentation
- https://www.fuxux.com/docs/mcp · Publisher source
- Trust center
- Not available
- Restrictions
- Requires a Fuxux account. Sign in with your Fuxux account (OAuth) when you connect, or send a Fuxux API key (created under Settings > API keys) as a Bearer token. Every call, including listing the tools, needs one of the two. · Publisher source
Related MCP Connectors
Schedule and publish social posts across platforms, with drafts, media uploads and analytics.
Schedule and manage social media posts across connected platforms using natural language.
Schedule, publish and manage social media posts across platforms.
Schedule and publish posts on 18 social platforms, manage drafts, inbox, media and analytics.
Related MCP Servers
- AlicenseAqualityAmaintenanceSchedule and manage social media posts across 13 platforms (Bluesky, Threads, Instagram, LinkedIn, Mastodon, YouTube, Facebook, Pinterest, Telegram, Nostr, X/Twitter, Discord, Tumblr and more). OAuth 2.0 + PKCE, 10 tools, draft-first workflow for AI agents.1026AGPL 3.0
- AlicenseAqualityCmaintenanceSchedule, manage, generate, and analyze social posts across 11 networks (Instagram, TikTok, X, LinkedIn, YouTube, Facebook, Pinterest, Threads, Bluesky, Mastodon, Telegram) from any AI agent — 13 tools covering scheduling, media upload, AI caption generation, best-times, analytics, listening, and comments.1375 npmMIT
- -
- AlicenseAqualityBmaintenanceSchedule and manage social media posts across 10 platforms (Instagram, Facebook, TikTok, X, LinkedIn, YouTube, Threads, Pinterest, Bluesky, Telegram) from any MCP-compatible AI assistant. Supports batch posting, media uploads, analytics, and platform-specific features like Reels, Shorts, and carousels.11412 npm7MIT
Glama MCP Gateway
Add one secure layer between your agents and this server.