Metadata-Version: 2.5
Name: aero-bailian-mcp-demo
Version: 0.6.2
Summary: Bailian MCP adapter for p-clink aerodynamic capability 气动测试
Requires-Python: >=3.12
Requires-Dist: httpx>=0.27.0
Requires-Dist: mcp>=1.9.0
Requires-Dist: openpyxl>=3.1.5
Description-Content-Type: text/markdown

# aero-bailian-mcp-demo 0.6.2

目标能力单元：**气动测试**

本版本已经把用户提供的 Excel 输入模板：

`气动计算输入模板-参数形式.xlsx`

直接内置到 Python/PyPI 包中。安装到 FC 后会通过 `importlib.resources`
从包内读取模板，因此：

- 不需要在 FC 额外上传 Excel；
- 不需要再配置 `PCLINK_TEMPLATE_FILE`；
- 不需要调用模板下载接口。

## 已核对的 Excel 模板结构

模板 Sheet1 范围为 A1:F36：

- A列：节点名称
- B列：所属节点
- C列：节点类型
- D列：值
- E列：单位
- F列：备注

模板中存在节点 `机翼_面积`，因此 `wing_area_m2` 会写入该节点 D 列。

当前上传模板中没有名为 Mach/马赫数、迎角/攻角的节点，所以 0.6.2：
- 保持 MCP 的 `mach`、`angle_of_attack_deg` 输入不变；
- 同时把 Mach、迎角作为 autoRun multipart 表单字段发送；
- 不会擅自给 Excel 增加新节点，从而保持用户上传模板结构不变。

## 发布

```powershell
Remove-Item -Recurse -Force dist -ErrorAction SilentlyContinue
uv build
uv publish --token 你的新PyPIToken
```

应生成：

- `dist\aero_bailian_mcp_demo-0.6.2.tar.gz`
- `dist\aero_bailian_mcp_demo-0.6.2-py3-none-any.whl`

## FC 启动命令

```bash
uvx --python 3.13 --from aero-bailian-mcp-demo==0.6.2 aero-bailian-mcp-demo
```

## FC 环境变量

```text
PCLINK_BASE_URL=https://idarec.buaa.edu.cn
PCLINK_BASE_PATH=/p-clink
PCLINK_CAPABILITY_NAME=气动测试
PCLINK_CAPABILITY_ID=
PCLINK_ACCESS_TOKEN=你的有效ClinkToken

PCLINK_CMS_PATH=/api/v1/application/cms
PCLINK_AUTO_RUN_PATH=/api/v1/cm/autoRun
PCLINK_JOB_PATH=/api/v1/job/select
PCLINK_DOWNLOAD_PATH=/api/v1/datapack/downloadData

PCLINK_TIMEOUT=60
PCLINK_JOB_TIMEOUT=240
PCLINK_POLL_INTERVAL=3
```

## 部署后先测试

先调用 `get_aero_tool_status`。

预期：

```json
{
  "status": "ok",
  "version": "0.6.2",
  "capability_name": "气动测试",
  "embedded_template": "气动计算输入模板-参数形式.xlsx",
  "template_mode": "embedded-package-data"
}
```

确认后再调用 `run_aero_calculation`。
