Every change Wellknown observed on this MCP server, newest first, with what it was before and what it became. Tool-surface changes carry the definition diff. Nothing here is edited after the fact.
Authorization not required, issuer https://mcp.hirenimbus.com
Authorization not required, issuer https://mcp.hirenimbus.com
Authorization not required, issuer https://mcp.hirenimbus.com
Authorization not required, issuer https://mcp.hirenimbus.com
Authorization not required, issuer https://mcp.hirenimbus.com
Authorization not required, issuer https://mcp.hirenimbus.com
Authorization not required, issuer https://mcp.hirenimbus.com
Changed the definition of "book_electrician", "book_handyman", "book_hvac" and 17 more
⟨79 unchanged words⟩ to book, then use create_booking. Do not start OTP until create_booking returns auth_required after they chose a pro. Do not use for DIY how-to advice or price research with no hiring intent. Always pass optional `context` on this call (15-25 words, third person, abstract purpose only, no PII) so analytics can record why the tool was called. Omitting it does not fail the call; do not send an empty string.
{"properties":{"context":{"anyOf":[{"type":"string"},{"type":"null"}],"default":null,"description":"Explain inAlways15-25includewords,this
Authorization required → not required, issuer https://mcp.hirenimbus.com
First tool surface recorded: 20 tools (server version 1.26.0)
Authorization required, Bearer, issuer https://mcp.hirenimbus.com
Certificate recorded, valid to 2026-11-19
Authorization required, Bearer, issuer https://mcp.hirenimbus.com
Showing the latest 13 events. The API returns up to 500 and filters by kind: ?kind=tool_surface_changed
⟨90 unchanged words⟩ to book, then use create_booking. Do not start OTP until create_booking returns auth_required after they chose a pro. Do not use for DIY how-to advice or price research with no hiring intent. Always pass optional `context` on this call (15-25 words, third person, abstract purpose only, no PII) so analytics can record why the tool was called. Omitting it does not fail the call; do not send an empty string.
{"properties":{"context":{"anyOf":[{"type":"string"},{"type":"null"}],"default":null,"description":"Explain inAlways15-25includewords,thisinargumentthirdonperson,everywhycallthis—tooldoisnotcalledomitandithow(analyticsit/supportsAgenttheIntent).user'sWritegoal.15-25Forwordsanalyticsinonly.thirdYoupersonMUSTexplainingdescribewhyonlythisthetoolabstractispurposebeingofcalled.theAbstracttoolpurposecall.only:NEVERneverincludenames,repeatphones,paraphraseemails,or inferstreetpersonaladdresses,sensitiveIDs, oridentifying informationotherfromPII.theExample:user\"Homeownerrequestwantsorvettedtoollocalresults,plumbersincludingfornames,aemails,leakingphonekitchennumbers,faucetIPs,withinIDs,theorpreviouslycredentials.confirmedYouZIP.\"","examples":["HomeownerMUSTwantsgeneralizevettedspecificlocalentitiesplumbersintoforrolesasuchleakingaskitchen\"afaucetuser\",within\"thecustomer\", orpreviously\"anconfirmedaccount\ZIP.". Example: \,"Retrieving aHomeownercustomer'sisrecentcomparingordersHVACtoprosinvestigateafter abilling issue andno-coolhelpairsupportconditionerdetermineat theappropriateconfirmedresolution.\"job site."],"typetitle":"stringContext"},"limit":{"default":6,"title ⟨86 unchanged words⟩ type":"integer"}},"required":["location","context"],"title":"book_handyman_mcpArguments","type":"object"}
⟨86 unchanged words⟩ to book, then use create_booking. Do not start OTP until create_booking returns auth_required after they chose a pro. Do not use for DIY how-to advice or price research with no hiring intent. Always pass optional `context` on this call (15-25 words, third person, abstract purpose only, no PII) so analytics can record why the tool was called. Omitting it does not fail the call; do not send an empty string.
{"properties":{"context":{"anyOf":[{"type":"string"},{"type":"null"}],"default":null,"description":"Explain inAlways15-25includewords,thisinargumentthirdonperson,everywhycallthis—tooldoisnotcalledomitandithow(analyticsit/supportsAgenttheIntent).user'sWritegoal.15-25Forwordsanalyticsinonly.thirdYoupersonMUSTexplainingdescribewhyonlythisthetoolabstractispurposebeingofcalled.theAbstracttoolpurposecall.only:NEVERneverincludenames,repeatphones,paraphraseemails,or inferstreetpersonaladdresses,sensitiveIDs, oridentifying informationotherfromPII.theExample:user\"Homeownerrequestwantsorvettedtoollocalresults,plumbersincludingfornames,aemails,leakingphonekitchennumbers,faucetIPs,withinIDs,theorpreviouslycredentials.confirmedYouZIP.\"","examples":["HomeownerMUSTwantsgeneralizevettedspecificlocalentitiesplumbersintoforrolesasuchleakingaskitchen\"afaucetuser\",within\"thecustomer\", orpreviously\"anconfirmedaccount\ZIP.". Example: \,"Retrieving aHomeownercustomer'sisrecentcomparingordersHVACtoprosinvestigateafter abilling issue andno-coolhelpairsupportconditionerdetermineat theappropriateconfirmedresolution.\"job site."],"typetitle":"stringContext"},"limit":{"default":6,"title ⟨86 unchanged words⟩ type":"integer"}},"required":["location","context"],"title":"book_hvac_mcpArguments","type":"object"}
⟨83 unchanged words⟩ to book, then use create_booking. Do not start OTP until create_booking returns auth_required after they chose a pro. Do not use for DIY how-to advice or price research with no hiring intent. Always pass optional `context` on this call (15-25 words, third person, abstract purpose only, no PII) so analytics can record why the tool was called. Omitting it does not fail the call; do not send an empty string.
{"properties":{"context":{"anyOf":[{"type":"string"},{"type":"null"}],"default":null,"description":"Explain inAlways15-25includewords,thisinargumentthirdonperson,everywhycallthis—tooldoisnotcalledomitandithow(analyticsit/supportsAgenttheIntent).user'sWritegoal.15-25Forwordsanalyticsinonly.thirdYoupersonMUSTexplainingdescribewhyonlythisthetoolabstractispurposebeingofcalled.theAbstracttoolpurposecall.only:NEVERneverincludenames,repeatphones,paraphraseemails,or inferstreetpersonaladdresses,sensitiveIDs, oridentifying informationotherfromPII.theExample:user\"Homeownerrequestwantsorvettedtoollocalresults,plumbersincludingfornames,aemails,leakingphonekitchennumbers,faucetIPs,withinIDs,theorpreviouslycredentials.confirmedYouZIP.\"","examples":["HomeownerMUSTwantsgeneralizevettedspecificlocalentitiesplumbersintoforrolesasuchleakingaskitchen\"afaucetuser\",within\"thecustomer\", orpreviously\"anconfirmedaccount\ZIP.". Example: \,"Retrieving aHomeownercustomer'sisrecentcomparingordersHVACtoprosinvestigateafter abilling issue andno-coolhelpairsupportconditionerdetermineat theappropriateconfirmedresolution.\"job site."],"typetitle":"stringContext"},"limit":{"default":6,"title ⟨86 unchanged words⟩ type":"integer"}},"required":["location","context"],"title":"book_plumber_mcpArguments","type":"object"}
⟨70 unchanged words⟩ to book, then use create_booking. Do not start OTP until create_booking returns auth_required after they chose a pro. Do not use for DIY how-to advice or price research with no hiring intent. Always pass optional `context` on this call (15-25 words, third person, abstract purpose only, no PII) so analytics can record why the tool was called. Omitting it does not fail the call; do not send an empty string.
{"properties":{"context":{"anyOf":[{"type":"string"},{"type":"null"}],"default":null,"description":"Explain inAlways15-25includewords,thisinargumentthirdonperson,everywhycallthis—tooldoisnotcalledomitandithow(analyticsit/supportsAgenttheIntent).user'sWritegoal.15-25Forwordsanalyticsinonly.thirdYoupersonMUSTexplainingdescribewhyonlythisthetoolabstractispurposebeingofcalled.theAbstracttoolpurposecall.only:NEVERneverincludenames,repeatphones,paraphraseemails,or inferstreetpersonaladdresses,sensitiveIDs, oridentifying informationotherfromPII.theExample:user\"Homeownerrequestwantsorvettedtoollocalresults,plumbersincludingfornames,aemails,leakingphonekitchennumbers,faucetIPs,withinIDs,theorpreviouslycredentials.confirmedYouZIP.\"","examples":["HomeownerMUSTwantsgeneralizevettedspecificlocalentitiesplumbersintoforrolesasuchleakingaskitchen\"afaucetuser\",within\"thecustomer\", orpreviously\"anconfirmedaccount\ZIP.". Example: \,"Retrieving aHomeownercustomer'sisrecentcomparingordersHVACtoprosinvestigateafter abilling issue andno-coolhelpairsupportconditionerdetermineat theappropriateconfirmedresolution.\"job site."],"typetitle":"stringContext"},"limit":{"default":6,"title ⟨86 unchanged words⟩ type":"integer"}},"required":["location","context"],"title":"book_renovation_mcpArguments","type":"object"}
⟨42 unchanged words⟩ is verified against the homeowner's owned prior job. Always pass optional `context` on this call (15-25 words, third person, abstract purpose only, no PII) so analytics can record why the tool was called. Omitting it does not fail the call; do not send an empty string.
⟨296 unchanged words⟩ ,"type":"boolean"},"context":{"anyOf":[{"type":"string"},{"type":"null"}],"default":null,"description":"Explain inAlways15-25includewords,thisinargumentthirdonperson,everywhycallthis—tooldoisnotcalledomitandithow(analyticsit/supportsAgenttheIntent).user'sWritegoal.15-25Forwordsanalyticsinonly.thirdYoupersonMUSTexplainingdescribewhyonlythisthetoolabstractispurposebeingofcalled.theAbstracttoolpurposecall.only:NEVERneverincludenames,repeatphones,paraphraseemails,or inferstreetpersonaladdresses,sensitiveIDs, oridentifying informationotherfromPII.theExample:user\"Homeownerrequestwantsorvettedtoollocalresults,plumbersincludingfornames,aemails,leakingphonekitchennumbers,faucetIPs,withinIDs,theorpreviouslycredentials.confirmedYouZIP.\"","examples":["HomeownerMUSTwantsgeneralizevettedspecificlocalentitiesplumbersintoforrolesasuchleakingaskitchen\"afaucetuser\",within\"thecustomer\", orpreviously\"anconfirmedaccount\ZIP.". Example: \,"Retrieving aHomeownercustomer'sisrecentcomparingordersHVACtoprosinvestigateafter abilling issue andno-coolhelpairsupportconditionerdetermineat theappropriateconfirmedresolution.\"job site."],"typetitle":"stringContext"},"job_description":{"anyOf":[{"type ⟨117 unchanged words⟩ type":"string"}},"required":["job_id","context"],"title":"book_same_pro_again_mcpArguments","type":"object"}
⟨26 unchanged words⟩ :"boolean"},"context":{"description":"Explain inAlways15-25includewords,thisinargumentthirdonperson,everywhycallthis—tooldoisnotcalledomitandithow(analyticsit/supportsAgenttheIntent).user'sWritegoal.15-25Forwordsanalyticsinonly.thirdYoupersonMUSTexplainingdescribewhyonlythisthetoolabstractispurposebeingofcalled.theAbstracttoolpurposecall.only:NEVERneverincludenames,repeatphones,paraphraseemails,or inferstreetpersonaladdresses,sensitiveIDs, oridentifying informationotherfromPII.theExample:user\"Homeownerrequestwantsorvettedtoollocalresults,plumbersincludingfornames,aemails,leakingphonekitchennumbers,faucetIPs,withinIDs,theorpreviouslycredentials.confirmedYouZIP.\"","examples":["HomeownerMUSTwantsgeneralizevettedspecificlocalentitiesplumbersintoforrolesasuchleakingaskitchen\"afaucetuser\",within\"thecustomer\", orpreviously\"anconfirmedaccount\ZIP.". Example: \,"Retrieving aHomeownercustomer'sisrecentcomparingordersHVACtoprosinvestigateafter abilling issue andno-coolhelpairsupportconditionerdetermineat theappropriateconfirmedresolution.\"job site."],"type":"string"},"job_id":{" ⟨24 unchanged words⟩ string"}},"required":["job_id","reason","context"],"title":"cancel_booking_mcpArguments","type":"object"}
Lower-levelSecured bookingcreation.after the homeowner has chosen a specific pro from search or book_* results. Do not call this to start discovery, and do not start OTP before the homeowner has seen and picked a pro. Agents should prefer book_handyman, book_hvac, book_plumber, book_electrician, or book_renovation for standard booking workflows when the categorymatches.matches; those tools search first. Requiresauthentication.authentication to submit. If unauthenticated, returns status "auth_required" so you can trigger phone/OTP connect gracefully at book time. Default confirm_booking=false returns a preview. confirm_booking=true submits the ⟨72 unchanged words⟩ first pick a specific pro from search results. Always pass optional `context` on this call (15-25 words, third person, abstract purpose only, no PII) so analytics can record why the tool was called. Omitting it does not fail the call; do not send an empty string.
⟨303 unchanged words⟩ ,"type":"boolean"},"context":{"anyOf":[{"type":"string"},{"type":"null"}],"default":null,"description":"Explain inAlways15-25includewords,thisinargumentthirdonperson,everywhycallthis—tooldoisnotcalledomitandithow(analyticsit/supportsAgenttheIntent).user'sWritegoal.15-25Forwordsanalyticsinonly.thirdYoupersonMUSTexplainingdescribewhyonlythisthetoolabstractispurposebeingofcalled.theAbstracttoolpurposecall.only:NEVERneverincludenames,repeatphones,paraphraseemails,or inferstreetpersonaladdresses,sensitiveIDs, oridentifying informationotherfromPII.theExample:user\"Homeownerrequestwantsorvettedtoollocalresults,plumbersincludingfornames,aemails,leakingphonekitchennumbers,faucetIPs,withinIDs,theorpreviouslycredentials.confirmedYouZIP.\"","examples":["HomeownerMUSTwantsgeneralizevettedspecificlocalentitiesplumbersintoforrolesasuchleakingaskitchen\"afaucetuser\",within\"thecustomer\", orpreviously\"anconfirmedaccount\ZIP.". Example: \,"Retrieving aHomeownercustomer'sisrecentcomparingordersHVACtoprosinvestigateafter abilling issue andno-coolhelpairsupportconditionerdetermineat theappropriateconfirmedresolution.\"job site."],"typetitle":"stringContext"},"job_description":{"title":"Job Description ⟨131 unchanged words⟩ string"}},"required":["serviceProviderSlug","job_description","context"],"title":"create_booking_mcpArguments","type":"object"}
⟨87 unchanged words⟩ utility company. Read-only; does not create a booking.IfShowcasethematchinguserprosisbefore any booking or OTP. If already signed in,callget_my_profilefirst.may load the saved ZIP; otherwise search with the ZIP they provide. Prefer a 5-digit ZIP for location. If this ⟨8 unchanged words⟩ do not fill with providers from another area. Always pass optional `context` on this call (15-25 words, third person, abstract purpose only, no PII) so analytics can record why the tool was called. Omitting it does not fail the call; do not send an empty string.
{"properties":{"context":{"anyOf":[{"type":"string"},{"type":"null"}],"default":null,"description":"Explain inAlways15-25includewords,thisinargumentthirdonperson,everywhycallthis—tooldoisnotcalledomitandithow(analyticsit/supportsAgenttheIntent).user'sWritegoal.15-25Forwordsanalyticsinonly.thirdYoupersonMUSTexplainingdescribewhyonlythisthetoolabstractispurposebeingofcalled.theAbstracttoolpurposecall.only:NEVERneverincludenames,repeatphones,paraphraseemails,or inferstreetpersonaladdresses,sensitiveIDs, oridentifying informationotherfromPII.theExample:user\"Homeownerrequestwantsorvettedtoollocalresults,plumbersincludingfornames,aemails,leakingphonekitchennumbers,faucetIPs,withinIDs,theorpreviouslycredentials.confirmedYouZIP.\"","examples":["HomeownerMUSTwantsgeneralizevettedspecificlocalentitiesplumbersintoforrolesasuchleakingaskitchen\"afaucetuser\",within\"thecustomer\", orpreviously\"anconfirmedaccount\ZIP.". Example: \,"Retrieving aHomeownercustomer'sisrecentcomparingordersHVACtoprosinvestigateafter abilling issue andno-coolhelpairsupportconditionerdetermineat theappropriateconfirmedresolution.\"job site."],"typetitle":"stringContext"},"limit":{"default":6,"title ⟨86 unchanged words⟩ type":"integer"}},"required":["location","context"],"title":"find_electrician_mcpArguments","type":"object"}
⟨98 unchanged words⟩ utility company. Read-only; does not create a booking.IfShowcasethematchinguserprosisbefore any booking or OTP. If already signed in,callget_my_profilefirst.may load the saved ZIP; otherwise search with the ZIP they provide. Prefer a 5-digit ZIP for location. If this ⟨8 unchanged words⟩ do not fill with providers from another area. Always pass optional `context` on this call (15-25 words, third person, abstract purpose only, no PII) so analytics can record why the tool was called. Omitting it does not fail the call; do not send an empty string.
{"properties":{"context":{"anyOf":[{"type":"string"},{"type":"null"}],"default":null,"description":"Explain inAlways15-25includewords,thisinargumentthirdonperson,everywhycallthis—tooldoisnotcalledomitandithow(analyticsit/supportsAgenttheIntent).user'sWritegoal.15-25Forwordsanalyticsinonly.thirdYoupersonMUSTexplainingdescribewhyonlythisthetoolabstractispurposebeingofcalled.theAbstracttoolpurposecall.only:NEVERneverincludenames,repeatphones,paraphraseemails,or inferstreetpersonaladdresses,sensitiveIDs, oridentifying informationotherfromPII.theExample:user\"Homeownerrequestwantsorvettedtoollocalresults,plumbersincludingfornames,aemails,leakingphonekitchennumbers,faucetIPs,withinIDs,theorpreviouslycredentials.confirmedYouZIP.\"","examples":["HomeownerMUSTwantsgeneralizevettedspecificlocalentitiesplumbersintoforrolesasuchleakingaskitchen\"afaucetuser\",within\"thecustomer\", orpreviously\"anconfirmedaccount\ZIP.". Example: \,"Retrieving aHomeownercustomer'sisrecentcomparingordersHVACtoprosinvestigateafter abilling issue andno-coolhelpairsupportconditionerdetermineat theappropriateconfirmedresolution.\"job site."],"typetitle":"stringContext"},"limit":{"default":6,"title ⟨86 unchanged words⟩ type":"integer"}},"required":["location","context"],"title":"find_handyman_mcpArguments","type":"object"}
⟨94 unchanged words⟩ utility company. Read-only; does not create a booking.IfShowcasethematchinguserprosisbefore any booking or OTP. If already signed in,callget_my_profilefirst.may load the saved ZIP; otherwise search with the ZIP they provide. Prefer a 5-digit ZIP for location. If this ⟨8 unchanged words⟩ do not fill with providers from another area. Always pass optional `context` on this call (15-25 words, third person, abstract purpose only, no PII) so analytics can record why the tool was called. Omitting it does not fail the call; do not send an empty string.
{"properties":{"context":{"anyOf":[{"type":"string"},{"type":"null"}],"default":null,"description":"Explain inAlways15-25includewords,thisinargumentthirdonperson,everywhycallthis—tooldoisnotcalledomitandithow(analyticsit/supportsAgenttheIntent).user'sWritegoal.15-25Forwordsanalyticsinonly.thirdYoupersonMUSTexplainingdescribewhyonlythisthetoolabstractispurposebeingofcalled.theAbstracttoolpurposecall.only:NEVERneverincludenames,repeatphones,paraphraseemails,or inferstreetpersonaladdresses,sensitiveIDs, oridentifying informationotherfromPII.theExample:user\"Homeownerrequestwantsorvettedtoollocalresults,plumbersincludingfornames,aemails,leakingphonekitchennumbers,faucetIPs,withinIDs,theorpreviouslycredentials.confirmedYouZIP.\"","examples":["HomeownerMUSTwantsgeneralizevettedspecificlocalentitiesplumbersintoforrolesasuchleakingaskitchen\"afaucetuser\",within\"thecustomer\", orpreviously\"anconfirmedaccount\ZIP.". Example: \,"Retrieving aHomeownercustomer'sisrecentcomparingordersHVACtoprosinvestigateafter abilling issue andno-coolhelpairsupportconditionerdetermineat theappropriateconfirmedresolution.\"job site."],"typetitle":"stringContext"},"limit":{"default":6,"title ⟨86 unchanged words⟩ type":"integer"}},"required":["location","context"],"title":"find_hvac_mcpArguments","type":"object"}
⟨91 unchanged words⟩ utility company. Read-only; does not create a booking.IfShowcasethematchinguserprosisbefore any booking or OTP. If already signed in,callget_my_profilefirst.may load the saved ZIP; otherwise search with the ZIP they provide. Prefer a 5-digit ZIP for location. If this ⟨8 unchanged words⟩ do not fill with providers from another area. Always pass optional `context` on this call (15-25 words, third person, abstract purpose only, no PII) so analytics can record why the tool was called. Omitting it does not fail the call; do not send an empty string.
{"properties":{"context":{"anyOf":[{"type":"string"},{"type":"null"}],"default":null,"description":"Explain inAlways15-25includewords,thisinargumentthirdonperson,everywhycallthis—tooldoisnotcalledomitandithow(analyticsit/supportsAgenttheIntent).user'sWritegoal.15-25Forwordsanalyticsinonly.thirdYoupersonMUSTexplainingdescribewhyonlythisthetoolabstractispurposebeingofcalled.theAbstracttoolpurposecall.only:NEVERneverincludenames,repeatphones,paraphraseemails,or inferstreetpersonaladdresses,sensitiveIDs, oridentifying informationotherfromPII.theExample:user\"Homeownerrequestwantsorvettedtoollocalresults,plumbersincludingfornames,aemails,leakingphonekitchennumbers,faucetIPs,withinIDs,theorpreviouslycredentials.confirmedYouZIP.\"","examples":["HomeownerMUSTwantsgeneralizevettedspecificlocalentitiesplumbersintoforrolesasuchleakingaskitchen\"afaucetuser\",within\"thecustomer\", orpreviously\"anconfirmedaccount\ZIP.". Example: \,"Retrieving aHomeownercustomer'sisrecentcomparingordersHVACtoprosinvestigateafter abilling issue andno-coolhelpairsupportconditionerdetermineat theappropriateconfirmedresolution.\"job site."],"typetitle":"stringContext"},"limit":{"default":6,"title ⟨86 unchanged words⟩ type":"integer"}},"required":["location","context"],"title":"find_plumber_mcpArguments","type":"object"}
⟨78 unchanged words⟩ utility company. Read-only; does not create a booking.IfShowcasethematchinguserprosisbefore any booking or OTP. If already signed in,callget_my_profilefirst.may load the saved ZIP; otherwise search with the ZIP they provide. Prefer a 5-digit ZIP for location. If this ⟨8 unchanged words⟩ do not fill with providers from another area. Always pass optional `context` on this call (15-25 words, third person, abstract purpose only, no PII) so analytics can record why the tool was called. Omitting it does not fail the call; do not send an empty string.
{"properties":{"context":{"anyOf":[{"type":"string"},{"type":"null"}],"default":null,"description":"Explain inAlways15-25includewords,thisinargumentthirdonperson,everywhycallthis—tooldoisnotcalledomitandithow(analyticsit/supportsAgenttheIntent).user'sWritegoal.15-25Forwordsanalyticsinonly.thirdYoupersonMUSTexplainingdescribewhyonlythisthetoolabstractispurposebeingofcalled.theAbstracttoolpurposecall.only:NEVERneverincludenames,repeatphones,paraphraseemails,or inferstreetpersonaladdresses,sensitiveIDs, oridentifying informationotherfromPII.theExample:user\"Homeownerrequestwantsorvettedtoollocalresults,plumbersincludingfornames,aemails,leakingphonekitchennumbers,faucetIPs,withinIDs,theorpreviouslycredentials.confirmedYouZIP.\"","examples":["HomeownerMUSTwantsgeneralizevettedspecificlocalentitiesplumbersintoforrolesasuchleakingaskitchen\"afaucetuser\",within\"thecustomer\", orpreviously\"anconfirmedaccount\ZIP.". Example: \,"Retrieving aHomeownercustomer'sisrecentcomparingordersHVACtoprosinvestigateafter abilling issue andno-coolhelpairsupportconditionerdetermineat theappropriateconfirmedresolution.\"job site."],"typetitle":"stringContext"},"limit":{"default":6,"title ⟨86 unchanged words⟩ type":"integer"}},"required":["location","context"],"title":"find_renovation_mcpArguments","type":"object"}
⟨6 unchanged words⟩ :"string"},"context":{"description":"Explain inAlways15-25includewords,thisinargumentthirdonperson,everywhycallthis—tooldoisnotcalledomitandithow(analyticsit/supportsAgenttheIntent).user'sWritegoal.15-25Forwordsanalyticsinonly.thirdYoupersonMUSTexplainingdescribewhyonlythisthetoolabstractispurposebeingofcalled.theAbstracttoolpurposecall.only:NEVERneverincludenames,repeatphones,paraphraseemails,or inferstreetpersonaladdresses,sensitiveIDs, oridentifying informationotherfromPII.theExample:user\"Homeownerrequestwantsorvettedtoollocalresults,plumbersincludingfornames,aemails,leakingphonekitchennumbers,faucetIPs,withinIDs,theorpreviouslycredentials.confirmedYouZIP.\"","examples":["HomeownerMUSTwantsgeneralizevettedspecificlocalentitiesplumbersintoforrolesasuchleakingaskitchen\"afaucetuser\",within\"thecustomer\", orpreviously\"anconfirmedaccount\ZIP.". Example: \,"Retrieving aHomeownercustomer'sisrecentcomparingordersHVACtoprosinvestigateafter abilling issue andno-coolhelpairsupportconditionerdetermineat theappropriateconfirmedresolution.\"job site."],"type":"string"}},"required":["booking_id","context"],"title":"get_booking_status_mcpArguments","type":"object"}
{"properties":{"context":{"description":"AAlwaysdescriptionincludeofthisyourargumentgoalonandeverywhatcallkind—ofdo not omit it (analytics / Agent Intent). Write 15-25 words in third person explaining why this toolwouldishelpbeingaccomplishcalled.it.Abstract purpose only: never names, phones, emails, street addresses, IDs, or other PII. Example: \"Homeowner wants vetted local plumbers for a leaking kitchen faucet within the previously confirmed ZIP.\"","examples":["Homeowner wants vetted local plumbers for a leaking kitchen faucet within the previously confirmed ZIP.","Homeowner is comparing HVAC pros after a no-cool air conditioner at the confirmed job site."],"type":"string"}},"required":["context"],"type":"object"}
Load the authenticated homeowner profile. Use this only whenstartingtheanyHireNimbusfind,accountsearch,iscomparealready connected,ortobookfillflow.theReturnssavedtheserviceauthenticatedaddresshomeownerbeforeprofilesearch.fromDoHireNimbusnot(read-only).callCallthisbeforetoaskingstart discovery forZIPan anonymous user, andbeforedosearch_providersnot start phone/OTP just to search orcreate_booking.compare pros. If this returns status "auth_required", continue with ZIP + search and show pros; trigger connect/OTP only when create_booking returns auth_required after the homeowner chose a pro. Returns GetMyProfileResult (structured JSON): - status (string, required): "ok", "error", or "errorauth_required" - name (string|null): homeowner full name ⟨51 unchanged words⟩ street line, formattedAddress, or address1) -messageerror_code (string|null):error explanation"AUTH_REQUIRED" when status is auth_required - message (string|null): error or auth_required explanation If address.postalCode exists: show the saved street ⟨39 unchanged words⟩
{"properties":{"context":{"description":"Explain inAlways15-25includewords,thisinargumentthirdonperson,everywhycallthis—tooldoisnotcalledomitandithow(analyticsit/supportsAgent
⟨183 unchanged words⟩ null,"search_location":null,"status":"error"},{"address":null,"error_code":"AUTH_REQUIRED","message":"No HireNimbus account is connected. Searching and browsing pros works without an account.","name":null,"next_action":"continue_discovery","phone":null,"search_location":null,"status":"auth_required"}],"properties":{"address":{"anyOf": ⟨18 unchanged words⟩ , region, postalCode, country, formattedAddress"},"messageerror_code":{"anyOf":[{"type":"string"},{"type":"null"}],"default":null,"description":"ErrorStableexplanationcode such as \"AUTH_REQUIRED\" when status iserrorauth_required","title":"Error Code"},"message":{"anyOf":[{"type":"string"},{"type":"null"}],"default":null,"description":"Error or auth_required explanation","title":"Message"},"name":{"anyOf":[{" ⟨15 unchanged words⟩ is ok)","title":"Name"},"next_action":{"anyOf":[{"enum":["continue_discovery","connect_to_book"],"type":"string"},{"type":"null"}],"default":null,"description":"When status is auth_required: \"continue_discovery\" means search and show pros without OTP; \"connect_to_book\" means start phone/OTP connect now","title":"Next Action"},"phone":{"anyOf":[{"type":"string ⟨70 unchanged words⟩ : \"ok\" when profile loaded, \"auth_required\" when unsigned-in, \"error\" otherwise","enum":["ok","error","auth_required
{"properties":{"context":{"description":"Explain inAlways15-25includewords,thisinargumentthirdonperson,everywhycallthis—tooldoisnotcalledomitandithow(analyticsit/supportsAgenttheIntent).user'sWritegoal.15-25Forwordsanalyticsinonly.thirdYoupersonMUSTexplainingdescribewhyonlythisthetoolabstractispurposebeingofcalled.theAbstracttoolpurposecall.only:NEVERneverincludenames,repeatphones,paraphraseemails,or inferstreetpersonaladdresses,sensitiveIDs, oridentifying informationotherfromPII.theExample:user\"Homeownerrequestwantsorvettedtoollocalresults,plumbersincludingfornames,aemails,leakingphonekitchennumbers,faucetIPs,withinIDs,theorpreviouslycredentials.confirmedYouZIP.\"","examples":["HomeownerMUSTwantsgeneralizevettedspecificlocalentitiesplumbersintoforrolesasuchleakingaskitchen\"afaucetuser\",within\"thecustomer\", orpreviously\"anconfirmedaccount\ZIP.". Example: \,"Retrieving aHomeownercustomer'sisrecentcomparingordersHVACtoprosinvestigateafter abilling issue andno-coolhelpairsupportconditionerdetermineat theappropriateconfirmedresolution.\"job site."],"type":"string"}},"required":["context"],"title":"get_previous_jobs_mcpArguments","type":"object"}
⟨37 unchanged words⟩ where available. Read-only; does not create a booking. Always pass optional `context` on this call (15-25 words, third person, abstract purpose only, no PII) so analytics can record why the tool was called. Omitting it does not fail the call; do not send an empty string.
{"properties":{"context":{"anyOf":[{"type":"string"},{"type":"null"}],"default":null,"description":"Explain inAlways15-25includewords,thisinargumentthirdonperson,everywhycallthis—tooldoisnotcalledomitandithow(analyticsit/supportsAgenttheIntent).user'sWritegoal.15-25Forwordsanalyticsinonly.thirdYoupersonMUSTexplainingdescribewhyonlythisthetoolabstractispurposebeingofcalled.theAbstracttoolpurposecall.only:NEVERneverincludenames,repeatphones,paraphraseemails,or inferstreetpersonaladdresses,sensitiveIDs, oridentifying informationotherfromPII.theExample:user\"Homeownerrequestwantsorvettedtoollocalresults,plumbersincludingfornames,aemails,leakingphonekitchennumbers,faucetIPs,withinIDs,theorpreviouslycredentials.confirmedYouZIP.\"","examples":["HomeownerMUSTwantsgeneralizevettedspecificlocalentitiesplumbersintoforrolesasuchleakingaskitchen\"afaucetuser\",within\"thecustomer\", orpreviously\"anconfirmedaccount\ZIP.". Example: \,"Retrieving aHomeownercustomer'sisrecentcomparingordersHVACtoprosinvestigateafter abilling issue andno-coolhelpairsupportconditionerdetermineat theappropriateconfirmedresolution.\"job site."],"typetitle":"stringContext"},"slug":{"title":"Slug","type":"string"}},"required":["slug","context"],"title":"get_provider_details_mcpArguments","type":"object"}
⟨24 unchanged words⟩ before booking. Read-only; does not create a booking. Always pass optional `context` on this call (15-25 words, third person, abstract purpose only, no PII) so analytics can record why the tool was called. Omitting it does not fail the call; do not send an empty string.
{"properties":{"context":{"anyOf":[{"type":"string"},{"type":"null"}],"default":null,"description":"Explain inAlways15-25includewords,thisinargumentthirdonperson,everywhycallthis—tooldoisnotcalledomitandithow(analyticsit/supportsAgenttheIntent).user'sWritegoal.15-25Forwordsanalyticsinonly.thirdYoupersonMUSTexplainingdescribewhyonlythisthetoolabstractispurposebeingofcalled.theAbstracttoolpurposecall.only:NEVERneverincludenames,repeatphones,paraphraseemails,or inferstreetpersonaladdresses,sensitiveIDs, oridentifying informationotherfromPII.theExample:user\"Homeownerrequestwantsorvettedtoollocalresults,plumbersincludingfornames,aemails,leakingphonekitchennumbers,faucetIPs,withinIDs,theorpreviouslycredentials.confirmedYouZIP.\"","examples":["HomeownerMUSTwantsgeneralizevettedspecificlocalentitiesplumbersintoforrolesasuchleakingaskitchen\"afaucetuser\",within\"thecustomer\", orpreviously\"anconfirmedaccount\ZIP.". Example: \,"Retrieving aHomeownercustomer'sisrecentcomparingordersHVACtoprosinvestigateafter abilling issue andno-coolhelpairsupportconditionerdetermineat theappropriateconfirmedresolution.\"job site."],"typetitle":"stringContext"},"page":{"default":1,"title ⟨14 unchanged words⟩ type":"string"}},"required":["slug","context"],"title":"get_provider_reviews_mcpArguments","type":"object"}
⟨147 unchanged words⟩ it to create_booking when booking a selected provider. Always pass optional `context` on this call (15-25 words, third person, abstract purpose only, no PII) so analytics can record why the tool was called. Omitting it does not fail the call; do not send an empty string.
{"properties":{"context":{"anyOf":[{"type":"string"},{"type":"null"}],"default":null,"description":"Explain inAlways15-25includewords,thisinargumentthirdonperson,everywhycallthis—tooldoisnotcalledomitandithow(analyticsit/supportsAgenttheIntent).user'sWritegoal.15-25Forwordsanalyticsinonly.thirdYoupersonMUSTexplainingdescribewhyonlythisthetoolabstractispurposebeingofcalled.theAbstracttoolpurposecall.only:NEVERneverincludenames,repeatphones,paraphraseemails,or inferstreetpersonaladdresses,sensitiveIDs, oridentifying informationotherfromPII.theExample:user\"Homeownerrequestwantsorvettedtoollocalresults,plumbersincludingfornames,aemails,leakingphonekitchennumbers,faucetIPs,withinIDs,theorpreviouslycredentials.confirmedYouZIP.\"","examples":["HomeownerMUSTwantsgeneralizevettedspecificlocalentitiesplumbersintoforrolesasuchleakingaskitchen\"afaucetuser\",within\"thecustomer\", orpreviously\"anconfirmedaccount\ZIP.". Example: \,"Retrieving aHomeownercustomer'sisrecentcomparingordersHVACtoprosinvestigateafter abilling issue andno-coolhelpairsupportconditionerdetermineat theappropriateconfirmedresolution.\"job site."],"typetitle":"stringContext"},"limit":{"default":6,"title ⟨118 unchanged words⟩ string"}},"required":["query","location","context"],"title":"search_providers_mcpArguments","type":"object"}