AI overview
Two AI surfaces: in-app chat and external MCP clients.
Dalea exposes AI capabilities through two surfaces, with different audiences and different user-experience.
- In-app chat
- A side panel that lives inside dalea.app. Authenticated as you. Picks any of nine supported model providers, or runs on the Dalea-hosted default with no setup.
- External MCP
- Your Claude Desktop/Code, Cursor or ChatGPT, connecting via OAuth to a specific workspace.
The in-app chat
Open it with by clicking the floating Dalea icon. The panel is multi-turn, streaming, tool-using, and aware of:
- the workspace you're in
- the document you're currently viewing (if any)
- the data model you're currently viewing (if any)
- etc.
It can do most operation you can do — find documents, read data records, create new documents, append blocks, register objects, run data queries, and compose follow-up questions about the results.
Confirmation cards
Most write actions pause for confirmation. The gate is fail-closed, so any write
that is not on a short low-risk list is confirmed by default. The exceptions that
run without a card are staged schema edits (data_tables_write,
data_columns_write, which only touch the staging snapshot and are gated again
when the schema is committed), export_data, dalea_bash (except shell commands
that write under /addons/), and the import-mapping edits
import_data_write:create_mapping and import_data_write:update_mapping.
When a write does pause, the assistant emits a card headed Confirmation
required, keyed on the tool and its action: create:document,
data_objects_write:bulk_create, inventory_items_write:move, and so on. You
see:
- a one-line description of what the tool wants to do
- the tool name as a badge, with a Details toggle for the raw arguments
- buttons: Decline,
Always approve <action>(for example "Always approve create document"), and Approve
The "always" button is per-workspace and auto-approves that exact tool/action pair from then on; you can revoke auto-approvals from the chat panel's settings menu → Tool Approvals.
Plan mode for multi-step work
Turn on the Plan pill next to the composer and the assistant writes a short prose plan before doing anything: explore the workspace, propose the steps, then wait. You see the plan as a card with Approve & run and Abort buttons. No tools run until you choose. The toggle is remembered per model. See Plan mode for the full flow.
Models and providers
Each user picks which providers to use from Settings → AI Providers:
Anthropic, OpenAI, Google, Mistral, DeepSeek, Z.ai, Moonshot AI and Qwen (each
with your own API key), or the keyless Dalea AI list which needs no setup.
The same screen sets your default model. After activating a provider with an API
key, the models from that provider appear in the model selector in the top left
corner of the chat. A conversation is locked to the model of its first turn, so
switching engines means opening a new chat.
See Models & providers for the full catalogue.
Skills
Skills are short markdown primers the assistant loads on demand — for example, the
built-in writing_python_in_dalea skill teaches the assistant how Python document
blocks actually run (Pyodide in your browser, injected read functions, no filesystem). You can also author your own skills at workspace or personal scope. See Skills.
Vision
On a vision-capable model (Claude, Gemini 2.5+, Gemma 4, GPT-5.x, Mistral, Kimi, Qwen3-VL), you can drag any picture (instrument photos, gel scans, or UI screenshots) straight into the chat for the model to read. The Dalea-hosted default is text-only on the wire but still accepts images: the server examines them through a vision delegate instead. The composer only disables image attachment when the model has no route to images at all, so you can't silently send an image the model would reject. A turn carries at most 6 images and 2 MB of image data in total.
Wiki-grounded answers
For "what is…" / "how do I…" questions, the assistant consults this wiki plus your workspace documents and data models for grounding — so terminology stays consistent with the official docs and references back to real workspace content where it exists.
Frontend tools
One tool executes in the browser rather than on the server: frontend_show,
which opens a document, data environment or data table in your workbench in
response to a request like "open the IFN-γ protocol". It changes nothing; it just
steers your UI. Two further tools, register_plan and update_todos, run
server-side and drive the plan card and the live execution checklist.
The external MCP server
Dalea's MCP server exposes your workspace as a set of tools that any MCP-compatible LLM can call. The flow is OAuth 2.1; the connection is HTTP-streaming. See Connect Claude Desktop for the step-by-step setup.
External clients see 42 tools grouped by domain: documents and versions,
data environments/tables/columns/objects, queries, results, imports and exports,
inventory, files, provenance, addons and marketplace, plus load_skill for
pulling in domain primers. Two more, code_execution and
attach_files_to_sandbox, are registered when the operator enables code
execution, bringing the surface to 44. Wiki grounding is not a separate tool: it
is the rag_hits leg of search_all, which returns entity matches and retrieved
knowledge snippets side by side.
External clients are bound by:
- Workspace scope — each token authorises exactly one workspace, enforced server-side on every call.
- Role intersection — the OAuth client is created with a role; effective permissions are the intersection of your role and the client's role.
- Audit — every tool call is logged with operator, timestamp and args.
Privacy
Tool inputs and outputs go to the LLM provider you configured. Dalea never sends data to a model unless you opted into a chat session that uses it. When you bring your own provider key, the request goes directly from Dalea's servers to that provider.
Your conversation transcript is stored in Dalea's own database under workspace row-level security: that is what makes chat history, resuming a conversation and context compaction work. Prompt bodies are not written into operational logs, which record token counts and tool-call metadata for audit.
What's next
The nine supported providers and their model catalogues.
Domain primers the assistant loads on demand.
Review the plan before any tool runs.
llms.txt and the raw markdown corpus.
Trace what the assistant actually did — server-recorded, not self-reported.