
iannuttall/mcp-config
Developer tools이 페이지는 AI로 자동 번역되었습니다. 기술적인 세부 사항은 원문을 확인하세요. 원문 보기
Turn one MCP server setup into the right format for lots of apps.
개요
Turn one MCP server setup into the right format for lots of apps. - Keep one setup - Get the right file or command for each app - Skip hand edits across many formats - Copy src/ into your project - Import the helpers - Pick a client and transform - Claude Desktop - Cursor - Windsurf - VS Code / Copilot - Cline / Kilo Code / Roo Code - Zed - JetBrains IDEs - Amazon Q - LM Studio - Gemini CLI - Augment Code - OpenCode - Visual Studio - Warp - Perplexity Desktop - Kiro, Trae, BoltAI, Crush - And more - Claude Code - Amp - Factory (Droid) - Rovo Dev - OpenAI Codex CLI Transform a server config for a specific client. Get clients that support remote (HTTP) or local (stdio) servers.
README
원문 README의 일부입니다. 원문 보기.
MCP Config
Turn one MCP server setup into the right format for lots of apps.
- Keep one setup
- Get the right file or command for each app
- Skip hand edits across many formats
Quick start
- Copy
src/into your project - Import the helpers
- Pick a client and transform
import { transformConfig, getClients } from "./src/index.js";
// List all supported clients
const clients = getClients();
// => [{ slug: "claude-desktop", name: "Claude Desktop", format: "json", ... }, ...]
const httpServer = {
name: "playbooks",
type: "http",
url: "https://playbooks.com/api/mcp",
headers: { Authorization: "Bearer YOUR_API_KEY" },
};
const stdioServer = {
name: "my-server",
type: "stdio",
command: "npx",
args: ["-y", "@example/mcp-server"],
env: { API_KEY: "secret" },
};
// Make JSON for Cursor
const result = transformConfig({
server: httpServer,
client: "cursor",
});
console.log(result.config);
// {
// "mcpServers": {
// "playbooks": {
// "url": "https://playbooks.com/api/mcp",
// "headers": {
// "Authorization": "Bearer YOUR_API_KEY"
// }
// }
// }
// }
// Make a CLI command for Claude Code
const cliResult = transformConfig({
server: stdioServer,
client: "claude-code",
});
console.log(cliResult.config);
// => claude mcp add my-server -- npx -y @example/mcp-server
Running tests
bun install
bun test
Supported clients
JSON
- Claude Desktop
- Cursor
- Windsurf
- VS Code / Copilot
- Cline / Kilo Code / Roo Code
- Zed
- JetBrains IDEs
- Amazon Q
- LM Studio
- Gemini CLI
- Augment Code
- OpenCode
- Visual Studio
- Warp
- Perplexity Desktop
- Kiro, Trae, BoltAI, Crush
- And more
CLI
- Claude Code
- Amp
- Factory (Droid)
- Rovo Dev
- OpenAI Codex CLI
API
transformConfig(options)
Transform a server config for a specific client.
type TransformOptions = {
server: McpServerConfig;
client: string; // client slug
};
type TransformResult = {
config: string; // The transformed config string
format: ConfigFormat; // "json" | "cli" | "toml"
client: McpClient; // Client metadata
};
getClients()
Get all supported clients.
getClient(slug)
Get a specific client by slug.
getClientsByTransport(transport)
Get clients that support remote (HTTP) or local (stdio) servers.
Types
type McpServerConfig =
| {
name: string;
type: "http";
url: string;
headers?: Record;
}
| {
name: string;
type: "stdio";
command: string;
args?: string[];
env?: Record;
};
type McpClient = {
slug: string;
name: string;
format: "json" | "cli" | "toml";
supportsRemote: boolean;
supportsLocal: boolean;
docsUrl: string | null;
};
File structure
src/
├── index.ts # Main exports
├── types.ts # TypeScript types
├── clients.ts # Client list
설치
This server does not publish a one-line install command.
Open the repository installation guide MCP 초보자라면? mcpskill.org 가이드부터 시작하세요 →설정
import { transformConfig, getClients } from "./src/index.js";
// List all supported clients
const clients = getClients();
// => [{ slug: "claude-desktop", name: "Claude Desktop", format: "json", ... }, ...]
const httpServer = {
name: "playbooks",
type: "http",
url: "https://playbooks.com/api/mcp",
headers: { Authorization: "Bearer YOUR_API_KEY" },
};
const stdioServer = {
name: "my-server",
type: "stdio",
command: "npx",
args: ["-y", "@example/mcp-server"],
env: { API_KEY: "secret" },
};
// Make JSON for Cursor
const result = transformConfig({
server: httpServer,
client: "cursor",
});
console.log(result.config);
// {
// "mcpServers": {
// "playbooks": {
// "url": "https://playbooks.com/api/mcp",
// "headers": {
// "Authorization": "Bearer YOUR_API_KEY"
// }
// }
// }
// }
// Make a CLI command for Claude Code
const cliResult = transformConfig({
server: stdioServer,
client: "claude-code",
});
console.log(cliResult.config);
// => claude mcp add my-server -- npx -y @example/mcp-server