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

# Integrations

> MCP servers, chatbots, widgets, browser extensions, and automation templates that connect Vaquill to the tools your team already uses.

Put Vaquill wherever your team already works - Claude, Slack, a marketing site, a Google Sheet. Every integration is open-source, self-hostable, and calls the same [Vaquill statutes API](/docs/api-reference/statutes/search-us-statutes) under the hood.

<CardGroup cols={2}>
  <Card title="MCP Servers" icon="plug" href="/docs/integrations/mcp">
    Plug Vaquill's full US statute corpus (US Code, CFR, all 50 state codes) into Claude, Cursor, VS Code, or any MCP client.
  </Card>

  <Card title="Chatbots" icon="comments" href="/docs/integrations/chatbots">
    Legal Q\&A in Slack, Discord, Microsoft Teams, Telegram, WhatsApp, or Signal with thread memory and cited sources.
  </Card>

  <Card title="Widgets" icon="window" href="/docs/integrations/widgets">
    Embed a chat widget on any site - one script tag, an iframe, or a full Next.js deployment with voice and history.
  </Card>

  <Card title="Browser Extensions" icon="puzzle-piece" href="/docs/integrations/browser/chrome">
    Research from any browser tab without leaving the page. Chrome, Edge, Brave, Arc, Opera.
  </Card>

  <Card title="Automation" icon="gears" href="/docs/integrations/automation/n8n">
    n8n and Make.com templates that turn a Google Sheet of questions into a Sheet of answers and cited sources.
  </Card>

  <Card title="GitHub" icon="github" href="https://github.com/Vaquill-AI/integrations">
    Every integration is MIT-licensed and ready to fork.
  </Card>
</CardGroup>

## Pick an integration

| If you want to...                                      | Use                                                           |
| ------------------------------------------------------ | ------------------------------------------------------------- |
| Search US statutes from Claude / Cursor / VS Code      | [Vaquill MCP](/docs/integrations/mcp/vaquill)                      |
| Add legal Q\&A to your Slack workspace                 | [Slack bot](/docs/integrations/chatbots/slack)                     |
| Add legal Q\&A to your Discord server                  | [Discord bot](/docs/integrations/chatbots/discord)                 |
| Add legal Q\&A to Microsoft Teams                      | [Microsoft Teams bot](/docs/integrations/chatbots/microsoft-teams) |
| Add legal Q\&A to Telegram                             | [Telegram bot](/docs/integrations/chatbots/telegram)               |
| Add legal Q\&A to WhatsApp                             | [WhatsApp bot](/docs/integrations/chatbots/whatsapp)               |
| Add legal Q\&A to Signal                               | [Signal bot](/docs/integrations/chatbots/signal)                   |
| Embed a chat widget on a marketing site                | [Embedded Chat Widget](/docs/integrations/widgets/embedded-chat)   |
| Self-host a chat widget with Docker                    | [Docker Widget](/docs/integrations/widgets/docker-widget)          |
| Run a feature-rich widget with voice + history sidebar | [Widget Pro](/docs/integrations/widgets/widget-pro)                |
| Research from any browser tab                          | [Chrome Extension](/docs/integrations/browser/chrome)              |
| Batch-process legal questions from a Google Sheet      | [n8n / Make.com](/docs/integrations/automation/n8n)                |

## Common architecture

Every integration is a thin wrapper: take input from the surface (Slack message, browser popup, webhook), call the statutes search endpoint, render the matching statute sections.

```mermaid theme={"theme":"github-dark"}
flowchart LR
    A["**User surface**<br/>Slack, Discord, Teams,<br/>browser, webhook"] --> B["**Integration runtime**<br/>Python / Node / Edge"]
    B -->|"POST /api/v1/statutes/search"| C["**Vaquill statutes API**"]
    C --> D["**Statute retrieval**<br/>US Code · CFR · 50 state codes"]
    D -.->|"matching sections"| B
    B -.-> A

    style A fill:#dcfce7,stroke:#16a34a,color:#15803d
    style C fill:#dcfce7,stroke:#16a34a,color:#15803d
    style D fill:#f0fdf4,stroke:#16a34a,color:#15803d
```

One API key (`vq_key_...`) from your [dashboard](https://app.vaquill.ai/settings) drives them all. Configuration is via environment variables; every integration ships with a Dockerfile and at least one cloud-deploy recipe.

## Build your own

To add a surface we do not ship (Outlook, Notion, a CRM, an internal portal):

1. Generate a key in your [dashboard](https://app.vaquill.ai/settings).
2. `POST /api/v1/statutes/search` with `{ "query": "..." }` and `Authorization: Bearer vq_key_...`.
3. Render the returned statute sections (title, code, section number, text).
4. Pass filters (jurisdiction, code) to narrow results.

See [Authentication](/docs/api-guide/authentication) for key setup and [Errors](/docs/api-guide/errors) for status-code handling.
