autowhisper-mcp
Drive your AutoWhisper AI CMO to generate and publish marketing content from any MCP client.
¿Debería usar esto?
Calidad y seguridad
Hallazgos (4)
- HIGH
- MEDIUMen autowhisper_cmo
- MEDIUMen autowhisper_cmo
- INFOen autowhisper_cmo
Basado en el análisis automatizado de las definiciones de herramientas y el cumplimiento del protocolo.
Costo de contexto
Este es el número aproximado de tokens que se consumen cada vez que las herramientas del servidor se cargan en el contexto de un modelo. Los recuentos más altos reducen la atención disponible para otras tareas.
Instalar
Instalación con un clic
Agrega esto a tu archivo `claude_desktop_config.json`:
{
"mcpServers": {
"autowhisper-mcp": {
"command": "npx",
"args": [
"autowhisper-mcp"
]
}
}
}Paquetes ejecutables
0.9.0stdioPuntos de conexión remotos
https://autowhisper.xyz/mcpstreamable-httpQué puede hacer
Inventario de herramientas
Herramientas (12)
⚪autowhisper_products_summary(workspace_id, autowhisper_token)
Fast product counts by account/workspace. Use this for "how many products do I have?" instead of spending a CMO chat turn. Counts by workspace come with it.
Esquema de entrada
{
"type": "object",
"properties": {
"workspace_id": {
"type": "number",
"description": "Workspace to read. Omit for the user's CURRENT workspace — other workspaces are NOT included. Get other ids from autowhisper_status."
},
"autowhisper_token": {
"type": "string",
"description": "Optional: your AutoWhisper API token, for clients that cannot set an Authorization header. Takes precedence over the header. Never echoed back."
}
},
"required": []
}🟢autowhisper_products(include_archived, workspace_id, limit, autowhisper_token)
Fast product list with optional workspace/archive filters. Each row carries the product id used by autowhisper_cmo, its type, whether it has a main image, and its storefront link.
Esquema de entrada
{
"type": "object",
"properties": {
"include_archived": {
"type": "boolean",
"description": "Include archived products."
},
"workspace_id": {
"type": "number",
"description": "Workspace to read. Omit for the user's CURRENT workspace — other workspaces are NOT included. Get other ids from autowhisper_status."
},
"limit": {
"type": "number",
"description": "Maximum products to return, capped by the API."
},
"autowhisper_token": {
"type": "string",
"description": "Optional: your AutoWhisper API token, for clients that cannot set an Authorization header. Takes precedence over the header. Never echoed back."
}
},
"required": []
}🟢autowhisper_status(workspace_id, autowhisper_token)
Fast CMO/account snapshot for the current workspace: products, feed, platforms, wallet, settings — plus the directory of workspaces (with ids) to pass as workspace_id. Every count is for the CURRENT workspace; account-wide product counts are in autowhisper_products_summary.
Esquema de entrada
{
"type": "object",
"properties": {
"workspace_id": {
"type": "number",
"description": "Workspace to read. Omit for the user's CURRENT workspace — other workspaces are NOT included. Get other ids from autowhisper_status."
},
"autowhisper_token": {
"type": "string",
"description": "Optional: your AutoWhisper API token, for clients that cannot set an Authorization header. Takes precedence over the header. Never echoed back."
}
},
"required": []
}🟡autowhisper_feed(status, workspace_id, autowhisper_token)
Fast CMO feed list with status counts and the actions available on each row (with their arguments). Each row prints BOTH ids: `feed_item #<id>` addresses the review card (autowhisper_action) while `content: <type> #<id>` addresses the content itself (autowhisper_edit_content).
Esquema de entrada
{
"type": "object",
"properties": {
"status": {
"type": "string",
"description": "Filter by feed status (pending / approved / rejected / executed / all).",
"enum": [
"pending",
"approved",
"rejected",
"executed",
"all"
]
},
"workspace_id": {
"type": "number",
"description": "Workspace to read. Omit for the user's CURRENT workspace — other workspaces are NOT included. Get other ids from autowhisper_status."
},
"autowhisper_token": {
"type": "string",
"description": "Optional: your AutoWhisper API token, for clients that cannot set an Authorization header. Takes precedence over the header. Never echoed back."
}
},
"required": []
}🟡autowhisper_posts(status, workspace_id, autowhisper_token)
Fast post queue list, optionally filtered by status. Failed rows carry the reason and whether a retry can help (needs reconnect means a human must re-authorise that channel).
Esquema de entrada
{
"type": "object",
"properties": {
"status": {
"type": "string",
"description": "Filter by post status."
},
"workspace_id": {
"type": "number",
"description": "Workspace to read. Omit for the user's CURRENT workspace — other workspaces are NOT included. Get other ids from autowhisper_status."
},
"autowhisper_token": {
"type": "string",
"description": "Optional: your AutoWhisper API token, for clients that cannot set an Authorization header. Takes precedence over the header. Never echoed back."
}
},
"required": []
}⚪autowhisper_wallet(autowhisper_token)
Fast credit balance for the account.
Esquema de entrada
{
"type": "object",
"properties": {
"autowhisper_token": {
"type": "string",
"description": "Optional: your AutoWhisper API token, for clients that cannot set an Authorization header. Takes precedence over the header. Never echoed back."
}
},
"required": []
}🟢autowhisper_platforms(workspace_id, autowhisper_token)
Fast connected-platform list and connection health for ONE workspace.
Esquema de entrada
{
"type": "object",
"properties": {
"workspace_id": {
"type": "number",
"description": "Workspace to read. Omit for the user's CURRENT workspace — other workspaces are NOT included. Get other ids from autowhisper_status."
},
"autowhisper_token": {
"type": "string",
"description": "Optional: your AutoWhisper API token, for clients that cannot set an Authorization header. Takes precedence over the header. Never echoed back."
}
},
"required": []
}🟢autowhisper_performance(workspace_id, window_days, autowhisper_token)
Read-only cross-channel results for ONE workspace: a four-layer funnel, a per-channel breakdown, and ad spend over the window. Use this to answer how published content is actually doing, and before advising which creative to fund or scale — autowhisper_feed and autowhisper_posts only say what was made and sent, never whether it worked. ad_spend_cents is null (not 0) when the account has no active workspace: null means we cannot answer, 0 would assert nothing was spent.
Esquema de entrada
{
"type": "object",
"properties": {
"workspace_id": {
"type": "number",
"description": "Workspace to read. Omit for the user's CURRENT workspace — other workspaces are NOT included. Get other ids from autowhisper_status."
},
"window_days": {
"type": "number",
"description": "Look-back window in days. The server clamps it to its own supported range and defaults when omitted."
},
"autowhisper_token": {
"type": "string",
"description": "Optional: your AutoWhisper API token, for clients that cannot set an Authorization header. Takes precedence over the header. Never echoed back."
}
},
"required": []
}🟡autowhisper_action(tool, feed_item_id, post_id, scheduled_at, reason, ...)
Run an explicit feed or post action without an AI chat turn. High-impact actions return a confirmation message_id; confirm it with autowhisper_confirm. approve_feed_item PUBLISHES: it schedules the piece to every connected platform, and for a video draft it also starts the render and charges credits for it — approving is the spend, not a bookmark. When nothing is connected it schedules nothing, and connecting a platform later does NOT go back for it; the result line says which happened. regenerate_content rewrites an existing draft IN PLACE (same record id, new text) — it takes content_type + content_id, not feed_item_id, and always returns a confirmation because it spends credits.
Esquema de entrada
{
"type": "object",
"properties": {
"tool": {
"type": "string",
"enum": [
"approve_feed_item",
"reject_feed_item",
"dismiss_feed_item",
"publish_content",
"regenerate_content",
"reschedule_post",
"retry_post",
"mark_as_published",
"boost_post"
]
},
"feed_item_id": {
"type": "number",
"description": "Required for feed actions. The leading `feed_item #<id>` in an autowhisper_feed row — NOT the `content: <type> #<id>` on the same row."
},
"post_id": {
"type": "number",
"description": "Required for post actions."
},
"scheduled_at": {
"type": "string",
"description": "Required for reschedule_post; ISO8601 or natural language supported by AutoWhisper."
},
"reason": {
"type": "string",
"description": "Optional reason for rejecting a feed item."
},
"content_type": {
"type": "string",
"description": "Required for regenerate_content. The snake_case value from the row's `content: <type> #<id>` — NOT the class name.",
"enum": [
"social_copy",
"lookbook",
"feature_poster",
"idea"
]
},
"content_id": {
"type": "number",
"description": "Required for regenerate_content. The id from the row's `content: <type> #<id>` — NOT feed_item_id."
},
"workspace_id": {
"type": "number",
"description": "Workspace to act in. Omit for the user's CURRENT workspace. The target item must live in that workspace — an id from another workspace will not be found."
},
"autowhisper_token": {
"type": "string",
"description": "Optional: your AutoWhisper API token, for clients that cannot set an Authorization header. Takes precedence over the header. Never echoed back."
}
},
"required": [
"tool"
]
}🟡autowhisper_edit_content(content_type, content_id, title, body, hook, ...)
Directly update exact content fields without a generation run or credit spend. Pass body for the full replacement copy/story. IDs: content_id is the CONTENT id — in autowhisper_feed output that is the `content: <type> #<id>` part of a row, NOT the leading `feed_item #<id>` (that one belongs to autowhisper_action).
Esquema de entrada
{
"type": "object",
"properties": {
"content_type": {
"type": "string",
"description": "Content type in snake_case, as printed in the feed row's `content:` part.",
"enum": [
"social_copy",
"lookbook",
"feature_poster",
"idea"
]
},
"content_id": {
"type": "number",
"description": "The CONTENT id from the feed row's `content: <type> #<id>` — not the feed_item id."
},
"title": {
"type": "string"
},
"body": {
"type": "string"
},
"hook": {
"type": "string"
},
"cta": {
"type": "string"
},
"tone": {
"type": "string"
},
"keywords": {
"type": "array",
"items": {
"type": "string"
}
},
"workspace_id": {
"type": "number",
"description": "Workspace to act in. Omit for the user's CURRENT workspace. The target item must live in that workspace — an id from another workspace will not be found."
},
"autowhisper_token": {
"type": "string",
"description": "Optional: your AutoWhisper API token, for clients that cannot set an Authorization header. Takes precedence over the header. Never echoed back."
}
},
"required": [
"content_type",
"content_id"
]
}🟡autowhisper_cmo(instruction, product_id, workspace_id, autowhisper_token)
Send a natural-language instruction to your AutoWhisper AI CMO and get its reply. Best at: (1) generating batches of on-brand ad creatives (UGC video, posts, images) for paid campaigns, (2) advising which creative to fund and how to target, (3) keeping every social channel alive across 30+ networks, plus analytics. Examples: "Make a batch of ad creatives for my product https://mystore.com/widget", "Which creative should I run first, and how should I target?", "Keep my channels posted this week". Honest scope: posting ≠ traffic — reach comes from the user's paid ads. To add a product, pass a product URL (the CMO extracts the image from the page) — a text-only description will not create it, and placeholder/stock images are rejected.
Esquema de entrada
{
"type": "object",
"properties": {
"instruction": {
"type": "string",
"description": "What you want the CMO to do, in natural language."
},
"product_id": {
"type": "string",
"description": "Optional: act on a specific product by its id."
},
"workspace_id": {
"type": "number",
"description": "Workspace to act in. Omitting it uses the account's FIRST active workspace, which may not be the one you were just reading — and the workspace decides the generated content's LANGUAGE. Pass the workspace_id shown by autowhisper_feed / autowhisper_platforms / autowhisper_products whenever you are working on a specific one."
},
"autowhisper_token": {
"type": "string",
"description": "Optional: your AutoWhisper API token, for clients that cannot set an Authorization header. Takes precedence over the header. Never echoed back."
}
},
"required": [
"instruction"
]
}⚪autowhisper_confirm(message_id, decision, workspace_id, autowhisper_token)
Approve or decline a high-impact action the CMO or autowhisper_action asked you to confirm. Pass the message_id it gave you and decision "yes" or "no".
Esquema de entrada
{
"type": "object",
"properties": {
"message_id": {
"type": "number",
"description": "The message_id from the confirmation request."
},
"decision": {
"type": "string",
"enum": [
"yes",
"no"
],
"description": "\"yes\" to perform the action, \"no\" to decline."
},
"workspace_id": {
"type": "number",
"description": "The workspace the confirmation lives in — pass the SAME one you used for autowhisper_cmo. Omitting it falls back to the account's first active workspace and 404s on a bubble that lives anywhere else."
},
"autowhisper_token": {
"type": "string",
"description": "Optional: your AutoWhisper API token, for clients that cannot set an Authorization header. Takes precedence over the header. Never echoed back."
}
},
"required": [
"message_id",
"decision"
]
}Comunidad
Evidencia