Vaneform

Free website traffic checker: monthly visits, traffic sources, top countries and domain compares.

Should I use this

Quality & Safety

A
Description quality
96%
Schema completeness
78%
Naming quality
90%
Poisoning risk
100%
Permission match
100%
Protocol compliance
100%

Based on automated analysis of tool definitions and protocol compliance.

Context Cost

~1,480Tokens (tool definitions)
~894 BTypical response size
Moderate attention impact (1.16% of 128k context)

This is the approximate number of tokens consumed each time the server's tools are loaded into a model's context. Higher counts reduce the attention available for other tasks.

Install

One-Click Install

Add this to your `claude_desktop_config.json` file:

{
  "mcpServers": {
    "vaneform-mcp": {
      "url": "https://vaneform.com/mcp"
    }
  }
}

Remote endpoints

https://vaneform.com/mcpstreamable-http

What it can do

Tool inventory

Tools (10)

🟢 Read-only🟡 Write🔴 Delete⚪ Unknown
🟢research_site(tool, q, mode, region, limit, ...)

Free early-access standalone site research. Query Google ads by domain or advertiser, public Meta ads by keyword, AdSense accounts/related sites, outbound page links, collected ad text, recorded website opportunities or DR changes. Source acquisition is explicit and bounded; all these tools spend 0 points. Ad text and Publisher ID reverse lookups cover the recorded collection. Estimates and observations retain dates, scope and confidence.

Input Schema

{
  "type": "object",
  "properties": {
    "tool": {
      "type": "string",
      "enum": [
        "site-overview",
        "google-ads",
        "adsense",
        "meta-ads",
        "outbound-links",
        "ad-keywords",
        "discovery",
        "dr-growth"
      ]
    },
    "q": {
      "type": "string",
      "maxLength": 3000
    },
    "mode": {
      "type": "string",
      "enum": [
        "domain",
        "advertiser",
        "publisher",
        "keyword",
        "page"
      ]
    },
    "region": {
      "type": "string",
      "enum": [
        "ALL",
        "US",
        "GB",
        "DE",
        "FR",
        "CA",
        "AU",
        "IN",
        "BR",
        "JP",
        "KR",
        "SG",
        "HK"
      ]
    },
    "limit": {
      "type": "integer",
      "minimum": 1,
      "maximum": 100
    },
    "minVisits": {
      "type": "number",
      "minimum": 0
    },
    "maxVisits": {
      "type": "number",
      "minimum": 0
    },
    "maxAgeMonths": {
      "type": "integer",
      "minimum": 0,
      "maximum": 1200
    },
    "minDr": {
      "type": "number",
      "minimum": 0,
      "maximum": 100
    },
    "maxDr": {
      "type": "number",
      "minimum": 0,
      "maximum": 100
    },
    "cursor": {
      "type": "string",
      "maxLength": 8192
    }
  },
  "required": [
    "tool",
    "q"
  ],
  "additionalProperties": false
}
🟡get_research_workspace

Read the caller saved research, folders, private notes, tool history, publisher/ad monitors and in-app change notifications. Free; 0 points. Account ownership comes from the authenticated key.

Input Schema

{
  "type": "object",
  "properties": {},
  "additionalProperties": false
}
🟡save_research(query, label, folder, notes)

Save a standalone site-tool query in the caller workspace, with a folder and private notes. Free; 0 points.

Input Schema

{
  "type": "object",
  "properties": {
    "query": {
      "type": "object"
    },
    "label": {
      "type": "string",
      "minLength": 1,
      "maxLength": 300
    },
    "folder": {
      "type": "string",
      "maxLength": 80
    },
    "notes": {
      "type": "string",
      "maxLength": 4000
    }
  },
  "required": [
    "query",
    "label",
    "folder",
    "notes"
  ],
  "additionalProperties": false
}
🟢monitor_research(query, label, interval_days)

Monitor a Google Ads or AdSense query daily or weekly. Record newly observed public ads and connected sites as private in-app notifications. The first successful observation establishes a baseline. Free; 0 points.

Input Schema

{
  "type": "object",
  "properties": {
    "query": {
      "type": "object"
    },
    "label": {
      "type": "string",
      "minLength": 1,
      "maxLength": 300
    },
    "interval_days": {
      "type": "integer",
      "enum": [
        1,
        7
      ]
    }
  },
  "required": [
    "query",
    "label",
    "interval_days"
  ],
  "additionalProperties": false
}
🔴manage_research(action, id, active, interval_days)

Manage the caller private research: remove a saved target, pause/resume or change daily/weekly monitoring, remove a monitor, check current public data, or mark a change notification read. Use IDs from get_research_workspace. Free; 0 points.

Input Schema

{
  "type": "object",
  "properties": {
    "action": {
      "type": "string",
      "enum": [
        "remove_save",
        "update_monitor",
        "remove_monitor",
        "check_monitor",
        "read_event"
      ]
    },
    "id": {
      "type": "string",
      "format": "uuid"
    },
    "active": {
      "type": "boolean"
    },
    "interval_days": {
      "type": "integer",
      "enum": [
        1,
        7
      ]
    }
  },
  "required": [
    "action",
    "id"
  ],
  "additionalProperties": false
}
🟢lookup_domain(domain, include)

Read a cached Vaneform domain snapshot: scale (full-site or search visits), registry, site profile, and link-rank popularity. Optional include=baidu is cached Baidu rank. Optional include=search is Pro-only keyword rankings (ranked keywords, landing pages, search competitors) from this month's cache. Cache-only: status=missing means not cached, not zero traffic. Use for 查网站, 访问量, how big a site is, domain visits, registry age, backlink rank, 百度权重, or 关键词排名. A new ready or partial domain spends 1 point, or 10 when include=search finds no saved ranking or a saved ranking whose status is ready. include=search spends 0 when that saved status is missing, error, or partial.

Input Schema

{
  "type": "object",
  "properties": {
    "domain": {
      "type": "string",
      "description": "Host such as google.com. A leading www. is removed and the host is lowercased."
    },
    "include": {
      "type": "string",
      "description": "Comma-separated families: scale,registry,profile,popularity,baidu,search. Default is the first four. baidu is cached Baidu rank. search is Pro-only."
    }
  },
  "required": [
    "domain"
  ],
  "additionalProperties": false
}
🟢get_account

Read the caller plan, website lookup allowance, and point balance. This call spends 0. Use before a batch.

Input Schema

{
  "type": "object",
  "properties": {},
  "additionalProperties": false
}
🟢lookup_keyword(q)

Read a US/EN keyword brief: monthly searches, difficulty, CPC, and Google occupancy. Pro-only. At most 30 Google results. A cache hit is free; a successful miss spends 4 points. After trimming, longer than 200 characters is invalid. Matching uses the lowercased, space-collapsed first 80 characters. Use for 关键词查询.

Input Schema

{
  "type": "object",
  "properties": {
    "q": {
      "type": "string",
      "description": "Keyword such as google or apple. After trimming, longer than 200 characters is invalid. Matching keeps the lowercased, space-collapsed first 80 characters."
    }
  },
  "required": [
    "q"
  ],
  "additionalProperties": false
}
⚪compare_bulk(q)

Compare domains side by side. Returns scale and registry. Fetches traffic when monthly visits are missing. Spends 0 points. Up to 30 domains. Use for 批量对比.

Input Schema

{
  "type": "object",
  "properties": {
    "q": {
      "type": "string",
      "description": "Domains separated by commas or newlines, such as google.com,apple.com. Duplicate domains are kept once."
    }
  },
  "required": [
    "q"
  ],
  "additionalProperties": false
}
🟢compare_tld(q, s)

Compare the same registrable name across suffixes. Default suffixes are com,ai,io. example.com is read as example. Response suffixes and items follow a fixed suffix order; match the returned suffixes. Fetches traffic when monthly visits are missing. Spends 0 points. Use for 后缀对比.

Input Schema

{
  "type": "object",
  "properties": {
    "q": {
      "type": "string",
      "description": "Base name such as google. google.com is read as google."
    },
    "s": {
      "type": "string",
      "description": "Comma- or whitespace-separated suffixes. Default is com,ai,io. Duplicates are kept once. Response order follows the site suffix list."
    }
  },
  "required": [
    "q"
  ],
  "additionalProperties": false
}

Community

Rate this Server

Evidence

Recent observations

verifiedversion not recorded10 tools