Connect your agents to every app through a single MCP.
- ✓Open-source license (MIT)
- ✓Actively maintained (<30d)
- ✓Clear description
- ✓Topics declared
- ✓Documented (README)
claude mcp add mcp -- npx -y @withone/mcp{
"mcpServers": {
"mcp": {
"command": "npx",
"args": ["-y", "@withone/mcp"],
"env": {
"ONE_SECRET": "<one_secret>"
}
}
}
}ONE_SECRETMCP Servers overview
<img src="https://assets.withone.ai/banners/mcp.png?v=3" alt="One MCP — Connect your agents to every app through a single MCP." style="border-radius: 5px;">
<h3 align="center">One MCP Server</h3>
<p align="center">
<a href="https://withone.ai"><strong>Website</strong></a>
·
<a href="https://withone.ai/docs"><strong>Docs</strong></a>
·
<a href="https://app.withone.ai"><strong>Dashboard</strong></a>
·
<a href="https://withone.ai/changelog"><strong>Changelog</strong></a>
·
<a href="https://x.com/withoneai"><strong>X</strong></a>
·
<a href="https://linkedin.com/company/withoneai"><strong>LinkedIn</strong></a>
</p>
<p align="center">
<a href="https://npmjs.com/package/@withone/mcp"><img src="https://img.shields.io/npm/v/%40withone%2Fmcp" alt="npm version"></a>
</p>
Connect your AI agents to 700+ apps through a single [MCP](https://modelcontextprotocol.io) server. Search for actions, read documentation, and execute API calls across platforms, without having to manage OAuth tokens or API keys.
```bash
npm install -g @withone/cli
one init
```
That's it. The [One CLI](https://www.npmjs.com/package/@withone/cli) will prompt you for your API key (get one from the [One dashboard](https://app.withone.ai/settings/api-keys)) and configure the MCP server for your environment: Claude Desktop, Cursor, Claude Code, Windsurf, or any MCP-compatible agent.
## Capabilities
- **700+ platforms.** Gmail, Slack, Shopify, HubSpot, Stripe, Linear, QuickBooks, and [more](https://app.withone.ai/tools).
- **Natural language execution.** "read my last gmail email", "send a message to #general on Slack"
- **Code generation.** "build a form to send emails using Gmail", "create a dashboard that lists my Linear projects"
- **No tool bloat.** Only 4 tools exposed regardless of how many platforms or actions you connect. Actions are search-based, so your agent's context window stays clean.
- **Fine-grained access control.** Restrict which actions, connections, and permission levels (read, write, admin) your agent has access to.
- **Secure by default.** All requests proxied through One, secrets automatically redacted, no platform API keys to manage.
## Examples
**Execute actions directly:**
> "Get my last 5 emails from Gmail"
> "Send a Slack message to #general: 'Meeting in 10 minutes'"
> "Get all products from my Shopify store"
**Generate integration code:**
> "Create a React form component that sends emails using Gmail"
> "Build a dashboard that displays Linear users and their assigned projects with filtering"
> "Create a paginatable table that fetches and displays QuickBooks invoices with search and sort"
## Tools
The server exposes four MCP tools:
| Tool | Description |
|------|-------------|
| `list_one_integrations` | List available platforms and active connections, each with the `access` it confers (full, methods, or specific actions) |
| `search_one_platform_actions` | Search for actions on a specific platform |
| `get_one_action_knowledge` | Get detailed documentation for an action |
| `execute_one_action` | Execute an API action on a connected platform |
## Remote MCP Server
Prefer not to run anything locally? One hosts a remote MCP server at **`https://mcp.withone.ai/mcp`**. Point any MCP client that supports remote (HTTP) servers at that URL and authenticate with One via OAuth. There's no `npm install` and no `ONE_SECRET` to manage. You approve access in One's consent screen, where you can scope exactly which connections, actions, and permission levels the agent gets. Those choices are surfaced back to the agent through each connection's `access` field, so it knows what it can run without searching.
Add it to your client's MCP configuration. The endpoint speaks the Streamable HTTP transport:
```json
{
"mcpServers": {
"one": {
"type": "http",
"url": "https://mcp.withone.ai/mcp"
}
}
}
```
Some clients omit `type` and take the URL alone; UI-based clients (custom connectors) just need the URL itself. On first connect, your client opens a browser to authenticate and authorize with One. After that, the same four tools are available.
One-click install:
[](https://vscode.dev/redirect/mcp/install?name=one&config=%7B%22type%22%3A%20%22http%22%2C%20%22url%22%3A%20%22https%3A%2F%2Fmcp.withone.ai%2Fmcp%22%7D)
[](https://insiders.vscode.dev/redirect/mcp/install?name=one&config=%7B%22type%22%3A%20%22http%22%2C%20%22url%22%3A%20%22https%3A%2F%2Fmcp.withone.ai%2Fmcp%22%7D)
[](https://cursor.com/en/install-mcp?name=one&config=eyJ1cmwiOiAiaHR0cHM6Ly9tY3Aud2l0aG9uZS5haS9tY3AifQ==)
## Manual Installation
If you prefer to configure the server manually instead of using `one init`, install the package directly:
```bash
npm install @withone/mcp
```
Then set the required environment variable:
```bash
ONE_SECRET=your-one-secret-key
```
### Identity Scoping
Scope connections to a specific identity (e.g., a user, team, or organization):
```bash
ONE_IDENTITY=user_123
ONE_IDENTITY_TYPE=user
```
| Variable | Description | Values |
|----------|-------------|--------|
| `ONE_IDENTITY` | The identifier for the entity (e.g., user ID, team ID) | Any string |
| `ONE_IDENTITY_TYPE` | The type of identity | `user`, `team`, `organization`, `project` |
When set, the MCP server will only return connections associated with the specified identity. This is useful for multi-tenant applications where you want to scope integrations to specific users or entities.
### Access Control
Fine-tune what the MCP server can see and do:
```bash
ONE_PERMISSIONS=read
ONE_CONNECTION_KEYS=conn_key_1,conn_key_2
ONE_ACTION_IDS=action_id_1,action_id_2
ONE_KNOWLEDGE_AGENT=true
```
| Variable | Type | Default | Description |
|---|---|---|---|
| `ONE_PERMISSIONS` | `read` \| `write` \| `admin` | `admin` | Filter actions by HTTP method. `read` = GET only, `write` = GET/POST/PUT/PATCH, `admin` = all methods |
| `ONE_CONNECTION_KEYS` | `*` or comma-separated keys | `*` | Restrict visible connections and platforms to specific connection keys |
| `ONE_ACTION_IDS` | `*` or comma-separated IDs | `*` | Restrict visible and executable actions to specific action IDs |
| `ONE_KNOWLEDGE_AGENT` | `true` \| `false` | `false` | Remove the `execute_one_action` tool entirely, forcing knowledge-only mode. `get_one_action_knowledge` responses additionally include an Integration Code Guide (passthrough URL, `x-one-*` headers, `ONE_SECRET` / `ONE_{PLATFORM}_CONNECTION_KEY` env vars, backend-only placement) for writing application code |
All defaults preserve current behavior. If no access control env vars are set, the server starts with full access and all tools available.
Whatever you configure here is surfaced back to the agent: `list_one_integrations` stamps each connection with an `access` field so the agent knows up front what it can run there, without spending a turn searching. It is one of:
| `access` | When |
|---|---|
| `{ "policy": "full" }` | No action allowlist and `ONE_PERMISSIONS=admin` — every action is runnable. |
| `{ "policy": "methods", "methods": ["GET", ...] }` | No action allowlist, but `ONE_PERMISSIONS` is `read`/`write` — only these HTTP methods are runnable. |
| `{ "policy": "actions", "actions": [{ "actionId", "title", "method" }] }` | `ONE_ACTION_IDS` is set — exactly these actions (the ones on that connection's platform) are runnable, so no search is needed. |
## Manual Configuration
If you used `one init`, the configuration below is already done for you. These examples are for reference or manual setups.
### Standalone
```bash
npx @withone/mcp
```
### Claude Desktop / Cursor
Add the following to your MCP config:
- **Claude Desktop:** MacOS: `~/Library/Application\ Support/Claude/claude_desktop_config.json` · Windows: `%APPDATA%/Claude/claude_desktop_config.json`
- **Cursor:** Open the Cursor menu and select "MCP Settings"
```json
{
"mcpServers": {
"one": {
"command": "npx",
"args": ["@withone/mcp"],
"env": {
"ONE_SECRET": "your-one-secret-key"
}
}
}
}
```
### Docker
```bash
docker build -t one-mcp-server .
docker run -e ONE_SECRET=your_one_secret_key one-mcp-server
```
All environment variables listed above can be passed as `-e` flags.
## Security
All requests to third-party platforms are authenticated and proxied through One's API. The MCP server never handles OAuth tokens or platform API keys directly. The `ONE_SECRET` key is the sole credential required, and it is automatically redacted from all response payloads returned to clients. Sensitive headers are stripped from logged and returned request configurations.
## License
MIT
## Support
For support, please contact support@withone.ai or visit https://withone.ai
What people ask about mcp
What is withoneai/mcp?
+
withoneai/mcp is mcp servers for the Claude AI ecosystem. Connect your agents to every app through a single MCP. It has 9 GitHub stars and its last recorded update is dated 2026-08-20.
How do I install mcp?
+
You can install mcp by cloning the repository (https://github.com/withoneai/mcp) or following the README instructions on GitHub. ClaudeWave also provides quick install blocks on this page.
Is withoneai/mcp safe to use?
+
Our security agent has analyzed withoneai/mcp and assigned a Trust Score of 95/100 (tier: Verified). See the full breakdown of passed checks and flags on this page.
Who maintains withoneai/mcp?
+
withoneai/mcp is maintained by withoneai. The last recorded GitHub activity is dated 2026-08-20, with 2 open issues.
Are there alternatives to mcp?
+
Yes. On ClaudeWave you can browse similar mcp servers at /categories/mcp, sorted by popularity or recent activity.
Deploy mcp to your cloud
Ship this repo to production in minutes. Each platform spins up its own environment with editable env vars.
Maintain this repo? Add a badge to your README
Drop the badge into your GitHub README to show it's tracked on ClaudeWave. Each badge links back to this page and reflects the live Trust Score.
[](https://claudewave.com/repo/withoneai-mcp)<a href="https://claudewave.com/repo/withoneai-mcp"><img src="https://claudewave.com/api/badge/withoneai-mcp" alt="Featured on ClaudeWave: withoneai/mcp" width="320" height="64" /></a>More MCP Servers
Fair-code workflow automation platform with native AI capabilities. Combine visual building with custom code, self-host or cloud, 400+ integrations.
User-friendly AI Interface (Supports Ollama, OpenAI API, ...)
An open-source AI agent that brings the power of Gemini directly into your terminal.
Real-time global intelligence dashboard. AI-powered news aggregation, geopolitical monitoring, and infrastructure tracking in a unified situational awareness interface
The fastest path to AI-powered full stack observability, even for lean teams.
🕷️ An adaptive Web Scraping framework that handles everything from a single request to a full-scale crawl!