Skip to main content
Glama

SNHP — free negotiation math + agent memory

Session move — multi-issue bundle

session_bundle

Multi-issue logrolled advice inside a receipted session — no additional charge.

The logrolling tier, the thing the free tool does NOT have. Trade the issues you care less about for the ones you value: issues = [{name, options, my_utility (per option), their_utility (your read of their direction)}]; their_offers = packages they've tabled, oldest first. Returns the recommended package, trade logic, inferred counterparty priorities, acceptance probability, and the receipt. Deterministic closed form — no rollout theater. The package is guaranteed to clear YOUR stated BATNA (enforced, not promised).

Input Schema

TableJSON Schema
NameRequiredDescriptionDefault
issuesYesOne dict per issue: {name, options, my_utility (per option), their_utility (your read of their direction)}.
api_keyYesThe API key that opened the session.
my_batnaNoYour BATNA as a utility fraction in [0,1] (default 0.40); the package is guaranteed to clear it.
session_idYesThe session_id returned by session_open.
cooperationNoOptional cooperation dial in [0,1] biasing toward joint surplus.
their_offersNoPackages they've tabled, oldest first, each {issue_name: option} (optional).
my_prioritiesNo{issue_name: weight} — how much each issue matters to you (optional).
their_batna_estimateNoYour estimate of their BATNA, [0,1] (default 0.40).

Output Schema

TableJSON Schema
NameRequiredDescriptionDefault
whyNo
moveNo
errorNo
messageNo
packageNo
receiptNo
move_indexNo
context_hashNo
confidence_noteNo
acceptance_probabilityNo
their_expected_utilityNo

TDQS

A4.6/5.0
Behavior5/5

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

The description discloses critical behaviors: deterministic closed-form (no rollout), BATNA enforcement, and return components (package, logic, priorities, probability, receipt). This adds significant value beyond annotations that only indicate readOnlyHint=false.

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 front-loaded with purpose and uses clear line breaks for key aspects. It is efficient but slightly wordy, with every sentence contributing meaning.

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?

Given 8 parameters, 3 required, and an output schema, the description covers input semantics, behavior, and return values comprehensively, leaving no significant gaps.

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 baseline is 3. The description adds meaning by explaining the structure of 'issues' (name, options, utilities) and 'their_offers' (packages), going beyond the schema's brief descriptions.

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 clearly states the tool provides 'multi-issue logrolled advice' for trading issues in a session, distinguishing itself from siblings by noting it's the premium logrolling tier that the free tool lacks. The verb 'trade' and resource 'issues' are specific.

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 description implies this tool is for premium logrolling when simpler negotiation won't suffice, contrasting with the free tool. It provides context on issue trading but lacks explicit 'when not to use' or alternative tools.

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
Disambiguation4/5

Most tools have distinct purposes (e.g., auctions, negotiation, pricing, matching, memory). However, negotiate/session_advise and negotiate_bundle/session_bundle overlap in functionality, differing only in payment tier, which could cause confusion.

Naming Consistency4/5

Tool names generally follow a verb_noun pattern in snake_case. 'negotiate' is a lone verb without a noun, but overall the convention is consistent and predictable.

Tool Count4/5

15 tools cover a broad domain of negotiation, auctions, pricing, matching, and memory. While slightly on the higher side, each tool serves a clear purpose and the count is reasonable for the scope.

Completeness4/5

The tool surface covers key negotiation scenarios (single/multi-issue, free/paid, auctions, clearance pricing, stable matching) and adds memory persistence. Minor gap: no explicit tool for managing user preferences or profiles.