mcpField
U
Uiuc Airfoils

Uiuc Airfoils

远程服务
pipeworx.io科研与教育01 周前更新

关于 Uiuc Airfoils

Uiuc Airfoils 提供可检索的 UIUC 翼型坐标数据,供空气动力学研究与设计使用。它按请求获取坐标,并计算最大厚度和弯度。

主要功能

  1. 01按翼型名称或系列检索
  2. 02按需获取坐标文件
  3. 03计算最大厚度和弯度
  4. 04可选返回翼面坐标

适用场景

  1. 01按系列或设计者查找翼型
  2. 02检查翼型坐标几何形状
  3. 03比较最大厚度和弯度

MCP 相关

该 MCP 服务提供 `uiuc_airfoil_search` 和 `uiuc_airfoil_geometry` 工具。可通过 stdio 本地运行,也可经 Pipeworx 网关连接。

配置

远程服务无需本地安装。选择你使用的客户端,复制配置或使用一键安装。

服务地址https://gateway.pipeworx.io/uiuc-airfoils/mcp
一键复制安装命令
Claude CodeTerminal
Cursor.cursor/mcp.json
VS Code.vscode/mcp.json
Claude Desktopclaude_desktop_config.json
Windsurf~/.codeium/windsurf/mcp_config.json

命令在终端中运行;JSON 粘贴到对应客户端的 MCP 配置后重启。需要授权的服务会在首次连接时提示登录。

工具

详细介绍

@pipeworx/uiuc-airfoils

约 1,600 种翼型(NACA、Eppler、Selig、Wortmann、Goettingen、Drela AG、Clark Y、Wright Brothers,以及许多以设计者命名的独立翼型)的形状坐标,可按名称或系列搜索,并根据原始坐标实时计算最大厚度和弯度。

Pipeworx 的一部分:Pipeworx 是一个 MCP 网关,可将 AI Agent 连接到 1851+ 个实时数据源。这是独立、非官方的集成,与上游提供方无关联,未获其认可,也并非由其发布。

工具

  • uiuc_airfoil_search(query?, family?, limit?) — 按名称、关键词或精确系列搜索(例如 "naca"、"eppler"、"goe"、"2412"、family: "Wortmann")。不设筛选条件时,返回目录中的项目总数和已知系列列表。始终先返回匹配总数;无匹配结果时,会说明尝试过的筛选条件。
  • uiuc_airfoil_geometry(name, include_coordinates?) — 实时获取一个 翼型的坐标文件,并返回其点数、坐标格式、最大厚度和最大弯度(均为相对于弦长的比例,并附上对应的弦向位置),以及计算方法。传入 include_coordinates: true,还会返回原始的上、下表面点数组。

身份验证

无需密钥。

数据来源

  • 伊利诺伊大学厄巴纳-香槟分校应用空气动力学组(UIUC)翼型坐标数据库——翼型形状坐标及其单行描述。此处不包含任何路由或文件名——请参阅 src/index.ts 和 scripts/bake-index.mjs 获取路由;根据 CLAUDE.md 第 9b 步,这些内容不会出现在已发布的文案中。

许可 — 构建前已核查,发现不明确之处会标明而非自行假定

在编写任何代码之前,我检查了数据库列表页、其上级页面和网站的 robots.txt(返回 404——其中也没有注明任何限制),以确认是否有明确的许可或再分发政策。均未找到。网站上唯一与版权相关的文字,是通用的全站页脚(“© 1994 - 2026 UIUC Applied Aerodynamics Group”),没有附带任何针对坐标数据本身的授权或禁止条款。

根据既定规则(按请求代理公开且无需密钥的上游数据不需要明确授权;构建数据集属于再分发,需要授权;条款未作说明时,继续构建并标明,而非暂停):

  • 实际坐标值不会被预先打包。uiuc_airfoil_geometry 每次调用都会实时获取相应翼型的 .dat 文件——即针对单个文件进行直接的逐请求代理。
  • uiuc_airfoil_search 会读取一个预先打包的小型表格,其中包含名称、单行描述和粗略的系列分类(src/uiuc-index-data.ts,约 1,587 行,由 scripts/bake-index.mjs 重新生成)——不包含坐标。这部分依据的是规则中“条款未作说明,继续构建并标明”的处理方式,而非明确授权。
  • **请下一位审核者注意:**如果 UIUC 之后发布了针对坐标数据的明确再分发条款,请重新核查这个名称/描述/系列索引是否也符合该条款。

坐标格式与厚度/弯度计算方法

UIUC 的 .dat 文件有两种布局,src/index.ts 中的解析器均可处理:

  • Selig 格式 — 一个连续的点环:从上表面的后缘开始,向前延伸至前缘,再沿下表面返回后缘。没有头部计数;解析器会在 x 最小点(前缘)处分割点环。
  • Lednicer 格式 — 一行头部信息,给出 (upperCount, lowerCount),随后是从前缘到后缘的上表面,空行之后是从前缘到后缘的下表面。

解析器会逐个文件检测格式(Lednicer 头部是在第一条数据行中包含两个看起来像小整数的值;其他情况均视为 Selig 格式)。将数据分为上表面和下表面后,会对两者进行线性插值,并映射到弦长范围内共用的 101 个余弦间距站点网格(x 范围为 0..1——UIUC 的坐标已按弦长归一化)。根据该网格计算:

  • thickness(x) = upper(x) - lower(x)
  • camber(x) = (upper(x) + lower(x)) / 2

最大厚度和最大(带符号)弯度是该网格上的最大值,报告为弦长的比例,并附上对应的 x 站点——这与 NACA 自身的 4 位命名所编码的惯例相同。使用 NACA 2412 本身进行验证:工具返回的最大厚度为 12.0%,位于 30% 弦长处;最大弯度为 2.0%,位于约 40% 弦长处。这与 “2-4-12” 的含义完全一致(40% 弦长处的弯度为 2%,厚度为 12%),也与 NACA 4 位系列按设计将最大厚度置于 30% 弦长处完全吻合——这是强有力的正确性验证,而非巧合。

已知不足

  • 系列分类只是基于文件名/描述的粗略启发式判断(规则位于 scripts/bake-index.mjs),并非 UIUC 发布的权威分类体系——不符合已知设计者/系列关键词的翼型会归入 "Other"(目前约占目录的 1/3);这是预期情况,并非缺陷。
  • 网站上有少数 .dat 文件使用了非标准空格格式或尾随注释,解析器无法处理;此时 uiuc_airfoil_geometry 会返回 geometry_error,并附上原始解析失败信息,而不会捏造数值。
  • 烘焙后的名称索引仅在手动重新运行 scripts/bake-index.mjs 时刷新(UIUC 每一两年会通过自己的“Update Directory”版块新增少量翼型);目前尚无自动刷新机制。

快速开始

添加到你的 MCP 客户端(Claude Desktop、Cursor、Windsurf 等):

{
  "mcpServers": {
    "uiuc-airfoils": {
      "url": "https://gateway.pipeworx.io/uiuc-airfoils/mcp"
    }
  }
}
此端点实际提供的内容

https://gateway.pipeworx.io/uiuc-airfoils/mcp 上的 tools/list 会返回上表中的工具,以及 Pipeworx 共享的元工具——ask_pipeworx、discover_tools、search_within、remember/recall,以及网关范围内的其他工具。因此,你看到的工具数量会多于表格中的数量:目前,单个工具包端点除了列出该工具包自身的工具,还会列出约 30 个共享工具。连接的 initialize 响应会说明其确切范围,是当天情况的权威答案。

这是有意为之,并非意外的多路复用。这些元工具可以让受限连接回答本工具包未涵盖的问题——通过 ask_pipeworx 路由到整个目录——而无需添加第二个 MCP 服务。目前无法挂载不包含这些元工具的工具包端点;如果额外的架构定义所占用的上下文多于路由功能带来的价值,请连接一次完整网关,而不是连接多个工具包端点。

或者,连接完整的 Pipeworx 网关,直接列出每个工具包的所有工具,而不仅仅是此工具包的工具:

{
  "mcpServers": {
    "pipeworx": {
      "url": "https://gateway.pipeworx.io/mcp"
    }
  }
}

这两个 URL 都连接到同一个网关和相同的 1851+ 个数据源。唯一的区别是哪些工具包的工具会被直接列出;无论连接哪一个,ask_pipeworx 都能访问所有工具。

没有 MCP 客户端?通过 HTTP 调用

curl -X POST https://gateway.pipeworx.io/v1/tools/uiuc_airfoil_search \
  -H 'Content-Type: application/json' \
  -d '{"query":"naca24"}'

首次调用无需账号。检查任意工具:GET https://gateway.pipeworx.io/v1/tools/uiuc_airfoil_search。查找工具:使用 {"query":"..."} 调用 POST https://gateway.pipeworx.io/v1/tools/search_packs。

独立运行(无需网关账号)

此软件包也可作为本地 stdio MCP 服务运行,无需 Pipeworx 账号,也无需经过网关:

{
  "mcpServers": {
    "uiuc-airfoils": {
      "command": "npx",
      "args": ["-y", "@pipeworx/mcp-uiuc-airfoils"]
    }
  }
}

也可以直接运行,以确认它能正常启动:

npx -y @pipeworx/mcp-uiuc-airfoils

它通过标准输入/标准输出使用 MCP,并响应 initialize/tools/list/tools/call,但仅支持此软件包的工具,不包含上述网关连接额外提供的共享元工具。相同的源代码,相同的工具,无需 ask_pipeworx 路由。

使用 ask_pipeworx

你可以用通俗的英语提问,而不是直接调用工具——此功能既适用于上述软件包端点,也适用于完整网关:

ask_pipeworx({ question: "your question about Uiuc Airfoils data" })

网关会选择合适的工具并自动填写参数。

更多信息

许可证

MIT

评论

支持 Markdown

第一次接触 MCP?

从协议是什么,到在客户端里装上第一个服务,这几条回答覆盖了大多数入门问题。

一个开放协议,规定了 AI 应用如何以统一方式连接外部工具与数据源。客户端负责与模型对话,MCP 服务负责提供工具、资源和提示模板,两者通过标准消息通信,同一个服务可以被不同客户端复用。