内容
# Solnk MCP
一个适用于 [Solnk](https://solnk.com) 的 [模型上下文协议](https://modelcontextprotocol.io) 服务器 — 让任何MCP客户端(Claude, Cursor, 您的代理)**通过一个工具界面发布和安排内容到9个社交平台**:**X, Instagram, TikTok, YouTube, Facebook, LinkedIn, Pinterest, Threads, 和 Bluesky**。
它是一个薄的、无状态的代理,指向 [Solnk公共API](https://developers.solnk.com):您的API密钥在每个请求中转发,所有身份验证/范围/配额执行都在服务器端进行。Worker中不存储任何凭证。
##托管端点
一个托管实例运行在:
```
https://mcp.solnk.com/mcp
```
使用Solnk API密钥作为Bearer令牌进行身份验证。在 **https://solnk.com/settings/api-keys** 处创建一个。
```
Authorization: Bearer sk_...
```
## 连接客户端
大多数MCP客户端通过 [`mcp-remote`](https://www.npmjs.com/package/mcp-remote) 连接到远程HTTP服务器。示例配置(Claude Desktop / Cursor / 任何使用标准 `mcpServers` 模式的客户端):
```json
{
"mcpServers": {
"solnk": {
"command": "npx",
"args": [
"-y",
"mcp-remote",
"https://mcp.solnk.com/mcp",
"--header",
"Authorization:Bearer ${SOLNK_API_KEY}"
],
"env": {
"SOLNK_API_KEY": "sk_your_key_here"
}
}
}
}
```
具有原生Streamable HTTP支持的客户端可以直接连接到 `https://mcp.solnk.com/mcp` 并设置 `Authorization: Bearer sk_...` 头。
## 工具
| 工具 | 功能 |
| --- | --- |
| `solnk_list_accounts` | 列出连接的社交账户(id, 平台, 用户名, 状态, 功能)。调用此工具以获取 `account_id`s。 |
| `solnk_get_usage` | 计划限制和当前使用情况 — 在发布前检查 `can_publish`。 |
| `solnk_publish` | 发布到一个或多个平台(`immediate`, `scheduled`, 或 `draft`)。 |
| `solnk_confirm_publish` | 确认草稿使其立即发布或按计划发布。 |
| `solnk_cancel_publish` | 取消草稿或尚未发送的计划发布。 |
| `solnk_get_publish_status` | 发布聚合状态。 |
| `solnk_list_publishes` | 列出最近的发布并过滤。 |
| `solnk_get_post_analytics` |汇总或按平台划分的帖子指标,包括实时帖子URL。 |
| `solnk_create_media_upload` | 本地图片/视频文件的预签名上传(3步流程)。 |
| `solnk_confirm_media_upload` | 完成预签名上传。 |
| `solnk_create_media_from_url` | 通过公共URL导入图片/视频。 |
完整的请求/响应格式和每个平台的选项参见 **[developers.solnk.com](https://developers.solnk.com)**。
## 自托管
服务器是一个单独的 [Cloudflare Worker](https://workers.cloudflare.com/)。
```bash
pnpm install
# 本地开发 — 如有需要,可指向您自己的Solnk API基地址
# (编辑wrangler.toml中的SOLNK_API_BASE,例如http://localhost:3002/api/v1)
pnpm dev
# 部署到您自己的Cloudflare账户
pnpm deploy
```
`wrangler.toml`:
- `SOLNK_API_BASE` — 工具代理到的Solnk公共API(默认为 `https://api.solnk.com/api/v1`)。
- `routes` — 绑定您自己的自定义域名。
部署时不需要密钥;API密钥由客户端在请求时提供。
### 无密钥发现
MCP发现(`initialize` / `tools/list`)是开放的 — 客户端、检查器和目录可以在没有API密钥的情况下检查工具界面。只有实际调用发布工具时才需要密钥。包含一个 `Dockerfile`,以便在本地构建和运行Worker(`wrangler dev`,无需Cloudflare登录)进行检查。
## 许可证
[MIT](./LICENSE) Solnk 版权所有