关于 Met Museum MCP Server
Met Museum MCP Server 是一个 MCP 服务,让 AI 模型可以检索大都会艺术博物馆(The Met)的馆藏并查看作品详情,包括可用的图片。适合希望通过自然语言浏览馆藏的用户和开发者。该项目为第三方实现,与大都会艺术博物馆没有官方关联。
主要功能
- 01按关键词搜索馆藏作品
- 02按部门列出馆藏分类
- 03获取作品的开放获取数据
- 04返回作品图片(Base64 编码 JPEG)
- 05提供 MCP App 交互式浏览界面
适用场景
- 01检索某位艺术家的相关作品
- 02按部门浏览馆藏展品
- 03查询特定作品的详细信息和图片
MCP 相关
该项目是一个 MCP 服务,向 MCP 客户端提供 list-departments、search-museum-objects、get-museum-object 和 open-met-explorer 等工具,其中 open-met-explorer 会启动交互式 MCP App。
配置
本地服务的配置在各客户端中通用,复制后粘贴到客户端的 MCP 配置文件即可。
工具
4收录的工具列表 · 更新于 3 周前
此工具无需参数。
详细介绍
Met Museum MCP 服务
一个模型上下文协议(MCP)服务,可通过自然语言交互访问大都会艺术博物馆的馆藏。此服务允许 AI 模型搜索 The Met 的艺术品馆藏,并通过工具结果获取艺术品详情(包括图像)。
目录
- 功能
- MCP 应用
- 先决条件
- 快速开始
- 配置
- 传输方式
- 与 ChatGPT 搭配使用
- 与 Claude Desktop 搭配使用
- 与 LibreChat 搭配使用
- 示例查询
- 开发
- 贡献
- 许可证
- 免责声明
托管部署
可在 Fronteir AI 上使用托管部署。
功能
此服务为 AI 模型提供以下工具,以便与 The Met 的艺术品馆藏进行交互:
1. 列出部门(list-departments)
列出 The Met 的所有有效部门
- 输入:
- 无
- 输出:
Department ID: 1, Display Name: American Decorative Arts Department ID: 3, Display Name: Ancient Near Eastern Art ...
2. 搜索博物馆藏品(search-museum-objects)
根据输入搜索 The Met 的各类藏品。
-
输入:
q(字符串):搜索词,例如 sunflowershasImages(布尔值,可选,默认值:false):仅搜索带有图像的藏品title(布尔值,可选,默认值:false):返回与查询匹配的藏品,具体来说,是在藏品的标题字段中进行搜索。departmentId(数字,可选):返回属于指定部门的藏品。page(数字,可选,默认值:1):结果页码,从 1 开始。pageSize(数字,可选,默认值:24):每页的藏品 ID 数量(最多 100 个)。
-
输出:
Total objects found: 54 Page: 1/3 Object IDs: 436532, 789578, 436840, 438722,...
3. 获取博物馆藏品(get-museum-object)
获取 The Met 的特定藏品,其中包含该藏品的所有开放访问数据,包括其图像(如果该图像符合 Open Access 开放访问条件)。
如果有图像且 returnImage 为 true,则会在工具结果中以图像内容块的形式返回(经 base64 编码的 JPEG)。
当用户询问某件特定艺术品的更多详情,且你已经有其 objectId 时,请使用此工具。
- 输入:
objectId(数字):要获取的藏品 IDreturnImage(布尔值,可选,默认值:true):是否在工具结果中包含藏品的图像(如果有)
- 输出:
如果 returnImage 为 trueTitle: Self-Portrait with a Straw Hat (obverse: The Potato Peeler) Artist: Vincent van Gogh Artist Bio: Dutch, Zundert 1853–1890 Auvers-sur-Oise Department: European Paintings Credit Line: Bequest of Miss Adelaide Milton de Groot (1876-1967), 1967 Medium: Oil on canvas Dimensions: 16 x 12 1/2 in. (40.6 x 31.8 cm) Primary Image URL: https://images.metmuseum.org/CRDImages/ep/original/DT1502_cropped2.jpg Tags: Men, Self-portraits**base64 encoding of jpeg image**
4. 打开 Met Explorer 应用(open-met-explorer)
启动交互式 MCP 应用(ui://met/explorer.html),可在支持 Apps 的 MCP 客户端中搜索、筛选和查看对象。
推荐流程:
-
使用
open-met-explorer启动应用并浏览实时搜索结果(传入q可立即开始搜索)。 -
根据当前结果创建精选列表后,仅对用户想深入了解的项目使用
get-museum-object。 -
输入(均为可选):
q(字符串):初始搜索词。hasImages(布尔值,默认值:true):优先显示带图片的对象。title(布尔值,默认值:false):仅搜索标题。departmentId(数字):预先选择部门筛选条件。
-
输出:
Opens the Met Explorer app in the client UI.
MCP Apps
此 MCP 服务现已支持 MCP Apps。Open Met Explorer App 工具和 Get Museum Object 工具均提供 UI 组件。
先决条件
- Node.js v18 或更高版本
快速开始
直接使用 npx 运行服务,无需安装:
npx -y metmuseum-mcp
这会通过 stdio 传输启动服务,这是大多数 MCP 桌面客户端所需的传输方式。
有关特定客户端的设置,请参阅:
配置
以下环境变量适用于所有传输方式:
| 变量 | 默认值 | 说明 |
|---|---|---|
MET_API_TIMEOUT_MS | 10000 | 向 Met Collection API 发送请求的超时时间(毫秒)。 |
MET_API_DEBUG | false | 在 stderr 中启用模式验证失败的调试日志(接受的真值:1、true、yes、on)。 |
传输方式
此服务支持两种传输方式:
- stdio 传输(默认): MCP 桌面客户端(Claude Desktop、LibreChat MCP 等)使用。
- Streamable HTTP 传输: 使用
--http在/mcp暴露 MCP 端点。
Streamable HTTP 传输
使用 npx 运行(推荐最终用户使用):
npx -y metmuseum-mcp --http
或从本地克隆版本运行:
pnpm run build
node dist/index.js --http
服务将监听:
http://localhost:3001/mcp
你可以使用环境变量控制 HTTP 服务的行为:
| 变量 | 默认值 | 说明 |
|---|---|---|
PORT | 3001 | Streamable HTTP 服务使用的 HTTP 端口。 |
HOST | 127.0.0.1 | HTTP 服务绑定的网络接口。 |
ALLOWED_HOSTS | localhost,127.0.0.1 | 用于验证 host 标头的逗号分隔主机允许列表(示例:localhost,127.0.0.1,my-domain.com)。 |
示例:
HOST=127.0.0.1 PORT=8080 ALLOWED_HOSTS=localhost,127.0.0.1 npx -y metmuseum-mcp --http
与 ChatGPT 配合使用
以下步骤可让你在 ChatGPT 网页界面中使用 Met Museum MCP。
1. 在 ChatGPT 中启用开发者模式
设置 → 应用 → 高级设置 → 开发者模式
其他说明请参阅此处
2. 使用 Streamable HTTP 传输运行 Met Museum MCP 服务
npx -y metmuseum-mcp --http
默认情况下,服务将监听 http://127.0.0.1:3001/mcp
3. 创建本地隧道,将 MCP 服务开放给 ChatGPT
注册并配置 ngrok,免费方案即可使用。
ngrok http http://127.0.0.1:3001 --host-header=rewrite
记下转发 URL。
...
Forwarding https://john-joe-asdf.ngrok-free.dev -> http://localhost:3001
...
4. 将 Met Museum MCP 添加为 ChatGPT 的连接器
打开 ChatGPT 应用设置
点击应用
点击创建应用
填写表单时,将第 3 步中的 URL 用作 MCP 服务 URL,并在末尾添加 /mcp。
https://john-joe-asdf.ngrok-free.dev/mcp
对于身份验证,选择“无身份验证”
勾选“我已了解并希望继续”复选框
然后点击创建。
5. 使用 Met Museum MCP 服务
在提示词输入框中,你可以使用 @第3步中的服务器名称;或者 在 ChatGPT 界面中,点击“+”按钮,滚动到“...更多”,选择新创建的 Met 应用,然后输入你的查询。
在 Claude Desktop 中使用
通过 MCP Bundle(MCPB)
- 从 Releases 下载
mcpb文件 - 使用 Claude Desktop 打开它 或者 前往文件 -> 设置 -> 扩展程序,并将 .mcpb 文件拖到窗口中进行安装
通过 npx
将以下内容添加到你的 claude_desktop_config.json:
{
"mcpServers": {
"met-museum": {
"command": "npx",
"args": [
"-y",
"metmuseum-mcp"
]
}
}
}
在 LibreChat 中使用
在你的 librechat.yaml 中添加以下内容
mcpServers:
metmuseum:
command: npx
args:
- -y
- metmuseum-mcp
示例查询
连接此服务后,你可以向 AI 模型提出以下问题:
Can you help me explore the works of Vincent Van Gogh?
Can you help me explore the Met?
Can you show me a few paintings from the Asian Art department?
Can you find the painting titled "Corridor in the Asylum"?
Can you find any art that has "cat" in the title or features "cats"?
开发
此项目使用 pnpm 进行本地开发和 CI。
corepack enable
pnpm install
pnpm run build
pnpm run check
对于非交互式 Shell/CI 运行器,请使用 CI=true pnpm install --frozen-lockfile。
贡献
欢迎贡献!欢迎提交 Pull Request。
许可证
此 MCP 服务采用 MIT 许可证。这意味着你可以自由使用、修改和分发该软件,但须遵守 MIT 许可证的条款和条件。详情请参阅项目仓库中的 LICENSE 文件。
免责声明
此库与纽约大都会艺术博物馆没有官方关联。它是 大都会艺术博物馆馆藏 API 的第三方实现,并提供 MCP 服务。
评论
一个开放协议,规定了 AI 应用如何以统一方式连接外部工具与数据源。客户端负责与模型对话,MCP 服务负责提供工具、资源和提示模板,两者通过标准消息通信,同一个服务可以被不同客户端复用。
