Skip to main content
The Bland plugin is the recommended way to connect a coding agent to Bland. It layers a full agent-engineering workflow on top of the Bland MCP server: skills for every part of the platform, /bland:* slash commands for a file-based pathway workspace, and Norm, the agent builder with a self-driving convergence loop. One plugin, three layers:
  • The hosted MCP server at api.bland.ai/v1/mcp does the work: reads and writes against your account, the pathway compiler, call logs, analytics, and docs search.
  • Skills teach the agent how to use it well. They load on demand when the conversation matches: pathways, analytics, evals, call review, tools, personas, knowledge bases, automations, triage, debugging, the raw API, and setup.
  • Norm and the /bland:* commands turn a pathway into local files you edit like code, validate against the real compiler, simulate, and commit.
Using VS Code, Windsurf, Gemini CLI, or a client the plugin does not support? Connect the server directly from the MCP clients page.

Prerequisites

  • A Bland API key from app.bland.ai/settings/api-keys. Never paste it into the chat; each host stores it for you as described below.
  • Node.js 18 or newer for the workspace commands and hooks. Claude Code ships with it.

Install

Inside a Claude Code session:
The install prompts for your API key and stores it in your OS keychain. Scripted installs pass it on the command line so it never enters the model context:
Restart the session, then verify:
Never paste your API key into the chat. The install prompt, the --config flag, and the host’s plugin settings keep it out of the model context. To set, fix, or rotate the key on Claude Code, run /plugin configure bland@bland.

Upgrading from the Norm plugin

Version 2.0 renamed the plugin from norm to bland. Run /plugin uninstall norm@bland, then /plugin install bland@bland and enter your key when prompted. The new plugin does not migrate the old credentials, so the key must be configured once. Commands moved from /norm:* to /bland:*, and the domain commands (tools, analytics, evals, review, and the rest) became skills that load on demand: just ask.

The flow, start to production

  1. Build it. /bland:norm build me a booking flow that collects name, callback number, and a time, then confirms it back. Norm designs the pathway, validates it with the real compiler, and saves it.
  2. Give it tools. Ask for a tool that checks availability in your booking API. The tools skill builds it, test-runs it against the real endpoint, and attaches it to the node that needs it.
  3. Prove it works. /bland:loop <pathway_id> --goal 'caller books an appointment and gets it confirmed back'. Norm simulates the customer, grades every outcome with evidence, fixes what fails, and repeats until the call passes.
  4. Define what to measure. Ask for an outcome schema: booked yes/no, appointment time, reason if not booked. Verified on real calls before you trust it.
  5. Score every call. Ask for a scorecard for this pathway. Every production call auto-scores after it ends.
  6. Watch it. Ask for an ops dashboard. A live board in the Bland UI: volume, completion, outcomes, score trends.
  7. Iterate from reality. Ask which calls are behind a strange number, review the call to find the exact turn it broke, then /bland:loop <pathway_id> --from-call <call_id> to fix the flow against that real call.

Edit an existing pathway

Norm turns a pathway into local files you can read and edit: prompts as Markdown, configuration as YAML.
Committing saves a new working version. Production is unchanged until you publish. Ask Norm to publish when you want the new version on live traffic.

Command reference

Skills

Skills load automatically when the conversation matches their description, on every host that reads SKILL.md.

Safety

  • Reads are free. Anything that mutates state, costs money, or dials a phone asks for confirmation first.
  • Norm never invents numbers or verdicts. Every claim is backed by a query, a read-back, or a transcript quote.
  • Your API key stays in the host’s configuration and flows only to the MCP connection.
Advanced: the setup skill explains how to point the plugin at a non-production API URL, for example a staging server. The MCP transport requires https, so expose local servers through a tunnel.

Bland MCP Server

The hosted MCP endpoint behind the plugin.

Tool reference

Every tool the server exposes.

Norm

The in-app version of Norm in the Bland dashboard.

Conversational Pathways

The flow graph Norm builds and edits.

Docs for agents: llms.txt