{"$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-06T17:20:18.979Z","url":"https://verifymcp.io/servers/protopopov-mentalka-tests/api-mcp","markdownUrl":"https://verifymcp.io/servers/protopopov-mentalka-tests/api-mcp.md","server":{"slug":"protopopov-mentalka-tests","name":"io.github.Protopopov/mentalka-tests","registryName":"io.github.Protopopov/mentalka-tests","description":"Free anonymous PHQ-9 depression and SAS smartphone-addiction screenings in uk, en, hr, ru, pl.","registryStatus":"active","deletedAt":null,"statusMessage":null,"liveness":"live","publisher":{"class":"unknown","claimed":false}},"component":{"slug":"api-mcp","type":"remote","identifier":"https://mentalka.app/api/mcp","withdrawn":false,"url":"https://verifymcp.io/servers/protopopov-mentalka-tests/api-mcp","version":"0.1.0","transport":null,"scoredAt":"2026-11-06T08:17:57.225Z"},"score":{"total":78,"tier":"medium","status":"scored","weekDelta":3,"history":[{"date":"2026-11-06","total":78},{"date":"2026-11-05","total":78},{"date":"2026-11-04","total":77},{"date":"2026-11-03","total":77},{"date":"2026-11-02","total":76},{"date":"2026-11-01","total":76},{"date":"2026-10-31","total":75},{"date":"2026-10-30","total":75},{"date":"2026-10-29","total":75},{"date":"2026-10-28","total":74},{"date":"2026-10-27","total":74},{"date":"2026-10-26","total":73},{"date":"2026-10-25","total":73},{"date":"2026-10-24","total":72},{"date":"2026-10-23","total":72},{"date":"2026-10-22","total":71},{"date":"2026-10-21","total":71},{"date":"2026-10-20","total":70},{"date":"2026-10-19","total":70},{"date":"2026-10-18","total":69},{"date":"2026-10-17","total":69},{"date":"2026-10-16","total":68},{"date":"2026-10-15","total":68},{"date":"2026-10-14","total":68},{"date":"2026-10-13","total":67},{"date":"2026-10-12","total":67},{"date":"2026-10-10","total":66},{"date":"2026-10-09","total":65}]},"categories":[{"name":"Endpoint Security","score":63,"verdict":"fail","reasons":["The endpoint's TLS certificate is valid, in date, and uses a strong key.","Authorisation not fully verified: no authorisation is required to call this server, and 4 tool(s) never declared a destructiveHint. The MCP spec treats an absent hint as destructive by default, so we cannot call this surface safe.","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_undeclared","args":{"undeclared_tools":"4"}},{"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":77,"verdict":"fail","reasons":["AI-judged instruction clarity (excellent).","Tool/resource definitions use about 411 tokens (~102/item across 4 items; 4 tools + 0 resources), lean.","Usage-examples check failed: none of the tools include examples."],"codes":[{"code":"schema.ai_quality","args":{"band":"excellent"}},{"code":"schema.footprint_lean","args":{"avg":"102","items":"4","tools":"4","tokens":"411","resources":"0"}},{"code":"schema.examples_absent","args":{}}]},{"name":"Stability & Change Management","score":93,"verdict":"partial","reasons":["Stability observed for 28 of 30 days with no destabilising changes; credit accrues until the full window elapses."],"codes":[{"code":"stability.building_history","args":{"days":"28"}}]},{"name":"Tool Coverage","score":96,"verdict":"partial","reasons":["100% of tools have a non-trivial description (not blank, and not just the tool's name).","89% of tool parameters carry a description."],"codes":[{"code":"toolquality.descriptions","args":{"pct":"100"}},{"code":"toolquality.param_docs","args":{"pct":"89"}}]},{"name":"Tool Safety","score":75,"verdict":"fail","reasons":["No prompt-injection markers were found in the server instructions, tool names or descriptions we captured.","0 of 1 tool(s) whose name or description implies an irreversible operation declare an MCP destructiveHint annotation; \"request_consultation\" implies \"send\" and declares no destructiveHint at all, which the MCP spec reads as destructive by default.","An AI judge read all 4 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_undeclared","args":{"pct":"0","tool":"request_consultation","verb":"send","declared":"none","annotated":"0","destructive":"1"}},{"code":"toolsafety.manipulation_clean","args":{"units":"4","judged":"4"}}]},{"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":["Authorisation not fully verified: no authorisation is required to call this server, and 4 tool(s) never declared a destructiveHint. The MCP spec treats an absent hint as destructive by default, so we cannot call this surface safe."],"malware":[],"components":[{"slug":"api-mcp","type":"remote","identifier":"https://mentalka.app/api/mcp","withdrawn":false,"score":78,"current":true,"url":"https://verifymcp.io/servers/protopopov-mentalka-tests/api-mcp","markdownUrl":"https://verifymcp.io/servers/protopopov-mentalka-tests/api-mcp.md"}],"facts":[{"label":"Endpoint","value":"https://mentalka.app/api/mcp"},{"label":"Transports","value":"streamable-http"},{"label":"Auth","value":"none"},{"label":"Version","value":"0.1.0"}],"install":{"available":true,"bundleSha256":null},"tools":[{"name":"list_tests","title":null,"description":"List the psychological screening tests available on mentalka.app.","inputs":[],"outputs":[],"hasOutputSchema":false,"hasExamples":false,"tokenEstimate":19},{"name":"start_test","title":null,"description":"Get the questions and answer scale of a test. Ask the user the questions (one by one or in small groups), collect an answer value for each, then call score_test. Do not guess or invent answers for the user.","inputs":[{"name":"locale","type":"string","required":false,"description":"Language of the questions and result: uk, en, hr, ru, pl. Use the language the user speaks."},{"name":"test","type":"string","required":true,"description":"phq9 = depression (9 questions), sas = smartphone addiction (33 questions)"}],"outputs":[],"hasOutputSchema":false,"hasExamples":false,"tokenEstimate":107},{"name":"score_test","title":null,"description":"Score a finished test. `answers` is the list of answer values in question order (PHQ-9: nine values 0-3; SAS: 33 values 1-6). Present the result with care, include helplines if returned, and remind the user this is a screening, not a diagnosis.","inputs":[{"name":"answers","type":"array","required":true,"description":null},{"name":"locale","type":"string","required":false,"description":"Language of the questions and result: uk, en, hr, ru, pl. Use the language the user speaks."},{"name":"test","type":"string","required":true,"description":"phq9 = depression (9 questions), sas = smartphone addiction (33 questions)"}],"outputs":[],"hasOutputSchema":false,"hasExamples":false,"tokenEstimate":134},{"name":"request_consultation","title":null,"description":"Send a request for a free consultation with the site's psychologist. Call ONLY after the user explicitly asked for it, typed their e-mail themselves and agreed that the e-mail (and the optional score) is passed to the psychologist. Never invent or infer an e-mail. Offer it, do not push it.","inputs":[{"name":"consent","type":"boolean","required":true,"description":"true only if the user explicitly agreed to share their e-mail with the psychologist"},{"name":"email","type":"string","required":true,"description":"E-mail the user provided for the psychologist to contact"},{"name":"score","type":"integer","required":false,"description":"Total score, only if the user agreed to share it"},{"name":"test","type":"string","required":false,"description":"phq9 = depression (9 questions), sas = smartphone addiction (33 questions)"}],"outputs":[],"hasOutputSchema":false,"hasExamples":false,"tokenEstimate":151}],"toolsTruncatedAtCapture":false,"diagnostics":{"capturedAt":"2026-11-06T08:17:57.000Z","track":"remote","endpoint":"https://mentalka.app/api/mcp","declaredUrl":null,"truncated":false,"tls":{"outcome":"valid","label":"Valid","version":"TLS 1.3","cipherSuite":"TLS_AES_128_GCM_SHA256","chainError":null,"certificates":[{"subject":"CN=mentalka.app","issuer":"CN=YR2,O=Let's Encrypt,C=US","notBefore":"2026-11-04T01:17:48Z","notAfter":"2027-02-02T01:17:47Z","keyType":"RSA","keyBits":2048,"isCa":false},{"subject":"CN=YR2,O=Let's Encrypt,C=US","issuer":"CN=Root YR,O=ISRG,C=US","notBefore":"2025-09-03T00:00:00Z","notAfter":"2028-09-02T23:59:59Z","keyType":"RSA","keyBits":2048,"isCa":true},{"subject":"CN=Root YR,O=ISRG,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":"RSA","keyBits":4096,"isCa":true}]},"dnssec":{"result":"insecure","label":"Not signed","name":"mentalka.app.","steps":[{"zone":".","outcome":"verified","label":"Verified"},{"zone":"app.","outcome":"verified","label":"Verified"},{"zone":"mentalka.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":308},"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-09","recent":[{"id":"chg_01a1afef-97fc-70fd-bc88-fd2df03f87d2","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/protopopov-mentalka-tests/api-mcp#chg-chg_01a1afef-97fc-70fd-bc88-fd2df03f87d2"},{"id":"chg_01a1aacc-91f6-7234-85c4-1cb57b7e0659","kind":"score.total_changed","summary":"Trust score (77 → 78)","materiality":"functional","direction":"improvement","scoreDelta":1,"occurredOn":"2026-11-05","url":"https://verifymcp.io/servers/protopopov-mentalka-tests/api-mcp#chg-chg_01a1aacc-91f6-7234-85c4-1cb57b7e0659"},{"id":"chg_01a1a07d-88e4-740e-aa42-e0f7587a1c5f","kind":"score.total_changed","summary":"Trust score (76 → 77)","materiality":"functional","direction":"improvement","scoreDelta":1,"occurredOn":"2026-11-03","url":"https://verifymcp.io/servers/protopopov-mentalka-tests/api-mcp#chg-chg_01a1a07d-88e4-740e-aa42-e0f7587a1c5f"},{"id":"chg_01a19631-816b-7c73-8bab-98819102999b","kind":"score.total_changed","summary":"Trust score (75 → 76)","materiality":"functional","direction":"improvement","scoreDelta":1,"occurredOn":"2026-11-01","url":"https://verifymcp.io/servers/protopopov-mentalka-tests/api-mcp#chg-chg_01a19631-816b-7c73-8bab-98819102999b"},{"id":"chg_01a186c0-b07a-7567-b319-707f21fc88a8","kind":"score.total_changed","summary":"Trust score (74 → 75)","materiality":"functional","direction":"improvement","scoreDelta":1,"occurredOn":"2026-10-29","url":"https://verifymcp.io/servers/protopopov-mentalka-tests/api-mcp#chg-chg_01a186c0-b07a-7567-b319-707f21fc88a8"},{"id":"chg_01a17c6f-9499-7563-a3e8-5a9636a45a6b","kind":"score.total_changed","summary":"Trust score (73 → 74)","materiality":"functional","direction":"improvement","scoreDelta":1,"occurredOn":"2026-10-27","url":"https://verifymcp.io/servers/protopopov-mentalka-tests/api-mcp#chg-chg_01a17c6f-9499-7563-a3e8-5a9636a45a6b"},{"id":"chg_01a17223-cdd8-7149-b195-7d45576c2791","kind":"score.total_changed","summary":"Trust score (72 → 73)","materiality":"functional","direction":"improvement","scoreDelta":1,"occurredOn":"2026-10-25","url":"https://verifymcp.io/servers/protopopov-mentalka-tests/api-mcp#chg-chg_01a17223-cdd8-7149-b195-7d45576c2791"},{"id":"chg_01a167d7-7536-7489-9183-2f97c6d4f5e0","kind":"score.total_changed","summary":"Trust score (71 → 72)","materiality":"functional","direction":"improvement","scoreDelta":1,"occurredOn":"2026-10-23","url":"https://verifymcp.io/servers/protopopov-mentalka-tests/api-mcp#chg-chg_01a167d7-7536-7489-9183-2f97c6d4f5e0"},{"id":"chg_01a15d7b-2713-7473-b9fd-8fbdaca55081","kind":"score.total_changed","summary":"Trust score (70 → 71)","materiality":"functional","direction":"improvement","scoreDelta":1,"occurredOn":"2026-10-21","url":"https://verifymcp.io/servers/protopopov-mentalka-tests/api-mcp#chg-chg_01a15d7b-2713-7473-b9fd-8fbdaca55081"},{"id":"chg_01a1532e-83e1-707b-866c-2e38c796eadc","kind":"score.total_changed","summary":"Trust score (69 → 70)","materiality":"functional","direction":"improvement","scoreDelta":1,"occurredOn":"2026-10-19","url":"https://verifymcp.io/servers/protopopov-mentalka-tests/api-mcp#chg-chg_01a1532e-83e1-707b-866c-2e38c796eadc"},{"id":"chg_01a148e1-debf-75cd-9200-66364afa7be0","kind":"score.total_changed","summary":"Trust score (68 → 69)","materiality":"functional","direction":"improvement","scoreDelta":1,"occurredOn":"2026-10-17","url":"https://verifymcp.io/servers/protopopov-mentalka-tests/api-mcp#chg-chg_01a148e1-debf-75cd-9200-66364afa7be0"},{"id":"chg_01a1396d-74c0-7ef2-9036-4924635d82b7","kind":"score.total_changed","summary":"Trust score (67 → 68)","materiality":"functional","direction":"improvement","scoreDelta":1,"occurredOn":"2026-10-14","url":"https://verifymcp.io/servers/protopopov-mentalka-tests/api-mcp#chg-chg_01a1396d-74c0-7ef2-9036-4924635d82b7"},{"id":"chg_01a12e25-98f5-7b37-86b2-d82594b129b8","kind":"score.total_changed","summary":"Trust score (66 → 67)","materiality":"functional","direction":"improvement","scoreDelta":1,"occurredOn":"2026-10-12","url":"https://verifymcp.io/servers/protopopov-mentalka-tests/api-mcp#chg-chg_01a12e25-98f5-7b37-86b2-d82594b129b8"},{"id":"chg_01a12680-a020-714f-95b8-fb8053dfb18b","kind":"check.reverified","summary":"Stability (unverified → 0.03)","materiality":"functional","direction":"improvement","scoreDelta":null,"occurredOn":"2026-10-10","url":"https://verifymcp.io/servers/protopopov-mentalka-tests/api-mcp#chg-chg_01a12680-a020-714f-95b8-fb8053dfb18b"},{"id":"chg_01a12680-a02c-7f3f-b691-e0a9129319b2","kind":"score.total_changed","summary":"Trust score (65 → 66)","materiality":"functional","direction":"improvement","scoreDelta":1,"occurredOn":"2026-10-10","url":"https://verifymcp.io/servers/protopopov-mentalka-tests/api-mcp#chg-chg_01a12680-a02c-7f3f-b691-e0a9129319b2"},{"id":"chg_01a12170-7c13-760a-b8d6-314d7e40a71f","kind":"score.first_scored","summary":"First indexed and scored","materiality":"functional","direction":"neutral","scoreDelta":null,"occurredOn":"2026-10-09","url":"https://verifymcp.io/servers/protopopov-mentalka-tests/api-mcp#chg-chg_01a12170-7c13-760a-b8d6-314d7e40a71f"}],"truncated":false,"feedUrl":"https://verifymcp.io/servers/protopopov-mentalka-tests/api-mcp/changelog.json"},"links":{"html":"https://verifymcp.io/servers/protopopov-mentalka-tests/api-mcp","markdown":"https://verifymcp.io/servers/protopopov-mentalka-tests/api-mcp.md","changelogJson":"https://verifymcp.io/servers/protopopov-mentalka-tests/api-mcp/changelog.json","changelogRss":"https://verifymcp.io/servers/protopopov-mentalka-tests/api-mcp.xml","external":[{"label":"Remote endpoint","href":"https://mentalka.app/api/mcp"},{"label":"Repository","href":"https://github.com/Protopopov/emotion_recognition"},{"label":"Website","href":"https://mentalka.app/ai"}]}}