TraceTail
Browser fingerprinting for web apps: integration code for any framework, docs search and pricing.
我該用這個嗎
品質與安全性
根據工具定義與協定合規性的自動化分析。
上下文成本
這是每次將伺服器的工具載入模型上下文時所消耗的約略 token 數量。數量越高,可用於其他工作的注意力就越少。
安裝
一鍵安裝
將以下內容加入你的 `claude_desktop_config.json` 檔案:
{
"mcpServers": {
"tracetail": {
"url": "https://tracetail.io/mcp"
}
}
}遠端端點
https://tracetail.io/mcpstreamable-http它能做什麼
工具清單
工具(6)
🟢get_integration_code(framework, apiKey, firstPartyPath)
The exact install command and code to add TraceTail browser fingerprinting (a stable visitor ID for each browser, without cookies) to a web app built with the given framework, with where each file goes. Works without an API key (keyless mode, no sign-up); pass the site's public API key to fill it in.
輸入結構描述
{
"type": "object",
"properties": {
"framework": {
"description": "The app's framework: html (a plain script tag), javascript (any bundler), react, nextjs, vue, nuxt, angular or svelte.",
"type": "string",
"enum": [
"html",
"javascript",
"react",
"nextjs",
"vue",
"nuxt",
"angular",
"svelte"
]
},
"apiKey": {
"description": "The site's public TraceTail API key (tt_…), if it has one. Leave out to use the placeholder.",
"type": "string",
"pattern": "^tt_[0-9a-f]{64}$"
},
"firstPartyPath": {
"description": "The path of the site's first-party proxy, e.g. /k3v9, to load TraceTail from the site's own domain.",
"type": "string",
"pattern": "^\\/[a-z0-9](?:[a-z0-9-]{0,30}[a-z0-9])$"
}
},
"required": [
"framework"
],
"additionalProperties": false
}🟢search_docs(query, limit)
Searches TraceTail's documentation, pricing, comparison and blog for a topic (e.g. "next.js", "rate limits", "ad blockers", "GDPR", "server-side verification") and returns the matching sections with their URLs.
輸入結構描述
{
"type": "object",
"properties": {
"query": {
"description": "What to look for.",
"type": "string",
"minLength": 2,
"maxLength": 200
},
"limit": {
"description": "How many results to return (default 5).",
"type": "integer",
"minimum": 1,
"maximum": 10
}
},
"required": [
"query"
],
"additionalProperties": false
}🟢read_docs_page(path)
Returns a page of the TraceTail site as Markdown: "/docs" (the full documentation), "/pricing", "/vs-fingerprintjs", "/" (overview) or a blog post.
輸入結構描述
{
"type": "object",
"properties": {
"path": {
"description": "The page's path on tracetail.io.",
"type": "string",
"enum": [
"/",
"/pricing",
"/docs",
"/live-demo",
"/vs-fingerprintjs",
"/fingerprintjs-alternatives",
"/blog",
"/contact",
"/status",
"/privacy-policy",
"/terms-and-conditions",
"/blog/how-browser-fingerprinting-works",
"/blog/tracetail-vs-fingerprintjs",
"/blog/detecting-bots-without-cookies",
"/blog/browser-fingerprint-signals-explained",
"/blog/fingerprinting-without-cookies",
"/blog/gdpr-compliant-fingerprinting",
"/blog/browser-fingerprinting-research-2024-2025",
"/blog/banking-fraud-prevention",
"/blog/future-browser-fingerprinting",
"/blog/ecommerce-fraud-prevention",
"/blog/defeating-sophisticated-fraud",
"/blog/gaming-platform-security",
"/blog/privacy-first-fingerprinting",
"/blog/travel-hospitality-fraud-prevention",
"/blog/resilient-authentication"
]
}
},
"required": [
"path"
],
"additionalProperties": false
}🟢get_pricing(monthlyRequests)
TraceTail's prices and limits (1,000 identification requests free every month, then $0.10 per 1,000), with the monthly cost at a given volume and the same volume on Fingerprint (FingerprintJS) for comparison.
輸入結構描述
{
"type": "object",
"properties": {
"monthlyRequests": {
"description": "Expected identification requests a month.",
"type": "integer",
"minimum": 0,
"maximum": 10000000000
}
},
"additionalProperties": false
}🟡create_setup_link(domains, email, serverKey)
Gets TraceTail API keys for the person you work for: returns a link to give them, where they sign in with an emailed code and add a card or continue without a card, and a token. Then call check_setup_link with its id and token every few seconds: once they've finished, it returns an API key for each site (and a server key if you asked), once.
輸入結構描述
{
"type": "object",
"properties": {
"domains": {
"description": "The sites to create API keys for, like [\"example.com\", \"localhost\"]; include localhost for local development.",
"minItems": 1,
"maxItems": 5,
"type": "array",
"items": {
"type": "string"
}
},
"email": {
"description": "The person's email, if you know it: it prefills the page.",
"type": "string"
},
"serverKey": {
"description": "Also create a server key, so the backend can verify identifications.",
"type": "boolean"
}
},
"required": [
"domains"
],
"additionalProperties": false
}🟢check_setup_link(id, token)
Where a setup link stands. The first check after the person finishes returns the API keys (and the server key, if requested); they are not shown again. While they're still on the page, check again every few seconds.
輸入結構描述
{
"type": "object",
"properties": {
"id": {
"description": "The id create_setup_link returned (sl_…).",
"type": "string"
},
"token": {
"description": "The token create_setup_link returned (tt_setup_…).",
"type": "string"
}
},
"required": [
"id",
"token"
],
"additionalProperties": false
}社群
證據