Haloscan MCP Server
An MCP server for interacting with the Haloscan SEO API.
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.
- 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 ].
- Retrieves an overview of a specific keyword, providing key performance indicators such as search volume, competition level, and trends over time.
-
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.
- Retrieves keyword data based on an exact match search, providing detailed insights into how the specific keyword performs in search engines.
-
get_keywords_similar
- Retrieves the list of keywords that are semantically or topically similar to a given keyword.
- Input:
keyword(string): Requested keyword.
- Retrieves the list of keywords that are semantically or topically similar to a given keyword.
-
get_keywords_highlights
- Retrieves the key performance highlights from a given keyword.
- Input:
keyword(string): Requested keyword.
- Retrieves the key performance highlights from a given keyword.
-
get_keywords_related
- Retrieves the list of keywords that are contextually or topically related to a given keyword.
- Input:
keyword(string): Requested keyword.
- Retrieves the list of keywords that are contextually or topically related to a given keyword.
-
get_keywords_questions
- Retrieves a list of question-based keywords related to a given keyword.
- Input:
keyword(string): Requested keyword.
- Retrieves a list of question-based keywords related to a given keyword.
-
get_keywords_synonyms
- Retrieves a list of synonyms related to a given keyword.
- Input:
keyword(string): Requested keyword.
- Retrieves a list of synonyms related to a given 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]).
- Retrieves comprehensive data for a given keyword or list of keywords, including search volume, competition, and trend analysis.
-
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.
- 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.
-
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).
- Retrieves a comparison of search engine results pages (SERP) for two or more keywords, providing insights into how they perform in search rankings.
-
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.
- Retrieves the available dates for historical SERP data of a given keyword at a given period.
-
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)
- Retrieves the evolution of SERP rankings for a specific keyword over time, showing how a page's position in search results has changed.
-
get_keywords_bulk
- Retrieves keyword data for multiple keywords at once in a bulk request.
- Input:
keywords(string[]): Array containing the requested keywords.
- Retrieves keyword data for multiple keywords at once in a bulk request.
-
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.
- Retrieves keyword data by scraping the search engine results pages (SERP) for a given keyword.
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.
- Retrieves a comprehensive SEO performance summary for a specific domain.
-
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.
- Retrieves the search engine ranking positions of a specified domain for one or more keywords.
-
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.
- Retrieves the top-performing pages of a specified domain based on organic search metrics such as traffic, number of ranking keywords, and visibility.
-
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.
- Retrieves historical ranking positions for a specific domain across selected keywords.
-
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.
- Retrieves historical SEO performance data for the top pages of a specified domain.
-
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.
- Retrieves the top-performing keywords for a specific URL, showing which search queries drive the most traffic and visibility to that page.
-
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.
- 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.
-
get_domains_bulk
- Retrieves SEO performance metrics for multiple domains in a single request.
- Input:
inputs(string[]): Array containing the requested urls or domains.
- Retrieves SEO performance metrics for multiple domains in a single request.
-
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.
- Retrieves a list of organic search competitors for a given domain based on overlapping keywords.
-
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.
- Compares the keyword differences between a given domain and its competitors, highlighting keywords that one domain ranks for but the other does not.
-
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.
- Retrieves the best-performing pages of competitors for a given domain.
-
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.
- Retrieves the best-ranking keywords for a given domain compared to its competitors.
-
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.
- Retrieves the visibility trend for a specific domain over time, showing how its search engine visibility has evolved.
-
get_domains_expired
- Retrieves the visibility trend for a specific domain over time, showing how its search engine visibility has evolved.
- 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
Servidores relacionados
OpenSearch MCP Server
An MCP server for interacting with OpenSearch clusters.
SIMAP MCP Server
An MCP (Model Context Protocol) server for interacting with SIMAP.ch, Switzerland's public procurement platform.
Eventbrite
Interact with the Eventbrite API to search for events, get event details, and retrieve venue information.
Knowledge Raven
Make your knowledge agent-ready. Connect docs from Confluence, Notion, GitHub, Dropbox, or Google Drive — any AI agent searches them via MCP.
Panda3D Docs
Search and retrieve documentation for the Panda3D game engine.
Library Docs MCP Server
Search and fetch documentation for popular libraries like Langchain, Llama-Index, and OpenAI using the Serper API, providing updated information for LLMs.
Bocha
A search engine for AI applications, providing world knowledge from web pages and various content sources like weather, news, and images.
Weather
Provides weather data using the US National Weather Service (NWS) API. Built with pure JavaScript ES Modules.
Sycek OSINT
The Sycek MCP Client is a Model Context Protocol server that gives AI assistants direct access to the Sycek OSINT platform's 20 intelligence tools. Instead of switching between dashboards, you describe what you need and your AI handles the investigation.
Rolli MCP
Social media search and analytics across X, Reddit, Bluesky, YouTube, LinkedIn, Facebook, Instagram, and Weibo via the Rolli IQ API