aidigital-labs-mcp
v2.0.0
Published
MCP server for AI Digital Labs tools — website audits, neuromarketing, prompt engineering, AIO optimization, and synthetic focus groups
Maintainers
Readme
aidigital-labs-mcp
AI Digital Labs MCP server — website audits, neuromarketing, prompt engineering, AI search optimization, and synthetic focus groups inside any MCP-compatible AI assistant.
Quick Start — Remote Server (Recommended)
No installation needed. Add to Claude Code .mcp.json:
{
"mcpServers": {
"aidigital-labs": {
"type": "url",
"url": "https://mcp.apps.aidigitallabs.com/mcp",
"headers": { "Authorization": "Bearer aidl_your_key_here" }
}
}
}Or for Claude Desktop (claude_desktop_config.json):
{
"mcpServers": {
"aidigital-labs": {
"command": "npx",
"args": ["-y", "aidigital-labs-mcp@latest"],
"env": { "AIDIGITAL_API_KEY": "aidl_your_key_here" }
}
}
}Get your API key from the Admin Console.
Local npm Package (Alternative)
If you prefer running locally:
npx aidigital-labs-mcpEnvironment Variables
| Variable | Required | Description |
|----------|----------|-------------|
| AIDIGITAL_API_KEY | Yes | Your AI Digital Labs API key (format: aidl_xxx) |
Cursor / Windsurf
Add the same configuration to your editor's MCP settings. Refer to your editor's documentation for the exact config file location.
Available Tools
| Tool | Description | Required Parameters |
|------|-------------|-------------------|
| website_audit | Comprehensive website audit (SEO, conversion, accessibility) | website_url |
| neuromarketing_audit | Score creative assets against 41 neuromarketing criteria | asset_url, brand_name |
| prompt_engineering | Design, test, and optimize AI prompts with consistency testing | prompt_text or prompt_idea |
| aio_scan | Audit AI search engine visibility across ChatGPT, Gemini, Perplexity, etc. | concept_name, concept_type, concept_category |
| synthetic_focus_group | Simulate AI-powered focus groups with generated buyer personas | brand_name, product_description |
| check_status | Check the status of any running job | job_id, app |
| get_result | Retrieve a completed report in markdown, visual JSON, or both | job_id, app |
Tool Parameters
website_audit
| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| website_url | string | Yes | Full URL to audit (e.g., https://example.com) |
| brand_name | string | No | Company name (inferred from URL if omitted) |
| industry | string | No | Industry sector |
| business_model | string | No | B2B, B2C, B2B2C, or Marketplace |
| conversion_goal | string | No | Lead Generation, E-commerce, Sign-up, or Information |
| instructions | string | No | Custom audit focus areas |
neuromarketing_audit
| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| asset_url | string | Yes | URL of the creative asset to analyze |
| brand_name | string | Yes | Brand name |
| asset_type | string | No | static_banner, landing_page, social_post, email, or full_website |
| offer | string | No | CTA/offer description |
| target_audience | string | No | Target audience description |
| instructions | string | No | Additional audit instructions |
prompt_engineering
| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| prompt_text | string | Conditional | Full prompt to optimize (provide this OR prompt_idea) |
| prompt_idea | string | Conditional | Idea to design into a prompt |
| model_target | string | No | claude, gpt-4, gemini, llama, or general |
| use_case | string | No | creative_writing, code_generation, data_analysis, chat, instruction, reasoning, summarization, or extraction |
| instructions | string | No | Additional engineering instructions |
aio_scan
| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| concept_name | string | Yes | Brand/product/concept name to scan |
| concept_type | string | Yes | product, offering, or concept |
| concept_category | string | Yes | Broader category (e.g., "SUV", "CRM Software") |
| concept_context | string | No | Market, geography, competitors |
| query_count | number | No | Number of queries per engine (default 10) |
| instructions | string | No | Additional scan instructions |
synthetic_focus_group
| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| brand_name | string | Yes | Brand or product name |
| product_description | string | Yes | Brief product/service description |
| product_category | string | No | Product category |
| campaign_objective | string | No | Campaign objective |
| creative_urls | string[] | No | URLs of creative assets to evaluate |
| instructions | string | No | Additional evaluation instructions |
check_status
| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| job_id | string | Yes | Job ID from a submit call |
| app | string | Yes | website-audit, neuromarketing, prompt-engineering, aio-optimization, or synthetic-focus-group |
get_result
| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| job_id | string | Yes | Job ID |
| app | string | Yes | Which app |
| format | string | No | both (default), markdown, or visual |
Usage Examples
Once the MCP server is configured, you can ask your AI assistant to use the tools naturally:
Website Audit
"Run a website audit on https://example.com focusing on mobile UX and conversion optimization."
The assistant will call website_audit with website_url: "https://example.com" and instructions: "Focus on mobile UX and conversion optimization", wait for the job to complete (typically 60-120 seconds), and return the full report with scores, recommendations, and an action roadmap.
Neuromarketing Analysis
"Analyze this banner creative for neuromarketing effectiveness: https://example.com/summer-sale-banner.png -- it's for Nike targeting Gen Z athletes."
Calls neuromarketing_audit with the asset URL, brand name, and target audience. Returns scores across 41 criteria covering visual hierarchy, color psychology, emotional triggers, and cognitive load.
Prompt Engineering
"Optimize this prompt for Claude: 'You are a helpful assistant that writes product descriptions. Given a product name and features, write a compelling 200-word description.' Focus on consistency across runs."
Calls prompt_engineering which runs the prompt through a 3-stage pipeline: design/revision, consistency testing (3 runs), and engineering optimization. Returns the original prompt, test results, and an improved version.
AI Search Optimization
"How visible is Tesla Model 3 across AI search engines? Scan ChatGPT, Gemini, and Perplexity."
Calls aio_scan with concept_name: "Tesla Model 3", concept_type: "product", concept_category: "Electric Vehicle". Generates diverse queries, runs them across selected engines, and synthesizes findings into visibility scores, sentiment analysis, and competitive positioning.
Synthetic Focus Group
"Run a focus group for a new organic dog food brand called 'PurePaws'. The product is premium organic kibble for health-conscious pet owners, priced at $65/bag."
Calls synthetic_focus_group which generates realistic buyer personas, runs them through a simulated focus group discussion, and returns persona reactions, purchase intent scores, messaging recommendations, and creative feedback.
Chaining Tools
You can ask the assistant to chain multiple tools:
"Run a website audit on https://acme.com, then analyze their hero image at https://acme.com/hero.png for neuromarketing. Summarize both reports together."
The assistant will run both tools (potentially in parallel if the MCP client supports it) and synthesize the findings.
How It Works
User prompt --> AI Assistant --> MCP Server --> AI Digital Labs API
|
1. POST /.netlify/functions/api-submit
2. Poll GET /.netlify/functions/api-status?job_id=
3. GET /.netlify/functions/api-result?job_id=
|
v
Return full report
(markdown + structured JSON + URL)- The AI assistant receives a user request and determines which MCP tool to call.
- The MCP server receives the tool call and submits a job to the corresponding AI Digital Labs app API.
- The server polls the status endpoint every 5 seconds until the job completes (up to a 10-minute timeout).
- Once complete, it fetches the full report and returns it to the AI assistant.
- The assistant presents the report to the user, often summarizing key findings and including the hosted report URL.
Timeouts and Polling
- Default timeout: 10 minutes (600,000 ms)
- Poll interval: 5 seconds
- Typical completion times:
- Website Audit: 60-120 seconds
- Neuromarketing: 45-90 seconds
- Prompt Engineering: 60-120 seconds
- AIO Optimization: 3-10 minutes
- Synthetic Focus Group: 60-120 seconds
If a job times out, the MCP server returns an error. You can use check_status and get_result to manually retrieve the report later if the job eventually completes.
Troubleshooting
"AIDIGITAL_API_KEY environment variable is required"
The MCP server cannot start without an API key. Ensure the AIDIGITAL_API_KEY env var is set in your MCP configuration file. Check for typos in the variable name and ensure the key starts with aidl_.
"Unknown app: ..."
This error occurs when calling check_status or get_result with an invalid app name. Valid app names are: website-audit, neuromarketing, prompt-engineering, aio-optimization, synthetic-focus-group.
"API error 401: ..."
Your API key is invalid or has been revoked. Generate a new key at admin.apps.aidigitallabs.com.
"API error 403: ..."
Either your API key does not have the correct scope for this app, or you have hit a rate limit. Check the error message for details. If rate-limited, wait for the retry_after period before retrying.
"Job timed out after 600s"
The job did not complete within the 10-minute timeout. This is most common with AIO scans that have many engines or high query counts. You can:
- Use
check_statusto see if the job is still running - Use
get_resultonce the status showscomplete - Reduce
query_countorenginesfor faster scans
"Job failed: ..."
The background AI agent encountered an error. Common causes:
- Invalid or inaccessible URLs (for website audit or neuromarketing)
- Temporary API provider outages
- Server-side rate limits
Retry the job. If the error persists, check that the input URLs are publicly accessible.
MCP server not appearing in Claude Desktop
- Verify the config file path is correct for your OS
- Ensure valid JSON syntax (no trailing commas)
- Restart Claude Desktop after editing the config
- Check that
npxis in your system PATH
MCP server not appearing in Claude Code
- Ensure
.mcp.jsonis in your project root or~/.mcp.json - Run
/mcpin Claude Code to check server status - Try running
npx @aidigital/labs-mcpmanually to verify it starts
API Reference
For the full REST API documentation (useful if building custom integrations outside of MCP), see the API Reference.
License
Proprietary. Requires an AI Digital Labs API key.
