Skip to main content

Documentation Index

Fetch the complete documentation index at: https://otakusolutions.mintlify.app/llms.txt

Use this file to discover all available pages before exploring further.

AI Chat panel

How It Works

Every portal includes an AI chat assistant powered by CopilotKit with an AG-UI agent backed by Anthropic’s Claude. The AI sees the current state of the dashboard (which tab is active, what filters are applied, which data is loaded) and can control UI elements on your behalf. When you ask a question, the AI:
  1. Analyzes your question to determine the best data source
  2. Reads the dashboard state to understand your current context (active tab, filters, selected data)
  3. Queries Montgomery’s ArcGIS datasets for structured city data (permits, 311 requests, violations, etc.)
  4. Searches the web via Bright Data for additional context (news, council meetings, city announcements)
  5. Synthesizes a response with data citations and practical next steps
  6. Controls the dashboard — switching tabs, toggling layers, navigating sub-pages, or generating reports when relevant
The AI uses real data — not pre-written answers. Every response is generated fresh based on current city datasets.

Two Data Tools

ToolWhat It QueriesBest For
ArcGIS QueryMontgomery’s 40+ city datasets (permits, violations, 311 requests, boundaries, facilities)Structured data — counts, locations, status, trends
Web SearchLive web results via Bright DataNews, council decisions, how-to guides, current events
The AI automatically chooses the right tool — or combines both when appropriate. For example, asking “what’s happening with road construction on Eastern Blvd?” triggers both an ArcGIS query for paving project data and a web search for recent news.

Dashboard Control Actions

The AI can control the dashboard UI on your behalf. These actions happen automatically when relevant:

Core Actions (All Portals)

ActionWhat It Does
switch_data_tabChanges between Map, Table, and Chart views
set_year_rangeAdjusts the global year filter
toggle_map_layerShows or hides specific data layers on the map
select_table_datasetChanges which dataset the table displays
move_chat_panelRepositions chat to left or right side (desktop)
toggle_chat_panelOpens or closes the chat panel (mobile)
toggle_council_districtsShows or hides the 9-district boundary overlay

Resident Portal Actions

ActionWhat It Does
refresh_news_categoryRefreshes City Pulse news for a specific category (news, government, safety, events, infrastructure)

Business Portal Actions

ActionWhat It Does
filter_land_by_neighborhoodFilters the Vacant Land Explorer to show parcels in a specific neighborhood
filter_land_by_statusFilters parcels by disposition status (Available, Holding, Use, Leased)
suggest_land_reuseGenerates AI-powered reuse and development ideas for selected parcels

City Staff Portal Actions

ActionWhat It Does
generate_staffing_reportGenerates a formatted MPD staffing report with vacancy rates, district service demand, and infrastructure metrics

Researcher Portal Actions

ActionWhat It Does
fly_to_civil_rights_landmarkPans and zooms the map to a specific civil rights landmark with historical context

Executive Portal Actions

ActionWhat It Does
generate_briefingGenerates a quick or detailed morning briefing from all city data
highlight_alertScrolls to and highlights a specific priority alert in the queue
switch_executive_viewNavigates to a specific section of the executive dashboard

Insights Portal Actions

ActionWhat It Does
switch_insight_tabSwitches between the 5 tabs (Overview, Equity, Trends, Districts, Stories)
select_districtFocuses the dashboard on a specific council district
toggle_metricShows or hides a specific metric in the trends view
generate_data_storyGenerates an AI-written narrative story from the current data
You don’t need to use any of these manually — the AI will activate them when your question warrants it. But you can also control everything yourself using the dashboard tabs and buttons.

Tips for Better Questions

  • Be specific about location — “District 5” or “Eastern Blvd” gets more targeted results than “Montgomery”
  • Mention time periods — “in 2024” or “this quarter” helps the AI filter data appropriately
  • Ask follow-ups — The AI remembers context within your session
  • Request formats — Ask for “a table,” “a summary,” or “an executive briefing” to get structured output
  • Combine topics — “Cross-reference 311 complaints with code violations in District 3” works
  • Ask for dashboard control — “Show me the equity tab” or “Fly to the Rosa Parks Museum” to navigate visually

Portal-Specific Behavior

Each portal’s AI has a different personality and focus:
PortalAI StyleTypical Response Length
ResidentFriendly, plain language, practical next steps2-3 sentences
BusinessProfessional, data-forward, opportunity-minded3-5 sentences with metrics
City StaffAnalytical, report-oriented, executive-readyStructured with data points
ResearcherThorough, methodological, interdisciplinaryDetailed with caveats
ExecutiveConcise, headline-first, action-orientedBriefing format with KPIs
InsightsAnalytical, narrative-driven, equity-awareData stories with district context

Limitations

  • Not official advice — AI responses are informational, not legal or official government decisions
  • Data freshness — ArcGIS data reflects the most recent city upload (usually same-day for active datasets)
  • No personal data — The AI cannot access private records or account information
  • Session-based — Chat history is maintained during your session but may not persist across visits