MCP服务器SSE接口包装器

一个Docker容器,用于将任何基于标准输入输出的MCP服务器包装成SSE接口,适用于Node.js和Python环境,支持自定义端口和路径,并可与Kubernetes集成。

  • by Macmee
  • Dockerfile
  • 本地部署
  • 2 星标
  • 更新于
在 GitHub 查看 macmee/mcp-stdio-to-sse-wrapper

使用说明

MCP STDIO到SSE包装器

一个Docker容器,用SSE接口封装任何模型上下文协议(MCP)服务器。

特性

  • 将任何基于stdio的MCP服务器转换为SSE接口
  • 适用于基于Node.js和Python的MCP服务器
  • 可定制的端口、SSE路径和消息路径
  • 已准备好与Kubernetes一起使用

Docker镜像

在Docker Hub上可用: macmee/mcp stdio到sse包装器

用法

Brave Search的基本用法

docker run --rm -it -p 8080:8080 \
  -e BRAVE_API_KEY="your-api-key" \
  macmee/mcp-stdio-to-sse-wrapper

与其他MCP服务器

# For Node.js-based MCP servers
docker run --rm -it -p 8080:8080 \
  -e MCP_SERVER_TO_WRAP="npx @modelcontextprotocol/server-some-other-mcp" \
  macmee/mcp-stdio-to-sse-wrapper

# For Python-based MCP servers
docker run --rm -it -p 8080:8080 \
  -e MCP_SERVER_TO_WRAP="uv run mcp-server-name" \
  macmee/mcp-stdio-to-sse-wrapper

环境变量

变量 默认值 描述
MCP_SERVER_TO_WRAP npx @modelcontextprotocol/server-brave-search 运行MCP服务器的命令
PORT 8080 要收听的端口
SSE_PATH /sse SSE连接路径
MESSAGE_PATH /message 消息处理路径
BASE_URL http://localhost:$PORT 服务器的基本URL

Kubernetes示例

apiVersion: apps/v1
kind: Deployment
metadata:
  name: mcp-server
  labels:
    app: mcp-server
spec:
  replicas: 1
  selector:
    matchLabels:
      app: mcp-server
  template:
    metadata:
      labels:
        app: mcp-server
    spec:
      containers:
      - name: mcp-server
        image: macmee/mcp-stdio-to-sse-wrapper:latest
        ports:
        - containerPort: 8080
        env:
        - name: MCP_SERVER_TO_WRAP
          value: "npx @modelcontextprotocol/server-brave-search"
        - name: BRAVE_API_KEY
          valueFrom:
            secretKeyRef:
              name: mcp-secrets
              key: brave-api-key
---
apiVersion: v1
kind: Service
metadata:
  name: mcp-server
spec:
  selector:
    app: mcp-server
  ports:
  - port: 80
    targetPort: 8080
  type: ClusterIP

许可证

麻省理工学院