Tool tree
gradeNot graded
pay_billSensitive Action
Prepare to pay a bill from checking or savings, and return a preview for the user to confirm. This does NOT move money — it returns a pendingId and the exact amount. You MUST show the preview to the user and then call confirm_payment with the pendingId once they agree. If the biller is ambiguous or missing, ask which biller first.
View tool JSON
{
"name": "pay_bill",
"kind": "transact",
"impl": "imperative",
"description": "Prepare to pay a bill from checking or savings, and return a preview for the user to confirm. This does NOT move money — it returns a pendingId and the exact amount. You MUST show the preview to the user and then call confirm_payment with the pendingId once they agree. If the biller is ambiguous or missing, ask which biller first.",
"inputSchema": {
"type": "object",
"properties": {
"biller": {
"type": "string",
"description": "Biller name, e.g. 'City Water'."
},
"amount": {
"type": "number",
"description": "Amount in USD. Omit to pay the full outstanding balance."
},
"fromAccount": {
"type": "string",
"enum": [
"checking",
"savings"
],
"description": "Which account to pay from. Defaults to checking."
}
},
"required": [
"biller"
]
}
}confirm_paymentSensitive Action
Execute a payment that was prepared by pay_bill. Only call this AFTER the user has explicitly confirmed the preview. Requires the pendingId returned by pay_bill.
View tool JSON
{
"name": "confirm_payment",
"kind": "transact",
"impl": "imperative",
"description": "Execute a payment that was prepared by pay_bill. Only call this AFTER the user has explicitly confirmed the preview. Requires the pendingId returned by pay_bill.",
"inputSchema": {
"type": "object",
"properties": {
"pendingId": {
"type": "string",
"description": "The pendingId returned by pay_bill."
}
},
"required": [
"pendingId"
]
}
}renew_benefitAction
Renew a benefit program (e.g. Food Assistance, Housing Support) that is expiring. Use when the user wants to renew or re-attest a benefit. Ask which program if unclear.
View tool JSON
{
"name": "renew_benefit",
"kind": "act",
"impl": "imperative",
"description": "Renew a benefit program (e.g. Food Assistance, Housing Support) that is expiring. Use when the user wants to renew or re-attest a benefit. Ask which program if unclear.",
"inputSchema": {
"type": "object",
"properties": {
"program": {
"type": "string",
"description": "Program name, e.g. 'Food Assistance'."
}
},
"required": [
"program"
]
}
}find_and_book_appointmentSensitive Action
Book an in-person or phone appointment for a government service. Use when the user wants to schedule help, an interview, or a visit.
View tool JSON
{
"name": "find_and_book_appointment",
"kind": "transact",
"impl": "imperative",
"description": "Book an in-person or phone appointment for a government service. Use when the user wants to schedule help, an interview, or a visit.",
"inputSchema": {
"type": "object",
"properties": {
"service": {
"type": "string",
"description": "Service, e.g. 'benefits interview'."
},
"when": {
"type": "string",
"description": "Preferred time, e.g. 'next Tuesday morning'."
}
},
"required": [
"service",
"when"
]
}
}summarize_my_obligationsAction
Read back all unpaid bills and expiring benefits, prioritized by urgency. Use when the user asks what they owe, what is due, or what needs attention.
View tool JSON
{
"name": "summarize_my_obligations",
"kind": "act",
"impl": "imperative",
"description": "Read back all unpaid bills and expiring benefits, prioritized by urgency. Use when the user asks what they owe, what is due, or what needs attention.",
"inputSchema": {
"type": "object",
"properties": {}
}
}explain_this_formAction
Explain a piece of bureaucratic jargon (e.g. "gross income", "attestation", "redetermination", "arrears") in simple, plain language. Use when the user is confused by wording on a form or benefit.
View tool JSON
{
"name": "explain_this_form",
"kind": "act",
"impl": "imperative",
"description": "Explain a piece of bureaucratic jargon (e.g. \"gross income\", \"attestation\", \"redetermination\", \"arrears\") in simple, plain language. Use when the user is confused by wording on a form or benefit.",
"inputSchema": {
"type": "object",
"properties": {
"term": {
"type": "string",
"description": "The word or phrase to explain."
}
},
"required": [
"term"
]
}
}download_payment_receiptSensitive Action
Generate an official timestamped proof-of-payment receipt for a bill. Use when the user asks for a receipt, confirmation slip, or payment proof for tax/record purposes.
View tool JSON
{
"name": "download_payment_receipt",
"kind": "transact",
"impl": "imperative",
"description": "Generate an official timestamped proof-of-payment receipt for a bill. Use when the user asks for a receipt, confirmation slip, or payment proof for tax/record purposes.",
"inputSchema": {
"type": "object",
"properties": {
"biller": {
"type": "string",
"description": "Name of the biller, e.g. 'City Water'."
}
},
"required": [
"biller"
]
}
}export_appointment_to_calendarAction
Export a scheduled appointment into a standard iCalendar (.ics) invite. Use when the user wants to add their scheduled casework interview to Google Calendar, Apple Calendar, or Outlook.
View tool JSON
{
"name": "export_appointment_to_calendar",
"kind": "act",
"impl": "imperative",
"description": "Export a scheduled appointment into a standard iCalendar (.ics) invite. Use when the user wants to add their scheduled casework interview to Google Calendar, Apple Calendar, or Outlook.",
"inputSchema": {
"type": "object",
"properties": {
"service": {
"type": "string",
"description": "The appointment service name."
}
},
"required": [
"service"
]
}
}undo_last_actionSensitive Action
Reverse the most recent action (payment, renewal, or booking). Use when the user says undo, cancel that, or made a mistake. Safety net — always available.
View tool JSON
{
"name": "undo_last_action",
"kind": "transact",
"impl": "imperative",
"description": "Reverse the most recent action (payment, renewal, or booking). Use when the user says undo, cancel that, or made a mistake. Safety net — always available.",
"inputSchema": {
"type": "object",
"properties": {}
}
}