Skip to main content
Glama

units.fx_convert

Read-onlyIdempotent

Convert a monetary amount from one currency to another using a supplied exchange rate, applying target-currency rounding and returning the converted amount and currency code.

Instructions

amount * rate 를 to_ccy 의 소수 자릿수로 반올림해 amount(문자열)와 currency 를 반환한다. 자릿수는 JPY, KRW 등 0, USD 등 2, KWD 등 3 이고 표에 없는 통화는 2 이다. rounding 은 HALF_EVEN(기본), HALF_UP, DOWN, UP, FLOOR, CEIL. rate 는 from_ccy 에서 to_ccy 방향의 양수이며 환율을 조회하지는 않는다.

Input Schema

NameRequiredDescriptionDefault
rateYes
amountYes
to_ccyYes
from_ccyYes
roundingNoHALF_EVEN

Output Schema

NameRequiredDescriptionDefault
_metaNo서버가 붙이는 영수증(integrity), 엔진, 힌트
traceYes계산 근거(tool, formula, inputs, steps, output)
amountYes
currencyYes

Schema Changelog

Changes observed during successful MCP inspections.

  1. First observedv0.3.0

TDQS

A3.8/5.0
Behavior4/5

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

Annotations already declare readOnly/idempotent/closed-world, and the description adds genuinely non-obvious behavior: the half-even default rounding mode, the full alternate-rounding list, the per-currency decimal table (JPY/KRW=0, USD=2, KWD=3, others=2), and that rate is a positive from→to directional value with no lookup. It stops short of stating error conditions (e.g. non-positive rate, unknown currency handling), so not a 5.

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?

Four tight sentences with the computation and return shape front-loaded, followed by precision rules, rounding options, and the rate caveat. Dense but every sentence carries information; nothing is filler.

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

Completeness4/5

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

For a pure-function tool with an output schema and safety annotations, this covers the semantics an agent needs: what is computed, how it is rounded, what precision applies, and that no rate lookup happens. Only the absence of sibling routing and error-case notes keeps it from full marks.

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 0% and there are no enums, so the description carries the full burden, and it largely does: rounding's six legal values plus default, rate's direction and positivity, to_ccy's role in determining precision, and amount's string output form. The one gap is the expected string format/precision of the input amount.

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?

The first sentence gives a specific verb-chain and output: multiply amount by rate, round to to_ccy's minor units, return an amount string plus currency. It is unmistakably a currency conversion, but it never distinguishes itself from sibling units.convert or units.fx_triangulate, which an agent could easily confuse it with.

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

Usage Guidelines3/5

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

The closing clause 'rate 는 ... 환율을 조회하지는 않는다' usefully tells the agent it must supply its own rate rather than expecting a lookup, which implies usage context. However, there is no explicit statement of when to pick this over units.convert or units.fx_triangulate, so routing is left to inference.

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

Deploy Server

Other Tools