Any tool that supports the Model Context Protocol (MCP) can connect to Flyweel. This guide covers the universal configuration.
Connection DetailsLink to this section
Use these settings in any MCP-compatible client:
| Setting | Value |
|---|---|
| Server URL | https://api.flyweel.co/functions/v1/mcp-server/mcp |
| Authentication | Header-based |
| Header Name | X-API-Key |
| Header Value | Your fwl_* token |
Get Your TokenLink to this section
- Go to app.flyweel.co
- Click Settings → API & MCP
- Under Advanced: use an API key instead, click Generate API key (or Create Token to name your own, e.g., “My App - MacBook”)
- Copy it once — it won’t be shown again
Your token format: fwl_ + 64 hex characters
Example:
fwl_a1b2c3d4e5f6a1b2c3d4e5f6a1b2c3d4e5f6a1b2c3d4e5f6a1b2c3d4e5f6a1b2Standard JSON ConfigurationLink to this section
Most MCP clients use a JSON config file. Here’s the universal format:
{ "mcpServers": { "flyweel-mcp-server": { "url": "https://api.flyweel.co/functions/v1/mcp-server/mcp", "headers": { "X-API-Key": "fwl_YOUR_TOKEN_HERE" } } }}Replace fwl_YOUR_TOKEN_HERE with your actual token.
Alternative: Query Parameter AuthLink to this section
For clients that don’t support custom headers (SSE/GET requests), you can pass the token as a query parameter:
https://api.flyweel.co/functions/v1/mcp-server/mcp?token=fwl_YOUR_TOKEN_HEREQuery parameter auth is less secure. Use header-based auth when possible.
Protocol DetailsLink to this section
| Property | Value |
|---|---|
| Protocol | MCP (Model Context Protocol) |
| Transport | HTTP with StreamableHttpTransport |
| Message Format | JSON-RPC 2.0 |
| Timeout | 30 seconds |
| Max Response | 6MB |
Rate LimitsLink to this section
Flyweel MCP allows 20 requests per second per API token. This is more than enough for normal conversation; you’d have to ask questions faster than humanly possible to hit this limit.
If you’re building an automated system, keep this in mind.
What You Can AskLink to this section
Once connected, just ask in natural language. Here are examples:
See Your Ad AccountsLink to this section
“What Google Ads accounts do I have connected?”
“Show me all my Meta ad accounts”
“List my connected advertising accounts”
Get Performance MetricsLink to this section
“How did my Google Ads perform last month?”
“Show me Meta Ads metrics for January 2025”
“What’s my ad spend across all platforms this week?”
“Give me a breakdown of campaign performance for account X”
View CampaignsLink to this section
“What campaigns are running in my Google Ads account?”
“List all Meta campaigns for [account name]”
“Show me active campaigns”
You don’t need to know the exact tool names or parameters. Just describe what you want in plain English and the AI will figure out the right calls.
Testing Your ConnectionLink to this section
To verify your token works, use cURL to check the server:
curl -X POST https://api.flyweel.co/functions/v1/mcp-server/mcp \ -H "Content-Type: application/json" \ -H "X-API-Key: fwl_YOUR_TOKEN_HERE" \ -d '{"jsonrpc": "2.0", "id": 1, "method": "initialize"}'A successful response confirms your token is valid and the connection is working.
Error CodesLink to this section
| Code | Meaning |
|---|---|
| -32700 | Bad JSON |
| -32600 | Invalid request |
| -32601 | Method doesn’t exist |
| -32602 | Bad parameters |
| -32000 | Server error |
| -32001 | Auth error (token missing or wrong) |
TroubleshootingLink to this section
”Authentication Error” or Code -32001Link to this section
Your token is missing, invalid, or deleted.
Fix: Generate a new token at app.flyweel.co → Settings → API & MCP.
”No accounts found”Link to this section
You haven’t connected ad accounts to Flyweel.
Fix: Go to Settings → Connections in Flyweel and connect your Google Ads or Meta Ads.
Connection timeoutLink to this section
The request is taking too long.
Fix:
- Check your internet connection
- Try again in a few seconds
- Contact support if it persists
stdio-only clients: use the mcp-remote shimLink to this section
Some MCP clients only support stdio transport (Codex CLI, early versions of Windsurf, a handful of JetBrains AI builds). For those, use mcp-remote to bridge Flyweel’s HTTP endpoint to stdio.
Run it once to test:
npx -y mcp-remote https://api.flyweel.co/functions/v1/mcp-server/mcp \ --header "X-API-Key: fwl_YOUR_TOKEN_HERE"Wrap that command in your client’s stdio server config. Generic shape:
{ "mcpServers": { "flyweel-mcp-server": { "command": "npx", "args": [ "-y", "mcp-remote", "https://api.flyweel.co/functions/v1/mcp-server/mcp", "--header", "X-API-Key: fwl_YOUR_TOKEN_HERE" ] } }}The shim runs on the user’s machine, opens an HTTP connection to Flyweel, and speaks stdio to the client.
Need Help?Link to this section
If you’re building a custom MCP integration or having trouble with a specific client:
- Email: team@flyweel.co
- Include: Client name, error message, config snippet (without token)