mcp-workato
Click on "Install Server".
Wait a few minutes for the server to deploy. Once ready, it will show a "Started" state.
In the chat, type
@followed by the MCP server name and your instructions, e.g., "@mcp-workatoWhich recipes are currently running?"
That's it! The server will respond to your query, and you can continue using it as needed.
Here is a step-by-step guide with screenshots.
mcp-workato
An MCP (Model Context Protocol) server that exposes the Workato Platform API to Claude Desktop (and any other MCP-compatible client).
With this server connected, you can ask Claude things like:
"List my Workato recipes that are currently running."
"Show me the last 10 failed jobs for recipe 12345."
"Stop recipe 67890."
"Get the source code of custom connector 111."
Features
Exposes the following Workato operations as MCP tools:
Tool | Description |
| Validate credentials / return current user |
Recipes | |
| List recipes (filter by folder, adapters, running status, date range, paginate) |
| Search recipes by name (case-insensitive, auto-paginating) |
| Get full recipe details via |
| Start (enable) a recipe — |
| Stop (disable) a recipe — |
| Force-run a recipe on demand — |
| Delete a recipe permanently |
| Reset trigger cursor (re-sync data) — polling/scheduled triggers only |
Jobs | |
| List jobs (filter by recipe/status/date range) |
| Get job details (input/output/error trace) |
Connections | |
| List connections |
| Get a connection by id |
Folders | |
| List project folders |
| Get a folder/project by id |
Custom Connectors | |
| List custom connectors |
| Get custom connector metadata |
| Get a custom connector's source code |
Account | |
| List account properties (named constants) |
Related MCP server: Dataiku DSS MCP Server
Prerequisites
Node.js 18+ (tested on Node 22) — required for the built-in
fetchAPI.A Workato account with API access enabled.
Your Workato credentials — choose one of three authentication methods:
This server supports three authentication methods. The auth mode is auto-detected:
You provide | Detected mode |
| api_token (default, simplest) |
| access_token (legacy) |
| OAuth2 |
| (forces a specific mode) |
Method 1: API Token ⭐ (simplest — all you need is one token)
This is the simplest method and works with the single token shown on Workato's API Clients page
(https://app.<pod>.workato.com/members/api/clients). The token is sent as
Authorization: Bearer <token>.
Sign in to Workato.
Open API Clients:
https://app.<your-pod>.workato.com/members/api/clients(e.g. for Singapore:https://app.sg.workato.com/members/api/clients).Copy the API Token shown on that page →
WORKATO_TOKEN.
That's it — no user id, no client id/secret needed.
{
"WORKATO_TOKEN": "YOUR_API_TOKEN",
"WORKATO_POD": "sg"
}💡 Make sure
WORKATO_PODmatches the subdomain of your Workato URL (app.sg.workato.com→sg,app.eu.workato.com→eu, etc.).
Method 2: API Client / OAuth2 (for automation / service accounts)
Uses Workato's OAuth2 client_credentials flow. You need a Client ID and Client Secret.
Sign in to Workato.
Go to Tools → API Clients (or App Console → API Clients on some plans).
Click "Create API Client" (or "New Client").
Copy the Client ID →
WORKATO_CLIENT_IDCopy the Client Secret (shown once!) →
WORKATO_CLIENT_SECRET
💡 With this method, you do NOT need
WORKATO_TOKENorWORKATO_USER_ID. The server automatically exchanges client_id + client_secret for a Bearer access token.
Method 3: Access Token (legacy personal API token)
Uses the x-client-secret + x-user-id header scheme. You need a token and user ID.
Sign in to Workato.
Go to Account → API Tokens (or Settings → Account → API Tokens).
Click an existing token, or Create Token.
Copy the Access token →
WORKATO_TOKENCopy the User ID (a number like
12345) →WORKATO_USER_ID
⚠️ User ID is a numeric id, NOT your email/username. Find it next to the token, or in Settings → Profile.
Data center / pod
All auth methods need to know your Workato data center. Look at the Workato URL:
URL | Pod |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
Installation
git clone <this-repo> mcp_workato
cd mcp_workato
npm install
npm run buildThis produces the compiled server at dist/index.js.
Configuration
Configuration is read from environment variables (or command-line --key value args). See .env.example.
Variable | Required | Default | Description |
| ⚠️ | — | API token (mode 1) / access token (mode 3). Required for modes 1 & 3 |
| ⚠️ | — | Numeric Workato user id (mode 3 only) |
| ⚠️ | — | OAuth2 client id (mode 2 only) |
| ⚠️ | — | OAuth2 client secret (mode 2 only) |
| ❌ | (auto) | Force mode: |
| ❌ |
| Data center: |
| ❌ | (from pod) | Override the API base URL completely |
| ❌ |
| HTTP request timeout |
| ❌ |
| Log each API request to stderr |
Connect to Claude Desktop
Edit your Claude Desktop config file:
macOS:
~/Library/Application Support/Claude/claude_desktop_config.jsonWindows:
%APPDATA%\Claude\claude_desktop_config.json
💡 On Windows, replace
D:\\Projects\\Pribadi\\mcp_workatobelow with the absolute path to your project folder. Use double backslashes (\\) in JSON.
Add the mcp-workato server:
Simplest — API Token mode (Method 1):
{
"mcpServers": {
"workato": {
"command": "node",
"args": ["D:\\Projects\\Pribadi\\mcp_workato\\dist\\index.js"],
"env": {
"WORKATO_TOKEN": "your_api_token_here",
"WORKATO_POD": "sg"
}
}
}
}Or, with OAuth2 (Method 2):
{
"mcpServers": {
"workato": {
"command": "node",
"args": ["D:\\Projects\\Pribadi\\mcp_workato\\dist\\index.js"],
"env": {
"WORKATO_CLIENT_ID": "your_client_id",
"WORKATO_CLIENT_SECRET": "your_client_secret",
"WORKATO_POD": "us"
}
}
}
}Then:
Save the file.
Quit Claude Desktop completely (system tray → Quit, not just close the window).
Restart Claude Desktop.
Start a new chat. You should see the workato server's tools available. Try asking: "Can you list my Workato recipes?"
Verify your credentials (ping test)
Before wiring the server into Claude, test that your Workato credentials work. There are three ways:
Option 1 — npm run ping (recommended, easiest)
# Simplest: API token only (Method 1)
npm run ping -- --token YOUR_TOKEN --pod sg
# Or set env vars first (Windows)
set WORKATO_TOKEN=YOUR_TOKEN
set WORKATO_POD=sg
npm run ping
# OAuth2 mode (Method 2)
npm run ping -- --client-id YOUR_ID --client-secret YOUR_SECRETExpected output with valid credentials:
✅ MCP handshake OK: { name: 'mcp-workato', version: '1.0.0' }
⏳ Calling ping tool...
✅ Ping SUCCESS! Workato responded with:
{ "id": 12345, "name": "Your Name", ... }If credentials are wrong you'll see:
❌ Ping FAILED:
Error: Workato API error: GET .../api/users/me -> 401 UnauthorizedOption 2 — MCP inspector (interactive UI)
npx @modelcontextprotocol/inspector node dist/index.jsThis opens a web UI where you can connect, list tools, and call ping manually.
Option 3 — Through Claude Desktop
Once configured (see below), just ask Claude: "Can you ping Workato to check the connection?"
Run from CLI args (alternative to env vars)
Every setting can also be passed as a command-line argument:
# API token only (Method 1 - simplest)
node dist/index.js --token "YOUR_TOKEN" --pod sg --debug
# OAuth2 mode (Method 2)
node dist/index.js --client-id "YOUR_ID" --client-secret "YOUR_SECRET" --pod euFlag | Env var equivalent |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
Development
npm run build # compile TypeScript -> dist/
npm run lint # type-check without emitting
npm start # run the compiled server
npm run dev # build + run in one stepProject structure
mcp_workato/
├── src/
│ ├── index.ts # MCP server entry (stdio transport)
│ ├── tools.ts # MCP tool definitions + zod schemas
│ ├── workato-client.ts # Workato REST API client
│ └── config.ts # env/arg config loader
├── dist/ # compiled output (after build)
├── .env.example
├── package.json
└── tsconfig.jsonHow it works
Claude Desktop ──stdio──► mcp-workato (this server) ──HTTPS──► Workato Platform APIClaude Desktop spawns the server as a child process and talks to it over stdin/stdout using the JSON-RPC–based MCP protocol.
The server authenticates to Workato using one of three methods (see above):
Authorization: Bearer <token>(api_token), the OAuth2 client_credentials flow, or the legacyx-client-secret+x-user-idheaders.Each MCP tool maps to one Workato API endpoint; results are returned as JSON text content that Claude can read and reason about.
Security notes
Your Workato token is powerful. Treat it like a password.
The token is only stored in your local
claude_desktop_config.json(or env). It is not sent anywhere except Workato.Set
WORKATO_DEBUG=trueonly for troubleshooting — it logs request URLs (not secrets) to stderr.
Troubleshooting
"Missing required Workato configuration"
→ The required env vars for your chosen auth mode aren't set in the Claude Desktop config's env block. At minimum, provide WORKATO_TOKEN (for api_token mode), plus WORKATO_USER_ID (access_token mode), or WORKATO_CLIENT_ID + WORKATO_CLIENT_SECRET (oauth2 mode).
401 / "Unauthorized" from Workato → Token is wrong/expired, or the user id doesn't match the token. Regenerate the token in Workato.
Wrong data center / 404
→ Set WORKATO_POD to match your Workato URL (e.g. eu, sg), or set WORKATO_BASE_URL directly.
Claude Desktop doesn't see the tools
→ Fully quit and restart Claude Desktop. Check the project path uses double backslashes on Windows. Check Claude's logs (%APPDATA%\Claude\logs).
License
MIT
This server cannot be installed
Maintenance
Resources
Unclaimed servers have limited discoverability.
Looking for Admin?
If you are the server author, to access and configure the admin panel.
Related MCP Servers
- AlicenseAqualityCmaintenanceMCP server that gives Claude Desktop and other desktop MCP clients filesystem powers—read, write, edit, and manage files like AI coding assistants.17879MIT
- AlicenseBqualityDmaintenanceA comprehensive MCP server for Dataiku DSS integration, providing Claude Code with direct access to manage recipes, datasets, and scenarios.44151Apache 2.0
- Alicense-qualityDmaintenanceMCP server that connects Claude Desktop to Atiendo24 platform, enabling management of appointments, customers, conversations, leads, analytics, and WhatsApp messaging through natural language.11MIT
- Alicense-qualityCmaintenanceA Model Context Protocol server that lets Claude and any other MCP-compatible client work with an OpenText AppWorks Platform tenant in plain English.MIT
Related MCP Connectors
Hosted Amazon Seller Central and Amazon Ads MCP server for Claude, ChatGPT, Cursor, and agents.
Hosted Amazon Seller and Vendor MCP server for Claude, ChatGPT, Cursor, Codex, Gemini, Copilot.
Hosted MCP server connecting claude.ai, ChatGPT and other AI apps to your own computer
Latest Blog Posts
- Who's Calling? MCP Hosts Are an Identity Blind Spot (And the Spec Knows It)By Om-Shree-0709 on .mcpAgent IdentityOAuth 2.1
- Your AI Chatbot Just Exposed Your CEO's Salary to an InternBy Om-Shree-0709 on .Agent IdentityMCP SecurityOAuth Delegation
- Why MCP Servers Need Execution Sandboxing (And Why Your Current Stack Isn't Enough)By Om-Shree-0709 on .Agentic AiPrompt InjectionWebAssembly
MCP directory API
We provide all the information about MCP servers via our MCP API.
curl -X GET 'https://glama.ai/api/mcp/v1/servers/chzkyy/mcp_workato'
If you have feedback or need assistance with the MCP directory API, please join our Discord server