Skip to content
code-config.com

Set up a toolkit's MCPs on first launch

The first time you launch a coding app with a toolkit, Code Config starts the app with a message already in it. You get that message again whenever one of the toolkit’s tool servers still needs a key on this computer.

The message is addressed to the agent in the app you just opened. It names every tool server the toolkit carries, says which ones are ready, and says which ones are waiting for a key. For each server that needs one, it carries the exact command that sets that server up:

Terminal window
csc mcp setup --toolkit <toolkit> --server <server> --json

Names, IDs, and commands are all the message holds. No key value goes into it.

The setup command reads a value without showing it. The agent is told to look in these places, in this order, and to stop at the first one that works:

  1. A variable already set in the session, named with --from-env NAME.
  2. A command that prints the value, passed as --from-command '<the command>'.
  3. A file that holds the value, passed as --from-file <path>.
  4. Otherwise it asks you for the value in the chat, adds --from-stdin, and writes what you gave it to that command’s own standard input.

Each option names where to read the value from, so the value itself stays off the command line — including out of a shell one-liner, where a quoted value would land on the shell’s own command line. Pasting a key into the chat also leaves it in that conversation’s history, so the first three routes are worth having for a key you use often.

Once the commands have run, the agent calls each tool server once and tells you which ones answered.

When every key is in place, it tells you to start your coding app again to pick this up. A coding app reads its settings when it starts, so the keys you just set up arrive on the next launch rather than in the session you are sitting in.

Run this in a terminal on the same computer at any point:

Terminal window
csc mcp status --toolkit <toolkit> --json

It reports every tool server in the toolkit and what each one is waiting for.

In the Code Config app, the button that starts the launch reads Set up and launch with your coding app’s name whenever the launch carries that first message. It reads Launch once every server is ready and you have opened this toolkit on this computer before.

From a terminal, add --setup to the launch:

Terminal window
csc launch <host> --toolkit <id> --setup

With --json, the answer reports firstPrompt as true when the launch handed the app a message. The text of the message stays out of that answer.

A first message rides on the command line the coding app is started with, and only a terminal app is started that way. A desktop app is handed a folder, and Cursor’s Set up and open writes the toolkit’s files into your project and hands that folder to your own Cursor. Neither takes a message on the way in, so neither is offered a set-up launch — the button says Launch or Set up and open, and the toolkit’s servers are set up from a terminal with csc mcp setup.

Set up MCP credentials covers doing this yourself.

Troubleshooting lists the reasons a server is left out of a launch.