[0.5.0] - 2026-09-23
Both MCP servers are updated:- standard MCP (
/v1/spark-api/mcp) - ChatGPT MCP (
/v1/spark-api/openai/mcp)
Added
- MCP protocol version
2026-07-28is now supported on both endpoints. New clients negotiate2026-07-28via theserver/discoverhandshake; clients that use the legacyinitializehandshake continue to negotiate down to2025-11-25and keep working unchanged. tools/listresponses now include SEP-2549 cache hints (ttlMs,cacheScope) so clients can cache the tool catalogue between calls.- Tool annotations always include
idempotentHintandreadOnlyHint(previously omitted when unset).
Notes
- Transport remains stateless HTTP JSON-RPC: no
Mcp-Session-Idis issued or required, and every request stands on its own. - Existing clients that treat unknown fields as optional need no code changes.
[0.4.1] - 2026-09-16
Both MCP servers are affected:- standard MCP (
/v1/spark-api/mcp) - ChatGPT MCP (
/v1/spark-api/openai/mcp)
Changed
- The server no longer returns an
Mcp-Session-Idheader oninitialize, and each JSON-RPC POST is handled independently. Clients should not sendMcp-Session-Idon subsequent requests and should not rely on server-side session continuity between calls. Continue to follow the standard MCP lifecycle (initialize→notifications/initialized→tools/list→tools/call) on every new connection. chat_gwi/explore_insight_gwi/search/fetch: tool descriptions and server instructions now guide host LLMs to follow a two-step flow for audience-size and universe questions (e.g. “how many people…”, “audience size”, “universe”, “how big is…”) instead of re-prompting the discovery tool for a headcount:- Standard MCP: call
chat_gwifirst to get the relevant insight, then callexplore_insight_gwiwith the returnedinsight_idto read the universe size and underlying stats. - ChatGPT MCP: call
searchfirst to get the relevant result, then callfetchwith the returnedresults[].idto readuniverse_sizeand underlying stats.
- Standard MCP: call
- No changes to tool inputs, outputs, or transport behavior — existing clients continue to work; well-behaved host LLMs will start chaining the two calls automatically for universe-size questions.
Fixed
list_datasets: returns an empty array instead of an error when the caller has no dataset access. The RESTGET /v1/spark-api/datasetsendpoint now behaves the same way, responding withHTTP 200and an empty list.search_audiences: results now include only saved platform audiences (authored,shared,curated) and exclude ephemeralinstantaudiences, which previously dominated results
[0.4.0] - 2026-07-15
Both MCP servers are updated:- standard MCP (
/v1/spark-api/mcp) - ChatGPT MCP (
/v1/spark-api/openai/mcp)
Added
search_audiencestool for searching saved/platform audiences by free-text query; optionaldataset_codes,exclude_audience_ids, andlimit(1–100)
Changed
chat_gwi/search: supports optionaldataset_codesto query a root dataset together with one or more of its add-on studies (values must belong to the same dataset tree)chat_gwi/search: supports optionaldocked_audiencesto scope insights to platform audience UUIDs (max 10; use IDs fromsearch_audiences)chat_gwi/search: when bothdataset_codeanddataset_codesare provided,dataset_codestakes precedence anddataset_codeis ignoredchat_gwi/search: when bothdataset_codeanddataset_codesare omitted, the default dataset available to the user is used (previously hard-coded tods-core)list_datasets: returns hierarchical folders and nested dataset nodes so clients can identify valid root/child combinationsexplore_insight_gwi/fetch: response now includes the origindatasetsof the corresponding insightexplore_insight_gwi: attribute output now includes Universe Size alongside question, answer, percentage, sample, and index — the estimated number of real-world internet users within the audiencefetch: response now includes structuredmetadatawith anattributesarray (question,answer,percentage,sample,universe_size,index) plustimeframe_groups,location_groups,audiences, anddatasetsfor the source insightsearchandfetchnow return typed structured results instead of JSON encoded insidecontenttext blocks; clients that already parse the tool result payload need no changes, but clients reading raw text MAY switch to the structured result
[0.3.0] - 2026-07-07
Both MCP servers are updated:- standard MCP (
/v1/spark-api/mcp) - ChatGPT MCP (
/v1/spark-api/openai/mcp)
Changed
chat_gwi/search: supports optionallimitto set the maximum number of insights returned per call (1–20; default 10)
[0.2.0] - 2026-03-11
Added
list_datasetstool for listing available GWI datasets; use to discover dataset codes forchat_gwichat_gwi: optionaldataset_codeargument to specify which dataset to query; default:ds-core
[0.1.0] - 2025-12-01
Added
chat_gwitool for gathering insights about audiences based on GWI dataexplore_insight_gwifor exploring detailed information about the insight statistics- OAuth2 support for secure authentication
Changed
- Initial release of the Spark MCP

