Skip to main content
Glama

SwapEazi

Connect your own rail account

connect_rail_account

Keyed. Connects the business's OWN account at a rail (yellowcard) for reads and sandbox sending; production sending is off unless the deployment enables it, and the default flow is that the business releases payments itself in its own portal with its API key and secret and a required cap per payment. The credentials are proven with a read (no payment is sent), encrypted at rest and never returned: answers show the key's last four characters and the created date. Prefer POST /api/v1/rail-connections from your own software: credentials passed here travel through the agent's context. SwapEazi holds no funds and has no account in the flow.

Input Schema

NameRequiredDescriptionDefault
envNosandbox (default) or production; production sending stays off unless the deployment enables it.
railYesThe rail: yellowcard.
labelNoOptional. Your name for this connection, up to 80 characters.
secretYesYour API secret at the rail. Encrypted at rest; never shown.
senderNoOptional. The sending business as the rail needs it: { name, country, phone, address, email, idType, idNumber, businessId, businessName }.
api_keyYesYour API key at the rail. Encrypted at rest; only its last four characters are ever shown.
access_keyNoA router key (rk_...), if not sent as a Bearer header.
cap_per_paymentYesRequired. The most any one payment through this connection may be: { value, currency }; a payment in another currency is refused.

Schema Changelog

Changes observed during successful MCP inspections.

  1. Changed10 schema fields changed
    • addedInput schema / properties / access_key / description
      Added value: +"A router key (rk_...), if not sent as a Bearer header."
    • addedInput schema / properties / api_key / description
      Added value: +"Your API key at the rail. Encrypted at rest; only its last four characters are ever shown."
    • addedInput schema / properties / cap_per_payment / description
      Added value: +"Required. The most any one payment through this connection may be: { value, currency }; a payment in another currency is refused."
    • addedInput schema / properties / cap_per_payment / properties / currency / description
      Added value: +"ISO 4217 code of the cap, e.g. 'USD'."
    • addedInput schema / properties / cap_per_payment / properties / value / description
      Added value: +"The cap, in cap_per_payment.currency, greater than 0 and at most 10,000,000."
    • addedInput schema / properties / env / description
      Added value: +"sandbox (default) or production; production sending stays off unless the deployment enables it."
    • addedInput schema / properties / label / description
      Added value: +"Optional. Your name for this connection, up to 80 characters."
    • addedInput schema / properties / rail / description
      Added value: +"The rail: yellowcard."
    • addedInput schema / properties / secret / description
      Added value: +"Your API secret at the rail. Encrypted at rest; never shown."
    • addedInput schema / properties / sender / description
      Added value: +"Optional. The sending business as the rail needs it: { name, country, phone, address, email, idType, idNumber, businessId, businessName }."
  2. First observed

TDQS

A4.3/5.0
Behavior5/5

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

Far exceeds the annotations: production sending is off unless the deployment enables it, credentials are validated with a read so no payment is sent, encrypted at rest and never returned, only the last four characters and creation date surface, a per-payment cap is enforced, and SwapEazi holds no funds. These are the operational facts an agent needs before handling secrets, none of which are inferable from readOnlyHint/destructiveHint/idempotentHint.

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

Conciseness3/5

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

The opening fragment 'Keyed.' is unexplained jargon and the second sentence is a ~60-word run-on chaining several distinct facts with commas and semicolons. The most important constraint (credentials travel through agent context, prefer the API) is buried at the end rather than front-loaded. Nothing is outright wasted, but the structure fights readability.

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 an 8-parameter write tool with nested objects and no output schema, the description covers what is created, what is stored and returned (last four characters and created date), what is gated (production sending), and what limit is enforced (cap per payment). An agent has enough to invoke it without guessing at semantics.

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 description coverage is 100%, so the schema already carries the parameter burden and a 3 is the baseline. The description adds marginal context (that the cap per payment is required, that credentials are stored encrypted), but most of this restates what the field descriptions already say, and it does not explain env defaulting or the sender/access_key fields mentioned in 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 and resource: 'Connects the business's OWN account at a rail (yellowcard) for reads and sandbox sending.' The scope qualifier 'OWN' and the read/sandbox/production split make the action unambiguous. It never names the adjacent sibling tools (list_rail_accounts, remove_rail_account), so sibling differentiation is left implicit rather than explicit.

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 routes the agent away when appropriate: 'Prefer POST /api/v1/rail-connections from your own software: credentials passed here travel through the agent's context.' That is a named alternative plus the condition that selects it, with a stated reason. It also describes the default operating flow (business releases payments itself in its own portal), which tells an agent when this connection is the right configuration.

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.

Resources