Skip to main content
Glama

Create or update your worker profile

upsert_worker_profile

Idempotent create-or-update for the calling account's worker profile. Opt in to the marketplace by setting bio + specialties; opt out by setting isActive=false on every offering. External workers settle in credits/USD; in-house workers (TMV staff doing premium checks) are paid through ShiftSee payroll and require shiftseeUserId.

Input Schema

TableJSON Schema
NameRequiredDescriptionDefault
bioNoWorker bio shown on the marketplace menu.
languagesNoISO-639 codes you can test in. Customers filter on this.
specialtiesNoTags like 'payments', 'i18n-spanish', 'react-spa' that route customer searches to you.
employmentTypeNo'external' = pay via credits/Stripe Connect. 'in_house' = TMV staff paid via ShiftSee payroll (requires shiftseeUserId).external
qualificationsNoVerified badges — admin-curated; treated as free-form strings on input.
shiftseeUserIdNoRequired when employmentType='in_house'. Maps to your ShiftSee user id for payroll routing.
defaultPayoutModeNoExternal workers only. Default routing for cleared earnings — credit (TMV-internal) or usd (Stripe Connect).

Output Schema

TableJSON Schema
NameRequiredDescriptionDefault
resultNoTool result payload (JSON object)

TDQS

A3.8/5.0
Behavior3/5

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

The description adds context beyond annotations by stating idempotency (though contradictory to idempotentHint=false) and explaining opt-in/out behavior. It also clarifies payment modes. However, the contradiction with annotations reduces trust. Without the contradiction, transparency would be higher.

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

Conciseness4/5

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

The description is two sentences, front-loading the main purpose and then adding key behavioral details. It is efficient with no wasted words. The slight loss due to the idempotency contradiction is captured in behavioral transparency.

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

Completeness3/5

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

Given 7 parameters with full schema descriptions and an output schema, the description covers key use cases and distinctions. However, it lacks details on error handling, rate limits, or required conditions for in_house type. The contradiction with idempotentHint further reduces completeness.

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?

All 7 parameters have descriptions in the schema (100% coverage). The top-level description reinforces key parameters (bio, specialties, shiftseeUserId) but doesn't add significantly new information. The baseline of 3 is appropriate as the description complements the schema without redundancy.

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 tool name 'upsert_worker_profile' and title 'Create or update your worker profile' clearly indicate the action and resource. The description specifies it's for the calling account's worker profile, distinguishing it from sibling tools like 'create_worker_offering'. The purpose is unambiguous and specific.

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?

The description provides clear context on when to use (to create/update profile, opt in/out of marketplace) and distinguishes between external and in-house workers, including the requirement for shiftseeUserId. It does not explicitly mention alternatives or when not to use, but the guidance is adequate for most scenarios.

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

Try in Browser

Glama MCP Gateway

Add one secure layer between your agents and this server.

TDQS

A3.9/5.0
Disambiguation4/5

The tools cover a wide range of functionalities, but each has a clearly distinct purpose. For example, submit_test, submit_test_batch, submit_combo, and submit_interaction_scene are all different types of submissions with unique parameters. However, the sheer number of tools (43) might cause some initial confusion, but descriptors resolve ambiguity.

Naming Consistency5/5

All tool names follow a consistent verb_noun pattern in snake_case (e.g., list_projects, create_project, get_test_results). The only exception is 'whoami', which is a common idiom and does not break the pattern. Overall, naming is highly predictable.

Tool Count3/5

43 tools is on the high side for a single server. The domain is broad (testing, worker marketplace, credits, cards, feedback, video), so the count is justifiable. However, it borders on being overwhelming, and some tools could be consolidated (e.g., multiple submit_* variants).

Completeness3/5

The tool surface covers core workflows like project creation, test submission, result retrieval, worker management, and credit operations. However, there are gaps: no update or delete for projects, no delete for worker offerings, and no user-facing combo editing (though combos are predefined). These are minor but noticeable.

Resources