reimburse-buddy
Server Configuration
Describes the environment variables required to run the server.
| Name | Required | Description | Default |
|---|---|---|---|
| REIMBURSE_BUDDY_DATA | No | Path to another dataset directory for the server to use instead of the default data directory. |
Instructions
Guidance the server publishes about itself, which clients place ahead of the tool catalog so the model reads it before choosing anything.
This server publishes no instructions, or was last inspected before Glama recorded them.
Capabilities
Features and capabilities supported by this server
Protocol revision2025-11-25
| Capability | Details |
|---|---|
| tools | {
"listChanged": false
} |
| prompts | {
"listChanged": false
} |
| resources | {
"subscribe": false,
"listChanged": false
} |
| experimental | {} |
Tools
Functions exposed to the LLM to take actions
| Name | Description |
|---|---|
| list_claimsB | List expense claims with the given status (default: submitted). |
| get_claimA | Get one claim with its trip, items and employee details. |
| get_policyA | Get the company travel policy (caps, per diem, receipt rules). |
| search_inboxA | Search an employee's mailbox (mail to or from them). Ranked OR search over subject, body, sender and attachment names; returns the top 5 as summaries (id, subject, snippet, attachments). Pass promising IDs to check_claim; it reports IDs that match no item as no_matching_item. |
| get_calendarA | Get an employee's calendar events between two ISO dates (inclusive). |
| find_approval_memoA | Find approval memos for an employee, optionally filtered by city and a date they must cover. Only memos with signed=true count as approval. |
| check_claimA | Run the deterministic policy rules on a claim. ALWAYS use this for any money figure. evidence_ids: IDs you found (inbox MSG-..., calendar EVT-..., memo MEMO-...).
human_decisions: {item_id: approve_full | approve_capped | reject}; works for any item category.
Items with status needs_evidence list gap codes (e.g. boarding_pass_missing, hotel_over_cap,
late_checkout_unjustified, duplicate_suspected). |
| triage_claimsA | Check every submitted claim in a batch (e.g. "2026-W43"). Returns auto-cleared claims, exceptions with their gap codes, and a time-saved estimate. Investigate only the exceptions. |
| draft_decisionB | Draft the final decision note for a reviewer. Re-runs check_claim, so numbers stay consistent. language: "id" (Bahasa Indonesia), "en" or "both" (default: Indonesian, then English). |
| send_messageA | (Mock) Email an employee, e.g. to ask for a missing receipt. Goes to the outbox. Scripted replies arrive in that employee's mailbox; check with search_inbox. |
| request_approvalC | (Mock) Ask the claimant's manager to approve one item. Returns a pending request. |
| update_claim_statusC | (Mock) Set claim status: submitted, on_hold, approved, partially_approved or rejected. |
| get_outboxA | (Mock) Show sent messages, approval requests and status changes made in this session. |
| reset_demoB | Restore all demo state: removes delivered replies, clears outbox, approval requests and status changes. |
Prompts
Interactive templates invoked by user choice
| Name | Description |
|---|---|
No prompts | |
Resources
Contextual data attached and managed by the client
| Name | Description |
|---|---|
No resources | |
TDQS
Scored across 14 tools
Each tool targets a distinct resource or action: listing/reading claims, reading policy/mail/calendar/memos, running rules, triaging, drafting, and mutating status. The only mild overlap is check_claim vs triage_claims vs draft_decision (single claim, batch, and note drafting that re-runs rules), but the descriptions clearly delineate when to use each.
All names are snake_case verb_noun compounds, giving a predictable pattern. Verb choice varies a bit (get_/list_/search_/find_/check_), but each verb carries a real distinction rather than being random.
14 tools sits comfortably in the well-scoped range, and every tool maps to a step in the reimbursement review workflow (evidence gathering, rule checking, approval, decision, demo reset). No tool feels redundant or filler.
The surface covers the review lifecycle end to end: policy, evidence (inbox, calendar, memos, outbox), rule checking, triage, drafting, approvals, status updates, and reset. The main gap is claim intake/editing — there is no create_claim or item-update tool, so the agent can only review pre-existing claims.