Back to MCP Servers

Gusto MCP Server

Read-only access to Gusto payroll, employees, contractors, pay schedules, and time tracking data via natural language in AI clients like Claude, Cursor, and Gemini.

Payments by Gusto OAuth2 active
Overview

The Gusto MCP server is an official, provider-hosted Model Context Protocol server that exposes a company's Gusto payroll and HR data to AI assistants. It connects via OAuth 2.0 with PKCE and is available at https://mcp.api.gusto.com (with a separate demo endpoint at https://mcp.api.gusto-demo.com and a Claude-specific endpoint at https://mcp.api.gusto.com/anthropic). Admins authorize granular scopes covering Company Information, Employee Data, Contractor Data, Payroll Data, and Time Tracking.

The server exposes around 36 tools spanning companies and locations, employees, contractors, payroll runs and pay schedules, and timesheets. Capabilities include listing and retrieving employees, jobs, compensation history, terminations and rehires, contractor payments, payroll runs, pay periods, earning types, and timesheets. All tools are read-only: the server cannot run payroll, move money, or modify records, which keeps the blast radius small when wired into an LLM.

Gusto also publishes a separate Embedded Dev Assistant MCP at https://embedded-payroll.readme.io/mcp aimed at developers building on the Embedded Payroll API (API reference search, docs search, code generation). That is a different server from the data-access MCP described here. Both are remote HTTP MCP endpoints, so there is nothing to install locally beyond MCP client configuration.

Tools

Tool Description
list_gusto_companies List Gusto companies accessible to the authenticated user.
list_company_locations List work locations for a company.
get_location Retrieve details for a specific company location.
list_company_departments List departments configured for a company.
get_department Retrieve details for a specific department.
list_employees List employees in a company.
get_employee Retrieve a specific employee record.
list_employee_jobs List jobs assigned to an employee.
get_employee_compensation_history Retrieve compensation history for an employee.
list_employee_employments List employment records for an employee.
list_employee_terminations List termination records for an employee.
list_employee_rehires List rehire records for an employee.
get_employee_custom_fields Retrieve custom field values for an employee.
list_employee_addresses List addresses associated with an employee.
list_contractors List contractors for a company.
get_contractor Retrieve a specific contractor record.
list_contractor_payments List payments made to contractors.
list_contractor_payment_groups List contractor payment groups.
list_payrolls List payroll runs for a company.
get_payroll Retrieve details for a specific payroll run.
list_pay_schedules List pay schedules configured for a company.
list_pay_periods List pay periods for a company.
list_pay_schedule_assignments List assignments of pay schedules to employees.
list_earning_types List earning types available for payroll.
list_timesheets List timesheets for a company or employee.
get_timesheet Retrieve a detailed timesheet record.
get_token_info Return information about the current OAuth token and scopes.
get_custom_field_schema Return the schema of custom fields configured for the company.
Setup Guide

Prerequisites

  • A Gusto account with admin access to the company you want to query
  • A supported MCP client: Claude (Pro or Max), Cursor (Pro, Pro+, Ultra, Teams, or Enterprise), or Gemini CLI
  • For testing, the demo environment is https://mcp.api.gusto-demo.com

Claude (Connector)

  1. Click your avatar then Settings then Connectors
  2. Add a custom connector named "Gusto"
  3. Enter the remote MCP URL: https://mcp.api.gusto.com (or use https://mcp.api.gusto.com/anthropic for the Claude-specific endpoint)
  4. Click Connect and complete the OAuth authorization
  5. Select the data scopes and company you want to expose

Cursor

Add to ~/.cursor/mcp.json:

{
  "mcpServers": {
    "gusto-mcp": {
      "url": "https://mcp.api.gusto.com/"
    }
  }
}

Then open Cursor, authenticate, and authorize the requested OAuth scopes.

Gemini CLI

Add to settings.json:

{
  "mcpServers": {
    "gusto": {
      "httpUrl": "https://mcp.api.gusto.com"
    }
  }
}

Notes

  • Authentication uses OAuth 2.0 with PKCE. Tokens are issued at https://mcp.api.gusto.com/oauth/token
  • Rate limits: 100 requests per minute per user and 500 per minute per company
  • Gusto recommends running the server in an isolated session and not mixing it with other MCP servers in the same client, to reduce data leakage risk
  • All tools are read-only; the server cannot run payroll or modify records
Use Cases
  • Ask "how many employees are in Engineering vs Sales?" and have an agent enumerate departments and headcount without logging into the Gusto admin UI
  • Pull total gross payroll for the last N payroll runs to feed a finance dashboard or month-end close report
  • Audit recent terminations, rehires, and compensation changes across the company before a board update
  • Reconcile contractor payment groups and payment history against accounting records
  • Surface upcoming pay periods and pay schedule assignments so an AI assistant can answer "when does the next payroll run close?"
Example Prompts
  • "List all employees hired in the last 90 days and their job titles."
  • "What was the total gross payroll for our last three payroll runs?"
  • "Show me every contractor we paid this quarter, grouped by payment group."
  • "Which employees are assigned to the biweekly pay schedule?"
  • "Pull timesheets for employee 12345 for the current pay period."
Pros
  • Officially hosted and maintained by Gusto, so no self-hosting or key management is needed
  • Read-only by design, which sharply limits the risk of an LLM doing something destructive with payroll
  • Broad coverage across companies, employees, contractors, payroll, pay schedules, and timesheets (roughly 36 tools)
  • OAuth 2.0 with PKCE and granular scopes per data category
Limitations
  • Read-only only. You cannot run payroll, submit contractor payments, or update employee records through the MCP server
  • Requires a paid plan on the MCP client side (Claude Pro/Max or a paid Cursor tier) plus Gusto admin access
  • Gusto recommends not mixing this server with other MCP servers in the same session, which complicates multi-tool agent setups
Alternatives
  • Gusto Embedded Dev Assistant MCP (https://embedded-payroll.readme.io/mcp): a separate Gusto-hosted server focused on API reference and docs search for developers building on Gusto Embedded Payroll
  • QuickBooks or Xero MCP servers: for accounting-side payroll data rather than the Gusto system of record
  • Direct Gusto REST API: if you need write access (run payroll, create employees), the public Gusto API still has to be called directly since the MCP server is read-only