Windsor.ai MCP Server
Hosted MCP server connecting AI agents to 325+ marketing, analytics, CRM, ecommerce and data warehouse sources via natural language queries.
Windsor.ai's MCP server is a hosted Model Context Protocol endpoint that lets AI assistants query live data from 325+ marketing, advertising, analytics, CRM, ecommerce, payment and data warehouse sources. Instead of writing SQL or wiring up API integrations, users connect their Windsor.ai account once via OAuth and then ask natural language questions like "What were my top performing campaigns by ROAS last month?" or "Show me GA4 sessions by channel for the last 7 days." The server handles auth to each underlying connector, schema discovery, and query execution against Windsor's unified data layer.
The server exposes six read-only tools that cover the full query lifecycle: discovering which connectors are linked, generating OAuth links to connect new sources, exploring fields and dimensions per connector, and executing filtered queries with date ranges, account filters and nested conditions. Supported sources include Meta Ads, Google Ads, TikTok Ads, LinkedIn Ads, Microsoft Ads, GA4, HubSpot, Salesforce, Shopify, Stripe, BigQuery, Snowflake, PostgreSQL and many more.
It works with any MCP-compatible client including Claude, ChatGPT, Cursor, Windsurf, Cline, Gemini CLI, GitHub Copilot and n8n. The server is provider-hosted (no self-hosting required), SOC 2 compliant, and all operations are read-only so no data in source systems is ever modified.
Tools
| Tool | Description |
|---|---|
get_current_user |
Returns the authenticated user profile and validates auth status against Windsor.ai. |
get_connectors |
Lists connectors and accounts the user has linked. Optionally includes connectors that are available but not yet connected. |
get_connector_authorization_url |
Returns a browser link for the user to connect a new data source via OAuth or manual credentials. |
get_options |
Lists available fields, date-filter columns and connector-specific settings for a given connector. |
get_fields |
Retrieves field descriptions, types and tables, distinguishing metrics (NUMERIC/PERCENT) from dimensions. |
get_data |
Executes a query against a connector with date ranges (date_from/date_to or presets like last_30d), account filters and nested filters using operators eq, neq, gt, gte, lt, lte, contains, ncontains, null, notnull, in. |
Windsor.ai is a remote, provider-hosted MCP server at https://mcp.windsor.ai/. No installation or self-hosting is required. You need a free Windsor.ai account at onboard.windsor.ai.
Claude (one-click)
Install via the Claude directory. Enable the connector, sign in via OAuth, and start chatting.
ChatGPT
Install via chatgpt.com/apps/windsor-ai. Requires a ChatGPT plan that supports apps.
Cursor
Add to your mcp.json:
{
"mcpServers": {
"windsor": {
"url": "https://mcp.windsor.ai/"
}
}
}
Gemini CLI
Edit ~/.gemini/settings.json:
{
"mcpServers": {
"windsor": {
"url": "https://mcp.windsor.ai/"
}
}
}
Other clients (Windsurf, Cline, GitHub Copilot, n8n)
Point the client at https://mcp.windsor.ai/. The server implements full MCP OAuth discovery, so the first connection will redirect you to Windsor.ai for a one-time browser login.
API key alternative
For clients that do not support OAuth, send a Bearer token using your Windsor.ai API key:
Authorization: Bearer <your_windsor_api_key>
Prerequisites
- Windsor.ai account (free tier available)
- At least one data source connected in your Windsor.ai dashboard
- Some upstream LLM providers may require paid plans to use third-party MCP connectors
- Pull live cross-channel ad performance (Meta, Google, TikTok, LinkedIn) and ask the model to calculate blended ROAS or CAC without writing SQL
- Combine GA4 traffic data with HubSpot or Salesforce pipeline data to attribute revenue to marketing channels
- Query Shopify and Stripe alongside ad spend to compute true contribution margin per campaign
- Explore schemas and available fields for any connected source before running a deeper analysis
- Generate weekly natural-language summaries of marketing performance directly inside Claude or ChatGPT
- "List all the connectors I have connected in Windsor and which accounts are linked to each"
- "Show me Meta Ads spend, impressions and ROAS by campaign for the last 30 days"
- "Compare Google Ads and TikTok Ads cost per conversion week over week for the last quarter"
- "Pull GA4 sessions by source/medium for the last 7 days and chart the top 10"
- "What HubSpot deals closed last month and which marketing source did they come from?"
- Officially hosted by Windsor.ai, so no self-hosting, no API key juggling, and no maintenance burden
- Very broad coverage with 325+ connectors spanning ads, analytics, CRM, ecommerce, payments and warehouses
- OAuth 2.0 with MCP discovery makes setup essentially one click in Claude and ChatGPT
- Read-only by design, which reduces risk when granting agents access to production data sources
- Read-only only: no ability to push changes back into source systems (e.g. pause an ad campaign or update a CRM record)
- Requires a Windsor.ai account and, for many connectors, a paid Windsor plan once data volumes grow beyond the free tier
- Tool surface is intentionally generic (get_data, get_fields, etc.), so the model must learn each connector's schema at runtime, which can use more tokens
- Supermetrics MCP for similar multi-source marketing data access
- Google Analytics MCP when you only need GA4
- Self-hosted MCP servers for individual platforms like HubSpot, Stripe or BigQuery when single-source coverage is enough