More than one roommate on your apartment buzzer number; settings decide who rings. Canada.
Maintain this server? Claim it
Call this server's tools from your browser. Nothing to install.
Requests go through mcptry because browsers can't call most MCP servers directly. Header values are sent to the server for that request only and are never stored or logged.
Tool list from our last check. Connect live to refresh it.
Checks whether BuzzMeBro can give this building a local buzzer number, and returns the price, the free-trial terms and how the service works. Call this first. Stores nothing and costs nothing.
The apartment building’s postal code, e.g. "M4B 1B3". Canadian postal codes only for now.
Checks whether BuzzMeBro can give this building a local buzzer number, and returns the price, the free-trial terms and how the service works. Call this first. Stores nothing and costs nothing.
| Argument | Type | Description |
|---|---|---|
| postal_code* | string | The apartment building’s postal code, e.g. "M4B 1B3". Canadian postal codes only for now. |
{
"type": "object",
"required": [
"postal_code"
],
"properties": {
"postal_code": {
"type": "string",
"maxLength": 12,
"minLength": 3,
"description": "The apartment building’s postal code, e.g. \"M4B 1B3\". Canadian postal codes only for now."
}
},
"additionalProperties": false
}Checks the code the person read back to you. This proves the phone is theirs, which matters because that phone will open their front door. Five tries per setup. Next: start_checkout.
| Argument | Type | Description |
|---|---|---|
| code* | string | The digits from the BuzzMeBro text, e.g. "482913". |
| setup_id* | string | setup_id from create_setup. |
| status_token* | string | status_token from create_setup. Keep it private. |
{
"type": "object",
"required": [
"setup_id",
"status_token",
"code"
],
"properties": {
"code": {
"type": "string",
"description": "The digits from the BuzzMeBro text, e.g. \"482913\"."
},
"setup_id": {
"type": "string",
"format": "uuid",
"description": "setup_id from create_setup."
},
"status_token": {
"type": "string",
"description": "status_token from create_setup. Keep it private."
}
},
"additionalProperties": false
}Creates a BuzzMeBro setup for the person and returns setup_id and a status_token you must keep for every later call (plus setup_url, a fallback link if you cannot relay a texted code). Only call it after check_building said available and the person has asked you to set it up. No text message is sent and nothing is charged by this call. Next: send_phone_code.
| Argument | Type | Description |
|---|---|---|
| unit* | string | Their apartment or unit number as the lobby panel lists it, e.g. "1502", "B" or "PH3". |
| agent_name | string | Optional: your name as the person knows you (e.g. "ChatGPT", "Claude"), shown on their link page. |
| postal_code* | string | The apartment building’s postal code, e.g. "M4B 1B3". Canadian postal codes only for now. |
| mobile_phone* | string | The person’s own mobile number. It becomes the first phone the buzzer rings and how they sign in; we text it a code when they open the link. |
| referral_code | string | Optional BuzzMeBro referral code from a friend. |
{
"type": "object",
"required": [
"postal_code",
"unit",
"mobile_phone"
],
"properties": {
"unit": {
"type": "string",
"maxLength": 32,
"minLength": 1,
"description": "Their apartment or unit number as the lobby panel lists it, e.g. \"1502\", \"B\" or \"PH3\"."
},
"agent_name": {
"type": "string",
"maxLength": 64,
"description": "Optional: your name as the person knows you (e.g. \"ChatGPT\", \"Claude\"), shown on their link page."
},
"postal_code": {
"type": "string",
"maxLength": 12,
"minLength": 3,
"description": "The apartment building’s postal code, e.g. \"M4B 1B3\". Canadian postal codes only for now."
},
"mobile_phone": {
"type": "string",
"maxLength": 32,
"minLength": 7,
"description": "The person’s own mobile number. It becomes the first phone the buzzer rings and how they sign in; we text it a code when they open the link."
},
"referral_code": {
"type": "string",
"maxLength": 20,
"description": "Optional BuzzMeBro referral code from a friend."
}
},
"additionalProperties": false
}Reads how far the setup has got and says what to do next. Once the person has paid, this call gets their number; when status is "ready" it returns their new BuzzMeBro number and swap_the_buzzer: the steps to get the building to point the buzzer at that number, and ready-to-send messages for building management, the landlord, the concierge, the superintendent or a building portal.
| Argument | Type | Description |
|---|---|---|
| setup_id* | string | setup_id from create_setup. |
| status_token* | string | status_token from create_setup. Keep it private. |
{
"type": "object",
"required": [
"setup_id",
"status_token"
],
"properties": {
"setup_id": {
"type": "string",
"format": "uuid",
"description": "setup_id from create_setup."
},
"status_token": {
"type": "string",
"description": "status_token from create_setup. Keep it private."
}
},
"additionalProperties": false
}Starts a partner application with the person’s details and returns application_id and application_token. Only call it when the person has asked to join. No text is sent by this call. Next: partner_send_code.
| Argument | Type | Description |
|---|---|---|
| name* | string | The person’s name. |
| email* | string | The person’s email. |
| persona* | string | The partner type: how they meet renters (front desk or building staff, leasing agent, mover, tenant insurance, co-living, university, telecom, listing site, relocation, landlord, move-in service, delivery). |
| building | string | Optional: the building or company they work with. |
| employer_ok | boolean | If they work for a building or concierge company: has their employer allowed it? |
| payouts_off | boolean | Optional: true for organisations that cannot take money (for example a university or a settlement agency). Their residents still get the perk; no payouts are ever made. |
| mobile_phone* | string | The person’s own Canadian mobile number. We text it a code. |
After the person accepted the terms: returns their partner link, code and partner key. The key is shown once; keep it private and use it for the partner_get_* tools. The application token stops working after this call.
| Argument | Type | Description |
|---|---|---|
| application_id* | string | application_id from partner_apply. |
| application_token* | string | application_token from partner_apply. Keep it private; it collects the partner key once. |
{
"type": "object",
"required": [
"application_id",
"application_token"
],
"properties": {
"application_id": {
"type": "string",
"format": "uuid",
"description": "application_id from partner_apply."
},
"application_token": {
"type": "string",
"description": "application_token from partner_apply. Keep it private; it collects the partner key once."
}
},
"additionalProperties": false
}Checks the texted code. Five tries per application. Next: partner_terms_link.
| Argument | Type | Description |
|---|---|---|
| code* | string | The digits from the text. |
| application_id* | string | application_id from partner_apply. |
| application_token* | string | application_token from partner_apply. Keep it private; it collects the partner key once. |
{
"type": "object",
"required": [
"application_id",
"application_token",
"code"
],
"properties": {
"code": {
"type": "string",
"description": "The digits from the text."
},
"application_id": {
"type": "string",
"format": "uuid",
"description": "application_id from partner_apply."
},
"application_token": {
"type": "string",
"description": "application_token from partner_apply. Keep it private; it collects the partner key once."
}
},
"additionalProperties": false
}Adds a tracked link with its own code for one location, building or staff member (up to 50). Renters who use it count for this partner, with the same two-months-free perk.
| Argument | Type | Description |
|---|---|---|
| label* | string | A name for the link, e.g. "King St location". |
| partner_key | string | The partner key from partner_claim_key. On REST send it as "Authorization: Bearer <key>" instead. |
{
"type": "object",
"required": [
"label"
],
"properties": {
"label": {
"type": "string",
"maxLength": 60,
"minLength": 1,
"description": "A name for the link, e.g. \"King St location\"."
},
"partner_key": {
"type": "string",
"description": "The partner key from partner_claim_key. On REST send it as \"Authorization: Bearer <key>\" instead."
}
},
"additionalProperties": false
}Switches off one tracked link: its code stops bringing new apartments. Apartments it already brought stay with the partner.
| Argument | Type | Description |
|---|---|---|
| sublink_id* | string | id from partner_list_sublinks. |
| partner_key | string | The partner key from partner_claim_key. On REST send it as "Authorization: Bearer <key>" instead. |
{
"type": "object",
"required": [
"sublink_id"
],
"properties": {
"sublink_id": {
"type": "string",
"format": "uuid",
"description": "id from partner_list_sublinks."
},
"partner_key": {
"type": "string",
"description": "The partner key from partner_claim_key. On REST send it as \"Authorization: Bearer <key>\" instead."
}
},
"additionalProperties": false
}Returns ready texts, a resident email, a move-in text and email to forward to new tenants, desk card and move-in insert wording with the partner’s link, links to the partner’s printable move-in package (move-in insert and QR card PDFs with their own QR and code), plus the house rules for sharing (honest words only, no pressure, never ask residents for phone numbers or door codes).
| Argument | Type | Description |
|---|---|---|
| partner_key | string | The partner key from partner_claim_key. On REST send it as "Authorization: Bearer <key>" instead. |
{
"type": "object",
"properties": {
"partner_key": {
"type": "string",
"description": "The partner key from partner_claim_key. On REST send it as \"Authorization: Bearer <key>\" instead."
}
},
"additionalProperties": false
}Returns the partner’s share link, typed code, a QR code (SVG) and their dashboard address.
| Argument | Type | Description |
|---|---|---|
| partner_key | string | The partner key from partner_claim_key. On REST send it as "Authorization: Bearer <key>" instead. |
{
"type": "object",
"properties": {
"partner_key": {
"type": "string",
"description": "The partner key from partner_claim_key. On REST send it as \"Authorization: Bearer <key>\" instead."
}
},
"additionalProperties": false
}Returns status, visits, signups, free months, paying apartments, collected revenue, earnings by state (on hold, ready, paid, reversed), the share ledger (apartments as codes only, never names or addresses) and payout history. Quote only these numbers.
| Argument | Type | Description |
|---|---|---|
| partner_key | string | The partner key from partner_claim_key. On REST send it as "Authorization: Bearer <key>" instead. |
{
"type": "object",
"properties": {
"partner_key": {
"type": "string",
"description": "The partner key from partner_claim_key. On REST send it as \"Authorization: Bearer <key>\" instead."
}
},
"additionalProperties": false
}Lists the extra tracked links (one per location, building or staff member) with each one’s visits, apartments and earnings. Every apartment and every dollar rolls up to the partner.
| Argument | Type | Description |
|---|---|---|
| partner_key | string | The partner key from partner_claim_key. On REST send it as "Authorization: Bearer <key>" instead. |
{
"type": "object",
"properties": {
"partner_key": {
"type": "string",
"description": "The partner key from partner_claim_key. On REST send it as \"Authorization: Bearer <key>\" instead."
}
},
"additionalProperties": false
}Returns a one-time link to a BuzzMeBro page that sends the person to Stripe’s own secure page, where THEY confirm their identity and add their bank. You never see or type bank details. Payouts start once they have at least $25 ready. First-time setup only: once payouts work, payout changes are made by the partner on their signed-in dashboard. The partner gets a text whenever this link is made.
| Argument | Type | Description |
|---|---|---|
| partner_key | string | The partner key from partner_claim_key. On REST send it as "Authorization: Bearer <key>" instead. |
{
"type": "object",
"properties": {
"partner_key": {
"type": "string",
"description": "The partner key from partner_claim_key. On REST send it as \"Authorization: Bearer <key>\" instead."
}
},
"additionalProperties": false
}Returns how the partner program works: the 50% share of collected revenue, what counts and what does not, when and how payouts happen, the rules, and the steps to join. Call it first and explain it to the person before applying. Stores nothing.
No arguments.
{
"type": "object",
"properties": {},
"additionalProperties": false
}Revokes the current partner key and returns a new one (shown once). Use it if the key may have leaked. The partner gets a text whenever the key is replaced.
| Argument | Type | Description |
|---|---|---|
| partner_key | string | The partner key from partner_claim_key. On REST send it as "Authorization: Bearer <key>" instead. |
{
"type": "object",
"properties": {
"partner_key": {
"type": "string",
"description": "The partner key from partner_claim_key. On REST send it as \"Authorization: Bearer <key>\" instead."
}
},
"additionalProperties": false
}Texts a 6-digit code to the mobile number in the application (never any other number). Ask the person to read it to you, then call partner_confirm_code. Each application gets 3 codes, at least a minute apart.
| Argument | Type | Description |
|---|---|---|
| application_id* | string | application_id from partner_apply. |
| application_token* | string | application_token from partner_apply. Keep it private; it collects the partner key once. |
{
"type": "object",
"required": [
"application_id",
"application_token"
],
"properties": {
"application_id": {
"type": "string",
"format": "uuid",
"description": "application_id from partner_apply."
},
"application_token": {
"type": "string",
"description": "application_token from partner_apply. Keep it private; it collects the partner key once."
}
},
"additionalProperties": false
}Returns a one-time link to the partner terms. Give it to the person: they read the terms and press Accept themselves. You cannot accept for them. When they say it is done, call partner_claim_key.
| Argument | Type | Description |
|---|---|---|
| application_id* | string | application_id from partner_apply. |
| application_token* | string | application_token from partner_apply. Keep it private; it collects the partner key once. |
{
"type": "object",
"required": [
"application_id",
"application_token"
],
"properties": {
"application_id": {
"type": "string",
"format": "uuid",
"description": "application_id from partner_apply."
},
"application_token": {
"type": "string",
"description": "application_token from partner_apply. Keep it private; it collects the partner key once."
}
},
"additionalProperties": false
}Texts a 6-digit code to the mobile number given in create_setup (never to any other number). Tell the person a text is coming and ask them to read the code to you, then call confirm_phone_code. Call again only if it has not arrived after a minute; each setup gets 3 codes.
| Argument | Type | Description |
|---|---|---|
| setup_id* | string | setup_id from create_setup. |
| status_token* | string | status_token from create_setup. Keep it private. |
{
"type": "object",
"required": [
"setup_id",
"status_token"
],
"properties": {
"setup_id": {
"type": "string",
"format": "uuid",
"description": "setup_id from create_setup."
},
"status_token": {
"type": "string",
"description": "status_token from create_setup. Keep it private."
}
},
"additionalProperties": false
}After confirm_phone_code: creates the person’s BuzzMeBro account and apartment and returns payment_url, Stripe’s own secure page where the person approves a card, Apple Pay, Google Pay or Link (with the free month when it applies, nothing is charged until it ends). Give them the link or message_for_the_person; you never see or type card details. Calling it again returns a fresh link for the same apartment.
| Argument | Type | Description |
|---|---|---|
| setup_id* | string | setup_id from create_setup. |
| status_token* | string | status_token from create_setup. Keep it private. |
{
"type": "object",
"required": [
"setup_id",
"status_token"
],
"properties": {
"setup_id": {
"type": "string",
"format": "uuid",
"description": "setup_id from create_setup."
},
"status_token": {
"type": "string",
"description": "status_token from create_setup. Keep it private."
}
},
"additionalProperties": false
}{
"type": "object",
"required": [
"name",
"mobile_phone",
"email",
"persona"
],
"properties": {
"name": {
"type": "string",
"maxLength": 80,
"minLength": 1,
"description": "The person’s name."
},
"email": {
"type": "string",
"maxLength": 254,
"description": "The person’s email."
},
"persona": {
"enum": [
"front_desk",
"property_manager",
"condo_board",
"leasing_agent",
"mover",
"student_housing",
"tenant_insurance",
"co_living",
"telecom",
"listing_site",
"relocation",
"landlord",
"move_in_service",
"delivery",
"creator",
"other"
],
"type": "string",
"description": "The partner type: how they meet renters (front desk or building staff, leasing agent, mover, tenant insurance, co-living, university, telecom, listing site, relocation, landlord, move-in service, delivery)."
},
"building": {
"type": "string",
"maxLength": 120,
"description": "Optional: the building or company they work with."
},
"employer_ok": {
"type": "boolean",
"description": "If they work for a building or concierge company: has their employer allowed it?"
},
"payouts_off": {
"type": "boolean",
"description": "Optional: true for organisations that cannot take money (for example a university or a settlement agency). Their residents still get the perk; no payouts are ever made."
},
"mobile_phone": {
"type": "string",
"maxLength": 32,
"minLength": 7,
"description": "The person’s own Canadian mobile number. We text it a code."
}
},
"additionalProperties": false
}