关于 Phillips
为艺术品市场研究者提供 Phillips 拍卖成交信息的 MCP 服务。它按艺术家查询近期已成交拍品,并提供成交价、估价及拍品详情;结果覆盖页面显示的最近 24 件拍品。
主要功能
- 01按艺术家查询近期成交
- 02按类别筛选拍品
- 03返回成交价与估价范围
- 04获取单件拍品详情
适用场景
- 01查看艺术家的近期拍卖价格
- 02按部门或拍品关键词筛选结果
- 03核对拍品成交价和拍卖信息
MCP 相关
将 Phillips 拍卖结果搜索和拍品详情作为 MCP 工具提供,也可作为本地 stdio MCP 服务运行。
配置
远程服务无需本地安装。选择你使用的客户端,复制配置或使用一键安装。
https://gateway.pipeworx.io/phillips/mcpclaude mcp add --transport http pipeworx-io-phillips https://gateway.pipeworx.io/phillips/mcp{"mcpServers":{"pipeworx-io-phillips":{"type":"http","url":"https://gateway.pipeworx.io/phillips/mcp"}}}在 Cursor 中打开{"servers":{"pipeworx-io-phillips":{"type":"http","url":"https://gateway.pipeworx.io/phillips/mcp"}}}在 VS Code 中打开{"mcpServers":{"pipeworx-io-phillips":{"type":"http","url":"https://gateway.pipeworx.io/phillips/mcp"}}}{"mcpServers":{"pipeworx-io-phillips":{"serverUrl":"https://gateway.pipeworx.io/phillips/mcp"}}}命令在终端中运行;JSON 粘贴到对应客户端的 MCP 配置后重启。需要授权的服务会在首次连接时提示登录。
工具
详细介绍
@pipeworx/phillips
Phillips 的成交价——查询艺术家或制作者,获取其近期已成交拍品的实际支付价格(落槌价加买家佣金)、成交时的估价范围、货币、拍品和拍卖编号、拍卖厅、部门及拍卖日期;还可获取任意单件拍品的完整详情。
属于 Pipeworx——一个将 AI Agent 连接到 1683+ 个实时数据源的 MCP 网关。
工具
phillips_results_search(artist?, artist_id?, category?, include_upcoming?, limit?)— 查询一位制作者的成交价。通过 Phillips 自有的艺术家索引解析姓名,然后读取该制作者的艺术家页面。category是自由文本筛选条件,会与部门、拍卖厅、拍卖编号和拍品标题进行匹配(例如 "jewels"、"watches"、"editions"、"photographs"、"design"、"London")。传入先前结果中的artist_id可完全跳过姓名解析。phillips_lot_details(lot_id, slug?)— 获取单件拍品的完整详情,使用phillips_results_search结果中携带的lot_id作为键。会补充落槌价 (不含佣金)和完整拍卖名称。
工具名称有意添加拍卖行前缀。Bonhams 最先上线,使用了不带前缀的
results_search/lot_details;现在有三家艺术品拍卖行上线,这两个名称会在不同工具包之间冲突,而且
ask_pipeworx 路由也无法据此消除歧义。新的拍卖行工具包应继续使用 {house}_ 前缀。
身份验证
无需密钥。页面公开,无需登录。
数据来源
Phillips 的关键词搜索不允许爬虫访问——robots.txt(于
2026-09-05 检查)禁止访问 /Search、/search 和 /SEARCH,因此显而易见路径的这三种大小写形式都无法使用,/bin/、/phillips/otis 和
/*/filter/ 也一样。因此,此工具包完全不进行搜索,而是通过制作者查询,并使用 robots.txt 允许访问的三条路径:
https://www.phillips.com/sitemap.xml— 包含 13,031 个/artist/{makerId}/{name}URL。这是用于解析姓名的艺术家姓名 → makerId 索引。 每个 isolate 最多获取一次。其中的姓名经过百分号编码且经过 HTML 转义(Jennifer%20&%20Kevin%20McCoy);使用前要去掉这两层编码,否则生成的 URL 会被重复编码并返回 404。https://www.phillips.com/artist/{makerId}/{slug}— 艺术家落地页。 成交价由服务器在此处渲染,同样的数据行也以 JSON 形式包含在React.createElement(PhillipsReact.ArtistLanding, {...})水合属性中:maker属性是一个 JSON 字符串,其中包含pastLots {currentPage, totalPages, totalCount, resultsPerPage, data[]}。 每行包含hammerPlusBP(成交价)、lowEstimate、highEstimate、currencySign、saleNumber、lotNumber、objectNumber(拍品 ID)和auctionStartDateTimeOffset。未成交拍品的hammerPlusBP为0,这表示没有价格,而非价格为零。https://www.phillips.com/detail/{slug}/{objectNumber}— 拍品页面。
/artist/ 和 /detail/ URL 中的 {slug} 段只是装饰性内容——任何非空值都会解析到同一条记录,系统只读取数字 ID。
覆盖上限及原因
艺术家页面只提供一页已结束拍卖的拍品——24 行。第 2 页及后续页面由浏览器从另一个主机(api.phillips.com)获取,而且 HTML 页面本身没有可用于翻页的查询参数(已分别尝试 ?page=2、?p=2 和 ?pastLotsPage=2,但都返回第 1 页)。因此,
phillips_results_search 会返回最近的 24 件已结束拍卖的拍品,并同时报告
total_past_lots,以便调用方了解未能看到的档案数量——Banksy 返回 272 件中的 24 件,Patek Philippe 返回 3,728 件中的 24 件。
阅读拍品页面
拍品页面采用了与网站其余部分不同的技术栈(Remix;状态数据块是按键值排列的扁平数组,而非可寻址对象),因此此工具包会从三个位置读取数据,并优先采用渲染后的 HTML:
- JSON-LD
Product— 标题、制造商、图片、货币、已售/未售。请注意,offers.price是低估价,并非实际成交价;不要将其视为成交价。 - 渲染后的 HTML —
Sold For {cur}{amount}和Estimate {cur}{low}–{high}。估价必须从这里获取:状态数据块中唯一的lowEstimate/highEstimate键值对属于页面的货币换算表,因此读取它会得到一个看似合理、但货币错误的数字(某件实际估价为 £60,000–80,000 的拍品会显示为 HK$622,000–830,000)。 - 状态数据块,仅用于获取其他位置都没有的两个字段 —
hammerPrice和auctionStartDateTime。由于扁平数组中键与值不一定相邻,如果落槌价高于实际成交价,就会舍弃而不返回。
拍卖编号编码了部门和拍卖地点
拍卖编号格式为 {2-letter saleroom}{2-digit department}{2-digit sequence}{2-digit year}
— UK010526 表示伦敦、部门 01、第 05 场拍卖、2026 年。以下部门对应关系根据 /auctions/past 中列出的全部 892 场往届拍卖(截至 2026-09-05)推导并核对:01 现代与当代艺术,03 版画与纸本作品,04 摄影,05 设计,06 珠宝,07 版画、摄影与设计,08 腕表。00 和 09 不是部门 — 它们是跨部门举办的拍卖形式(特别拍卖/合作拍卖和在线拍卖),因此会标记为拍卖形式,而不会猜测其部门。已见拍卖地点代码:NY 纽约,UK 伦敦,HK 香港,CH/GE 日内瓦。
相关工具包
@pipeworx/bonhams 和 @pipeworx/sothebys 涵盖另外两家拍卖行的相同问题。Christie's 不在范围内(已关闭,使用内部 API)。
快速开始
添加到你的 MCP 客户端(Claude Desktop、Cursor、Windsurf 等):
{
"mcpServers": {
"phillips": {
"url": "https://gateway.pipeworx.io/phillips/mcp"
}
}
}
此端点实际提供的内容
https://gateway.pipeworx.io/phillips/mcp 上的 tools/list 会返回上表中的工具,以及共享的 Pipeworx 元工具 — ask_pipeworx、discover_tools、search_within、remember/recall 以及网关范围内的其余工具。因此,你看到的工具数量会多于表格中的数量:单个工具包端点目前会在该工具包自有工具之外列出大约 30 个共享工具。连接的 initialize 响应会说明其确切范围,这是了解特定日期工具范围的权威依据。
这是刻意设计的,并非意外的多路复用。元工具可以让限定范围的连接通过 ask_pipeworx 跨整个目录路由,从而回答本工具包无法涵盖的问题,而无需再添加第二个 MCP 服务。目前无法在不包含这些元工具的情况下挂载工具包端点;如果额外的架构定义消耗的上下文超过路由功能带来的价值,请改为只连接一次完整网关,而不是连接多个工具包端点。
也可以连接到完整的 Pipeworx 网关,直接获取每个工具包列出的所有工具,而不只是当前工具包的工具:
{
"mcpServers": {
"pipeworx": {
"url": "https://gateway.pipeworx.io/mcp"
}
}
}
两个 URL 都连接到同一个网关和相同的 1683+ 个数据源。唯一的区别是哪些工具包的工具会被直接列出;无论连接哪一个,ask_pipeworx 都可以访问所有工具。
没有 MCP 客户端?通过 HTTP 调用
curl -X POST https://gateway.pipeworx.io/v1/tools/phillips_results_search \
-H 'Content-Type: application/json' \
-d '{"artist":"Banksy","limit":5}'
首次调用无需账户。检查任意工具:GET https://gateway.pipeworx.io/v1/tools/phillips_results_search。查找工具:使用 {"query":"..."} 向 https://gateway.pipeworx.io/v1/tools/search_packs 发送 POST 请求。
独立运行(无需网关账户)
此软件包也可作为本地 stdio MCP 服务运行,无需 Pipeworx 账户,也无需经过网关往返:
{
"mcpServers": {
"phillips": {
"command": "npx",
"args": ["-y", "@pipeworx/mcp-phillips"]
}
}
}
也可以直接运行,确认它能正常启动:
npx -y @pipeworx/mcp-phillips
它通过 stdin/stdout 使用 MCP 通信,并针对仅限此软件包的工具响应 initialize/tools/list/tools/call——不包含上方网关连接所添加的任何共享元工具。相同的源代码,相同的工具,无需 ask_pipeworx 路由。
使用 ask_pipeworx
你也可以用通俗的英语提问,而不是直接调用工具——这既适用于上方的软件包端点,也适用于完整网关:
ask_pipeworx({ question: "your question about Phillips data" })
网关会选择合适的工具并自动填写参数。
更多信息
许可证
MIT
评论
一个开放协议,规定了 AI 应用如何以统一方式连接外部工具与数据源。客户端负责与模型对话,MCP 服务负责提供工具、资源和提示模板,两者通过标准消息通信,同一个服务可以被不同客户端复用。