The Client Configurator is a library that helps manage MCP Client configuration (checking client status, adding / removing servers, etc). Currently it supports Claude, Cursor & VSCode. The source code is available in packages/client-configurator.
API
import { ConfiguratorTarget, getConfigurator } from "@director.run/client-configurator/index";
const claudeConfigurator = getConfigurator(ConfiguratorTarget.Claude);
// Is Claude installed on this machine?
await claudeConfigurator.isClientPresent();
await claudeConfigurator.isInstalled("my-proxy");
// Install an MCP server using a URL. If the client doesn't support HTTP, we use proxies.
await claudeConfigurator.install({
name: "my-proxy",
url: "http://localhost:3673/my-proxy/sse",
});
await claudeConfigurator.uninstall("my-proxy");
// Clear the config file. Useful for development
await claudeConfigurator.reset();
Adding support for a new client
// Create a new configurator in ./src/
export class NewClientConfigurator extends AbstractConfigurator<ClaudeConfig> {
// Implement the protected methods
}