使用说明

项目简介

本项目 'Unsplash 图片搜索 MCP 服务器' 是一个实现了 Model Context Protocol (MCP) 的后端服务,它利用 Unsplash API 提供了强大的图片搜索功能。通过注册 'search_photos' 工具,LLM 客户端可以调用此服务来检索 Unsplash 上的高质量图片资源,从而增强 LLM 在图像理解和生成方面的能力。

主要功能点

  • 图片搜索工具 (search_photos): 允许用户通过关键词搜索 Unsplash 图库中的图片。支持多种搜索参数,如关键词、页码、每页数量、排序方式、颜色和图片方向等,满足多样化的搜索需求。
  • MCP 协议支持: 完全遵循 MCP 协议规范,能够与任何兼容 MCP 协议的 LLM 客户端进行无缝集成。
  • 标准化接口: 通过 JSON-RPC 协议进行通信,提供标准化的请求和响应格式,易于开发和集成。
  • 易于部署和配置: 使用 Go 语言开发,编译简单,配置灵活,可以通过环境变量进行 API 密钥等敏感信息的管理。

安装步骤

  1. 安装 Go 环境: 确保您的开发环境已安装 Go 语言环境 (版本 1.18 或更高)。
  2. 下载仓库代码: 使用 'git clone https://github.com/douglarek/unsplash-mcp-server' 命令将仓库代码克隆到本地。
  3. 构建服务器: 进入项目根目录,执行 'go build -o unsplash-mcp-server cmd/server/main.go' 命令编译生成可执行文件 'unsplash-mcp-server'。

服务器配置

为了让 MCP 客户端(例如 Cursor 编辑器)能够连接到 'Unsplash 图片搜索 MCP 服务器',您需要在客户端的 MCP 配置文件(通常是 'mcp.json')中添加以下服务器配置信息。请注意,您需要先在 Unsplash 开发者平台 (https://unsplash.com/developers) 申请 Access Key,并将其设置为环境变量 'UNSPLASH_ACCESS_KEY'。

{
  "mcpServers": {
    "unsplash": {
      "command": "<unsplash-mcp-server 可执行文件路径>",
      "args": [],
      "env": {
        "UNSPLASH_ACCESS_KEY": "<您的 Unsplash Access Key>"
      }
    }
  }
}

配置参数说明:

  • server name (unsplash): 为该 MCP 服务器指定一个名称,例如 'unsplash',客户端将使用此名称来引用该服务器。
  • command (<unsplash-mcp-server 可执行文件路径>): 指向您在安装步骤中构建生成的可执行文件 'unsplash-mcp-server' 的路径。请根据您的实际文件路径进行修改。
  • args ([]): 启动服务器时需要传递的命令行参数,本项目中无需额外参数,保持为空数组即可。
  • env (UNSPLASH_ACCESS_KEY: <您的 Unsplash Access Key>): 设置服务器运行所需的环境变量。 'UNSPLASH_ACCESS_KEY' 是必需的环境变量,您需要将其替换为您在 Unsplash 开发者平台申请到的 Access Key。

基本使用方法

  1. 启动服务器: 在配置好环境变量 'UNSPLASH_ACCESS_KEY' 后,直接运行编译生成的可执行文件 'unsplash-mcp-server' 即可启动 MCP 服务器。服务器默认通过 Stdio 协议与客户端通信。
  2. 客户端调用: 在兼容 MCP 协议的 LLM 客户端中,您可以使用 'unsplash.search_photos' 工具来搜索 Unsplash 图片。例如,在 Cursor 编辑器中,您可以通过自然语言指令或特定的工具调用语法来触发图片搜索,并利用搜索结果辅助编程或内容创作。

工具调用示例 (概念性,非具体代码):

假设客户端需要搜索关于 "编程" 的图片,并获取第一页的 10 张结果,可以向 MCP 服务器发送类似以下的工具调用请求:

{
  "jsonrpc": "2.0",
  "method": "call_tool",
  "params": {
    "tool_name": "unsplash.search_photos",
    "arguments": {
      "query": "programming",
      "page": 1,
      "per_page": 10
    }
  },
  "id": "some_request_id"
}

服务器将处理该请求,调用 Unsplash API 进行图片搜索,并将搜索结果以 JSON 格式返回给客户端。客户端可以解析返回的结果,并在 LLM 应用中使用这些图片信息。

信息

分类

网页与API