Skip to main content
Glama
ODATANO

@odatano/nightgate-mcp

Official
by ODATANO

my_swap_offers

Lists the swap offers you posted, showing open, filled, expired, and retired states with status and since filters; optionally wait for changes.

Instructions

The offers this caller posted on the board (a token: its grant's), open and closed, ordered by last change: what is still open, what filled (filledTxHash), what expired or was retired. status narrows to one state, since to offers changed after an instant, waitMs holds an empty answer until one of them changes. Each row: offerId, the offer half (feed it to read_swap_offer or take_swap_offer), gives/wants type and amount, tags, expiresAt, postedAt, status, filledTxHash, closedAt, changedAt. Never the poster or the half's nullifiers.

Input Schema

NameRequiredDescriptionDefault
limitNoDefault 50
sinceNoISO timestamp; only offers changed after it
statusNoDefault all
waitMsNoHold the call while nothing matches, up to this many ms (at most 25000); needs NIGHTGATE 0.38.0

Schema Changelog

Changes observed during successful MCP inspections.

  1. Addedv0.18.3

TDQS

A4.1/5.0
Behavior4/5

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

With no annotations, the description carries the burden and discloses ordering by last change, open/closed states, since filtering, waitMs waiting behavior, returned row fields, and exclusions. It does not explicitly state read-only status or auth requirements beyond the caller/grant scope, but it provides strong operational context.

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 core purpose and scope are front-loaded, and most sentences carry useful detail. It is dense and somewhat run-on, but appropriately sized for the tool's complexity.

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?

There is no output schema and no annotations, so the description must explain behavior and returns; it does both by listing the row fields, ordering, filtering, wait semantics, and exclusions. An agent has enough information to call it correctly.

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%, so the baseline is 3, but the description adds useful semantics for status, since, and waitMs beyond the schema. It does not add meaning for limit, which is documented only by the schema.

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

Purpose4/5

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

States a specific verb+resource: it lists offers this caller posted on the board, with open/closed scope and ordering. It is clear, though it does not explicitly distinguish itself from the sibling list_swap_offers.

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 caller-scoped context is clear, and it tells the agent to feed each row's offer half into read_swap_offer or take_swap_offer. It does not explicitly name when to use list_swap_offers instead, but the usage context is well established.

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