Cascade reads serverUrl, not Cursor’s url plus transport. That single field is why combined listicles fail this editor.
Google Trends reaches Windsurf through Trends MCP when Cascade has serverUrl https://api.trendsmcp.ai/mcp and a Bearer key. Combined “Claude Code, Cursor, Windsurf” posts paste Cursor’s url plus transport object. That object does not load here. After the Windsurf JSON is live, get_top_trends type Google Trends returns the live board. get_growth source google search returns keyword history. Default limit 25.
Host reference: Trends MCP for Windsurf. Ranked shortlist: best MCP servers for Windsurf. Cursor combo: Google Trends MCP for Cursor. API shape: Google Trends API.
Cascade MCP panel, Configure / Add custom server, or Command Palette Windsurf: Configure MCP Servers.
"trends-mcp": {
"serverUrl": "https://api.trendsmcp.ai/mcp",
"headers": {
"Authorization": "Bearer YOUR_API_KEY"
}
}
Key from the account page. Fully quit Windsurf if tools stay hidden after save. Do not paste https://www.trendsmcp.ai/mcp. www is Claude.ai OAuth.
Say “using TrendsMCP.” Cascade that only has a crawl MCP will invent ranks from snippets. Cascade that only has Trends MCP cannot fetch an arbitrary pricing page. Pair them.
get_top_trends(type="Google Trends", limit=25)
get_growth(keyword="windsurf ide", source="google search", percent_growth=["30D", "3M"])
Type Google Trends takes no keyword. Source google search takes a phrase. Not google trends. Category type Google Trends by Category plus Technology is extra. sort rank_change needs a baseline snapshot. REST get_time_series for the weekly series.
A proving pair is two requests. Adding tiktok in the growth source list is a third. Paging limit 200 is a choice, not a default.
Do not freeze this morning’s ranks in a Windsurf rule file. The board turns over. Cite as_of_ts.
Free 100 requests per month. Starter $19 / 1,000. Pro $49 / 5,000. Business $199 / 25,000. Pricing. An Agent-style loop across every official Google category finishes the free plan before the PR note exists.
Empty: not_found or data_unavailable. Low-volume percents: quote both index values. 401: www URL or missing Bearer prefix.
Windsurf is a weak cron. POST https://api.trendsmcp.ai/api from n8n when the schedule is the point. The same key works. Cascade does not need to stay open.
GitHub MCP still opens issues. A docs MCP still stops changelog fiction. Trends MCP still ranks public demand. Keep all three if the ticket needs all three jobs.
If tools miss, diff the JSON against serverUrl before opening a support thread. Cursor transport in this file is the miss those listicles teach.
Official Google Trends API Alpha remains Google Cloud. Trends MCP does not wrap that credential. SuperMetrics remains a marketing hub. This editor path is public boards plus weekly search history on one key.
A Windsurf rule file can pin serverUrl, type Google Trends, source google search, and a cap of one board plus one growth call. It should not pin this morning’s ranks. Combined listicles that freeze a top-10 into a shared snippet teach stale facts.
Cascade will call every valid MCP server in the config. Order in the file is not priority. Name Trends MCP in the prompt so the model does not pick a crawl server for a board question. A crawl result is HTML. A board result is as_of_ts. Mixing them in one sentence is how invented demand lands in a Cascade diff.
Quit means quit. A window reload is not enough on every build. Project-level mcp_config.json can ship a placeholder. Keep the live token out of git. iCloud-style backups of the Windsurf folder can copy the Bearer key. Rotate it if a screenshot went into Slack.
A second proving path when the ticket is TikTok after Google: type TikTok Trending Hashtags as a second board. That is a second request. It is not required to prove serverUrl is valid. One Google page is enough for the connect test.
offset pages past 25. A second page is a second request. limit 200 is the max, not the default. An Agent-style “explore every category” loop in Cascade finishes the free 100-request month before the file is saved.
If tools still miss after a full quit, diff the object keys. serverUrl is Windsurf. url plus transport is Cursor. type http is VS Code. httpUrl is Gemini CLI. Each mixup produces a green-looking row that never calls Trends MCP. Cascade rules that name this morning’s Google ranks go stale overnight. Cite as_of_ts or call again. A crawl MCP still wins HTML. GitHub MCP still opens the issue. Trends MCP still ranks public demand. Keep all three if the ticket needs all three jobs. Nightly boards belong on REST. Connecting is free. Calling is not. Windsurf teammates who “already set up Cursor” have not set up Cascade. Prove the JSON that is actually on disk. mcp_config.json is not mcp.json. A screenshot of Cursor settings does not install serverUrl. After a successful board call, stop. The connect job is done. Growth is optional. Ten growth names is a research session, not a connect test.
Cascade rules that freeze this morning’s Google ranks go stale overnight. Store type Google Trends and source google search. Do not store the snapshot. Recheck Trends MCP for Windsurf if the JSON keys still look like Cursor.
FAQ