# everguide

MCP server for accessible indoor navigation and building management. Query buildings, floors, rooms, elevators, and parking spaces. Calculate barrier-free routes, search facilities, and submit access…

## Quick Start

```bash
# Connect this server (installs CLI if needed)
npx -y @smithery/cli@latest mcp add indoor/everguide

# Browse available tools
npx -y @smithery/cli@latest tool list indoor/everguide

# Get full schema for a tool
npx -y @smithery/cli@latest tool get indoor/everguide indoor_list_customers

# Call a tool
npx -y @smithery/cli@latest tool call indoor/everguide indoor_list_customers '{}'
```

## Direct MCP Connection

Endpoint: `https://everguide--indoor.run.tools`

## Tools (26)

- `indoor_list_customers` — Get all customers in the system with their contract details and statistics.
- `indoor_list_elevators` — Get elevators for a customer, building, or floor. Returns elevator details including accessibility status and floor con…
- `indoor_authorize_user` — ⚡ Call at session start. Authorizes user and returns role (admin/facility/user), customer_key, and optional customer_ro…
- `indoor_get_entity_options` — Get permissions and allowed values for a room, floor, elevator, or parking space. Call when uncertain about allowed val…
- `indoor_get_feedback` — Get feedback with filters. Admin-only. Sorted newest first.
- `indoor_search` — Search indoor data (rooms, destinations, parking, floors). Uses cache first for fast results, falls back to GraphQL API…
- `indoor_get_route` — Indoor navigation within single building ONLY (not between buildings). Mobile: use room deep_link for one-tap nav. Acce…
- `indoor_submit_feedback` — Submit feedback: bugs, data errors, suggestions. Auto-submit on detected errors. All roles.
- `indoor_echo` — Simple diagnostic tool that echoes back your message. Use to verify MCP tool execution is working.
- `indoor_graphql_query` — Execute a GraphQL query against the everguide backend. Use for advanced queries, data aggregation, and debugging. Devel…
- `indoor_set_response_format` — Set format: 'json' or 'toon'. Default is TOON (30-60% token reduction). Persists for session.
- `indoor_list_address_entrances` — Get entrances by: coords, building_id, customer_key, or address. Falls back to session. Sorted by type. find_nearest=tr…
- `indoor_list_address_floors` — ✅ Get floors by: floor_ids, building_id, customer_key, or coords. Falls back to session context. Sorted by level. Workf…
- `indoor_list_addresses` — ✅ START HERE: List all physical addresses with their buildings. Each address shows building count, entrance count, and …
- `indoor_list_floor_rooms` — ✅ Get rooms for floor (pagination: 256/page). Cache+API. Workflow: list_addresses→get_address_floors→get_floor_rooms.
- `indoor_list_floor_destinations` — Get destinations/POIs for a floor with pagination and category filtering. Direct API query.
- `indoor_submit_updates` — Submit bulk update request for multiple rooms/floors/elevators/parking. Requires approval from admin/facility manager. …
- `indoor_list_bulk_updates` — List bulk update requests. Shows your submitted requests and requests you can approve (if admin/facility). Filter by st…
- `indoor_get_bulk_update_status` — Get detailed status of a specific bulk update request including per-item progress, errors, and completion percentage. U…
- `indoor_review_bulk_update` — Approve or reject a pending bulk update request. Admin/facility managers can review requests for their customer. Approv…
- `indoor_cancel_bulk_update` — Cancel a pending or in-progress bulk update request. Can only cancel your own requests unless you're admin. In-progress…
- `indoor_retry_bulk_update` — Retry failed items in a completed bulk update request. Reconciles items against current data before retrying — items al…
- `indoor_validate_bulk_updates` — Run validators on pending bulk update requests. Checks for staleness, field validity, and other issues. Use before appr…
- `indoor_delete_item_validation` — Delete an item validation comment. Users can only delete their own comments.
- `parking_list_spaces` — List parking spaces by floor, bounding box, or location. Returns parking details including status, type, capacity, and …
- `indoor_find_facility` — Find a facility (coffee, restroom, ATM, elevator, etc.) on a floor. Searches destinations and rooms by keyword. When mu…

```bash
# Get full input/output schema for a tool
npx -y @smithery/cli@latest tool get indoor/everguide <tool-name>
```

## Resources

- `user://current` — Your user profile, preferences, and settings
- `user://current/navigation-history` — Your recent routes and frequently visited destinations
- `user://current/favorites` — Your saved favorite locations and custom labels
- `user://{username}` — Access any user's profile by replacing {username} with actual username
- `workflow://pending-approvals` — Bulk update requests awaiting your approval
- `bulk-update://list` — Submitted bulk update requests and their status
- `bulk-update://{request_id}` — Detailed status and progress for a specific bulk update request
- `floor://{floor_id}` — Detailed information about a specific floor including rooms, area, and navigation
- `room://{floor_id}/{room_id}` — Detailed information about a specific room including type, area, and features
- `building://{building_id}` — Detailed information about a specific building including floors and entrances
- `address://{address_id}` — Building address details with sub-resources for elevators and destinations
- `address://{address_id}/elevators` — All elevators at a specific address with status summary
- `address://{address_id}/destinations` — All destinations/POIs at a specific address across all floors
- `floor://{floor_id}/elevators` — Elevators serving a specific floor with status summary
- `floor://{floor_id}/destinations` — Destinations/POIs on a specific floor with category summary
- `feedback://summary` — Overview of user feedback including counts by type and severity
- `feedback://list` — Filtered list of user feedback items with details
- `system://status` — Overall system health, active sessions, and performance metrics
- `system://cache-stats` — Detailed cache performance metrics including hit rates and memory usage
- `system://sessions` — List of currently active user sessions and their activity
- `customer://list` — List of all customers in the system
- `customer://{customer_key}/elevators` — [Deprecated] Use address://{address_id}/elevators or floor://{floor_id}/elevators instead. Access any customer's elevat…
- `customer://{customer_key}/floors` — Access any customer's floors by replacing {customer_key}
- `customer://{customer_key}/addresses` — Access any customer's addresses by replacing {customer_key}
- `customer://{customer_key}/summary` — Access any customer's summary by replacing {customer_key}

## Prompts (10)

- `session-initialization` — IMPORTANT: Use this prompt at the start of every session to retrieve user information and adjust behavior accordingly. …
- `find-accessible-route` (start_floor_id, target_floor_id, room_type, accessibility_needs) — Find an accessible route to a specific destination. Proactively asks about accessibility needs if not specified.
- `emergency-evacuation-route` (current_floor_id) — Find emergency evacuation route to nearest exit
- `disable-elevator-maintenance` (elevator_id, reason) — Disable an elevator for maintenance (facility/admin users only, non-read-only)
- `enable-elevator` (elevator_id) — Enable an elevator after maintenance or repair (facility/admin users only, non-read-only)
- `update_backend_data` — Guide for updating floors and rooms: common values, when to skip get_room_options, backend value requirements, language…
- `accessibility-report` (customer_key) — Generate a comprehensive accessibility report for a customer (admin/facility users only)
- `elevator-status-summary` (customer_key) — Get a quick summary of all elevator statuses (admin/facility users only)

---
*Response truncated. Use `npx -y @smithery/cli@latest` for complete data.*
