DAVA Agent
Two modes from one engine. Chat — conversational access for business users, with citations on every turn. MCP server — DAVA's tools exposed over the Model Context Protocol so customer agents (Claude Desktop, custom) can call them.
Chat — Quickstart (Python)
bashpip install dava-agentpythonimport asyncio
from dava_agent import Client
async def main():
async with Client(api_key="dava_live_…") as c:
# Optional: pick a vertical-use-case profile.
sess = await c.create_session(
title="Friday import review",
# profile="medical-icu" | "finance-fund-anomaly" |
# "public-sector-irregularity" | None (default)
)
turn = await c.send_message(
sess.id,
"Were there rows over threshold last night?",
)
print(turn.assistant_message.content)
asyncio.run(main())Chat — Quickstart (TypeScript)
typescriptimport { Client } from "@avaresearch/dava-agent";
const c = new Client({ apiKey: process.env.DAVA_API_KEY! });
const sess = await c.createSession("Analytics review");
const turn = await c.sendMessage(sess.id, "How many rows over threshold?");
console.log(turn.assistant_message.content);Vertical profiles
| Slug | Use case |
|---|---|
default | Generic analytical assistant. Pick this when the customer is general-purpose. |
medical-icu | ICU deterioration-risk commentary. Cites lab values, flags stale data, never recommends clinical action. |
finance-fund-anomaly | Fund performance + NAV anomalies. Distinguishes data-quality from signal-level. Never produces trade recommendations. |
public-sector-irregularity | Tax/permit irregularity flagging for compliance teams. Output is a flag for human review, not a determination. |
All four profiles are Assistive mode by default — see Operating modes.
MCP server
Customers running Claude Desktop or custom agents can point at the DAVA MCP server to call tools (list audit events, fetch lineage, run a Norm preview, etc.) directly from the agent.
bashpip install dava-agent-mcp
DAVA_API_KEY=dava_live_… DAVA_API_BASE=https://api.davaengine.ai \
python -m dava_agent_mcp.serverAdd to ~/Library/Application Support/Claude/claude_desktop_config.json:
json{
"mcpServers": {
"dava": {
"command": "uvx",
"args": ["dava-agent-mcp"],
"env": {
"DAVA_API_KEY": "dava_live_…",
"DAVA_API_BASE": "https://api.davaengine.ai"
}
}
}
}Six read-only tools exposed: dava_trust_recent_events, dava_trust_lineage, dava_trust_list_policies, dava_norm_preview, dava_connect_get_result, dava_agent_list_sessions. Write tools land behind a Decisioning-mode contract amendment.
API surface
| Method | Endpoint | Purpose |
|---|---|---|
| GET | /v1/agent/profiles | List vertical-use-case profiles. |
| POST | /v1/agent/sessions | Create a new chat session. Body: {title?, profile?}. |
| GET | /v1/agent/sessions | List sessions for the active org. |
| GET | /v1/agent/sessions/{id} | Session header. |
| POST | /v1/agent/sessions/{id}/messages | Send a user turn → returns persisted user + assistant messages. |
| GET | /v1/agent/sessions/{id}/messages | Full message history. |