Skip to main content
Glama
david-rodrig

SuccessFactors MCP Server

by david-rodrig

get_complete_employee_data

Retrieve complete employee data from SAP SuccessFactors, including manager, HR, employment info, and all navigation properties, using a user ID, employee ID, or email.

Instructions

Retrieve complete employee data with all fields and navigation properties (personKeyNav, manager, hr, empInfo, etc.). Returns the full OData entry as returned by SuccessFactors API, similar to fetching User('empId') with all expansions.

Input Schema

TableJSON Schema
NameRequiredDescriptionDefault
formatNoResponse format: "json" (default) or "xml"json
userIdYesUser ID (USERID), Employee ID (EMPID), or Email address
expandPropertiesNoOptional: List of navigation properties to expand (e.g., ["personKeyNav", "manager", "hr", "empInfo"]). If not provided, will attempt to get common navigation properties.

Schema Changelog

Changes observed during successful MCP inspections.

  1. First observedv1.0.0

TDQS

A3.6/5.0
Behavior3/5

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

With no annotations, the description carries the safety/disclosure burden. It discloses the return shape (full OData entry, all fields/navigation properties) and the fetch behavior, which is useful. However, it does not state permissions/auth requirements, error behavior, or any performance caveats for a complete-data fetch.

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?

Two tight sentences; the first delivers the function and scope, the second gives an implementation analogy. No filler or repeated structured data.

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 no output schema, the description adequately describes the return value and what 'complete' means. It could be more complete with permission/error context and an explicit pointer to lighter-weight sibling tools, but for calling the tool the essentials are present.

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?

Schema coverage is 100%, so the baseline is 3; the tool description adds essentially no parameter-level detail beyond the schema. The 'all expansions' phrase slightly clarifies expandProperties, but userId, format, and expandProperties are already fully documented in the schema.

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?

Description uses a specific verb ('Retrieve') and a precise resource ('complete employee data'), enumerates the relevant navigation properties, and anchors the behavior to an OData User('empId') fetch with all expansions. This clearly distinguishes it from siblings like get_manager_hr or get_user_data, even though those tools are not named.

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

Usage Guidelines2/5

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

No explicit when/when-not guidance or named alternatives are provided. The description implies that this is the tool for complete data, but it does not explain when to prefer get_user_data or get_manager_hr for narrower requests. Sibling tool names exist, so this is a missed opportunity.

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