Skip to main content
Glama

Moxlade — Upwork buyer intelligence

What your agent has called

get_activity
Read-onlyIdempotent

What this token has called, newest first — the log of your own use.

Every call is recorded: the tool, the arguments you sent, how long it took, whether it succeeded, and the refusal text when it did not. Refusals are the useful half — "why did my agent stop" is the question a log exists to answer, and a cap being hit looks identical to a broken tool without it.

Use it to see what your agent actually did, to find the call that failed, or to check how much of today's caps you have spent (get_plan gives the caps themselves).

SCOPE IS THE ACCOUNT, NOT THE TOKEN. It returns every call made under your account — across a re-mint, and across both ways in, since a pasted token and an OAuth login resolve to one account. So a token minted a minute ago still shows the history that came before it: replacing a token you lost must not erase what you did with the old one. There is no argument that widens it beyond your own account, and none that narrows it to a single credential. (The exception is a hand-minted token from before self-serve, which carries no account and therefore sees only itself.)

limit is 1-500, newest first. Read-only, and unmetered against your corpus allowance — auditing your own use should never cost you a question.

Input Schema

TableJSON Schema
NameRequiredDescriptionDefault
limitNocalls to return, 1-500, newest first

Output Schema

TableJSON Schema
NameRequiredDescriptionDefault
callsNoNewest first, across re-mints and across both ways in.
countNoHow many were returned. This is the size of `calls` after `limit`, NOT your lifetime total.
scopeNoWhat the log covers, said plainly — the ACCOUNT, not the credential. Never null; read it before concluding a call is missing, because a call made under a token you have since replaced still appears here.
succeededNoHow many of the returned calls answered. Never null: a log with no successes reports 0.
refused_or_failedNocount - succeeded. A refusal is counted here, so a run of these is the thing to read when an agent looks stuck.

Schema Changelog

Changes observed during successful MCP inspections. Dates show when Glama detected each change.

  1. First observed

TDQS

A4.8/5.0
Behavior5/5

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

While annotations already declare read-only and idempotent hints, the description adds substantial behavioral context: calls are account-scoped across token remints and OAuth, refusals are included, and the tool is unmetered. This goes far beyond the annotations and clarifies edge cases.

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 long, but nearly every sentence carries unique operational value: scope, refusal logging, cap-checking, and the hand-minted exception. It is slightly verbose and repeats the scope point more than once, but it is well-organized and front-loaded with the core purpose.

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?

For a simple one-parameter read-only tool with an output schema, the description covers everything an agent needs: what it returns, when to use it, how scope behaves, edge cases, and metering implications. No critical context is missing.

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

Parameters4/5

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

Schema coverage is 100% for the single limit parameter, so the baseline is 3. The description adds extra meaning by stating there is no argument that can narrow or widen the account scope, and by explaining the limit range in operational terms. This is more than just repeating schema metadata.

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 opens with a specific statement—'the log of your own use'—and explains exactly what is recorded: tool, arguments, duration, success, and refusal text. It clearly differentiates itself from siblings by emphasizing account-wide scope rather than per-token or per-job data.

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?

Explicitly tells the agent when to use the tool: to see what the agent did, find failed calls, or check cap spending. It also names the sibling alternative, get_plan, for retrieving the caps themselves, giving clear routing guidance.

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.6/5.0
Disambiguation5/5

Each tool maps to a distinct resource or action: search, filter validation, saved-search management, buyer lookup, buyer quality, job scoring, market rates, and account/plan introspection. The get_* tools are cleanly separated by complements such as get_job vs get_job_score and get_buyer vs get_buyer_quality, so an agent should not struggle to pick the right one.

Naming Consistency5/5

All tool names consistently use snake_case verb_noun or verb_adjective_noun patterns, such as search_jobs, check_prefilter, delete_saved_search, and get_buyer_quality. There are no camelCase names, vague verb-only names, or mixed conventions.

Tool Count5/5

At 15 tools, the server sits exactly within the ideal range and each tool earns its place in the workflow. The set covers discovery, enrichment, saved-search lifecycle, and account introspection without obvious redundancy.

Completeness4/5

The core workflow is well covered: search, prefilter validation, job detail, scoring, buyer identity, payment quality, saved-search create/list/delete, and plan/activity visibility. The main gap is the lack of an update operation for an existing saved search, such as changing its filter or attaching a webhook later; this is a minor workaround rather than a blocking dead end.

Resources