艺术藏品访问服务

一个提供哈佛艺术博物馆API访问的MCP服务器,可查询超过224,000件艺术品、艺术家记录和博物馆藏品。

  • by AlexLin1234
  • Python
  • 本地部署
  • 3 星标
  • 更新于
在 GitHub 查看 AlexLin1234/harvard-art-museums-mcp-server

使用说明

哈佛艺术博物馆MCP服务器

一个提供访问权限的模型上下文协议(MCP)服务器 哈佛艺术博物馆API提供超过224,000件艺术品、艺术家记录和博物馆藏品的访问权限。

特点/功能

这个MCP服务器提供了5种工具,用于与哈佛的艺术收藏进行互动:

  • 搜索对象 - 使用筛选器在收藏中搜索艺术品
  • 获取对象 - 通过ID获取特定艺术品的详细信息
  • 搜索人员 - 在收藏中搜索艺术家和人物
  • 获取人员信息 - 根据ID获取特定人员的详细信息
  • 随机对象 - 获取随机艺术品,并可选择分类/文化过滤器

安装

  1. 克隆此存储库:

    git clone https://github.com/AlexLin1234/harvard-art-museums-mcp-server
    cd harvard-art-museums
    
  2. 创建一个虚拟环境并安装依赖项:

    python -m venv .venv
    source .venv/bin/activate  # On Windows: .venv\Scripts\activate
    pip install mcp requests python-dotenv pydantic
    
  3. 从https://harvardartmuseums.org/collections/api获取您的免费API密钥

  4. 创建一个 .env 项目根目录下的文件:

    HARVARD_ART_MUSEUMS_API_KEY=your_api_key_here
    

配置

Claude Desktop(可译为“Claude桌面版”或保持原样,若“Desktop”在此上下文中指明是桌面应用程序或版本,则翻译为“Claude桌面版”更为贴切)

将此配置添加到您的Claude桌面配置文件中:

MacOS/Linux(译文保持原样,因为“MacOS”和“Linux”本身就是英文,且在中文语境中通常直接使用,无需翻译): ~/Library/Application Support/Claude/claude_desktop_config.json

Windows: %APPDATA%\Claude\claude_desktop_config.json

{
  "mcpServers": {
    "harvard-art-museums": {
      "command": "python",
      "args": ["/absolute/path/to/harvard-art-museums/server.py"],
      "env": {
        "HARVARD_ART_MUSEUMS_API_KEY": "your_api_key_here"
      }
    }
  }
}

注确保使用绝对路径 server.py 如果需要,请包含你的虚拟环境中的 Python:

  • Windows(操作系统): "C:\\Users\\YourName\\path\\to\\harvard-art-museums\\.venv\\Scripts\\python.exe"
  • MacOS/Linux: "/Users/YourName/path/to/harvard-art-museums/.venv/bin/python"

其他MCP客户端

对于其他兼容MCP的客户端,请使用以下配置服务器:

  • 命令Python 可执行文件的路径(最好来自虚拟环境)
  • 论点;论据路径到 server.py
  • 环境设置 HARVARD_ART_MUSEUMS_API_KEY 到您的API密钥

使用示例

一旦连接到Claude Desktop,您就可以提出诸如以下问题:

  • “搜索莫奈的印象派画作”
  • “给我找一幅随机的日本艺术品”
  • “给我讲讲巴勃罗·毕加索”
  • “给我显示对象ID 299843的详细信息”

API速率限制

哈佛艺术博物馆API有以下限制:

  • 每个API密钥每天2,500次请求
  • 请负责任地使用,并在可能的情况下缓存结果

发展

服务器使用:

  • MCP SDK(MCP软件开发工具包) 用于模型上下文协议的实现
  • 请求: 用于HTTP API调用
  • Pydantic(注:这是一个专有名词,通常直接保留原样,不进行翻译,但在此提供其含义以作说明,即“一个用于数据验证和设置管理的Python库”) 用于数据验证
  • python-dotenv 用于环境变量管理

许可证

这个项目是开源的,并遵循MIT许可证发布。

资源