内容
# FLAPI 开发 MCP
本地 MCP 服务器,用于 Claude Code,使 Claude 成为专家 FLAPI(FilmLight Baselight)开发者。它会发现您本地的 Baselight 安装,收集 FLAPI 上下文,为脚本提供合适的样板,并运行它们以验证它们是否有效。支持 macOS 和 Linux(FilmLight BL 主机),仅支持 Python。
需要 Baselight 7+(7.0.0.24232 中引入的基于轮的 FLAPI 分发)。在活动安装为 BL5/BL6 但也存在 BL7+ 版本的主机上,`init` 会自动以 BL7+ 版本为目标。
请参阅 [CLAUDE.md](CLAUDE.md) 以获取完整的设计规范。
## 安装
该工具作为 [uv](https://docs.astral.sh/uv/) 工具提供:uv 为服务器构建隔离环境,并将 `flapi-dev-mcp` 命令放在您的 PATH 上,因此无需手动管理虚拟环境。
```bash
# 1. 安装 uv(如果您尚未安装):
# macOS:brew install uv
# Linux:curl -LsSf https://astral.sh/uv/install.sh | sh
# (任一操作系统:curl -LsSf https://astral.sh/uv/install.sh | sh)
# 2. 直接从 git URL 安装服务器作为工具:
uv tool install git+https://github.com/FilmLightAPI/flapi-dev-mcp
uv tool update-shell # 一次性: 将命令放在 PATH 上(重启您的 shell)
# 3. 入门(发现 Baselight,克隆示例仓库,写入配置):
flapi-dev-mcp init
# 4. 在用户范围内注册到 Claude Code,在每个项目中均可用:
claude mcp add --scope user flapi-dev flapi-dev-mcp
```
流程在 macOS 和 Linux 上相同 — `init` 自动检测操作系统并解析正确的路径(macOS 上为 `/Library/Application Support/FilmLight/...`,Linux 上为 `/usr/fl/...`,以及跨平台的 `/vol/.support/scripts`(如果存在))。
## 在项目中使用
上述设置是**一次性**的。由于步骤 4 在**用户范围**内注册了 `flapi-dev`,因此它在每个 Claude Code 会话中自动可用,因此无需在每个项目中添加或批准。要处理新的脚本:
```bash
mkdir ~/my-flapi-script && cd ~/my-flapi-script
claude # flapi-dev 已经在这里;只需要求它编写 FLAPI 脚本
```
(当代理编写**独立**脚本时,它会将该项目的 Python 虚拟环境直接放在文件夹中作为 `.venv`,因此每个项目都保持自包含。)
## 更新
```bash
uv tool upgrade flapi-dev-mcp # 拉取最新版本
# 如果更改未生效,请强制重新获取:
uv tool install --reinstall git+https://github.com/FilmLightAPI/flapi-dev-mcp
```
## 贡献
在本地虚拟环境中进行开发时,可编辑安装很方便:
```bash
uv venv && uv pip install -e . # 或:python3.12 -m venv .venv && .venv/bin/pip install -e .
```