MAST MCP原型
什么是MCP?
MCP(模型上下文协议)是一种用于构建可以访问外部工具和数据源的AI代理的协议。 我们正在使用 FastMCP 构建对MAST Archive的几个简单调用。.
设置
安装要求(例如, uv sync)对于应用程序。\ 你需要 uv 已安装,供客户端访问。您可以使用 brew install uv.
你可以用 fastmcp run src/server.py 但为了最好地使用它,您需要将其安装到客户端。\ 为此,请使用 fastmcp install 命令。例如:
fastmcp install cursor src/server.py -n MAST-MCP根据您的设置,您可能需要添加 --project 在特定项目目录中运行,确保 uv 找到正确的环境。
对于VSCode,您可能需要生成mcp-json格式,它可能看起来像:
{
"MAST-MCP": {
"command": "uv",
"args": [
"run",
"--project",
"C:\\Users\\strak\\Projects\\mast-mcp-prototype",
"--with",
"fastmcp",
"fastmcp",
"run",
"C:\\Users\\strak\\Projects\\mast-mcp-prototype\\src\\server.py"
]
}
}可流式传输的HTTP版本
如果你想在可流式传输的HTTP版本中使用MCP,你可以使用 server_http.py 文件。 这将允许您在web服务器上托管MCP,并通过HTTP访问它。
uvicorn src.server_http:api --reload示例
按名称获取给定系外行星的属性:
What is the orbital separation for exoplanet HR-8799b?在获取属性后生成提示以对其进行汇总(具体调用因客户端而异):
/MAST-MCP/Summarize exoplanet properties 获取给定目标的观察结果:
What observations exist in MAST for V4046 Sgr? Use a radius of 0 degrees.获取给定观察的产品列表:
What products exist in MAST for TW Hya? Use a radius of 0 degrees and only consider HST observations using the COS instrument.