toutiao_mcp_server

chemany/toutiao_mcp_server

3.3

If you are the rightful owner of toutiao_mcp_server and would like to certify it and/or have it hosted online, please leave a comment on the right or send an email to henry@mcphub.com.

A comprehensive MCP server for managing and publishing content on platforms like 今日头条, with compatibility for 小红书 data formats.

今日头条 MCP 服务器

一个功能完整的今日头条内容管理MCP服务器,支持自动登录、内容发布、数据分析等功能。完全兼容小红书自动发布工具的数据格式,支持一键多平台发布。

✨ 主要特性

  • 🔐 用户认证管理 - 自动登录、Cookie持久化、登录状态检查
  • 📝 内容发布功能 - 图文文章发布、微头条发布、图片上传与压缩
  • 📊 数据分析统计 - 阅读量统计、粉丝增长分析、内容表现评估
  • 🗂️ 内容管理 - 获取文章列表、编辑删除内容、状态管理
  • 📈 报告生成 - 自动生成日报、周报、月报
  • 🌐 多平台兼容 - 完全兼容小红书自动发布工具,支持一键发布多个平台
  • 现代化架构 - 基于FastMCP框架,支持HTTP Streamable模式

🔗 多平台兼容特性

与小红书自动发布工具完全兼容

本项目完全兼容您现有的小红书自动发布工具数据格式,可以实现:

  1. 相同的数据源 - 支持相同的飞书多维表格格式
  2. 相同的字段名 - 兼容"小红书标题"、"仿写小红书文案"、"配图"字段
  3. 相同的图片处理 - 支持图片URL下载和本地存储
  4. 一键多平台发布 - 可以同时发布到小红书和今日头条

支持的兼容接口

  • publish_xiaohongshu_data - 批量发布小红书格式数据到今日头条
  • publish_single_xiaohongshu_record - 发布单条小红书记录到今日头条
  • process_feishu_records - 处理飞书多维表格记录(兼容小红书工具格式)
  • convert_xiaohongshu_format - 预览小红书格式转换为今日头条格式

📦 安装指南

环境要求

  • Python 3.8+
  • Chrome 浏览器(用于Selenium自动登录)
  • Windows/macOS/Linux

安装步骤

  1. 克隆项目
git clone <repository-url>
cd toutiao_mcp_server
  1. 安装依赖
pip install -r requirements.txt
  1. 安装Chrome WebDriver
# WebDriver会通过webdriver-manager自动下载
# 确保系统已安装Chrome浏览器
  1. 配置设置(可选)
# 复制配置示例文件
cp config.example.py config_local.py
# 根据需要修改配置

🚀 快速开始

1. 启动服务器

# 使用默认端口8003启动
python start_server.py

# 或指定端口和日志级别
python start_server.py --port 8080 --log-level DEBUG

2. 多平台发布示例

使用集成示例文件(推荐):

# 运行多平台发布示例
python integration_example.py

这个示例文件完全兼容您现有的小红书工具,支持:

  • 从相同的飞书多维表格获取数据
  • 同时发布到小红书和今日头条
  • 支持批量发布和单个发布
  • 提供详细的发布结果统计

或通过MCP工具调用:

import asyncio
import httpx

async def multi_platform_publish():
    # 飞书数据格式(与小红书工具完全一致)
    records = [
        {
            "title": "科技前沿:AI发展趋势",
            "content": "人工智能正在改变我们的生活...",
            "image_url": "https://example.com/image.jpg"
        }
    ]
    
    # 发布到今日头条
    async with httpx.AsyncClient() as client:
        response = await client.post(
            "http://localhost:8003/publish_xiaohongshu_data",
            json={
                "records": records,
                "download_folder": "downloaded_images"
            }
        )
        result = response.json()
        print(f"发布结果: {result}")

# 运行示例
asyncio.run(multi_platform_publish())

3. 基本功能使用

登录今日头条:

# 通过MCP工具调用
result = login_with_credentials("your_username", "your_password")

发布内容:

# 发布图文文章
result = publish_article(
    title="今日头条MCP服务器使用指南",
    content="这是一个功能强大的今日头条内容管理工具...",
    images=["path/to/image1.jpg", "path/to/image2.jpg"],
    tags=["科技", "工具"]
)

# 发布微头条
result = publish_micro_post(
    content="这是一条测试微头条 #科技#",
    images=["path/to/image.jpg"]
)

🛠️ 主要功能模块

1. 认证管理 (auth.py)

  • 自动登录(支持用户名密码登录)
  • Cookie持久化存储
  • 登录状态检查和维护
  • 用户信息获取

2. 内容发布 (publisher.py)

  • 图文文章发布(支持富文本、图片、标签)
  • 微头条发布(支持图片、话题、位置)
  • 图片自动上传和压缩
  • 定时发布功能

3. 数据分析 (analytics.py)

  • 账户概览数据(粉丝数、文章数、阅读量)
  • 文章详细统计(阅读、评论、分享、点赞)
  • 趋势分析(指定时间段的数据变化)
  • 内容表现排行(按各项指标排序)

4. 多平台兼容 (multi_platform_publisher.py)

  • 兼容小红书数据格式
  • 智能格式转换
  • 批量处理和发布
  • 发布结果统计

5. MCP服务器 (server.py)

  • 基于FastMCP框架
  • 提供HTTP API接口
  • 支持Streamable模式
  • 完整的错误处理

🔧 配置选项

基本配置

# 今日头条相关URL(可自定义)
TOUTIAO_URLS = {
    'login': 'https://sso.toutiao.com/login',
    'publish_article': 'https://mp.toutiao.com/core/article/add/',
    # ... 更多URL配置
}

# Selenium配置
SELENIUM_CONFIG = {
    'implicit_wait': 10,
    'explicit_wait': 30,
    'headless': False,  # 是否无头模式
    'chrome_options': [...]
}

# 内容发布配置
CONTENT_CONFIG = {
    'default_category': '科技',
    'max_images_per_article': 20,
    'auto_compress_images': True,
    # ... 更多配置
}

多平台配置

# 在 integration_example.py 中配置
XIAOHONGSHU_MCP_URL = "http://localhost:8002/xhs-mcp-server"
TOUTIAO_MCP_URL = "http://localhost:8003"

# 飞书多维表格配置(与小红书工具保持一致)
LARK_APP_ID = "your_app_id"
LARK_APP_SECRET = "your_app_secret"
APP_TOKEN = "your_app_token"
TABLE_ID = "your_table_id"

📡 API 接口文档

用户认证接口

login_with_credentials(username, password)

使用用户名密码登录

参数:

  • username (str): 用户名(手机号/邮箱)
  • password (str): 密码

返回:

{
    "success": true,
    "message": "登录成功",
    "login_status": true
}
check_login_status()

检查当前登录状态

返回:

{
    "success": true,
    "is_logged_in": true,
    "user_info": {
        "user_id": "12345",
        "username": "example_user"
    }
}

内容发布接口

publish_article(title, content, images, tags, category, ...)

发布图文文章

参数:

  • title (str): 文章标题
  • content (str): 文章内容
  • images (List[str], 可选): 图片路径列表
  • tags (List[str], 可选): 标签列表
  • category (str, 可选): 文章分类
  • cover_image (str, 可选): 封面图片路径
  • publish_time (str, 可选): 定时发布时间
  • original (bool): 是否原创
publish_micro_post(content, images, topic, location, ...)

发布微头条

参数:

  • content (str): 微头条内容
  • images (List[str], 可选): 配图路径列表(最多9张)
  • topic (str, 可选): 话题标签
  • location (str, 可选): 位置信息
  • publish_time (str, 可选): 定时发布时间

多平台兼容接口

publish_xiaohongshu_data(records, download_folder)

批量发布小红书格式数据到今日头条

参数:

  • records (List[Dict]): 小红书格式的数据记录列表
  • download_folder (str): 图片下载目录

数据格式:

[
    {
        "title": "文章标题",
        "content": "文章内容",
        "image_url": "图片URL"
    }
]

返回:

{
    "success": true,
    "message": "批量发布完成,成功 8/10 条",
    "summary": {
        "total_records": 10,
        "success_count": 8,
        "failed_count": 2,
        "success_rate": 80.0
    }
}
publish_single_xiaohongshu_record(title, content, image_url, download_folder)

发布单条小红书格式数据

process_feishu_records(feishu_records, download_folder)

处理飞书多维表格记录(完全兼容小红书工具格式)

支持字段:

  • 小红书标题 → 转换为今日头条标题
  • 仿写小红书文案 → 转换为今日头条内容
  • 配图 → 图片URL,自动下载后用于发布
convert_xiaohongshu_format(xiaohongshu_title, xiaohongshu_content, image_url)

预览小红书格式转换效果

内容管理接口

get_article_list(page, page_size, status)

获取文章列表

delete_article(article_id)

删除指定文章

数据分析接口

get_account_overview()

获取账户概览数据

get_article_stats(article_id)

获取文章统计数据

generate_report(report_type)

生成数据报告

🎯 使用场景

1. 单平台使用

  • 纯今日头条内容管理
  • 自动化发布和数据分析
  • 内容策略优化

2. 多平台使用(推荐)

  • 同时管理小红书和今日头条
  • 一键发布到两个平台
  • 统一的数据管理和分析

3. 企业级应用

  • 团队协作内容管理
  • 批量内容发布
  • 数据驱动的内容优化

🔄 与小红书工具的对比

功能小红书工具今日头条MCP多平台集成
数据源飞书多维表格✅ 完全兼容✅ 统一数据源
字段格式小红书标题/文案/配图✅ 完全兼容✅ 无需修改
图片处理URL下载✅ 相同逻辑✅ 共享下载
发布方式单平台单平台✅ 多平台
错误处理详细日志✅ 详细日志✅ 统一处理

🚨 注意事项

  1. 登录要求:首次使用需要手动登录一次,后续会自动保持登录状态
  2. 图片格式:支持 JPG、PNG、GIF、WebP 格式,自动压缩优化
  3. 内容长度
    • 微头条:建议2000字符以内
    • 图文文章:支持长文本
  4. 发布频率:建议控制发布频率,避免被平台限制
  5. 多平台兼容:确保小红书MCP服务器和今日头条MCP服务器都已启动

🐛 故障排除

常见问题

  1. 登录失败

    • 检查用户名密码是否正确
    • 确认Chrome浏览器已安装
    • 检查网络连接
  2. 图片上传失败

    • 检查图片文件是否存在
    • 确认图片格式支持
    • 检查网络连接
  3. 发布失败

    • 确认已登录
    • 检查内容是否符合平台规范
    • 查看详细错误日志
  4. 多平台发布问题

    • 确认两个MCP服务器都已启动
    • 检查端口配置是否正确
    • 验证数据格式是否正确

日志查看

# 查看运行日志
tail -f toutiao_mcp.log

# 调试模式启动
python start_server.py --log-level DEBUG

🤝 贡献指南

欢迎提交Issue和Pull Request来改进项目!

开发环境设置

  1. Fork 项目
  2. 创建功能分支
  3. 安装开发依赖:pip install -r requirements.txt
  4. 运行测试:python -m pytest tests/
  5. 提交更改并创建Pull Request

📄 许可证

本项目采用 MIT 许可证。详情请查看 文件。

🔗 相关链接

📞 支持与反馈

如有问题或建议,请通过以下方式联系:

  • 提交 GitHub Issue
  • 发送邮件至项目维护者
  • 查看项目Wiki获取更多帮助

立即开始多平台内容发布之旅! 🚀