Skip to main content
Glama
chrischall

workday-mcp

by chrischall

Open a Workday app by name

workday_open_app
Read-onlyIdempotent

Open a named Workday app and follow its child cards to retrieve the actual content, including tasks, pay, benefits, and compensation data, without needing task IDs.

Instructions

Open one of your Workday apps by name — "My Team Management", "Talent and Performance", "Time", "Absence", "Benefits and Pay", "Org Chart", "Total Rewards" — and read it, following the app down to the child cards that hold its real content. Most Workday app hubs return a near-empty shell on their own; this follows the links for you. Matched case-insensitively against your own app menu, so it works without knowing any task ids. Read-only.

Input Schema

TableJSON Schema
NameRequiredDescriptionDefault
appYesApp name or a distinctive part of it, e.g. `talent` or `my team`.
viewNoResponse shape: "compact" (default) drops fields the response already carries elsewhere; "full" returns every field this server understands. compact strips image/avatar URLs from the response; "full" returns Workday's payload untouched. No field projection: this server has no verified record of which Workday fields matter, and inventing one would risk dropping a field a caller needs.
depthNoLevels of child cards to follow (default 1, 0 = the hub page only).
maxCardsNoCap on child cards fetched (default 12). Each is a real browser fetch.

Schema Changelog

Changes observed during successful MCP inspections.

  1. Changed1 schema field changedv0.6.2
    • addedInput schema / properties / view
      Added value: +{
      +  "description": "Response shape: \"compact\" (default) drops fields the response already carries elsewhere; \"full\" returns every field this server understands. compact strips image/avatar URLs from the response; \"full\" returns Workday's payload untouched. No field projection: this server has no verified record of which Workday fields matter, and inventing one would risk dropping a field a caller needs.",
      +  "enum": [
      +    "compact",
      +    "full"
      +  ],
      +  "type": "string"
      +}
  2. Addedv0.4.0

TDQS

A4.2/5.0
Behavior4/5

Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?

Annotations already declare readOnlyHint, openWorldHint, and idempotentHint; the description adds beyond this by explaining that it follows child cards, matches case-insensitively, and requires no task ids. It also confirms read-only alignment with annotations. No contradictions; adds meaningful behavioral detail.

Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.

Conciseness5/5

Is the description appropriately sized, front-loaded, and free of redundancy?

The description is two sentences long, front-loaded with the purpose and concrete examples, then the key behavioral note. Every word earns its place; no fluff or redundancy. Highly concise and well-structured.

Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.

Completeness4/5

Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?

Given the tool has 4 params (1 required), no output schema, and annotations covering safety, the description gives sufficient context: what it does, how it behaves (following links), and parameter hints. It doesn't mention response size or pagination, but those aren't critical for a read-only tool. Slightly more could be said about potential large responses, but it's complete enough.

Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.

Parameters3/5

Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?

The input schema covers all 4 parameters with detailed descriptions (100% coverage), so the description doesn't need to compensate. It adds minor value (e.g., mentioning case-insensitive matching in the description) but the schema already handles parameter meaning effectively. Baseline 3 is appropriate given high schema coverage.

Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.

Purpose5/5

Does the description clearly state what the tool does and how it differs from similar tools?

The description clearly states the verb 'open' and resource 'Workday apps', with concrete examples ('My Team Management', 'Time', etc.) and the key behavior of following child cards. It distinguishes itself from siblings like workday_get_apps by emphasizing it works without task ids and follows links, making the purpose unambiguous.

Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.

Usage Guidelines4/5

Does the description explain when to use this tool, when not to, or what alternatives exist?

Provides clear usage context: most app hubs return empty shells, so this tool follows links to get the real content. This implies the right scenario for use, but it doesn't explicitly state when not to use it or mention alternatives like workday_fetch. A solid but not exhaustive guidance.

Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.