这个项目能做什么
TianGong-LCA-MCP 是一个模型上下文协议(MCP)服务器,将 TianGong 生命周期评估(LCA)能力提供给兼容 MCP 的 AI 主机。它支持两种传输方式:STDIO 用于本地客户端集成,Streamable HTTP 用于远程使用。
配置通过从 `.env.example` 复制的环境变量完成,涵盖 Supabase 签发者、可发布密钥、允许的公共 OAuth 客户端 ID 以及允许的浏览器来源。README 指出 OAuth 认证不需要 Redis、机密客户端密钥或服务器端会话加密密钥。GLAD 数据集搜索工具需要额外的 GLAD API 密钥和基础 URL(默认为公共 Global LCA Data Access 端点)。
远程 Streamable HTTP 被描述为受 OAuth 2.1 保护的资源。兼容的 MCP 主机发现受保护资源元数据,跟随 Supabase Auth 授权服务器,打开用户浏览器,并完成带 S256 PKCE 的授权码流程。凭据在浏览器中输入,而非输入到 AI 或 MCP 主机。Supabase 向公共 MCP 客户端签发访问令牌和轮换刷新令牌;客户端在本地存储刷新令牌,并在每个请求中发送短期有效的 ES256 访问 JWT。服务器验证签名、签发者、受众、过期时间、角色/会话以及精确客户端 ID,Edge/PostgREST 会重新验证上下文并执行行级安全。动态客户端注册已禁用;操作员在 Supabase 中注册精确的公共客户端和回环回调,并将其 UUID 列入允许列表变量。MCP 源本身不暴露授权、令牌、刷新、撤销、回调、注册或演示端点。
安装和启动选项包括全局 pnpm 包(`@tiangong-lca/mcp-server`)通过 dotenv-cli 作为 STDIO 服务器运行,或本地构建的 Docker 镜像发布在端口 9278 并使用环境文件。本地测试使用 pnpm 脚本:`pnpm start` 通过 MCP Inspector 运行 STDIO 服务器,`pnpm start:server` 运行 Streamable HTTP 服务器,`pnpm start:server-local` 运行本地 HTTP 变体。HTTP 启动命令通过跨平台 Node argv 包装器启动 MCP Inspector。
README 记录了固定的工具链(Node 24.19.0、pnpm 11.24.0、TypeScript 7.0.2),并指出 Docker 示例描述的是本地构建,因为没有验证过公共预构建镜像标签。
评论
0 评分人数达到10人后显示
登录后参与讨论。