icon for mcp server

腾讯发送文章

HTTP-SSE

腾讯云开发者社区文章自动发布MCP服务器

腾讯云开发者社区文章发布 MCP 服务器

📝 项目简介

这是一个基于 MCP (Model Context Protocol) 协议的服务器,专门用于自动化发布文章到腾讯云开发者社区。通过集成 Spring Boot 3.x 和 Spring AI,为 AI 助手提供了与腾讯云开发者社区交互的能力,实现文章的自动发布和管理。

访问计数

技术栈

  • 框架: Spring Boot 3.4.5
  • AI 集成: Spring AI 1.0.0
  • 运行环境: Java 17
  • 构建工具: Maven
  • 协议支持: MCP (Model Context Protocol)
  • HTTP 客户端: Retrofit2
  • JSON 处理: FastJSON, Jackson

快速开始

环境要求

  • JDK 17 或更高版本
  • Maven 3.6 或更高版本
  • 有效的腾讯云开发者社区账号

安装步骤

  1. 克隆项目
git clone https://github.com/yangbuyiya/tencent-send-article-mcp-server.git cd tencent-send-article-mcp-server
  1. 获取腾讯云 Cookie

    • 登录 腾讯云开发者社区
    • 打开浏览器开发者工具 (F12)
    • 切换到 Network 标签页
    • 刷新页面,在任意请求的 Headers 中找到 Cookie
    • 复制完整的 Cookie 字符串
  2. 配置认证信息

# 方式一:环境变量 export TENCENT_API_COOKIE="your_cookie_here" # 方式二:命令行参数 java -jar target/tencent-send-article-mcp-server-app.jar --tencent.api.cookie="your_cookie_here"
  1. 修改代码定义文章专栏

前往 getAddArticleRequest 方法中修改文章部分请求参数 具体参数前往 登录 腾讯云开发者社区 打开开发者工具, 发布一个测试文章选好你要发布的专栏等数据 找到 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(""); // 设置专区名称
  1. 编译和运行
# 编译项目 mvn clean package

配置说明

MCP 客户端配置 STDIO 模式

在您的 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 类进行测试是否通信

MCP 客户端配置 SSE 模式

{ "mcpServers": { "tencent-send-article-mcp-server": { "baseUrl": "http://127.0.0.1:8633/sse" } } }

项目默认使用 STDIO 模式,如果需要使用 SSE 模式,请按照以下配置进行修改:(项目已经区分配置, 可通过 profiles.active=sse/stdio 切换模式)

修改配置文件 - 新增端口

server: port: 8633 # 端口号

修改配置文件 - 切换模式为SSE

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

修改 pom.xml - 新增SSE依赖支持

<!-- 标准 SSE/STDIO 服务器配置 通过配置切换 --> <dependency> <groupId>org.springframework.ai</groupId> <artifactId>spring-ai-starter-mcp-server-webflux</artifactId> </dependency>

然后就可以调用 ClientSse.java 类进行测试是否通信

Docker 部署使用

快速部署

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 包含敏感的身份认证信息,请妥善保管
  • 不要将 Cookie 提交到代码仓库或公开分享
  • 建议使用环境变量方式配置 Cookie
  • Cookie 可能会定期失效,需要及时更新
  • 生产环境建议使用更安全的认证方式

故障排除

常见问题

  1. Cookie 失效

    • 重新登录腾讯云开发者社区获取新的 Cookie
    • 检查 Cookie 格式是否完整
  2. 文章发布失败

    • 检查网络连接
    • 验证文章内容是否符合社区规范
    • 确认账号权限
  3. MCP 连接问题

    • 检查 Java 路径配置
    • 验证 JAR 文件路径
    • 查看应用日志文件

日志查看

# 查看实时日志 tail -f data/log/tencent-send-article-mcp-server.log # 查看错误日志 grep "ERROR" data/log/tencent-send-article-mcp-server.log

贡献指南

欢迎提交 Issue 和 Pull Request!

  1. Fork 本项目
  2. 创建特性分支 dev
  3. 提交更改
  4. 推送到分支
  5. 开启 Pull Request

注意:本项目仅用于学习和研究目的,请遵守腾讯云开发者社区的使用条款和相关法律法规。

Cortex App 重磅来袭,抢先一步体验