Search / com.clickd/clickd
clickd
R0· no sign-inReads a site as search engines and AI assistants do, ranks its fixes, and checks them live.
v1.0.0 · active · website · descriptor JSON · versions
Search / com.clickd/clickd
R0· no sign-inReads a site as search engines and AI assistants do, ranks its fixes, and checks them live.
v1.0.0 · active · website · descriptor JSON · versions
{
"mcpServers": {
"clickd": {
"type": "http",
"url": "https://clickd.com/mcp",
"headers": {
"Authorization": "Bearer ${CLICKD_TOKEN}"
}
}
}
}claude mcp add --transport http clickd https://clickd.com/mcp --header "Authorization: Bearer ${CLICKD_TOKEN}"[mcp_servers.clickd]
url = "https://clickd.com/mcp"
bearer_token_env_var = "CLICKD_TOKEN"
{
"$schema": "https://opencode.ai/config.json",
"mcp": {
"clickd": {
"type": "remote",
"url": "https://clickd.com/mcp",
"enabled": true,
"headers": {
"Authorization": "Bearer {env:CLICKD_TOKEN}"
}
}
}
}{
"mcpServers": {
"clickd": {
"type": "http",
"url": "https://clickd.com/mcp",
"headers": {
"Authorization": "Bearer ${CLICKD_TOKEN}"
}
}
},
"deeplink": "cursor://anysphere.cursor-deeplink/mcp/install?name=clickd&config=eyJ0eXBlIjoiaHR0cCIsInVybCI6Imh0dHBzOi8vY2xpY2tkLmNvbS9tY3AiLCJoZWFkZXJzIjp7IkF1dGhvcml6YXRpb24iOiJCZWFyZXIgJHtDTElDS0RfVE9LRU59In19"
}{
"servers": {
"clickd": {
"type": "http",
"url": "https://clickd.com/mcp",
"headers": {
"Authorization": "Bearer ${CLICKD_TOKEN}"
}
}
}
}{
"mcpServers": {
"clickd": {
"httpUrl": "https://clickd.com/mcp",
"headers": {
"Authorization": "Bearer ${CLICKD_TOKEN}"
}
}
}
}extensions:
"clickd":
enabled: true
name: "clickd"
type: streamable_http
uri: "https://clickd.com/mcp"
headers:
"Authorization": "Bearer ${CLICKD_TOKEN}"
timeout: 300
Placeholders to fill from your own secret store: ${CLICKD_TOKEN}. The registry never accepts secret values.
protocol.modernprotocol.statelessprotocol.transportprotocol.list_ttlauth.prm, auth.as_metadata, auth.cimdauth.secret_in_urltools.descriptionstools.description_lengthtools.schemastools.annotationstools.directory_hintstools.token_costtools.api_dumptools.hidden_textstability.changesstability.rug_pullstability.new_linksdeps.known_vulns, deps.mcp_sdk_version, deps.resolvablemttr_schema_createremovedMakes JSON-LD for one page from the fields given, ready to paste, and fetches nothing. When: to write the structured data a fix asks for; call it with only type to see the fields. Instead: mttr_check with kind product to check a live product page. Inputs: `type` is one of the types offered; `as` a more exact one, such as Plumber; `fields` the values by field key, as text. Give only what the page shows. Returns: jsonld, script (ready to paste), missing, problems, recommended and fields. Fails: a type not offered says which are. Works with no key.
mttr_checkremovedChecks one live address now, as the free tools do: product data, a page as an agent reads it, an X card, a certificate, or location pages. When: before and after a fix to one page, link or host. Instead: mttr_rescan and mttr_changes for every page of a site; mttr_pages for a page as last read. Inputs: `kind` is product, agent, x_card, ssl or locations. `url` is the page's full address; for ssl, only its host is used; for locations, the brand's site. Returns: the findings, each with its state in a word and what to do when it is wrong. Fails: a private address is refused, and robots.txt is obeyed; the free tools' hourly allowance applies. Works with no key.
mttr_signupremovedSigns the person up with their email and returns their free key, shown once, with the command to connect with it. When: before any call that needs a key, when the person has none. Instead: mttr_claim, once connected with the key, to make a site theirs. Inputs: `email` is the person's own address. Returns: email, key, connect and next. Fails: an email already signed up, or not an email, says so; three an hour from one address. Needs no key.
mttr_leaderboardremovedLists the public leaderboard: every ranked site by its latest score, the board of one crowd, or a record. When: to show a person where a site places among every site, or sites like it. Instead: mttr_site for one site's own place; mttr_rivals for the sites closest to one site. Inputs: `in` (a line of work such as trades), `state` (two letters), `city` (needs state) and `size` narrow the board, together or alone. `record` gives one record in place of the places. `limit` and `offset` page it. Returns: total, offset, limit, sites, tiers and note; with record, its sites and what it counted. Fails: a crowd too small answers an empty board; drafts and closed sites are not ranked. Works with no key.
mttr_rulesremovedLists the rulebook: every rule clickd checks, with its id, stage, weight and fix. When: to explain a fix to a person, or to find a rule's id. Instead: mttr_brief for the rules one site fails; mttr_pages with failing for the pages failing one. Inputs: none. Returns: rules, each with id, title, stage, weight and fix. Fails: nothing to refuse. Works with no key.
mttr_proposalsremovedLists the person's proposals and where each stands, or one by id, and whether a site is set to approve or automatic. When: before work on a claimed site, and every few minutes after mttr_propose until it is answered. Instead: mttr_propose to make one; mttr_todo for the work itself. Inputs: `id` is one proposal from mttr_propose; deploy only once it says approved. `site` gives that site's proposals and its mode. Neither, every proposal; never both. Returns: with id, proposal and promise; otherwise proposals and promise, and with site, site and mode. Fails: id and site together are refused; one not the person's answers not found. Needs a person's key.
mttr_proposeremovedProposes a change before you deploy it, emailing the person what it is with Approve and Decline links that lapse in 72 hours. When: before each deploy to a site mttr_proposals says is set to approve. Instead: mttr_proposals with the id to wait for the answer; mttr_log_work, naming it, once carried out. Inputs: `site` is a domain, such as example.com. `title` is the change in a few words; `summary` what it does and why; `rule` the rule id it answers; `pages` the paths it changes, separated by commas; `diff` a unified diff, shown and never applied. Returns: proposal ({ id, state, deploy, ... }), note and promise. Fails: a site not claimed with this key answers not found; 20 proposals a site an hour at most. Needs a person's key.
mttr_claimremovedClaims a site for the person: the TXT record or file that proves it is theirs, then the check that finds it. When: to open a site's private parts, such as rivals, citations and proposals. Instead: mttr_signup first for a key; mttr_site for a public report, which needs no claim. Inputs: `site` is a domain, such as example.com. `step` is start (the default), for the record and file, or check, to look for either and add the site. Returns: with start, site, record, dns, file and note; with check, site, claimed and how. Fails: check before the proof is up answers claimed false; a new DNS record can take minutes to be seen. Needs a person's key.
mttr_rivalsremovedSets a site against its rivals from reads already kept: who they are, how close, and where it is behind. When: to pick the fixes that matter against the sites a buyer compares it with. Instead: mttr_leaderboard for places among every site; mttr_site for its own score. Inputs: `site` is a domain, such as example.com. `view` is competitors (the default: rivals doing similar work), near (closest in meaning), market (rule by rule), or rules or content (two sites side by side). `with` is the other site, which rules and content need; alone, it means rules. `limit` is for near, 10 if left out. Returns: host, then by view: local, nearby and elsewhere; sites; rules; ahead and behind; or pages. Fails: a site with no meaning yet answers found or embedded false; rules or content with no with says to give it. Needs a key and a claim.
mttr_changesremovedSays what a site's latest read changed against the one before: score, rules fixed and newly failing, pages added and removed. When: after mttr_rescan, every minute or two with its job until the read is done. Instead: mttr_rescan to ask for the read; mttr_site for the report as it now stands. Inputs: `site` is a domain, such as example.com. `job` is the id mttr_rescan returned: the reply then says where that read stands, with changes only once it is done. Returns: host, run, changes (null for a first read) and visits; with job, job ({ id, state, ahead }), changes null until done. Fails: a site never read, or a job for another site, answers not found; a failed read says so in job. Needs a key.
Showing the latest 10. Full history: list_changes · trend: quality JSON.
Checks run on what our credential-free, read-only probes observe; tools are never called and no code audit is performed. How it is computed.
+dns-namespace +website +reachable +uptime-96% +updated-13d-ago -no-repository
Derived from observable signals (official registry feed and our own credential-free probes); no code audit performed. How it is computed.
| remote | auth | reachable | uptime 30d | p50 | protocol | last ok |
|---|---|---|---|---|---|---|
https://clickd.com/mcp streamable-http | none | yes | 96% | 361 ms | 2025-06-18 | 2026-11-14 |
clickd_briefread-only | Gets a site's fixes as a work order: what to fix, in what order, how, why and on which pages. When: at the start of work on a site, and after clickd_changes says a read is done. Instead: clickd_site for the score to tell a person; clickd_todo for the next fix across all the person's sites. Inputs: `site` is a domain, like example.com. `format` is markdown (the default), the whole list, or steps: the four fixes worth the most as steps with pages and points, and words to hand another agent. Returns: with markdown, the Markdown text alone; with steps, JSON with steps, prompt, report and caveat. Fails: a site never read, or a draft, answers not found; clickd_rescan reads it. Works with no key. |
clickd_changesread-only | Says what a site's latest read changed against the one before: score, rules fixed and newly failing, pages added and removed. When: after clickd_rescan, every minute or two with its job until the read is done. Instead: clickd_rescan to ask for the read; clickd_site for the report as it now stands. Inputs: `site` is a domain, like example.com. `job` is the id clickd_rescan returned: the reply then says where that read stands, with changes only once it is done. Returns: host, run, changes (null for a first read) and visits; with job, job ({ id, state, ahead }), changes null until done. Fails: a site never read, or a job for another site, answers not found; a failed read says so in job. Needs a key. |
clickd_checkread-only | Checks one live address now, as the free tools do: product data, a page as an agent reads it, an X card, a certificate, or location pages. When: before and after a fix to one page, link or host. Instead: clickd_rescan and clickd_changes for every page of a site; clickd_pages for a page as last read. Inputs: `kind` is product, agent, x_card, ssl or locations. `url` is the page's full address; for ssl, only its host is used; for locations, the brand's site. Returns: the findings, each with its state in a word and what to do when it is wrong. Fails: a private address is refused, and robots.txt is obeyed; the free tools' hourly allowance applies. Works with no key. |
clickd_citationsread-only | Lists what assistants were found to cite for a site, question by question, from lookups already made, and the credits left. When: to tell a person whether assistants cite their site, at no cost. Instead: clickd_site for how well formed the pages are, which is not whether they are cited. Inputs: `site` is a domain, like example.com. Returns: host, rows, credits, price, perDay and note. Fails: rows is empty until a lookup is made. Needs a key and a claim. |
clickd_claim | Claims a site for the person: the TXT record or file that proves it is theirs, then the check that finds it. When: to open a site's private parts, such as rivals, citations and proposals. Instead: clickd_signup first for a key; clickd_site for a public report, which needs no claim. Inputs: `site` is a domain, like example.com. `step` is start (the default), for the record and file, or check, to look for either and add the site. Returns: with start, site, record, dns, file and note; with check, site, claimed and how. Fails: check before the proof is up answers claimed false; a new DNS record can take minutes to be seen. Needs a person's key. |
clickd_leaderboardread-only | Lists the public leaderboard: every ranked site by its latest score, the board of one crowd, or a record. When: to show a person where a site places among every site, or sites like it. Instead: clickd_site for one site's own place; clickd_rivals for the sites closest to one site. Inputs: `in` (a line of work such as trades), `state` (two letters), `city` (needs state) and `size` narrow the board, together or alone. `record` gives one record in place of the places. `limit` and `offset` page it. Returns: total, offset, limit, sites, tiers and note; with record, its sites and what it counted. Fails: a crowd too small answers an empty board; drafts and closed sites are not ranked. Works with no key. |
clickd_log_work | Records a step of work on a site: what you planned, changed or checked, or where you got stuck. When: after each step, including one that carries out a proposal or a queued task. Instead: clickd_propose before deploying to a site set to approve; clickd_todo for tasks waiting. Inputs: `site` is a domain, like example.com. `step` is planned, changed, checked or stuck; `did` says what. `found`, `files` and `rules` (comma separated) add detail. `proposal` names the proposal carried out, `task` the queued task finished. Never send private data. Returns: kept, site, step and note, with proposal or task and left when given. Fails: a proposal or task not the person's keeps nothing and says so. Needs a person's key. |
clickd_pagesread-only | Lists the pages of a site's latest read with status, depth, words and failing rules, or gives one page in full. When: to find the pages behind a fix, or everything wrong with one page. Instead: clickd_brief for the fixes in order; clickd_check for a page as it is live now. Inputs: `site` is a domain, like example.com. `path`, such as /pricing, gives that page in full, and the rest is then ignored. `failing` (a rule id), `q`, `kind` and `section` narrow the list, `sort` and `dir` order it, `limit` and `offset` page it. Returns: host, run, total and pages; one page as path, status, failing, needsAPerson, linkedFrom, linksTo and quoted. Fails: a site or page not read answers not found. Needs a key; any key reads a public site. |
clickd_proposalsread-only | Lists the person's proposals and where each stands, or one by id, and whether a site is set to approve or automatic. When: before work on a claimed site, and every few minutes after clickd_propose until it is answered. Instead: clickd_propose to make one; clickd_todo for the work itself. Inputs: `id` is one proposal from clickd_propose; deploy only once it says approved. `site` gives that site's proposals and its mode. Neither, every proposal; never both. Returns: with id, proposal and promise; otherwise proposals and promise, and with site, site and mode. Fails: id and site together are refused; one not the person's answers not found. Needs a person's key. |
clickd_propose | Proposes a change before you deploy it, emailing the person Approve and Decline links that lapse in 72 hours. When: before each deploy to a site clickd_proposals says is set to approve. Instead: clickd_proposals with the id to wait for the answer; clickd_log_work, naming it, once carried out. Inputs: `site` is a domain, like example.com. `title` is the change in a few words; `summary` what it does and why; `rule` the rule id it answers; `pages` the paths it changes, comma separated; `diff` a unified diff, shown and never applied. Returns: proposal ({ id, state, deploy, ... }), note and promise. Fails: a site not claimed with this key answers not found; 20 proposals a site an hour at most. Needs a person's key. |
clickd_rescan | Puts a fresh read of a site in line and returns a job to follow. When: once a fix is deployed, or for a site clickd has never read. Instead: clickd_changes with the job to see what the read changed; clickd_check for one live page with no read. Inputs: `site` is a domain, like example.com. `reason` says what was changed, in a few words. Returns: job, added (false when a read was already in line), allowedAt and ahead. Fails: a site read in the last ten minutes answers allowedAt, when to ask again; a private address is refused. Needs a key. |
clickd_rivalsread-only | Sets a site against its rivals from kept reads: who they are, how close, and where it is behind. When: to pick the fixes that matter against the sites a buyer compares it with. Instead: clickd_leaderboard for places among every site; clickd_site for its own score. Inputs: `site` is a domain, like example.com. `view` is competitors (default: rivals doing similar work), near (closest in meaning), market (rule by rule), or rules or content (two sites side by side). `with` is the other site, for rules or content; alone, it means rules. `limit` is for near, 10 if left out. Returns: host, then by view: local, nearby and elsewhere; sites; rules; ahead and behind; or pages. Fails: a site with no meaning yet answers found or embedded false; rules or content with no with says to give it. Needs a key and a claim. |
clickd_rulesread-only | Lists the rulebook: every rule clickd checks, with its id, stage, weight and fix. When: to explain a fix to a person, or to find a rule's id. Instead: clickd_brief for the rules one site fails; clickd_pages with failing for the pages failing one. Inputs: none. Returns: rules, each with id, title, stage, weight and fix. Fails: nothing to refuse. Works with no key. |
clickd_schema_createread-only | Makes JSON-LD for one page from the fields given, ready to paste, and fetches nothing. When: to write the structured data a fix asks for; call it with only type to see the fields. Instead: clickd_check with kind product to check a live product page. Inputs: `type` is one of the types offered; `as` a more exact one, such as Plumber; `fields` the values by field key, as text. Give only what the page shows. Returns: jsonld, script (ready to paste), missing, problems, recommended and fields. Fails: a type not offered says which are. Works with no key. |
clickd_signup | Gets a free key, shown once, with the command to connect with it: the person's by email, or a throwaway one. When: when a call needs a key and there is none. Instead: clickd_claim, with a person's key, to make a site theirs. Inputs: `email` is the person's own address; leave it out for a throwaway key, which reads and asks for a few reads an hour. Returns: key, connect and next, with email or anonymous. Fails: an email already signed up, or not an email, says so; three an hour from one address. Needs no key. |
clickd_siteread-only | Gets a site's report from its latest read: score, grades, place among ranked sites, towns served, and every fix with its failing pages. When: to tell a person how a site stands. Instead: clickd_brief for the fixes as a work order; clickd_rivals for its rivals; clickd_check for one live page. Inputs: `site` is a domain, like example.com. `view` is report (the default) or agent: the whole-site Agent View from the same read, with each AI crawler as robots.txt treats it. Returns: host, score, grade, stages, grades, rank, served, fixes and card, a picture to send the person; with agent, the Agent View's figures. Fails: a site never read, a draft or one kept unnamed answers not found. Works with no key. |
clickd_todoread-only | Gets the person's work across all their sites: the next fix and every other by worth, or the tasks they queued for you. When: when you start work for the person, and when a reply says tasks are waiting. Instead: clickd_brief for every fix on one site; clickd_log_work with task to finish a queued task. Inputs: `show` is board (the default): next, every fix by worth, what slipped and what is fixed; or queue: the person's tasks for you, oldest first. Returns: with board, next, todo, slipped, fixed, waiting and note; with queue, tasks and note. Fails: an account with no claimed site has an empty board. Needs a person's key. |
Schemas: list_tools.
{
"name": "com.clickd/clickd",
"title": "clickd",
"$schema": "https://static.modelcontextprotocol.io/schemas/2025-12-11/server.schema.json",
"remotes": [
{
"url": "https://clickd.com/mcp",
"type": "streamable-http",
"headers": [
{
"name": "Authorization",
"isSecret": true,
"description": "Bearer and a free clickd key (mk_...) from https://clickd.com/agents. Without one, an agent can sign up with mttr_signup."
}
]
}
],
"version": "1.0.0",
"websiteUrl": "https://clickd.com/agents",
"description": "Reads a site as search engines and AI assistants do, ranks its fixes, and checks them live."
}