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

# Data sources

> Connect your tools so OneLamp indexes their content on demand into your context.

A **data source** is a tool you already work in — Notion, Google Drive, Slack, or
any remote MCP server — that you connect so OneLamp can pull its documents into
your [Library](https://help.flickwise.app/concepts/library.md) and **index them on demand**, enriching the same
living context layer your AI tools draw on. It's not a pass-through
aggregator: pulled-in content becomes part of your context, not a relay to the
original tool. Connect a tool once, then sync from it whenever you want fresh
material.

In MCP terms, this is OneLamp acting as a **client** connecting *out* to your
other servers — the mirror image of your AI tools connecting *in* to OneLamp.

## How it works

**1. Connect**

`sources(action: "connect")` registers an upstream MCP server by URL. If it
needs OAuth, the tool returns an authorization URL to open once.

**2. Discover**

`sources(action: "list")` lists your connected servers, their connection
state, and the tools each one exposes.

**3. Sync**

`sources(action: "sync")` calls a tool on a data source (e.g. a search or
get-page tool) and ingests its text output as a Library source — compiled into
pages in the background.

Each user's outbound connections and their OAuth tokens live in that user's own
isolated agent — they aren't shared, and they're scoped to you.

## Untrusted by default

Data sources are treated as **untrusted**. Their output is filed as *source
data* to be compiled — it is never followed as instructions and can't redirect
your AI tool's behavior or escalate access.

> [!WARNING]
>
> Only connect MCP servers you trust to read documents from. A data source's tool
> output becomes Library source material; OneLamp ingests it as data, never as
> commands.

## Example

```text theme={null}
sources(action: "connect", name: "notion", url: "https://mcp.notion.com/mcp")
  → returns an authorization URL → you authorize once

sources(action: "list")
  → notion (id: ...) → tools: search, fetch

sources(action: "sync", server_id: "...", tool: "search", args: { query: "roadmap" })
  → ingests the results into your Library
```

> [!NOTE]
>
> For exact parameters and return shapes, see the
> [data source tools reference](https://help.flickwise.app/tools/data-sources).


This documentation is built and hosted on [Mintlify](https://mintlify.com), a developer documentation platform.