Appearance
Agent Capabilities and Tools
Quick Answer
Zeus.ai Chat can do more than answer questions. It uses built-in tools to search sites, open analytics, read help content, work with scorecards, run Site Sonar, inspect traffic, work with shapes and trade-area polygons, pull mobile data, compare sites or shapes, change map and workspace state, generate shareable reports, work with your saved report history, and — on Enterprise — read and change how your project's next Zeustimate model is trained.
What The Agent Can Help With
The agent is strongest when you ask it to perform one focused task at a time.
Common workflows include:
- Finding locations that match filters, statuses, or saved searches
- Opening site analytics and explaining results
- Looking up product guidance in the Help Center
- Creating, evaluating, and editing scorecards
- Running Site Sonar searches, scoping them to states or DMAs, and reading or exporting the results
- Inspecting traffic around a location
- Working with shapes (polygons), trade areas, and shape analytics
- Pulling mobile-data foot traffic for a location
- Estimating the cannibalization impact of a new site on nearby existing sites
- Comparing two or more sites or shapes side by side
- Updating the map or workspace tabs to focus your attention
- Generating presentation-style reports from a conversation
- Finding, sharing, exporting, or archiving previous reports
- Reviewing project model health, forecast accuracy, and geographic predictive power (Enterprise)
- Reviewing and changing model settings, excluded variables, and data-bundle versions, then rebuilding the model and accepting or rejecting the candidate (Enterprise)
Understanding Tool Indicators
During some responses you will see a tool indicator or activity state.
That means the agent is using a product tool instead of answering only from conversation context.
Typical examples include:
- Searching the help docs
- Fetching analytics
- Updating the map
- Running a scorecard or sonar action
- Pulling traffic detail
- Computing a trade-area polygon
Tool activity is normal for data-backed answers and actions.
Tool Catalog
The agent has access to roughly 80 tools, grouped by domain below. Each tool is listed by its camelCase name (the exact string the agent uses internally), a one-line purpose, and a note on when you would see it surface in chat.
Tool names are stable. They do not change between projects, but a tool may be hidden when your subscription does not include the feature it powers (see Tier gating below).
Site search and project data
| Tool | Purpose | When you see it |
|---|---|---|
searchLocations | Search and filter sites in the current project | Asking to find or filter sites by name, status, or attributes |
listProjects | List projects you have access to | Asking what projects exist, or to switch project |
getProjectInfo | Get high-level project metadata | Asking about the current project's name, type, or settings |
setActiveProject | Switch the active project after your confirmation | "Switch me to the [project] project" |
getProjectAttributes | List project-level custom attribute schema | Asking what fields are available on sites in this project |
updateSiteAttributes | Edit attributes on a specific site | "Set the AUV on this site to $1.4M" or similar edits |
changeSiteType | Move a site between site types (proposed / existing / etc.) | "Mark this proposed site as existing" |
Analytics and forecasting
| Tool | Purpose | When you see it |
|---|---|---|
zeusAiAnalytics | Open Location Analytics for a site | "Show analytics for this site" |
getZeustimate | Get the Zeustimate revenue forecast for a site | "What's the Zeustimate for @Site?" |
getDemographics | Pull demographic data for a site or area | "What are the demographics for this location?" |
getSitesOfInterest | List the nearby Sites of Interest (competitors, cotenants, and points of interest) around a site | "What competitors are near this site?" |
searchDemographicsVariables | Search the demographics variable catalog | "Find variables related to median income" |
listFavoriteVariables | List your favorite demographic variables | "What demographic variables have I starred?" |
addFavoriteVariable | Star a demographic variable for quick access | "Add median household income to my favorites" |
removeFavoriteVariable | Unstar a demographic variable | "Remove that variable from my favorites" |
getSmartComps | Get Smart Comps (comparable sites) for a location | "Show me Smart Comps for this site" |
getVariableImpact | Get the variable-impact breakdown for a forecast (Enterprise) | "Why does this site score the way it does?" |
getImpactAnalysis | Predict the revenue impact (cannibalization) on nearby existing sites if a new site opens | "How much will we lose at existing stores if we open at @Site?" |
getImpactAnalysis answers the cannibalization question: if a new, proposed, or candidate site opens, how much revenue is expected to transfer away from your nearby existing sites? It returns the affected sites ranked by expected revenue impact and transfer rate. It reads the same nearby-sites and impact-study endpoints as the Impact Analytics panel in the app, so chat and the panel report the same numbers. It follows the panel's defaults (a 10-mile search radius, up to 10 affected sites), and — like the panel — it is not gated by a separate tier.
getSitesOfInterest returns the same nearby Sites of Interest — competitors, cotenants, and points of interest, grouped by layer — that the Sites of Interest panel in Location Analytics shows, so you can ask about what's around a site without leaving the conversation. It reads a ring around the site — 3 miles by default, or any radius from a quarter mile up to 10 miles when you ask for one (for example, "within 5 miles") — and is not gated by a separate tier. Drive-time areas aren't available from chat; use the Sites of Interest panel in Location Analytics for those.
Model analytics
These tools surface the Predictive Power Center analytics for a project's accepted Zeustimate model. All six require the Enterprise subscription tier (Projects + Zeustimate entitlement). Results are returned as interactive chart cards inline in the chat.
| Tool | Purpose | When you see it |
|---|---|---|
getModelHealth | Overall health and accuracy metrics for the accepted model (Enterprise) | "How healthy is this project's model?" |
getActualVsForecast | Scatter chart of actual vs. forecast per site, colored by accuracy (Enterprise) | "Show actual vs forecast for this project" |
getBinningAnalysis | How forecast performance bands line up with actual bands in cross-validation (Enterprise) | "Show the what-if analysis for this model" |
getGlobalVariableImportance | Project-wide sunburst of which factors drive this model's predictions (Enterprise) | "What drives the predictions for this project?" |
getPredictivePowerMap | Regional choropleth showing where the model is strong vs. weak (Enterprise) | "Show a predictive power map for this project" |
getAttributeRegionAccuracy | Accuracy by site attribute and Census region as a heatmap matrix (Enterprise) | "Show attribute and region accuracy for this project" |
Model configuration and rebuild
These tools read and change how your project's next Zeustimate model is trained, then run the build and record your decision on the result. All nine require the Enterprise subscription tier (Projects + Zeustimate entitlement) — the same entitlement as the Model analytics tools above.
| Tool | Purpose | When you see it |
|---|---|---|
getModelSettings | Read the project's current training settings, build knobs, and data-bundle pins | "What settings is this model trained with?" |
updateModelSettings | Change training trade area, feature engineering, or forecast/display settings | "Train on a 5-minute drive time instead" |
listModelVariables | List the variables available to the model, and which are currently excluded | "Which variables can this model use?" |
setExcludedVariables | Set the full list of variables the model must not use | "Exclude median age from the model" |
updateDataBundleAssignments | Pin which version of each data bundle the model trains on | "Pin demographics to the 2025 bundle" |
getModelRebuildStatus | Check how far along a build is, or whether one is waiting on your decision | "How is the model rebuild going?" |
rebuildModel | Start a build with the current settings, plus any per-build knobs you specify | "Rebuild the model with 10 folds" |
acceptModel | Accept a finished candidate model and make it the project's live model | "Accept the new model" |
rejectModel | Reject a finished candidate model and keep the current live model | "Reject that candidate" |
Every change is previewed before it happens. The six tools that write something — updateModelSettings, setExcludedVariables, updateDataBundleAssignments, rebuildModel, acceptModel, and rejectModel — first show you exactly what would change and wait for you to confirm. Nothing is saved, started, or accepted on the first request.
A few behaviours are easy to be surprised by, so the agent calls them out in its preview:
setExcludedVariablesreplaces the whole list, it does not add to it. Anything you leave out becomes re-included. The preview names both directions.- Settings changes apply to the NEXT build. Saving a training setting does not retrain anything on its own — the live model keeps serving until a rebuild is accepted.
- Some knobs are sent with the build, not saved. Folds, prediction interval, tail adjustments, upsampling, and feature clustering are
rebuildModelarguments; anything you do not specify is inherited from the current model. acceptModelswaps the live model that powers every Zeustimate in the project, and it clears the project's cached Site Sonar scores. Its preview says so explicitly.- A rebuild can take a long time. The agent starts it and reports back rather than holding the conversation open; a progress row appears in the chat tray, and you can ask for
getModelRebuildStatusat any point. The tray row for a build that is waiting on your decision stays put until you deal with it.
Scorecards
| Tool | Purpose | When you see it |
|---|---|---|
listScorecards | List scorecards available in the project | "What scorecards are set up here?" |
evaluateScorecard | Run a scorecard against a site | "Evaluate this site with our default scorecard" |
createScorecard | Create a new scorecard | "Create a scorecard called X with these criteria" |
updateScorecard | Update an existing scorecard's metadata | "Rename this scorecard" or "Change its description" |
deleteScorecard | Delete a scorecard | "Delete the old scorecard" |
addScorecardCriterion | Add a criterion to a scorecard | "Add median income as a criterion" |
updateScorecardCriterion | Change a criterion's weight, target, or thresholds | "Increase the weight on the traffic criterion" |
deleteScorecardCriterion | Remove a criterion from a scorecard | "Remove the population criterion" |
createScorecardSection | Add a section to group criteria | "Add a 'Demographics' section" |
updateScorecardSection | Rename or edit a section | "Rename the Demographics section to People" |
deleteScorecardSection | Remove a section | "Delete the empty section" |
reorderScorecardSections | Reorder sections within a scorecard | "Move the Traffic section to the top" |
Site Sonar
| Tool | Purpose | When you see it |
|---|---|---|
runSiteSonar | Start a Site Sonar batch run | "Run sonar across this trade area" |
getSonarStatus | Check the status of a sonar run | "How is the sonar run going?" |
getSonarResults | Read top-ranked sites from a sonar run | "Show me the top sonar results" |
searchPoiBrands | Look up POI brand candidates for sonar | "What POI brands match 'coffee'?" |
getSonarGeographyOptions | List the states and DMAs a run can be limited to | "Which DMAs can I scan?" |
listProjectScorecards | List the scorecards this project can score a sonar run with | "Which scorecards can sonar use?" |
showSonarResultsOnMap | Render a completed agent-driven sonar run on the map and turn the layer on | "Show the sonar results on the map" |
exportSonarResultsCsv | Download the sonar results you are currently looking at as a CSV | "Export these sonar results to a spreadsheet" |
Three things are worth knowing about how sonar runs are scoped:
- Geography is a run-time filter, not a results filter. Asking for "the best sites in Florida" scopes the scan itself, so you get the top Florida sites — not the Florida entries out of a nationwide ranking. Ask the agent to re-run if you want to change the area.
- Scorecard scoring is a separate channel. A run can be scored by the Zeustimate model, by a scorecard, or by both. Scorecard results add a score index and a letter grade per site. Sites without enough data come back ungraded rather than as an F or a zero.
- Scorecard ids for sonar come from
listProjectScorecards. That list is project-scoped and is a different set from the onelistScorecardsreturns for site evaluation, so the agent looks the id up on that tool before it starts a scored run.
exportSonarResultsCsv downloads the rows on screen, with whatever filters and sorting you have applied. It runs in your browser, so it produces a file directly — there is no link to click and nothing is emailed.
Saved Sonar layers
| Tool | Purpose | When you see it |
|---|---|---|
listSonarLayers | List saved Site Sonar layers | "What sonar layers do I have saved?" |
getSonarLayer | Read a specific saved sonar layer | "Open the 'Q2 coffee' sonar layer" |
updateSonarLayer | Rename or change settings on a saved sonar layer | "Rename the saved layer" |
deleteSonarLayer | Delete a saved sonar layer | "Delete the old sonar layer" |
Shapes (polygons) and shape analytics
| Tool | Purpose | When you see it |
|---|---|---|
listPolygonLayers | List shape layers in the project | "What shape layers are in this project?" |
listShapesInLayer | List shapes within a specific layer | "Show me all shapes in the trade-area layer" |
getShapeLocationSummary | Summarize sites that fall inside a shape | "Which sites are inside this polygon?" |
getShapeDemographics | Pull demographics for a shape's area | "What are the demographics inside this shape?" |
getShapeAttributes | Read attributes attached to a shape | "What attributes does this polygon have?" |
evaluateShapeScorecard | Run a scorecard against the area of a shape | "Score this trade area with our scorecard" |
getShapeNotes | List notes attached to a shape | "Show me the notes on this shape" |
createShapeNote | Add a note to a shape | "Add a note: 'Approved for Phase 2'" |
updateShapeNote | Edit an existing shape note | "Update that note to say…" |
deleteShapeNote | Delete a shape note | "Delete the old note" |
Trade-area polygons
| Tool | Purpose | When you see it |
|---|---|---|
getDriveTimePolygon | Compute a drive-time polygon around a point | "Show a 10-minute drive time around this site" |
getRingPolygon | Compute a ring (radius) polygon around a point | "Show a 3-mile ring around this site" |
Mobile data
| Tool | Purpose | When you see it |
|---|---|---|
getMobileData | Pull UberMedia mobile foot-traffic data (OGS, P2P, CEL, CDL) for a site | "Show foot traffic for this location" |
Traffic
| Tool | Purpose | When you see it |
|---|---|---|
getTrafficInfo | Get traffic summary around a site or area | "What's the traffic like at this site?" |
getTrafficDetail | Get detailed traffic for a specific road segment | "Get traffic detail for the road in front of this site" |
Comparison
| Tool | Purpose | When you see it |
|---|---|---|
compareSites | Compare 2–10 sites side by side (baseline counts toward the 10-site cap) | "Compare @Site A and @Site B" |
compareShapes | Compare two or more shapes side by side | "Compare the north and south trade-area polygons" |
Geocoding and place search
| Tool | Purpose | When you see it |
|---|---|---|
geocodeAddress | Resolve an address to coordinates | "Where is 123 Main Street?" |
searchPlaces | Run a Google Places text search | "Find Starbucks near this location" |
Navigation and workspace control
These tools update what you see in the app rather than fetching data.
| Tool | Purpose | When you see it |
|---|---|---|
controlMap | Pan, zoom, or recenter the map | "Zoom to this site" |
updateMapSettings | Change map style, layers, or theme | "Switch to satellite view" |
toggleSiteVisibility | Show or hide sites by type or status | "Hide proposed sites" |
filterLocations | Apply or clear filters on the Sites list | "Filter to revenue over $1M" |
openLocationAnalytics | Open the Location Analytics tab for a site | "Open analytics for this site" |
setTradeArea | Apply a trade area to a site | "Set a 5-minute drive-time trade area" |
focusWorkspaceTab | Switch the workspace to a specific tab | "Open the Scorecards tab" |
createSearchPin | Drop a search pin on the map | "Drop a pin at 34.05, -118.24" |
Reporting and help
| Tool | Purpose | When you see it |
|---|---|---|
generateReport | Turn the conversation into a presentation-style report | "Generate a report from this conversation" |
listReportViews | List saved report views compatible with the current site or project | "What report views do I have for sites?" |
runReportView | Run a saved view (or a custom one-off view) against a specific site | "Run the Site Overview view for this site" |
createReportView | Save a named, reusable report view without running it immediately | "Save a view called 'Quarterly' with these sections" |
listRecentReports | Find saved report runs from your report history | "What reports do I have for this site?" |
shareReport | Create or refresh a share link, PDF, or deck output | "Share the last report for this site" |
archiveReport | Archive or restore a saved report run | "Archive the old report from yesterday" |
helpCenter | Search the Zeus.ai Help Center | "Search the Help Center for Site Sonar setup" |
Use Generate Report when you want the chat to turn selected conversation content into a shareable report output. If you ask for a report on a site before analytics exist in the conversation, the agent should run the relevant analytics first, then generate the report.
Tier gating
A few tools are only available to specific subscription tiers. When your account does not include the required tier, the agent will not offer the tool and will explain the gap if you ask for it directly.
| Tool | Required tier / claim |
|---|---|
runSiteSonar | Enterprise |
searchPoiBrands | Enterprise |
getSonarStatus | Enterprise |
getSonarResults | Enterprise |
listProjectScorecards | Enterprise |
getZeustimate | Enterprise (Zeustimate) |
getSmartComps | Enterprise (Zeustimate) |
getVariableImpact | Enterprise (Zeustimate) |
getModelHealth | Enterprise (Zeustimate) |
getActualVsForecast | Enterprise (Zeustimate) |
getBinningAnalysis | Enterprise (Zeustimate) |
getGlobalVariableImportance | Enterprise (Zeustimate) |
getPredictivePowerMap | Enterprise (Zeustimate) |
getAttributeRegionAccuracy | Enterprise (Zeustimate) |
getModelSettings | Enterprise (Zeustimate) |
updateModelSettings | Enterprise (Zeustimate) |
listModelVariables | Enterprise (Zeustimate) |
setExcludedVariables | Enterprise (Zeustimate) |
updateDataBundleAssignments | Enterprise (Zeustimate) |
getModelRebuildStatus | Enterprise (Zeustimate) |
rebuildModel | Enterprise (Zeustimate) |
acceptModel | Enterprise (Zeustimate) |
rejectModel | Enterprise (Zeustimate) |
Site Sonar itself is open to every subscription tier: an Emerging account can run a scorecard-scored search from the Site Sonar tab, and an Enterprise account can also score with Zeustimates. In chat, showSonarResultsOnMap, getSonarGeographyOptions, exportSonarResultsCsv, and the saved-layer tools work on any plan. Starting a run (runSiteSonar and its brand-picker helper searchPoiBrands), checking run status (getSonarStatus), reading ranked results (getSonarResults), and listing the scorecards a run can use (listProjectScorecards) currently require the Enterprise tier; on other plans the assistant explains the gap.
getZeustimate, getSmartComps, and getVariableImpact all require the same Projects + Zeustimate entitlement that gates the revenue-analytics endpoints in the web app. They are filtered out of the agent's tool registry for accounts that do not hold that claim; the agent will not offer them and will explain the gap if you ask directly.
Other tools may also be gated by company-level bundles (for example, Listings, Mobile Data, or PersonaLive). When a tool is hidden for entitlement reasons, the assistant will offer the closest unrestricted alternative.
Example Prompts That Use Tools Well
- "List the scorecards available in this project."
- "Evaluate this site with our default scorecard."
- "Run Site Sonar for coffee shops in this trade area."
- "Show the top Site Sonar results."
- "Compare @Site A and @Site B."
- "Show foot traffic for @Highland Park."
- "How much revenue would we cannibalize from nearby stores if we open at @Proposed Site?"
- "Give me a 10-minute drive-time polygon around this site."
- "List the shapes in the trade-area layer."
- "Add a note to this shape: 'Approved for Phase 2'."
- "Turn on traffic and zoom to the selected site."
- "Open analytics for the top proposed site in the current list."
- "Search the Help Center for Site Sonar setup steps."
- "Get traffic detail for the road next to this location."
- "Generate a report from this conversation."
- "Create a PDF from this analysis."
- "Share the last report for this site."
- "Archive the old report from yesterday."
- "Show the model health for this project."
- "What does the predictive power map look like for this project?"
- "Which variables drive this project's model the most?"
- "Run Site Sonar for coffee shops across Florida and Georgia."
- "Which DMAs can I scan in this project?"
- "Score that sonar run with the Retail Fit scorecard and show me the A and B sites."
- "Export these sonar results to a CSV."
- "What settings is this project's model trained with?"
- "Exclude median age and population density from the model."
- "Rebuild the model with 10 folds."
- "How is the rebuild going?"
- "Accept the new model."
Best Practices
- Be specific about the site, project, or area you mean.
- Ask for one action first, then follow up with the next one.
- Mention whether you want explanation, data retrieval, or a workspace change.
- If the agent needs context, select a site first or @-mention it in your prompt.
Limits To Keep In Mind
- Some tools only work when a site, project, or map context is available.
compareSitesaccepts 2–10 sites per call. If you include a baseline site, it counts toward the 10-site cap. Asking to "compare the top 10 existing sites" against a baseline is 11 total — the agent will ask you to narrow the list or split into multiple calls rather than silently dropping sites.- Long-running tools (sonar runs, model rebuilds, large polygon queries) may show progress before the final answer. A model rebuild in particular is started and then polled — the agent will not hold the conversation open until it finishes.
- Geography scoping for Site Sonar is US-only (states and DMAs). Asking to scope a non-US project by state is refused rather than silently ignored.
- Chat cannot render a heat map inline. If you ask for a heat map — or to "color" or "shade" the map by a metric — the agent points you to the Shapes tab, where the color editor shades each shape by the data value you choose, rather than simply declining.
- Anything that changes a model — settings, excluded variables, data-bundle pins, starting a build, accepting or rejecting a candidate — is always previewed and confirmed first. If you edited model settings in the Forecasting Model tab but have not saved them, the agent does not see those pending edits; it reads what is saved.
- When the Help Center has no article on a topic, the agent says so explicitly — it does not present guesses or internal parameter details as if they were retrieved documentation. If you want the agent's general understanding of a topic not covered in the Help Center, ask for it directly; the response will be labeled as coming from system knowledge, not a retrieved article.
- Tools gated by tier or bundle entitlements are hidden from the agent for users who do not have them. Upgrading the subscription unlocks them automatically on the next message.
- Occasionally a tool may be temporarily unavailable in the current environment even though your subscription includes it. When this happens the agent will say so explicitly — for example, "The mobile-data tool isn't available right now — please try again later or contact support." This is distinct from a tier or bundle gate: the agent is not offering an alternative data source, it is acknowledging the outage. Retrying the request in a new message usually resolves transient unavailability; if the message persists, contact your SiteZeus account team.