{
  "version": "1",
  "tools": [
    {
      "annotations": {
        "destructiveHint": false,
        "idempotentHint": false,
        "openWorldHint": false,
        "readOnlyHint": true
      },
      "description": "Get saved dashboard display metadata and bounded widget descriptors.",
      "inputSchema": {
        "type": "object",
        "properties": {
          "project_id": {
            "type": "string",
            "description": "ID of an accessible MCP-enabled project returned by list_projects."
          },
          "dashboard_id": {
            "type": "string"
          }
        },
        "required": [
          "project_id",
          "dashboard_id"
        ],
        "additionalProperties": false
      },
      "name": "get_dashboard",
      "outputSchema": {
        "type": "object",
        "properties": {
          "data": {
            "type": "object",
            "properties": {
              "dashboard": {
                "type": "object",
                "properties": {
                  "id": {
                    "type": "string"
                  },
                  "name": {
                    "type": "string"
                  },
                  "revision": {
                    "type": "integer"
                  },
                  "status": {
                    "type": "string"
                  }
                },
                "required": [
                  "id",
                  "name",
                  "revision",
                  "status"
                ],
                "additionalProperties": false
              },
              "widgets": {
                "type": [
                  "null",
                  "array"
                ],
                "items": {
                  "type": "object",
                  "properties": {
                    "id": {
                      "type": "string"
                    },
                    "name": {
                      "type": "string"
                    },
                    "type": {
                      "type": "string"
                    }
                  },
                  "required": [
                    "id",
                    "name",
                    "type"
                  ],
                  "additionalProperties": false
                }
              },
              "widgets_truncated": {
                "type": "boolean"
              }
            },
            "required": [
              "dashboard",
              "widgets",
              "widgets_truncated"
            ],
            "additionalProperties": false
          },
          "next_cursor": {
            "type": "string"
          },
          "truncated": {
            "type": "boolean"
          },
          "request_id": {
            "type": "string"
          }
        },
        "required": [
          "data",
          "truncated",
          "request_id"
        ],
        "additionalProperties": false
      }
    },
    {
      "annotations": {
        "destructiveHint": false,
        "idempotentHint": false,
        "openWorldHint": false,
        "readOnlyHint": true
      },
      "description": "Read a bounded canonical public guide or section by known ID.",
      "inputSchema": {
        "type": "object",
        "properties": {
          "project_id": {
            "type": "string",
            "description": "ID of an accessible MCP-enabled project returned by list_projects."
          },
          "document_id": {
            "type": "string"
          },
          "section_id": {
            "type": "string"
          }
        },
        "required": [
          "project_id",
          "document_id"
        ],
        "additionalProperties": false
      },
      "name": "get_documentation",
      "outputSchema": {
        "type": "object",
        "properties": {
          "data": {
            "type": "object",
            "properties": {
              "id": {
                "type": "string"
              },
              "title": {
                "type": "string"
              },
              "url": {
                "type": "string"
              },
              "text": {
                "type": "string"
              },
              "version": {
                "type": "string"
              }
            },
            "required": [
              "id",
              "title",
              "url",
              "version"
            ],
            "additionalProperties": false
          },
          "next_cursor": {
            "type": "string"
          },
          "truncated": {
            "type": "boolean"
          },
          "request_id": {
            "type": "string"
          }
        },
        "required": [
          "data",
          "truncated",
          "request_id"
        ],
        "additionalProperties": false
      }
    },
    {
      "annotations": {
        "destructiveHint": false,
        "idempotentHint": false,
        "openWorldHint": false,
        "readOnlyHint": true
      },
      "description": "Get sanitized ingestion progress and recovery guidance; excludes payloads and raw logs.",
      "inputSchema": {
        "type": "object",
        "properties": {
          "project_id": {
            "type": "string",
            "description": "ID of an accessible MCP-enabled project returned by list_projects."
          },
          "run_id": {
            "type": "string"
          }
        },
        "required": [
          "project_id",
          "run_id"
        ],
        "additionalProperties": false
      },
      "name": "get_ingestion_run",
      "outputSchema": {
        "type": "object",
        "properties": {
          "data": {
            "type": "object",
            "properties": {
              "id": {
                "type": "string"
              },
              "status": {
                "type": "string"
              },
              "attempt_count": {
                "type": "integer"
              },
              "created_at": {
                "type": "string"
              },
              "completed_at": {
                "type": [
                  "null",
                  "string"
                ]
              },
              "error_code": {
                "type": [
                  "null",
                  "string"
                ]
              },
              "counts": {
                "type": [
                  "null",
                  "object"
                ],
                "properties": {
                  "attempted": {
                    "type": "integer"
                  },
                  "written": {
                    "type": "integer"
                  },
                  "overridden": {
                    "type": "integer"
                  },
                  "removed": {
                    "type": "integer"
                  },
                  "duplicates_ignored": {
                    "type": "integer"
                  }
                },
                "required": [
                  "attempted",
                  "written",
                  "overridden",
                  "removed",
                  "duplicates_ignored"
                ],
                "additionalProperties": false
              },
              "warnings": {
                "type": [
                  "null",
                  "array"
                ],
                "items": {
                  "type": "string"
                }
              },
              "warning_count": {
                "type": "integer"
              },
              "guidance": {
                "type": "string"
              },
              "url": {
                "type": "string"
              }
            },
            "required": [
              "id",
              "status",
              "attempt_count",
              "created_at",
              "completed_at",
              "warning_count"
            ],
            "additionalProperties": false
          },
          "next_cursor": {
            "type": "string"
          },
          "truncated": {
            "type": "boolean"
          },
          "request_id": {
            "type": "string"
          }
        },
        "required": [
          "data",
          "truncated",
          "request_id"
        ],
        "additionalProperties": false
      }
    },
    {
      "annotations": {
        "destructiveHint": false,
        "idempotentHint": false,
        "openWorldHint": false,
        "readOnlyHint": true
      },
      "description": "Get an accessible instrument and bounded variable summaries without formula source or secrets.",
      "inputSchema": {
        "type": "object",
        "properties": {
          "project_id": {
            "type": "string",
            "description": "ID of an accessible MCP-enabled project returned by list_projects."
          },
          "instrument_id": {
            "type": "string"
          }
        },
        "required": [
          "project_id",
          "instrument_id"
        ],
        "additionalProperties": false
      },
      "name": "get_instrument",
      "outputSchema": {
        "type": "object",
        "properties": {
          "data": {
            "type": "object",
            "properties": {
              "instrument": {
                "type": "object",
                "properties": {
                  "id": {
                    "type": "string"
                  },
                  "name": {
                    "type": "string"
                  },
                  "site_id": {
                    "type": "string"
                  },
                  "site": {
                    "type": "string"
                  },
                  "status": {
                    "type": "string"
                  }
                },
                "required": [
                  "id",
                  "name",
                  "site_id",
                  "site",
                  "status"
                ],
                "additionalProperties": false
              },
              "variables": {
                "type": [
                  "null",
                  "array"
                ],
                "items": {
                  "type": "object",
                  "properties": {
                    "id": {
                      "type": "string"
                    },
                    "name": {
                      "type": "string"
                    },
                    "kind": {
                      "type": "string"
                    },
                    "value_type": {
                      "type": "string"
                    },
                    "unit": {
                      "type": [
                        "null",
                        "string"
                      ]
                    },
                    "cadence_seconds": {
                      "type": [
                        "null",
                        "integer"
                      ]
                    },
                    "value": {
                      "type": [
                        "null",
                        "number"
                      ]
                    }
                  },
                  "required": [
                    "id",
                    "name",
                    "kind",
                    "value_type",
                    "unit"
                  ],
                  "additionalProperties": false
                }
              },
              "variables_truncated": {
                "type": "boolean"
              }
            },
            "required": [
              "instrument",
              "variables",
              "variables_truncated"
            ],
            "additionalProperties": false
          },
          "next_cursor": {
            "type": "string"
          },
          "truncated": {
            "type": "boolean"
          },
          "request_id": {
            "type": "string"
          }
        },
        "required": [
          "data",
          "truncated",
          "request_id"
        ],
        "additionalProperties": false
      }
    },
    {
      "annotations": {
        "destructiveHint": false,
        "idempotentHint": false,
        "openWorldHint": false,
        "readOnlyHint": true
      },
      "description": "Get the selected project, current capabilities, scopes and query limits.",
      "inputSchema": {
        "type": "object",
        "properties": {
          "project_id": {
            "type": "string",
            "description": "ID of an accessible MCP-enabled project returned by list_projects."
          }
        },
        "required": [
          "project_id"
        ],
        "additionalProperties": false
      },
      "name": "get_project_context",
      "outputSchema": {
        "type": "object",
        "properties": {
          "data": {
            "type": "object",
            "properties": {
              "project_id": {
                "type": "string"
              },
              "name": {
                "type": "string"
              },
              "capabilities": {
                "type": [
                  "null",
                  "array"
                ],
                "items": {
                  "type": "string"
                }
              },
              "scopes": {
                "type": [
                  "null",
                  "array"
                ],
                "items": {
                  "type": "string"
                }
              },
              "timezone": {
                "type": "string"
              },
              "limits": {
                "type": "object",
                "properties": {
                  "list_default": {
                    "type": "integer"
                  },
                  "list_maximum": {
                    "type": "integer"
                  },
                  "variables": {
                    "type": "integer"
                  },
                  "points": {
                    "type": "integer"
                  },
                  "days": {
                    "type": "integer"
                  },
                  "raw_days": {
                    "type": "integer"
                  },
                  "response_bytes": {
                    "type": "integer"
                  }
                },
                "required": [
                  "list_default",
                  "list_maximum",
                  "variables",
                  "points",
                  "days",
                  "raw_days",
                  "response_bytes"
                ],
                "additionalProperties": false
              },
              "api_version": {
                "type": "string"
              },
              "docs_version": {
                "type": "string"
              }
            },
            "required": [
              "project_id",
              "name",
              "capabilities",
              "scopes",
              "timezone",
              "limits",
              "api_version",
              "docs_version"
            ],
            "additionalProperties": false
          },
          "next_cursor": {
            "type": "string"
          },
          "truncated": {
            "type": "boolean"
          },
          "request_id": {
            "type": "string"
          }
        },
        "required": [
          "data",
          "truncated",
          "request_id"
        ],
        "additionalProperties": false
      }
    },
    {
      "annotations": {
        "destructiveHint": false,
        "idempotentHint": false,
        "openWorldHint": false,
        "readOnlyHint": true
      },
      "description": "List bounded ingestion status summaries; requires current organization administration.",
      "inputSchema": {
        "type": "object",
        "properties": {
          "project_id": {
            "type": "string",
            "description": "ID of an accessible MCP-enabled project returned by list_projects."
          },
          "start": {
            "type": "string"
          },
          "end": {
            "type": "string"
          },
          "connection_id": {
            "type": "string"
          },
          "status": {
            "type": "string"
          },
          "cursor": {
            "type": "string"
          },
          "limit": {
            "type": "integer",
            "description": "Page size: default 20, maximum 100."
          }
        },
        "required": [
          "project_id",
          "start",
          "end"
        ],
        "additionalProperties": false
      },
      "name": "list_ingestion_runs",
      "outputSchema": {
        "type": "object",
        "properties": {
          "data": {
            "type": [
              "null",
              "array"
            ],
            "items": {
              "type": "object",
              "properties": {
                "id": {
                  "type": "string"
                },
                "status": {
                  "type": "string"
                },
                "attempt_count": {
                  "type": "integer"
                },
                "created_at": {
                  "type": "string"
                },
                "completed_at": {
                  "type": [
                    "null",
                    "string"
                  ]
                },
                "error_code": {
                  "type": [
                    "null",
                    "string"
                  ]
                },
                "counts": {
                  "type": [
                    "null",
                    "object"
                  ],
                  "properties": {
                    "attempted": {
                      "type": "integer"
                    },
                    "written": {
                      "type": "integer"
                    },
                    "overridden": {
                      "type": "integer"
                    },
                    "removed": {
                      "type": "integer"
                    },
                    "duplicates_ignored": {
                      "type": "integer"
                    }
                  },
                  "required": [
                    "attempted",
                    "written",
                    "overridden",
                    "removed",
                    "duplicates_ignored"
                  ],
                  "additionalProperties": false
                },
                "warnings": {
                  "type": [
                    "null",
                    "array"
                  ],
                  "items": {
                    "type": "string"
                  }
                },
                "warning_count": {
                  "type": "integer"
                },
                "guidance": {
                  "type": "string"
                },
                "url": {
                  "type": "string"
                }
              },
              "required": [
                "id",
                "status",
                "attempt_count",
                "created_at",
                "completed_at",
                "warning_count"
              ],
              "additionalProperties": false
            }
          },
          "next_cursor": {
            "type": "string"
          },
          "truncated": {
            "type": "boolean"
          },
          "request_id": {
            "type": "string"
          }
        },
        "required": [
          "data",
          "truncated",
          "request_id"
        ],
        "additionalProperties": false
      }
    },
    {
      "annotations": {
        "destructiveHint": false,
        "idempotentHint": false,
        "openWorldHint": false,
        "readOnlyHint": true
      },
      "description": "List typed variables and constants of an accessible instrument. Formula internals are excluded.",
      "inputSchema": {
        "type": "object",
        "properties": {
          "project_id": {
            "type": "string",
            "description": "ID of an accessible MCP-enabled project returned by list_projects."
          },
          "instrument_id": {
            "type": "string"
          },
          "kind": {
            "type": "string",
            "description": "all, ingested, calculated or constant."
          },
          "cursor": {
            "type": "string"
          },
          "limit": {
            "type": "integer",
            "description": "Page size: default 20, maximum 100."
          }
        },
        "required": [
          "project_id",
          "instrument_id"
        ],
        "additionalProperties": false
      },
      "name": "list_instrument_variables",
      "outputSchema": {
        "type": "object",
        "properties": {
          "data": {
            "type": [
              "null",
              "array"
            ],
            "items": {
              "type": "object",
              "properties": {
                "id": {
                  "type": "string"
                },
                "name": {
                  "type": "string"
                },
                "kind": {
                  "type": "string"
                },
                "value_type": {
                  "type": "string"
                },
                "unit": {
                  "type": [
                    "null",
                    "string"
                  ]
                },
                "cadence_seconds": {
                  "type": [
                    "null",
                    "integer"
                  ]
                },
                "value": {
                  "type": [
                    "null",
                    "number"
                  ]
                }
              },
              "required": [
                "id",
                "name",
                "kind",
                "value_type",
                "unit"
              ],
              "additionalProperties": false
            }
          },
          "next_cursor": {
            "type": "string"
          },
          "truncated": {
            "type": "boolean"
          },
          "request_id": {
            "type": "string"
          }
        },
        "required": [
          "data",
          "truncated",
          "request_id"
        ],
        "additionalProperties": false
      }
    },
    {
      "annotations": {
        "destructiveHint": false,
        "idempotentHint": false,
        "openWorldHint": false,
        "readOnlyHint": true
      },
      "description": "List active MCP-enabled projects you can access across your organizations. Use the returned ID as project_id in every other tool.",
      "inputSchema": {
        "type": "object",
        "properties": {
          "cursor": {
            "type": "string"
          },
          "limit": {
            "type": "integer",
            "description": "Page size: default 20, maximum 100."
          }
        },
        "additionalProperties": false
      },
      "name": "list_projects",
      "outputSchema": {
        "type": "object",
        "properties": {
          "data": {
            "type": [
              "null",
              "array"
            ],
            "items": {
              "type": "object",
              "properties": {
                "id": {
                  "type": "string"
                },
                "name": {
                  "type": "string"
                },
                "organization_id": {
                  "type": "string"
                },
                "organization_name": {
                  "type": "string"
                }
              },
              "required": [
                "id",
                "name",
                "organization_id",
                "organization_name"
              ],
              "additionalProperties": false
            }
          },
          "next_cursor": {
            "type": "string"
          },
          "truncated": {
            "type": "boolean"
          },
          "request_id": {
            "type": "string"
          }
        },
        "required": [
          "data",
          "truncated",
          "request_id"
        ],
        "additionalProperties": false
      }
    },
    {
      "annotations": {
        "destructiveHint": false,
        "idempotentHint": false,
        "openWorldHint": false,
        "readOnlyHint": true
      },
      "description": "Query a saved widget's sources within an explicit UTC time range. Sources cannot be overridden.",
      "inputSchema": {
        "type": "object",
        "properties": {
          "project_id": {
            "type": "string",
            "description": "ID of an accessible MCP-enabled project returned by list_projects."
          },
          "dashboard_id": {
            "type": "string"
          },
          "widget_id": {
            "type": "string"
          },
          "start": {
            "type": "string"
          },
          "end": {
            "type": "string"
          },
          "cursor": {
            "type": "string"
          },
          "limit": {
            "type": "integer",
            "description": "Page size: default 20, maximum 100."
          }
        },
        "required": [
          "project_id",
          "dashboard_id",
          "widget_id",
          "start",
          "end"
        ],
        "additionalProperties": false
      },
      "name": "query_dashboard_widget",
      "outputSchema": {
        "type": "object",
        "properties": {
          "data": {
            "type": "object",
            "properties": {
              "type": {
                "type": "string"
              },
              "revision": {
                "type": "integer"
              },
              "content": true,
              "start": {
                "type": "string"
              },
              "end": {
                "type": "string"
              },
              "timezone": {
                "type": "string"
              }
            },
            "required": [
              "type",
              "revision",
              "content",
              "start",
              "end",
              "timezone"
            ],
            "additionalProperties": false
          },
          "next_cursor": {
            "type": "string"
          },
          "truncated": {
            "type": "boolean"
          },
          "request_id": {
            "type": "string"
          }
        },
        "required": [
          "data",
          "truncated",
          "request_id"
        ],
        "additionalProperties": false
      }
    },
    {
      "annotations": {
        "destructiveHint": false,
        "idempotentHint": false,
        "openWorldHint": false,
        "readOnlyHint": true
      },
      "description": "Query up to 10 variables and 1,000 points in UTC. Raw range at most one day; aggregates at most 31 days.",
      "inputSchema": {
        "type": "object",
        "properties": {
          "project_id": {
            "type": "string",
            "description": "ID of an accessible MCP-enabled project returned by list_projects."
          },
          "instrument_id": {
            "type": "string"
          },
          "variable_ids": {
            "type": [
              "null",
              "array"
            ],
            "items": {
              "type": "string"
            }
          },
          "start": {
            "type": "string",
            "description": "Inclusive UTC RFC3339 timestamp."
          },
          "end": {
            "type": "string",
            "description": "Exclusive UTC RFC3339 timestamp."
          },
          "mode": {
            "type": "string",
            "description": "raw, mean, median, min or max."
          },
          "granularity": {
            "type": "string",
            "description": "Aggregate bucket: hour, day, month or year."
          },
          "cursor": {
            "type": "string"
          },
          "limit": {
            "type": "integer",
            "description": "Page size: default 20, maximum 100."
          }
        },
        "required": [
          "project_id",
          "instrument_id",
          "variable_ids",
          "start",
          "end"
        ],
        "additionalProperties": false
      },
      "name": "query_observations",
      "outputSchema": {
        "type": "object",
        "properties": {
          "data": {
            "type": "object",
            "properties": {
              "variables": {
                "type": [
                  "null",
                  "array"
                ],
                "items": {
                  "type": "object",
                  "properties": {
                    "id": {
                      "type": "string"
                    },
                    "name": {
                      "type": "string"
                    },
                    "kind": {
                      "type": "string"
                    },
                    "value_type": {
                      "type": "string"
                    },
                    "unit": {
                      "type": [
                        "null",
                        "string"
                      ]
                    },
                    "cadence_seconds": {
                      "type": [
                        "null",
                        "integer"
                      ]
                    },
                    "value": {
                      "type": [
                        "null",
                        "number"
                      ]
                    }
                  },
                  "required": [
                    "id",
                    "name",
                    "kind",
                    "value_type",
                    "unit"
                  ],
                  "additionalProperties": false
                }
              },
              "series": {
                "type": [
                  "null",
                  "array"
                ],
                "items": {
                  "type": "object",
                  "properties": {
                    "variable_id": {
                      "type": "string"
                    },
                    "timestamp": {
                      "type": "string"
                    },
                    "bucket_end": {
                      "type": [
                        "null",
                        "string"
                      ]
                    },
                    "number": {
                      "type": [
                        "null",
                        "number"
                      ]
                    },
                    "text": {
                      "type": [
                        "null",
                        "string"
                      ]
                    },
                    "missing_reason": {
                      "type": [
                        "null",
                        "string"
                      ]
                    },
                    "quality": {
                      "type": "string"
                    },
                    "status": {
                      "type": "string"
                    },
                    "count": {
                      "type": [
                        "null",
                        "integer"
                      ]
                    },
                    "rejected_count": {
                      "type": [
                        "null",
                        "integer"
                      ]
                    }
                  },
                  "required": [
                    "variable_id",
                    "timestamp",
                    "number",
                    "text",
                    "quality"
                  ],
                  "additionalProperties": false
                }
              },
              "start": {
                "type": "string"
              },
              "end": {
                "type": "string"
              },
              "covered_through": {
                "type": [
                  "null",
                  "string"
                ]
              },
              "mode": {
                "type": "string"
              },
              "granularity": {
                "type": "string"
              },
              "timezone": {
                "type": "string"
              }
            },
            "required": [
              "variables",
              "series",
              "start",
              "end",
              "covered_through",
              "mode",
              "timezone"
            ],
            "additionalProperties": false
          },
          "next_cursor": {
            "type": "string"
          },
          "truncated": {
            "type": "boolean"
          },
          "request_id": {
            "type": "string"
          }
        },
        "required": [
          "data",
          "truncated",
          "request_id"
        ],
        "additionalProperties": false
      }
    },
    {
      "annotations": {
        "destructiveHint": false,
        "idempotentHint": false,
        "openWorldHint": false,
        "readOnlyHint": true
      },
      "description": "Find accessible saved dashboards, including dashboard-only grants.",
      "inputSchema": {
        "type": "object",
        "properties": {
          "project_id": {
            "type": "string",
            "description": "ID of an accessible MCP-enabled project returned by list_projects."
          },
          "text": {
            "type": "string"
          },
          "cursor": {
            "type": "string"
          },
          "limit": {
            "type": "integer",
            "description": "Page size: default 20, maximum 100."
          }
        },
        "required": [
          "project_id"
        ],
        "additionalProperties": false
      },
      "name": "search_dashboards",
      "outputSchema": {
        "type": "object",
        "properties": {
          "data": {
            "type": [
              "null",
              "array"
            ],
            "items": {
              "type": "object",
              "properties": {
                "id": {
                  "type": "string"
                },
                "name": {
                  "type": "string"
                },
                "revision": {
                  "type": "integer"
                },
                "status": {
                  "type": "string"
                }
              },
              "required": [
                "id",
                "name",
                "revision",
                "status"
              ],
              "additionalProperties": false
            }
          },
          "next_cursor": {
            "type": "string"
          },
          "truncated": {
            "type": "boolean"
          },
          "request_id": {
            "type": "string"
          }
        },
        "required": [
          "data",
          "truncated",
          "request_id"
        ],
        "additionalProperties": false
      }
    },
    {
      "annotations": {
        "destructiveHint": false,
        "idempotentHint": false,
        "openWorldHint": false,
        "readOnlyHint": true
      },
      "description": "Find canonical public integration guides by keywords. Does not fetch arbitrary URLs.",
      "inputSchema": {
        "type": "object",
        "properties": {
          "project_id": {
            "type": "string",
            "description": "ID of an accessible MCP-enabled project returned by list_projects."
          },
          "query": {
            "type": "string"
          },
          "topic": {
            "type": "string"
          },
          "limit": {
            "type": "integer"
          }
        },
        "required": [
          "project_id",
          "query"
        ],
        "additionalProperties": false
      },
      "name": "search_documentation",
      "outputSchema": {
        "type": "object",
        "properties": {
          "data": {
            "type": [
              "null",
              "array"
            ],
            "items": {
              "type": "object",
              "properties": {
                "id": {
                  "type": "string"
                },
                "title": {
                  "type": "string"
                },
                "url": {
                  "type": "string"
                },
                "text": {
                  "type": "string"
                },
                "version": {
                  "type": "string"
                }
              },
              "required": [
                "id",
                "title",
                "url",
                "version"
              ],
              "additionalProperties": false
            }
          },
          "next_cursor": {
            "type": "string"
          },
          "truncated": {
            "type": "boolean"
          },
          "request_id": {
            "type": "string"
          }
        },
        "required": [
          "data",
          "truncated",
          "request_id"
        ],
        "additionalProperties": false
      }
    },
    {
      "annotations": {
        "destructiveHint": false,
        "idempotentHint": false,
        "openWorldHint": false,
        "readOnlyHint": true
      },
      "description": "Find accessible instruments by text, site or group. Returns at most 100 summaries.",
      "inputSchema": {
        "type": "object",
        "properties": {
          "project_id": {
            "type": "string",
            "description": "ID of an accessible MCP-enabled project returned by list_projects."
          },
          "text": {
            "type": "string"
          },
          "site_ids": {
            "type": [
              "null",
              "array"
            ],
            "items": {
              "type": "string"
            }
          },
          "group_ids": {
            "type": [
              "null",
              "array"
            ],
            "items": {
              "type": "string"
            }
          },
          "cursor": {
            "type": "string"
          },
          "limit": {
            "type": "integer",
            "description": "Page size: default 20, maximum 100."
          }
        },
        "required": [
          "project_id"
        ],
        "additionalProperties": false
      },
      "name": "search_instruments",
      "outputSchema": {
        "type": "object",
        "properties": {
          "data": {
            "type": [
              "null",
              "array"
            ],
            "items": {
              "type": "object",
              "properties": {
                "id": {
                  "type": "string"
                },
                "name": {
                  "type": "string"
                },
                "site_id": {
                  "type": "string"
                },
                "site": {
                  "type": "string"
                },
                "status": {
                  "type": "string"
                }
              },
              "required": [
                "id",
                "name",
                "site_id",
                "site",
                "status"
              ],
              "additionalProperties": false
            }
          },
          "next_cursor": {
            "type": "string"
          },
          "truncated": {
            "type": "boolean"
          },
          "request_id": {
            "type": "string"
          }
        },
        "required": [
          "data",
          "truncated",
          "request_id"
        ],
        "additionalProperties": false
      }
    }
  ],
  "resources": [
    "sansignal://projects/{project_id}/context",
    "sansignal://docs/{document_id}",
    "sansignal://metadata/catalog"
  ],
  "gated_tools": [
    {
      "annotations": {
        "destructiveHint": false,
        "idempotentHint": false,
        "openWorldHint": false,
        "readOnlyHint": true
      },
      "description": "Validate one calculated-variable definition and preview recalculation impact. Handle expires in ten minutes; does not grant human approval.",
      "inputSchema": {
        "type": "object",
        "properties": {
          "project_id": {
            "type": "string",
            "description": "ID of an accessible MCP-enabled project returned by list_projects."
          },
          "definition": {
            "type": "object",
            "properties": {
              "instrument_id": {
                "type": "string"
              },
              "name": {
                "type": "string"
              },
              "alias": {
                "type": "string"
              },
              "unit": {
                "type": [
                  "null",
                  "string"
                ]
              },
              "expected_cadence_seconds": {
                "type": [
                  "null",
                  "integer"
                ]
              },
              "is_time_variable": {
                "type": "boolean"
              },
              "expression": {
                "type": "string",
                "description": "Mathematical expression using {input:ID} references from inputs."
              },
              "inputs": {
                "type": [
                  "null",
                  "array"
                ],
                "items": {
                  "type": "object",
                  "properties": {
                    "id": {
                      "type": "string",
                      "description": "Fresh globally unique 21-character NanoID input-slot identifier using letters, digits, underscore or hyphen. Reference it as {input:ID} in expression. This is separate from variable_id or constant_id; do not reuse a slot ID in another calculation."
                    },
                    "kind": {
                      "type": "string",
                      "description": "self_variable, external_variable or constant."
                    },
                    "variable_id": {
                      "type": "string"
                    },
                    "constant_id": {
                      "type": "string"
                    },
                    "source_instrument_id": {
                      "type": "string"
                    },
                    "past_buffer_seconds": {
                      "type": [
                        "null",
                        "integer"
                      ]
                    }
                  },
                  "required": [
                    "id",
                    "kind"
                  ],
                  "additionalProperties": false
                }
              }
            },
            "required": [
              "instrument_id",
              "name",
              "alias",
              "expression",
              "inputs"
            ],
            "additionalProperties": false
          }
        },
        "required": [
          "project_id",
          "definition"
        ],
        "additionalProperties": false
      },
      "name": "preview_calculated_variable",
      "outputSchema": {
        "type": "object",
        "properties": {
          "data": {
            "type": "object",
            "properties": {
              "preview_handle": {
                "type": "string"
              },
              "expires_at": {
                "type": "string"
              },
              "affected_variables": {
                "type": "integer"
              },
              "source_count": {
                "type": "integer"
              },
              "effect": {
                "type": "string"
              }
            },
            "required": [
              "preview_handle",
              "expires_at",
              "affected_variables",
              "source_count",
              "effect"
            ],
            "additionalProperties": false
          },
          "next_cursor": {
            "type": "string"
          },
          "truncated": {
            "type": "boolean"
          },
          "request_id": {
            "type": "string"
          }
        },
        "required": [
          "data",
          "truncated",
          "request_id"
        ],
        "additionalProperties": false
      }
    },
    {
      "annotations": {
        "destructiveHint": false,
        "idempotentHint": true,
        "openWorldHint": false,
        "readOnlyHint": false
      },
      "description": "Create one calculated variable from its current preview and an idempotency key. Recalculation stops if delegated authority is revoked.",
      "inputSchema": {
        "type": "object",
        "properties": {
          "project_id": {
            "type": "string",
            "description": "ID of an accessible MCP-enabled project returned by list_projects."
          },
          "definition": {
            "type": "object",
            "properties": {
              "instrument_id": {
                "type": "string"
              },
              "name": {
                "type": "string"
              },
              "alias": {
                "type": "string"
              },
              "unit": {
                "type": [
                  "null",
                  "string"
                ]
              },
              "expected_cadence_seconds": {
                "type": [
                  "null",
                  "integer"
                ]
              },
              "is_time_variable": {
                "type": "boolean"
              },
              "expression": {
                "type": "string",
                "description": "Mathematical expression using {input:ID} references from inputs."
              },
              "inputs": {
                "type": [
                  "null",
                  "array"
                ],
                "items": {
                  "type": "object",
                  "properties": {
                    "id": {
                      "type": "string",
                      "description": "Fresh globally unique 21-character NanoID input-slot identifier using letters, digits, underscore or hyphen. Reference it as {input:ID} in expression. This is separate from variable_id or constant_id; do not reuse a slot ID in another calculation."
                    },
                    "kind": {
                      "type": "string",
                      "description": "self_variable, external_variable or constant."
                    },
                    "variable_id": {
                      "type": "string"
                    },
                    "constant_id": {
                      "type": "string"
                    },
                    "source_instrument_id": {
                      "type": "string"
                    },
                    "past_buffer_seconds": {
                      "type": [
                        "null",
                        "integer"
                      ]
                    }
                  },
                  "required": [
                    "id",
                    "kind"
                  ],
                  "additionalProperties": false
                }
              }
            },
            "required": [
              "instrument_id",
              "name",
              "alias",
              "expression",
              "inputs"
            ],
            "additionalProperties": false
          },
          "preview_handle": {
            "type": "string"
          },
          "idempotency_key": {
            "type": "string"
          }
        },
        "required": [
          "project_id",
          "definition",
          "preview_handle",
          "idempotency_key"
        ],
        "additionalProperties": false
      },
      "name": "create_calculated_variable",
      "outputSchema": {
        "type": "object",
        "properties": {
          "data": {
            "type": "object",
            "properties": {
              "id": {
                "type": "string"
              },
              "revision": {
                "type": "integer"
              },
              "changed_widget_ids": {
                "type": [
                  "null",
                  "array"
                ],
                "items": {
                  "type": "string"
                }
              },
              "operation_id": {
                "type": "string"
              }
            },
            "required": [
              "id",
              "changed_widget_ids"
            ],
            "additionalProperties": false
          },
          "next_cursor": {
            "type": "string"
          },
          "truncated": {
            "type": "boolean"
          },
          "request_id": {
            "type": "string"
          }
        },
        "required": [
          "data",
          "truncated",
          "request_id"
        ],
        "additionalProperties": false
      }
    },
    {
      "annotations": {
        "destructiveHint": false,
        "idempotentHint": true,
        "openWorldHint": false,
        "readOnlyHint": false
      },
      "description": "Create a saved dashboard with up to 20 typed graph, table, or markdown widgets and an idempotency key. New widgets and entries require client_id. Requires dashboard management.",
      "inputSchema": {
        "type": "object",
        "properties": {
          "project_id": {
            "type": "string",
            "description": "ID of an accessible MCP-enabled project returned by list_projects."
          },
          "name": {
            "type": "string"
          },
          "idempotency_key": {
            "type": "string"
          },
          "widgets": {
            "type": [
              "null",
              "array"
            ],
            "items": {
              "type": "object",
              "properties": {
                "id": {
                  "type": "string"
                },
                "client_id": {
                  "type": "string"
                },
                "name": {
                  "type": "string"
                },
                "grid_x": {
                  "type": "integer"
                },
                "grid_y": {
                  "type": "integer"
                },
                "grid_width": {
                  "type": "integer"
                },
                "grid_height": {
                  "type": "integer"
                },
                "graph": {
                  "type": [
                    "null",
                    "object"
                  ],
                  "properties": {
                    "show_legend": {
                      "type": "boolean"
                    },
                    "series": {
                      "type": [
                        "null",
                        "array"
                      ],
                      "items": {
                        "type": "object",
                        "properties": {
                          "id": {
                            "type": "string"
                          },
                          "client_id": {
                            "type": "string"
                          },
                          "instrument_id": {
                            "type": "string"
                          },
                          "variable_id": {
                            "type": "string"
                          },
                          "alias": {
                            "type": "string"
                          },
                          "graph_type": {
                            "type": "string"
                          },
                          "color": {
                            "type": "string"
                          },
                          "style": {
                            "type": "string"
                          },
                          "weight": {
                            "type": "string"
                          },
                          "marker": {
                            "type": "string"
                          },
                          "y_axis": {
                            "type": "string"
                          },
                          "connect_nulls": {
                            "type": "boolean"
                          },
                          "rounding": {
                            "type": "object",
                            "properties": {
                              "mode": {
                                "type": "string"
                              },
                              "decimal_places": {
                                "type": [
                                  "null",
                                  "integer"
                                ]
                              }
                            },
                            "required": [
                              "mode"
                            ],
                            "additionalProperties": false
                          },
                          "aggregation": {
                            "type": [
                              "null",
                              "object"
                            ],
                            "properties": {
                              "aggregation_operation": {
                                "type": "string"
                              },
                              "rolling": {
                                "type": "boolean"
                              },
                              "aggregation_interval": {
                                "type": "string"
                              }
                            },
                            "required": [
                              "aggregation_operation",
                              "rolling",
                              "aggregation_interval"
                            ],
                            "additionalProperties": false
                          }
                        },
                        "required": [
                          "instrument_id",
                          "variable_id",
                          "alias",
                          "graph_type",
                          "color",
                          "style",
                          "weight",
                          "marker",
                          "y_axis",
                          "connect_nulls",
                          "rounding",
                          "aggregation"
                        ],
                        "additionalProperties": false
                      }
                    }
                  },
                  "required": [
                    "show_legend",
                    "series"
                  ],
                  "additionalProperties": false
                },
                "table": {
                  "type": [
                    "null",
                    "object"
                  ],
                  "properties": {
                    "page_limit": {
                      "type": "integer"
                    },
                    "pagination": {
                      "type": "boolean"
                    },
                    "columns": {
                      "type": [
                        "null",
                        "array"
                      ],
                      "items": {
                        "type": "object",
                        "properties": {
                          "id": {
                            "type": "string"
                          },
                          "client_id": {
                            "type": "string"
                          },
                          "instrument_id": {
                            "type": "string"
                          },
                          "variable_id": {
                            "type": "string"
                          },
                          "alias": {
                            "type": "string"
                          },
                          "precision": {
                            "type": "object",
                            "properties": {
                              "mode": {
                                "type": "string"
                              },
                              "decimal_places": {
                                "type": [
                                  "null",
                                  "integer"
                                ]
                              }
                            },
                            "required": [
                              "mode"
                            ],
                            "additionalProperties": false
                          }
                        },
                        "required": [
                          "instrument_id",
                          "variable_id",
                          "alias",
                          "precision"
                        ],
                        "additionalProperties": false
                      }
                    }
                  },
                  "required": [
                    "page_limit",
                    "pagination",
                    "columns"
                  ],
                  "additionalProperties": false
                },
                "markdown": {
                  "type": [
                    "null",
                    "object"
                  ],
                  "properties": {
                    "body": {
                      "type": "string"
                    }
                  },
                  "required": [
                    "body"
                  ],
                  "additionalProperties": false
                }
              },
              "required": [
                "name",
                "grid_x",
                "grid_y",
                "grid_width",
                "grid_height"
              ],
              "additionalProperties": false
            }
          }
        },
        "required": [
          "project_id",
          "name",
          "idempotency_key"
        ],
        "additionalProperties": false
      },
      "name": "create_dashboard",
      "outputSchema": {
        "type": "object",
        "properties": {
          "data": {
            "type": "object",
            "properties": {
              "id": {
                "type": "string"
              },
              "revision": {
                "type": "integer"
              },
              "changed_widget_ids": {
                "type": [
                  "null",
                  "array"
                ],
                "items": {
                  "type": "string"
                }
              },
              "operation_id": {
                "type": "string"
              }
            },
            "required": [
              "id",
              "changed_widget_ids"
            ],
            "additionalProperties": false
          },
          "next_cursor": {
            "type": "string"
          },
          "truncated": {
            "type": "boolean"
          },
          "request_id": {
            "type": "string"
          }
        },
        "required": [
          "data",
          "truncated",
          "request_id"
        ],
        "additionalProperties": false
      }
    },
    {
      "annotations": {
        "destructiveHint": true,
        "idempotentHint": true,
        "openWorldHint": false,
        "readOnlyHint": false
      },
      "description": "Rename or upsert typed graph, table, or markdown widgets using an expected revision and idempotency key. Supply complete definitions; omitted widgets are preserved. Saved widget types cannot change. Returns revision and changed widget IDs.",
      "inputSchema": {
        "type": "object",
        "properties": {
          "project_id": {
            "type": "string",
            "description": "ID of an accessible MCP-enabled project returned by list_projects."
          },
          "dashboard_id": {
            "type": "string"
          },
          "expected_revision": {
            "type": "integer"
          },
          "idempotency_key": {
            "type": "string"
          },
          "patch": {
            "type": "object",
            "properties": {
              "name": {
                "type": "string"
              },
              "widgets": {
                "type": [
                  "null",
                  "array"
                ],
                "items": {
                  "type": "object",
                  "properties": {
                    "id": {
                      "type": "string"
                    },
                    "client_id": {
                      "type": "string"
                    },
                    "name": {
                      "type": "string"
                    },
                    "grid_x": {
                      "type": "integer"
                    },
                    "grid_y": {
                      "type": "integer"
                    },
                    "grid_width": {
                      "type": "integer"
                    },
                    "grid_height": {
                      "type": "integer"
                    },
                    "graph": {
                      "type": [
                        "null",
                        "object"
                      ],
                      "properties": {
                        "show_legend": {
                          "type": "boolean"
                        },
                        "series": {
                          "type": [
                            "null",
                            "array"
                          ],
                          "items": {
                            "type": "object",
                            "properties": {
                              "id": {
                                "type": "string"
                              },
                              "client_id": {
                                "type": "string"
                              },
                              "instrument_id": {
                                "type": "string"
                              },
                              "variable_id": {
                                "type": "string"
                              },
                              "alias": {
                                "type": "string"
                              },
                              "graph_type": {
                                "type": "string"
                              },
                              "color": {
                                "type": "string"
                              },
                              "style": {
                                "type": "string"
                              },
                              "weight": {
                                "type": "string"
                              },
                              "marker": {
                                "type": "string"
                              },
                              "y_axis": {
                                "type": "string"
                              },
                              "connect_nulls": {
                                "type": "boolean"
                              },
                              "rounding": {
                                "type": "object",
                                "properties": {
                                  "mode": {
                                    "type": "string"
                                  },
                                  "decimal_places": {
                                    "type": [
                                      "null",
                                      "integer"
                                    ]
                                  }
                                },
                                "required": [
                                  "mode"
                                ],
                                "additionalProperties": false
                              },
                              "aggregation": {
                                "type": [
                                  "null",
                                  "object"
                                ],
                                "properties": {
                                  "aggregation_operation": {
                                    "type": "string"
                                  },
                                  "rolling": {
                                    "type": "boolean"
                                  },
                                  "aggregation_interval": {
                                    "type": "string"
                                  }
                                },
                                "required": [
                                  "aggregation_operation",
                                  "rolling",
                                  "aggregation_interval"
                                ],
                                "additionalProperties": false
                              }
                            },
                            "required": [
                              "instrument_id",
                              "variable_id",
                              "alias",
                              "graph_type",
                              "color",
                              "style",
                              "weight",
                              "marker",
                              "y_axis",
                              "connect_nulls",
                              "rounding",
                              "aggregation"
                            ],
                            "additionalProperties": false
                          }
                        }
                      },
                      "required": [
                        "show_legend",
                        "series"
                      ],
                      "additionalProperties": false
                    },
                    "table": {
                      "type": [
                        "null",
                        "object"
                      ],
                      "properties": {
                        "page_limit": {
                          "type": "integer"
                        },
                        "pagination": {
                          "type": "boolean"
                        },
                        "columns": {
                          "type": [
                            "null",
                            "array"
                          ],
                          "items": {
                            "type": "object",
                            "properties": {
                              "id": {
                                "type": "string"
                              },
                              "client_id": {
                                "type": "string"
                              },
                              "instrument_id": {
                                "type": "string"
                              },
                              "variable_id": {
                                "type": "string"
                              },
                              "alias": {
                                "type": "string"
                              },
                              "precision": {
                                "type": "object",
                                "properties": {
                                  "mode": {
                                    "type": "string"
                                  },
                                  "decimal_places": {
                                    "type": [
                                      "null",
                                      "integer"
                                    ]
                                  }
                                },
                                "required": [
                                  "mode"
                                ],
                                "additionalProperties": false
                              }
                            },
                            "required": [
                              "instrument_id",
                              "variable_id",
                              "alias",
                              "precision"
                            ],
                            "additionalProperties": false
                          }
                        }
                      },
                      "required": [
                        "page_limit",
                        "pagination",
                        "columns"
                      ],
                      "additionalProperties": false
                    },
                    "markdown": {
                      "type": [
                        "null",
                        "object"
                      ],
                      "properties": {
                        "body": {
                          "type": "string"
                        }
                      },
                      "required": [
                        "body"
                      ],
                      "additionalProperties": false
                    }
                  },
                  "required": [
                    "name",
                    "grid_x",
                    "grid_y",
                    "grid_width",
                    "grid_height"
                  ],
                  "additionalProperties": false
                }
              }
            },
            "additionalProperties": false
          }
        },
        "required": [
          "project_id",
          "dashboard_id",
          "expected_revision",
          "idempotency_key",
          "patch"
        ],
        "additionalProperties": false
      },
      "name": "update_dashboard",
      "outputSchema": {
        "type": "object",
        "properties": {
          "data": {
            "type": "object",
            "properties": {
              "id": {
                "type": "string"
              },
              "revision": {
                "type": "integer"
              },
              "changed_widget_ids": {
                "type": [
                  "null",
                  "array"
                ],
                "items": {
                  "type": "string"
                }
              },
              "operation_id": {
                "type": "string"
              }
            },
            "required": [
              "id",
              "changed_widget_ids"
            ],
            "additionalProperties": false
          },
          "next_cursor": {
            "type": "string"
          },
          "truncated": {
            "type": "boolean"
          },
          "request_id": {
            "type": "string"
          }
        },
        "required": [
          "data",
          "truncated",
          "request_id"
        ],
        "additionalProperties": false
      }
    },
    {
      "annotations": {
        "destructiveHint": false,
        "idempotentHint": true,
        "openWorldHint": false,
        "readOnlyHint": false
      },
      "description": "Create an instrument in an active project site. Requires organization administration and an idempotency key.",
      "inputSchema": {
        "type": "object",
        "properties": {
          "project_id": {
            "type": "string",
            "description": "ID of an accessible MCP-enabled project returned by list_projects."
          },
          "name": {
            "type": "string"
          },
          "site_id": {
            "type": "string"
          },
          "idempotency_key": {
            "type": "string"
          }
        },
        "required": [
          "project_id",
          "name",
          "site_id",
          "idempotency_key"
        ],
        "additionalProperties": false
      },
      "name": "create_instrument",
      "outputSchema": {
        "type": "object",
        "properties": {
          "data": {
            "type": "object",
            "properties": {
              "id": {
                "type": "string"
              },
              "revision": {
                "type": "integer"
              },
              "changed_widget_ids": {
                "type": [
                  "null",
                  "array"
                ],
                "items": {
                  "type": "string"
                }
              },
              "operation_id": {
                "type": "string"
              }
            },
            "required": [
              "id",
              "changed_widget_ids"
            ],
            "additionalProperties": false
          },
          "next_cursor": {
            "type": "string"
          },
          "truncated": {
            "type": "boolean"
          },
          "request_id": {
            "type": "string"
          }
        },
        "required": [
          "data",
          "truncated",
          "request_id"
        ],
        "additionalProperties": false
      }
    }
  ]
}
