rijksmuseum-mcp-plus
使用说明:
- 项目简介
- 这是一个完整的 MCP 服务器实现,能够托管艺术品相关的资源、注册并执行工具、定义并渲染提示模板,并通过 JSON-RPC 与 LLM 客户端进行交互。服务器支持标准化会话管理、能力声明以及多种传输协议(STDIO、HTTP),便于在本地或云端部署并与 Claude、Mistral、Jan.ai 等 MCP 客户端对接。
- 主要功能点
- 资源、工具与提示:在 MCP Server 上注册和暴露“资源(Resources)”、“工具(Tools)”与“提示模板(Prompts)”,以便 LLM 客户端按需调用。
- 数据能力与检索:内置 Rijksmuseum 的 vocab/iconclass/embedding 数据库访问,提供艺术品搜索、详情、图片查看、图像分析、发布时间线等能力。
- Prompts 渲染与应用:提供具备结构化输出的 Prompts,支持 LLM 的模板化对话。
- MCP App Viewer:通过应用资源提供内嵌/外部 Viewer,支持交互式图片查看与深度放大查看。
- JSON-RPC 通信:服务器端对外提供符合 MCP 标准的 JSON-RPC 请求/响应处理。
- 多传输模式:
- STDIO 模式:在本地以标准输入/输出进行 MCP 会话。
- HTTP 模式:通过 /mcp 接口暴露 MCP 服务,支持现代 Web 客户端连接。
- 认证占位与兼容性:提供 Claude 的 Stub OAuth 兼容,确保在无实际登录场景下也能快速连接 MCP 服务。
- 数据预热与缓存:对 vocab/iconclass/embeddings 进行缓存预热,提升首次查询性能。
- 安装与运行步骤
- 依赖准备
- 安装 Node.js 环境。
- 获取并安装仓库依赖(通常通过 npm 或 yarn 安装)。
- 需要的数据库文件(Vocabulary、Iconclass、Embeddings)应放置在默认路径或通过环境变量指定;若缺失,服务器会在运行时降级或提示下载。
- 构建与部署
- 将 TypeScript 源码编译为可执行的 JavaScript(dist 目录)。
- 构建前请确保 UI 资源可用(如果启用应用内 Viewer,需要执行前端 UI 的构建步骤以生成 dist/apps/index.html)。
- 运行模式选择
- STDIO 模式(本地/嵌入式工作流):直接运行服务器,将通过 STDIO 与 MCP 客户端建立连接。
- HTTP 模式(Web/UCI 集成):使用 --http 启动,或通过设置 PORT 环境变量来启用 HTTP 服务。
- 运行示例(不包含具体命令行代码,仅描述方式)
- 以 STDIO 模式启动:执行服务器的可执行入口,其输出即为 MCP 服务的对话通道。
- 以 HTTP 模式启动:在启动时加入参数配置以开启 HTTP 端口,客户端可通过 URL 连接 MCP 服务器并进行 JSON-RPC 调用。
- 服务器配置示例(供 MCP 客户端使用的连接配置,JSON 格式,客户端无需实现服务器端逻辑) { "server_name": "rijksmuseum-mcp+", "transport": "http", "command": "node", "args": ["dist/index.js", "--http"], "notes": "server_name 与仓库内固定名称保持一致;在HTTP模式下,客户端通过 HTTP JSON-RPC 连接到服务器的 /mcp 端点。若使用STDIO模式,将 command/args 替换为 STDIO Transport 的配置。" }
说明:
- server_name 与代码中定义的 MCP 服务器名称保持一致,确保客户端在能力协商阶段正确识别服务器。
- transport 指定传输模式,http 表示通过 HTTP 接入,若使用 STDIO,请使用 STDIO 传输配置。
- command 与 args 代表在客户端连接时需要启动服务器的命令以及参数(此处展示的是将服务器以 HTTP 模式运行的命令参数,实际部署时请按环境编排工具的要求提供)。
- 该配置仅用于 MCP 客户端连接,非服务器端实现细节。
- 基本使用方法
- 连接与对话
- 使用 Claude、Mistral、Jan.ai 等 MCP 客户端,配置连接信息后即可通过自然语言向服务器发出查询、获取资源、调用工具、渲染 Prompt 模板等请求。
- 常用操作
- 通过工具列表浏览 Rijksmuseum 的艺术品数据、查看艺术品详细信息、加载并查看高分辨率图片、在图像上执行区域分析等。
- 使用 Prompts(如生成艺术家时间线、查看 Iconclass 条目等)快速获得结构化输出或指导性回答。
- 监控与扩展
- 服务器内置 UsageStats、ResponseCache、日志输出等,便于性能与使用情况的监控。
- 支持在本地或云端进行数据预热、监控、以及对 Embeddings、Vocabulary、Iconclass 的扩展维护。
-
关键词 Rijksmuseum, 知识图谱, 向量检索, 图像查看, LLM 集成
-
分类ID 5