无认证远程MCP服务器

在Cloudflare Workers上部署的无认证远程MCP(Model Context Protocol)服务器,支持自定义工具和与Cloudflare AI Playground及Claude Desktop的集成。

  • by atsuki-sakai
  • TypeScript
  • 本地部署
  • 更新于
在 GitHub 查看 atsuki-sakai/remote-mcp-server-authless

使用说明

Cloudflare上面运行的未认证远程MCP服务器

这个样品Cloudflare Workers不需要认证的远程MCP(Model Context Protocol)显示如何部署服务器。

入门

因此MCP服务器如下URL将部署到:remote-mcp-server-authless.<your-account>.workers.dev/sse

或者,使用以下命令行在本地计算机上远程MCP也可以创建服务器:

npm create cloudflare@latest -- my-mcp-server --template=cloudflare/ai/demos/remote-mcp-authless

MCP定制服务器

独特的工具打开MCP单击功能区上src/index.ts的,之init()在方法中this.server.tool(...)中所述修改相应参数的值。

可用工具

这个MCP服务器包含以下工具:

  1. 添加 -两个数字相加

    • 参数: a: number, b: number
    • 返回值:相加结果
  2. 计算 -基本数学运算

    • 参数: operation: "add"|"subtract"|"multiply"|"divide", a: number, b: number
    • 返回值:运算结果
  3. langchain_request -FastAPI/Langchain統合

    • 参数:
      • endpoint: string (URL形式)
      • method: "GET"|"POST" (默认值:“开机自检”)
      • payload: any (可选)
      • headers: object (可选)
    • 返回值:外部API响应
  4. generate_blog -博客生成专用工具

    • 参数:
      • fastapi_base_url: string (FastAPI基本URL、环境变量FASTAPI_BASE_URL但是可以设定)
      • keyword: string (博客关键字,必需)
      • language: string (语言,默认值:“ja”)
      • target_audience: string (目标读者层,可选)
      • writing_style: string (文体、选项)
      • section_count: number (节数,1-10,默认值:4)
      • provider: string (LLM供应商,默认值:“openai”)
      • model: string (模型名称、选项)
      • clarification_answers: string[] (回答确认问题,默认值:[])
      • api_key: string (认证密钥、环境变量FASTAPI_API_KEY但是可以设定)
    • 返回值:整形博客文章或确认问题

Cloudflare AI游乐场に接続

Cloudflare AI Playground从远程MCP作为客户端MCP可以连接到服务器:

  1. https://playground.ai.cloudflare.com/ にアクセス
  2. 已部署MCP服务器URL (remote-mcp-server-authless.<your-account>.workers.dev/sse),模板名称将采用不同的格式
  3. Playground直接的MCP工具可用!

Claude Desktop打开MCP连接到服务器

mcp远程代理使用本地MCP从客户端远程MCP也可以连接到服务器。

Claude Desktop从…开始MCP单击功能区上Anthropicの快速启动在工作空间的边缘Claude Desktop在中Settings > Developer > Edit Config 中所述修改相应参数的值。

请更新以下设置:

{
  "mcpServers": {
    "calculator": {
      "command": "npx",
      "args": [
        "mcp-remote",
        "http://localhost:8787/sse"  // または remote-mcp-server-authless.your-account.workers.dev/sse
      ]
    }
  }
}

FastAPI/Langchain统合の使用例

1. generate_blog工具(推荐)

{
  "fastapi_base_url": "https://langchain-fastapi-1.onrender.com",
  "keyword": "機械学習",
  "language": "ja",
  "target_audience": "初心者向け",
  "writing_style": "わかりやすい",
  "section_count": 4,
  "provider": "openai",
  "model": "gpt-4"
}

2. langchain_request工具(通用)

{
  "endpoint": "https://langchain-fastapi-1.onrender.com/api/v1/llm/blog/generate",
  "method": "POST",
  "payload": {
    "keyword": "機械学習",
    "language": "ja",
    "target_audience": "初心者向け",
    "writing_style": "わかりやすい",
    "section_count": 4,
    "provider": "openai",
    "model": "gpt-4",
    "clarification_answers": []
  }
}

设置环境变量

Cloudflare Workers的环境变量:

  • FASTAPI_BASE_URL - FastAPI服务器基础URL
  • FASTAPI_API_KEY - FastAPI验证API按键

Cloudflare Dashboard 中的设置方法

  1. Cloudflare仪表板→ 工人和页面
  2. 符合Worker列表框中,此格式对应于条目“无”
  3. 设置→ 变量
  4. Environment Variables 在节中添加变量

wrangler.toml中的设置示例

[vars]
FASTAPI_BASE_URL = "https://langchain-fastapi-1.onrender.com"

[env.production.vars]
FASTAPI_API_KEY = "your-production-api-key"

在动态输入提示中单击generate_blog工具可以简单地使用:

{
  "keyword": "機械学習",
  "target_audience": "初心者向け"
}

开发和部署

# 依存関係のインストール
npm install

# ローカル開発サーバーの起動
npm run dev

# プロダクションにデプロイ
npm run deploy

端点

  • /sse - Server-Sent Events(流式通信)
  • /mcp -标准HTTP请求/响应通信