Voice AI Website Analyzer MCP Server
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., "@Voice AI Website Analyzer MCP Serveranalyze example.com"
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.
Voice AI Website Analyzer MCP Server
An MCP (Model Context Protocol) server designed for Voice AI in GoHighLevel (GHL) that fetches and analyzes website content to provide business context to AI agents.
Features
Smart Website Crawling: Fetches homepage + up to 4 important pages (About, Services, Contact, etc.)
Business Details Extraction: Automatically extracts:
Business name and description
Contact information (phone, email, address)
Business hours
Services offered
Text Content Analysis: Provides comprehensive text summaries of each page
AI-Ready Output: Returns formatted text description perfect for AI agent context
Related MCP server: Crawl4AI RAG MCP Server
Installation
Clone this repository:
git clone <your-repo-url>
cd Voice_MCPInstall dependencies:
npm installBuild the project:
npm run buildUsage
Running Locally
The MCP server runs on stdio transport:
npm startConfiguring in Claude Desktop or MCP Client
Add to your MCP client configuration (e.g., claude_desktop_config.json):
{
"mcpServers": {
"voice-ai-website-analyzer": {
"command": "node",
"args": ["d:\\Voice_MCP\\dist\\index.js"]
}
}
}Using the Tool
Once configured, you can use the analyze_website tool:
analyze_website({ url: "https://example.com" })The tool will:
Fetch the homepage
Identify and fetch up to 4 important pages (About, Services, Contact, etc.)
Extract business details from all pages
Return a comprehensive text analysis
Example Output
BUSINESS WEBSITE ANALYSIS
==================================================
Website: https://example.com
Pages Analyzed: 5
BUSINESS DETAILS
--------------------------------------------------
Business Name: Example Business Inc.
Description: We provide excellent services to our customers
Phone: (555) 123-4567
Email: info@example.com
Address: 123 Main Street, City, State 12345
Business Hours: Monday-Friday 9AM-5PM
SERVICES OFFERED
--------------------------------------------------
1. Web Development
2. Mobile App Development
3. Consulting Services
4. Technical Support
PAGE SUMMARIES
--------------------------------------------------
Page 1: Home - Example Business
URL: https://example.com
Content Preview: Welcome to Example Business...
Page 2: About Us
URL: https://example.com/about
Content Preview: Learn more about our company...Deployment on Vercel
Option 1: Deploy via Vercel CLI
Install Vercel CLI:
npm i -g vercelDeploy:
vercelOption 2: Deploy via GitHub
Push your code to GitHub
Import the repository in Vercel dashboard
Vercel will auto-detect the project and deploy
Important Note About Vercel Deployment
⚠️ MCP servers typically run on stdio transport and are designed to be run locally or on long-running servers. Vercel is optimized for serverless functions with HTTP endpoints.
For production use with GHL Voice AI, consider:
Hosting on a VPS (Digital Ocean, AWS EC2, etc.) where the MCP server can run continuously
Converting to HTTP API if you need serverless deployment
Using Vercel for API endpoints and wrapping the MCP functionality in HTTP handlers
Converting to HTTP API (for Vercel)
If you need to deploy on Vercel, you'll want to create API endpoints instead. Let me know if you need help converting this to an HTTP API format.
Configuration
The server is configured to:
Fetch maximum of 5 pages total (1 homepage + 4 additional)
Extract text content (up to 5000 characters per page)
Identify important pages using keywords: about, services, contact, products, portfolio, team
Extract common business information patterns
Development
Project Structure
Voice_MCP/
├── src/
│ └── index.ts # Main MCP server implementation
├── dist/ # Compiled JavaScript (generated)
├── package.json
├── tsconfig.json
├── vercel.json
└── README.mdBuilding
npm run buildTesting Locally
After building, run:
node dist/index.jsThe server will start and wait for MCP protocol messages on stdin.
Integration with GHL Voice AI
When integrated with GHL Voice AI:
The AI agent receives the website URL from user input during conversation
The agent calls the
analyze_websitetool with the URLThe MCP server fetches and analyzes the website
The business context is returned to the AI agent
The AI agent uses this context to provide tailored responses about the business
Requirements
Node.js 18 or higher
TypeScript 5.x
Dependencies
@modelcontextprotocol/sdk: MCP protocol implementationcheerio: HTML parsing and manipulationnode-fetch: HTTP requests
License
MIT
Support
For issues or questions, please open an issue in the repository.
Available Tools
1 toolanalyze_websiteA
Fetches and analyzes a website to extract business context. Crawls the homepage and up to 4 additional important pages (About, Services, Contact, etc.). Extracts text content, business details (hours, contact info, services), and URLs. Returns a comprehensive text description of the business.
| Name | Required | Description | Default |
|---|---|---|---|
| url | Yes | The website URL to analyze (e.g., https://example.com) |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
With no annotations, the description carries the full burden. It discloses crawling behavior (homepage + up to 4 additional pages), extraction of text and business details, and output format. This provides good behavioral insight, though it doesn't mention potential issues like login walls or rate limits.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
The description is three sentences, concise, and front-loaded with the primary action. Every sentence adds value—crawl scope, extracted details, and output summary. No wasted words.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
Given the single parameter, lack of output schema, and no siblings, the description is complete. It explains what the tool does, how it behaves (crawling strategy), and what it returns, covering all necessary contextual information for an agent.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
The input schema already provides 100% coverage with a clear description of the 'url' parameter. The tool description adds no additional meaning beyond what the schema states, so the baseline score of 3 is appropriate.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description clearly states the action ('Fetches and analyzes a website') and the purpose ('to extract business context'), with specific details about crawling up to 5 pages and extracting content types. No siblings exist, so no differentiation needed.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
The description implies usage for analyzing websites to get business context, but provides no explicit guidance on when to use this tool versus alternatives. Since no sibling tools exist, the lack of alternatives is acceptable, but it doesn't address when not to use it.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
Tool Schema Changelog
Recent tool additions, removals, and schema changes observed during successful MCP inspections.
1 tool update
v1.0.0- First observed
analyze_website
TDQS
Scored across 1 tool
With only one tool, there is no possibility for confusion or overlap. The tool's purpose is singular and clear.
The single tool uses a clear verb_noun pattern ('analyze_website'), which is consistent and descriptive. With one tool, naming consistency is trivially maintained.
A single tool is on the lower end for a server claiming to be a 'website analyzer,' but it covers the core functionality of crawling and extracting business context. It feels thin but is arguably appropriate for a focused tool.
The tool comprehensively analyzes a website by crawling key pages and extracting business details. Minor gaps might include handling of dynamic content or pagination, but the main workflow is covered.
Maintenance
Related MCP Connectors
Turn a company domain into a structured B2B sales brief from their public website.
Scan any website's AI readiness: AI search visibility and AI agent usability. Free, no auth.
Turns any URL into SEO metadata, contacts, tech stack, and AI-ready Markdown, in one call.
Clean Markdown and AI-readability scoring for any URL. Built for AI agents.
Related MCP Servers
- AlicenseAqualityDmaintenanceEnables web content scanning and analysis by fetching, analyzing, and extracting information from web pages using tools like page fetching, link extraction, site crawling, and more.613MIT
- FlicenseNot gradedqualityDmaintenanceEnables AI assistants to crawl websites, extract and store web content with semantic search capabilities using vector embeddings, and retrieve information through natural language queries with tag-based filtering and intelligent content cleaning.-
- AlicenseNot gradedqualityDmaintenanceProvides AI agents and assistants with advanced web crawling and RAG capabilities, enabling them to scrape websites and perform semantic search over crawled content.1MIT
- AlicenseAqualityDmaintenanceEnables AI agents to fetch any web page as clean markdown or screenshot it, turning URLs into LLM-ready context.21 npmMIT