Skip to main content
Glama

Moxlade — Upwork buyer intelligence

Your plan, caps and usage

get_plan
Read-onlyIdempotent

What this token is allowed to do right now, and what it costs.

Call it when another tool refuses, when you want to know how long a trial has left, or before telling a person they need to pay. It takes no arguments — it describes the token you are already authenticated with.

Returns the plan, its state (trial / active / expired), the flat monthly price, whether saved searches are currently matching, the subscribe and cancel links, and usage — today's call count against the daily cap, today's distinct corpus questions against theirs, and when both reset. Read usage before a long paging walk: every page is one call.

trial_ends_at is a date only while the state IS trial, and null otherwise. A paid plan keeps the date internally so that cancelling inside the original window falls back to the trial, but showing it on an active subscription made the plan look like it was expiring.

Readable on every plan state including expired, deliberately: someone deciding whether to pay has to be able to see what they had.

Input Schema

TableJSON Schema
NameRequiredDescriptionDefault

No arguments

Output Schema

TableJSON Schema
NameRequiredDescriptionDefault
planNoThe plan on this account.
labelNoThe token's label, which carries the source it was minted from. Null for a token minted by hand before self-serve. A null label means the source is unknown, not that the signup was direct.
stateNotrial | active | expired. This is what the corpus tools gate on.
usageNoToday's counters. NULL when they could not be read — never zeros, which a caller would budget against.
billingNoHow billing works, in one sentence.
subscribeNoWhere to start paying, when a link is configured.
trial_ends_atNoISO 8601 while the state IS trial, and null otherwise. A paid plan keeps the date internally but does not report it.
saved_searchesNoWhether saved searches are currently matching or paused.
price_usd_monthNoThe flat monthly price. No credits and no per-call fee.
manage_or_cancelNoWhere to change or cancel the subscription.

TDQS

A5/5.0
Behavior5/5

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

Annotations already declare readOnlyHint and idempotentHint, which the description complements rather than repeats. It adds valuable behavioral details: `trial_ends_at` is null for non-trial states, the deliberate readability on expired plans, and the internal retention of the trial date for cancellation fallback. These explain non-obvious behaviors beyond the schema.

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 front-loaded with the core purpose, then moves to usage guidance, then details the output fields and tricky behaviors. Each sentence contributes a new fact, and the paragraph on `trial_ends_at` justifies an intentional design choice. No fluff or repetition of schema data.

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

Completeness5/5

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

Despite having an output schema, the description further elaborates on the return semantics: plan state options, daily call count and reset times, and the conditional `trial_ends_at`. It covers edge cases like expired plans and explains why fields are null. For a zero-input tool with rich output, this is comprehensive and leaves no practical question unanswered.

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

Parameters5/5

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

With zero parameters, the schema leaves nothing to document. The description explicitly states 'It takes no arguments' and clarifies what the tool operates on ('the token you are already authenticated with'), which is more than sufficient for the baseline of 4, earning a 5 for clarity.

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 opening line states exactly what the tool does: 'What this token is allowed to do right now, and what it costs.' It clearly identifies the resource (the authenticated token's plan and usage) and distinguishes itself from siblings like get_activity or search_jobs by focusing on plan state and cost, which are unique.

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

Usage Guidelines5/5

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

The description gives explicit trigger conditions: 'Call it when another tool refuses, when you want to know how long a trial has left, or before telling a person they need to pay.' It also provides a practical caution: 'Read `usage` before a long paging walk: every page is one call.' No alternatives are needed because no sibling covers plan details, and the 'takes no arguments' note removes ambiguity.

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

A4.8/5.0
Disambiguation5/5

Each tool serves a distinct, well-scoped function with no overlap. Even related tools like get_buyer and get_buyer_quality are clearly separated by their purposes and descriptions.

Naming Consistency5/5

All tool names follow a consistent verb_noun pattern using clear, descriptive verbs (check, delete, describe, get, list, save, search, rate). No mixed cases or conventions.

Tool Count5/5

15 tools is appropriate for the server's purpose, covering search, filtering, saved searches, buyer intelligence, job details, rate benchmarks, skill demand, and plan management without being excessive.

Completeness5/5

The set covers all core operations for Upwork buyer intelligence: searching, validating filters, saving searches, buyer analysis, job scoring, rate benchmarks, skill demand, and plan management. No significant gaps are apparent.

Resources