Better Writer MCP
Better Writer MCP is a specialized writing assistant that generates natural, human-like Chinese content in Markdown format, avoiding typical "AI tone" while maintaining high quality and readability.
Key Features:
• Natural Chinese Writing - Produces fluent, conversational content through built-in writing standards, forbidden/recommended phrase lists, and rhythm awareness
• Web Search Integration - Enables real-time information gathering with configurable search engines (native or Exa API) and adjustable result limits
• File Auto-Save - Automatically saves generated content to specified file paths with automatic directory creation
• Length Control - Supports setting approximate target character count for output
• Context-Aware Generation - Accepts background information, custom rules, and source content for rewriting/translation to match specific scenarios
• Multi-Model Support - Works with OpenRouter (Qwen, Claude, GPT) or Gemini backends with configurable model selection
• Auto-Invocation Ready - Can be set as default writing tool (via BW_DEFAULT_TOOL=true) to automatically handle all writing requests without explicit tool mention
Enables content generation using Gemini models through Google AI Studio API, with support for multiple Gemini versions (2.5 Flash and Pro) and configurable thinking mode.
Click on "Install Server".
Wait a few minutes for the server to deploy. Once ready, it will show a "Started" state.
In the chat, type
@followed by the MCP server name and your instructions, e.g., "@Better Writer MCP帮我写一篇关于人工智能伦理的博客文章,需要联网查最新资料"
That's it! The server will respond to your query, and you can continue using it as needed.
Here is a step-by-step guide with screenshots.
Better Writer MCP — 帮助你生成更好文章内容的 MCP
一个专注于生成自然、流畅中文内容的 MCP 工具。它能写出"像人写的"文字,支持联网搜索最新资料,并可直接保存到指定文件。默认使用我认为内容生成效果最好,最自然的 Qwen3-Next-80B-A3B 模型。
核心设计思路
Better Writer MCP 的提示词设计围绕三个核心理念:
可读性优先 - 通过明确的"禁用词表"和"推荐表达",避免"若""则""且"等公文腔,让内容更贴近真实对话
严格的规范约束 - 内置详细的写作规范(段落结构、标题层级、标点使用等),确保输出质量稳定
上下文感知 - 支持传入背景信息和自定义规则,让生成内容更符合具体场景需求
Better Writer 注重写作的节奏感与真实性:通过长短句交错、用词多样化、个人化视角等手段,让生成的内容具有更高的"突发性"和"困惑度"——这正是人类写作的特征。它不追求完美的平滑,反而保留一些自然的"不完美",让文字更有温度。
Related MCP server: bing-cn-mcp-server
快速开始
第一步:获取 API Key
Better Writer MCP 支持两种 LLM 后端:OpenRouter 和 Gemini。
选项 A:使用 OpenRouter(默认,支持多种模型)
访问 OpenRouter 官网 注册账号
在账户设置中创建 API Key
配置到环境变量或 MCP 配置文件中
选项 B:使用 Gemini(Google 官方 API)
访问 Google AI Studio 获取 API Key
配置
GEMINI_API_KEY和LLM_BACKEND=gemini环境变量
第二步:配置 MCP Server
在任何支持配置 MCP 的客户端中添加如下配置:
使用 OpenRouter(默认)
{
"better-writer": {
"command": "npx",
"args": ["-y", "better-writer-mcp"],
"env": {
"OPENROUTER_KEY": "your-api-key-here"
}
}
}使用 Gemini
{
"better-writer": {
"command": "npx",
"args": ["-y", "better-writer-mcp"],
"env": {
"LLM_BACKEND": "gemini",
"GEMINI_API_KEY": "your-gemini-api-key-here"
}
}
}高级配置
环境变量说明
变量名 | 说明 | 默认值 | 是否必填 |
| LLM 后端选择: |
| ❌ 否 |
OpenRouter 相关 | |||
| OpenRouter API 密钥 | - | ✅ 使用 OpenRouter 时必填 |
| 指定使用的模型 |
| ❌ 否 |
Gemini 相关 | |||
| Gemini API 密钥 | - | ✅ 使用 Gemini 时必填 |
| 指定使用的 Gemini 模型 |
| ❌ 否 |
| 禁用 Gemini 2.5 的思考模式 |
| ❌ 否 |
通用配置 | |||
| 是否作为默认写作工具 |
| ❌ 否 |
| 自定义写作规则 | - | ❌ 否 |
关于 BW_DEFAULT_TOOL 环境变量
这个环境变量控制 Better Writer 的调用方式:
设置为 true(推荐):
AI 会在任何写作需求时自动调用 Better Writer
用户只需说"写一篇文章",无需提及工具名称
适合作为主要写作工具使用
设置为 false(默认):
只有用户明确说"用 Better Writer"或"用 bw"时才会调用
适合与其他写作工具共存的场景
配置示例:
{
"mcpServers": {
"bw": {
"command": "npx",
"args": ["-y", "better-writer-mcp"],
"env": {
"OPENROUTER_KEY": "your-api-key-here",
"BW_DEFAULT_TOOL": "true"
}
}
}
}自定义写作规则
如果你有特定的写作规范要求,可以通过 BETTER_WRITER_CUSTOM_RULES 环境变量传入。例如:
{
"mcpServers": {
"better-writer": {
"command": "npx",
"args": ["-y", "better-writer-mcp"],
"env": {
"OPENROUTER_KEY": "your-api-key-here",
"BETTER_WRITER_CUSTOM_RULES": "- 所有代码必须有中文注释\n- 技术术语首次出现时给出解释\n- 避免使用'简单''容易'等主观词"
}
}
}
}这些自定义规则会被合并到内置的写作规范中,让生成的内容更符合你的需求。
更换模型
通过 OpenRouter 使用其他模型
如果你想使用其他模型(比如 GPT-4、Claude 等),可以设置 OPENROUTER_MODEL:
{
"env": {
"OPENROUTER_KEY": "your-api-key-here",
"OPENROUTER_MODEL": "anthropic/claude-3.5-sonnet"
}
}支持的模型列表请参考 OpenRouter Models。
使用不同的 Gemini 模型
Gemini 提供多个模型版本,你可以根据需求选择:
{
"env": {
"LLM_BACKEND": "gemini",
"GEMINI_API_KEY": "your-gemini-api-key-here",
"GEMINI_MODEL": "gemini-2.5-pro"
}
}可用的 Gemini 模型:
gemini-2.5-flash(默认)- 速度快,成本低gemini-2.5-pro- 更强大的推理能力
关于 Gemini 2.5 的思考模式
Gemini 2.5 系列模型默认启用"思考"功能以提升质量,但会增加运行时间和令牌用量。如果你希望更快的响应速度,可以禁用它:
{
"env": {
"LLM_BACKEND": "gemini",
"GEMINI_API_KEY": "your-gemini-api-key-here",
"GEMINI_DISABLE_THINKING": "true"
}
}OpenRouter vs Gemini 对比
特性 | OpenRouter | Gemini |
模型选择 | 支持多种模型(Claude、GPT、Qwen 等) | 仅支持 Gemini 系列模型 |
Web Search | ✅ 支持(native/exa 引擎) | ❌ 不支持 |
默认模型 | Qwen3-Next-80B(中文内容生成效果好) | Gemini 2.5 Flash |
计费方式 | 按 OpenRouter 统一定价 | 按 Google 官方定价 |
API 稳定性 | 依赖 OpenRouter 服务 | Google 官方 API |
思考模式 | 取决于具体模型 | Gemini 2.5 默认启用 |
适用场景 | 需要多模型切换、联网搜索 | 仅使用 Gemini,追求稳定性 |
选择建议:
如果需要联网搜索最新资料,必须使用 OpenRouter
如果追求API 稳定性和成本控制,推荐使用 Gemini 官方 API
如果想尝试不同模型,OpenRouter 提供更多选择
使用示例
配置完成后,你可以在 AI 对话框中这么说:
如果设置了 BW_DEFAULT_TOOL=true(推荐)
直接说明写作需求即可:
写一篇智能台灯的产品介绍,300字左右写一份 MCP 协议的介绍,需要联网查最新资料,保存到 docs/mcp-intro.md帮我写个周报,内容是本周完成了三个功能模块如果使用默认设置(BW_DEFAULT_TOOL=false)
需要明确提及工具名称:
用 Better Writer 写一篇智能台灯的产品介绍,300字左右用 bw 写一份 MCP 协议的介绍,需要联网查最新资料AI 助手会自动调用 Better Writer,传递合适的参数,生成自然流畅的中文内容。
效果对比:为什么需要 Better Writer?
同样是写"MCP 协议介绍",我们来看看直接让 AI 生成和 Better Writer 生成的内容有什么区别。
Claude Sonnet 4.5 生成的版本
Model Context Protocol(MCP)作为一项创新性的技术标准,正在深刻地改变着大语言模型与外部系统的交互方式。从技术架构的角度来看,MCP 提供了一套标准化的协议规范,使得不同的 AI 模型能够以统一的方式访问各类数据源和工具服务。
MCP 的核心价值主要体现在以下几个维度。首先,它有效解决了传统 AI 应用开发中的集成难题,通过标准化的接口设计,显著降低了开发者的对接成本。其次,MCP 具备良好的可扩展性和兼容性,能够支持多种类型的资源访问,包括文件系统、数据库、API 服务等。此外,该协议还充分考虑了安全性因素,通过权限控制机制确保数据访问的安全边界。
在实际应用场景中,MCP 展现出了强大的潜力。对于企业用户而言,它能够实现 AI 模型与内部系统的无缝对接,提升工作流程的自动化水平。对于开发者来说,MCP 提供了清晰的开发范式,只需实现符合规范的服务端,即可让 AI 模型快速接入现有的业务系统。目前,包括 Claude Desktop、Cursor 等主流 AI 工具已经集成了 MCP 支持。
从技术演进的视角来看,MCP 代表了 AI 应用开发的一个重要方向。它不仅简化了技术实现的复杂度,更为构建更加开放、互联的 AI 生态系统奠定了基础。随着协议的持续完善和生态的不断丰富,MCP 有望成为 AI 领域的重要基础设施,推动人工智能技术向更加实用化、产品化的方向发展。
Better Writer 生成的版本
MCP 是 “Model Control Protocol” 的缩写,是一种用于协调大语言模型与其他工具或系统交互的轻量级协议。它不是某种特定的软件,也不是一个封闭的平台,而是一组清晰的规则和接口设计,让不同来源的模型能够以统一的方式接收指令、调用外部能力、反馈结果。
在实际应用中,我们常常需要让模型不只是“回答问题”,而是“做事”——比如查天气、下单、算账、甚至控制智能家居。但不同模型的接口各不相同,外部工具的调用方式也五花八门。MCP 的作用,就是把这些差异封装起来,提供一个标准的沟通语言。
举个例子:如果我们想让一个模型查询数据库中的订单状态,没有 MCP 时,每个系统都得写一套专属的代码来连接模型和数据库。有了 MCP,我们只需要定义一个标准的请求格式,比如:
{
"action": "query_database",
"params": {"table": "orders", "id": "12345"}
}模型看到这个结构,就知道该去调用哪个工具,传什么参数。工具收到后,执行操作,再按标准格式返回结果,比如:
{
"status": "success",
"data": {"order_status": "shipped", "estimated_delivery": "2024-06-15"}
}这个过程完全不依赖底层模型的类型——无论是本地部署的 Llama,还是云端的 GPT,只要支持 MCP 格式,就能接入。这让系统更容易扩展,也更容易维护。
MCP 的设计原则很朴素:简单、可读、无冗余。它不试图替代 HTTP、JSON 或 REST,而是专注于在“模型”和“工具”之间那最关键的一步上做好桥梁。它不追求全能,只求可靠。
目前,MCP 在一些开源项目和企业内部系统中已有落地。比如,一个客服助手系统通过 MCP 接入了 CRM、物流系统和支付网关,所有交互都遵循统一格式,运维人员不必为每个新功能重写接口逻辑。开发效率提升,出错率下降。
它不炫目,也没有大公司背书,但它解决了真实的问题。我们不需要每个模型都自带一万种插件,也不需要为每个工具写一遍适配器。MCP 提供了一种平衡:既保留了模型的灵活性,又让系统保持结构化。
如果未来越来越多的工具和模型能接受这种简单而稳定的标准,智能化系统的搭建就会变得更轻、更快、更稳。这就是 MCP 的价值:不革命,但很实用。
Available Tools
1 toolbw_writeA
【核心功能】生成自然流畅、没有"AI 味儿"的中文内容。输出 Markdown 格式文档。
【何时调用】当用户表达任何写作需求时,都应该主动调用此工具。例如:
"写一篇关于XX的文章"
"帮我写个XX介绍"
"生成XX内容"
"用通俗语言解释XX" 无需用户明确提及工具名称,优先使用此工具处理所有写作类请求。
【参数说明】
instruction(必填):写作指令,明确说明你要生成的内容目标与重点。
backgroundContext(可选):背景信息与规范。Better Writer 对你的信息一无所知,上下文越详细,生成效果越好。
⚠️ 重要:如果需要翻译或改写文章,必须在此参数中提供完整的原始内容/原文,不要只提供摘要或部分内容,否则会严重影响翻译和改写的质量和准确性。
targetLength(可选):期望输出长度(大致字符数),帮助控制内容篇幅。
enableWebSearch(可选):是否开启联网搜索。如需最新信息(如行业趋势、政策解读、实时数据),建议设置为 true。
webSearchEngine(可选):联网搜索引擎选择,可选值为 "native"(使用模型原生搜索)或 "exa"(使用 Exa API),默认自动选择。
webSearchMaxResults(可选):联网搜索返回的最大结果数,默认为 5。
outputFilePath(可选):输出文件路径。如果提供此参数,生成的内容将自动保存到指定的文件路径中(支持相对路径和绝对路径,目录不存在会自动创建)。
| Name | Required | Description | Default |
|---|---|---|---|
| instruction | Yes | 写作指令 | |
| backgroundContext | No | 背景信息与规范 | |
| targetLength | No | 期望输出长度(字符数) | |
| enableWebSearch | No | 是否开启联网搜索 | |
| webSearchEngine | No | 联网搜索引擎 | |
| webSearchMaxResults | No | 联网搜索最大结果数 | |
| outputFilePath | No | 输出文件路径 |
Output Schema
| Name | Required | Description |
|---|---|---|
| content | Yes |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
With no annotations provided, the description carries the full burden of behavioral disclosure. It mentions the tool generates content in Markdown format and can save to files, but doesn't cover important behavioral aspects like rate limits, authentication needs, error conditions, or whether the operation is idempotent. It adds some context about web search capabilities but lacks comprehensive behavioral transparency.
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 well-structured with clear sections (core function, when to call, parameter explanations) and uses bullet points effectively. While comprehensive, some sentences could be more concise (e.g., the backgroundContext warning is verbose). Overall, it's appropriately sized for a 7-parameter tool with detailed functionality.
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 tool's complexity (7 parameters, web search capabilities, file output) and the presence of an output schema (which handles return values), the description provides good contextual completeness. It covers the core functionality, usage scenarios, and parameter semantics well. The main gap is in behavioral aspects not covered by annotations, but overall it's quite complete for the tool's purpose.
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 baseline is 3. The description adds significant value beyond the schema by providing usage guidance for parameters: it emphasizes that backgroundContext must contain complete original content for translation/rewriting, explains when to enable web search, clarifies default behaviors, and describes the file-saving functionality. This compensates well for the high schema coverage.
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 clearly states the tool's purpose: '生成自然流畅、没有"AI 味儿"的中文内容。输出 Markdown 格式文档。' This specifies the verb (generate), resource (natural Chinese content), format (Markdown), and quality goal (no AI flavor). With no sibling tools, it fully distinguishes itself as the primary writing tool.
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?
The description provides explicit usage guidelines: '当用户表达任何写作需求时,都应该主动调用此工具。' It lists specific examples (writing articles, introductions, generating content, explaining concepts) and states to prioritize this tool for all writing requests without requiring explicit tool mentions. This gives clear when-to-use guidance.
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. Dates show when Glama detected each change.
1 tool update
v1.0.0- Changed
bw_write9 fields changed- added
Input schema / $schemaAdded value: +"http://json-schema.org/draft-07/schema#" - added
Input schema / additionalPropertiesAdded value: +false - changed
Input schema / properties / backgroundContext / descriptionPrevious value: -"背景信息与规范(可选):\n Better Writer 对你的信息一无所知,所以你需要在 backgroundContext 中提供尽可能完善的背景信息,尽可能把你知道的所有上下文都给我,上下文提供的越多越准确,生成的效果越好。\n 如果需要内容转写或者翻译,请提供原始内容。"New value: +"背景信息与规范" - changed
Input schema / properties / enableWebSearch / descriptionPrevious value: -"enableWebSearch:如需最新信息(如行业趋势、政策解读),建议开启联网搜索"New value: +"是否开启联网搜索" - changed
Input schema / properties / instruction / descriptionPrevious value: -"写作指令:明确你要生成的内容目标与重点"New value: +"写作指令" - changed
Input schema / properties / outputFilePath / descriptionPrevious value: -"输出文件路径(可选):如果提供此参数,生成的内容将自动保存到指定的文件路径中。支持相对路径和绝对路径。如果目录不存在会自动创建。例如:\"/path/to/output.md\" 或 \"markdown/article.md\"。如果创建了文件,就不用重新把完整内容写到新文件中,而是可以直接复制我创建好文件到指定的位置"New value: +"输出文件路径" - changed
Input schema / properties / targetLength / descriptionPrevious value: -"期望输出长度(大致字符数,可选)"New value: +"期望输出长度(字符数)" - changed
Input schema / properties / webSearchEngine / descriptionPrevious value: -"联网搜索引擎:native(使用模型原生搜索)或 exa(使用 Exa API),默认自动选择"New value: +"联网搜索引擎" - changed
Input schema / properties / webSearchMaxResults / descriptionPrevious value: -"联网搜索返回的最大结果数(可选,默认 5)"New value: +"联网搜索最大结果数"
1 tool update
- First observed
bw_write
TDQS
With only one tool, there is no possibility of confusion or overlap between tools. The tool 'bw_write' has a singular, well-defined purpose of generating natural Chinese content in Markdown format, making it completely distinct by default.
Since there is only one tool, naming consistency is inherently perfect. The tool name 'bw_write' follows a clear verb_noun pattern (write as the verb, implied content as the noun), and there are no other tools to compare it against for inconsistency.
A single tool for a server named 'Better Writer MCP' feels thin and under-scoped. While the tool is versatile with many parameters, the server's purpose suggests a broader writing domain that could benefit from additional tools (e.g., for editing, summarizing, or formatting), making the count inappropriate for the apparent scope.
The tool surface is severely incomplete for a writing domain. It only offers content generation ('write'), with no tools for related operations like editing, proofreading, summarizing, or managing documents. This creates significant gaps that will limit agent capabilities and likely cause failures in handling diverse writing tasks beyond basic generation.
Maintenance
Resources
Unclaimed servers have limited discoverability.
Looking for Admin?
If you are the server author, to access and configure the admin panel.
Related MCP Connectors
Chinese web novel MCP: 36 tools (outline, prose, review, coach, KD export). BYOK, no API key.
Web Content Extract Mcp connects AI agents to real public APIs via MCP. Tools include
Read WeChat public account articles via MCP. 99.89% anti-scraping success, 50-87% token compression.
Search Chinese books with Douban ratings, AI book guides and curated toplists. Free, no API key.
Related MCP Servers
- AlicenseNot gradedqualityDmaintenanceProvides web search, content extraction, and AI summarization capabilities using the GLM-4.7-Flash model. It enables users to perform web searches, fetch website data, and generate concise content summaries through integrated tools.1MIT
- AlicenseAqualityCmaintenanceProvides Bing Chinese search and webpage crawling tools, enabling AI assistants to fetch real-time web information without API keys.237468MIT
- AlicenseNot gradedqualityDmaintenanceProvides real-time hot trending topics from major Chinese social platforms and news sites, enabling AI models to fetch and display current hot lists.789MIT
- AlicenseAqualityDmaintenanceEnables web search on Chinese internet content using Bocha AI, returning results as Markdown or JSON with configurable freshness and summary options.16MIT
Latest Blog Posts
- Who's Calling? MCP Hosts Are an Identity Blind Spot (And the Spec Knows It)By Om-Shree-0709 on .mcpAgent IdentityOAuth 2.1
- Your AI Chatbot Just Exposed Your CEO's Salary to an InternBy Om-Shree-0709 on .Agent IdentityMCP SecurityOAuth Delegation
- Why MCP Servers Need Execution Sandboxing (And Why Your Current Stack Isn't Enough)By Om-Shree-0709 on .Agentic AiPrompt InjectionWebAssembly
MCP directory API
We provide all the information about MCP servers via our MCP API.
curl -X GET 'https://glama.ai/api/mcp/v1/servers/oil-oil/better-writer-mcp'
If you have feedback or need assistance with the MCP directory API, please join our Discord server