README.md

July 14, 2026 ยท View on GitHub

Bag of Words

The open-source agentic analytics platform

BOW connects any LLM to your data and gives agents the context they need to do useful work.

Each agent gets its own data, tools, credentials, instructions, permissions. Start in chat, then run the same agents in reports, dashboards, automations, scheduled tasks, team channels, and MCP clients.

Set evals and use self-improving loops to make agents more reliable over time.

Website Docs Docker e2e tests

Features

  • Analysis: Create reports and dashboards, generate queries, and run deep or root cause analysis.
  • Agent context: Configure each agent with the right data, tools, credentials, instructions, permissions, and starters.
  • Automations: Schedule reports, run recurring tasks, and trigger investigations from events and webhooks.
  • Channels: Run headlessly via Claude Code, Codex, and other MCP clients, or through Microsoft Teams, Slack, WhatsApp, email, Excel, and the web app.
  • MCP gateway: Connect agents to MCP servers and custom APIs, then expose their context and tools to MCP clients through one governed gateway.
  • Evals and self-improvement: Set evals for expected behavior. When they fail, agents can draft instruction fixes and re-run the evals; passing changes can wait for approval or be promoted automatically.
  • Governance: Control access with RBAC, approvals, audit logs, service accounts, SSO, and model policies.

Deploy anywhere

Bag of Words executive dashboard


Quick Start

# Run with SQLite (default)
docker run -p 3000:3000 bagofwords/bagofwords

Run with PostgreSQL

docker run -p 3000:3000 \
  -e BOW_DATABASE_URL=postgresql://user:password@localhost:5432/dbname \
  bagofwords/bagofwords

Docker Compose and Kubernetes deployments are also available and recommended for servers. See the installation docs.

From Analysis Context to Action

Start with chat

Ask questions across your data and get queries, charts, reports, dashboards, deep analysis, and root cause analysis. Agents plan their work, use tools, and reflect on the result.

Root cause analysis in Bag of Words

Give every agent the right context

Choose the data and tools an agent can use, provide the right credentials, and add instructions and starters for its job. Manage shared business definitions and guardrails with versioning, review flows, and Git sync for dbt, markdown, code, and more.

Review pending agent instruction changes in Bag of Words

Turn analysis into repeatable work

Schedule reports and investigations, trigger agents from webhooks, and send results to the people and systems that need them. The same analysis context is available in chat, automations, channels, and external MCP clients.

Configure an event-driven agent trigger in Bag of Words

Evaluate and improve

Define eval sets for the behavior that matters and run them as agents change. When an eval fails, a self-improving loop can draft instruction changes and re-run the tests up to a configured limit. Passing candidates can wait for approval or be promoted automatically.

Configure eval-driven self-learning in Bag of Words

Monitor every run

Get full observability across every message, query, plan, tool call, result, latency, cost, and failure. LLM-as-judge scores for accuracy, instruction coverage, and context use help teams catch unreliable data results, diagnose what happened, and feed failures back into evals and self-improving loops.

Full agent observability and run diagnosis in Bag of Words

Agents pane: build and manage data agents at scale

Create agents for teams, systems, and business domains. Scope their data, tools, credentials, instructions, permissions, starters, evals, and channels; review pending changes and manage the full agent fleet from one pane.

Build and manage data agents at scale in Bag of Words

Architecture

Bag of Words sits between your models, enterprise data, tools, and channels. It builds a governed analysis context for each agent, then carries that context from an interactive question to a scheduled or event-driven workflow.

Bring your own models and infrastructure. Connect databases, warehouses, BI systems, files, business apps, MCP servers, and custom APIs without tying the workflow to one provider.

Bag of Words architecture

Integrations

Connect databases, warehouses, services, files, MCP servers, and custom APIs

Bring Any LLM

Use your own API keys, endpoints, and model deployments. Multiple providers and models can be configured in the same environment.

ProviderSupported models and APIsNotes
OpenAIGPT and reasoning modelsOpenAI API support
Azure OpenAIGPT and reasoning modelsAzure endpoints and deployment names
Google GeminiGemini and Flash modelsGoogle API key support
AnthropicClaude modelsAnthropic API key support
AWS BedrockFoundation models available through BedrockAPI key, AWS access key, or IAM authentication
Any OpenAI-compatible APIOllama, Groq, Together AI, vLLM, LM Studio, and moreProvide a base URL and optional API key

Connect Any Data

ConnectorCategory
PostgreSQLDatabase / warehouse
SnowflakeDatabase / warehouse
Google BigQueryDatabase / warehouse
Databricks SQLDatabase / warehouse
Microsoft FabricDatabase / warehouse
MySQLDatabase / warehouse
AWS AthenaDatabase / warehouse
MariaDBDatabase / warehouse
DuckDBDatabase / warehouse
Microsoft SQL ServerDatabase / warehouse
ClickHouseDatabase / warehouse
Azure Data ExplorerDatabase / warehouse
VerticaDatabase / warehouse
AWS RedshiftDatabase / warehouse
TrinoDatabase / warehouse
Apache PinotDatabase / warehouse
Apache DruidDatabase / warehouse
Oracle DatabaseDatabase / warehouse
MongoDBDatabase / warehouse
Sybase SQL AnywhereDatabase / warehouse
Teradata VantageDatabase / warehouse
SQLiteDatabase / warehouse
SparkDatabase / warehouse
NetSuiteBusiness app
SalesforceBusiness app
ServiceNowBusiness app
AWS Cost ExplorerBusiness app
PostHogBusiness app
Outlook MailBusiness app
ElasticsearchSearch and observability
OpenSearchSearch and observability
SplunkSearch and observability
ZabbixMonitoring and observability
JaegerTracing and observability
TableauBI tool
Power BIBI tool
Power BI Report ServerBI tool
Qlik SenseBI tool
Qlik QVDBI tool
SisenseBI tool
Oracle BIBI tool
Infor OLAPBI tool
Microsoft Analysis ServicesBI tool
Timbr AISemantic layer
Files and DirectoriesFiles
Amazon S3Files
CSVFiles
OneDriveFiles
SharePointFiles

Connect Tools Through MCP

Bag of Words can connect to any MCP server or custom API. Ready-to-connect MCP integrations include:

IntegrationWhat it adds
MondayBoards, items, updates, and workflows
NotionPages, databases, and workspace search
Jira / AtlassianJira issues and Confluence pages
LinearIssues, projects, and cycles
SentryErrors, issues, releases, and diagnostics
GitHubRepositories, issues, and pull requests
Google DriveFile search and content access
GmailMessages, threads, labels, and drafts
XPosts, users, search, and trends
X (Write)Create and delete posts through a custom API
Custom MCP serverAny compatible remote or self-hosted MCP server
Custom APIInternal and third-party HTTP APIs

Run Anywhere

SurfaceUse
Web appChat, reports, dashboards, evals, and monitoring
Claude Code, Codex, and MCP clientsUse agents headlessly through MCP
ExcelBring governed analysis into spreadsheets
Microsoft TeamsAsk questions and receive results in Teams
SlackAsk questions and receive results in Slack
WhatsAppRun agent conversations from WhatsApp
EmailAsk questions and receive scheduled results by email
Webhooks and APIsTrigger agents from other systems
Scheduled tasksRun recurring reports, checks, and investigations

Enterprise

For teams that need stronger security, compliance, and governance:

  • Self-hosted: Deploy on your own infrastructure and keep control of your data.
  • SSO and provisioning: Connect Google Workspace and OIDC-compatible identity providers, with SCIM and LDAP support.
  • RBAC: Apply fine-grained permissions to agents, data, tools, and administration.
  • Approvals and audit: Review changes and track agent and data operations.
  • Service access: Use API keys and service accounts for headless workflows.
  • Model controls: Decide which providers and models are available to each organization.

Security and Privacy

Bag of Words captures basic usage statistics from self-hosted instances to help improve the product. Disable telemetry in bow-config.yaml:

telemetry:
  enabled: false

You can also disable Intercom support chat:

intercom:
  enabled: false