Token导航 LogoToken导航TokenDH.com
Sprout Social MCP logo
运维云端未说明官方级别未说明来源级核验

Sprout Social MCP

MCP Server

一个用于通过Sprout Social创建和安排社交媒体帖子的MCP服务器,支持多网络发布、媒体上传和定时发布功能。

工具数

0

提示词数

0

GitHub Stars

1

资源数

0
社交媒体管理TypeScript多平台支持

安装说明

本站只整理中文说明和来源信息,不托管安装包,也不代用户安装。

作者 / 组织

EbonyLouis

提供方

EbonyLouis

最后核验

2026/5/17 20:21

快速接入

先看主来源和安装命令,再打开仓库或文档;下面只保留这个条目的关键接入事实。

详细介绍

萌芽社会MCP

一个MCP(模型上下文协议)服务器,用于通过Sprout social创建和调度社交媒体帖子。该服务器使Goose等人工智能代理能够与Sprout Social的Publishing API交互,以创建草稿帖子、日程帖子和上传媒体。

特性

  • 草稿职位:在发布之前创建草稿帖子以供审查
  • 预定帖子:为未来发布的帖子安排特定的时间戳
  • 媒体上传:从公共URL上传图像和视频
  • 多网络支持:同时发布到多个社交网络(LinkedIn、Twitter/X、YouTube、Bluesky)
  • 统一接口:使用单一工具处理具有可选媒体和日程安排的内容

先决条件

  • Node.js(建议使用14或更高版本)
  • 具有API访问权限的Sprout社交帐户
  • Sprout Social API证书:

- API代币 - 客户ID - 组ID - 您要发布到的每个社交网络的个人资料ID

设置

1.安装依赖项

npm install

2.配置环境变量

使用您的Sprout Social凭据设置以下环境变量:

必修的:

  • SPROUT_API_TOKEN -您的Sprout Social API代币
  • SPROUT_CUSTOMER_ID -您的Sprout Social客户ID
  • SPROUT_GROUP_ID -您的Sprout社交群ID

这些将根据您的工作流程而有所不同:

  • SPROUT_PROFILE_ID_LINKEDIN -LinkedIn个人资料ID
  • SPROUT_PROFILE_ID_TWITTER -Twitter/X个人资料ID
  • SPROUT_PROFILE_ID_YOUTUBE -YouTube个人资料ID
  • SPROUT_PROFILE_ID_BLUESKY -Bluesky个人资料ID

您可以在shell配置中设置这些,也可以创建 .env 文件(未在Git中跟踪)。

获取您的凭据

如果您有Sprout Social API令牌,但需要查找其他ID,请使用以下curl命令:

步骤1:获取您的客户ID

curl -X GET \
  https://api.sproutsocial.com/v1/metadata/client \
  -H "Authorization: Bearer YOUR_SPROUT_API_TOKEN"

这将返回您的客户ID和姓名。

步骤2:获取您的组ID和配置文件ID

替换 YOUR_CUSTOMER_ID 使用步骤1中的客户ID:

curl -X GET \
  https://api.sproutsocial.com/v1/YOUR_CUSTOMER_ID/metadata/customer \
  -H "Authorization: Bearer YOUR_SPROUT_API_TOKEN"

这将返回每个连接的社交网络的所有组ID和配置文件ID。

3.建设项目

npm run build

运行MCP服务器

这是一个使用stdio传输的MCP服务器,旨在向Goose或其他MCP客户端注册。

要直接启动服务器,请执行以下操作:

npm start

对于自动重新加载的开发:

npm run dev

在Goose注册

要在Goose中注册此MCP服务器,请将其添加到Goose配置中。服务器使用stdio传输,因此应在Goose设置中将其配置为本地MCP服务器。

可用工具

1.上传MediaFromUrl

从公共URL将媒体(图像或视频)上传到Sprout Social。

参数:

  • media_url (字符串,必填):媒体文件的公共HTTP/HTTPS URL

退货:

{
  "success": true,
  "media_id": "string",
  "expiration_time": "ISO8601 timestamp"
}

例子:

await uploadMediaFromUrl({
  media_url: "https://example.com/image.jpg"
});

______________________________________________________________________

2.创建DraftPost

在Sprout Social中创建一个草稿帖子(未安排,需要手动发布)。

参数:

  • text (string,必填):帖子的文本内容
  • customer_profile_ids (number\[\],必填):要发布到的Sprout配置文件ID数组
  • media (array,可选):媒体对象数组 media_idmedia_type (“照片”或“视频”)

退货:

{
  "success": true,
  "request": { /* payload sent */ },
  "response": { /* Sprout API response */ }
}

例子:

await createDraftPost({
  text: "Check out our latest update! 🚀",
  customer_profile_ids: [12345, 67890],
  media: [{
    media_id: "media_abc123",
    media_type: "PHOTO"
  }]
});

______________________________________________________________________

3.创建ScheduledPost

创建一个计划在未来发布的帖子草稿。

参数:

  • text (string,必填):帖子的文本内容
  • customer_profile_ids (number\[\],必填):要发布到的Sprout配置文件ID数组
  • scheduled_times (string\[\],必填):ISO8601 UTC时间戳数组(例如,“2025-11-20T15:00:00Z”)
  • media (array,可选):媒体对象数组 media_idmedia_type

退货:

{
  "success": true,
  "request": { /* payload sent */ },
  "response": { /* Sprout API response */ }
}

例子:

await createScheduledPost({
  text: "Scheduled post for tomorrow! 📅",
  customer_profile_ids: [12345],
  scheduled_times: ["2025-11-21T14:00:00Z"],
  media: [{
    media_id: "media_xyz789",
    media_type: "VIDEO"
  }]
});

______________________________________________________________________

4.获取配置文件

从环境变量中获取配置的Sprout Social配置文件ID。

参数:

退货:

{
  "linkedin_company": "12345",
  "twitter": "67890",
  "youtube": "11111",
  "bluesky": "22222",
  "group_id": "999",
  "customer_id": "888"
}

例子:

await getConfiguredProfiles();

______________________________________________________________________

5.创建PostFromContent

统一工具 它在一次通话中处理媒体上传(如果需要)和帖子创建。这是大多数用例的推荐工具。

参数:

  • caption (string,必填):帖子的文本内容
  • customer_profile_ids (number\[\],必填):要发布到的Sprout配置文件ID数组
  • media_url (字符串,可选):媒体文件的公共URL
  • media_type (枚举,可选):“照片”或“视频”(默认为“照片”)
  • schedule_time (字符串,可选):用于调度的ISO8601 UTC时间戳

退货:

{
  "success": true,
  "request_sent": { /* payload sent */ },
  "sprout_response": { /* Sprout API response */ }
}

示例(与媒体一起起草帖子):

await createPostFromContent({
  caption: "New product launch! 🎉",
  customer_profile_ids: [12345, 67890],
  media_url: "https://example.com/product.jpg",
  media_type: "PHOTO"
});

示例(预定帖子):

await createPostFromContent({
  caption: "Tomorrow's announcement 📢",
  customer_profile_ids: [12345],
  schedule_time: "2025-11-21T10:00:00Z"
});

典型工作流程

选项1:使用个人工具

// 1. Upload media
const upload = await uploadMediaFromUrl({
  media_url: "https://example.com/image.jpg"
});

// 2. Create scheduled post with media
await createScheduledPost({
  text: "Check this out! 🎨",
  customer_profile_ids: [12345, 67890],
  scheduled_times: ["2025-11-21T15:00:00Z"],
  media: [{
    media_id: upload.media_id,
    media_type: "PHOTO"
  }]
});

选项2:使用统一工具(推荐)

// Single call handles everything
await createPostFromContent({
  caption: "Check this out! 🎨",
  customer_profile_ids: [12345, 67890],
  media_url: "https://example.com/image.jpg",
  media_type: "PHOTO",
  schedule_time: "2025-11-21T15:00:00Z"
});

查找您的个人资料ID

要查找您的Sprout Social个人资料ID:

  1. 登录Sprout Social
  2. 引导到 出版编排
  3. 选择配置文件时,请使用浏览器的开发人员工具(“网络”选项卡)
  4. 查找API调用以查看 customer_profile_id 价值观
  5. 或者,联系Sprout Social support寻求帮助

备注

  • 所有帖子均创建为 草稿 默认情况下,发布前需要在Sprout Social中获得批准
  • 媒体文件必须可通过HTTP/HTTPS URL公开访问
  • 上传的媒体有过期时间(在上传响应中返回)
  • 计划时间必须采用ISO8601 UTC格式(例如,“2025-11-20T15:00:00Z”)
  • 服务器使用stdio传输,使其适合本地MCP集成

错误处理

所有工具都返回一个JSON响应,其中包含 success 字段:

  • success: true -操作已成功完成
  • success: false -操作失败(包括 error 带详细信息的字段)

安全

  • 永不承诺 你的 .env 文件或公开您的API凭据
  • .gitignore 文件配置为排除环境文件
  • 安全地存储凭据并定期轮换

API 参考

此服务器使用 斯普劳特社交出版API。有关API功能和限制的更多详细信息,请参阅Sprout Social API官方文档。

未来改进

  1. 添加对发布的支持(不仅仅是草稿)
  2. 实现帖子编辑和删除
  3. 添加对后分析检索的支持
  4. 对多个岗位实施批量操作
  5. 添加对网络特定内容要求的验证
  6. 支持其他媒体类型和格式

目录标签

目录标签

社交媒体管理TypeScript多平台支持本地部署内容发布定时发布媒体上传

接入字段

传输方式(transport,传输协议)

未说明

鉴权方式(authType,认证方式)

token

工具数量(toolCount,工具数)

0

资源数量(resourceCount,资源数)

0

提示词数量(promptCount,提示词数)

0

权限和风险

未说明token部署方式未说明

接入前请确认传输方式、认证方式和部署位置,并根据实际工具能力限制访问范围。

安装前确认

不要直接授予不必要的文件、网络或账号权限;先核对安装命令和配置内容。

仍需确认:installCommand

来源信息

继续浏览同类 MCP