# @fastly/mcp 中文文档

规范地址：https://npmcn.com/package/%40fastly/mcp/

版本：2\.4\.1
npm 元数据更新时间：2026-10-11T11:43:59.458Z
中文译文更新时间：2026-11-14T11:32:00.311Z
软件包许可：MIT

本文由上游 README 翻译，可能存在偏差，请结合原文核对 API、命令与配置。版权与许可归原作者所有。

原始 npm 页面：https://www.npmjs.com/package/%40fastly/mcp
原文对照：https://npmcn.com/package/%40fastly/mcp/?lang=original
项目主页：https://github.com/fastly/mcp#readme
源码仓库：https://github.com/fastly/mcp

## 关键信息（来自 npm 元数据）

- 包体积（解压后）：2.2 MB，1122 个文件
- 模块格式：ES Module
- TypeScript 类型：未声明
- Node.js 要求：\>=24\.12\.0
- 运行依赖：5 个
- 首次发布：2026-05-06T15:07:32.037Z
- 最新版本发布：2026-10-11T11:43:59.144Z
- 近 30 天下载量：2419（2026-10-15 至 2026-11-13，npm 官方下载统计）
- 已发布版本数：11（近 12 个月 11 个）

## 中文简介

让 AI 代理完全访问快速 API 的 MCP 服务器

## 安装

```sh
npm install @fastly/mcp
```

也可以使用：`pnpm add @fastly/mcp`、`yarn add @fastly/mcp`、`bun add @fastly/mcp`

## README

# 快速 MCP 服务器

快取MCP服务器让MCP客户端与快取API合作.

连接到一个助手,如克洛德桌面,克洛德代码,双子座CLI,Opencode,Quen代码,Cline,或Swival,并给它一个快活的API令牌. 然后,助理可以:

-   查询服务并检查域和 TLS 设置 .
-   检查交通和使用情况.
-   管理词典和ACLs.
-   清除内容,并在您要求时修改配置 .

该项目正在积极开发,并有第一级快速开源支持. 支持政策在Fastly的描述 [开源文档](https://www.fastly.com/documentation/developers/community/open-source/#understanding-topics-and-support-levels)。 。 。 .

欢迎就 [快速开发工具社区论坛](https://community.fastly.com/c/developer-tools/25)。 。 。 .

## 目录

-   [如何运作](https://npmcn.com/package/%40fastly/mcp/#readme-how-it-works)
-   [所需资源](https://npmcn.com/package/%40fastly/mcp/#readme-requirements)
-   [安装](https://npmcn.com/package/%40fastly/mcp/#readme-installation)
-   [运行于 HTTP](https://npmcn.com/package/%40fastly/mcp/#readme-running-over-http)
-   [为多个用户运行远程服务](https://npmcn.com/package/%40fastly/mcp/#readme-running-a-remote-service-for-several-users)
-   [利用服务器](https://npmcn.com/package/%40fastly/mcp/#readme-using-the-server-well)
-   [秘密加密](https://npmcn.com/package/%40fastly/mcp/#readme-secret-encryption)
-   [解决问题](https://npmcn.com/package/%40fastly/mcp/#readme-troubleshooting)
-   [地方发展](https://npmcn.com/package/%40fastly/mcp/#readme-local-development)
-   [警卫](https://npmcn.com/package/%40fastly/mcp/#readme-security)
-   [许可证](https://npmcn.com/package/%40fastly/mcp/#readme-license)

## 如何运作

大多数MCP服务器都为每次操作暴露出一个工具. 因为"快活"的API很大,这个服务器使用一组更小的工具,一个助手可以一起使用.

1.  开始 `search` 以关键词、方法名称、 API 类或 HTTP 路径查找 API 方法.
    
2.  然后使用 `inspect` 获取方法的文档,包括其参数、返回类型和示例.
    
3.  一旦你得到细节,使用 `execute` 运行 JavaScript 短片断 `Fastly` 客户端已经用您的 API 令牌设置了 .
    

这样可以保持工具列表小而覆盖捆绑的快速客户端文档中记录的每一种方法.

## 所需资源

### 运行时间

安装任一 [阿宝](https://bun.sh/) 或者24.12.0节点或更新;您不需要同时运行服务器. 建议设立节点.js [远程模式](https://npmcn.com/package/%40fastly/mcp/REMOTE-HTTP.md)。 。 。 .

实例 `bunx`,可以下载和运行软件包,而无需全局安装. 与节点.js,使用 `npx` 换句话说.

使用完整软件包和命令名称来避免捡取无关的 `mcp` 命令上 `PATH`数字 :

-   **与 `bunx`数字 :** `bunx -p @fastly/mcp fastly-mcp`
-   **与 `npx`数字 :** `npx -p @fastly/mcp fastly-mcp`
-   **明确使用 Bun :** `bunx --bun -p @fastly/mcp fastly-mcp`

这个 `--bun` 选项使用 Bun 运行软件包,而不是跟踪它的节点.js shebang .

### 快速 API 令牌

你也需要一个 [快速 API 令牌](https://docs.fastly.com/en/guides/using-api-tokens)。 。 。 . 对于日常使用,创建最窄的符号,符合你期望助理完成的工作:

-   以只读符号开始,用于调查和报告.
-   只当您真的想要助手更改时, 才会使用带有写入权限的符号 .

在您的 MCP 客户端配置或 shell 环境中保留此符号为 `FASTLY_API_TOKEN`。 。 。 .

**不要将生产符号粘贴成提示, 或把它们装入存储器 .**

## 安装

选择客户端 :

[代码](https://npmcn.com/package/%40fastly/mcp/#readme-codex) • 妇女 [克劳德代码](https://npmcn.com/package/%40fastly/mcp/#readme-claude-code) • 妇女 [克劳德桌面](https://npmcn.com/package/%40fastly/mcp/#readme-claude-desktop) • 妇女 [双子座CLI](https://npmcn.com/package/%40fastly/mcp/#readme-gemini-cli) • 妇女 [打开代码](https://npmcn.com/package/%40fastly/mcp/#readme-opencode) • 妇女 [Quen 代码](https://npmcn.com/package/%40fastly/mcp/#readme-qwen-code) • 妇女 [线](https://npmcn.com/package/%40fastly/mcp/#readme-cline) • 妇女 [挥发](https://npmcn.com/package/%40fastly/mcp/#readme-swival)

大多数MCP客户端接受一个JSON块来描述如何启动服务器. 例如,此配置将服务器运行于 `bunx` 通过环境传递 API 令牌 :

```json
{
  "mcpServers": {
    "fastly": {
      "command": "bunx",
      "args": ["-p", "@fastly/mcp", "fastly-mcp"],
      "env": {
        "FASTLY_API_TOKEN": "your-token-here"
      }
    }
  }
}
```

如果您已经导出 `FASTLY_API_TOKEN` 在启动您的 MCP 客户端的外壳中,一般可以省略 `env` block(虽然有些特工可能还需要它).

在客户端配置中保留指使物对于桌面应用来说往往比较简单,而外壳环境变量对于终端工具来说往往比较干净.

### 代码

任一运行时间为本地服务器工作 . 捆绑的插件通过 `bunx`数字 :

-   **节点.js-只设置 :** 使用情况 `npx` 作为具有相同参数的MCP发射命令.
-   **仅装箱设置 :** 添加 `--bun` 在此之前 `-p` 在发射参数.

确保您所选择的发射装置在 Codex 上可用 `PATH`。 。 。 .

添加寄存器为插件市场, 然后安装插件 :

```sh
codex plugin marketplace add https://github.com/fastly/mcp
codex plugin add fastly-mcp@fastly-local
```

这个 `add` 命令安装并启用插件.

设定 `FASTLY_API_TOKEN` 在启动 Codex 的环境中,然后重新启动 Codex ,使本地服务器接收它.

该插件运行于 stdio, 并启用了秘密加密; 它不需要 OAuth 或主机 MCP 端点 .

检查插件是否安装并启用 :

```sh
codex plugin list --marketplace fastly-local
```

### 克劳德代码

运行服务器通过 `bunx`数字 :

```sh
claude mcp add fastly -- bunx -p @fastly/mcp fastly-mcp
```

那一定要保证 `FASTLY_API_TOKEN` 可以在 Claude 代码启动的环境下使用,或者通过您正常的 Claude 代码 MCP 设置配置符号.

### 克劳德桌面

将上面的通用JSON块添加到克洛德桌面的配置文件.

-   在 macOS 上,文件通常是 `~/Library/Application Support/Claude/claude_desktop_config.json`。 。 。 .
-   在视窗上通常是 `%APPDATA%\Claude\claude_desktop_config.json`。 。 。 .
-   通常在Linux上 `~/.config/Claude/claude_desktop_config.json`。 。 。 .

更改文件后重新启动 Claude 桌面 .

### 双子座CLI

将通用 JSON 块添加到 `~/.gemini/settings.json`。 。 。 .

如果双子座 CLI 是从已经导出外壳开始的 `FASTLY_API_TOKEN`你可以把信物从JSON上留下.

### 打开代码

Opencode使用的形状略有不同.

把这个放进去 `opencode.json` 在您的项目中,或在 `~/.config/opencode/opencode.json` 全球服务器:

```json
{
  "mcp": {
    "fastly": {
      "type": "local",
      "command": ["bunx", "-p", "@fastly/mcp", "fastly-mcp"],
      "environment": {
        "FASTLY_API_TOKEN": "your-token-here"
      }
    }
  }
}
```

### Quen 代码

将通用 JSON 块添加到 `~/.qwen/settings.json`,或改为 `.qwen/settings.json` 在一个特定的项目.

### 线

打开 Cline MCP 设置,选择全局或项目 MCP 配置,并粘贴通用 JSON 块.

### 挥发

将此添加到 `swival.toml` 在您的项目中 :

```toml
[mcp_servers.fastly]
command = "bunx"
args = ["-p", "@fastly/mcp", "fastly-mcp"]
env = { FASTLY_API_TOKEN = "your-token-here" }
```

若为 `FASTLY_API_TOKEN` 已经设定在 Swival 运行的环境中 `env` 线条是可选的.

Swival也可以从 `.swival/mcp.json`。 。 。 .

## 运行于 HTTP

默认情况下,服务器会比stdio说出MCP,这是每个桌面和CLI客户端所期望的.

要在信任的客户端之间共享一个快速 API 令牌, 请以 HTTP 模式启动服务器 :

```sh
bunx -p @fastly/mcp fastly-mcp --transport http
```

听着 `http://127.0.0.1:8231/mcp`。默认情况下, 仅循环返回, 没有认证 .

然后用服务器的 URL 配置您的客户端 :

```json
{
  "mcpServers": {
    "fastly": {
      "type": "streamable-http",
      "url": "http://127.0.0.1:8231/mcp"
    }
  }
}
```

准确的形状因客户端而异;检查客户端的文档中的可流-http条目格式.

请求之间没有保留任何内容,因此服务器坐在负载平衡器后,没有任何粘接会话配置.

### `Authorization: Bearer` 循环

你可以设置 `FASTLY_MCP_HTTP_AUTH_TOKEN` 即使是在回回绑上.

这样做不会对安全造成任何伤害,它使得配置在稍后可以移植到一个非落地部署上.

### 运行 `--help` 用于完整旗帜列表

上面的每个旗帜都出现在 `bunx -p @fastly/mcp fastly-mcp --help`。 。 。 .

## 为多个用户运行远程服务

使用 `--remote-http` 当每个呼叫者提供自己的快速API令牌时.

这个 [远程 HTTP 部署指南](https://npmcn.com/package/%40fastly/mcp/REMOTE-HTTP.md) 包括资质,客户端配置,HTTPS代理,多克克,系统化,大小化,日志化,以及部署测试.

## 利用服务器

快速API令牌可以曝光出真实出品配置,可写出能出品的令牌可以改变.

服务器并不猜测你的用意,所以最安全的工作流程是明确助理是否可以改变任何东西.

### 只读工作

对于只读的工作,直接说.

例如,请助手列出服务,为服务找到活动版本,总结后端,检查TLS状态,检查日志端点,或者报告最近的流量而不做修改.

### 作出改变

1.  从命名服务,域名,版本,字典,ACL开始,或者从后端开始,助手应该工作.
    
2.  要求它显示在做出改变前它计划拨打的方法.
    

如果更改会影响服务配置,通常最好先克隆一个服务版本,编辑克隆,展示diff或摘要,并在你批准后才能激活.

### 示例提示

好的第一个提示是这样的:

> 列出我的快速服务,并显示每个版本的有效版本. 不做修改.

> 查找服务 [www.example.com (中文(简体) )](http://www.example.com/) 并总结其域名、后端和健康检查.

> 检查一个 URL 的 API 方法, 然后显示您在运行它之前会打的准确的电话 .

> 克隆服务ABC123的活性版本,加入后端名"起源-api",激活前停止.

如果一个答案看起来过于宽泛,请助手在返回代码前将结果缩小.

目标明确的呼吁更容易审查,更不可能泄露无关信息.

### 下一代世界金融联合会的调查

服务器增加了只读取的 NGWAF 方法,涵盖:

-   账户和工作空间规则、信号和列表.
-   工作空间设置和顶级攻击.
-   事件列表和细节.
-   存储请求搜索和细节 .
-   工作空间时间序列.

### 日志浏览器和透视

服务器添加了仅读取的Log Explorer & Insights方法,涵盖:

-   请求日志搜索,按状态,路径,响应时间,POP,设备,或bot收缩.
-   已准备好的排名,如最繁忙的URL或最慢的.
-   你自己的组合度量衡,例如每个持久性有机污染物的p95响应时间.

服务需要启用日志探索和透视产品 .

快速地取出这个数据并保存了七天. 因此这些方法回答了"慢请求是什么样子"而不是"有多少请求存在". 当你需要精确的计数时 需要统计数据.

### 可观察时间序列

服务器增加了一种只读的时间序列方法,超过两种数据:

-   请求提供一次服务的记录,第二次、分钟、小时或一天.
-   按日或月列出整个账户的可持续性数字,如带宽和CPU时间.

请求日志序列需要启用日志探索和透视产品 . 它们来自相同的抽样数据,因此它们是估计数而不是总数.

### 重大成果

一个结果只要符合一个答复,就完全返回,无论它持有多少记录:几百个用户的名单完整地返回.

对一项反应来说,结果太大,现在仍未消失. 服务器将其全部写入一个 JSON 文件, 回复中包含路径 `resultFile` 加上简短的预览 `result`。 。 。 .

请助理在您想要每张记录时读取该文件, 而不是再次运行查询 .

#### 储存和限制

-   **地点 :** 文件写入 `fastly-mcp-results` 在系统临时目录下,每个文件一个结果,只能由运行服务器的账户读取.
    
-   **大小 :** 单个文件最多持有4 MB;结果大于答复中描述的结果,请助手少返回. 同样的天花板适用于一个快速API呼叫可能交给代码的:一个更大的响应失败了那个呼叫,错误地要求拨打或过滤,而不是带着片段无声地缺失而到达.
    
-   **保留:** 最新保存的20个文件, 每一个文件在六小时后都会被删除, 无论服务器是否一直忙碌.
    
-   **配置 :** 使用情况 `--result-dir <path>` 把它们放在别的地方,或者 `--result-dir off` 以关闭特性,并具有描述而非存储的超大小结果.
    

当启用秘密加密时,在存储或切入到预览之前,整个结果中的秘密会被加密. 读取文件无法显示响应会隐藏的值,一个碰巧在符号中间停止的预览也无法显示.

**远程服务器从未写入结果文件**因为它的召唤者无法读取它们.

## 秘密加密

快速的API响应可以包含证书,密钥,或其他敏感值. 在本地模式下,服务器将API输出返回到MCP客户端,因为它默认从快回.

远程模式总是用调用符的密钥加密识别出的秘密,如 [远程 HTTP 指南](https://npmcn.com/package/%40fastly/mcp/REMOTE-HTTP.md#connect-your-client)。 。 。 .

### 加密工作方式

如果您想要在工具输出到达模型前增加一层保护,则启用秘密加密.

当加密启用时,每个被识别的符号被一个看起来像 `{ENCRYPTED:...}` 在到达助手之前. 同样的同物总是得到相同的加密值,因此助手可以在后来调用时参考.

当助理发送加密值返回时,服务器会在工具运行前解密. 如果值被更改、缩短或用不同的密钥制作,服务器返回错误而不是猜测.

如果结果不能安全加密,则整个结果被扣. 当它包含一个超过512个字符的符号,或者已经看起来像一个加密值的文本时,就会发生这种情况.

### 启用加密

在使用 MCP 配置中启用加密 `bunx`,添加 `--encrypt-secrets` 二进制名称后 :

```json
{
  "mcpServers": {
    "fastly": {
      "command": "bunx",
      "args": ["-p", "@fastly/mcp", "fastly-mcp", "--encrypt-secrets"],
      "env": {
        "FASTLY_API_TOKEN": "your-token-here"
      }
    }
  }
}
```

您也可以以环境变量启用它 :

```json
{
  "mcpServers": {
    "fastly": {
      "command": "bunx",
      "args": ["-p", "@fastly/mcp", "fastly-mcp"],
      "env": {
        "FASTLY_API_TOKEN": "your-token-here",
        "FASTLY_MCP_ENCRYPT_SECRETS": "true"
      }
    }
  }
}
```

### 关键和限制

对于本地加密,每次服务器启动时都会生成一个新的密钥,因此加密值在重启后停止工作.

设置 `FASTLY_MCP_ENCRYPT_KEY` 至完全32个十六字节字符,这是一个16字节的密钥,在重启时保持相同的密钥,所以更古老的加密值继续工作.

您也可以设置 `FASTLY_MCP_ENCRYPT_TWEAK` 如果您想要一个单独的域分离的tweak值. 加密的值只能用它们制作的调值来工作 .

秘密加密是一个安全特征,不是完整的数据分类系统. 它只加密符合已知符号模式的值 .

您仍应使用最小特权的快取符并避免要求助手取回机密,除非任务需要.

## 解决问题

### API 调用失败

对于本地服务器, 如果快速 API 呼叫失败, 请检查 `FASTLY_API_TOKEN` 设置在 MCP 服务器所看到的环境中.

搜索和检查仍然没有符号,因为他们使用捆绑的文档,但真正的API呼叫需要一个.

一个失败的呼叫报告API所说的,所以答案通常在工具输出本身中:

```json
{
  "error": "HTTP 401 Unauthorized",
  "status": 401,
  "body": "{\"msg\":\"Provided credentials are missing or invalid\"}",
  "hint": "Fastly rejected the API token. Check that FASTLY_API_TOKEN is current and has not been revoked."
}
```

401或403的提示区分了需要不同修正的三种情况:

-   服务器未收到任何令牌 .
-   迅速拒绝了它得到的标志.
-   该标志是有效的,但不允许进行该操作.

这些字段也存在于其中 `execute`,所以片段可以抓住失败并读取 `e.status` 或者说 `e.body` 自己来.

### 找不到方法

如果助理找不到正确的方法,请它使用更广泛的搜索术语,例如 `service`, (中文(简体) ), `domain`, (中文(简体) ), `backend`, (中文(简体) ), `purge`, (中文(简体) ), `tls`, (中文(简体) ), `logging`, (中文(简体) ), `dictionary`, (中文(简体) ), `acl`, (中文(简体) ), `vcl`, (中文(简体) ), `stats`,或者从"快活"的API Docs得到的HTTP路径碎片.

### 意外的空结果

如果结果出乎意料地为空,请助手先返回原始的API响应.

客户端方法快速直接返回值, 不在其中 `.result` 包装.

### 预览而非完整数据

如果回复包含预览而不是数据,则查找 `resultFile` 同一回复中的路径: 完整的结果被写在那里,因为它不符合一个回复.

请助手读取该文件,或者过滤,页面,或者在它运行的JavaScript代码中选择字段.

若为 `resultFile` 缺少,结果文件要么被禁用(`--result-dir off`)或服务器无法写入,并且 `hint` 字段表示哪个.

### 执行时间

从每起 `execute` 呼叫有30秒的极限, 将工作分成较小的呼叫, 如果它的时间超过.

## 地方发展

### 运行服务器

服务器入口是 `src/index.js`。 。 。 . Bun是主要开发运行时间:

```sh
bun run src/index.js
```

### 运行检查

主要检查有:

```sh
bun test
bun run lint
```

安装 Bun 和 Node 来进行测试 .

已知的 Bun 1. 3.11 bug 被标记为预期的失败,所以未来版本中的修补会被注意.

### 更新 API 文档

API 文档 `docs/` 来自快取JavaScript客户端. 服务器在启动时使用它来构建搜索索引.

`package.json` 将客户端插入到一个精确的版本中, 因此文件总是描述运行的代码 .

以下列方式再生:

```sh
bun run update-docs
```

没有争论,脚本会取回 `release/v<version>` 标记匹配被绑定的版本.

通过分支或标签获取其它东西, 例如在提升客户端时 . 升级时更改了 : `package.json`, (中文(简体) ), `package-lock.json` 财务报告和审定财务报表 `bun.lock` 一起来.

## 警卫

请通过快讯报告安全问题 [安全问题报告程序](https://www.fastly.com/security/report-security-issue),如 [警卫](https://npmcn.com/package/%40fastly/mcp/SECURITY.md)。 。 。 .

## 许可证

麻省理工学院. 见 [自由主义](https://npmcn.com/package/%40fastly/mcp/LICENSE) 详细情况.

## 常见问题

### @fastly/mcp 是什么？

让 AI 代理完全访问快速 API 的 MCP 服务器

### 如何安装 @fastly/mcp？

在项目目录运行 npm install @fastly/mcp，或使用 pnpm add / yarn add / bun add。它还提供命令行工具 fastly-mcp，可以用 npx fastly-mcp 直接运行。

### @fastly/mcp 支持 TypeScript 吗？

该包的 package\.json 没有声明类型入口。需要类型提示时，可以在 npm 上查找社区维护的 @types/fastly\_\_mcp 是否存在。

### @fastly/mcp 支持 ESM 还是 CommonJS？

以 ES Module 形式发布，推荐使用 import 引入。在 CommonJS 项目中，Node\.js 20\.19\+ / 22\.12\+ 可以直接 require\(\) 不含顶层 await 的 ES Module，更早的版本需要改用动态 import\(\)。

### @fastly/mcp 需要什么版本的 Node\.js？

package\.json 的 engines 字段要求 Node\.js \>=24\.12\.0。版本不符时 npm 默认只给出警告，开启 engine-strict 后会拒绝安装。

### @fastly/mcp 可以商用吗？

@fastly/mcp 使用 MIT 许可。宽松许可：允许商业使用、修改和再分发，通常只需在分发时保留原版权与许可声明。以上为概括，不构成法律意见，请以许可原文为准。

### @fastly/mcp 的下载量有多少？

根据 npm 官方下载统计，@fastly/mcp 在 2026/10/15 – 2026/11/13 这 30 天内被下载 2,419 次，日均约 81 次。下载量会把 CI 构建、镜像同步和作为其他包依赖的安装一并计入，适合横向比较热度，不能直接等同于使用人数。

### @fastly/mcp 还在维护吗？

最新版本 2\.4\.1 发布于 2026/10/11（1 个月前）；至今共发布 11 个版本，其中过去 12 个月发布了 11 个；首次发布于 2026/05/06。发布频率只是参考信号：功能稳定的工具可能很少需要更新，建议结合源码仓库的 issue 和提交记录判断。

