nobrokerhood-mcp
Server Configuration
Describes the environment variables required to run the server.
| Name | Required | Description | Default |
|---|---|---|---|
No arguments | |||
Capabilities
Features and capabilities supported by this server
| 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 |
|---|---|
| pre_approve | Pre-approve a delivery or visitor at the society gate via NoBrokerHood. Use this whenever the user wants to let a delivery in: "pre-approve zepto", "let the dominos guy in for 4 hours", "approve amazon till midnight". "Pre-approve for the day" means until midnight (23:59) of the current day. Call get_user_multiprofile_info first to obtain the apartment_id if not already known; skip if the user explicitly provided it. Args:
company: Brand name, e.g. "Zepto", "Blinkit", "Dominos", "Amazon".
Case/space/hyphen insensitive. ~100 brands have built-in defaults; see
the Returns the raw API response dict. On success, the visit ID is a string at response["data"][0] (data is a list; element 0 is the visit ID). |
| cancel_visitA | Cancel a previously pre-approved visit by its visit ID. Use this when the user wants to cancel a delivery approval they no longer need. The visit_id is at response["data"][0] from the pre_approve call. Call get_user_multiprofile_info first to obtain the apartment_id if not already known; skip if the user explicitly provided it. Args: visit_id: The visit ID string returned when the visit was created. apartment_id: The apartment ID the visit belongs to. Fetch from get_user_multiprofile_info → data.apartments.apartment.id. fields: Dot-notation paths to filter the response. Omit to return everything. Returns the raw API response dict on success. |
| list_expectedA | List pre-approved deliveries that are currently pending arrival. These are the user's active pre-approvals at their apartment. Use this when the user asks about pre-approved deliveries that haven't arrived yet: "what have I pre-approved?", "show my pending deliveries", "what deliveries am I expecting?", "did I approve anything?", "list my approvals". Do NOT use for historical/past gate activity — use list_visits for that. Call get_user_multiprofile_info first to obtain the apartment_id if not already known; skip if the user explicitly provided it. Args: apartment_id: The apartment ID to list visits for. Fetch from get_user_multiprofile_info → data.apartments.apartment.id. page: Page number, 1-indexed. Default 1. page_size: Number of results per page. Default 5. sort_order: "asc" (soonest first, default) or "desc" (latest first). fields: Dot-notation paths to filter the response. Omit to return everything. Returns the raw API response dict containing a list of pre-approved visits awaiting arrival, each with a visit ID, company name, and time window. |
| list_visitsA | List current, past (expired), and denied visits for an apartment. Use this when the user asks about gate activity (current, historical, or denied): "who's at the gate?", "who came today?", "show past visitors", "any denied entries?", "who visited recently?", "what deliveries came in?", "what deliveries are coming today?". Do NOT use for pending pre-approvals that haven't arrived — use list_expected for that. Returns all categories in one call. Each category is a separate list:
Each visit entry includes: company, visitor name/phone, inTime, outTime,
gate name, approvedBy, approvalType, visitorType, and approval status.
Company is at the top-level Call get_user_multiprofile_info first to obtain the apartment_id if not already known. Skip if the user explicitly provided it. Args: apartment_id: The apartment ID to list visits for. Fetch from get_user_multiprofile_info → data.apartments.apartment.id. page: Page number, 1-indexed. Default 1. Applies to all lists. page_size: Number of results per page. Default 10. fields: Dot-notation paths to filter the response. Strongly recommended — omitting returns all four categories with full visitor data, which is large. Use fields to fetch only what the query needs: ["data.current"] → who's at the gate right now ["data.expired"] → today's completed visits ["data.current", "data.expired"] → active + past visits ["data.expired.company", "data.expired.inTime"] → company + entry time ["data.currentTotal", "data.expiredTotal", "data.deniedTotal"] → counts only Omit only if the user explicitly wants everything. Returns the raw API response dict. |
| get_user_multiprofile_infoA | Fetch the authenticated user's multiprofile information. Use this when the user asks about their profile, apartments, family members, society details, or pass codes: "what apartments do I have?", "show my profile", "who are my family members?", "what's my pass code?", "which societies am I in?". Also use this FIRST whenever another tool needs an apartment_id — unless the user explicitly provided the apartment_id, in which case use it directly. Call with fields=["data.apartments.apartment.id", "data.apartments.apartment.name", "data.apartments.apartment.displayName", "data.apartments.apartment.buildingName"] to identify the right apartment before proceeding. If exactly one apartment is returned, use its ID immediately without asking the user to confirm. If multiple apartments are returned, match the user's input against all of: name (full apartment name), displayName (short label), and buildingName (tower/block name) — the user may refer to any of these. Args: fields: Dot-notation paths to include in the response. Always specify fields to avoid fetching the full profile (which includes family, notification settings, and other data rarely needed). Omit only if the user explicitly asks for their complete profile information. Examples: - ["data.apartments.apartment.id", "data.apartments.apartment.name", "data.apartments.apartment.displayName", "data.apartments.apartment.buildingName"] → compact apartment list for matching and obtaining an apartment_id - ["data.user.person.name", "data.user.person.phone"] → just the primary user's contact info - ["data.passCodes"] → just the pass codes map Returns the raw API response dict containing:
|
| known_companies | Return the list of delivery brands with built-in default approval windows. Use this when the user asks "what companies do you know?", "which brands are supported?", or before calling pre_approve with an unfamiliar name. Returns a dict with a "companies" key containing a sorted list of brand names. |
Prompts
Interactive templates invoked by user choice
| Name | Description |
|---|---|
No prompts | |
Resources
Contextual data attached and managed by the client
| Name | Description |
|---|---|
No resources | |
Latest Blog Posts
- Who's Calling? MCP Hosts Are an Identity Blind Spot (And the Spec Knows It)By Om-Shree-0709 on .mcpAgent IdentityOAuth 2.1
- Your AI Chatbot Just Exposed Your CEO's Salary to an InternBy Om-Shree-0709 on .Agent IdentityMCP SecurityOAuth Delegation
- Why MCP Servers Need Execution Sandboxing (And Why Your Current Stack Isn't Enough)By Om-Shree-0709 on .Agentic AiPrompt InjectionWebAssembly
MCP directory API
We provide all the information about MCP servers via our MCP API.
curl -X GET 'https://glama.ai/api/mcp/v1/servers/smtchahal/nobrokerhood-mcp'
If you have feedback or need assistance with the MCP directory API, please join our Discord server