# How to connect Exa to Muse

```json
{
  "title": "How to connect Exa to Muse",
  "toolkit": "Exa",
  "toolkit_slug": "exa",
  "framework": "Muse",
  "framework_slug": "muse",
  "url": "https://composio.dev/toolkits/exa/framework/muse",
  "markdown_url": "https://composio.dev/toolkits/exa/framework/muse.md",
  "updated_at": "2026-10-04T16:39:17.639Z"
}
```

## Introduction

Muse is Meta's AI assistant. It can connect to outside tools through custom connectors, which use the Model Context Protocol (MCP).
This guide explains how to connect Exa to Muse using Composio Connect, which handles OAuth, token refresh, and reliability so you do not have to. You add Composio as a custom connector once, then ask Muse to work with Exa in plain language.

## Also integrate Exa with

- [Claude Code](https://composio.dev/toolkits/exa/framework/claude-code)
- [Claude Cowork](https://composio.dev/toolkits/exa/framework/claude-cowork)
- [OpenAI Agents SDK](https://composio.dev/toolkits/exa/framework/open-ai-agents-sdk)
- [Claude Agent SDK](https://composio.dev/toolkits/exa/framework/claude-agents-sdk)
- [Grok Bot](https://composio.dev/toolkits/exa/framework/grok-bot)
- [Codex](https://composio.dev/toolkits/exa/framework/codex)
- [OpenClaw](https://composio.dev/toolkits/exa/framework/openclaw)
- [Hermes](https://composio.dev/toolkits/exa/framework/hermes-agent)
- [Atomic Agent](https://composio.dev/toolkits/exa/framework/atomic-agent)
- [Google ADK](https://composio.dev/toolkits/exa/framework/google-adk)
- [LangChain](https://composio.dev/toolkits/exa/framework/langchain)
- [Vercel AI SDK](https://composio.dev/toolkits/exa/framework/ai-sdk)
- [Mastra AI](https://composio.dev/toolkits/exa/framework/mastra-ai)
- [LlamaIndex](https://composio.dev/toolkits/exa/framework/llama-index)
- [CrewAI](https://composio.dev/toolkits/exa/framework/crew-ai)
- [Pydantic AI](https://composio.dev/toolkits/exa/framework/pydantic-ai)
- [AutoGen](https://composio.dev/toolkits/exa/framework/autogen)

## TL;DR

- Cross-app workflows across 1,500+ apps from a single plugin layer.
- On-demand tool loading so Muse only loads the tools needed for the current task.
- Programmatic tool calling through a remote workbench for complex, multi-step workflows.
- Multi-account support so users can connect and switch between multiple accounts for the same app.
- Shared account access so teams or agents can work through common business accounts and service connections.
- Managed authentication with OAuth handling, credential storage, and token refresh managed by Composio.
- Safer credential handling so app credentials stay outside the model context and tool responses.
- User-level account isolation so actions run against the correct connected account instead of mixing user access.

## Connect Exa to Muse

### Connecting Exa to Muse
You add Composio to Muse once as a custom connector, then connect Exa from the chat.

## What is the Exa MCP server, and what's possible with it?

The Exa MCP server is an implementation of the Model Context Protocol that connects your AI agent and assistants like Claude, Cursor, etc directly to your Exa account. It provides structured and secure access to Exa’s web search, content extraction, and research tools, so your agent can search the web, generate cited answers, retrieve website content, conduct in-depth research, and organize findings on your behalf.
- Web search: Have your agent search the web with Exa to find relevant sources for a topic, question, company, or market.
- Citation-backed answers: Ask the agent to answer specific questions or summarize broad topics using supporting web sources and citations.
- Website content extraction: Direct your agent to retrieve text, highlights, summaries, and linked subpages from websites or saved documents.
- Multi-step research: Let the agent start research tasks, check their progress, and return synthesized findings with citations when the work is complete.
- Research collection management: Instruct your agent to create or delete web collections, import data into them, review imports, add enrichment, and set up monitors.

## Supported Tools

| Tool slug | Name | Description |
|---|---|---|
| `EXA_ANSWER` | Generate an answer | Generates a direct, citation-backed answer to a clear natural language question or topic using Exa's search, adept at both specific answers and detailed summaries for open-ended queries. Response contains an `answer` field (summary) and a `citations` field (supporting URLs). Citations may include low-credibility sources; verify authoritative references for factual use. |
| `EXA_CREATE_IMPORT` | Create Import | Tool to create a new import to upload data into a Webset. Use when you need to initialize an import before uploading the data file. |
| `EXA_CREATE_MONITOR` | Create a Monitor | Tool to create a new Monitor. Use when you need to schedule automated updates for a Webset without manual runs. |
| `EXA_CREATE_RESEARCH` | Create Research Task | Creates an asynchronous research task that explores the web, gathers sources, synthesizes findings, and returns results with citations. The API responds immediately with a researchId for polling completion status. Use this when you need to generate: 1. Structured JSON matching an outputSchema you provide 2. A detailed markdown report when no schema is provided After creation, poll the research task status using the researchId to retrieve the final results when completed. |
| `EXA_CREATE_WEBSET` | Create Webset | Tool to create a new Webset with search, import, and enrichment setup. Use when you need to configure and seed a Webset in one call. |
| `EXA_DELETE_IMPORT` | Delete import | Tool to delete an existing import. Use when you need to permanently remove an import by its ID. |
| `EXA_DELETE_WEBSET` | Delete webset | Tool to delete a Webset. Use after confirming the Webset ID to permanently remove the Webset and all its items. |
| `EXA_FIND_SIMILAR` | Find similar | Finds web pages semantically similar to a given URL using embeddings-based search, optionally retrieving full text, highlights, or summaries for results. |
| `EXA_GET_API_KEY` | Get API Key | Tool to retrieve details of a specific API key by its ID. Use when you need to fetch information about an API key in the team management context. |
| `EXA_GET_CONTENTS_ACTION` | Get contents from URLs or document IDs | Retrieves configurable text and highlights from a list of Exa document IDs or publicly accessible URLs. Calls may partially succeed — always inspect the per-item `statuses` array for errors like CRAWL_NOT_FOUND, CRAWL_LIVECRAWL_TIMEOUT, CRAWL_UNKNOWN_ERROR, or SOURCE_NOT_AVAILABLE. Retrieved text is nested under `results[i].text`, not a top-level field. |
| `EXA_GET_EVENT` | Get Event | Tool to get details of a specific event by its ID. Use when you have an event ID and need its full details. |
| `EXA_GET_RESEARCH` | Get Research Task | Tool to retrieve the status and results of a previously created research task. Use the unique researchId returned from POST /research/v1 to poll until the task is finished. |
| `EXA_LIST_EVENTS` | List events | Tool to list all events that have occurred in the system. Use when you need to paginate through the event history. |
| `EXA_LIST_IMPORTS` | List imports | Tool to list all imports for the Webset. Use when you need to paginate through and monitor import jobs. |
| `EXA_LIST_RESEARCH` | List research tasks | Tool to retrieve a paginated list of your research tasks. Use when you need to view or monitor research jobs with cursor-based pagination. |
| `EXA_LIST_WEBHOOKS` | List webhooks | Tool to list all webhooks for Websets. Use when you need to view existing webhooks and paginate through results. |
| `EXA_SEARCH` | Search | Performs a web search using the Exa engine, useful for queries requiring advanced filtering, specific content categories, or AI-optimized prompting. Returns snippets and metadata only — use EXA_GET_CONTENTS_ACTION on returned URLs to retrieve full page content. No pagination; issue multiple calls with varied queries or date windows for broader coverage. IMPORTANT CONSTRAINTS: - includeDomains and excludeDomains are MUTUALLY EXCLUSIVE: You can use ONE or the OTHER, but NEVER both in the same request. Providing both will cause a validation error. TYPE-SPECIFIC PARAMETER COMPATIBILITY: - type='keyword': Fast exact matching. Does NOT support useAutoprompt, includeDomains, or excludeDomains. - type='neural': AI semantic search. Supports all parameters including useAutoprompt and domain filters. - type='auto': Smart routing. Supports all parameters. |
| `EXA_UPDATE_IMPORT` | Update import | Tool to update an import configuration by ID. Use when you need to modify an import's title or metadata. |

## Supported Triggers

None listed.

## Troubleshooting

### 1. Why doesn't Muse show a button to add my API key?

Muse shows the button only when you ask it to open the secure credentials store.
- Start a new chat.
- Send the message from step 1 exactly as written.
- If Muse asks for the key in the chat, do not paste it. Ask Muse to open the secure credentials store.

### 2. Why does the Composio connection fail after I add my API key?

The key or the connector settings are not correct.
- Copy the full key from the Composio dashboard. It starts with ck_.
- Make sure the URL is https://connect.composio.dev/mcp and the header is x-consumer-api-key.
- Remove the Composio connector in Muse settings, then do steps 1 to 3 again.

### 3. Why doesn't Muse use the Composio tools for Exa?

Muse may not pick the Composio connector for the request.
- Ask Muse to list its Composio tools.
- Name Composio and Exa in your request, for example: Use Composio to connect to Exa.
- If it still does not work, start a new chat and try again.

### 4. Why does Muse ask me to connect Exa again?

Your Exa connection expired or was removed.
- Open the link Muse gives you and sign in to Exa again.
- Check that the Exa connection shows as ACTIVE in the Composio dashboard.

### 5. What do I do if I pasted my API key into the chat?

Treat the key as exposed.
- Create a new API key in the Composio dashboard and delete the old one.
- Add the new key in Muse's secure credentials store, not in the chat.

## Creating MCP Server - Stand-alone vs Composio SDK

Once connected, Muse can access the Exa MCP server through Composio to run the actions you authorize, using plain language in the chat.

## Complete Code

None listed.

## Conclusion

### Way Forward
Now that Exa is connected, extend your setup by connecting the other apps you already use every day, so Muse can run true cross-app workflows end to end.
- Connect Calendar to turn threads into scheduled meetings automatically.
- Connect Slack or Teams to post summaries, approvals, and alerts where your team works.
- Connect Notion, Linear, Jira, or Asana to convert requests into tickets, tasks, and docs.
- Connect Drive, Dropbox, or OneDrive to fetch, file, and share attachments without manual steps.
Start with one workflow you do repeatedly, then keep adding apps as you find new handoffs. With everything behind a single connection, Muse can coordinate multiple tools safely and reliably in one conversation.

## How to build Exa MCP Agent with another framework

- [Claude Code](https://composio.dev/toolkits/exa/framework/claude-code)
- [Claude Cowork](https://composio.dev/toolkits/exa/framework/claude-cowork)
- [OpenAI Agents SDK](https://composio.dev/toolkits/exa/framework/open-ai-agents-sdk)
- [Claude Agent SDK](https://composio.dev/toolkits/exa/framework/claude-agents-sdk)
- [Grok Bot](https://composio.dev/toolkits/exa/framework/grok-bot)
- [Codex](https://composio.dev/toolkits/exa/framework/codex)
- [OpenClaw](https://composio.dev/toolkits/exa/framework/openclaw)
- [Hermes](https://composio.dev/toolkits/exa/framework/hermes-agent)
- [Atomic Agent](https://composio.dev/toolkits/exa/framework/atomic-agent)
- [Google ADK](https://composio.dev/toolkits/exa/framework/google-adk)
- [LangChain](https://composio.dev/toolkits/exa/framework/langchain)
- [Vercel AI SDK](https://composio.dev/toolkits/exa/framework/ai-sdk)
- [Mastra AI](https://composio.dev/toolkits/exa/framework/mastra-ai)
- [LlamaIndex](https://composio.dev/toolkits/exa/framework/llama-index)
- [CrewAI](https://composio.dev/toolkits/exa/framework/crew-ai)
- [Pydantic AI](https://composio.dev/toolkits/exa/framework/pydantic-ai)
- [AutoGen](https://composio.dev/toolkits/exa/framework/autogen)

## Related Toolkits

- [Firecrawl](https://composio.dev/toolkits/firecrawl) - Firecrawl automates large-scale web crawling and data extraction. It helps organizations efficiently gather, index, and analyze content from online sources.
- [Tavily](https://composio.dev/toolkits/tavily) - Tavily offers powerful search and data retrieval from documents, databases, and the web. It helps teams locate and filter information instantly, saving hours on research.
- [Serpapi](https://composio.dev/toolkits/serpapi) - SerpApi is a real-time API for structured search engine results. It lets you automate SERP data collection, parsing, and analysis for SEO and research.
- [Peopledatalabs](https://composio.dev/toolkits/peopledatalabs) - Peopledatalabs delivers B2B data enrichment and identity resolution APIs. Supercharge your apps with accurate, up-to-date business and contact data.
- [Snowflake](https://composio.dev/toolkits/snowflake) - Snowflake is a cloud data warehouse built for elastic scaling, secure data sharing, and fast SQL analytics across major clouds.
- [Posthog](https://composio.dev/toolkits/posthog) - PostHog is an open-source analytics platform for tracking user interactions and product metrics. It helps teams refine features, analyze funnels, and reduce churn with actionable insights.
- [Akta](https://composio.dev/toolkits/akta) - Akta is a company intelligence platform providing enrichment, news, and alternative business signals. It helps teams build targeted company lists and enrich data-driven workflows.
- [Amplitude](https://composio.dev/toolkits/amplitude) - Amplitude is a digital analytics platform for product and behavioral data insights. It helps teams analyze user journeys and make data-driven decisions quickly.
- [Amplitude MCP](https://composio.dev/toolkits/amplitude_mcp) - Amplitude MCP is Amplitude's product analytics service for tracking user behavior and product metrics. Use it to centralize product data and manage charts, dashboards, cohorts, experiments, and taxonomy.
- [Baremetrics](https://composio.dev/toolkits/baremetrics) - Baremetrics is a subscription analytics platform for recurring-revenue businesses. It helps teams track MRR, churn, customers, and revenue trends in one place.
- [Bing Webmaster Tools](https://composio.dev/toolkits/bing_webmaster_tools) - Bing Webmaster Tools is Microsoft's search console for site performance, crawling, indexing, URL submission, and verified site management. It helps site owners understand Bing Search visibility and fix issues that affect organic traffic.
- [Bread & Butter](https://composio.dev/toolkits/bread_butter) - Bread & Butter is a lead-intelligence and identity platform for website visitor tracking, user profiles, attribution, authentication, and conversion workflows. It helps teams understand who is visiting, where leads come from, and how users convert.
- [Bright Data MCP](https://composio.dev/toolkits/brightdata_mcp) - Bright Data MCP is an AI-powered web scraping and data collection platform. Instantly access public web data in real time with advanced scraping tools.
- [Browseai](https://composio.dev/toolkits/browseai) - Browseai is a web automation and data extraction platform that turns any website into an API. It's perfect for monitoring websites and retrieving structured data without manual scraping.
- [BSC Designer](https://composio.dev/toolkits/bsc_designer) - BSC Designer is a strategy execution platform for balanced scorecards, KPIs, dashboards, and strategy maps. It helps teams turn goals into measurable performance plans they can track over time.
- [Chameleon](https://composio.dev/toolkits/chameleon) - Chameleon is a product adoption platform for building in-app experiences, managing customer data, and analyzing user engagement. It helps teams improve onboarding, feature discovery, and product adoption with targeted user experiences.
- [ChartMogul](https://composio.dev/toolkits/chartmogul) - ChartMogul is a subscription analytics and revenue data platform. It helps teams monitor MRR, churn, customer segments, and billing metrics.
- [ClickHouse](https://composio.dev/toolkits/clickhouse) - ClickHouse is an open-source, column-oriented database for real-time analytics and big data processing using SQL. Its lightning-fast query performance makes it ideal for handling large datasets and delivering instant insights.
- [Coinmarketcal](https://composio.dev/toolkits/coinmarketcal) - CoinMarketCal is a community-powered crypto calendar for upcoming events, announcements, and releases. It helps traders track market-moving developments and stay ahead in the crypto space.
- [Control d](https://composio.dev/toolkits/control_d) - Control d is a customizable DNS filtering and traffic redirection platform. It helps you manage internet access, enforce policies, and monitor usage across devices and networks.

## Frequently Asked Questions

### Does Muse support MCP?

Yes. Muse supports custom connectors that use the Model Context Protocol (MCP). Composio connects as one custom connector over remote streamable HTTP at https://connect.composio.dev/mcp, and gives Muse access to Exa and 1,500+ other apps.

### Where do I get the API key for the Composio connector?

Copy it from the Composio dashboard. It starts with ck_. Enter it only in Muse's secure credentials store, never in the chat.

### Can I connect more than one Exa account to Muse?

Yes. Composio supports multiple connected accounts for the same app. Give each Exa connection a name, such as work or personal, and tell Muse which one to use.

### How safe is my Exa data with Composio?

Tokens, keys, and configuration are encrypted at rest and in transit. Your Composio API key stays in Muse's secure credentials store, not in the chat or the model context. Composio is SOC 2 Type 2 compliant.

---
[See all toolkits](https://composio.dev/toolkits) · [Composio docs](https://docs.composio.dev/llms.txt)
