关于 FrameAnyPhoto
FrameAnyPhoto 销售装裱的公有领域艺术作品和 NASA 照片,并为 AI 助手及其他 MCP 客户端提供远程目录与订购服务。客户端可比较打印选项、获取报价并生成 Stripe Checkout 链接,无需处理银行卡信息。
主要功能
- 01按标题、艺术家或关键词搜索作品
- 02比较打印尺寸、画框和价格
- 03计算税前订单总额
- 04创建 Stripe Checkout 链接
- 05查询付款和配送状态
适用场景
- 01查找符合主题的装裱作品
- 02比较某件作品的尺寸和画框
- 03下单前估算总价
- 04跟进结账和配送进度
MCP 相关
远程 MCP 服务向 MCP 客户端提供作品搜索、打印选项、政策、报价、结账和订单状态工具。结账工具返回 Stripe 链接,客户端不会处理银行卡信息。
配置
远程服务无需本地安装。选择你使用的客户端,复制配置或使用一键安装。
https://frameanyphoto.com/mcpclaude mcp add --transport http com-frameanyphoto-prints https://frameanyphoto.com/mcp{"mcpServers":{"com-frameanyphoto-prints":{"type":"http","url":"https://frameanyphoto.com/mcp"}}}在 Cursor 中打开{"servers":{"com-frameanyphoto-prints":{"type":"http","url":"https://frameanyphoto.com/mcp"}}}在 VS Code 中打开{"mcpServers":{"com-frameanyphoto-prints":{"type":"http","url":"https://frameanyphoto.com/mcp"}}}{"mcpServers":{"com-frameanyphoto-prints":{"serverUrl":"https://frameanyphoto.com/mcp"}}}命令在终端中运行;JSON 粘贴到对应客户端的 MCP 配置后重启。需要授权的服务会在首次连接时提示登录。
工具
8| 参数 | 类型 | 必填 | 说明 |
|---|---|---|---|
| limit | integer | 否 | |
| query | string | 是 | 搜索文本,例如 Bierstadt 或 Earthrise |
详细介绍
FrameAnyPhoto MCP 服务
让 AI 助手查找、询价和订购装框艺术版画。
FrameAnyPhoto 销售博物馆级装框版画,作品来自公有领域的经典名作和 NASA 摄影作品。这个远程 Model Context Protocol 服务让 Claude、ChatGPT、Cursor 和其他 MCP 客户端能够搜索目录、比较尺寸和画框、获取订单报价,并向买家提供安全的 Stripe Checkout 链接。
- 端点:
https://frameanyphoto.com/mcp - 传输方式: Streamable HTTP(JSON-RPC 2.0)
- 身份验证: 无需 API 密钥或账户
- 注册表: 官方 MCP Registry 中的
com.frameanyphoto/prints - 网站: https://frameanyphoto.com
Agent 不会看到或处理银行卡数据。create_checkout 会返回链接,买家通过 Stripe 付款。
快速开始
Claude Code
claude mcp add --transport http frameanyphoto https://frameanyphoto.com/mcp
Claude(桌面端和网页端)
前往 Settings → Connectors → Add custom connector,将其命名为 FrameAnyPhoto,然后粘贴 https://frameanyphoto.com/mcp。
对于不支持远程连接器的旧版 Claude Desktop,请将以下内容添加到 claude_desktop_config.json:
{
"mcpServers": {
"frameanyphoto": {
"command": "npx",
"args": ["-y", "mcp-remote", "https://frameanyphoto.com/mcp"]
}
}
}
Cursor
添加到 ~/.cursor/mcp.json(或项目中的 .cursor/mcp.json):
{
"mcpServers": {
"frameanyphoto": {
"url": "https://frameanyphoto.com/mcp"
}
}
}
VS Code(GitHub Copilot)
添加到 .vscode/mcp.json:
{
"servers": {
"frameanyphoto": {
"type": "http",
"url": "https://frameanyphoto.com/mcp"
}
}
}
ChatGPT
启用开发者模式后,打开 Settings → Apps & Connectors → Create,将其命名为 FrameAnyPhoto,将 URL 设为 https://frameanyphoto.com/mcp,并选择 No authentication。
其他客户端
使用 Streamable HTTP 传输方式,将其指向 https://frameanyphoto.com/mcp。
工具
| 工具 | 功能 | 只读 |
|---|---|---|
search_works | 按标题、艺术家、系列、NASA ID 或关键词搜索。结果按扫描分辨率(PPI)排序。 | 是 |
get_work | 根据 id、标题、藏品编号或 NASA ID 查询单件作品。 | 是 |
list_series | 返回合集列表(风景、NASA 太空飞行、帆船等)及作品数量。 | 是 |
get_policies | 以 JSON 格式返回配送、退货、付款、税费和联系政策。 | 是 |
get_print_options | 返回单件作品的尺寸、画框和价格。尺寸上限由扫描分辨率决定(最低 100 PPI)。 | 是 |
quote_order | 返回税前单价、小计、运费和总计,以及政策摘要。 | 是 |
create_checkout | 创建 Stripe Checkout 链接,并返回 checkout_url 和 order_ref。不会扣款。设有速率限制。 | 否 |
get_order_status | 返回 order_ref 对应的结账、付款和配送状态。不返回个人数据。 | 是 |
完整输入架构见 tools.json(服务自身的 tools/list 响应)。
输入架构一览
search_works { query: string, limit?: 1-25 = 12 }
get_work { query: string }
list_series { }
get_policies { }
get_print_options { work: string }
quote_order { work: string, size?: string, frame?: string, quantity?: 1-6 = 1,
ship_to?: { country?: "US", state?: string, zip?: string } }
create_checkout { work: string, size?: string, frame?: string, quantity?: 1-6 = 1, email?: string }
get_order_status { order_ref: string }
work 接受来自 search_works 的 ascii_id slug(首选)、作品 id、/w/ URL、准确标题、藏品编号或 NASA ID。size 接受 size_id(例如 24x24)或 Small、Medium、Large。frame 接受来自 get_print_options 的 frame_id。
Agent 典型工作流
search_works { "query": "Earthrise" }查找作品及其ascii_id。get_print_options { "work": "earthrise" }列出尺寸、画框和价格。quote_order { "work": "earthrise", "size": "Medium" }返回税前总价。create_checkout { "work": "earthrise", "size": "Medium" }向买家返回 Stripe Checkout 链接。get_order_status { "order_ref": "…" }查询付款和配送状态。
调用示例
使用 curl 发送原始 JSON-RPC 请求(参见 examples/curl.sh):
curl -s -X POST https://frameanyphoto.com/mcp \
-H 'content-type: application/json' \
-H 'accept: application/json, text/event-stream' \
-d '{"jsonrpc":"2.0","id":1,"method":"tools/call","params":{"name":"search_works","arguments":{"query":"Earthrise","limit":1}}}'
[{"id":"AP–as08-14-2383","ascii_id":"earthrise","title":"Earthrise","artist":"NASA / Bill Anders","year":"1968",
"series":"spaceflight","ppi":2532,"pixels":"5584 × 5584 px",
"image":"https://media.frameanyphoto.com/art/earthrise.jpg",
"recordUrl":"https://images.nasa.gov/details/as08-14-2383","repositoryName":"NASA Image and Video Library"}]
quote_order { "work": "earthrise", "size": "Medium" } 返回(已删节):
{"size":"Medium (24 × 24 in)","frame":"Black Metallic","unit_price_cents":15000,"shipping_cents":0,
"total_before_tax_cents":15000,"ships_to":["US"],
"tax":"Sales tax is added by Stripe Checkout from the shipping address."}
使用官方 SDK 的 Node.js 示例(参见 examples/client.mjs):
cd examples && npm install && node client.mjs Venice
Tools: search_works, get_work, list_series, get_policies, get_print_options, quote_order, create_checkout, get_order_status
Top matches for "Venice":
- The Entrance to the Grand Canal, Venice (Canaletto, c. 1730) -> https://frameanyphoto.com/w/ct-canaletto-grand-canal
- Venice with San Giorgio Maggiore in the Moonlight (Henry Pether, by 1865) -> https://frameanyphoto.com/w/hp-san-giorgio-maggiore-moonlight
...
示例提示词
- “帮我找一张装框的月光下的威尼斯版画,价格低于 200 美元。”
- “FrameAnyPhoto 为《地出》提供哪些尺寸和画框?”
- “帮我获取一张中号阿波罗 11 号版画(配黑色画框)的结账链接。”
- “为海滨别墅推荐海洋主题艺术品,并报价两个选项。”
商店政策
- 仅向美国地址免费配送,14–21 天送达
- 30 天退款退货,可通过邮寄办理(退货运费由买家承担)
- 使用 Stripe Checkout 付款;美国销售税将在结账时加收
- 价格包含画框和运费
机器可读版本:https://frameanyphoto.com/.well-known/policies.json
MCP Registry 条目
server.json 是发布到官方 MCP Registry 的条目,名称为 com.frameanyphoto/prints。
关于此存储库
此存储库介绍托管的 FrameAnyPhoto MCP 服务,发布其 TypeScript 源代码于 src/(包括 JSON-RPC 处理程序、工具架构和订单工具),并附带少量客户端示例。服务本身运行在 https://frameanyphoto.com/mcp,因此无需安装或托管。
联系方式
- 网站:https://frameanyphoto.com
- 电子邮件:[email protected]
- Issues:在此存储库中创建一个 issue
许可证
评论
一个开放协议,规定了 AI 应用如何以统一方式连接外部工具与数据源。客户端负责与模型对话,MCP 服务负责提供工具、资源和提示模板,两者通过标准消息通信,同一个服务可以被不同客户端复用。