You need to enable JavaScript to run this app.
文档中心
全站加速

全站加速

复制全文
下载 pdf
AI 场景加速
加速基于函数服务的 MCP Server 后端调用
复制全文
下载 pdf
加速基于函数服务的 MCP Server 后端调用

注意

为更好地优化 AI 场景加速体验,全站加速于2026年03月26日对不同 AI 场景的服务和计费方式进行统一。

本文介绍如何为运行在火山引擎函数服务上的 MCP Server 后端函数配置全站加速,并验证加速域名调用效果。

方案概述

随着 MCP Server 应用场景不断涌现,越来越多的 MCP Server 开始使用 Serverless 服务作为工具调用的后端。其轻量化和弹性扩缩特性降低了资源管理复杂度,但当 MCP Server 与后端函数跨区域通信时,网络时延会增加大模型等待响应的时间以及 AI 工作流的整体耗时。针对这一场景,火山引擎全站加速(DCDN)提供面向函数服务源站的加速能力,帮助您为 MCP Server 后端调用快速接入加速域名。

说明

本方案是大模型 & AI 应用加速访问中以函数服务为源站、面向 MCP Server 后端场景的具体落地示例。

该解决方案具有以下优势:

  • 您无需专门购买和配置域名。系统提供默认根域名,可直接生成加速域名。
  • 您无需单独为 HTTPS 服务配置 SSL 证书。系统会自动配置与加速域名兼容的证书。
  • 支持 SSE(Server-Sent Events)和 WebSocket 协议,可满足流式响应类 API 的传输需求。

Demo 场景介绍

本文后续操作将围绕以下场景展开:

  • 您开发了一款 MCP Server,用来查询公司三款产品的价格。
  • MCP Server 的后端服务运行在火山引擎函数服务上。
  • MCP Server 通过 DCDN 的加速域名调用该函数。

前置条件

  • 您已开通火山引擎函数服务。
  • 您已开通火山引擎全站加速服务。

操作步骤

步骤一:创建后端服务函数

  1. 登录火山引擎函数服务控制台,在左侧导航栏中点击 函数 > 函数管理,然后点击 创建函数

  2. 请选择函数创建方式 弹窗中,选择 事件函数,然后点击 创建事件函数

    alt

  3. 名称 字段中,为函数指定一个名称,例如 test-get-price。其余参数保留默认配置。

  4. 勾选复选框同意相关服务协议,然后点击 确定
    函数成功创建后,系统会自动跳转到函数代码编辑窗口。

  5. index.py 文件中的模板代码替换为以下演示代码,然后点击 保存发布

import json

def handler(event, context):
    """
    当前函数演示的是简单的一个价格查询服务。
    它将 query 参数的值与三个产品名称做比对,例如 Super-Widget。
    """

    event = event or {}
    query = ''

    data = event.get('data')
    if isinstance(data, dict):
        query = data.get('query', '')

    if not query:
        body = event.get('body')
        if isinstance(body, str):
            try:
                body_data = json.loads(body)
                if isinstance(body_data, dict):
                    query = body_data.get('query', '')
            except json.JSONDecodeError:
                pass

    products = [
        {
            "product": "Super-Widget",
            "price": 49.99
        },
        {
            "product": "Mega-Widget",
            "price": 79.99
        },
        {
            "product": "Giga-Widget",
            "price": 129.99
        }
    ]

    relevant_products = [p for p in products if query.lower() in p['product'].lower()]

    return {
        'statusCode': 200,
        'headers': {
            'Content-Type': 'application/json'
        },
        'body': json.dumps({
            'relevant_products': relevant_products
        })
    }
  1. 保留默认的发布选项,点击 确定
  2. 发布成功后,在右上角点击 测试,将 JSON 文本框内容替换为以下内容,然后点击 测试
{
  "data": {
    "query": "super"
  },
  "method": "POST",
  "path": "/",
  "headers": {}
}

测试成功后,会返回结果,显示名为 Super-Widget 的产品价格。

Image

步骤二:为函数源站添加加速域名

  1. 登录全站加速控制台,在左侧导航栏中点击 域名管理,然后点击 添加域名

  2. 添加域名 页面,从 AI 场景 下选择 大模型 & AI 应用加速,然后完成基础配置:
    alt

    • 设置 加速区域。可选项:中国大陆全球全球(除中国大陆)
    • 设置 加速域名 的自定义前缀。系统会将此前缀与随机字符串和默认根域名 speedifyvolcai.com 组合,生成最终的加速域名。例如:testgetprice
    • 选择 项目组,用于分组管理火山引擎资源。如无特殊需求,可选择 default(默认项目)
    • 源站地址 中选择 Serverless AI 应用
    • 区域 列表中选择函数所在区域,然后点击 添加 Serverless AI 实例
    • 函数实例 列中选择步骤一中创建的函数。

    alt

  3. 点击 下一步 进入 推荐配置 页面。
    系统会根据所选场景默认开启与该场景相关的推荐配置,例如 WebSocket 协议和 HTTPS 服务,且这些配置不支持取消选择。确认配置后,点击 提交

  4. 提交后,域名进入部署状态。等待域名状态从 部署中 变为 运行中 后,即可进行调用测试。

    alt

步骤三:验证通过加速域名调用函数

  1. 您可以使用 cURL 命令向加速域名发送 API 请求,测试加速域名是否可正常调用函数。运行以下命令:

    curl -X POST https://<加速域名> -H "Content-Type: application/json" -d "{\"query\": \"super\"}"
    

    其中,<加速域名> 为系统生成并已进入 运行中 状态的加速域名。

  2. 在本文演示的示例中,该 API 会返回与 super 匹配的商品价格。

    Image

步骤四:测试 MCP Server 效果

您可以在 AI 类开发环境中添加调用该函数的 MCP Server,然后在聊天窗口中测试效果。以下截图展示的是基于 MCP Server 示例代码的运行效果,供您参考。该 MCP Server 调用前述步骤中创建的函数查询商品价格。

Image

MCP Server 示例配置文件如下:

{
  "mcpServers": {
    "get-price-server": {
      "command": "npx",
      "args": [
        "-y",
        "--registry",
        "https://registry.npmjs.org",
        "mcp-demo-get-price@latest",
        "https://<加速域名>"
      ]
    }
  }
}
最近更新时间:2026.05.22 17:30:19
这个页面对您有帮助吗?
有用
有用
无用
无用