New items are reviewed before publishing, up to 40 per build (on a large first build
the rest publish as queried and are reviewed on later builds; a failed review publishes
the items as queried). The review can correct text from stored sources, add a one-line
caveat, or hold an item out; links, GUIDs, tickers and dates are never changed. So a
file can hold fewer rows than the query returns, and an item already published
unreviewed can later be corrected or withdrawn.
Returns {count, datasets: [{name, user_request, output_schema, file_format,
date_mode, cron, task_name, last_built_at, last_build_status, last_row_count,
latest_url, files: [{run_date, published_at, url}]}]}. `latest_url` is the fixed,
sign-in-free link to the newest file — the one to give for "what's my feed URL?" (an rss
file's items carry <company:symbol> and <category> for syndication partners). To read a
file's rows (a dashboard, a summary), call get_user_dataset_file. Rows with a symbol or
ticker carry `research_url`, the feed readers' sign-in-free research link — never call
it or offer it as a download (the user's own reports come from get_latest_report).
`last_build_status` is written,
unchanged (same rows as the last file, so no new file), empty, too_large (over 500k
rows), schema_drift (columns no longer match the saved schema — re-draft and re-save
under the same name) or failed.
Each file `url` is a presigned link valid 12 HOURS: hand it to the user as a link; never
fetch the file into the chat or store the link. Not rate-limited beyond the plan
quota. Requires auth (your MCP client attaches the OAuth bearer automatically).