Haloscan MCP Server
Integrates keyword research, domain performance metrics, and competitive SEO analysis into automated workflows via the Haloscan API.
Click on "Deploy Server".
Wait a few minutes for the server to deploy. Once ready, it will show a "Started" state.
In the chat, type
@followed by the MCP server name and your instructions, e.g., "@Haloscan MCP Server Give me an SEO overview for the keyword 'sustainable fashion'."
That's it! The server will respond to your query, and you can continue using it as needed.
Here is a step-by-step guide with screenshots.
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
Related MCP server: Haloscan MCP Server
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
Sign up for an Haloscan account.
Choose a plan.
Generate your API key from Configuration API page.
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",
"@occirank/haloscan-server",
"start"
],
"env": {
"HALOSCAN_API_KEY": "YOUR API KEY"
}
}
}
}License
MIT
Available Tools
33 toolsget_domains_bulkD
Obtenir des domaines en masse.
Inputs: inputs (required).
get_domains_competitorsC
Obtenir les concurrents des domaines.
Inputs: input (required).
get_domains_competitors_best_pagesC
Obtenir les meilleures pages des concurrents des domaines.
Inputs: input (required), competitors (required).
get_domains_competitors_keywords_diffC
Obtenir la différence de mots-clés entre les domaines et leurs concurrents.
Inputs: input (required), competitors (required).
get_domains_expiredC
Obtenir les domaines expirés.
Inputs: keyword.
get_domains_expired_revealC
Révéler les domaines expirés.
Inputs: root_domain_keys (required).
get_domains_gmb_backlinksC
Obtenir les backlinks des domaines GMB.
Inputs: input (required).
get_domains_gmb_backlinks_categoriesC
Obtenir les catégories des backlinks des domaines GMB.
Inputs: input (required).
get_domains_gmb_backlinks_mapC
Obtenir la carte des backlinks des domaines GMB.
Inputs: input (required).
get_domains_history_pagesC
Obtenir l’historique des pages des domaines.
Inputs: input (required), date_from (required), date_to (required).
get_domains_history_positionsC
Obtenir l’historique des positions des domaines.
Inputs: input (required), date_from (required), date_to (required).
get_domains_keywordsC
Obtenir les mots-clés des domaines.
Inputs: input (required), keywords (required).
get_domains_overviewD
Obtenir un aperçu des domaines.
Inputs: input (required), requested_data (required).
get_domains_positionsC
Obtenir les positions des domaines.
Inputs: input (required).
get_domains_top_pagesC
Obtenir les pages principales des domaines.
Inputs: input (required).
get_domains_visibility_trendsC
Obtenir les tendances de visibilité des domaines.
Inputs: input (required).
get_keywords_bulkC
Obtenir des mots-clés en masse.
Inputs: keywords (required).
get_keywords_findC
Trouver des mots-clés.
Inputs: keyword, keywords, keywords_sources.
get_keywords_highlightsD
Obtenir les points forts des mots-clés.
Inputs: keyword (required).
get_keywords_matchC
Obtenir la correspondance des mots-clés.
Inputs: keyword (required).
get_keywords_overviewD
Obtenir un aperçu des mots-clés.
Inputs: keyword (required), requested_data (required).
get_keywords_questionsC
Obtenir les questions liées aux mots-clés.
Inputs: keyword (required).
get_keywords_scrapD
Extraire les mots-clés.
Inputs: keywords (required).
get_keywords_serp_availableDatesB
Obtenir les dates disponibles des mots-clés dans les SERP.
Inputs: keyword (required).
get_keywords_serp_compareD
Comparer les mots-clés dans les SERP.
Inputs: keyword (required), period (required).
get_keywords_serp_pageEvolutionC
Obtenir l'évolution des pages SERP des mots-clés.
Inputs: keyword (required), first_date (required), second_date (required), url (required).
get_keywords_similarC
Obtenir des mots-clés similaires.
Inputs: keyword (required).
get_keywords_site_structureC
Obtenir la structure du site des mots-clés.
Inputs: keyword, keywords.
get_keywords_synonymsC
Obtenir les synonymes des mots-clés.
Inputs: keyword (required).
get_page_best_keywordsC
Obtenir les meilleurs mots-clés de la page.
Inputs: input (required).
get_user_creditA
Obtenir les informations de crédit de l'utilisateur.
Inputs: no named parameters.
set_api_keyC
Définir la clé API.
Inputs: apiKey (required).
Tool Schema Changelog
Recent tool additions, removals, and schema changes observed during successful MCP inspections.
Loading tool schema changelog…
TDQS
Scored across 33 tools
Most tools have distinct purposes focused on specific data types like domains, keywords, or pages, with clear naming that reduces overlap. However, some tools like get_keywords_find and get_keywords_scrap might be slightly ambiguous in their exact scope, though descriptions help differentiate them.
All tools follow a consistent snake_case pattern with a clear get_ or set_ prefix followed by resource and action, such as get_domains_overview or set_api_key. This uniformity makes the tool set predictable and easy to navigate.
With 33 tools, the count is excessive for a typical MCP server, likely overwhelming for agents and indicating poor scoping. While the domain (SEO/domain analysis) is broad, many tools could be consolidated or omitted without losing functionality.
The tool set comprehensively covers the SEO and domain analysis domain, including operations for domains, keywords, pages, and user management. It provides full lifecycle coverage with get operations for various data points and a set_api_key for configuration, leaving no obvious gaps.
Related MCP Connectors
SEO MCP server for keyword research, live SERPs, backlinks, site audits and AI visibility.
SEO MCP server for keyword research, SERP analysis, audits, and Search Console workflows.
Unified 15-tool SEO, SERP, clean Markdown & GEO (LLM citation Share-of-Voice) MCP server.
Audit, rank-track and analyze SEO for sites via an authenticated MCP server.
Related MCP Servers
- AlicenseNot gradedqualityDmaintenanceMCP server that enables AI assistants to perform SEO automation tasks including keyword research, SERP analysis, and competitor analysis through Google Ads API integration.1ISC
- -licenseCqualityNot gradedmaintenanceA Model Context Protocol server that exposes Haloscan SEO API functionality, allowing users to access keyword insights, domain analysis, and competitor research through Claude for Desktop and other MCP-compatible clients.32109 npm-
- AlicenseAqualityDmaintenanceAn MCP server that provides access to the Majestic SEO API, allowing users to retrieve metrics like Trust Flow, Citation Flow, and backlink data. It enables domain comparisons, anchor text analysis, and tracking of new or lost backlinks through nine specialized tools.99 npmMIT
- AlicenseCqualityDmaintenanceMCP server for Keys.so SEO API, enabling domain and keyword analysis, competitor research, and SEO metrics retrieval through natural language.1514ISC