{"name":"io.github.ilpr/shruwd-mcp","slug":"ilpr-shruwd-mcp","title":null,"description":"Set up a brand, read its AI-search visibility, and act on diagnostic findings.","url":"https://mcp.market/server/ilpr-shruwd-mcp","rating":null,"grade":"B","score":83,"certified":false,"status":"active","category":"search","tags":["search"],"presence":{"score":26,"stars":0,"forks":0,"downloads_week":135,"last_push_at":"2026-09-20T14:14:57.000Z","license":"MIT"},"uptime":null,"claimed":false,"transport":"npm","callable_via_gateway":false,"default_price_micros":0,"repository":"https://github.com/ilpr/shruwd-mcp","website":null,"version":"0.1.2","remotes":[],"packages":[{"registryType":"npm","identifier":"shruwd-mcp","version":"0.1.2","transport":{"type":"stdio"},"environmentVariables":[{"description":"API key minted in the Shruwd dashboard under Account -> API keys.","isRequired":true,"isSecret":true,"name":"SHRUWD_API_KEY"},{"description":"Override the API base URL. Defaults to https://shruwd.io/api/v1.","name":"SHRUWD_API_URL"}]}],"tools":[{"name":"shruwd_accept_suggestion","description":"Turns a suggestion into a tracked competitor, with exactly the rules of shruwd_add_competitor:","write_action":false,"price_micros":0,"input_schema":null},{"name":"shruwd_add_competitor","description":"Adds a competitor. Matching is exact, on word boundaries — no fuzzy matching, ever — because a","write_action":false,"price_micros":0,"input_schema":null},{"name":"shruwd_add_prompts","description":"Adds prompts — the questions asked of each engine every cycle. Write them the way a buyer would","write_action":false,"price_micros":0,"input_schema":null},{"name":"shruwd_archive_brand","description":"Archives a brand. Nothing is deleted; scheduling stops and history stays. Requires the owner","write_action":false,"price_micros":0,"input_schema":null},{"name":"shruwd_create_brand","description":"Creates a brand, its self entity (one alias = the name, one domain = the registrable domain) and","write_action":true,"price_micros":0,"input_schema":null},{"name":"shruwd_create_ingest_token","description":"Mints the token the brand's server sends its access logs with, and returns the endpoint to","write_action":true,"price_micros":0,"input_schema":null},{"name":"shruwd_dismiss_suggestion","description":"Not a competitor. Quiet for ninety days; suggested again only if the answers still name it.","write_action":false,"price_micros":0,"input_schema":null},{"name":"shruwd_get_brand","description":"One brand with its pipeline health: last successful cycle, next scheduled cycle, run success","write_action":false,"price_micros":0,"input_schema":null},{"name":"shruwd_get_crawlers","description":"Which AI crawlers fetched the brand's site, from its server logs, over a window. verifiedHits","write_action":false,"price_micros":0,"input_schema":null},{"name":"shruwd_get_finding","description":"One finding with its full evidence, recommendation, and the history of state changes. A finding","write_action":false,"price_micros":0,"input_schema":null},{"name":"shruwd_get_visibility","description":"Mention rate and share of voice for the brand and each competitor on one engine over a window","write_action":false,"price_micros":0,"input_schema":null},{"name":"shruwd_get_visibility_series","description":"The window metric at every cycle close in a range (default: the last ninety days, 30-day window):","write_action":false,"price_micros":0,"input_schema":null},{"name":"shruwd_get_workspace","description":"The plan, the entitlements in force (brands, the workspace-wide prompt pool, members, engines,","write_action":false,"price_micros":0,"input_schema":null},{"name":"shruwd_list_answers","description":"The latest individual AI answers for the brand, newest first: the prompt, the engine, whether the brand","write_action":false,"price_micros":0,"input_schema":null},{"name":"shruwd_list_brands","description":"Active brands with their prompt and competitor counts.","write_action":false,"price_micros":0,"input_schema":null},{"name":"shruwd_list_cycles","description":"Recent measurement cycles, newest first, with state (pending, running, complete, partial,","write_action":false,"price_micros":0,"input_schema":null},{"name":"shruwd_list_entities","description":"The brand itself (isSelf) and every competitor, each with the exact aliases, domains,","write_action":false,"price_micros":0,"input_schema":null},{"name":"shruwd_list_findings","description":"Diagnoses, ordered by severity, then confidence, then estimated impact. Each has a specific","write_action":false,"price_micros":0,"input_schema":null},{"name":"shruwd_list_prompts","description":"The brand's prompts. With an engine, each prompt carries its coverage over the window: how","write_action":false,"price_micros":0,"input_schema":null},{"name":"shruwd_list_suggestions","description":"Names the AI answers use that the brand does not track yet — the products a person would","write_action":false,"price_micros":0,"input_schema":null},{"name":"shruwd_remove_entity","description":"Closes a competitor as of now. The brand's own entity cannot be removed.","write_action":true,"price_micros":0,"input_schema":null},{"name":"shruwd_remove_prompt","description":"Deactivates a prompt. Nothing is deleted; its history stays readable.","write_action":true,"price_micros":0,"input_schema":null},{"name":"shruwd_run_measurement","description":"Schedules a measurement cycle now: every active prompt, on every entitled engine, repeated as","write_action":true,"price_micros":0,"input_schema":null},{"name":"shruwd_set_entity","description":"Sets the DESIRED aliases, domains, exclusions and context terms of an entity (the brand's own","write_action":false,"price_micros":0,"input_schema":null},{"name":"shruwd_suggest_setup","description":"Reads the brand's homepage and drafts ten prompts and up to six competitors. Nothing is saved to the","write_action":false,"price_micros":0,"input_schema":null},{"name":"shruwd_transition_finding","description":"Moves a finding: \"acknowledged\" (seen), \"fix_applied\" (the recommended change is live), or","write_action":false,"price_micros":0,"input_schema":null},{"name":"shruwd_update_brand","description":"Renames a brand or changes its timezone. The name is for display; matching uses the self","write_action":true,"price_micros":0,"input_schema":null},{"name":"shruwd_update_prompt","description":"Edits a prompt by its promptGroupId. Changing text or intent creates a new version under the","write_action":true,"price_micros":0,"input_schema":null}],"scan":{"score":83,"grade":"B","scanned_at":"2026-09-20T16:15:57.854Z","report":{"scannerVersion":"0.1.9","scannedAt":"2026-09-20T16:15:57.845Z","components":{"code":{"score":25,"max":25,"notes":["5 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":15,"max":15,"notes":["last push 0 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":"shruwd-mcp","version":"0.1.2","found":true,"license":"MIT","hasInstallScripts":false,"dependencyCount":3,"publishedAt":"2026-09-20T14:09:15.802Z","repositoryUrl":"git+https://github.com/ilpr/shruwd-mcp.git","weeklyDownloads":135}],"repo":{"found":true,"owner":"ilpr","repo":"shruwd-mcp","archived":false,"pushedAt":"2026-09-20T14:14:57Z","stars":0,"forks":0,"openIssues":0,"ownerType":"User","ownerAvatarUrl":"https://avatars.githubusercontent.com/u/100009916?v=4","ownerCreatedAt":"2022-02-19T04:02:21Z","license":"MIT"},"icon":{"url":null,"source":"none"},"presence":{"stars":0,"forks":0,"downloadsWeek":135,"license":"MIT","lastPushAt":"2026-09-20T14:14:57.000Z","score":26}}}},"grade_history":[],"reviews":[]}