tracetify-mcp
Advanced tools
+1
-1
| { | ||
| "name": "tracetify-mcp", | ||
| "mcpName": "io.github.tracetify/tracetify-mcp", | ||
| "version": "0.3.0", | ||
| "version": "0.3.1", | ||
| "description": "MCP server for Tracetify — trace how any product actually grew, from inside Claude Code or Cursor.", | ||
@@ -6,0 +6,0 @@ "keywords": [ |
+59
-12
| # tracetify-mcp | ||
| MCP server for [Tracetify](https://tracetify.com) — trace how any product | ||
| actually grew, without leaving Claude Code or Cursor. | ||
| actually grew, read your own Search Console, and audit a site, without leaving | ||
| Claude Code or Cursor. | ||
@@ -11,8 +12,26 @@ Most competitive tools tell you where a product stands **today**. Tracetify | ||
| Full setup guide and example questions: **[tracetify.com/mcp](https://tracetify.com/mcp)** | ||
| ## Setup | ||
| 1. Sign in at [tracetify.com](https://tracetify.com) and create an API key | ||
| in the dashboard. | ||
| 2. Add the server to your MCP client config: | ||
| Create an API key in the [dashboard](https://tracetify.com/dashboard/ai), then | ||
| pick one of the two transports. | ||
| **Claude Code — one command:** | ||
| ``` | ||
| claude mcp add tracetify -e TRACETIFY_API_KEY=ttfy_... -- npx -y tracetify-mcp | ||
| ``` | ||
| **Or skip the install entirely** — nothing to install, not even Node: | ||
| ``` | ||
| claude mcp add --transport http tracetify https://tracetify.com/api/mcp --header "Authorization: Bearer ttfy_..." | ||
| ``` | ||
| Same tools, same balance; the server runs on our side. | ||
| **Claude Desktop / Cursor** take the same JSON (Cursor reads | ||
| `~/.cursor/mcp.json`): | ||
| ```json | ||
@@ -30,7 +49,4 @@ { | ||
| Claude Code: `claude mcp add tracetify -e TRACETIFY_API_KEY=ttfy_... -- npx -y tracetify-mcp` | ||
| **Codex** uses TOML in `~/.codex/config.toml` — note the snake_case table name: | ||
| Cursor takes the same JSON in `~/.cursor/mcp.json`. Codex uses TOML in | ||
| `~/.codex/config.toml` — note the snake_case table name: | ||
| ```toml | ||
@@ -43,18 +59,49 @@ [mcp_servers.tracetify] | ||
| ## Try asking | ||
| Your agent picks the right tool on its own — these are real questions, not | ||
| placeholders: | ||
| - *How did photoai.com get its first users? Cite the sources.* | ||
| - *My page ranks #12 for "ai headshot generator" — what should I change to reach page one?* | ||
| - *We just deployed — audit example.com and fix what you find.* | ||
| - *Where can I get my new SaaS listed for real dofollow links?* | ||
| If your agent ever reaches for the wrong tool, say `trace <domain>` and it will | ||
| come straight here. | ||
| ## Tools | ||
| Tools that cost credits quote the price first and wait for you to say yes. | ||
| Reading existing reports never costs anything. | ||
| | Tool | Cost | What it does | | ||
| | --- | --- | --- | | ||
| | `search_reports` | free | Find existing growth reports by domain | | ||
| | `read_report` | free | Read a full report (timeline & verdict follow your account's unlocks) | | ||
| | `start_trace` | credits | Trace a new competitor from 12 sources (~60–90s); returns a cached report for free when a fresh one exists | | ||
| | `read_report` | free | Read a full report — timeline & verdict follow your account's unlocks | | ||
| | `start_trace` | 10 credits | Rebuild a competitor's growth from 12 sources (~60–90s); a fresh cached report comes back free | | ||
| | `get_trace` | free | Poll a running trace | | ||
| | `unlock_report` | credits | Permanently unlock a report's full timeline, evidence & SEO detail (idempotent — never charges twice) | | ||
| | `unlock_report` | 10 credits | Permanently unlock a report's full timeline, evidence & SEO detail (idempotent — never charges twice) | | ||
| | `gsc_overview` | free | Your own Search Console: clicks, impressions, period comparison | | ||
| | `gsc_queries` | free | Your real ranking keywords with position and CTR — find what sits at #5–20 | | ||
| | `gsc_pages` | free | Your pages by search performance, including high-impression low-CTR ones | | ||
| | `site_audit_start` | 3 credits | Crawl a site for broken links, missing titles, redirect chains, thin content | | ||
| | `site_audit_get` | free | Poll an audit and read the issue list grouped by severity | | ||
| | `research_domain_overview` | 8 credits | Estimated organic traffic and top keywords for any domain | | ||
| | `research_backlinks` | 8 credits | Referring domains, authority and anchor texts | | ||
| | `research_brand_lookup` | 30 credits | How AI assistants cite a brand: platforms, mentions, associated entities | | ||
| | `backlink_directories` | 8 credits | Hand-verified directories that actually give dofollow links (billed once per day) | | ||
| Fresh traces draw from your Tracetify credit balance — the same balance the | ||
| Everything draws from your Tracetify credit balance — the same balance the | ||
| website uses. No seats, no per-tool add-ons. Top up at | ||
| [tracetify.com/pricing](https://tracetify.com/pricing). | ||
| ## What this package does | ||
| It is a thin protocol adapter: MCP tool calls in, Tracetify HTTP API calls out. | ||
| No business logic, no data of its own — your API key never leaves your machine | ||
| except as an `Authorization` header to `tracetify.com`. | ||
| ## License | ||
| MIT |
+12
-1
@@ -155,3 +155,14 @@ /** | ||
| def.name, | ||
| { title: def.title, description: def.description, inputSchema }, | ||
| { | ||
| title: def.title, | ||
| description: def.description, | ||
| inputSchema, | ||
| // manifest 的 {readOnly, destructive} → 协议的 ToolAnnotations。 | ||
| // 只读工具宿主可"一律允许",计费工具保持逐次确认;注解是提示, | ||
| // 服务端的计费确认不因此少一行 | ||
| annotations: { | ||
| readOnlyHint: def.annotations.readOnly, | ||
| destructiveHint: def.annotations.destructive, | ||
| }, | ||
| }, | ||
| async (args) => call(buildRestRequest(def, args)) | ||
@@ -158,0 +169,0 @@ ); |
@@ -6,2 +6,6 @@ { | ||
| "name": "search_reports", | ||
| "annotations": { | ||
| "readOnly": true, | ||
| "destructive": false | ||
| }, | ||
| "title": "Search growth reports", | ||
@@ -25,2 +29,6 @@ "description": "Use this FIRST whenever the user asks how a product, competitor or domain grew, got traffic, or found its first users — a report may already exist and reading it is free. Returns matching report slugs for read_report. Searches by domain or name fragment.", | ||
| "name": "read_report", | ||
| "annotations": { | ||
| "readOnly": true, | ||
| "destructive": false | ||
| }, | ||
| "title": "Read a growth report", | ||
@@ -44,2 +52,6 @@ "description": "Read one growth report by slug (from search_reports or a finished trace). Free. Contains the origin story, dated evidence and SEO footprint — cite it instead of guessing how a product grew. If timeline fields show as locked, unlock_report can open them (that one costs credits).", | ||
| "name": "start_trace", | ||
| "annotations": { | ||
| "readOnly": false, | ||
| "destructive": false | ||
| }, | ||
| "title": "Trace how a product grew", | ||
@@ -69,2 +81,6 @@ "description": "Run this when search_reports finds nothing (or the user wants fresh data) for \"how did X grow?\". Rebuilds the growth story from 12 public sources in 60-90s. Costs credits from the Tracetify balance; returns an existing cached report free instead when one is fresh. Poll with get_trace.", | ||
| "name": "get_trace", | ||
| "annotations": { | ||
| "readOnly": true, | ||
| "destructive": false | ||
| }, | ||
| "title": "Check a running trace", | ||
@@ -88,2 +104,6 @@ "description": "Poll a trace started with start_trace. Free. When status is \"done\", read the result with read_report. Poll every 10-15s, not in a tight loop.", | ||
| "name": "unlock_report", | ||
| "annotations": { | ||
| "readOnly": false, | ||
| "destructive": false | ||
| }, | ||
| "title": "Unlock full timeline & evidence", | ||
@@ -107,2 +127,6 @@ "description": "Permanently unlock a report's full timeline, evidence and SEO detail for this account. Costs credits — quote the exact price to the user first (it is in the report's timelineLocked.cost field from read_report) and call this ONLY after they explicitly agree to spend. Idempotent: unlocking an already-unlocked report never charges twice. The verdict stays on the website — you are the analyst here.", | ||
| "name": "gsc_overview", | ||
| "annotations": { | ||
| "readOnly": true, | ||
| "destructive": false | ||
| }, | ||
| "title": "Search Console overview", | ||
@@ -126,2 +150,6 @@ "description": "Use this before touching SEO on the user's own site: clicks/impressions trend, device split and period comparison from THEIR connected Google Search Console — numbers no other tool has. Free. Requires GSC connected at tracetify.com/dashboard/gsc (this tool tells you if it is not).", | ||
| "name": "gsc_queries", | ||
| "annotations": { | ||
| "readOnly": true, | ||
| "destructive": false | ||
| }, | ||
| "title": "Search Console queries", | ||
@@ -145,2 +173,6 @@ "description": "The user's real ranking keywords with position, clicks and CTR — use when deciding what to write or which page to improve, e.g. finding queries at position 5-20 that are one push from page one. Free; own data from their connected Search Console. After you edit a page, this is how you verify it moved.", | ||
| "name": "gsc_pages", | ||
| "annotations": { | ||
| "readOnly": true, | ||
| "destructive": false | ||
| }, | ||
| "title": "Search Console pages", | ||
@@ -164,2 +196,6 @@ "description": "The user's pages ranked by search performance, including high-impression low-CTR pages whose titles/descriptions are underselling — fix those files right in this editor. Free; own data from their connected Search Console.", | ||
| "name": "site_audit_start", | ||
| "annotations": { | ||
| "readOnly": false, | ||
| "destructive": false | ||
| }, | ||
| "title": "Start a site audit", | ||
@@ -195,2 +231,6 @@ "description": "Run right after deploying: crawls the site and reports broken links, missing titles/descriptions, redirect chains, thin content and schema gaps — each finding names the page so you can fix it here. Costs credits (price returned before any charge on the confirmation field). Async: poll with site_audit_get.", | ||
| "name": "site_audit_get", | ||
| "annotations": { | ||
| "readOnly": true, | ||
| "destructive": false | ||
| }, | ||
| "title": "Read a site audit", | ||
@@ -214,2 +254,6 @@ "description": "Poll an audit started with site_audit_start (free to read). When finished, returns the issue list grouped by severity with affected URLs — work through it top-down and re-run after fixes.", | ||
| "name": "research_domain_overview", | ||
| "annotations": { | ||
| "readOnly": false, | ||
| "destructive": false | ||
| }, | ||
| "title": "Domain SEO overview", | ||
@@ -233,2 +277,6 @@ "description": "Estimated organic traffic, keyword count and top keywords for ANY domain — use to size up a competitor the user mentions. Costs credits; cached results are free, and repeated queries within a week hit the cache. For the user's own site prefer gsc_* (free, real data).", | ||
| "name": "research_backlinks", | ||
| "annotations": { | ||
| "readOnly": false, | ||
| "destructive": false | ||
| }, | ||
| "title": "Backlink profile", | ||
@@ -252,2 +300,6 @@ "description": "Who links to a domain: referring domains, authority and anchor texts. Use when planning link building or judging how defensible a competitor's ranking is. Costs credits; cached results are free. Pair with backlink_directories to find places the user can actually get listed.", | ||
| "name": "research_brand_lookup", | ||
| "annotations": { | ||
| "readOnly": false, | ||
| "destructive": false | ||
| }, | ||
| "title": "AI search visibility", | ||
@@ -271,2 +323,6 @@ "description": "How AI assistants (ChatGPT, Perplexity-class) cite a brand: platforms, mention counts and the entities it gets associated with. Use when the user asks \"does AI recommend us/them?\". Costs credits; cached results are free.", | ||
| "name": "backlink_directories", | ||
| "annotations": { | ||
| "readOnly": false, | ||
| "destructive": false | ||
| }, | ||
| "title": "Verified directory list", | ||
@@ -273,0 +329,0 @@ "description": "A hand-verified list of directories and launch platforms that actually give links — checked one by one, dead and nofollow-only entries removed. Use when the user wants backlinks or launch exposure for a new product; filter client-side by language/type/pricing. Costs credits once per day per account — repeat calls the same day are free, so refine freely.", |
Major refactor
Supply chain riskPackage has recently undergone a major refactor. It may be unstable or indicate significant internal changes. Use caution when updating to versions that include significant changes.
24160
18.87%498
15.55%105
81.03%1
-50%