{"$schema":"https://verifymcp.io/schemas/trust-report.json","schemaVersion":1,"license":{"name":"CC BY-NC 4.0","url":"https://creativecommons.org/licenses/by-nc/4.0/"},"generatedAt":"2026-11-07T19:30:11.596Z","url":"https://verifymcp.io/servers/app-belcome-booking/belcome","markdownUrl":"https://verifymcp.io/servers/app-belcome-booking/belcome.md","server":{"slug":"app-belcome-booking","name":"Belcome","registryName":"app.belcome/booking","description":"Find salons, barbershops, spas and med spas on Belcome, see services, prices and open times.","registryStatus":"active","deletedAt":null,"statusMessage":null,"liveness":"live","publisher":{"class":"unknown","claimed":false}},"component":{"slug":"belcome","type":"remote","identifier":"https://belcome.app/mcp","withdrawn":false,"url":"https://verifymcp.io/servers/app-belcome-booking/belcome","version":"1.0.0","transport":null,"scoredAt":"2026-11-07T01:00:47.641Z"},"score":{"total":86,"tier":"high trust","status":"scored","weekDelta":4,"history":[{"date":"2026-11-07","total":86},{"date":"2026-11-06","total":85},{"date":"2026-11-05","total":85},{"date":"2026-11-04","total":84},{"date":"2026-11-03","total":84},{"date":"2026-11-02","total":83},{"date":"2026-11-01","total":83},{"date":"2026-10-31","total":82},{"date":"2026-10-30","total":82},{"date":"2026-10-29","total":81},{"date":"2026-10-28","total":81},{"date":"2026-10-27","total":81},{"date":"2026-10-26","total":80},{"date":"2026-10-25","total":80},{"date":"2026-10-24","total":79},{"date":"2026-10-23","total":78},{"date":"2026-10-22","total":78},{"date":"2026-10-21","total":77},{"date":"2026-10-20","total":77},{"date":"2026-10-19","total":76},{"date":"2026-10-18","total":76},{"date":"2026-10-17","total":76},{"date":"2026-10-16","total":75},{"date":"2026-10-15","total":75},{"date":"2026-10-14","total":74},{"date":"2026-10-13","total":74},{"date":"2026-10-12","total":73}]},"categories":[{"name":"Endpoint Security","score":80,"verdict":"fail","reasons":["The endpoint's TLS certificate is valid, in date, and uses a strong key.","No authorisation is required to call this server. Nothing on it is marked destructive, but we can't show that an anonymous caller can only read: full credit needs the server to list at least one tool and every tool to be verifiably read-only. We use a best-effort check of tool names and descriptions to tell read-only tools from tools that change things, so some genuinely read-only tools may not get full credit. Names that start with a read verb (get, list, read, search and similar) and accurate readOnlyHint annotations help. Meet that to earn full credit, or require authorisation.","HTTPS is enforced; there's no plaintext access path.","The HSTS (Strict-Transport-Security) header is present.","DNSSEC check failed: this domain isn't protected by DNSSEC."],"codes":[{"code":"tls.valid","args":{}},{"code":"auth.none_no_destructive","args":{}},{"code":"https.enforced","args":{}},{"code":"headers.hsts_present","args":{}},{"code":"dnssec.absent","args":{}}]},{"name":"Transport & Reachability","score":100,"verdict":"pass","reasons":["Verified streamable-http transport via a live MCP handshake."],"codes":[{"code":"transport.verified","args":{"transport":"streamable-http"}}]},{"name":"Schema Quality & AI Usability","score":75,"verdict":"fail","reasons":["AI-judged instruction clarity (excellent).","Context-footprint check failed: tool/resource definitions use about 1342 tokens (~122/item across 11 items; 11 tools + 0 resources), over budget; trim descriptions and params.","Usage-examples check failed: none of the tools include examples."],"codes":[{"code":"schema.ai_quality","args":{"band":"excellent"}},{"code":"schema.footprint_heavy","args":{"avg":"122","items":"11","tools":"11","tokens":"1342","resources":"0"}},{"code":"schema.examples_absent","args":{}}]},{"name":"Stability & Change Management","score":87,"verdict":"partial","reasons":["Stability observed for 26 of 30 days with no destabilising changes; credit accrues until the full window elapses."],"codes":[{"code":"stability.building_history","args":{"days":"26"}}]},{"name":"Tool Coverage","score":100,"verdict":"pass","reasons":["100% of tools have a non-trivial description (not blank, and not just the tool's name).","100% of tool parameters carry a description."],"codes":[{"code":"toolquality.descriptions","args":{"pct":"100"}},{"code":"toolquality.param_docs","args":{"pct":"100"}}]},{"name":"Tool Safety","score":100,"verdict":"pass","reasons":["No prompt-injection markers were found in the server instructions, tool names or descriptions we captured.","We read all 11 captured tool definition(s), and no name or description among them implies an irreversible operation.","An AI judge read all 12 captured unit(s) of tool text and found none that tries to manipulate the model reading it."],"codes":[{"code":"toolsafety.injection_clean","args":{}},{"code":"toolsafety.destructive_none","args":{"tools":"11"}},{"code":"toolsafety.manipulation_clean","args":{"units":"12","judged":"12"}}]},{"name":"Capabilities","score":100,"verdict":"pass","reasons":["Implements a current MCP spec version (2026-07-28)."],"codes":[{"code":"protocol.current","args":{"version":"2026-07-28"}}]}],"inconclusive":[],"malware":[],"components":[{"slug":"belcome","type":"remote","identifier":"https://belcome.app/mcp","withdrawn":false,"score":86,"current":true,"url":"https://verifymcp.io/servers/app-belcome-booking/belcome","markdownUrl":"https://verifymcp.io/servers/app-belcome-booking/belcome.md"}],"facts":[{"label":"Endpoint","value":"https://belcome.app/mcp"},{"label":"Transports","value":"streamable-http"},{"label":"Auth","value":"none"},{"label":"Version","value":"1.0.0"}],"install":{"available":true,"bundleSha256":null},"tools":[{"name":"find_business","title":"Find a salon or spa","description":"Find salons, barbershops, spas and studios that take online bookings on Belcome, by name, service or city. Returns up to 10 businesses with their locations and booking page.","inputs":[{"name":"near","type":"string","required":false,"description":"City, state or ZIP code to narrow the search, e.g. \"Orlando\" or \"02601\"."},{"name":"query","type":"string","required":true,"description":"Business name, service or kind of place, e.g. \"balayage\", \"barber\", \"Cape Cod Nails\"."}],"outputs":[],"hasOutputSchema":false,"hasExamples":false,"tokenEstimate":108},{"name":"list_services","title":"List services and prices","description":"List the services a business offers online at one location: name, duration, price and the professionals who do each one. Use the ids with find_slots.","inputs":[{"name":"business","type":"string","required":true,"description":"The business id (\"business\" field) returned by find_business."},{"name":"location_id","type":"string","required":false,"description":"Location id from find_business. Defaults to the first location."}],"outputs":[],"hasOutputSchema":false,"hasExamples":false,"tokenEstimate":77},{"name":"find_slots","title":"Find open times","description":"Find open times for one service at a business, up to 14 days. Each time comes with a booking_url that opens the business's booking page with the service, professional and time already chosen; give that link to the person to confirm with their name and phone.","inputs":[{"name":"business","type":"string","required":true,"description":"The business id returned by find_business."},{"name":"from","type":"string","required":false,"description":"First day, YYYY-MM-DD in the location's timezone. Defaults to today."},{"name":"location_id","type":"string","required":false,"description":"Location id. Defaults to the first location."},{"name":"service_id","type":"string","required":true,"description":"Service id from list_services."},{"name":"staff_id","type":"string","required":false,"description":"Only this professional. Leave out for anyone available."},{"name":"start_time_before","type":"string","required":false,"description":"Optional latest start time, exclusive, HH:MM (24-hour) in the location timezone on every searched day. Must be later than start_time_from if both are given. Filters appointment starts, not end times."},{"name":"start_time_from","type":"string","required":false,"description":"Optional earliest start time, inclusive, HH:MM (24-hour) in the location timezone on every searched day. For afternoon use 12:00."},{"name":"through","type":"string","required":false,"description":"Last day, YYYY-MM-DD, at most 13 days after from. Defaults to a week."}],"outputs":[],"hasOutputSchema":false,"hasExamples":false,"tokenEstimate":260},{"name":"get_business","title":"Business details and hours","description":"Opening hours, phone, address, map point, languages, rating, links and frequently asked questions of one business location. Use it for \"is it open on Sunday?\" or \"what is the phone number?\" before or after find_slots.","inputs":[{"name":"business","type":"string","required":true,"description":"The business id (\"business\" field) returned by find_business."},{"name":"location_id","type":"string","required":false,"description":"Location id from find_business. Defaults to the first location."}],"outputs":[],"hasOutputSchema":false,"hasExamples":false,"tokenEstimate":94},{"name":"list_team","title":"Meet the team","description":"The professionals who take online bookings at a business location: name, role, short bio, the services each one does and their rating. Use the staff_id with find_slots to book with a specific person.","inputs":[{"name":"business","type":"string","required":true,"description":"The business id (\"business\" field) returned by find_business."},{"name":"location_id","type":"string","required":false,"description":"Location id from find_business. Defaults to the first location."}],"outputs":[],"hasOutputSchema":false,"hasExamples":false,"tokenEstimate":87},{"name":"list_reviews","title":"Client reviews","description":"The average rating and the latest client reviews of a business location, as shown on its booking page. Empty when the business does not collect reviews.","inputs":[{"name":"business","type":"string","required":true,"description":"The business id (\"business\" field) returned by find_business."},{"name":"location_id","type":"string","required":false,"description":"Location id from find_business. Defaults to the first location."}],"outputs":[],"hasOutputSchema":false,"hasExamples":false,"tokenEstimate":75},{"name":"list_offers","title":"Packages, memberships and gift cards","description":"Session packages and memberships a business sells online, and whether it sells gift cards, with prices. Give the person shop_url to buy: payment happens there, never in the chat.","inputs":[{"name":"business","type":"string","required":true,"description":"The business id (\"business\" field) returned by find_business."},{"name":"location_id","type":"string","required":false,"description":"Location id from find_business. Defaults to the first location."}],"outputs":[],"hasOutputSchema":false,"hasExamples":false,"tokenEstimate":83},{"name":"get_booking_policy","title":"Booking, cancellation and deposit rules","description":"Cancellation window, whether the business approves bookings, how far ahead one can book, deposit or prepayment and late-cancel or no-show fees. Use it for \"can I cancel?\", \"do I pay a deposit?\" before handing over booking_url.","inputs":[{"name":"business","type":"string","required":true,"description":"The business id (\"business\" field) returned by find_business."},{"name":"location_id","type":"string","required":false,"description":"Location id from find_business. Defaults to the first location."}],"outputs":[],"hasOutputSchema":false,"hasExamples":false,"tokenEstimate":97},{"name":"get_about","title":"About the business","description":"What the business says about itself on its booking page: tagline, \"about us\" story, studio policies (late arrival, parking, what to bring) and extra text blocks. Use it for \"what is this place like?\" or \"what should I know before I go?\".","inputs":[{"name":"business","type":"string","required":true,"description":"The business id (\"business\" field) returned by find_business."},{"name":"location_id","type":"string","required":false,"description":"Location id from find_business. Defaults to the first location."}],"outputs":[],"hasOutputSchema":false,"hasExamples":false,"tokenEstimate":103},{"name":"list_gallery","title":"Photo gallery","description":"The photos the business shows on its booking page (its work: cuts, colour, nails, tattoos...), each with the service it is tagged to and a booking link for that service. Use it for \"can I see their work?\" or \"do they do this style?\".","inputs":[{"name":"business","type":"string","required":true,"description":"The business id (\"business\" field) returned by find_business."},{"name":"location_id","type":"string","required":false,"description":"Location id from find_business. Defaults to the first location."}],"outputs":[],"hasOutputSchema":false,"hasExamples":false,"tokenEstimate":102},{"name":"list_addons","title":"Add-ons and extras","description":"Add-ons a business offers online at one location (a treatment extra, a longer session): name, duration, price and the services each one can be added to. They are picked on the booking page together with the main service, never booked alone.","inputs":[{"name":"business","type":"string","required":true,"description":"The business id (\"business\" field) returned by find_business."},{"name":"location_id","type":"string","required":false,"description":"Location id from find_business. Defaults to the first location."}],"outputs":[],"hasOutputSchema":false,"hasExamples":false,"tokenEstimate":97}],"toolsTruncatedAtCapture":false,"diagnostics":{"capturedAt":"2026-11-07T01:00:47.000Z","track":"remote","endpoint":"https://belcome.app/mcp","declaredUrl":null,"truncated":false,"tls":{"outcome":"valid","label":"Valid","version":"TLS 1.3","cipherSuite":"TLS_AES_256_GCM_SHA384","chainError":null,"certificates":[{"subject":"CN=belcome.app","issuer":"CN=YE2,O=Let's Encrypt,C=US","notBefore":"2026-10-01T13:45:18Z","notAfter":"2026-12-30T13:45:17Z","keyType":"ECDSA","keyBits":256,"isCa":false},{"subject":"CN=YE2,O=Let's Encrypt,C=US","issuer":"CN=Root YE,O=ISRG,C=US","notBefore":"2025-09-03T00:00:00Z","notAfter":"2028-09-02T23:59:59Z","keyType":"ECDSA","keyBits":384,"isCa":true},{"subject":"CN=Root YE,O=ISRG,C=US","issuer":"CN=ISRG Root X2,O=Internet Security Research Group,C=US","notBefore":"2026-05-13T00:00:00Z","notAfter":"2032-09-02T23:59:59Z","keyType":"ECDSA","keyBits":384,"isCa":true},{"subject":"CN=ISRG Root X2,O=Internet Security Research Group,C=US","issuer":"CN=ISRG Root X1,O=Internet Security Research Group,C=US","notBefore":"2026-05-13T00:00:00Z","notAfter":"2032-09-02T23:59:59Z","keyType":"ECDSA","keyBits":384,"isCa":true}]},"dnssec":{"result":"insecure","label":"Not signed","name":"belcome.app.","steps":[{"zone":".","outcome":"verified","label":"Verified"},{"zone":"app.","outcome":"verified","label":"Verified"},{"zone":"belcome.app.","outcome":"insecure_proven","label":"Unsigned (proven)"}]},"auth":{"outcome":"none","label":"No authorisation required","gate":null,"gateLabel":null,"status":200,"authorizationServers":[]},"httpsRedirect":{"outcome":"https_enforced","label":"HTTPS enforced","status":301},"transports":[{"transport":"streamable-http","outcome":"verified","label":"Verified","status":200,"followed":false}],"provenance":null,"installScripts":[],"installScriptsTotal":null,"vulnerabilities":[],"vulnerabilitiesTotal":null,"dependencies":null},"mismatches":[],"changelog":{"trackingSince":"2026-10-12","recent":[{"id":"chg_01a1b385-b8ae-78d4-9ca0-e851568084e5","kind":"score.total_changed","summary":"Trust score (85 → 86)","materiality":"functional","direction":"improvement","scoreDelta":1,"occurredOn":"2026-11-07","url":"https://verifymcp.io/servers/app-belcome-booking/belcome#chg-chg_01a1b385-b8ae-78d4-9ca0-e851568084e5"},{"id":"chg_01a1ae5f-36d3-74df-8ab9-e70c4596a79d","kind":"score.rubric_changed","summary":"We updated how we score, so this day's move reflects our rubric, not a change to the server","materiality":"functional","direction":"neutral","scoreDelta":null,"occurredOn":"2026-11-06","url":"https://verifymcp.io/servers/app-belcome-booking/belcome#chg-chg_01a1ae5f-36d3-74df-8ab9-e70c4596a79d"},{"id":"chg_01a1a938-f239-7236-a1fc-162d6954c4d1","kind":"score.total_changed","summary":"Trust score (84 → 85)","materiality":"functional","direction":"improvement","scoreDelta":1,"occurredOn":"2026-11-05","url":"https://verifymcp.io/servers/app-belcome-booking/belcome#chg-chg_01a1a938-f239-7236-a1fc-162d6954c4d1"},{"id":"chg_01a19eec-393c-7456-b644-1bfd1a9eb3ef","kind":"score.total_changed","summary":"Trust score (83 → 84)","materiality":"functional","direction":"improvement","scoreDelta":1,"occurredOn":"2026-11-03","url":"https://verifymcp.io/servers/app-belcome-booking/belcome#chg-chg_01a19eec-393c-7456-b644-1bfd1a9eb3ef"},{"id":"chg_01a1949f-5b0f-788c-a10b-e3a9e96efbed","kind":"score.total_changed","summary":"Trust score (82 → 83)","materiality":"functional","direction":"improvement","scoreDelta":1,"occurredOn":"2026-11-01","url":"https://verifymcp.io/servers/app-belcome-booking/belcome#chg-chg_01a1949f-5b0f-788c-a10b-e3a9e96efbed"},{"id":"chg_01a18a52-d8bb-7ad8-af55-5bbc18c7d1c0","kind":"score.total_changed","summary":"Trust score (81 → 82)","materiality":"functional","direction":"improvement","scoreDelta":1,"occurredOn":"2026-10-30","url":"https://verifymcp.io/servers/app-belcome-booking/belcome#chg-chg_01a18a52-d8bb-7ad8-af55-5bbc18c7d1c0"},{"id":"chg_01a18006-3932-7d17-83da-a072c209abeb","kind":"check.measure","summary":"Schema quality (1145 → 1342)","materiality":"functional","direction":"regression","scoreDelta":null,"occurredOn":"2026-10-28","url":"https://verifymcp.io/servers/app-belcome-booking/belcome#chg-chg_01a18006-3932-7d17-83da-a072c209abeb"},{"id":"chg_01a18006-3933-747e-b018-1b284c1db7ad","kind":"param.added_optional","summary":"“find_slots” added an optional parameter “start_time_before”","materiality":"cosmetic","direction":"neutral","scoreDelta":null,"occurredOn":"2026-10-28","url":"https://verifymcp.io/servers/app-belcome-booking/belcome#chg-chg_01a18006-3933-747e-b018-1b284c1db7ad"},{"id":"chg_01a18006-3933-79a1-bcb9-61b533f3e541","kind":"param.added_optional","summary":"“find_slots” added an optional parameter “start_time_from”","materiality":"cosmetic","direction":"neutral","scoreDelta":null,"occurredOn":"2026-10-28","url":"https://verifymcp.io/servers/app-belcome-booking/belcome#chg-chg_01a18006-3933-79a1-bcb9-61b533f3e541"},{"id":"chg_01a18006-3934-71e9-b6a8-f4249e47e341","kind":"tool.added","summary":"New tool “list_addons”","materiality":"functional","direction":"neutral","scoreDelta":null,"occurredOn":"2026-10-28","url":"https://verifymcp.io/servers/app-belcome-booking/belcome#chg-chg_01a18006-3934-71e9-b6a8-f4249e47e341"},{"id":"chg_01a18006-3934-7aac-858a-c10d2b7dd62a","kind":"server.instructions_changed","summary":"The server rewrote its instructions, which are the text every model session reads","materiality":"security","direction":"neutral","scoreDelta":null,"occurredOn":"2026-10-28","url":"https://verifymcp.io/servers/app-belcome-booking/belcome#chg-chg_01a18006-3934-7aac-858a-c10d2b7dd62a"},{"id":"chg_01a17ae0-0486-765e-a78d-e4c36d38f8ca","kind":"check.measure","summary":"Schema quality (932 → 1145)","materiality":"functional","direction":"regression","scoreDelta":null,"occurredOn":"2026-10-27","url":"https://verifymcp.io/servers/app-belcome-booking/belcome#chg-chg_01a17ae0-0486-765e-a78d-e4c36d38f8ca"},{"id":"chg_01a17ae0-0487-7429-969f-fb3aa64a7b5c","kind":"tool.added","summary":"New tool “get_about”","materiality":"functional","direction":"neutral","scoreDelta":null,"occurredOn":"2026-10-27","url":"https://verifymcp.io/servers/app-belcome-booking/belcome#chg-chg_01a17ae0-0487-7429-969f-fb3aa64a7b5c"},{"id":"chg_01a17ae0-0487-7bcf-adde-f6f928efc8b1","kind":"tool.added","summary":"New tool “list_gallery”","materiality":"functional","direction":"neutral","scoreDelta":null,"occurredOn":"2026-10-27","url":"https://verifymcp.io/servers/app-belcome-booking/belcome#chg-chg_01a17ae0-0487-7bcf-adde-f6f928efc8b1"},{"id":"chg_01a17ae0-0488-7166-9104-3a85daf9b0a5","kind":"server.instructions_changed","summary":"The server rewrote its instructions, which are the text every model session reads","materiality":"security","direction":"neutral","scoreDelta":null,"occurredOn":"2026-10-27","url":"https://verifymcp.io/servers/app-belcome-booking/belcome#chg-chg_01a17ae0-0488-7166-9104-3a85daf9b0a5"},{"id":"chg_01a17ae0-0488-7b76-8981-02d285b60043","kind":"score.total_changed","summary":"Trust score (80 → 81)","materiality":"functional","direction":"improvement","scoreDelta":1,"occurredOn":"2026-10-27","url":"https://verifymcp.io/servers/app-belcome-booking/belcome#chg-chg_01a17ae0-0488-7b76-8981-02d285b60043"},{"id":"chg_01a175b9-d989-7c83-912b-badc73824af7","kind":"check.measure","summary":"Schema quality (821 → 932)","materiality":"functional","direction":"regression","scoreDelta":null,"occurredOn":"2026-10-26","url":"https://verifymcp.io/servers/app-belcome-booking/belcome#chg-chg_01a175b9-d989-7c83-912b-badc73824af7"},{"id":"chg_01a175b9-d98b-7c87-b2f6-a19b8bb0cb7c","kind":"check.measure","summary":"Schema quality (good → excellent)","materiality":"functional","direction":"neutral","scoreDelta":null,"occurredOn":"2026-10-26","url":"https://verifymcp.io/servers/app-belcome-booking/belcome#chg-chg_01a175b9-d98b-7c87-b2f6-a19b8bb0cb7c"},{"id":"chg_01a175b9-d98c-74e3-823a-f8bbe96bdfe7","kind":"tool.added","summary":"New tool “get_booking_policy”","materiality":"functional","direction":"neutral","scoreDelta":null,"occurredOn":"2026-10-26","url":"https://verifymcp.io/servers/app-belcome-booking/belcome#chg-chg_01a175b9-d98c-74e3-823a-f8bbe96bdfe7"},{"id":"chg_01a175b9-d98c-7e5d-ad81-8a48b378cb9e","kind":"server.instructions_changed","summary":"The server rewrote its instructions, which are the text every model session reads","materiality":"security","direction":"neutral","scoreDelta":null,"occurredOn":"2026-10-26","url":"https://verifymcp.io/servers/app-belcome-booking/belcome#chg-chg_01a175b9-d98c-7e5d-ad81-8a48b378cb9e"}],"truncated":true,"feedUrl":"https://verifymcp.io/servers/app-belcome-booking/belcome/changelog.json"},"links":{"html":"https://verifymcp.io/servers/app-belcome-booking/belcome","markdown":"https://verifymcp.io/servers/app-belcome-booking/belcome.md","changelogJson":"https://verifymcp.io/servers/app-belcome-booking/belcome/changelog.json","changelogRss":"https://verifymcp.io/servers/app-belcome-booking/belcome.xml","external":[{"label":"Remote endpoint","href":"https://belcome.app/mcp"},{"label":"Website","href":"https://www.belcome.app/help/ai-assistants/"}]}}