> ## Documentation Index
> Fetch the complete documentation index at: https://docs.vistazo.ai/llms.txt
> Use this file to discover all available pages before exploring further.

# Connections

> Wiring data sources to Vistazo over MCP.

A connection is a data source Vistazo can read. They all speak **MCP**, which is what lets the agent
work out what a source offers without anyone modelling it first. It reads the server's own tool
descriptions.

Connections live under **Settings → Connections**.

## Connections belong to you, not the workspace

Each person connects their own sources with their own credentials. Vistazo never holds a shared service
account on your behalf.

The consequence worth knowing is that **a scheduled refresh runs as the dashboard's owner**, on the
owner's connections. On-demand refreshes run on yours. If a dashboard depends on a source you have not
connected, Vistazo tells you how many of its charts are affected.

## Three kinds of source

<Tabs>
  <Tab title="Hosted by Vistazo">
    Five public data sources are operated by Vistazo: World Bank, weather, SEC EDGAR, U.S. Treasury and
    exchange rates. They need no account or key of your own, and they are connected for you when you
    sign up, so you will usually find them already in the list. See
    [Curated sources](/data/curated-sources).
  </Tab>

  <Tab title="From the directory">
    Common servers are listed ready to connect: GitHub, Linear, Notion, Jira and Confluence, Snowflake,
    BigQuery, PostgreSQL, MySQL, Redshift, MongoDB, Elasticsearch, dbt, Stripe, Salesforce, HubSpot,
    Zendesk, Datadog.

    Where the vendor runs the server, the URL is already filled in. Where you run it yourself, such as a
    warehouse or your own database, picking the entry opens the custom form with the name prefilled and
    an empty URL for you to supply.
  </Tab>

  <Tab title="Anything else">
    Pick **Custom** and paste a URL. Any remote MCP server works.
  </Tab>
</Tabs>

The list also carries a **Vistazo** row, which is Vistazo's own MCP server, the one *your* agent connects
to. It is not a data source and cannot be removed. See [MCP server](/mcp/overview).

## Authorizing

How a connection is authorized depends on what the server supports.

* **OAuth with dynamic registration.** Vistazo runs the flow in a browser window and there is nothing to
  set up.
* **Your own OAuth app.** Where a server cannot register clients automatically, you create an app at the
  provider with the redirect URL Vistazo shows you, then paste the client id and secret.
* **No authorization at all**, for servers that need none.

Tokens are encrypted and held server-side. They are never written where the browser can read them.
Vistazo will only talk to public HTTPS endpoints.

## Managing a connection

Open a connection to see the tools it exposes and to act on it.

| Action              | What it does                                                    | Where it appears                     |
| ------------------- | --------------------------------------------------------------- | ------------------------------------ |
| **Reconnect**       | Re-runs authorization after a token expires or is revoked       | Everywhere                           |
| **Refresh tools**   | Re-reads the server's tool list                                 | Everywhere                           |
| **Disable**         | Keeps the connection but stops using it                         | Everywhere                           |
| **Edit**            | Change the name or URL                                          | Custom servers                       |
| **Remove**          | Deletes it and its stored credentials                           | Everything except the hosted sources |
| **Add to an agent** | Opens **Settings → Developer**, where you copy a config snippet | Vistazo-hosted sources               |

The hosted curated sources can be disabled but not removed. **Add to an agent** covers Vistazo's own
server and the curated sources; there is no generated snippet for your own connections, since your agent
would connect to those directly.

## When something is wrong

A connection in trouble is surfaced on the widget that depends on it, not just in Settings.

| State                  | Meaning                                              |
| ---------------------- | ---------------------------------------------------- |
| **Connection expired** | The token lapsed, so reconnect to refresh the widget |
| **Access revoked**     | Your access was withdrawn upstream                   |
| **Server unavailable** | The source is not answering right now                |

Degraded connections sort to the top of the list, and the status is click-to-reconnect.
