HaloscanMCPServer

HaloscanMCPServer

3.5

A Model Context Protocol (MCP) server for interacting with the Haloscan SEO API. This server allows easy integration with Claude for Desktop, N8N, and other MCP-compatible clients.

Haloscan MCP Server

A Model Context Protocol (MCP) server for interacting with the Haloscan SEO API.
This server allows easy integration with Claude for Desktop, N8N, and other MCP-compatible clients.

Features

  • Exposes Haloscan SEO API functionality through MCP tools
  • Provides prompts for common SEO tasks
  • Easy integration with workflow automation tools like N8N

Tools

1. User Tools
  • get_user_credit
    • Retrieves the remaining credit for the user identified by the provided API key.
2. Keyword Explorer Tools
  • get_keywords_overview

    • Retrieves an overview of a specific keyword, providing key performance indicators such as search volume, competition level, and trends over time.
    • Inputs:
      • keyword (string): Requested keyword.
      • requested_data (string[]): Any combination of [keyword_match, related_search, related_question, similar_category, similar_serp, top_sites, similar_highlight, categories, synonyms, metrics, volume_history, serp ].
  • get_keywords_match

    • Retrieves keyword data based on an exact match search, providing detailed insights into how the specific keyword performs in search engines.
    • Input:
      • keyword (string): Requested keyword.
  • get_keywords_similar

    • Retrieves the list of keywords that are semantically or topically similar to a given keyword.
    • Input:
      • keyword (string): Requested keyword.
  • get_keywords_highlights

    • Retrieves the key performance highlights from a given keyword.
    • Input:
      • keyword (string): Requested keyword.
  • get_keywords_related

    • Retrieves the list of keywords that are contextually or topically related to a given keyword.
    • Input:
      • keyword (string): Requested keyword.
  • get_keywords_questions

    • Retrieves a list of question-based keywords related to a given keyword.
    • Input:
      • keyword (string): Requested keyword.
  • get_keywords_synonyms

    • Retrieves a list of synonyms related to a given keyword.
    • Input:
      • keyword (string): Requested keyword.
  • get_keywords_find

    • Retrieves comprehensive data for a given keyword or list of keywords, including search volume, competition, and trend analysis.
    • Inputs:
      • keyword (string): Requested keyword.
      • keywords (string[]): Requested keywords.
      • keywords_sources (string[]): Which strategies to use to find keywords from input (Any combination of [match, serp, related, highlights, categories, questions]).
  • get_keywords_site_structure

    • Retrieves the site structure data for a given domain, including the keywords associated with the site's pages, hierarchical organization, and relevant metadata for SEO optimization.
    • Input:
      • keyword (string): Requested keyword.
  • get_keywords_serp_compare

    • Retrieves a comparison of search engine results pages (SERP) for two or more keywords, providing insights into how they perform in search rankings.
    • Inputs:
      • keyword (string): Requested keyword.
      • period (string): The comparison period for SERPs (1 month, 3 months, 6 months, 12 months, custom).
  • get_keywords_serp_availableDates

    • Retrieves the available dates for historical SERP data of a given keyword at a given period.
    • Input:
      • keyword (string): Requested keyword.
  • get_keywords_serp_pageEvolution

    • Retrieves the evolution of SERP rankings for a specific keyword over time, showing how a page's position in search results has changed.
    • Inputs:
      • keyword (string): Requested keyword.
      • first_date (string): Date in YYYY-MM-DD format.
      • second_date (string): Date in YYYY-MM-DD format.
      • url (string)
  • get_keywords_bulk

    • Retrieves keyword data for multiple keywords at once in a bulk request.
    • Input:
      • keywords (string[]): Array containing the requested keywords.
  • get_keywords_scrap

    • Retrieves keyword data by scraping the search engine results pages (SERP) for a given keyword.
    • Input:
      • keywords (string[]): Array containing the requested keywords.
3. Site Explorer Tools
  • get_domains_overview

    • Retrieves a comprehensive SEO performance summary for a specific domain.
    • Inputs:
      • input (string): Requested url, domain or root domain.
      • requested_data (string[]): Requested data for the given url or domain, corresponding to the content of different sections of the haloscan overview page.
  • get_domains_positions

    • Retrieves the search engine ranking positions of a specified domain for one or more keywords.
    • Input:
      • input (string): Requested url, domain or root domain.
  • get_domains_top_pages

    • Retrieves the top-performing pages of a specified domain based on organic search metrics such as traffic, number of ranking keywords, and visibility.
    • Input:
      • input (string): Requested url, domain or root domain.
  • get_domains_history_positions

    • Retrieves historical ranking positions for a specific domain across selected keywords.
    • Inputs:
      • input (string): Requested url or domain.
      • date_from (string): Date in YYYY-MM-DD format.
      • date_to (string): Date in YYYY-MM-DD format.
  • get_domains_history_pages

    • Retrieves historical SEO performance data for the top pages of a specified domain.
    • Inputs:
      • input (string): Requested url or domain.
      • date_from (string): Date in YYYY-MM-DD format.
      • date_to (string): Date in YYYY-MM-DD format.
  • get_page_best_keywords

    • Retrieves the top-performing keywords for a specific URL, showing which search queries drive the most traffic and visibility to that page.
    • Input:
      • input (string[]): Requested urls.
  • get_domains_keywords

    • Retrieves all the keywords a domain ranks for in organic search results, along with their associated metrics such as ranking position, traffic, and search volume.
    • Inputs:
      • input (string): Requested url or domain.
      • keywords (string[]): Array containing the requested keywords.
  • get_domains_bulk

    • Retrieves SEO performance metrics for multiple domains in a single request.
    • Input:
      • inputs (string[]): Array containing the requested urls or domains.
  • get_domains_competitors

    • Retrieves a list of organic search competitors for a given domain based on overlapping keywords.
    • Input:
      • input (string): Requested url or domain.
  • get_domains_competitors_keywords_diff

    • Compares the keyword differences between a given domain and its competitors, highlighting keywords that one domain ranks for but the other does not.
    • Inputs:
      • input (string): Requested url or domain.
      • competitors (string[]): List of competitors to compare the input to.
  • get_domains_competitors_best_pages

    • Retrieves the best-performing pages of competitors for a given domain.
    • Inputs:
      • input (string): Requested url or domain.
      • competitors (string[]): List of competitors to compare the input to.
  • get_domains_competitors_keywords_best_positions

    • Retrieves the best-ranking keywords for a given domain compared to its competitors.
    • Inputs:
      • competitors (string[]): List of competitor domains or root domains.
      • keywords (string[]): List of keywords to look for.
  • get_domains_visibility_trends

    • Retrieves the visibility trend for a specific domain over time, showing how its search engine visibility has evolved.
    • Input:
      • input (string[]): Array containing the requested urls or domains.
  • get_domains_expired

    • Retrieves the visibility trend for a specific domain over time, showing how its search engine visibility has evolved.

Configuration

  1. Sign up for an Haloscan account.
  2. Choose a plan.
  3. Generate your API key from Configuration API page.
  4. Use the API key for the Haloscan server in the Claude Desktop configuration file.

Usage with Claude Desktop

Add this server to your Claude Desktop configuration file claude_desktop_config.json:

NPX

{
  "mcpServers": 
    "haloscan": 
      "command": "npx",
      "args": [
        "-y",
        "@modelcontextprotocol/haloscan-server",
        "start"  
      ],
      "env": {
        "HALOSCAN_API_KEY": "haloscan_api_key"
      }
    }
  }
}

License

MIT