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
Server Terkait
Agntic AI for Research Papers
Search and extract information about research papers from arXiv.
Weather
Provides weather data using the US National Weather Service (NWS) API. Built with pure JavaScript ES Modules.
VideoSeek
Find anything in any video. Semantic video search, video Q&A, persistent memory, and social media import (TikTok/YouTube/Instagram) for AI agents. 18 MCP tools.
News Fact-Checker
Automated fact-checking of news headlines using web search and Google Gemini AI.
Google Images Search
Search for Google images, view results, and download them directly within your IDE.
Handaas Enterprise Big Data Service
Provides comprehensive enterprise information query and analysis, including business info, risk analysis, intellectual property, and operational insights.
Google PSE/CSE
A Model Context Protocol (MCP) server providing access to Google Programmable Search Engine (PSE) and Custom Search Engine (CSE).
DevRag
Free local RAG for Claude Code - Save tokens & time with vector search. Indexes markdown docs and finds relevant info without reading entire files (40x fewer tokens, 15x faster).
Movie Search Tool
A search tool for movies and TV shows that provides AI clients with validated, playable video links and supports real-time notifications.
newsmcp
Real-time world news for AI agents — events clustered from hundreds of sources, classified by 12 topics and 30+ regions, ranked by importance. Free, no API key.