Skip to content

Buildium MCP by usefulapi

by usefulapi.io · remote · no sign-in to list tools · v1.16.3 · published by io.usefulapi

Read Buildium properties, units, leases, tenants, balances and bills; manage work orders.

Deletes · 4

23 tools: 4 can delete or cancel things and 19 only read.

Scanned Oct 21, 2026

No check matched anything in the tool definitions. No finding is not a safety guarantee. How the checks work.

claude mcp add --transport http buildium https://buildium.usefulapi.io/mcp

Tools

Open a tool for its reasons and full description. Descriptions are the publisher's own words, shown as they are.

23 tools

Deletes or cancels 4Claude Code: deny
  • buildium_create_todo_taskCreate an internal to-do task assigned to a staff user, optionally tied to a property/unit and category, with a due date.No findings

    Why it is in this group

    • The name "buildium_create_todo_task" says "create": a word for a change.
    • The server marks it destructive (destructiveHint: true).
    Description, as the server wrote it
    Create an internal to-do task assigned to a staff user, optionally tied to a property/unit and category, with a due date. Buildium: POST /v1/tasks/todorequests.

    Annotations the server declares

    • title: Create a to-do task
    • destructiveHint: true
  • buildium_create_work_orderCreate a work order for a vendor.No findings

    Why it is in this group

    • The name "buildium_create_work_order" says "create": a word for a change.
    • The server marks it destructive (destructiveHint: true).
    Description, as the server wrote it
    Create a work order for a vendor. Attach it to an existing task (task_id) or create a new task with it (task: title, priority, status, assigned staff user, optional due date/property/unit). vendor_id and entry_allowed are required. Line items are optional (quantity x unit price, optional GL account). Buildium: POST /v1/workorders.

    Annotations the server declares

    • title: Create a work order
    • destructiveHint: true
  • buildium_update_todo_taskUpdate a to-do task — change status (e.g.No findings

    Why it is in this group

    • The name "buildium_update_todo_task" says "update": a word for a change.
    • The server marks it destructive (destructiveHint: true).
    Description, as the server wrote it
    Update a to-do task — change status (e.g. mark Completed), priority, assignee, due date, title or category, optionally with an update message. Buildium's PUT replaces the whole record, so this reads the current task first and only changes the fields you pass. Buildium: GET then PUT /v1/tasks/todorequests/{toDoTaskId}.

    Annotations the server declares

    • title: Update a to-do task
    • destructiveHint: true
  • buildium_update_work_orderUpdate a work order's details.No findings

    Why it is in this group

    • The name "buildium_update_work_order" says "update": a word for a change.
    • The server marks it destructive (destructiveHint: true).
    Description, as the server wrote it
    Update a work order's details. Buildium's PUT replaces the whole record, so this reads the current work order first and only changes the fields you pass — everything else (including line items and entry contacts) is preserved. Passing line_items REPLACES all existing line items. Status/priority/due date live on the linked task. Buildium: GET then PUT /v1/workorders/{workOrderId}.

    Annotations the server declares

    • title: Update a work order
    • destructiveHint: true
Only reads 19Claude Code: allow
  • buildium_get_leaseFetch one lease by id, including tenants, cosigners, account details and move-out data.No findings

    Why it is in this group

    • The name "buildium_get_lease" says "get": a word for reading.
    Description, as the server wrote it
    Fetch one lease by id, including tenants, cosigners, account details and move-out data. Buildium: GET /v1/leases/{leaseId}.

    Annotations the server declares

    • title: Get a lease
    • readOnlyHint: true
  • buildium_get_rental_propertyFetch one rental property by id.No findings

    Why it is in this group

    • The name "buildium_get_rental_property" says "get": a word for reading.
    Description, as the server wrote it
    Fetch one rental property by id. Buildium: GET /v1/rentals/{propertyId}.

    Annotations the server declares

    • title: Get a rental property
    • readOnlyHint: true
  • buildium_get_rental_unitFetch one rental unit by id.No findings

    Why it is in this group

    • The name "buildium_get_rental_unit" says "get": a word for reading.
    Description, as the server wrote it
    Fetch one rental unit by id. Buildium: GET /v1/rentals/units/{unitId}.

    Annotations the server declares

    • title: Get a rental unit
    • readOnlyHint: true
  • buildium_get_tenantFetch one rental tenant by id.No findings

    Why it is in this group

    • The name "buildium_get_tenant" says "get": a word for reading.
    Description, as the server wrote it
    Fetch one rental tenant by id. Buildium: GET /v1/leases/tenants/{tenantId}.

    Annotations the server declares

    • title: Get a tenant
    • readOnlyHint: true
  • buildium_get_work_orderFetch one work order by id.No findings

    Why it is in this group

    • The name "buildium_get_work_order" says "get": a word for reading.
    Description, as the server wrote it
    Fetch one work order by id. Buildium: GET /v1/workorders/{workOrderId}.

    Annotations the server declares

    • title: Get a work order
    • readOnlyHint: true
  • buildium_list_applicantsList rental applicants with contact details, status and their applications.No findings

    Why it is in this group

    • The name "buildium_list_applicants" says "list": a word for reading.
    Description, as the server wrote it
    List rental applicants with contact details, status and their applications. Filter by application status, unit, name, email, submission date or entity. Buildium: GET /v1/applicants.

    Annotations the server declares

    • title: List applicants
    • readOnlyHint: true
  • buildium_list_associationsList community/HOA associations with address, manager, reserve, fiscal year and operating bank account.No findings

    Why it is in this group

    • The name "buildium_list_associations" says "list": a word for reading.
    Description, as the server wrote it
    List community/HOA associations with address, manager, reserve, fiscal year and operating bank account. Buildium: GET /v1/associations.

    Annotations the server declares

    • title: List associations
    • readOnlyHint: true
  • buildium_list_billsList vendor bills (accounts payable) with dates, memo, vendor, linked work order, reference number, approval status and lines.No findings

    Why it is in this group

    • The name "buildium_list_bills" says "list": a word for reading.
    Description, as the server wrote it
    List vendor bills (accounts payable) with dates, memo, vendor, linked work order, reference number, approval status and lines. Read-only. Buildium: GET /v1/bills.

    Annotations the server declares

    • title: List bills
    • readOnlyHint: true
  • buildium_list_gl_accountsList the chart of accounts: GL accounts with number, name, type/subtype, sub-accounts and bank/credit-card flags.No findings

    Why it is in this group

    • The name "buildium_list_gl_accounts" says "list": a word for reading.
    Description, as the server wrote it
    List the chart of accounts: GL accounts with number, name, type/subtype, sub-accounts and bank/credit-card flags. Useful for finding the gl_account_id for work order line items. Buildium: GET /v1/glaccounts.

    Annotations the server declares

    • title: List general ledger accounts
    • readOnlyHint: true
  • buildium_list_lease_transactionsRead a lease's ledger: charges, payments, credits, refunds, deposits and other transactions with date, type, total amount and journal lines.No findings

    Why it is in this group

    • The name "buildium_list_lease_transactions" says "list": a word for reading.
    Description, as the server wrote it
    Read a lease's ledger: charges, payments, credits, refunds, deposits and other transactions with date, type, total amount and journal lines. Read-only — this server never posts to a ledger. Buildium: GET /v1/leases/{leaseId}/transactions.

    Annotations the server declares

    • title: List lease transactions
    • readOnlyHint: true
  • buildium_list_leasesList leases with unit, dates, lease type/status, current tenants, rent/deposit account details and eviction flag.No findings

    Why it is in this group

    • The name "buildium_list_leases" says "list": a word for reading.
    Description, as the server wrote it
    List leases with unit, dates, lease type/status, current tenants, rent/deposit account details and eviction flag. Filter by property, owner, unit number, tenant name, dates, lease type or status (Active/Past/Future). Buildium: GET /v1/leases.

    Annotations the server declares

    • title: List leases
    • readOnlyHint: true
  • buildium_list_outstanding_balancesDelinquency report: leases that owe money, with aged buckets (0-30, 31-60, 61-90, 90+ days), total balance, past-due-email and eviction-pending dates.No findings

    Why it is in this group

    • The name "buildium_list_outstanding_balances" says "list": a word for reading.
    Description, as the server wrote it
    Delinquency report: leases that owe money, with aged buckets (0-30, 31-60, 61-90, 90+ days), total balance, past-due-email and eviction-pending dates. Leases with zero or credit balances are not returned. Buildium: GET /v1/leases/outstandingbalances.

    Annotations the server declares

    • title: List lease outstanding balances
    • readOnlyHint: true
  • buildium_list_rental_ownersList rental owners (the landlords you manage for) with contact details, management-agreement dates and the property ids they own.No findings

    Why it is in this group

    • The name "buildium_list_rental_owners" says "list": a word for reading.
    Description, as the server wrote it
    List rental owners (the landlords you manage for) with contact details, management-agreement dates and the property ids they own. Buildium: GET /v1/rentals/owners.

    Annotations the server declares

    • title: List rental owners
    • readOnlyHint: true
  • buildium_list_rental_propertiesList rental properties (buildings) with address, unit count, type/subtype and manager.No findings

    Why it is in this group

    • The name "buildium_list_rental_properties" says "list": a word for reading.
    Description, as the server wrote it
    List rental properties (buildings) with address, unit count, type/subtype and manager. Filter by location (city/state contains), type, subtype, status, rental owner or property ids. Buildium: GET /v1/rentals.

    Annotations the server declares

    • title: List rental properties
    • readOnlyHint: true
  • buildium_list_rental_unitsList rental units with unit number, bedrooms/bathrooms, size, market rent and whether each unit is listed or occupied.No findings

    Why it is in this group

    • The name "buildium_list_rental_units" says "list": a word for reading.
    Description, as the server wrote it
    List rental units with unit number, bedrooms/bathrooms, size, market rent and whether each unit is listed or occupied. Filter by property. Buildium: GET /v1/rentals/units.

    Annotations the server declares

    • title: List rental units
    • readOnlyHint: true
  • buildium_list_tasksList all tasks/requests — contact requests, resident requests, rental owner requests and to-dos — with category, property, unit, requester, assignee, status, priority and due date.No findings

    Why it is in this group

    • The name "buildium_list_tasks" says "list": a word for reading.
    Description, as the server wrote it
    List all tasks/requests — contact requests, resident requests, rental owner requests and to-dos — with category, property, unit, requester, assignee, status, priority and due date. Buildium: GET /v1/tasks.

    Annotations the server declares

    • title: List tasks
    • readOnlyHint: true
  • buildium_list_tenantsList rental tenants with contact details, emergency contact, address and leases.No findings

    Why it is in this group

    • The name "buildium_list_tenants" says "list": a word for reading.
    Description, as the server wrote it
    List rental tenants with contact details, emergency contact, address and leases. Filter by name, email, phone, unit number, property, owner, unit ids or lease term status. Buildium: GET /v1/leases/tenants.

    Annotations the server declares

    • title: List tenants
    • readOnlyHint: true
  • buildium_list_vendorsList vendors (contractors, suppliers) with contact details, category, insurance and default expense GL account.No findings

    Why it is in this group

    • The name "buildium_list_vendors" says "list": a word for reading.
    Description, as the server wrote it
    List vendors (contractors, suppliers) with contact details, category, insurance and default expense GL account. Filter by name, email, phone, website, status or insurance expiration. Buildium: GET /v1/vendors.

    Annotations the server declares

    • title: List vendors
    • readOnlyHint: true
  • buildium_list_work_ordersList work orders with title, status, priority, due date, vendor, amount, line items, linked task and bill ids.No findings

    Why it is in this group

    • The name "buildium_list_work_orders" says "list": a word for reading.
    Description, as the server wrote it
    List work orders with title, status, priority, due date, vendor, amount, line items, linked task and bill ids. Filter by entity, status, priority, task type, unit, vendor, assignee, dates, amount, billed flag or title. Buildium: GET /v1/workorders.

    Annotations the server declares

    • title: List work orders
    • readOnlyHint: true

This is not a safety rating, and no finding is not a safety guarantee. The groups and findings come from fixed checks of the tool definitions the server returned on the date shown, not from its code or what it does when called. How the checks work.

Install

Pinned to version 1.16.3. Values in angle brackets are yours to fill in.

claude mcp add --transport http buildium https://buildium.usefulapi.io/mcp

Run in a terminal.

Claude Code permissions

Allow the reads, ask before a change, deny the deletes. Paste into .claude/settings.json.

.claude/settings.json
{
  "permissions": {
    "allow": [
      "mcp__buildium__buildium_list_rental_properties",
      "mcp__buildium__buildium_get_rental_property",
      "mcp__buildium__buildium_list_rental_units",
      "mcp__buildium__buildium_get_rental_unit",
      "mcp__buildium__buildium_list_rental_owners",
      "mcp__buildium__buildium_list_leases",
      "mcp__buildium__buildium_get_lease",
      "mcp__buildium__buildium_list_outstanding_balances",
      "mcp__buildium__buildium_list_lease_transactions",
      "mcp__buildium__buildium_list_tenants",
      "mcp__buildium__buildium_get_tenant",
      "mcp__buildium__buildium_list_applicants",
      "mcp__buildium__buildium_list_work_orders",
      "mcp__buildium__buildium_get_work_order",
      "mcp__buildium__buildium_list_tasks",
      "mcp__buildium__buildium_list_vendors",
      "mcp__buildium__buildium_list_bills",
      "mcp__buildium__buildium_list_gl_accounts",
      "mcp__buildium__buildium_list_associations"
    ],
    "ask": [],
    "deny": [
      "mcp__buildium__buildium_create_work_order",
      "mcp__buildium__buildium_update_work_order",
      "mcp__buildium__buildium_create_todo_task",
      "mcp__buildium__buildium_update_todo_task"
    ]
  }
}

Tools that only read are allowed, tools that change things ask first, tools that delete or cancel are denied. It assumes the server is installed as buildium. Review it before you use it.