update_scan_settings
Change a client's AI-visibility scan settings: answer language, market/country, the engines scanned, passes per prompt, cadence (including day, hour and timezone) and GEO-audit frequency. Only the fields passed are changed, with one exception: a changed scheduleDay or scheduleHour also writes scheduleTz so the hour keeps its meaning. Passing the values the project already has changes nothing (changed:false). Market, language and engine changes rebase the metrics, so an internal timeline note is written. A project imported from Peec AI gets no scheduled scans (its data comes from the Peec sync). Requires MCP write actions; without confirm:true it returns a preview.
Tool call template
This tool declares no required parameters. Add optional parameters from the input schema as needed.
{
"id": 1,
"jsonrpc": "2.0",
"method": "tools/call",
"params": {
"arguments": {},
"name": "update_scan_settings"
}
}Input Schema
| Name | Required | Description | Default |
|---|---|---|---|
| market | No | Market/country, ISO 3166-1 alpha-2 (e.g. "de", "us"). null clears it (worldwide). | |
| models | No | Engines to scan, by id — REPLACES the current selection. | |
| confirm | No | Set true to apply. Omit for a preview. With confirm:true, also pass the preview's previewToken. | |
| clientId | No | Client id — alternative to projectId. | |
| language | No | Answer language, ISO 639-1 (e.g. "de", "en", "fr"). | |
| schedule | No | Scan cadence (daily may be plan-gated). | |
| projectId | No | AI-visibility project id. | |
| scheduleTz | No | IANA timezone for the schedule (e.g. "Europe/Berlin"). Null → UTC. Omitted: a changed day or hour keeps the project's timezone, or takes the workspace's when the project has none (as in the app). | |
| scheduleDay | No | Weekly cadence: day of week the scan runs (0 = Sunday … 6 = Saturday). | |
| previewToken | No | With confirm:true: the previewToken from this tool's preview (valid 15 minutes, once, for exactly the previewed arguments). | |
| scheduleHour | No | Hour the scheduled scan runs (0–23, local to scheduleTz). | |
| runsPerPrompt | No | Passes per prompt per scan (sample size). Clamped to the plan's ceiling. | |
| scheduleMarket | No | One market of the project gets its own scan schedule, given as a locale ("de-DE", "en-US", "de"; list_prompts lists the markets with their schedules). With it, only schedule, scheduleDay, scheduleHour, scheduleTz and scheduleIntervalDays apply, to that market alone; its prompts then leave the project's scan. A schedule equal to the project's is stored as "with the project". Not the same as market, which sets the project's own country. | |
| geoAuditFrequency | No | How often the technical GEO audit re-runs. | |
| resetMarketSchedule | No | With scheduleMarket: true puts that market back on the project's schedule. | |
| scheduleIntervalDays | No | With schedule "everyN": run every N days (1–90). |