Unit 2: Observability & Monitoring
Hands-On Session (30 minutes)
Learning Objectives
- Understand how Workato recipes are organized (atomic skills vs orchestrators)
- Exercise MCP tools through natural language and observe invocations in the debug panel
- Trace a tool call end-to-end in Workato: recipe → job → execution steps → payloads
- Use Workato’s execution logs to diagnose issues and understand data flow
Part 1: Understand the Recipe Architecture (10 min)
Before diving into the tools, take a guided tour of how they’re built. This will make the logs much easier to read.
1.1 Open Your Workato Workspace
- Log in to Workato: app.trial.workato.com
- Navigate to Projects
You’ll see the folder structure that make push created:
├── atomic-salesforce-recipes/ # Single-purpose Salesforce operations
├── atomic-stripe-recipes/ # Single-purpose payment operations
├── orchestrator-recipes/ # Composed workflows (exposed as MCP tools)
└── sf-api-collection/ # Salesforce API collection recipes
1.2 Atomic Recipes — The Building Blocks
Open the atomic-salesforce-recipes folder and click on any recipe (e.g., search_contact_by_email).
Key things to notice:
- One operation — each atomic recipe does exactly one thing (a single Salesforce query or update)
- API trigger — it starts with an API request, meaning it’s callable from other recipes or external systems
- Structured input/output — well-defined request and response schemas
These are the LEGO bricks. They don’t encode business logic — they just read or write one thing.
1.3 Orchestrator Recipes — The Workflows
Go back to Projects and open the orchestrator-recipes folder. Click on check_in_guest.
This is what an MCP tool actually calls. Walk through the recipe steps:
- Validate prerequisites — Does the guest exist? Is there a reservation? Is the room vacant?
- Execute atomic recipes — Calls multiple atomics to read/write Salesforce objects
- State transitions — Updates Booking, Room, and Opportunity in the correct dependency order
- Return result — Structured response back to the MCP tool caller
Key concept: When the LLM calls check_in_guest via MCP, it hits this orchestrator. The orchestrator calls atomics. The atomics call Salesforce. Every step is logged.
1.4 How MCP Tools Map to Recipes
| What the LLM sees | What Workato runs | What Salesforce does |
|---|---|---|
Check_in_guest tool | check_in_guest orchestrator | 3 reads + 3 updates across Booking, Room, Opportunity |
Search_rooms_on_behalf_of_staff tool | search_rooms_on_behalf_of_staff orchestrator | SOQL query against Hotel_Room__c |
Submit_maintenance_request tool | submit_maintenance_request orchestrator | Validates contact, creates Case |
Each MCP tool = one orchestrator recipe = multiple atomic operations = multiple Salesforce API calls. The logs capture every layer.
Part 2: Exercise the Tools (10 min)
Now put the architecture into action. Log in to the hotel app as Manager and open the Chat interface with the debug panel visible.
2.1 Create a Booking
Use natural, vague language — the LLM should fill in gaps by asking follow-up questions or using context:
I need to book a room for a guest arriving next Monday
Watch the debug panel as the LLM:
- Asks for missing information (guest name, email, room preference, checkout date)
- Calls
Create_booking_orchestratorwith the gathered inputs - Returns a confirmation with booking details
2.2 Check In a Guest
Use an existing booking from the seed data or the one you just created:
Check in the guest in room 101
Watch for:
- The tool call to
Check_in_guest - Input parameters (guest email, room number)
- The response showing state transitions (Booking → Checked In, Room → Occupied)
2.3 Submit a Service Request
The guest in room 101 is requesting extra pillows
Notice how the LLM resolves which tool to use and gathers the required fields before calling it.
2.4 Check Out a Guest
Process checkout for the guest in room 101
If Stripe is configured, watch for the payment processing step in the debug panel. If not, observe the error handling — the LLM should communicate the issue clearly.
CHECKPOINT: You’ve exercised multiple tools and can see each invocation in the debug panel
Part 3: Trace Invocations in Workato (10 min)
Now follow one of those tool calls from the Workato side to see the full execution trace.
3.1 Find Your Recipe
- In Workato, navigate to orchestrator-recipes
- Click on the recipe that matches one of your recent tool calls (e.g.,
check_in_guest)
3.2 Open a Job
- Click the Jobs tab
- You should see recent executions — each one corresponds to a tool call from your chat session
- Click on the most recent job
3.3 Read the Execution Log
Each job shows a step-by-step execution trace:
- Trigger — The API request from the MCP server, including the full input payload
- Action steps — Each atomic recipe call, with its own input and output
- Conditionals — Validation checks (did the guest exist? was the room vacant?)
- Response — The final payload returned to the MCP tool caller
Click on any step to expand it and see:
- Input — What was passed to this step
- Output — What it returned
- Duration — How long this step took
3.4 Trace an Atomic Call
From within the orchestrator job, click on one of the atomic recipe calls (e.g., “Search Contact by Email”). This opens the atomic recipe’s own job, showing:
- The exact SOQL query or DML operation sent to Salesforce
- The Salesforce response
- Timing for the Salesforce API call
This is the full chain: Chat → MCP → Orchestrator → Atomic → Salesforce → back up the stack.
3.5 Trigger an Error
Go back to the chat and intentionally cause a failure:
Check in guest with email nonexistent@example.com
Then find the failed job in Workato:
- The job will show a failed status
- Expand the failing step to see the error code and message
- Notice how the orchestrator returns a structured error (e.g.,
404: guest not found) rather than crashing
This is how you’d diagnose production issues — the logs capture every input, output, and failure at every layer.
CHECKPOINT: Traced a tool call end-to-end in Workato, including a failure case
3.6 (Optional) Verify in Salesforce
See the results of your tool calls in Salesforce itself:
- Open your Salesforce org (
sf org open --target-org myDevOrg) - Use Global Search to find the guest contact you created (search by email)
- On the Contact record, scroll to the Opportunities related list
- Click into an Opportunity — the Booking record is linked here
Tip: Start from the Contact record and explore the related lists — bookings are easiest to find from there.
What You Learned
- Recipe organization: Atomic recipes handle single operations; orchestrators compose them into validated workflows
- MCP tool mapping: Each tool the LLM calls maps to one orchestrator, which calls multiple atomics
- Debug panel: Client-side visibility into what the LLM is doing and what tools it invokes
- Workato execution logs: Server-side visibility into every step, payload, and timing of each invocation
- Error tracing: Failed jobs capture the exact step, error code, and context for diagnosis
Troubleshooting
| Issue | Solution |
|---|---|
| No jobs appearing in recipe | Verify the recipe is running (green status); check that MCP server URLs in app/.env match |
| Job shows “Connection error” | Re-authenticate the Salesforce connection in Workspace Connections |
| Can’t expand job steps | Click the step name, not the status icon |
| Debug panel not updating | Hard refresh the browser (Cmd+Shift+R / Ctrl+Shift+R) |
| Tool call succeeds but no Workato job | The call may have hit a different recipe — check the tool name in the debug panel |
Facilitator Notes
Before this unit:
- Verify your own Workato workspace has recent jobs visible (run a few chat interactions beforehand)
- Have a job pre-loaded on your screen to walk through if attendees need a guided example
Pacing guidance:
- Part 1 works best as a facilitator-led walkthrough — open the recipes on your shared screen while attendees follow along in their own workspaces
- Parts 2 and 3 are self-paced. Circulate and help attendees find their first job in Workato — that’s the main sticking point
Common issues:
- Attendees looking in the wrong folder for recipes (atomic vs orchestrator)
- Jobs tab empty because recipe was restarted recently — previous jobs are cleared on restart
- Confusion between the recipe detail view and the job detail view
If an attendee’s Workato has no jobs:
- Have them trigger a fresh tool call from chat, then immediately check the Jobs tab
- If still empty, verify the recipe status is “Running” and the MCP URLs are correct