关于 Atlarium Habitat Database MCP
Atlarium Habitat Database MCP 是面向处理水族及其他栖息环境数据的 AI Agent 和客户端的公共只读服务。它整合物种与产品资料、诊断、计算和规划工具,并提供引导式提示词及兼容 Apps 的组件。
主要功能
- 01搜索物种、植物、产品和指南
- 02获取结构化公共档案
- 03检查物种兼容性和水参数
- 04搜索诊断及治疗参考资料
- 05计算鱼缸、水体和肥料数值
- 06通过提示词和组件规划栖息环境
适用场景
- 01研究适合鱼缸的物种和植物
- 02根据鱼缸条件检查兼容性
- 03查找藻类、疾病或植物问题的可能原因
- 04估算鱼缸需求或制定栖息环境方案
MCP 相关
通过 Streamable HTTP 提供 39 个公共只读工具和 9 个引导式提示词,无需认证。它还为兼容 Apps 的宿主提供只读 Habitat Explorer 组件。
配置
远程服务无需本地安装。选择你使用的客户端,复制配置或使用一键安装。
https://mcp.atlarium.bio/mcpclaude mcp add --transport http atlarium https://mcp.atlarium.bio/mcp{"mcpServers":{"atlarium":{"type":"http","url":"https://mcp.atlarium.bio/mcp"}}}在 Cursor 中打开{"servers":{"atlarium":{"type":"http","url":"https://mcp.atlarium.bio/mcp"}}}在 VS Code 中打开{"mcpServers":{"atlarium":{"type":"http","url":"https://mcp.atlarium.bio/mcp"}}}{"mcpServers":{"atlarium":{"serverUrl":"https://mcp.atlarium.bio/mcp"}}}命令在终端中运行;JSON 粘贴到对应客户端的 MCP 配置后重启。需要授权的服务会在首次连接时提示登录。
工具
39| 参数 | 类型 | 必填 | 说明 |
|---|---|---|---|
| query | string | 否 | 用于匹配 Atlarium 公开记录的搜索文本。 |
| language | enum | 否 | 可选的首选响应语言:it、en 或 es。it | en | es |
| min_tank_liters | number | 否 | 以升为单位的最小鱼缸容积筛选条件。 |
| max_tank_liters | number | 否 | 以升为单位的最大鱼缸容积筛选条件。 |
| ph_min | number | 否 | 可接受的最低 pH 筛选条件。 |
| ph_max | number | 否 | 可接受的最高 pH 筛选条件。 |
| gh_min | number | 否 | 最低总硬度筛选条件。 |
| gh_max | number | 否 | 最高总硬度筛选条件。 |
| kh_min | number | 否 | 最低碳酸盐硬度筛选条件。 |
| kh_max | number | 否 | 最高碳酸盐硬度筛选条件。 |
| temperature_min | number | 否 | 以摄氏度为单位的最低温度筛选条件。 |
| temperature_max | number | 否 | 以摄氏度为单位的最高温度筛选条件。 |
| temperament | string | 否 | 性情筛选条件,例如温和或好斗。 |
| care_level | string | 否 | 护理难度筛选条件,例如简单、中等或专家级。 |
| limit | integer | 否 | 要返回的公开记录的最大数量,最多为 50 条。 |
| offset | integer | 否 | 公开搜索结果的从零开始的分页偏移量。 |
详细介绍
Atlarium Habitat Database MCP
为 Atlarium 栖息地数据、诊断、产品、计算器和规划建议提供公共只读 MCP 服务。
MCP 端点 · 面向用户的文档 · 服务卡片 · 技术文档 · 客户端示例
Atlarium Habitat Database MCP 为 AI Agent 提供结构化访问权限,可访问 Atlarium 的公共数据和面向水族箱、海洋水箱、冷水系统、陆生生态缸、两栖生态缸和活体生态缸的建议功能。它提供 39 个公共只读工具,涵盖物种、植物、产品、指南、藻类、疾病、植物问题、药物、兼容性、施肥、计算器和完整的栖息地规划,同时不会暴露 Atlarium 账户、私有工作区、管理 API 或写入操作。
概览
| 项目 | 值 |
|---|---|
| MCP 端点 | https://mcp.atlarium.bio/mcp |
| MCP 版本 | 2.0.3 |
| 传输方式 | Streamable HTTP |
| 身份验证 | 无 |
| 工具范围 | 39 个公共只读工具 |
| 提示词 | 9 个引导式公共提示词 |
| Apps 小组件 | ui://widget/habitat-explorer.v4.html |
| 服务卡片 | https://mcp.atlarium.bio/.well-known/mcp/server-card.json |
| 面向用户的文档 | https://atlarium.bio/mcp |
| 官方 MCP 注册表 | bio.atlarium/habitat-database |
https://atlarium.bio/mcp 是文档页面。规范的 Streamable HTTP MCP 端点为 https://mcp.atlarium.bio/mcp。
可构建的内容
| 用例 | 公共工具 |
|---|---|
| 物种研究 | 搜索鱼类、水生动物和植物,然后获取本地化的结构化档案。 |
| 水族箱兼容性 | 根据水族箱尺寸、pH 值、硬度和温度限制比较物种。 |
| 诊断分诊 | 从公开档案中搜索藻类、水生疾病、植物问题和治疗参考资料。 |
| 产品选择 | 浏览产品类别、品牌、设备和肥料。 |
| 施肥支持 | 搜索施肥方案,计算产品用量、营养缺口和每周总量。 |
| 水族箱计算器 | 估算水族箱容积、重量、换水量、水质参数、单位换算结果和设备需求。 |
| 栖息环境规划 | 生成完整的水族箱建议方案,包含物种、植物、产品、警告、动机和相关指南。 |
| 指南检索 | 搜索和检索 Atlarium 的公开教育内容。 |
所有输出仅供参考。兼容性检查、诊断、施肥方案、设备估算、水族箱计算器和水族箱建议,都应结合实际生物、设备、水质、当地法规和饲养条件进行核实。
快速入门
使用任何支持远程 Streamable HTTP 服务的 MCP 客户端:
{
"mcpServers": {
"atlarium": {
"type": "streamable-http",
"url": "https://mcp.atlarium.bio/mcp"
}
}
}
Claude Code 远程 HTTP 示例:
claude mcp add --transport http atlarium https://mcp.atlarium.bio/mcp
对运行中的端点进行冒烟测试:
curl --fail --silent --show-error https://mcp.atlarium.bio/health
curl --fail --silent --show-error https://mcp.atlarium.bio/.well-known/mcp/server-card.json
pnpm mcp:monitor:public
客户端设置
| 客户端或宿主 | 设置 |
|---|---|
| OpenAI Agents SDK | 请参阅 examples/openai-agents-python,了解连接远程 Streamable HTTP 端点的 Python Agent。 |
| Claude Code | 运行 claude mcp add --transport http atlarium https://mcp.atlarium.bio/mcp,然后让 Claude 使用 Atlarium。 |
| Cursor | 使用 添加到 Cursor 的深层链接 或根目录中的 mcp.json。 |
| Cline | 将托管端点添加为 Streamable HTTP 远程服务;llms-install.md 包含确定性的 Agent 设置说明。 |
| Windsurf | 将 examples/windsurf/mcp_config.json 复制到 Windsurf MCP 设置中,然后刷新 Cascade MCP 服务。 |
| VS Code | 复制 examples/vscode/mcp.json;VS Code 使用 type: "http" 表示远程 MCP 服务。 |
| Antigravity | 仅在支持远程 MCP 服务的构建版本中使用 examples/antigravity/mcp.json。 |
| 通用 Streamable HTTP | 使用 examples/generic-streamable-http 中的 JSON-RPC 示例。 |
| ChatGPT Apps | 现有应用版本 1.0.0 已在 OpenAI 控制面板中获批。修正后的 2.0.3 软件包已于 2026-08-29 重新提交,并包含分类稳定性测试;OpenAI Platform 目前显示为 Review。请使用 examples/chatgpt-apps 和 docs/chatgpt-review-remediation.md 查看审核说明和冒烟测试提示词。 |
这些是兼容性说明,并非供应商背书。除非供应商已接受相关上架申请,否则不要声称 ChatGPT、Claude、Cursor、Windsurf、VS Code、Antigravity 或任何目录提供支持。
ChatGPT 应用和小组件
该服务会为兼容 Apps 的宿主提供一个只读的 MCP Apps / ChatGPT Apps 小组件资源:
| 字段 | 值 |
|---|---|
| 资源 URI | ui://widget/habitat-explorer.v4.html |
| MIME 类型 | text/html;profile=mcp-app |
| 小组件 | Atlarium Habitat Explorer |
| 小组件域名 | https://mcp.atlarium.bio |
| 输出模式 | 纯 JSON 文本和 structuredContent |
小组件会呈现公开的栖息地搜索结果、档案、诊断摘要、产品搜索结果、计算器输出、兼容性摘要、施肥计划和栖息地建议。它不会增加写入权限,也不会公开工作区、身份验证、管理、日志、日程或测量数据。
仅供小组件开发使用的截图和一段简短演示录像已提交至 docs/assets/chatgpt-screenshots/ 和 docs/assets/chatgpt-app-demo.mp4。真实宿主环境下的网页和 390x844 响应式截图存放在 docs/assets/chatgpt-screenshots/real-host/;最终审核材料仍需提供原生 iOS/Android 录像。v4 / 2.0.3 候选版本已在 MCP 端点上线,但尚未获批成为新的 ChatGPT App 版本;在 OpenAI 接受之前,不要将该应用提交描述为已获批准。现有的仪表板应用版本 1.0.0 已获批准。
工具范围
| 区域 | 工具 |
|---|---|
| 鱼类和水生动物 | search_fish、get_fish_profile |
| 水生植物 | search_plants、get_plant_profile |
| 产品和指南 | search_products、get_product_profile、search_guides、get_guide |
| 诊断 | search_algae、get_algae_profile、search_diseases、get_disease_profile、search_plant_problems、get_plant_problem_profile、search_medicines、get_medicine_profile、match_diagnostic_profiles |
| 产品目录 | list_product_categories、list_product_brands、search_equipment、get_equipment_profile、search_fertilizers、get_fertilizer_profile |
| 兼容性和水质 | check_species_compatibility、get_water_parameters、suggest_species_for_tank |
| 施肥 | search_fertilization_regimes、get_fertilization_regime、calculate_fertilizer_dose、calculate_nutrient_gaps、calculate_weekly_dose_totals、generate_fertilization_plan |
| 计算器 | calculate_tank_volume、calculate_tank_weight、calculate_water_change、calculate_water_chemistry、convert_units、calculate_equipment_requirements |
| 栖息地规划器 | suggest_habitat_for_tank |
每个工具都注册了只读注解:
readOnlyHint: true、openWorldHint: false、destructiveHint: false、
idempotentHint: true。
引导式提示词
该服务提供用于物种搜索、兼容性、栖息地规划、藻类、疾病、植物问题、产品选择、施肥和鱼缸计算的引导式提示词。这些提示词会引导客户端使用相同的公开只读工具范围;它们不会增加新功能或写入权限。
工具调用示例
每个示例都展示了 MCP 工具名称和最简有效 JSON 输入。通用 MCP 客户端会收到纯 JSON 文本;兼容 Apps 的宿主也可以使用 structuredContent。
目录、植物和指南
search_fish
用途:搜索鱼类和水生动物档案。
提示词:“为 90 L 水草缸寻找适合新手饲养的小型鱼类。”
{
"query": "tetra",
"language": "en",
"min_tank_liters": 40,
"max_tank_liters": 120,
"limit": 5
}
输出:匹配的公开动物档案,包含 slug、本地化名称、摘要字段,以及可用时提供的公开 URL。
get_fish_profile
用途:获取一份结构化的鱼类或水生动物档案。
提示词:“请向我展示 Atlarium 上的霓虹灯鱼档案。”
{
"slug": "paracheirodon-innesi",
"language": "en"
}
输出:公开档案数据、饲养参数、分类、关联信息,以及可用时提供的本地化内容。
search_plants
用途:搜索水生植物档案。
提示词:“为低技术水草缸寻找易养的前景或中景植物。”
{
"query": "anubias",
"language": "en",
"difficulty": "easy",
"limit": 5
}
输出:匹配的公开植物档案,包含种植位置、难度,以及可用时提供的公开 URL。
get_plant_profile
用途:检索一份结构化水生植物档案。
提示词:“打开 Anubias barteri 的植物档案。”
{
"slug": "anubias-barteri",
"language": "en"
}
输出:植物需求、生长信息、结构化属性,以及可用的本地化内容。
search_products
用途:搜索公开的栖息地产品。
提示词:“查找适用于淡水鱼缸的过滤器产品。”
{
"query": "filter",
"language": "en",
"category": "filter",
"limit": 5
}
输出:产品搜索结果,包含品牌/类别信息,以及可用的公开产品 URL。
get_product_profile
用途:检索一份公开产品档案。
提示词:“显示此目录 slug 对应的产品档案。”
{
"slug": "seachem/prime",
"language": "en"
}
输出:结构化公开产品数据、用途、品牌详情,以及可用的链接。
search_guides
用途:搜索 Atlarium 指南和教育内容。
提示词:“查找关于鱼缸开缸的公开指南。”
{
"query": "cycling",
"language": "en",
"topic": "aquarium",
"limit": 5
}
输出:指南匹配结果,包含标题、摘要、主题,以及可用的公开 URL。
get_guide
用途:检索一份公开的 Atlarium 指南。
提示词:“打开氮循环指南。”
{
"slug": "aquarium/nitrogen-cycle",
"language": "en"
}
输出:结构化公开指南内容及相关元数据。
诊断和治疗参考资料
search_algae
用途:搜索藻类诊断档案。
提示词:“查找关于鱼缸玻璃上绿色粉尘藻的藻类档案。”
{
"query": "green dust",
"language": "en",
"difficulty": 2,
"limit": 5
}
输出:藻类匹配结果,包含症状、可能原因和建议指导。
get_algae_profile
用途:检索一份藻类档案。
提示词:“显示绿斑藻档案。”
{
"slug": "green-spot-algae",
"language": "en"
}
输出:结构化公开藻类档案,包含症状、原因、预防方法和建议应对措施。
search_diseases
用途:搜索水生生物疾病档案。
提示词:“查找关于鱼身上白点的疾病档案。”
{
"query": "white spots",
"language": "en",
"water_type": "freshwater",
"limit": 5
}
输出:可能的疾病档案和建议治疗参考资料。
get_disease_profile
用途:检索一份疾病档案。
提示词:“打开白点病档案。”
{
"slug": "ich",
"language": "en"
}
输出:症状、可能原因、治疗参考资料和免责声明。
search_plant_problems
用途:搜索水生植物缺素、虫害和环境问题档案。
提示词:“查找水族植物叶片发黄的原因。”
{
"query": "yellow leaves",
"language": "en",
"type": "deficiency",
"limit": 5
}
输出:植物问题匹配结果,包含症状、原因和建议的纠正措施。
get_plant_problem_profile
用途:检索一份植物问题档案。
提示词:“打开氮缺乏档案。”
{
"slug": "nitrogen-deficiency",
"language": "en"
}
输出:结构化缺素/问题数据和建议指导。
search_medicines
用途:搜索水族药品和治疗产品档案。
提示词:“查找关于白点病治疗的公开药品参考资料。”
{
"query": "ich",
"language": "en",
"limit": 5
}
输出:药品/治疗参考资料,以及可用的公开档案数据。
get_medicine_profile
用途:检索一份药品档案。
提示词:“打开某个药品 slug 对应的档案。”
{
"slug": "malachite-green",
"language": "en"
}
输出:结构化公开药品参考资料、使用说明和免责声明。
match_diagnostic_profiles
用途:在藻类、疾病、植物问题和药品档案中匹配症状文本。
提示词:“匹配沉木上模糊的白色生长物和鱼类受压症状。”
{
"query": "white fuzzy growth and fish flashing",
"language": "en",
"limit": 8
}
输出:按相关性分组的可能公开诊断档案。
产品、设备和肥料
list_product_categories
用途:列出设备和肥料的产品类别。
提示词:“有哪些公开的设备类别可用?”
{
"language": "en",
"type": "equipment"
}
输出:本地化的公开类别名称和标识符。
list_product_brands
用途:列出公开产品品牌。
提示词:“列出与 Seachem 匹配的品牌。”
{
"language": "en",
"query": "Seachem"
}
输出:匹配的公开品牌名称和元数据。
search_equipment
用途:搜索水族和栖息地设备产品。
提示词:“查找适用于淡水鱼缸配置的加热器。”
{
"query": "heater",
"language": "en",
"use_case": "freshwater",
"limit": 5
}
输出:设备产品匹配结果,包含结构化公开目录字段。
### `get_equipment_profile`用途:检索一款设备产品的资料。
提示词:“打开这份设备资料。”
{
"slug": "eheim/thermocontrol",
"language": "en"
}
输出:可用时提供公开设备详情、类别、品牌和用途字段。
search_fertilizers
用途:搜索肥料产品和养分资料。
提示词:“查找适用于水草缸的液体肥料。”
{
"query": "flourish",
"language": "en",
"category": "fertilizer",
"limit": 5
}
输出:可用时提供匹配的肥料产品和养分元数据。
get_fertilizer_profile
用途:检索一款肥料的资料。
提示词:“打开这份肥料资料。”
{
"slug": "seachem/flourish",
"language": "en"
}
输出:可用时提供结构化肥料数据、施肥元数据和公开目录详情。
兼容性、水质与栖息环境建议
check_species_compatibility
用途:检查栖息环境中物种之间的基本兼容性。
提示词:“霓虹灯鱼和花鳅可以在 90 L 的水草缸中混养吗?”
{
"species": ["Paracheirodon innesi", "Corydoras paleatus"],
"language": "en",
"tank_liters": 90,
"ph": 6.8,
"temperature": 24
}
输出:建议性的兼容性信号、警告、理由和限制条件。
get_water_parameters
用途:检索鱼类或植物所需的推荐水质参数。
提示词:“霓虹灯鱼适宜的水质参数是什么?”
{
"slug": "paracheirodon-innesi",
"type": "fish",
"language": "en"
}
输出:可用时提供公开的温度、pH、GH/KH 和相关参数指导。
suggest_species_for_tank
用途:根据鱼缸和水质参数推荐水生物种。
提示词:“为 120 L 的水草缸推荐适合新手饲养的物种。”
{
"tank_liters": 120,
"language": "en",
"ph": 6.8,
"temperature": 24,
"beginner_friendly": true,
"planted_tank": true,
"limit": 8
}
输出:公开物种建议,以及警告和基本理由。
suggest_habitat_for_tank
用途:建议一套完整的公开栖息环境方案。
提示词:“为 120 L 的鱼缸规划一套平衡的水草缸群落栖息环境。”
{
"tank_liters": 120,
"language": "en",
"ph": 6.8,
"temperature": 24,
"beginner_friendly": true,
"planted_tank": true,
"co2": "low",
"light_level": "medium",
"setup_intent": "community",
"target_difficulty": "balanced",
"water_type": "FRESHWATER",
"limit": 8
}
输出:鱼类、无脊椎动物、植物、产品、警告、建议理由、相关指南和建议性免责声明。
施肥
search_fertilization_regimes
用途:搜索施肥方案和施肥理念。
提示词:“查找适用于低技术水草缸的施肥方案。”
{
"query": "low tech",
"language": "en",
"topic": "planted",
"limit": 5
}
输出:可用时提供公开施肥方案匹配结果、摘要、主题和公开 URL。
get_fertilization_regime
用途:检索一种施肥方案。
提示词:“打开 Estimative Index 施肥方案资料。”
{
"slug": "estimative-index",
"language": "en"
}
输出:结构化的公开施肥理念/方案详情。
calculate_fertilizer_dose
用途:为目录中的产品和鱼缸水量计算建议性肥料剂量。
提示词:“计算 120 L 鱼缸使用 Seachem Flourish 的剂量。”
{
"brand_name": "Seachem",
"product_name": "Flourish",
"volume_liters": 120
}
输出:建议性剂量估算和产品相关的施肥背景信息。
calculate_nutrient_gaps
用途:将养分测量值与目标值进行比较。
提示词:“将我的硝酸盐和钾测量值与水草缸目标值进行比较。”
{
"language": "en",
"volume_liters": 120,
"measurements": [
{
"kind": "nitrogen_mg_l",
"value": 5
},
{
"kind": "potassium_mg_l",
"value": 8
}
],
"targets": {
"nitrogen_mg_l": 10,
"potassium_mg_l": 15
}
}
输出:养分差值估算,不保存测量值。
calculate_weekly_dose_totals
用途:计算非持久化施肥计划的每周总量。
提示词:“汇总我的每周液体肥料计划。”
{
"language": "en",
"volume_liters": 120,
"items": [
{
"brand_name": "Seachem",
"product_name": "Flourish",
"method": "LIQUID",
"dose_value": 5,
"dose_unit": "ml",
"days_of_week": [1, 3, 5]
}
]
}
输出:每周产品总量和施用安排摘要。
generate_fertilization_plan
用途:生成建议性的非持久化施肥计划。
提示词:“为 120 L 的水草缸生成一份均衡的施肥计划。”
{
"language": "en",
"volume_liters": 120,
"regime": "balanced",
"targets": {
"nitrogen_mg_l": 10,
"phosphorus_mg_l": 1,
"potassium_mg_l": 15,
"iron_mg_l": 0.1
}
}
输出:建议性计划、养分目标、产品建议和免责声明。
计算器
calculate_tank_volume
用途:计算鱼缸毛容积和净容积的估算值。
提示词:“计算尺寸为 60 x 30 x 36 cm 的鱼缸净容积。”
{
"shape": "rect",
"length_cm": 60,
"width_cm": 30,
"height_cm": 36,
"substrate_depth_cm": 5,
"hardscape_displacement_liters": 4
}
输出:毛容积和净容积估算值。
calculate_tank_weight
用途:根据尺寸和材料输入估算鱼缸重量。
提示词:“估算一个装满水的 120 L 鱼缸的重量。”
{
"shape": "rect",
"length_cm": 80,
"width_cm": 35,
"height_cm": 45,
"glass_thickness_mm": 8,
"substrate_depth_cm": 6,
"hardscape_weight_kg": 12,
"equipment_weight_kg": 5
}
输出:建议性的总重量估算和各组成部分的重量明细。
calculate_water_change
用途:计算换水量、每周总量和稀释估算值。
提示词:“每周换水两次,每次换掉 120 L 水的 30%,换水量是多少?”
{
"volume_liters": 120,
"change_percent": 30,
"changes_per_week": 2
}
输出:每次换水量和每周总量估算值。
calculate_water_chemistry
用途:计算硬度换算值、CO2、盐度和混水比例。
提示词:“根据 pH 6.8 和 KH 4 估算 CO2。”
{
"co2": {
"ph": 6.8,
"kh_dkh": 4
},
"general_hardness": {
"unit": "dgh",
"value": 8
}
}
输出:公开的化学参数换算值和建议性估算值。
convert_units
用途:换算水族相关单位。
提示词:“换算 120 升和 24 C。”
{
"volume": {
"unit": "l",
"value": 120
},
"temperature": {
"unit": "c",
"value": 24
}
}
输出:支持单位的换算值。
calculate_equipment_requirements
用途:估算建议的加热、照明和用电需求。
提示词:“估算 120 L 水族箱的加热和照明需求。”
{
"heater": {
"volume_liters": 120,
"ambient_c": 20,
"target_c": 25,
"insulation": "normal"
},
"lighting": {
"volume_liters": 120,
"lumens": 3600
},
"electricity": {
"wattage": 100,
"hours_per_day": 8,
"cost_per_kwh": 0.25
}
}
输出:建议性的设备估算值以及用电量/费用摘要。
发现与目录状态
| 目录 | 状态 |
|---|---|
| Official MCP Registry | 已以 bio.atlarium/habitat-database 发布;版本 2.0.3 处于启用状态且为最新版本。 |
| GitHub | 规范的公开源代码仓库。 |
| Glama | 所有权已验证;列表状态正常,包含 39 个工具和规范的 V2 描述。 |
| Smithery | 已发布的列表;生产环境提供版本 2.0.3、39 个工具和 9 个提示词,目录刷新仍在等待处理。 |
| MCP.so | 已公开列出;2.0.2 版本的刷新正在等待目录处理。 |
| PulseMCP | 已公开列出;添加徽章前请确认徽章政策。 |
| mcpservers.org | 已公开列出,地址为 techgardeners/atlarium-mcp;尚未添加徽章。 |
| MCPRepository | 已发布的列表,其公开页面已验证。 |
| MCP Market | 已公开列出,包含规范仓库和只读工具元数据。 |
| MCP Scoreboard | 存在公开列表,目前尚未评分;未声称拥有评分徽章。 |
| MCP Queen | 已验证的公开证据页面,包含实时协议探测。 |
发布跟踪和可复用的提交文案位于
config/distribution-registry.json、docs/publication-checklist.md、
docs/directory-submission-payloads.md 和 docs/mcp-submission-cockpit.md。
待处理、受阻和已拒绝的目标仍保留在运营注册表中,
不会作为已接受的公开列表呈现。
本地开发
pnpm install
cp .env.example .env
pnpm dev
默认情况下,服务会监听 http://localhost:43118。
针对 Atlarium 应用进行本地开发:
ATLARIUM_API_BASE_URL=http://localhost:43117/api/public/mcp/v1 pnpm dev
配置
MCP_PUBLIC_BASE_URL:公开基础 URL,生产环境默认值为https://mcp.atlarium.bio。ATLARIUM_API_BASE_URL:公开的只读 Atlarium API 基础 URL。MCP_ALLOWED_HOSTS:以逗号分隔的主机允许列表,用于防止 DNS 重绑定。MCP_TRUST_PROXY:Express 代理信任设置;默认值1表示生产环境中有一个受信任的反向代理。ATLARIUM_API_TIMEOUT_MS:上游公开 API 超时时间,单位为毫秒(默认值为15000)。MCP_PUBLIC_PROBE_ATTEMPTS:只读公开监控的尝试次数(默认值为3)。MCP_PUBLIC_PROBE_RETRY_DELAY_MS:公开监控的初始重试延迟;每次失败后延迟加倍(默认值为1000)。ATLARIUM_API_RESPONSE_MAX_BYTES:上游 JSON 响应的最大大小。OPENAI_APPS_CHALLENGE_TOKEN:公开的 OpenAI Apps 域名验证令牌,通过/.well-known/openai-apps-challenge提供。
生产部署必须置于 TLS 终止反向代理或 Ingress 后方;在流量到达此服务之前,
该代理或 Ingress 必须覆盖 X-Forwarded-For、X-Forwarded-Host 和
X-Forwarded-Proto。
质量门禁
pnpm lint
pnpm typecheck
pnpm test
pnpm build
pnpm audit:prod
docker build -t atlarium-mcp:local .
本地服务运行时:
pnpm mcp:conformance
生产 DNS 和 TLS 启用后:
pnpm mcp:monitor:public
pnpm directories:submit -- --check
pnpm mcp:validate:public
pnpm mcp:conformance:public
贡献
请参阅 CONTRIBUTING.md。公开工具的变更必须在同一版本中同步更新服务实现、测试、服务卡元数据、server.json、README.md、docs/mcp.md、文档、示例和目录发布说明。
安全
请参阅 SECURITY.md。请勿在公开的 GitHub 问题中报告敏感安全问题。
许可证
MIT。请参阅 LICENSE。
评论
一个开放协议,规定了 AI 应用如何以统一方式连接外部工具与数据源。客户端负责与模型对话,MCP 服务负责提供工具、资源和提示模板,两者通过标准消息通信,同一个服务可以被不同客户端复用。