3P by sunrabbit 20시간전 | ★ favorite | 댓글과 토론

mcp 설정은 장황하고 지루하며 귀찮습니다.

그래서 여러 MCP를 묶어서 배포할 수 있도록 번들러를 만들어보았습니다.

즉, awesome-mcp-server-for-fe 같은 mcp 서버를 손쉽게 다른 mcp서버를 묶어서 만들 수 있다는거죠

import type { Server } from "@modelcontextprotocol/sdk/server/index.js";  
  
import { createServer } from "@wrtnlabs/calculator-mcp";  
import { bundler, RequiredEnv } from "@wrtnlabs/mcp-bundler";  
  
export const server: Server = bundler({  
  name: "The cool Server",  
  version: "0.0.1",  
  mcpServers: {  
    figma: {  
      command: "bun",  
      args: [  
        "--watch",  
        "/path/to/figma-mcp/src/index.ts",  
      ],  
      env: {  
        FIGMA_PERSONAL_ACCESS_TOKEN: RequiredEnv,  
        PORT: RequiredEnv,  
      },  
    },  
    calculator: createServer({  
      name: "calculator",  
      version: "1.0.0"  
    }),  
    notionApi: {  
      command: "npx",  
      args: ["-y", "@notionhq/notion-mcp-server"],  
      env: {  
        OPENAPI_MCP_HEADERS: RequiredEnv,  
      },  
    },  
  },  
})();  

이렇게 만들어진 mcp서버를 다시 npm에 배포하면 끝입니다.

mcp서버는 총 세가지 모드가 존재합니다.
InMemory, SSE, Stdio

위 세 모드 모두 지원하니 많은 관심 부탁드립니다.
서버의 토대는 마이크로소프트의 playwright mcp 서버를 기반으로 하였고

툴 콜링만 지원중입니다.
사실 현재 MCP판에서 프롬프트나 리소스의 가치를 잘 모르겠기도 하고요.

언제나 개선요청, PR 환영합니다!