Scout MCP
Scout MCP is a local Model Context ProtocolΒ server that connects your coding agents to the Scout OS API. Start it locally and your agent can list workflows, create collections, run triggers, upload files, and more β all from inside its context window.
How It Works
Scout MCP wraps the Scout OS APIΒ and exposes it as 13 domain tools. Each tool accepts an action parameter (list, get, create, update, delete) so your agent can operate on any Scout resource without learning a separate tool for every endpoint.

The server runs on http://127.0.0.1:9987/mcp using Streamable HTTP transport, making it compatible with any MCP-capable client.
Tool Coverage
79 Scout API endpoints are mapped to 13 domain tools:
| Tool | Covers | Actions |
|---|---|---|
scout_workflows | Workflows, revisions, environments | list, get, create, update, delete, run, run_with_config |
scout_agents | Agents | list, get, upsert, delete, interact, interact_sync |
scout_agent_sessions | Agent sessions | interact_with_session, interact_sync_with_session, interact_async_with_session |
scout_collections | Collections | list, get, create, update, delete |
scout_tables | Tables | list, get, create, update, delete, get_schema, sync |
scout_documents | Documents | list, get, create, update, update_batch, delete, delete_batch |
scout_syncs | Syncs, sources | list, get, create, update, delete, execute, list_sources |
scout_triggers | Triggers | list, create, update, delete, execute_slack, execute_telegram, execute_cron |
scout_copilots | Copilots | list, get, create, update, delete |
scout_logs | Run logs | list, get_details |
scout_integrations | Integrations, org | list, list_channels, delete_integration |
scout_drive | Drive | upload, download |
scout_usage | Usage | get |
Resources
Read-only context resources exposed via MCP:
scout://workflowsβ list of workflowsscout://collectionsβ list of collectionsscout://agentsβ list of agents
Install and Start
Prerequisite: A Scout API key from Settings β API Keys.
Install with npm:
npm install -g scoutos-mcpOr run directly with npx:
npx scoutos-mcpSet your API key and start the server:
export SCOUT_API_KEY="your_api_key_here"
scoutos-mcpBy default, the server listens on http://127.0.0.1:9987/mcp. Customize the port or host:
scoutos-mcp --port 3333 --host 127.0.0.1Verify it is running:
curl http://127.0.0.1:9987/healthBearer Token Authentication
To restrict access to the MCP server, set a bearer token:
export MCP_SERVER_BEARER_TOKEN="your_secret_token"Clients must then include this header with every request:
Authorization: Bearer your_secret_tokenEnvironment Variables
| Variable | Required | Default | Description |
|---|---|---|---|
SCOUT_API_KEY | Yes | β | Your Scout API key |
PORT | No | 9987 | Server port |
HOST | No | 127.0.0.1 | Server host |
MCP_SERVER_BEARER_TOKEN | No | β | Bearer token for client authentication |
Docker
docker build -t scoutos-mcp .
docker run -p 9987:9987 -e SCOUT_API_KEY=your_api_key_here scoutos-mcpConnect Your Agent
Point your MCP-capable coding agent at the Scout MCP server URL:
http://127.0.0.1:9987/mcpEach agent has its own way of configuring MCP server connections. Follow the setup guide for your preferred coding agent:
Example Prompts
Once Scout MCP is connected, try prompts like:
- βList my Scout workflows and explain what each one does.β
- βFind the agent named SDR Assistant and show its current configuration.β
- βShow my collections and summarize which tables look customer-related.β
- βRun the workflow
<workflow-id>with a sample payload and summarize the output.β - βCheck recent Scout run logs and surface failures from today.β
- βUpload this CSV to the Drive and then sync it to the customers table.β
Troubleshooting
| Issue | What to check |
|---|---|
| Agent cannot connect | Make sure scoutos-mcp is running and the URL matches the configured host and port |
401 or auth errors | Verify SCOUT_API_KEY is set before starting the server |
| Works in one agent but not another | Confirm each agent is pointing at http://127.0.0.1:9987/mcp and reload its MCP config |
| Health check fails | Run curl http://127.0.0.1:9987/health locally and restart the server |
| Bearer token errors | Make sure MCP_SERVER_BEARER_TOKEN and the client Authorization header match |