cupix-compass
Server Details
Explore and analyze Cupix construction site data: 360 images, progress, and insights.
- Status
- Healthy
- Last Tested
- Transport
- Streamable HTTP
- URL
Glama MCP Gateway
Connect through Glama MCP Gateway for full control over tool access and complete visibility into every call.
Full call logging
Every tool call is logged with complete inputs and outputs, so you can debug issues and audit what your agents are doing.
Tool access control
Enable or disable individual tools per connector, so you decide what your agents can and cannot do.
Managed credentials
Glama handles OAuth flows, token storage, and automatic rotation, so credentials never expire on your clients.
Usage analytics
See which tools your agents call, how often, and when, so you can understand usage patterns and catch anomalies.
Tool Definition Quality
Average 4.3/5 across 6 of 6 tools scored. Lowest: 3/5.
Each tool has a distinct purpose: progress analysis, SQL query, context management, project listing, visual search, and project focus setting. No overlap.
All tool names use a consistent lowercase-with-hyphens verb_noun pattern (e.g., analyze-progress-and-forecasts, set-focus-project), making them predictable.
With 6 tools, the set is well-scoped for core workflows: project selection, data query, progress analysis, and photo search. Neither too many nor too few.
Covers essential analysis and retrieval operations, but lacks data modification tools (create/update/delete). Minor gap given the analytical focus.
Available Tools
6 toolsanalyze-progress-and-forecastsAnalyze construction progress and forecasts from SiteInsights and/or Work in Place (WIP) intelligence.Read-onlyInspect
Analyze Work In Place (WIP) progress from SiteInsights(SI) — completion rates, delays, and forecasts. Generates a progress report: overall completion, progress by category/vendor/level, delay analysis, and estimated completion dates. WORKFLOW:
Default: call this tool with NO arguments. The server resolves team_domain/facility_key from the saved current project (set via
set-focus-project). Do NOT calllist-my-projectsagain just to obtain these values — the saved selection is the source of truth.Only when the response indicates the current project is missing, run
list-my-projects→ ask the user →set-focus-project, then retry.Pass explicit arguments only when the user clearly wants to analyze a different project than the saved one.
Args: team_domain: Omit by default. Pass only to override the current project. facility_key: Omit by default. Pass only to override the current project. user_intent: REQUIRED. Pass the user's original question or request verbatim. Used for analytics only, does not affect results.
Returns: Progress analysis report with completion rates and forecasts
| Name | Required | Description | Default |
|---|---|---|---|
| team_domain | No | ||
| user_intent | No | ||
| facility_key | No |
Output Schema
| Name | Required | Description |
|---|---|---|
| result | Yes |
ask-about-project-dataAsk about anything in your projects: properties, BIM and drawing files, annotations, and capture details.Read-onlyInspect
Query the construction project database using natural language (Text-to-SQL).
Converts natural language into SQL to retrieve captures, annotations, progress metrics,
schedules, and other project records.
Pass the user's question as-is without modification.
For trade visibility, use analyze-progress-and-forecasts instead.
WORKFLOW:
Default: call this tool with only
query. The server resolves team_domain/facility_key from the saved current project (set viaset-focus-project). Do NOT calllist-my-projectsagain just to obtain these values.Only when the response indicates the current project is missing, run
list-my-projects→ ask the user →set-focus-project, then retry.Pass explicit team_domain/facility_key only when the user clearly wants to query a different project than the saved one. Available tables:
progresses: SI progress metrics (level, category, phase, workarea, cost, dates)
captures: Camera captures metadata (level, camera_model, capture_state, user_email)
records: Capture events with timestamps (captured_at, state, id)
photo_notes: Photonotes (description, state, user_email, created_at)
voice_notes: Voicenotes (level, description, state, user_email, created_at)
facilities: Site info (name, address, size, location, bim_count, created_at)
users: User profiles (name, email)
workareas: Spatial zones (level, name, user_name)
Args: query: Natural language question (pass as-is, no SQL syntax) team_domain: Omit by default. Pass only to override the current project. facility_key: Omit by default. Pass only to override the current project. user_intent: REQUIRED. Pass the user's original question or request verbatim. Used for analytics only, does not affect results.
Returns: List of TextContent with query results and metadata
| Name | Required | Description | Default |
|---|---|---|---|
| query | Yes | ||
| team_domain | No | ||
| user_intent | No | ||
| facility_key | No |
Output Schema
| Name | Required | Description |
|---|---|---|
| result | Yes |
check-current-projectSee which project the conversation is currently focused on.Read-onlyInspect
Return the currently saved team_domain and facility_key for this user.
| Name | Required | Description | Default |
|---|---|---|---|
| user_intent | No |
Output Schema
| Name | Required | Description |
|---|---|---|
| result | Yes |
list-my-projectsBrowse all the CupixWorks projects you have access to.Read-onlyInspect
List construction projects the user can access within a team.
Use this tool ONLY when the user wants to switch project or has no
saved current project. If check-current-project returns a
saved facility_key, do NOT call this tool — call the analysis tool
directly with no arguments.
Required workflow when this tool IS appropriate:
Present the returned projects to the user.
Wait for the user to select one.
Call
set-focus-projectwith team_domain and facility_key to persist the selection so future sessions skip this step.Then invoke analysis tools.
Args: team_domain: Team domain. Optional; if omitted, falls back to the saved current project, otherwise returns the team list so the caller can pick a team first. user_intent: REQUIRED. Pass the user's original question or request verbatim. Used for analytics only, does not affect results.
Returns: str: Accessible facilities with their keys and names.
| Name | Required | Description | Default |
|---|---|---|---|
| team_domain | No | ||
| user_intent | No |
Output Schema
| Name | Required | Description |
|---|---|---|
| result | Yes |
search-site-photosFind what matters in geo-tagged 360° site photos by content, like site context, safety risks, quality issues, and key objects.Read-onlyInspect
Search 360° captures (panoramic site photos) by visual content analysis.
Searches what is VISUALLY SEEN in 360° captures — safety hazards, quality issues, work types,
objects, equipment, materials, and physical site conditions.
Do NOT use for capture counts or statistics — use ask-about-project-data instead.
WORKFLOW:
Default: call this tool with only
query(and optionally date filters / limit). The server resolves team_domain/facility_key from the saved current project (set viaset-focus-project). Do NOT calllist-my-projectsagain just to obtain these values.Only when the response indicates the current project is missing, run
list-my-projects→ ask the user →set-focus-project, then retry.Pass explicit team_domain/facility_key only when the user clearly wants to search a different project than the saved one.
Date filtering: Only use start_date/end_date when the user explicitly mentions dates. Format: YYYY-MM-DD. Omit entirely for general queries without date context.
Args: query: Keywords or phrases describing what to find in 360° captures team_domain: Omit by default. Pass only to override the current project. facility_key: Omit by default. Pass only to override the current project. user_intent: REQUIRED. Pass the user's original question or request verbatim. Used for analytics only, does not affect results. limit: Maximum number of results (default: 10) start_date: Start date filter, YYYY-MM-DD (omit if no date context) end_date: End date filter, YYYY-MM-DD (omit if no date context)
Returns: ToolResult: Image viewer links, 3D coordinates, and capture dates
| Name | Required | Description | Default |
|---|---|---|---|
| limit | No | ||
| query | Yes | ||
| end_date | No | ||
| start_date | No | ||
| team_domain | No | ||
| user_intent | No | ||
| facility_key | No |
Output Schema
| Name | Required | Description |
|---|---|---|
| result | Yes |
set-focus-projectChoose the project to focus on so answers stay accurate and on topic.Read-onlyInspect
Save the user's current team and project so subsequent tool calls can omit
the team_domain / facility_key arguments.
Args:
team_domain: Team domain to remember (required unless clear=True).
facility_key: Facility key to remember (required unless clear=True).
clear: If true, delete the stored selection and ignore the other args.
user_intent: REQUIRED. Pass the user's original question or request verbatim. Used for analytics only, does not affect results.
Returns: Human-readable confirmation message.
| Name | Required | Description | Default |
|---|---|---|---|
| clear | No | ||
| team_domain | No | ||
| user_intent | No | ||
| facility_key | No |
Output Schema
| Name | Required | Description |
|---|---|---|
| result | Yes |
Claim this connector by publishing a /.well-known/glama.json file on your server's domain with the following structure:
{
"$schema": "https://glama.ai/mcp/schemas/connector.json",
"maintainers": [{ "email": "your-email@example.com" }]
}The email address must match the email associated with your Glama account. Once published, Glama will automatically detect and verify the file within a few minutes.
Control your server's listing on Glama, including description and metadata
Access analytics and receive server usage reports
Get monitoring and health status updates for your server
Feature your server to boost visibility and reach more users
For users:
Full audit trail – every tool call is logged with inputs and outputs for compliance and debugging
Granular tool control – enable or disable individual tools per connector to limit what your AI agents can do
Centralized credential management – store and rotate API keys and OAuth tokens in one place
Change alerts – get notified when a connector changes its schema, adds or removes tools, or updates tool definitions, so nothing breaks silently
For server owners:
Proven adoption – public usage metrics on your listing show real-world traction and build trust with prospective users
Tool-level analytics – see which tools are being used most, helping you prioritize development and documentation
Direct user feedback – users can report issues and suggest improvements through the listing, giving you a channel you would not have otherwise
The connector status is unhealthy when Glama is unable to successfully connect to the server. This can happen for several reasons:
The server is experiencing an outage
The URL of the server is wrong
Credentials required to access the server are missing or invalid
If you are the owner of this MCP connector and would like to make modifications to the listing, including providing test credentials for accessing the server, please contact support@glama.ai.
Discussions
No comments yet. Be the first to start the discussion!