使用说明
ICICLE AI组件MCP
ICICLE AI组件MCP允许开发人员使用AI驱动的IDE来探索ICICLE组件,然后 直接从IDE内的聊天中实现、实验和迭代。它暴露了 用于在MCP上列出、搜索和检索组件元数据的工具。
标签:软件
致谢
美国国家科学基金会(NSF)资助的环境计算学习智能网络基础设施人工智能研究所(ICICLE)(OAC 2112606)
问题报告
报告问题https://github.com/ICICLE-ai/catalog_mcp/issues并包括 您的IDE、Python版本和完整的错误消息或堆栈跟踪。
教程
开始
先决条件:
- Python 3.10+
- 互联网访问以获取目录YAML
步骤:
- 创建并激活虚拟环境。
python3 -m venv .venv
source .venv/bin/activate
- 安装依赖项。
pip install -r requirements.txt
- 运行MCP服务器。
python server.py
- 将MCP客户端连接到stdio服务器(光标MCP设置)。
预期成果:
- MCP工具,如
list_components和search_components返回目录数据。
从Cursor或Claude桌面连接
先决条件:
- 服务器已安装并可运行
python server.py.
步骤(光标):
- 在以下位置创建本地MCP配置文件
.cursor/mcp.json.
{
"mcpServers": {
"icicle-catalog": {
"command": "./.venv/bin/python",
"args": ["./server.py"]
}
}
}
- 在Cursor中,打开MCP设置并启用
icicle-catalog服务器。 - 在聊天中,问一个问题,比如:“列出2025-07版本中的组件。”
步骤(克劳德桌面):
- 在以下位置创建本地MCP配置文件
.claude/mcp.json.
{
"mcpServers": {
"icicle-catalog": {
"command": "./.venv/bin/python",
"args": ["./server.py"]
}
}
}
- 在Claude Desktop MCP设置中启用服务器。
- 问:“搜索Foundation AI的组件。”
预期成果:
- IDE可以调用以下工具
list_components和search_components直接从聊天。
聊天请求和响应示例:
User: Show me ICICLE components related to Foundation AI.
Assistant: I found 7 components. Here are the top 3: [component list...]
如何指导
按关键词搜索
问题:
- 查找与查询字符串匹配的组件。
步骤:
- 请IDE聊天室搜索目录。
例子:
User: Find ICICLE components related to Foundation AI.
Assistant: I found 7 components. Here are the top 3: [component list...]
JSON工具调用(高级):
{"tool": "search_components", "args": {"query": "Foundation AI"}}
提示:
- 使用更广泛的术语来提高记忆力。
故障排除:
- 如果结果为空,请验证网络访问和目录URL。
按发布筛选
问题:
- 列出目标版本的组件。
步骤:
- 请IDE聊天室列出某个版本的组件。
例子:
User: List all ICICLE components in release 2025-07.
Assistant: I found 42 components in 2025-07. Here are the first 10: [component list...]
JSON工具调用(高级):
{"tool": "list_components", "args": {"target_release": "2025-07"}}
提示:
- 合并
primary_thrust和public_access以获得更窄的结果。
故障排除:
- 如果请求超时,请重试或增加
CATALOG_TIMEOUT.
解释
概述
核心概念:
- 服务器通过HTTPS获取YAML目录,并公开MCP工具和资源。
- 工具返回简洁的摘要,而资源则公开完整的组件记录。
架构:
server.py定义了FastMCP服务器和工具处理程序。- HTTP会话处理目录获取的重试和超时。
- 运输是标准的;客户端和服务器之间的消息是JSON-RPC 2.0。
设计决策:
- stdio传输使基于IDE的MCP客户端的集成变得简单。
- 紧凑的列表/搜索响应减少了有效载荷大小和延迟。
概念流程:
[MCP Client] <-> stdio/JSON-RPC 2.0 <-> [FastMCP Server] -> HTTPS -> [Catalog YAML]