Skip to main content
Glama

AFOS — Agentic Financial OS

deal_propose_terms

Overwrites the current term sheet with new terms — a counter-offer. Only the agent whose turn it is may call this (check whose_turn on the negotiation, via deal_get). This flips whose turn it becomes next. Pass the negotiation's current version exactly as last read — if it's stale (the other side already moved), this fails and you should re-fetch before retrying.

Input Schema

TableJSON Schema
NameRequiredDescriptionDefault
taskYes
priceYes
versionYesThe negotiation's current version, as last read.
deadlineNo
deliverableNo
negotiation_idYes
acceptance_criteriaNo

TDQS

A4.4/5.0
Behavior5/5

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

With no annotations, the description carries full behavioral disclosure. It states the destructive overwrite, the turn-flipping side effect, and the failure mode when the version is stale, along with the recommended re-fetch retry. This is rich, non-obvious behavior.

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?

Three sentences, each earning its place: purpose, turn restriction, and version-concurrency handling. No filler, front-loaded with the primary action.

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?

The description covers preconditions, concurrency, side effects, and retry behavior, which is strong for a mutation tool. However, with no output schema and no annotations, it omits what the caller should expect in response (e.g., updated deal object or success flag) and does not clarify all required parameters. Still, it provides enough to invoke the tool correctly in most cases.

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

Parameters2/5

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

Schema coverage is only 14% (only 'version' has a description). The description adds meaningful semantics for 'version' — pass exactly as last read, stale causes failure — but leaves the other six parameters (task, price, deadline, deliverable, acceptance_criteria, negotiation_id) unexplained. Param names are self-evident, but with 7 params and 4 required, more guidance is needed.

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 verb and resource: 'Overwrites the current term sheet' and immediately identifies the tool as a 'counter-offer'. This clearly distinguishes it from siblings like deal_accept_terms, deal_cancel, and deal_open.

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?

It explicitly states when this tool may be used ('Only the agent whose turn it is'), directs the agent to check whose_turn via deal_get, and provides a clear precondition-and-retry pattern for stale versions. This is actionable guidance beyond what the schema offers.

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

Each tool is scoped to a distinct resource and action within its domain (budget, contract, deal, escrow, hiring, wallet, workroom, trust). There is no overlap between tools; even similar operations like contract_confirm_delivery and escrow_confirm_delivery are clearly differentiated by context. A model can reliably select the correct tool for a given task.

Naming Consistency5/5

Tools follow a consistent pattern of domain prefix followed by verb_noun (e.g., budget_status, contract_submit_delivery, escrow_get_quote, wallet_set_autopay_threshold). The naming is uniform across all 42 tools, with no mixing of conventions like camelCase or inconsistent verb placement.

Tool Count2/5

With 42 tools, the server is heavily overloaded. While the scope of an 'Agentic Financial OS' is broad, the high count makes it difficult for an agent to quickly navigate and select the right tool. Many tools could be consolidated (e.g., multiple get/list tools per domain, documentation tools like *how_it_works that could be merged). The count exceeds the recommended range and feels excessive.

Completeness5/5

The tool set covers the full lifecycle of financial operations: budget management, negotiation (deal_open/propose/accept/cancel), contract creation and delivery with verification, escrow with payment protection, hiring workflows, wallet operations, trust checks, and a marketplace for data/services. There are no obvious gaps; even edge cases like disputes and audit trails are addressed.

Resources