Gusto for AI agents
Gusto is a payroll, benefits, and HR platform for small and medium businesses, handling employee pay, time off, and compliance. Connect it once through Arc0, and your agent, or Claude, ChatGPT and Cursor, can use it through one MCP endpoint, limited to what each user approved.
What agents do in Gusto.
Look up an employee's record
Pull an employee's job and compensation details before answering a payroll question.
Create a new employee record
Add a newly hired employee's details to start their onboarding in payroll.
Approve a pay schedule change
Update a pay schedule assignment only after HR confirms the new schedule with the employee.
192 Gusto actions, graded by risk.
Every Gusto action is tagged read, write or destructive, so one policy covers the whole app and new actions inherit the right default.
read
104Look things up. Allowed by default.
- gusto.get_jobGet job
- gusto.get_formGet Company Form
- gusto.get_benefitGet Benefit
- gusto.get_companyGet company
- gusto.get_payrollGet payroll
- gusto.get_reportsGet report
- gusto.get_employeeGet employee
- gusto.get_locationGet location
- gusto.list_benefitsList Benefits
- gusto.get_contractorGet Contractor
- gusto.get_departmentGet Department
- gusto.get_token_infoGet token info
- gusto.list_employeesList Employees
- gusto.list_pay_stubsList Pay Stubs
- gusto.get_garnishmentGet Garnishment
- gusto.get_home_addressGet Home Address
write
69Create and change things. Allow, or ask the user first.
- gusto.create_jobCreate Job
- gusto.update_jobsUpdate Jobs
- gusto.create_adminCreate Admin
- gusto.create_flowsCreate flows
- gusto.create_reportsCreate Custom Report
- gusto.update_companyUpdate Company
- gusto.create_employeeCreate Employee
- gusto.update_employeeUpdate Employee
- gusto.update_locationUpdate location
- gusto.create_contractorCreate Contractor
- gusto.create_departmentCreate Department
- gusto.update_departmentUpdate Department
- gusto.update_garnishmentUpdate Garnishment
- gusto.update_state_taxesUpdate State Taxes
- gusto.create_garnishmentsCreate Garnishment
- gusto.update_earning_typeUpdate Earning Type
destructive
19Delete, cancel or archive. Ask first, or deny outright.
- gusto.delete_jobDelete Job
- gusto.delete_employeeDelete Employee
- gusto.delete_contractorDelete Contractor
- gusto.delete_departmentDelete Department
- gusto.delete_compensationDelete Compensation
- gusto.delete_work_addressDelete Work Address
- gusto.delete_employee_benefitDelete Employee Benefit
- gusto.delete_employee_terminationDelete Employee Termination
- gusto.delete_employee_bank_accountDelete Employee Bank Account
- gusto.delete_employee_home_addressDelete Employee Home Address
- gusto.delete_companie_bank_accountsDelete Company Bank Account
- gusto.remove_people_from_departmentRemove People From Department
- gusto.delete_time_tracking_time_sheetDelete Time Tracking Time Sheet
- gusto.delete_i9_authorization_documentDelete I-9 Authorization Document
- gusto.remove_time_off_policy_employeesRemove Employees from Time Off Policy
- gusto.delete_company_holiday_pay_policyDelete Company Holiday Pay Policy
Gusto in three steps.
- 01Your users connect GustoThey sign in to Gusto on Arc0 Connect, under your brand, and approve the access you ask for.
- 02You set the rulesReads run, writes like “create Job” can wait for the user, and “delete Job” can be denied outright.
- 03Any agent can actYour agent calls Gusto through the Arc0 SDK or MCP, and so can Claude, ChatGPT and Cursor. Every call lands on the audit log.
await arc0.policies.set('gusto', { read: 'allow', write: 'ask', // create_job destructive: 'deny', // delete_job }) # Claude Code: the same connection, one URL $ claude mcp add --transport http arc0 \ https://mcp.arc0.ai/u/u_8f2
How Gusto connects.
Users sign in to Gusto on Arc0 Connect and approve the scopes you request. Build with Arc0’s Gusto OAuth app, or bring your own so the Gusto consent screen names you. Tokens refresh automatically, and you can export them whenever you want.
The same Gusto connection serves your agent over MCP and your own backend over REST and the proxy, so a user connects once. How Arc0 handles credentials →
- AUTH
- OAuth 2.0
- CREDENTIALS
- Per-tenant encrypted vault
- MODEL SEES
- Results only, never credentials
- AUDIT LOG
- Every call, on every plan
Use Gusto from any agent.
Gusto and Arc0, answered.
Can I use Gusto with Claude, ChatGPT or Cursor?
Yes. Connect Gusto to Arc0 once, then add your Arc0 MCP URL to Claude, ChatGPT, Cursor, Claude Code or any other remote-MCP client. Each assistant only gets the Gusto actions you allow.
How do users connect Gusto?
Users sign in to Gusto on Arc0 Connect and approve the scopes you request. Build with Arc0’s Gusto OAuth app, or bring your own so the Gusto consent screen names you. Tokens refresh automatically, and you can export them whenever you want.
Which Gusto actions can my agent take?
192 in total: 104 read, 69 write and 19 destructive, such as “create Job”. Your policies decide which of them each agent may call.
Can I stop my agent from deleting things in Gusto?
Yes. Actions like “delete Job” are graded destructive. Set destructive actions to deny, or to ask so the user approves each one, and blocked calls still show up on the audit log.
Can my own backend call Gusto too?
Yes. The same Gusto connection is available over REST and through the Arc0 proxy, so your product and your agent share one connection per user.
Plug Gusto into your agent.
Your users connect Gusto once, under your brand. Your agent gets 192 actions behind your policies, with every call on the record.
Free to build · MCP + REST · Audit log on every plan