@writavo/mcp-server

@writavo/mcp-server

MCP server that connects AI assistants to Writavo CMS, enabling content creation, publishing, scheduling, and media management through natural language, with safety confirmations for irreversible actions.

Category
访问服务器

README

@writavo/mcp-server

Your Writavo Site's content, inside an AI assistant. Draft a post, set its category and byline, attach an image, schedule it, publish it, all from a conversation.

It speaks the Model Context Protocol over stdio, so it runs as a subprocess of your client rather than as a service you host.

Install

{
  "mcpServers": {
    "writavo": {
      "command": "npx",
      "args": ["-y", "@writavo/mcp-server"],
      "env": { "WRITAVO_API_KEY": "wv_sk_your_key_here" }
    }
  }
}

Create the key at https://app.writavo.com/settings/api-keys and give it only the scopes you want the assistant to have. A key never outranks the person who made it: narrowing your own permissions narrows every key you created, on the next request.

Without a key the server still starts and get_api_docs still works, so you can read the whole API reference before signing up.

What it can do

Thirty six tools are compiled from Writavo's published OpenAPI specification, plus two written by hand:

  • Articles. List, read, create, update, delete, publish, unpublish, schedule, cancel a schedule.
  • Taxonomy and people. Categories, tags and authors: list, read, create, update, delete.
  • Media. List, read, update, delete, and upload_media, which drives the whole three step presigned upload in one call so the assistant does not have to orchestrate it.
  • Pipeline. Trigger a run, read its status, read the queue.
  • Meta. Site information, content types, plan usage and balances, and get_api_docs, which needs no key at all.

What it will not do without asking

publish_article, schedule_article, every delete_* and trigger_pipeline_run do nothing on the first call. They describe what would happen and wait for confirm: true, which the assistant can only set after you have agreed. Publishing puts content on your live site, deleting is permanent, and a pipeline run spends real credits.

Two things are not reachable from an assistant at all, whatever scopes the key carries:

  • API keys. A server that can mint a secret key is a server whose compromise mints secret keys, and the key it would use to do so is in a config file on the same machine.
  • Webhooks. An assistant that can repoint delivery URLs can quietly redirect your event stream.

Both stay in the dashboard.

What it never writes down

  • Your key is sent to https://api.writavo.com/v1 as a bearer header and to nothing else. No telemetry, no analytics, no third-party host. The base URL is read from the specification and cannot be repointed off api.writavo.com by an environment variable.
  • Every reply, log line and error is passed through a redactor, so a key cannot reach your transcript even if the API echoed it back inside an error message.
  • Standard output carries protocol messages and nothing else. Every console channel is rebound to standard error before the server starts, because one stray line on stdout is a dropped connection.

Errors you might see

Each one is answered with what to change rather than a status code.

Code What it means What to do
INSUFFICIENT_SCOPE The key lacks the scope, or its creator's permissions no longer cover it Add the scope at https://app.writavo.com/settings/api-keys
NOT_ENTITLED Your plan does not include the capability Upgrade at https://app.writavo.com/billing
INSUFFICIENT_CREDITS The organisation cannot afford the next unit of work Top up at https://app.writavo.com/billing
SPEND_CAP_REACHED This Site hit the monthly ceiling you set for it Raise the cap or wait for the reset
NOT_FOUND No such object, or it belongs to a different Site Check you are using the key for the right Site

The full catalog is in get_api_docs under errors, and at https://writavo.com/docs/errors.

Prompts

  • draft-article. Research a topic and write a draft in your Site's own voice. It never publishes or schedules.
  • publish-checklist. Walk an existing draft through title, slug, SEO fields, excerpt, category, author and featured image, then ask before publishing.

Development

This package lives in the Writavo monorepo. Its tool schemas, descriptions and reference text are generated, not written:

npm run gen         regenerate from the vendored openapi.yaml
npm test            run the 44 offline smoke checks
npm run gen:check   fails if the committed tool surface is stale

Adding an endpoint to openapi.yaml and regenerating is the whole of adding a tool. Editing anything under src/generated/ fails CI.

Licence

MIT (LICENSE). Fork it, modify it, vendor it, ship it inside something else.

The MIT grant covers this client package only. It is not a licence to the Writavo Content API that the package calls, or to any other part of Writavo. Using the API still requires your own credentials and is governed by the terms at https://writavo.com/terms, and openapi.yaml (the specification this package is compiled from) remains the proprietary contract it always was.

That split is deliberate. This package is a thin, generated client: there is nothing in it worth restricting, and an MIT client is easier to trust, audit, package and list in a registry. The product is the API behind it.

推荐服务器

Baidu Map

Baidu Map

百度地图核心API现已全面兼容MCP协议,是国内首家兼容MCP协议的地图服务商。

官方
精选
JavaScript
Playwright MCP Server

Playwright MCP Server

一个模型上下文协议服务器,它使大型语言模型能够通过结构化的可访问性快照与网页进行交互,而无需视觉模型或屏幕截图。

官方
精选
TypeScript
Magic Component Platform (MCP)

Magic Component Platform (MCP)

一个由人工智能驱动的工具,可以从自然语言描述生成现代化的用户界面组件,并与流行的集成开发环境(IDE)集成,从而简化用户界面开发流程。

官方
精选
本地
TypeScript
Audiense Insights MCP Server

Audiense Insights MCP Server

通过模型上下文协议启用与 Audiense Insights 账户的交互,从而促进营销洞察和受众数据的提取和分析,包括人口统计信息、行为和影响者互动。

官方
精选
本地
TypeScript
VeyraX

VeyraX

一个单一的 MCP 工具,连接你所有喜爱的工具:Gmail、日历以及其他 40 多个工具。

官方
精选
本地
graphlit-mcp-server

graphlit-mcp-server

模型上下文协议 (MCP) 服务器实现了 MCP 客户端与 Graphlit 服务之间的集成。 除了网络爬取之外,还可以将任何内容(从 Slack 到 Gmail 再到播客订阅源)导入到 Graphlit 项目中,然后从 MCP 客户端检索相关内容。

官方
精选
TypeScript
Kagi MCP Server

Kagi MCP Server

一个 MCP 服务器,集成了 Kagi 搜索功能和 Claude AI,使 Claude 能够在回答需要最新信息的问题时执行实时网络搜索。

官方
精选
Python
e2b-mcp-server

e2b-mcp-server

使用 MCP 通过 e2b 运行代码。

官方
精选
Neon MCP Server

Neon MCP Server

用于与 Neon 管理 API 和数据库交互的 MCP 服务器

官方
精选
Exa MCP Server

Exa MCP Server

模型上下文协议(MCP)服务器允许像 Claude 这样的 AI 助手使用 Exa AI 搜索 API 进行网络搜索。这种设置允许 AI 模型以安全和受控的方式获取实时的网络信息。

官方
精选