Skip to main content

Documentation Index

Fetch the complete documentation index at: https://docs.director.run/llms.txt

Use this file to discover all available pages before exploring further.

The CLI, along with the Studio, are the primary ways to interact with director. The CLI is distributed as a standalone package, and can be installed via npm.

Installation

$ curl -LsSf https://director.run/install.sh | sh

Usage

$ director --help

Playbooks for your AI agent

USAGE
  director <command> [subcommand] [flags]

CORE COMMANDS
   quickstart                                    Start the gateway and open the studio in your browser
   serve                                         Start the web service
   studio                                        Open the UI in your browser
   ls                                            List playbooks
   get <playbookId> [serverName]                 Show playbook details
   auth <playbookId> <server>                    Authenticate a server
   create <name>                                 Create a new playbook
   destroy <playbookId>                          Delete a playbook
   connect <playbookId> [options]                Connect a playbook to a MCP client
   disconnect <playbookId> [options]             Disconnect a playbook from an MCP client
   add <playbookId> [options]                    Add a server to a playbook
   remove <playbookId> <serverName>              Remove a server from a playbook
   update <playbookId> [serverName] [options]    Update playbook attributes
   http2stdio <url>                              Proxy an HTTP connection (sse or streamable) to a stdio stream
   env [options]                                 Print environment variables
   status                                        Get the status of the director

REGISTRY
   registry ls                                   List all available servers in the registry
   registry get <entryName>                      Get detailed information about a registry item
   registry readme <entryName>                   Print the readme for a registry item

MCP
   mcp list-tools <playbookId>                   List tools on a playbook
   mcp get-tool <playbookId> <toolName>          Get the details of a tool
   mcp call-tool <playbookId> <toolName> [options]  Call a tool on a playbook

PROMPTS
   prompts ls <playbookId>                       List all prompts for a playbook
   prompts add <playbookId>                      Add a new prompt to a playbook
   prompts edit <playbookId> <promptName>        Edit an existing prompt
   prompts remove <playbookId> <promptName>      Remove a prompt from a playbook
   prompts get <playbookId> <promptName>         Show the details of a specific prompt

FLAGS
   -V, --version                                 output the version number

EXAMPLES
  $ director create my-playbook                 Create a new playbook
  $ director add my-playbook --entry fetch      Add a server to a playbook
  $ director connect my-playbook --target claude  Connect my-playbook to claude

Examples

Start the gateway

$ director serve

         _ _               _
        | (_)             | |
      __| |_ _ __ ___  ___| |_ ___  _ __
     / _' | | '__/ _ \/ __| __/ _ \| '__|
    | (_| | | | |  __/ (__| || (_) | |
     \__,_|_|_|  \___|\___|\__\___/|_|


[18:16:21] INFO (Gateway): starting director gateway
[18:16:21] INFO (Gateway): director gateway running on port 3673

Create a playbook

$ director create my-first-playbook 
playbook my-first-playbook created

Add a server to the playbook

$ director add my-first-playbook --entry fetch
adding fetch to my-first-playbook
 Entry fetched.
 Registry entry fetch added to my-first-playbook

Connect the playbook to a client

# connect the playbook to Claude automatically
$ director connect my-first-playbook -t claude 
[18:19:06] INFO (client-configurator/claude): reading config from /Users/barnaby/Library/Application Support/Claude/claude_desktop_config.json
[18:19:06] INFO (client-configurator/claude): installing my-first-playbook
[18:19:06] INFO (client-configurator/claude): writing config to /Users/barnaby/Library/Application Support/Claude/claude_desktop_config.json
[18:19:06] INFO (client-configurator/claude): restarting claude
[18:19:06] INFO (restartApp): restarting Claude...
[18:19:08] INFO (restartApp): Claude has been restarted
undefined

# print the manual connection details
$ director connect my-first-playbook 

--------------------------------
Connection Details for 'my-first-playbook'
--------------------------------

Note: if you'd like to connect to a client automatically, run:
director connect my-first-playbook --target <target>

HTTP Streamable: http://localhost:3673/my-first-playbook/mcp
HTTP SSE: http://localhost:3673/my-first-playbook/sse
Stdio: {
  "command": "npx",
  "args": [
    "-y",
    "@director.run/cli",
    "http2stdio",
    "http://localhost:3673/my-first-playbook/mcp"
  ],
  "env": {
    "LOG_LEVEL": "silent"
  }
}

Get the details of a playbook

# list all the playbooks
$ director ls
┌──────────────────┬──────────────────┬────────────────────────────────────────────┐
 id name path
 my-first-playbook my-first-playbook http://localhost:3673/my-first-playbook/mcp
└──────────────────┴──────────────────┴────────────────────────────────────────────┘

# get the details of a single playbook
$ director get my-first-playbook 
id=my-first-proxy
name=my-first-proxy
┌───────┬───────────┬──────────────────────┐
 name transport url/command
 fetch stdio uvx mcp-server-fetch
└───────┴───────────┴──────────────────────┘