超越MCP服务器
一个可扩展的模型上下文协议服务器,提供对社交平台数据和链上数据的标准化访问。目前支持Farcaster(通过Neynar API)与占位符进行Twitter集成。不久将添加更多像Telegram这样的平台,包括链上数据。
特性
- 符合MCP标准:完全实现模型上下文协议规范
- 多平台:旨在支持多个社交媒体平台
- 可扩展:易于添加新的平台提供商
- 构造良好:优化了LLM消费的上下文格式
- 柔性运输:支持stdio和SSE/HTTP传输
支持的平台
- 法尔卡斯特:通过Neynar API全面实现
- 推特:占位符(未实现)
入门指南
先决条件
- Node.js 16+
- Neynar API密钥(用于Farcaster访问) https://neynar.com/
安装
- 克隆存储库
git clone https://github.com/yourusername/beyond-mcp-server.git
cd beyond-mcp-server- 安装依赖项
npm install- 从模板创建.env文件
cp .env.example .env
# Edit .env with your API keys- 配置环境变量
- 必需:设置 NEYNAR_API_KEY 在.env文件中 - 您可以从获取Neynar API密钥 https://neynar.com/ - 如果没有有效的API密钥,Farcaster功能将无法工作
- 构建并启动服务器
npm run build
npm start # For stdio mode (default)
# OR
npm run start:http # For HTTP/SSE mode使用Claude for Desktop
- 构建服务器
npm run build- 确保使用API密钥正确配置了.env文件
- 服务器将在以下位置查找.env: - 当前工作目录 - 项目根目录 - 父目录(最多3级) - 您还可以直接在系统中设置环境变量
- 将服务器添加到您的Claude Desktop配置中:
- macOS:~/库/应用程序支持/Claude/Claude_desktop_config json
- Windows:%APPDATA%\\Claude\\Claude_desktop_config.json
{
"mcpServers": {
"beyond-social": {
"command": "/usr/local/bin/node",
"args": [
"/full/path/to/beyond-mcp-server/dist/index.js",
"--stdio"
]
}
}
}- 或者,您可以直接在Claude Desktop配置中传递API键和其他环境变量(推荐):
{
"mcpServers": {
"beyond-social": {
"command": "/usr/local/bin/node",
"args": [
"/full/path/to/beyond-mcp-server/dist/index.js",
"--stdio"
],
"env": {
"NEYNAR_API_KEY": "YOUR_API_KEY_HERE",
"ENABLE_FARCASTER": "true",
"ENABLE_TWITTER": "false"
}
}
}
}- 重新启动桌面版的Claude
MCP能力
资源
social://{platform}/{query}/search-在平台上搜索内容social://{platform}/user/{userId}/profile-获取用户资料social://{platform}/wallet/{walletAddress}/profile-通过钱包地址获取用户资料(仅限Farcaster)social://{platform}/user/{userId}/balance-获取用户的钱包余额(仅限Farcaster)
- 接受FID(数字)或用户名 - 如果提供了用户名,则在提取余额之前会自动转换为FID
social://{platform}/wallet/{walletAddress}/profile-通过钱包地址获取用户资料social://{platform}/user/{userId}/content-获取用户内容social://{platform}/thread/{threadId}-获取对话线索social://{platform}/trending-获取热门话题social://{platform}/trending-feed-通过多提供商支持获取趋势提要内容(仅限Farcaster)
- 支持提供者:neynar(默认)、openrank、mbd - 参数:时间窗口(1小时、6小时、12小时、24小时、7天、30天)、限制
social://{platform}/channels/search-在平台上搜索频道(仅限Farcaster)
- 参数:查询、限制、光标 - 返回频道详细信息,包括名称、描述、关注者计数和元数据
social://{platform}/channels/bulk-search-并行搜索多个频道(仅限Farcaster)
- 参数:查询(数组)、限制、光标 - 返回每个查询的结果,包括频道详细信息和分页信息
工具
search-content-在社交平台上搜索内容get-user-profile-获取用户的个人资料信息get-user-profile-by-wallet-使用钱包地址获取用户资料(仅限Farcaster)get-user-balance-获取用户的钱包余额(仅限Farcaster)
- 接受FID(数字)或用户名 - 自动处理用户名到FID的转换
get-user-content-从特定用户处获取内容get-thread-获取对话线索get-trending-topics-获取当前热门话题getTrendingFeed-通过多提供商支持获取趋势提要(仅限Farcaster)get-wallet-profile-根据钱包地址获取个人资料search-channels-在平台上搜索频道(仅限Farcaster)
- 参数:查询、限制、光标 - 返回详细的频道信息,包括关注者计数和元数据
search-bulk-channels-并行搜索多个频道(仅限Farcaster)
- 参数:查询(数组)、限制、光标 - 返回每个查询的结果,包括频道详细信息和分页信息
鼓励
analyze-thread-分析社交媒体帖子summarize-user-activity-总结用户的活动explore-trending-topics-探索平台上的热门话题analyze-search-results-分析查询的搜索结果explore-trending-feed-分析不同提供商的动态提要内容get-wallet-profile-按钱包地址获取和分析用户资料check-user-balance-分析用户的钱包余额和持有量
- 适用于FID和用户名输入 - 处理用户名的自动FID解析
explore-channels-分析和探索平台上的渠道
- 提供有关频道受欢迎程度和内容的见解 - 根据搜索条件帮助发现相关渠道
explore-bulk-channels-并行分析和比较多个通道
- 高效地搜索和比较多个渠道 - 提供有关渠道关系和趋势的见解
与新供应商一起扩展
要添加新的社交平台提供商,请执行以下操作:
- 在中创建新目录
src/providers/ - 实施
ContentProvider接口 - 在注册表中注册提供者
例子:
import { ContentProvider } from '../interfaces/provider';
export class MyPlatformProvider implements ContentProvider {
public name = 'myplatform';
public platform = 'myplatform';
// Implement all required methods
}发展
以开发模式运行
npm run dev # stdio mode
npm run dev:http # HTTP mode测试
npm test代码检查
npm run lint
npm run lint:fix许可证
麻省理工学院
贡献
欢迎投稿!请随时提交拉取请求。
更新日志
此项目的所有显著更改都将记录在此文件中。
\[1.0.0\]至2025年3月10日
添加
- 初始版本
- 通过Neynar API进行Farcaster集成
- 符合MCP的服务器实现
- 支持stdio和HTTP模式
\[1.0.1\]-2025年3月19日
添加
- 添加了新的工具和资源来获取带有钱包地址的用户配置文件
- 新增测试
\[1.0.2\]-2025年3月21日
添加
- 添加了通过ID或用户名检索Farcaster用户钱包余额的功能
- 实现了对趋势提要内容的多提供商支持
- 增强的updateUserProfile,包含更多用户详细信息
- 增加了全面的测试,以确保可靠性和性能
\[1.0.3\]-2025年3月24日
添加
- 添加对获取单个和批量farcaster频道信息的支持

