Skip to main content
Glama
boreales

mcp-plus-tard

Plus Tard MCP

Python FastAPI MCP License

将您的 AI 助手(Claude、Cursor、n8n 等)连接到 Plus Tard,通过简单的对话即可安排您的 Facebook、Instagram、LinkedIn、X/Twitter、TikTok、Threads、Bluesky 和 Google My Business 发布内容。

生产环境端点 : https://mcp.plus-tard.com/mcp/ 用户文档 : https://plus-tard.com/api-mcp


30秒演示

: “帮我安排明天上午 10 点在我的 Boréales 页面上发布一条 Facebook 动态:‘Hello le monde!’”

Claude 自动调用:

  1. list_accounts → 找到“Boréales”的 Facebook ID

  2. schedule_post(provider="facebook", page_id="…", planned_at="2026-05-05T10:00:00Z", text="Hello le monde !")

Plus Tard : ✅ 动态 #1432 已安排于 2026年5月5日 10:00 发布。


工具 (5)

工具

描述

validate_api_key

验证 API 密钥是否有效并返回其元数据。

list_accounts

列出所有连接到 Plus Tard 的社交网络账户。

schedule_post

在单个网络上安排发布(1 次调用 = 1 个网络)。

register_user

创建新用户并返回 OAuth URL。

get_user

用户详情:已连接的提供商和子账户。

资源 (2)

URI

内容

plus-tard://accounts

已连接账户的 JSON 列表。

plus-tard://users/{id}

用户的 JSON 详情。


客户端安装

Claude Desktop

添加到 ~/Library/Application Support/Claude/claude_desktop_config.json (macOS) :

{
  "mcpServers": {
    "plus-tard": {
      "command": "npx",
      "args": [
        "-y",
        "mcp-remote",
        "https://mcp.plus-tard.com/mcp/",
        "--header",
        "X-Api-Key:${PLUS_TARD_TOKEN}"
      ],
      "env": {
        "PLUS_TARD_TOKEN": "your_plus_tard_api_key"
      }
    }
  }
}

Claude Code (CLI)

claude mcp add plus-tard \
  --transport http https://mcp.plus-tard.com/mcp/ \
  --header "X-Api-Key: your_plus_tard_api_key"

Claude.ai (网页版)

设置 → 连接器 → 添加自定义连接器 — URL https://mcp.plus-tard.com/mcp/,Header X-Api-Key: your_key

Cursor / n8n

使用相同的 URL 和 Header。请参阅完整文档


自托管(面向开发者)

技术栈

  • Python 3.12 · FastAPI · mcp[fastapi] (可流式传输的 HTTP 传输)

  • httpx · pydantic v2 · pydantic-settings

  • pytest · pytest-asyncio · respx

架构

Client (Claude/Cursor/n8n)
   │  Streamable HTTP + X-Api-Key header
   ▼
MCP server (this repo)
   │  X-Api-Key forwarded as-is
   ▼
Plus Tard Symfony API

每个 MCP 请求都带有 X-Api-Key,该密钥会原样传递给 Plus Tard API。无会话,服务器端无存储 — 每个 客户端使用自己的密钥。

本地开发

git clone https://github.com/<votre-org>/plus-tard-mcp.git
cd plus-tard-mcp

python3.12 -m venv .venv && source .venv/bin/activate
pip install -e ".[dev]"

cp .env.example .env
# Édite .env : PLUS_TARD_BASE_URL=https://plus-tard.com

uvicorn main:app --reload --port 8001

服务器监听 http://127.0.0.1:8001/mcp/。使用 MCP Inspector 进行快速测试:

npx @modelcontextprotocol/inspector
# Transport: Streamable HTTP
# URL: http://127.0.0.1:8001/mcp/
# Header: X-Api-Key = ta_clef_plus_tard

测试

pytest
# 24 passed

Docker 部署(生产环境)

该仓库提供了 Dockerfile + docker-compose.yml,适用于带有 nginx-proxy + acme-companion 的 VPS:

sudo docker compose up -d --build

详情请参阅 deploy/README.md(SSE 友好的 nginx-proxy 片段、Let's Encrypt TLS 管理、更新)。


配置

变量

描述

默认值

PLUS_TARD_BASE_URL

Plus Tard API 的基础 URL

(必填)

MCP_HOST

uvicorn 绑定主机

0.0.0.0

MCP_PORT

uvicorn 绑定端口

8001

身份验证通过请求头 X-Api-Key 完成 — 服务器端不存储任何令牌

允许的主机

MCP SDK 启用了防 DNS 重绑定保护,仅允许白名单中的主机。默认主机为:

  • mcp.plus-tard.com

  • localhost, 127.0.0.1 (用于开发)

要添加您自己的域名,请编辑 main.py 中的列表 (TransportSecuritySettings.allowed_hosts)。


项目结构

.
├── main.py                # FastAPI + FastMCP + middleware X-Api-Key
├── app/
│   ├── config.py          # Settings via pydantic-settings
│   ├── auth/              # Dependency X-Api-Key (réutilisable hors MCP)
│   ├── models/            # Schémas pydantic v2 (post, account, user)
│   ├── services/          # PlusTardClient async (httpx)
│   └── tools/             # 5 tools métier (str → str)
├── tests/                 # 24 tests pytest-asyncio
├── deploy/
│   ├── README.md          # Guide déploiement VPS
│   ├── vhost.d/           # Snippet nginx-proxy SSE
│   └── twig/              # Template Symfony pour la doc utilisateur
├── docs/index.html        # Doc utilisateur statique (HTML)
├── Dockerfile
├── docker-compose.yml
└── pyproject.toml

安全性

  • 仅限 HTTPS(生产环境通过 Let's Encrypt 提供 TLS)。

  • 无日志:不记录发布内容或 API 令牌。

  • 防 DNS 重绑定:通过 MCP SDK 的 TransportSecuritySettings 实现。

  • 隔离的多租户:每个请求都使用其自己的 httpx 客户端处理,并在请求结束时关闭(无跨用户连接池)。

  • 如果您怀疑密钥泄露,请从您的 Plus Tard 空间撤销它。


路线图

  • [ ] 结构化日志记录(JSON,不含令牌或内容)

  • [ ] 按 API 密钥进行速率限制

  • [ ] Prometheus 指标

  • [ ] 连接器的 OAuth 流程(代替复制粘贴 API 密钥)

  • [ ] 支持 MCP completion/complete 以获取 page_id 建议 (等待支持 ToolReference 的 Python SDK)

欢迎提出想法和贡献 — 请提交 issue 或 PR。


有用链接


许可证

MIT © 2026 Plus Tard — Boréales Créations.

Made with ❤️ in France.

F
license - not found
-
quality - not tested
C
maintenance

Maintenance

Maintainers
Response time
Release cycle
Releases (12mo)
Commit activity

Latest Blog Posts

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/boreales/mcp-plus-tard'

If you have feedback or need assistance with the MCP directory API, please join our Discord server