Skip to main content
Glama

RBSHome

Draft an offer letter

draft_offer_letter
Read-onlyIdempotent

Use when someone asks to write or draft an offer letter for a property. Takes a Dallas County or Collin County, Texas address (or a lead_id) and an offer price, with optional earnest money, inspection and closing days, expiry, buyer name and title company, and returns the text of a one-page, non-binding letter of intent addressed to the owner of record, plus a link to the property in RBSHome, where the PDF is made by re-entering the price and terms on the Offer tab. Nothing is sent or stored. Use analyze_deal first for a price. Counts as a property lookup. Read-only.

Input Schema

NameRequiredDescriptionDefault
addressNoStreet address in Dallas or Collin County, Texas, e.g. '1234 Elm St, Plano TX 75023'
lead_idNoRBSHome lead ID like 'Collin:2771234', when already known (skips the address lookup)
assignableNoBuyer may assign the contract (default true)
buyer_nameNoBuyer or company name for the signature block
buyer_phoneNoBuyer phone for the letter
expiry_daysNoDays the offer stays open, default 7
offer_priceYesOffer price in dollars, e.g. 72000 (analyze_deal gives an MAO)
closing_daysNoDays to close, default 30
earnest_moneyNoEarnest money, default 1000
title_companyNoTitle company; default: one chosen by the buyer
inspection_daysNoInspection period in days, default 14

Output Schema

NameRequiredDescriptionDefault
pdfYes
refYes
urlYes
notesYes
lead_idYes
data_as_ofYes
disclaimerYes
expiry_dateYes
letter_dateYes
letter_textYes
offer_priceYes
matched_addressYes

Schema Changelog

Changes observed during successful MCP inspections.

  1. First observed

TDQS

A4.4/5.0
Behavior4/5

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

Annotations already declare readOnly/idempotent/non-destructive, but the description adds genuinely new behavior: the output is non-binding, nothing is sent or stored, and the PDF must be produced manually by re-entering price and terms on the Offer tab. Repeating 'Read-only' is redundant with the hints, which keeps this from a 5, but the workflow caveat is real added value.

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?

Front-loaded with the trigger condition and then densely packed with inputs, outputs, and the manual-PDF caveat in two sentences. It is long but nearly every clause carries information; the only soft spot is the redundant 'Read-only' closer after a full sentence already establishing that nothing is stored.

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 11-parameter generation tool with an output schema, the description covers the trigger, the county restriction, the primary/alternate key, the derived-from-analyze_deal workflow, and the downstream PDF step. An agent has everything needed to call it correctly on the first attempt.

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 coverage is 100%, so every parameter is already documented in the schema, including defaults, ranges, and the analyze_deal tie-in for offer_price. The description only restates the optional field list and the address/lead_id duality, adding no format or interaction detail beyond the structured data. Baseline 3 is appropriate.

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?

States a concrete verb and artifact ('write or draft an offer letter'), names the required inputs (county-limited address or lead_id plus offer price), and specifies exactly what comes back: a one-page non-binding letter of intent plus an RBSHome link. No sibling tool drafts letters, so the tool is unmistakable from the surrounding set.

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?

Opens with an explicit trigger ('Use when someone asks to write or draft an offer letter for a property') and gives a sequencing directive, 'Use analyze_deal first for a price.' It also documents the alternative input path (lead_id skips the address lookup) and flags that the call counts as a property lookup, which matters for quota-conscious agents.

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