Rippling MCP服务器

一个开源的模型上下文协议(MCP)服务器,用于Rippling HR/IT/Finance平台,连接任何AI代理或LLM到Rippling工作区,查询员工、管理休假请求、查看公司结构等。

  • by Jbermingham1
  • TypeScript
  • 本地部署
  • 更新于
在 GitHub 查看 Jbermingham1/rippling-mcp-server

使用说明

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代理调用工具时,服务器:

  1. 使用Zod模式验证输入
  2. 向Ripping API发出经过身份验证的请求
  3. 自动处理速率限制
  4. 返回结构化JSON响应(或可操作的错误消息)

局限性

  • 员工端点为 只读 (撕裂API V1限制)
  • API令牌权限决定每个员工返回哪些字段
  • 速率限制由Ripping强制执行(通过响应标头进行监控)
  • 处理休假请求需要适当的管理员权限

何时使用(何时不使用)

当…时使用此选项 当…时伸手去拿其他东西
您希望为任何兼容MCP的代理(Claude Desktop、Cursor、Continue、custom)集成Rippling 您正在AI/MCP上下文之外构建一个独立的Rippling应用程序(使用 Rippling SDK 直接)
你想要Bearer令牌的简单性,以便读取大部分自动化 你需要写入V1暴露之外的大量HR突变
您希望在代理边界进行严格的输入验证 您希望在没有架构强制的情况下进行未筛选的API访问

许可证

麻省理工学院

贡献

欢迎发布问题和PR。