PluginBench
MCP Server
Active
MIT

Airweave Search MCP Server

io.github.airweave-ai/search

Query all your synced apps and data sources with natural language, directly from your AI agent.

What is the Airweave Search MCP server?

Airweave Search is an MCP server that lets AI agents query Airweave collections using natural language, returning relevant, grounded context aggregated from 50+ connected apps, databases, and document sources. It exposes Airweave's unified retrieval layer (which handles syncing, indexing, and search across integrations) directly to MCP clients like Claude and Cursor via a remote streamable-HTTP endpoint or an npm-installable server.

Airweave is an open-source context retrieval layer that connects to apps, tools, and databases, continuously syncs their data, and exposes it through a unified, LLM-friendly search interface. The Airweave Search MCP server lets AI agents and RAG systems query these synced "collections" with natural language to retrieve grounded, up-to-date context from multiple sources in a single request, instead of building custom retrieval pipelines per integration.

How to install Airweave Search

Copy-paste configuration for popular MCP clients.

transport: stdio
Config generated by PluginBench — verify against the source before use.
Environment / auth
  • AIRWEAVE_API_KEY
    required
    secret

    Your Airweave API key for authentication

  • AIRWEAVE_COLLECTION
    required

    The Airweave collection to search

  • AIRWEAVE_BASE_URL

    Airweave API base URL (defaults to https://api.airweave.ai)

  • X-API-Key
    required
    secret

    Your Airweave API key

  • X-Collection-Readable-ID
    required

    The Airweave collection readable ID to search

Claude Desktop
~/Library/Application Support/Claude/claude_desktop_config.json
{
  "mcpServers": {
    "search": {
      "command": "npx",
      "args": [
        "-y",
        "airweave-mcp-search"
      ],
      "env": {
        "AIRWEAVE_API_KEY": "<YOUR_AIRWEAVE_API_KEY>",
        "AIRWEAVE_COLLECTION": "<YOUR_AIRWEAVE_COLLECTION>",
        "AIRWEAVE_BASE_URL": "<YOUR_AIRWEAVE_BASE_URL>",
        "X-API-Key": "<YOUR_X_API_KEY>",
        "X-Collection-Readable-ID": "<YOUR_X_COLLECTION_READABLE_ID>"
      }
    }
  }
}
Cursor
~/.cursor/mcp.json
{
  "mcpServers": {
    "search": {
      "command": "npx",
      "args": [
        "-y",
        "airweave-mcp-search"
      ],
      "env": {
        "AIRWEAVE_API_KEY": "<YOUR_AIRWEAVE_API_KEY>",
        "AIRWEAVE_COLLECTION": "<YOUR_AIRWEAVE_COLLECTION>",
        "AIRWEAVE_BASE_URL": "<YOUR_AIRWEAVE_BASE_URL>",
        "X-API-Key": "<YOUR_X_API_KEY>",
        "X-Collection-Readable-ID": "<YOUR_X_COLLECTION_READABLE_ID>"
      }
    }
  }
}
Windsurf
~/.codeium/windsurf/mcp_config.json
{
  "mcpServers": {
    "search": {
      "command": "npx",
      "args": [
        "-y",
        "airweave-mcp-search"
      ],
      "env": {
        "AIRWEAVE_API_KEY": "<YOUR_AIRWEAVE_API_KEY>",
        "AIRWEAVE_COLLECTION": "<YOUR_AIRWEAVE_COLLECTION>",
        "AIRWEAVE_BASE_URL": "<YOUR_AIRWEAVE_BASE_URL>",
        "X-API-Key": "<YOUR_X_API_KEY>",
        "X-Collection-Readable-ID": "<YOUR_X_COLLECTION_READABLE_ID>"
      }
    }
  }
}
VS Code
.vscode/mcp.json
{
  "servers": {
    "search": {
      "type": "stdio",
      "command": "npx",
      "args": [
        "-y",
        "airweave-mcp-search"
      ],
      "env": {
        "AIRWEAVE_API_KEY": "<YOUR_AIRWEAVE_API_KEY>",
        "AIRWEAVE_COLLECTION": "<YOUR_AIRWEAVE_COLLECTION>",
        "AIRWEAVE_BASE_URL": "<YOUR_AIRWEAVE_BASE_URL>",
        "X-API-Key": "<YOUR_X_API_KEY>",
        "X-Collection-Readable-ID": "<YOUR_X_COLLECTION_READABLE_ID>"
      }
    }
  }
}
Claude Code
claude mcp add search --env AIRWEAVE_API_KEY=<YOUR_AIRWEAVE_API_KEY> --env AIRWEAVE_COLLECTION=<YOUR_AIRWEAVE_COLLECTION> --env AIRWEAVE_BASE_URL=<YOUR_AIRWEAVE_BASE_URL> --env X-API-Key=<YOUR_X_API_KEY> --env X-Collection-Readable-ID=<YOUR_X_COLLECTION_READABLE_ID> -- npx -y airweave-mcp-search

Tools & capabilities

Tools this server exposes to the agent.

  • searchSearch an Airweave collection using a natural language query and return relevant, grounded context aggregated from connected data sources.

Use cases

  • Let an AI agent retrieve grounded context (e.g., 'recent failed payments') from synced business systems like Stripe, HubSpot, or Salesforce
  • Search across documents and wikis (Notion, Confluence, Google Docs, SharePoint) from within an MCP-enabled coding assistant like Claude or Cursor
  • Query code and issue tracking data (GitHub, GitLab, Jira, Linear) using natural language instead of separate API calls
  • Build RAG systems that need a single unified search endpoint spanning 50+ connected apps instead of per-source integrations
  • Retrieve up-to-date context from CRMs, support tools, and file storage (Salesforce, Zendesk, Dropbox, Box) for agent workflows

Airweave Search MCP server FAQ

What does the Airweave Search MCP server do?

It exposes Airweave's collections (data synced from 50+ integrations like Slack, Notion, GitHub, Salesforce, and Google Drive) as a natural-language search tool that AI agents can query over MCP to retrieve grounded, up-to-date context.

Is Airweave Search free to use?

Airweave is open-source under the MIT License and can be self-hosted for free via Docker Compose. A cloud-hosted version is also available at app.airweave.ai; check Airweave's pricing for cloud usage costs.

How do I install it in Cursor or Claude?

You can connect to the remote streamable-HTTP endpoint at https://mcp.airweave.ai/mcp, or install the server locally via the npm package airweave-mcp-search and configure it as an MCP server in your client.

What authentication does it require?

You need an Airweave API key (from app.airweave.ai or a self-hosted instance) and at least one collection with connected, synced data sources before search queries will return results.

Does it require self-hosting Airweave?

No, you can use the hosted cloud version at app.airweave.ai, or self-host by cloning the repo and running ./start.sh with Docker and docker-compose.

What data sources can this search cover?

Any of Airweave's 50+ supported integrations that you've connected and synced into a collection, including Slack, Notion, GitHub, Jira, Salesforce, Gmail, Google Drive, Confluence, HubSpot, and more.

README (reference)

Source of truth, from the repository.

<p align="center"> <a href="https://app.airweave.ai" target="_blank" rel="noopener noreferrer"> <picture> <source media="(prefers-color-scheme: dark)" srcset="frontend/public/logo-airweave-darkbg.svg"/> <source media="(prefers-color-scheme: light)" srcset="frontend/public/logo-airweave-lightbg.svg"/> <img width="400" alt="Airweave" src="frontend/public/logo-airweave-darkbg.svg"/> </picture> </a> </p> <p align="center">Open-source context retrieval layer for AI agents and RAG systems.</p> <p align="center"> <a href="https://app.airweave.ai" target="_blank"><img src="https://img.shields.io/badge/Airweave_Cloud-0066FF" alt="Airweave Cloud"></a> <a href="https://docs.airweave.ai" target="_blank"><img src="https://img.shields.io/badge/Docs-0066FF" alt="Documentation"></a> <a href="https://x.com/airweave_ai" target="_blank"><img src="https://img.shields.io/twitter/follow/airweave_ai?style=social" alt="Twitter"></a> <a href="https://cursor.com/link/prompt?text=Help%20me%20set%20up%20Airweave%20locally.%20Follow%20these%20steps%3A%0A%0A1.%20First%2C%20verify%20Docker%20is%20installed%20and%20running%3A%0A%20%20%20docker%20--version%0A%20%20%20docker%20info%0A%0A2.%20Clone%20the%20repository%3A%0A%20%20%20git%20clone%20https%3A%2F%2Fgithub.com%2Fairweave-ai%2Fairweave.git%0A%20%20%20cd%20airweave%0A%0A3.%20Start%20Airweave%3A%0A%20%20%20.%2Fstart.sh%0A%0A4.%20The%20script%20will%20automatically%3A%0A%20%20%20-%20Create%20.env%20from%20.env.example%0A%20%20%20-%20Generate%20required%20secrets%20%28ENCRYPTION_KEY%2C%20STATE_SECRET%29%0A%20%20%20-%20Start%20all%20services%20with%20health%20checks%0A%20%20%20-%20Optionally%20prompt%20for%20OpenAI%2FMistral%20API%20keys%0A%0A5.%20Wait%20for%20all%20services%20to%20be%20healthy%20%28this%20may%20take%202-3%20minutes%20on%20first%20run%29%0A%0A6.%20Verify%20the%20app%20is%20accessible%20at%20http%3A%2F%2Flocalhost%3A8080%0A%0AIf%20there%20are%20any%20errors%2C%20help%20me%20troubleshoot%20them.%20Common%20issues%3A%0A-%20Port%20already%20in%20use%20%288080%2C%208001%2C%205432%2C%206333%2C%206379%2C%207233%2C%208081%2C%208088%29%0A-%20Docker%20not%20running%0A-%20Check%20logs%3A%20docker%20logs%20airweave-backend%20or%20docker%20logs%20airweave-frontend%0A%0AUseful%20commands%3A%0A-%20.%2Fstart.sh%20--restart%20%28restart%20services%29%0A-%20.%2Fstart.sh%20--skip-frontend%20%28backend%20only%29%0A-%20.%2Fstart.sh%20--destroy%20%28clean%20up%20everything%29"><img src="https://img.shields.io/badge/Set%20Up%20with-Cursor-000000?logo=cursor&logoColor=white" alt="Set Up with Cursor"></a> </p> <p align="center"> <a href="https://github.com/airweave-ai/airweave/actions/workflows/code-quality.yml"><img src="https://github.com/airweave-ai/airweave/actions/workflows/code-quality.yml/badge.svg" alt="Code Quality"></a> <a href="https://github.com/airweave-ai/airweave/actions/workflows/eslint.yml"><img src="https://github.com/airweave-ai/airweave/actions/workflows/eslint.yml/badge.svg" alt="ESLint"></a> <a href="https://github.com/airweave-ai/airweave/actions/workflows/test-public-api.yml"><img src="https://github.com/airweave-ai/airweave/actions/workflows/test-public-api.yml/badge.svg" alt="System Tests"></a> <a href="https://pepy.tech/projects/airweave-sdk"><img src="https://static.pepy.tech/badge/airweave-sdk" alt="PyPI Downloads"></a> <a href="https://discord.gg/gDuebsWGkn"><img src="https://img.shields.io/discord/1323415085011701870?label=Discord&logo=discord&logoColor=white&style=flat-square" alt="Discord"></a> </p> <p align="center"> <video width="100%" src="https://github.com/user-attachments/assets/995e4a36-3f88-4d8e-b401-6ca43db0c7bf" controls></video> </p>

What is Airweave?

Airweave connects to your apps, tools, and databases, continuously syncs their data, and exposes it through a unified, LLM-friendly search interface. AI agents query Airweave to retrieve relevant, grounded, up-to-date context from multiple sources in a single request.

Where it fits

Airweave sits between your data sources and AI systems as shared retrieval infrastructure. It handles authentication, ingestion, syncing, indexing, and retrieval so you don't have to rebuild fragile pipelines for every agent or integration.

How it works

  1. Connect your apps, databases, and documents (50+ integrations)
  2. Airweave syncs, indexes, and exposes your data through a unified retrieval layer
  3. Agents query Airweave via our SDKs, REST API, MCP, or native integrations with popular agent frameworks
  4. Agents retrieve relevant, grounded context on demand

Quickstart

Cloud-hosted: app.airweave.ai

<a href="https://app.airweave.ai"><img src="https://img.shields.io/badge/Open_Airweave_Cloud-0066FF" alt="Open Airweave Cloud"></a>

Self-hosted

git clone https://github.com/airweave-ai/airweave.git
cd airweave
./start.sh

http://localhost:8080

Requires Docker and docker-compose

Supported Integrations

<!-- START_APP_GRID --> <p align="center"> <img src="frontend/src/components/icons/apps/airtable.svg" alt="Airtable" width="40" height="40" style="margin: 6px;" /> <img src="frontend/src/components/icons/apps/apollo.svg" alt="Apollo.io" width="40" height="40" style="margin: 6px;" /> <img src="frontend/src/components/icons/apps/asana.svg" alt="Asana" width="40" height="40" style="margin: 6px;" /> <img src="frontend/src/components/icons/apps/attio.svg" alt="Attio" width="40" height="40" style="margin: 6px;" /> <img src="frontend/src/components/icons/apps/bitbucket.svg" alt="Bitbucket" width="40" height="40" style="margin: 6px;" /> <img src="frontend/src/components/icons/apps/box.svg" alt="Box" width="40" height="40" style="margin: 6px;" /> <img src="frontend/src/components/icons/apps/calcom.svg" alt="cal.com" width="40" height="40" style="margin: 6px;" /> <img src="frontend/src/components/icons/apps/clickup.svg" alt="ClickUp" width="40" height="40" style="margin: 6px;" /> <img src="frontend/src/components/icons/apps/coda.svg" alt="Coda" width="40" height="40" style="margin: 6px;" /> <img src="frontend/src/components/icons/apps/confluence.svg" alt="Confluence" width="40" height="40" style="margin: 6px;" /> <img src="frontend/src/components/icons/apps/dropbox.svg" alt="Dropbox" width="40" height="40" style="margin: 6px;" /> <img src="frontend/src/components/icons/apps/intercom.svg" alt="Intercom" width="40" height="40" style="margin: 6px;" /> <img src="frontend/src/components/icons/apps/fireflies.svg" alt="FireFlies" width="40" height="40" style="margin: 6px;" /> <img src="frontend/src/components/icons/apps/freshdesk.svg" alt="Freshdesk" width="40" height="40" style="margin: 6px;" /> <img src="frontend/src/components/icons/apps/github.svg" alt="Github" width="40" height="40" style="margin: 6px;" /> <img src="frontend/src/components/icons/apps/gitlab.svg" alt="Gitlab" width="40" height="40" style="margin: 6px;" /> <img src="frontend/src/components/icons/apps/gmail.svg" alt="Gmail" width="40" height="40" style="margin: 6px;" /> <img src="frontend/src/components/icons/apps/google_calendar.svg" alt="Google Calendar" width="40" height="40" style="margin: 6px;" /> <img src="frontend/src/components/icons/apps/google_docs.svg" alt="Google Docs" width="40" height="40" style="margin: 6px;" /> <img src="frontend/src/components/icons/apps/google_drive.svg" alt="Google Drive" width="40" height="40" style="margin: 6px;" /> <img src="frontend/src/components/icons/apps/hubspot.svg" alt="Hubspot" width="40" height="40" style="margin: 6px;" /> <img src="frontend/src/components/icons/apps/jira.svg" alt="Jira" width="40" height="40" style="margin: 6px;" /> <img src="frontend/src/components/icons/apps/linear.svg" alt="Linear" width="40" height="40" style="margin: 6px;" /> <img src="frontend/src/components/icons/apps/notion.svg" alt="Notion" width="40" height="40" style="margin: 6px;" /> <img src="frontend/src/components/icons/apps/onedrive.svg" alt="Onedrive" width="40" height="40" style="margin: 6px;" /> <img src="frontend/src/components/icons/apps/powerpoint.svg" alt="PowerPoint" width="40" height="40" style="margin: 6px;" /> <img src="frontend/src/components/icons/apps/salesforce.svg" alt="Salesforce" width="40" height="40" style="margin: 6px;" /> <img src="frontend/src/components/icons/apps/servicenow.svg" alt="ServiceNow" width="40" height="40" style="margin: 6px;" /> <img src="frontend/src/components/icons/apps/sharepoint.svg" alt="Sharepoint" width="40" height="40" style="margin: 6px;" /> <img src="frontend/src/components/icons/apps/slab.svg" alt="Slab" width="40" height="40" style="margin: 6px;" /> <img src="frontend/src/components/icons/apps/slack.svg" alt="Slack" width="40" height="40" style="margin: 6px;" /> <img src="frontend/src/components/icons/apps/slite.svg" alt="Slite" width="40" height="40" style="margin: 6px;" /> <img src="frontend/src/components/icons/apps/stripe.svg" alt="Stripe" width="40" height="40" style="margin: 6px;" /> <img src="frontend/src/components/icons/apps/trello.svg" alt="Trello" width="40" height="40" style="margin: 6px;" /> <img src="frontend/src/components/icons/apps/zendesk.svg" alt="Zendesk" width="40" height="40" style="margin: 6px;" /> <img src="frontend/src/components/icons/apps/zoom.svg" alt="Zoom" width="40" height="40" style="margin: 6px;" /> </p> <!-- END_APP_GRID --> <p align="center"><a href="https://docs.airweave.ai/connectors/overview"><img src="https://img.shields.io/badge/View_all_integrations-0066FF" alt="View all integrations"></a></p>

SDKs

pip install airweave-sdk        # Python
npm install @airweave/sdk       # TypeScript
from airweave import AirweaveSDK

client = AirweaveSDK(api_key="YOUR_API_KEY")
results = client.collections.search.instant(
    readable_id="my-collection",
    query="Find recent failed payments"
)

<a href="https://docs.airweave.ai"><img src="https://img.shields.io/badge/SDK_Documentation-0066FF" alt="SDK Documentation"></a> <a href="https://github.com/airweave-ai/airweave/tree/main/examples"><img src="https://img.shields.io/badge/Example_Notebooks-0066FF" alt="Example Notebooks"></a>

CLI

Search collections, manage sources, and trigger syncs from your terminal:

pip install airweave-cli
airweave auth login
airweave search "quarterly revenue figures" --collection finance-data

The CLI outputs rich interactive results in your terminal and clean JSON when piped — making it work for both developers and AI agents.

<a href="https://docs.airweave.ai/cli"><img src="https://img.shields.io/badge/CLI_Documentation-0066FF" alt="CLI Documentation"></a>

Tech Stack

Contributing

We welcome contributions! See our Contributing Guide.

License

MIT License

<p align="center"> <a href="https://discord.gg/gDuebsWGkn">Discord</a> · <a href="https://github.com/airweave-ai/airweave/issues">Issues</a> · <a href="https://x.com/airweave_ai">Twitter</a> </p>

Related MCP servers

Give your AI agent stealth web scraping with Cloudflare bypass and CSS selection, powered by Scrapling.

67k
Python
BSD-3-Clause
View repository →

Give your AI coding agent full control of a live Chrome browser for automation, debugging, and performance analysis.

45k
TypeScript
Apache-2.0
View repository →

Let AI agents manage your Puter files, websites, and serverless workers over MCP.

43k
TypeScript
AGPL-3.0
View repository →

Browser automation for AI agents via MCP, powering ByteDance's Agent TARS hybrid GUI/DOM browser control.

37k
TypeScript
Apache-2.0
View repository →

Run arbitrary shell commands from an MCP-connected AI agent.

37k
TypeScript
Apache-2.0
View repository →

Filesystem access MCP server from ByteDance's UI-TARS/Agent TARS ecosystem.

37k
TypeScript
Apache-2.0
View repository →