使用说明
Ripping MCP服务器
开源 模型上下文协议 (MCP)服务器 涟漪 HR/IT/财务平台。将任何AI代理或LLM连接到您的Rippling工作区——查询员工、管理休假请求、查看公司结构等。
为什么
Rippling掌握了一家公司的运营真相:谁在那里工作,他们所在的团队是什么,谁有审批权,谁在休假。需要根据这一事实采取行动的人工智能代理——入职机器人、IT配置代理、离职审批工作流、内部人力资源问答——都需要访问它。大多数团队要么为每个代理重新构建这种访问权限(脆弱、重复),要么完全跳过集成(因此代理保持肤浅)。MCP修复了以下问题:一次标准化接口,将其暴露给每个MCP客户端(Claude Desktop、Cursor、Continue、自定义代理)。这个服务器就是Ripple的接口。
建筑
┌────────────┐ ┌──────────────────────┐
│ Claude │ ─── stdio ──▶ │ rippling-mcp-server │
│ (or any │ ◀── JSON ─── │ │
│ MCP client)│ │ 18 tools, 6 domains │
└────────────┘ │ Zod-validated input │
│ rate-limit aware │
│ structured errors │
└──────────┬───────────┘
│ HTTPS + bearer token
▼
┌──────────────────────┐
│ Rippling Platform │
│ API V1 │
└──────────────────────┘
特性
- 18工具 跨越6个域:公司、员工、组织、休假、组、活动
- 承载令牌身份验证 -简单的API令牌设置,不需要OAuth舞蹈
- 了解费率限制 --尊重Rippling的
x-ratelimit-*响应标头,暂停接近极限 - Zod验证输入 -在API调用之前,对每个工具输入进行架构检查
- AI友好错误 --结构化错误消息,根据HTTP状态提供可操作的修复建议(401→令牌问题,403→ 范围,429→ 速率限制,404→ 未找到)
- TypeScript严格 --全型安全,内置
@modelcontextprotocol/sdk - 发表于Smithery --一键安装任何MCP客户端
快速开始
1.获得一个撕裂的API代币
首选 涟漪 > 设置 > API令牌 > 创建API令牌。复制令牌。
2.在Claude Desktop中配置
添加到您的 claude_desktop_config.json:
{
"mcpServers": {
"rippling": {
"command": "npx",
"args": ["-y", "rippling-mcp-server"],
"env": {
"RIPPLING_API_TOKEN": "your_api_token_here"
}
}
}
}
3.使用它
问克劳德这样的问题:
- “列出工程部门的所有员工”
- “谁有待处理的休假申请?”
- “显示公司组织结构”
- “爱丽丝的PTO余额是多少?”
工具参考
公司
| 工具 | 说明 |
|---|---|
get_company |
获取公司详细信息(姓名、地址、地点) |
list_departments |
列出所有具有层次结构的部门 |
list_work_locations |
列出工作地点和地址 |
员工
| 工具 | 说明 |
|---|---|
list_employees |
列出在职员工(分页) |
get_employee |
按ID获取特定员工 |
list_all_employees |
列出所有员工,包括已终止的员工 |
search_employees |
按姓名、电子邮件、职务或部门搜索 |
组织
| 工具 | 说明 |
|---|---|
list_teams |
列出团队和子团队关系 |
list_levels |
列出职位级别(IC、经理、高管) |
list_custom_fields |
列出自定义字段定义 |
休假管理
| 工具 | 说明 |
|---|---|
get_leave_balances |
获取员工的PTO/病假余额 |
list_leave_requests |
列出休假请求(按状态、日期、请求者筛选) |
process_leave_request |
批准或拒绝待处理的休假申请 |
list_leave_types |
列出为公司配置的所有休假类型 |
群组
| 工具 | 说明 |
|---|---|
list_groups |
列出所有组 |
create_group |
创建一个包含成员的新组 |
update_group |
更新组名或成员 |
delete_group |
删除组 |
活动
| 工具 | 说明 |
|---|---|
get_company_activity |
获取活动事件(招聘、变更、终止) |
配置
| 变量 | 必填 | 默认 | 描述 |
|---|---|---|---|
RIPPLING_API_TOKEN |
是 | - | 您的撕裂API代币 |
RIPPLING_BASE_URL |
没有 | https://api.rippling.com/platform/api |
API基本URL |
对于沙盒/测试,设置 RIPPLING_BASE_URL 到 https://sandbox.rippling.com/api/platform/api.
发展
# Install dependencies
npm install
# Run in development mode
RIPPLING_API_TOKEN=your_token npm run dev
# Run tests
npm test
# Build for production
npm run build
# Type check
npm run lint
运作原理
此服务器包装 裂土平台API (V1)并通过模型上下文协议公开它。当AI代理调用工具时,服务器:
- 使用Zod模式验证输入
- 向Ripping API发出经过身份验证的请求
- 自动处理速率限制
- 返回结构化JSON响应(或可操作的错误消息)
局限性
- 员工端点为 只读 (撕裂API V1限制)
- API令牌权限决定每个员工返回哪些字段
- 速率限制由Ripping强制执行(通过响应标头进行监控)
- 处理休假请求需要适当的管理员权限
何时使用(何时不使用)
| 当…时使用此选项 | 当…时伸手去拿其他东西 |
|---|---|
| 您希望为任何兼容MCP的代理(Claude Desktop、Cursor、Continue、custom)集成Rippling | 您正在AI/MCP上下文之外构建一个独立的Rippling应用程序(使用 Rippling SDK 直接) |
| 你想要Bearer令牌的简单性,以便读取大部分自动化 | 你需要写入V1暴露之外的大量HR突变 |
| 您希望在代理边界进行严格的输入验证 | 您希望在没有架构强制的情况下进行未筛选的API访问 |
许可证
麻省理工学院
贡献
欢迎发布问题和PR。