
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