Adds the smbCloud CLI as an MCP server in Zed, so the agent can work with your mail domains, inbox routes, auth apps, projects, tenants, and deploys.
From Zed: zed: extensions → search for smbCloud → Install.
Then sign in once from a terminal — the server reuses the session the CLI writes to disk:
npx -y @smbcloud/cli loginConfigure it in Zed's settings under context_servers.smbcloud:
{
"context_servers": {
"smbcloud": {
"source": "extension",
"settings": {
"scope": "cloud",
"environment": "production",
"mail_api_key": "smb_mail_..."
}
}
}
}| Setting | Values | Notes |
|---|---|---|
scope |
cloud (default), automation |
cloud serves smbCloud resources; automation serves the mobile and TV device tools |
environment |
production (default), dev |
Which API to talk to |
mail_api_key |
smb_mail_... |
Only mail_send needs it; passed through as SMB_MAIL_API_KEY |
By default the extension installs @smbcloud/cli from npm and runs it with
Zed's bundled Node. If you already have smb on your machine, point at it
instead and skip the download:
{
"context_servers": {
"smbcloud": {
"source": "extension",
"command": { "path": "/opt/homebrew/bin/smb" }
}
}
}The CLI is published to the MCP registry
as io.github.smbcloudXYZ/smbcloud-cli, so you can also add it as a custom
local server and skip this extension entirely:
{
"context_servers": {
"smbcloud": {
"command": "npx",
"args": ["-y", "@smbcloud/cli", "--mcp"],
"env": { "SMB_MAIL_API_KEY": "smb_mail_..." }
}
}
}rustup target add wasm32-wasip2
cargo build --release --target wasm32-wasip2Then run zed: install dev extension and pick this directory. Logs go to
~/Library/Logs/Zed/Zed.log, or run zed --foreground for verbose output.
Zed's registry works by submodule. Open a PR against
zed-industries/extensions that:
- adds this repo as a submodule at
extensions/smbcloud - adds an entry to the top-level
extensions.tomlwith the submodule path and version - runs
pnpm sort-extensions
Keep version in extension.toml in step with that entry.
Apache-2.0, matching the CLI.