Integrations
ChatGPT calls get_growth after Trends MCP is added as a plugin on chatgpt.com. The proving call is a keyword percent window, not a trending board.
ChatGPT pulls keyword percent change through Trends MCP get_growth after the plugin is added on chatgpt.com. The homepage fetched 2026-11-15 tells operators to open Plugins, pick Add custom MCP server, paste https://www.trendsmcp.ai/mcp, choose OAuth, create the plugin, install it, and type @ to pick Trends MCP. llms-full.txt from the same morning matches that www host and OAuth recipe. The dedicated Trends MCP for ChatGPT page, last updated 2026-08-19, still tells operators to add https://api.trendsmcp.ai/mcp with a Bearer key under Settings, Connectors. Ask, using TrendsMCP, for a keyword source such as Google Search plus a phrase. Omit percent_growth and the window is still 12M. A 2026-11-15 nike Google Search call printed index 49.0 on 2026-10-31 versus 56.0 on 2025-11-01, growth -12.5 percent, across 261 weekly points.
Host setup for ChatGPT lives on Trends MCP for ChatGPT. That page, last updated 2026-08-19, still proves the connect with get_trends, get_growth, and get_ranked_trends, and it still publishes the api host plus a Bearer header. This page is the growth-shaped call against the recipe the homepage publishes today.
The homepage fetched 2026-11-15, under Add to ChatGPT, prints these steps:
@ and pick Trends MCP.The URL on that card is https://www.trendsmcp.ai/mcp. The same homepage groups ChatGPT with Claude as a sign-in client on that www host. Cursor and VS Code stay on the api host with a Bearer key. llms.txt last updated 2026-11-15 repeats the split: "MCP, sign in (Claude, ChatGPT): https://www.trendsmcp.ai/mcp. No key to paste."
OpenAI's custom MCP server guide, fetched 2026-11-15 from https://developers.openai.com/api/docs/guides/custom-mcp-server, matches the homepage path. Access is ChatGPT on the web. The add flow is ChatGPT Plugins, the plus button, Add custom MCP server, a public HTTPS URL, then authentication. The listed auth options are OAuth, no authentication, and mixed OAuth or no authentication. Create as a plugin. Install it. Type @ in the prompt box and select the installed plugin. This run did not click Add to ChatGPT and did not complete OAuth in a ChatGPT tab. It recorded the published steps.
Do not paste Cursor's url plus headers object into the ChatGPT plugin dialog. Do not paste Claude Desktop's npx mcp-remote block either. A ChatGPT plugin is not a claude_desktop_config.json edit.
Homepage copy fetched 2026-11-15 also says the plugin works in ChatGPT on the web, and that on Business and Enterprise a workspace admin can turn custom servers off. That is OpenAI's workspace, not the Trends MCP Business plan. Confirm the workspace allowlist includes www.trendsmcp.ai before blaming a missing tool list on the API key field that the current plugin form does not show.
OpenAI's guide says custom MCP plugins are used by typing @ and picking the installed plugin. The homepage repeats that @ step. A ChatGPT Project instruction can name get_growth, keyword sources such as Google Search, YouTube, and Amazon, and a cap of one source then stop. It should not freeze this morning's nike indexes. Those points move. A frozen percent in a Project file becomes a stale architecture note.
Ask with "using TrendsMCP" so ChatGPT routes to the server instead of a web search or a remembered headline from training data. The proving prompt is a growth call, not a board call.
get_growth(keyword="nike", source="google search")
get_growth(keyword="nike", source="google search, youtube", percent_growth=["3M", "12M"])
get_top_trends with type Google Trends still ranks a live board. That is a different tool. Do not send a board type string into get_growth. The dedicated ChatGPT page still tells the model to call get_trends and get_ranked_trends. The live MCP list in this session advertised get_time_series, get_growth, get_top_trends, get_context, get_reviews, and get_usage. Six tools. Five of them bill. get_usage is free. get_top_posts is absent. get_ranked_trends is absent.
Nightly growth tracking belongs on REST, not a ChatGPT loop that only runs when the chat is open. POST https://api.trendsmcp.ai/api with a Bearer key and mode get_growth. Wrapping a ChatGPT thread in a shared link just to pull windows is a roundabout way to hit that URL, and it still spends the connector owner's meter.
A 2026-11-15 MCP get_growth call that sent source Google Search and keyword nike with no percent_growth field printed one 12M row and metadata.calculations_completed 1. Recent index 49.0 on 2026-10-31 00:00:00+00:00. Baseline 56.0 on 2025-11-01 00:00:00+00:00. Growth -12.5 percent, direction decrease, 261 weekly points. volume_available true, volume_estimated true, recent_volume 18,600,000, baseline_volume 21,200,000. volume_growth was null, with volume_growth_omitted_reason set to "volume is derived from the trend value for this source, not an independent measurement". Quote the 0-100 value. Treat that volume label as derived.
A second call that sent six presets completed 6 calculations on the same 261 points. Alias pairs that shared dates and growth on that nike series:
| Labels | Baseline date | Baseline index | Growth |
|---|---|---|---|
| 7D and 1W | 2026-10-24 | 52.0 | -5.77% |
| 12M and 1Y | 2025-11-01 | 56.0 | -12.5% |
Recent index was 49.0 on 2026-10-31 for every row. Windows that did not collapse into those aliases still shared that recent point. YTD was -15.52 percent from 58.0 on 2026-01-03. 3M was -23.44 percent from 64.0 on 2026-08-01. Same 49.0, four different baselines. For comma-separated sources in one get_growth body, see the multi-source growth API. The shared window table lives on get_growth.
Preset strings on MCP are 7D, 1W, 14D, 2W, 30D, 1M, 2M, 3M, 6M, 9M, 12M, 1Y, 18M, 24M, 2Y, 36M, 3Y, 48M, 4Y, 60M, 5Y, MTD, QTD, and YTD. Named {name, recent, baseline} objects are REST-only. REST mode growth with source Google Search, keyword nike, and percent_growth ["12M"] printed the same 49.0 versus 56.0 row. A REST body that sent {"name": "yoy", "recent": "2026-10-31", "baseline": "2025-11-01"} printed that same pair plus recent_requested and baseline_requested. Do not send a date object to MCP and expect those snap fields.
MCP source Google Trends on keyword nike returned 400 invalid_source, message 'google trends' is not a valid source. The valid_sources array named google search, google images, google news, google shopping, youtube, wikipedia, tiktok, amazon, app downloads, app rankings, steam, npm, python, pinterest, and all. That list is the keyword-history contract. Type Google Trends belongs on get_top_trends. The Google Trends MCP for ChatGPT page keeps the board call on that type string.
The dedicated ChatGPT page still lists reddit among keyword sources. A 2026-11-15 get_growth call that sent source Reddit and keyword nike returned 400 source_disabled, message 'reddit' is temporarily disabled for get_growth. Try another source. The same valid_sources list followed. news sentiment used the same source_disabled code. OpenAPI's Error.error enum, fetched the same morning, still lists invalid_source and growth_calculation_failed. It does not list source_disabled. A generated client that only maps that enum will not name the failure ChatGPT just hit.
Amazon is still a growth source. Keyword air fryer on source Amazon with windows 7D, 1M, and 12M printed 52 monthly points and metadata.all_successful false. 7D returned error collapsed_range with message "Recent and baseline resolved to the same data point; not enough history for this preset". 1M succeeded on 2026-10-31 versus 2026-09-30: index 67.9 versus 59.7, +13.74 percent, volumes 7,350,631 versus 6,465,752, volume growth +13.69 percent. 12M was -5.83 percent from 72.1 / 7,802,064 on 2025-10-31. A ChatGPT prompt that mixes Amazon 7D with Google Search 7D will look broken on Amazon and fine on Search. Read status per row.
Docs price get_growth per source in the call, every window included. The six-window nike Google Search call and the default 12M call are both one unit. Extra percent_growth strings do not add units. source all is the expensive exception: the MCP schema says that alias expands to 9 keyword sources and costs 9. Do not ask ChatGPT to "compare every platform" in one sitting.
A comma list is the other meter. source Google Search, YouTube with windows 12M and 3M printed requests_charged 2, sources_successful 2, and growth_specs_count 2. Google Search matched the 12M -12.5 percent and 3M -23.44 percent rows above. YouTube printed 261 points, 12M 43.0 versus 46.0 on 2025-11-01 (-6.52 percent), and 3M 43.0 versus 45.0 on 2026-08-01 (-4.44 percent). YouTube rows in this pull omitted volume fields. volume_weighted_growth used Google Search alone: -12.5, sources_with_volume 1, weight_coverage 1/2 sources. Read source_results before treating that mixer as a two-platform number.
Connecting is free. Calling is not. get_usage during this run printed Business 6,734 of 25,000 used at the start, then 6,746, reset 2026-12-01. cost_rule: 1 request per data type in a call; get_top_trends: 1 request per 10 rows per board (limit defaults to 100). Only data types that answer are charged. buy_credits_url on that payload still uses the apex account billing tab:
https://trendsmcp.ai/account?tab=billing
Site links on this page stay on www. pricing.md fetched 2026-11-15 already publishes the www billing tab.
Free plan 100 requests a month. Starter $19 for 1,000. Pro $49 for 5,000. Business $199 for 25,000. One Google Search call plus one YouTube call is two requests. Looping source all finishes the free plan before the Project instruction is written. Check current pricing before locking a budget.
FAQ