icon for mcp server

文颜

STDIO

微信公众号Markdown排版发布助手

文颜 MCP Server

logo

Overview

文颜 MCP Server 是一个基于模型上下文协议(Model Context Protocol, MCP)的服务器组件,支持将 Markdown 格式的文章发布至微信公众号草稿箱,并使用与 文颜 相同的主题系统进行排版。

https://github.com/user-attachments/assets/2c355f76-f313-48a7-9c31-f0f69e5ec207

使用场景:

支持的主题效果预览:

Features

  • 列出并选择支持的文章主题
  • 使用内置主题对 Markdown 内容排版
  • 发布文章到微信公众号草稿箱
  • 自动上传本地或网络图片

使用方式

方式一:本地运行

编译

确保已安装 Node.js 环境:

git clone https://github.com/caol64/wenyan-mcp.git cd wenyan-mcp npm install npx tsc -b && npm run copy-assets

与 MCP Client 集成

在你的 MCP 配置文件中加入以下内容:

{ "mcpServers": { "wenyan-mcp": { "name": "公众号助手", "command": "node", "args": [ "Your/path/to/wenyan-mcp/dist/index.js" ], "env": { "WECHAT_APP_ID": "your_app_id", "WECHAT_APP_SECRET": "your_app_secret" } } } }

说明:

  • WECHAT_APP_ID 微信公众号平台的 App ID
  • WECHAT_APP_SECRET 微信平台的 App Secret

方式二:使用 Docker 运行(推荐)

适合部署到服务器环境,或与本地 AI 工具链集成。

构建镜像

docker build -t wenyan-mcp .

与 MCP Client 集成

在你的 MCP 配置文件中加入以下内容:

{ "mcpServers": { "wenyan-mcp": { "name": "公众号助手", "command": "docker", "args": [ "run", "--rm", "-i", "-v", "/your/host/image/path:/mnt/host-downloads", "-e", "WECHAT_APP_ID=your_app_id", "-e", "WECHAT_APP_SECRET=your_app_secret", "-e", "HOST_IMAGE_PATH=/your/host/image/path", "wenyan-mcp" ] } } }

说明:

  • -v 挂载宿主机目录,使容器内部可以访问本地图片。与环境变量HOST_IMAGE_PATH保持一致。你的 Markdown 文章内的本地图片应该都放置在该目录中,docker会自动将它们映射到容器内。容器无法读取在该目录以外的图片。
  • -e 注入docker容器的环境变量:
  • WECHAT_APP_ID 微信公众号平台的 App ID
  • WECHAT_APP_SECRET 微信平台的 App Secret
  • HOST_IMAGE_PATH 宿主机图片目录

微信公众号 IP 白名单

请务必将服务器 IP 加入公众号平台的 IP 白名单,以确保上传接口调用成功。 详细配置说明请参考:https://yuzhi.tech/docs/wenyan/upload


配置说明(Frontmatter)

为了可以正确上传文章,需要在每一篇 Markdown 文章的开头添加一段frontmatter,提供titlecover两个字段:

--- title: 在本地跑一个大语言模型(2) - 给模型提供外部知识库 cover: /Users/lei/Downloads/result_image.jpg ---
  • title 是文章标题,必填。

  • cover 是文章封面,支持本地路径和网络图片:

    • 如果正文有至少一张图片,可省略,此时将使用其中一张作为封面;
    • 如果正文无图片,则必须提供 cover。

关于图片自动上传

  • 支持图片路径:

    • 本地路径(如:/Users/lei/Downloads/result_image.jpg
    • 网络路径(如:https://example.com/image.jpg

示例文章格式

--- title: 在本地跑一个大语言模型(2) - 给模型提供外部知识库 description: Make your local large language models (LLMs) smarter! This guide shows how to use LangChain and RAG to let them retrieve data from external knowledge bases, improving answer accuracy. cover: /Users/lei/Downloads/result_image.jpg --- [上一篇文章](https://babyno.top/posts/2024/02/running-a-large-language-model-locally/)中,我们展示了如何在本地运行大型语言模型。本篇将介绍如何让模型从外部知识库中检索定制数据,提升答题准确率,让它看起来更“智能”。 ## 准备模型 访问 `Ollama` 的模型页面,搜索 `qwen`,我们使用支持中文语义的“[通义千问](https://ollama.com/library/qwen:7b)”模型进行实验。 ![](https://mmbiz.qpic.cn/mmbiz_jpg/Jsq9IicjScDVUjkPc6O22ZMvmaZUzof5bLDjMyLg2HeAXd0icTvlqtL7oiarSlOicTtiaiacIxpVOV1EeMKl96PhRPPw/640?wx_fmt=jpeg)

如需更多功能扩展或反馈建议,欢迎提 issue

MCP Now 重磅来袭,抢先一步体验