Markaestro

com.markaestro由 markaestro.com 發布官方發布者v0.4.0更新於 Nov 4, 2026

Schedule, publish, and review social posts and analytics for a Markaestro brand.

已驗證Streamable HTTP可網頁執行資料與分析商業與電商媒體與設計

概覽

AI 產生的概覽

Markaestro 的 MCP 伺服器讓 AI 助理為某個品牌草擬、排程、發佈社群貼文並檢視成效分析。

可以做什麼
  • 列出可操作的品牌、發佈目的地,以及品牌描述、語氣與視覺風格
  • 依狀態讀取貼文,編輯草稿或已排程貼文,刪除草稿或取消尚未發佈的貼文
  • 建立、批次建立、改期或改狀態的貼文,並排入立即發佈
  • 上傳並檢視媒體素材
  • 取得品牌與單篇貼文分析、指標歷史、最佳發文時段,並重新整理平台即時指標
  • 管理長青循環內容佇列並追蹤發佈工作的執行結果
適用情境
當你透過 Markaestro 管理社群媒體,希望助理在對話中草擬、排程與發佈貼文,或查看成效數據與發文時段建議時適用。
執行需求
可使用託管端點並以 OAuth 登入(無需貼上憑證),或在本地以 npx 執行 npm 套件(stdio)。無介面使用需要 Markaestro 工作區 API 金鑰,透過 MARKAESTRO_API_KEY 或 Authorization 標頭傳入;可選用 MARKAESTRO_READ_ONLY=1 僅啟用讀取工具。需要連線至 Markaestro 與各社群平台的網路。
安裝前請注意
API 金鑰可存取單一品牌或工作區內所有品牌,應盡量縮小範圍,評估階段優先使用測試金鑰。發佈、編輯、批次修改與刪除會作用於真實社群帳號;publish_post 會立即發佈,設計上應先與使用者確認。上傳的媒體與貼文資料會傳送至 Markaestro 及已連結的平台。帳號、帳務、團隊、金鑰與 webhook 管理不在其範圍內。

安裝

在 SourceWeft 中

  1. 開啟 儀表板中的 Markaestro,將其新增到工作區。
  2. 連接 所需的 憑證。它們會被私密儲存,絕不會在公開頁面上展示。
  3. 為需要使用其工具的對話啟用該服務。

Web executable,透過 Streamable HTTP。 遠端服務在工作區中設定後即可從網頁執行環境執行。

交給代理程式安裝

把這段提示詞貼上到 Claude Code、Codex、Cursor 等代理程式,或 SourceWeft 對話中。代理程式會讀取該伺服器的安裝指南,先向你展示發布者、端點和登入方式,經你同意後再把它新增到你的客戶端。金鑰不會寫進任何命令。

閱讀 https://sourceweft.com/mcp/com.markaestro%2Fmcp/install.md,並按其中說明把這個 MCP 伺服器接入我的客戶端。修改任何設定之前,先告訴我它的發布者、端點和登入方式,等我確認。不要把 API 金鑰寫進命令或我會提交的檔案;問我金鑰應從哪裡取得。

檢視代理程式所依據的安裝指南

其他 MCP 客戶端

把它新增到你客戶端的 mcpServers 設定中。 客戶端會在首次連接時完成 OAuth 登入。

{
  "mcpServers": {
    "markaestro": {
      "type": "http",
      "url": "https://markaestro.com/api/public/v1/mcp"
    }
  }
}

README

@markaestro/mcp

A Model Context Protocol server that lets AI agents (Claude Code, Claude, Cursor, ChatGPT, Grok, Grok Bot, OpenClaw, Hermes, and any other MCP client) schedule, publish, and review Markaestro posts through the public API. Exact connection steps per client are on https://markaestro.com/developers/agents (?client=cursor, chatgpt, grok, grok-bot, openclaw, hermes, or headless opens that tab).

Every key covers either one brand or every brand in its workspace, chosen when the key is created or at the sign-in consent. A single-brand key works on that brand alone. An all-brands key sees every brand: list_products returns them all, and the agent passes productId to create_post, create_posts, list_posts, and create_evergreen_queue, and to the analytics tools to report on one brand instead of the whole workspace.

Tools

ToolWhat it does
list_productsThe brands this key can act on (one, or all in the workspace) and their connected channels
list_destinationsPublishable destinations of the brand (pages, accounts) with ids
get_brand_profileA brand's description, voice, and visual identity (read-only)
list_posts, get_postRead posts by status, page through with cursor
create_postSave a draft, or schedule when scheduledAt is set
update_postEdit a draft or scheduled post: caption, media, one channel's settings, or its time
publish_postQueue an immediate publish; returns a job run
mark_post_postedRecord that a person posted a manual-reminder or TikTok-inbox post
delete_postDelete a draft, or cancel a post before it reaches any platform; published posts are refused
bulk_postsReschedule or restatus up to 25 posts
create_postsUp to 25 posts in one call, per-item results
upload_mediaUpload from a file path, URL, or data URL; returns the asset id
list_media, get_mediaUploaded assets, processing state, reference counts
get_analyticsBrand performance over a window: totals, channels, daily series, top posts, heatmap, insights. Covers posts published through Markaestro and posts published directly on the platform
list_post_analyticsEvery post in the window with its latest metrics and source, sortable by views, reach, engagements, or engagement rate
get_post_analytics_historyThe 1h to 90d metric snapshots of one post, with growth between stages
refresh_analyticsPull live metrics from the platforms now (a few calls a minute)
suggest_post_timesThe brand's best posting windows, learned from its own history
get_job_run, list_job_runsFollow a publish to succeeded or failed
get_channel_rulesPer-channel media, caption, and delivery-mode rules
get_tiktok_posting_optionsThe TikTok creator's live privacy levels and interaction options, needed for a Direct Post

The Evergreen tools (preview_, create_, get_, list_, update_, activate_, pause_, and resume_evergreen_queue, list_evergreen_runs, get_evergreen_analytics) manage proven recurring content.

Agents manage social media and nothing else: account settings, billing, team, API keys, webhooks, and channel connections are not exposed, and no tool deletes a published post, takes one down from a platform, or archives an Evergreen queue. Those stay with the user in Markaestro. The same rule holds at the REST layer for a key issued through the agent sign-in: it cannot remove a published post, take one down from a platform, or manage webhooks (FORBIDDEN_AGENT_CONNECTION). A key a person mints in Settings keeps the full REST surface its scopes allow.

Also served: the markaestro://channel-rules resource and a schedule_post prompt that walks an agent through a safe scheduling flow.

Posting is draft-first. create_post without scheduledAt never publishes; publish_post is the only tool that publishes now, and its description tells the agent to confirm with the user first.

Two ways to connect

Hosted (nothing to install, nothing to paste). Markaestro serves the same tools over Streamable HTTP at https://markaestro.com/api/public/v1/mcp. Add it with no credentials and the first tool call opens the browser: sign in, pick the workspace and brand, click Allow. The client receives an API key bound to that brand and refreshes it on its own.

bash
claude mcp add --transport http markaestro https://markaestro.com/api/public/v1/mcp

This is standard OAuth 2.1 (PKCE, dynamic client registration, discovery at /.well-known/oauth-protected-resource and /.well-known/oauth-authorization-server), so claude.ai, Cursor, and other MCP clients connect the same way. Connected agents are listed and revoked in Settings, API.

For headless or CI use, pass a workspace API key as a bearer header instead:

bash
claude mcp add --transport http markaestro https://markaestro.com/api/public/v1/mcp \  --header "Authorization: Bearer mk_live_..."
json
{  "mcpServers": {    "markaestro": {      "type": "http",      "url": "https://markaestro.com/api/public/v1/mcp",      "headers": { "Authorization": "Bearer mk_live_..." }    }  }}

Send x-markaestro-read-only: 1 as an extra header to get only the reading tools.

Local package. Run the server on your machine over stdio, which also lets upload_media read local files:

Setup

  1. Create an API key in Markaestro under Settings > API Access. Pick the brand, the scopes the agent needs (products.read, posts.read, posts.write, media.write, and posts.publish if it may publish), and prefer a test key while you evaluate.
  2. Give the key to the server through MARKAESTRO_API_KEY.

Claude Code

bash
claude mcp add markaestro -e MARKAESTRO_API_KEY=mk_live_... -- npx -y @markaestro/mcp

Claude Desktop, Cursor, and other JSON configs

json
{  "mcpServers": {    "markaestro": {      "command": "npx",      "args": ["-y", "@markaestro/mcp"],      "env": { "MARKAESTRO_API_KEY": "mk_live_..." }    }  }}

Environment

VariableRequiredDefault
MARKAESTRO_API_KEYyesn/a
MARKAESTRO_BASE_URLnohttps://markaestro.com
MARKAESTRO_READ_ONLYnounset; 1 registers only reading tools

What the server does for you

  • Sends an Idempotency-Key on every mutation, minted once per call, so a retried request replays instead of double-posting.
  • Retries 429 and transient 5xx responses using the server's Retry-After.
  • Runs the three-step direct media upload (session, PUT to storage, finalize) and never sends the API key to the storage URL.
  • Returns API failures as tool errors with the stable error code, any per-channel issues, and a hint about what to change.

Claude Code plugin

The skill and the hosted server ship together as a plugin:

bash
claude plugin marketplace add markaestro/markaestro-agentsclaude plugin install markaestro@markaestro

Deploying

Maintainers: the full release runbook (every surface, the version files, and the exact commands) is docs/operations/mcp-release.md in the Markaestro app repository. Summary:

SurfaceHow it ships
Hosted MCP (/api/public/v1/mcp)Part of the Next.js app; deploys on push to main like every route
@markaestro/mcp on npmcd mcp && npm version <x.y.z> && npm publish (public scoped package; prepublishOnly builds). Bump src/version.ts with it
Plugin and skillMirrored to the public repo markaestro/markaestro-agents with node scripts/sync-agents-repo.mjs <clone>, then pushed there; claude plugin marketplace add markaestro/markaestro-agents reads it. The skill alone can be copied to ~/.claude/skills/markaestro
MCP Registry (com.markaestro/mcp)After the npm publish of the same version: mcp-publisher login http --domain markaestro.com --private-key <hex> then mcp-publisher publish from mcp/. The public key is served at /.well-known/mcp-registry-auth
Glama (markaestro/markaestro-agents)Admin, Dockerfile: build step npm install -g @markaestro/mcp@<version>, CMD markaestro-mcp; Build, then Create Release

Development

bash
cd mcpnpm installnpm run buildMARKAESTRO_API_KEY=mk_test_... MARKAESTRO_BASE_URL=http://localhost:3000 npm run smoke            # local stdioMARKAESTRO_API_KEY=mk_test_... MARKAESTRO_BASE_URL=http://localhost:3000 npm run smoke -- --remote # hosted endpoint

Unit tests live in src/__tests__ and run with the repository's npm test. The smoke script starts the built server over stdio, lists tools, reads the brand, creates a draft, reads it back, and deletes it. Nothing is published.

來源:mcp/README.md,提交 64ae61c

工具

0
該伺服器需要登入,因此 SourceWeft 無法在沒有帳號的情況下讀取其工具,也未收錄。已連接帳號所能看到的內容可能因帳號及其權限而異。

版本歷史

4
  1. v0.4.0最新Nov 4, 2026
  2. v0.3.4Oct 17, 2026
  3. v0.3.3Sep 27, 2026
  4. v0.3.2Sep 24, 2026

評分

已滿足適用檢查項的 85%

該評分衡量此收錄條目的完整程度,依據註冊中心條目、端點與公開來源計算得出。它不是對伺服器本身的評價,也不表示伺服器安全或目前可用:可連通性是帶日期的檢查結果,評分也不包含安裝量或使用者評價。

  • 近 30 天內可連通必需25 分
  • 已宣告認證方式必需10 分
  • 已列出工具15 分

    請讓伺服器在無憑證時回應 tools/list,或發布可在沙箱中無憑證啟動的軟體包。

  • 描述必需15 分
  • 圖示10 分
  • 文件15 分
  • 授權條款10 分