这是一个基于MCP(模型上下文协议)协议的服务器,特别设计用于向腾讯云开发者社区自动发布文章。通过集成Spring Boot 3.x和Spring AI,它为AI助手提供了与腾讯云开发者社区交互的能力,实现文章的自动发布和管理。
<div align="center"> <img src="https://profile-counter.glitch.me/tencent-send-article-mcp-server/count.svg" alt="访问计数" style="border-radius: 5px; padding: 5px; background: #f0f0f0;"/> </div>git clone https://github.com/yangbuyiya/tencent-send-article-mcp-server.git
cd tencent-send-article-mcp-server
获取腾讯云Cookies
配置认证信息
# 方法一:环境变量
export TENCENT_API_COOKIE="your_cookie_here"
# 方法二:命令行参数
java -jar target/tencent-send-article-mcp-server-app.jar --tencent.api.cookie="your_cookie_here"
前往getAddArticles Request方法修改文章部分的请求参数
前往登录具体参数Tencent Cloud Developer Community
打开开发者工具,发布一篇测试文章,选择你想发布的栏目和其他数据
找到addArticle复制请求并替换请求参数下方的参数
// 只允许修改下面的参数
addArticleRequest.setSourceType(1); // 设置为原创
addArticleRequest.setClassifyIds(List.of(3,4)); // 设置文章分类
addArticleRequest.setTagIds(List.of(17375)); // 设置文章标签
addArticleRequest.setLongtailTag(List.of("面试","面试题","趣味面试")); // 设置长尾标签
addArticleRequest.setColumnIds(List.of(105380)); // 设置专栏ID
addArticleRequest.setOpenComment(1); // 开启评论
addArticleRequest.setCloseTextLink(1); // 允许文本链接
addArticleRequest.setPic("https://foruda.gitee.com/images/1748188287230778527/9289646d_5151444.png"); // 设置封面图片
addArticleRequest.setSourceDetail(new HashMap<>()); // 设置来源详情
addArticleRequest.setZoneName(""); // 设置专区名称
# 编译项目
mvn clean package
在您的MCP客户端配置文件中添加以下配置:
{
"mcpServers": {
"tencent-article-publisher": {
"command": "java",
"args": [
"-Dspring.ai.mcp.server.stdio=true",
"-Dfile.encoding=utf-8",
"-jar",
"/path/to/tencent-send-article-mcp-server-app.jar",
"--tencent.api.cookie=your_cookie_here"
]
}
}
}
也可以调用ClientStdio.java测试类是否通信
{
"mcpServers": {
"tencent-send-article-mcp-server": {
"baseUrl": "http://127.0.0.1:8633/sse"
}
}
}
项目默认使用STDIO模式。如果需要SSE模式,请根据以下配置进行修改:(项目有区分配置,可以通过profiles.active=sse/sdio切换模式)
server:
port: 8633 # 端口号
ai:
mcp:
server:
stdio: true # 设置为false 为sse模式
name: ${spring.application.name}
version: 1.0.0
type: sync # 同步/异步
instructions: "
这是一个基于 MCP (Model Context Protocol) 协议的服务器,
专门用于自动化发布文章到腾讯云开发者社区。通过集成 Spring Boot 3.x 和 Spring AI,为 AI 助手提供了与腾讯云开发者社区交互的能力,
实现文章的自动发布和管理。
"
sse-endpoint: /sse # sse端点
sse-message-endpoint: /mcp/messages # 客户端 sse消息端点
capabilities:
tool: true
resource: true
prompt: true
completion: true
# 注意:您必须禁用web横幅和控制台日志记录,以允许STDIO传输工作!!!
main:
banner-mode: off
# SSE打开, STDIO注释
web-application-type: none
logging:
# SSE打开, STDIO注释
pattern:
console: "%d{yyyy-MM-dd HH:mm:ss.SSS} [%thread] %-5level %logger{36} - %msg%n"
file:
name: data/log/${spring.application.name}.log
<!-- 标准 SSE/STDIO 服务器配置 通过配置切换 -->
<dependency>
<groupId>org.springframework.ai</groupId>
<artifactId>spring-ai-starter-mcp-server-webflux</artifactId>
</dependency>
然后可以调用ClientSse.java测试类是否通信
docker run -d --name tencent-send-article-mcp-server \
-p 8635:8633 \
-e TENCENT_API_COOKIE="测试Cookie" \
registry.cn-hangzhou.aliyuncs.com/yangbuyiya/tencent-send-article-mcp-server-app:1.0.0
⚠️ 首先修改部署配置文件。这里以shell文件为例
# Docker镜像相关配置
DOCKER_IMAGE_NAME="改成你的DockerHub仓库名称/tencent-send-article-mcp-server-app"
DOCKER_IMAGE_TAG="1.0.0"
DOCKER_PLATFORM="linux/amd64,linux/arm64"
DOCKERFILE_PATH="Dockerfile"
# 阿里云配置
ALIYUN_REGISTRY="registry.cn-hangzhou.aliyuncs.com"
NAMESPACE="你的阿里云命名空间仓库名称"
IMAGE_NAME="tencent-send-article-mcp-server-app"
IMAGE_TAG="1.0.0"
修改后运行deploy脚本,完成后会生成一个镜像
docker run -d --name tencent-send-article-mcp-server \
-p 8635:8633 \
-e TENCENT_API_COOKIE="你在腾讯云开发者社区获取的Cookie" \
registry.cn-hangzhou.aliyuncs.com/yangbuyiya/tencent-send-article-mcp-server-app:1.0.0
⚠️ 重要通知:
Cookie过期
文章发布失败
MCP连接问题
# 查看实时日志
tail -f data/log/tencent-send-article-mcp-server.log
# 查看错误日志
grep "ERROR" data/log/tencent-send-article-mcp-server.log
欢迎提交Issue和Pull Requests!
注意此项目仅用于学习和研究目的。请遵守腾讯云开发者社区的使用条款及相关法律法规。