{"name":"io.github.sunsiyuan/human-survey","slug":"sunsiyuan-human-survey","title":null,"description":"Self-reported attribution: which channel and which creator your users first heard you from.","url":"https://mcp.market/server/sunsiyuan-human-survey","rating":null,"grade":"B","score":78,"certified":false,"status":"active","category":"other","tags":[],"presence":{"score":21,"stars":1,"forks":0,"downloads_week":36,"last_push_at":"2026-08-01T06:44:24.000Z","license":"MIT"},"uptime":null,"claimed":false,"transport":"npm","callable_via_gateway":false,"default_price_micros":0,"repository":"https://github.com/sunsiyuan/human-survey","website":null,"version":"1.2.0","remotes":[],"packages":[{"registryType":"npm","identifier":"humansurvey-mcp","version":"1.2.0","transport":{"type":"stdio"},"environmentVariables":[{"description":"Your HumanSurvey API key (starts with hs_sk_). Get one at https://www.humansurvey.co","isRequired":true,"format":"string","isSecret":true,"name":"HUMANSURVEY_API_KEY"}]}],"tools":[{"name":"configure_form","description":"","write_action":false,"price_micros":0,"input_schema":null},{"name":"create_form","description":"Create a form and return its id, its respondent URL, and the iframe and postMessage listener to embed that URL in a host page. The form has no questions yet and shows nothing to respondents until it is configured. allowed_origins restricts which sites may embed it; leaving it empty allows any site, which means any site can spend this account\\u2019s response quota.","write_action":true,"price_micros":0,"input_schema":null},{"name":"get_attribution","description":"What respondents said, aggregated. Reports, per question, how many completed responses named each candidate out of how many answered that question, the unresolved answers in the same list, how often a follow-up question failed to find an answer, and revenue where conversion events have been recorded. Computed fresh on every call, including any mappings made since \\u2014 so a rollup of a past windo","write_action":false,"price_micros":0,"input_schema":null},{"name":"get_catalog","description":"List the platforms HumanSurvey knows: the slug to use as catalog_slug, the display label, and which class of channel it is. These are the named channels a respondent can be shown \\u2014 TikTok, ChatGPT, LinkedIn, Reddit and so on \\u2014 plus the descriptive options that have no brand behind them, like \"a friend or colleague told me\". No API key needed.","write_action":false,"price_micros":0,"input_schema":null},{"name":"get_form","description":"Read one form: its settings, and the question configuration currently shown to respondents \\u2014 every question, every candidate, and the order mode. Returns the configuration as JSON, because that is the exact shape a configuration write takes.","write_action":false,"price_micros":0,"input_schema":null},{"name":"list_forms","description":"List the forms on this account: id, name, respondent URL, whether it is active or paused, whether it has been configured with questions yet, and how many responses it has collected.","write_action":false,"price_micros":0,"input_schema":null},{"name":"list_unresolved","description":"The answers respondents typed instead of picking from the list, grouped by the exact text and ordered by how often it was typed. Reports the spelling variants seen, when each was first and last typed, and whether a mapping already covers it. These are verbatim words. Two texts that read alike may be different people, and a text may name somebody who is not on the candidate list at all.","write_action":false,"price_micros":0,"input_schema":null},{"name":"login","description":"Sign in with an email address and store an API key on this machine. Called with only an email, it mails a six-digit code and returns nothing usable \\u2014 the code has to come from the person, out of their inbox. Called with the email and that code, it stores a key at ~/.humansurvey/credentials and reports where it was written. The key itself is never printed. Signing in and signing up are the sam","write_action":false,"price_micros":0,"input_schema":null},{"name":"remap","description":"Record that a specific typed answer means a specific candidate. It applies to every response already carrying that text as well as every future one, so numbers reported for past windows change. The original text is never altered and a mapping can be revoked, but a report may already have been read. Only map a text whose meaning is established \\u2014 a text that merely resembles a candidate\\u2019s ","write_action":false,"price_micros":0,"input_schema":null},{"name":"revoke_remap","description":"Stop a mapping from applying. The typed answers it covered return to the unresolved list \\u2014 in past windows as well as future ones, because rollups join mappings when they are read rather than when they are made. Numbers already reported for those windows will therefore change. Nothing is deleted: the mapping is marked revoked and kept, so a report produced while it was live can still be expla","write_action":false,"price_micros":0,"input_schema":null}],"scan":{"score":78,"grade":"B","scanned_at":"2026-09-24T12:02:31.988Z","report":{"scannerVersion":"0.1.9","scannedAt":"2026-09-24T12:02:31.911Z","components":{"code":{"score":25,"max":25,"notes":["2 source files scanned"]},"reliability":{"score":-1,"max":20,"notes":["no gateway calls yet and no remote to probe"]},"poisoning":{"score":-1,"max":15,"notes":["tools not inspected (local package is not executed); not counted"]},"auth":{"score":6,"max":15,"notes":["static API keys via environment variables"]},"maintenance":{"score":12,"max":15,"notes":["last push 54 days ago"]},"identity":{"score":8,"max":10,"notes":["registry namespace matches repository owner","GitHub account older than a year"]}},"findings":[],"inputs":{"packages":[{"registryType":"npm","identifier":"humansurvey-mcp","version":"1.2.0","found":true,"license":"MIT","hasInstallScripts":false,"dependencyCount":2,"publishedAt":"2026-08-01T06:49:49.560Z","repositoryUrl":"git+https://github.com/sunsiyuan/human-survey.git","weeklyDownloads":36}],"repo":{"found":true,"owner":"sunsiyuan","repo":"human-survey","archived":false,"pushedAt":"2026-08-01T06:44:24Z","stars":1,"forks":0,"openIssues":0,"ownerType":"User","ownerAvatarUrl":"https://avatars.githubusercontent.com/u/5067813?v=4","ownerCreatedAt":"2013-07-22T20:04:50Z","license":"MIT"},"icon":{"url":"https://avatars.githubusercontent.com/u/5067813?v=4&s=128","source":"github"},"presence":{"stars":1,"forks":0,"downloadsWeek":36,"license":"MIT","lastPushAt":"2026-08-01T06:44:24.000Z","score":21}}}},"grade_history":[],"reviews":[]}