MCP toolsRivals and marketsUpdated
Compare two sites
What does mttr_compare do?
Two sites already read, rule by rule: the scores and stages side by side, and the rules each is ahead or behind on by the share of its pages passing. With view set to content, their pages by meaning instead. A key may make this call on the sites it has claimed.
When to use it
- You want to know where a rival does better.
- You want to see what two sites both write about.
What you ask
You say“Compare example.com with rival.example.”
mttr_compare({ site: "example.com", with: "rival.example" })
| Argument | Type | Needed | What it is |
|---|---|---|---|
site | Text | Yes | The site, as a domain such as example.com. |
with | Text | Yes | The other site, as a domain already read. |
view | One of these | No | rules (the default) or content.rulescontent |
What comes back
- Both scores and their stages.
- Each rule with the share of pages passing on each side.
- By content: pages both write about, and what only one does.
- The other site must have been read as well, named as with; a site set against itself is refused.
72example.com
66rival.example
Share of pages passing each rule.
Made-up sites and figures, to show the shape of the answer. The answer itself is JSON. A score says pages are well formed. It does not say an assistant cites the site.
Over HTTP
It is GET /api/v1/sites/{site}/compare, with your key as a bearer token:
curl "https://mttr.si/api/v1/sites/example.com/compare?with=rival.example" \
-H "Authorization: Bearer $MTTR_KEY"When it fails
| When | Status | What to do |
|---|---|---|
| Your assistant has no key yet | 401 over MCP | Sign up with mttr_signup, then connect again with the key it gives. |
| The key has not claimed the site | 404 | Claim it with mttr_claim, then mttr_claim_check. |
Every error’s wording is in the API reference.
The call in full, with its HTTP address, each argument’s type, who may make it and the call in four languages, is mttr_compare in the API reference.