autowhisper-mcp

Drive your AutoWhisper AI CMO to generate and publish marketing content from any MCP client.

我该使用它吗

质量与安全性

B
描述质量
98%
模式完整度
92%
命名质量
80%
投毒风险
60%
权限匹配度
100%
协议合规性
100%

发现(4)

  • HIGHTool poisoning patterns detected
  • MEDIUMTool 'autowhisper_cmo' description contains placeholder text在 autowhisper_cmo 中
  • MEDIUMTool description contains URL to non-standard domain在 autowhisper_cmo 中
  • INFOTool description contains placeholder or incomplete text在 autowhisper_cmo 中

基于对工具定义和协议合规性的自动分析。

上下文开销

~2,724token 数(工具定义)
~1.9 KB典型响应大小
对注意力有显著影响(占 128k 上下文窗口的 2.13%)

这是每次将服务器的工具加载到模型上下文窗口时所消耗的大致 token 数。数值越高,可用于其他任务的注意力就越少。

安装

一键安装

将以下内容添加到你的 `claude_desktop_config.json` 文件中:

{
  "mcpServers": {
    "autowhisper-mcp": {
      "command": "npx",
      "args": [
        "autowhisper-mcp"
      ]
    }
  }
}

可运行的软件包

npmautowhisper-mcp0.9.0stdio

远程端点

https://autowhisper.xyz/mcpstreamable-http

它能做什么

工具清单

工具(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.

输入模式

{
  "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.

输入模式

{
  "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.

输入模式

{
  "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).

输入模式

{
  "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).

输入模式

{
  "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.

输入模式

{
  "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.

输入模式

{
  "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.

输入模式

{
  "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.

输入模式

{
  "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).

输入模式

{
  "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.

输入模式

{
  "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".

输入模式

{
  "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"
  ]
}

社区

评价此服务器

证据

最近观测

已验证未记录版本12 个工具