modelscope·@gzpaitch/Unsplash-MCP
一个以MCP工具形式提供Unsplash图片搜索、列表和随机照片功能的API,使像Claude这样的AI模型能够直接与Unsplash的服务进行交互。
Forked from unsplash-api by @aliosmankaya
该项目提供了一个访问 Unsplash 服务的 API,允许您搜索、列出和获取随机图片。此外,它还集成了 Model Context Protocol (MCP),使像 Claude 这样的 AI 模型能够直接与 Unsplash API 交互。
在使用 Unsplash API 之前,您需要:
.env 文件中将该密钥配置为 UNSPLASH_CLIENT_IDbash
git clone https://github.com/your-username/unsplash-api-mcp.git cd unsplash-api-mcp
pip install -r requirements.txt
cp .env.example .env
bash
git clone https://github.com/your-username/unsplash-api-mcp.git cd unsplash-api-mcp
cp .env.example .env
docker compose up -d
在项目根目录下创建一个 .env 文件,并包含以下内容:
UNSPLASH_CLIENT_ID=your_access_key_here
bash python main.py
API 将在 http://localhost:8000 可用。
bash docker compose up -d
API 将在 http://localhost:8000 可用。
访问交互式 API 文档,请访问 http://localhost:8000/docs。
用于在 Unsplash 上搜索图片的端点。
端点: /search
方法: GET
参数:
query: 搜索词(默认:"nature")page: 页码(默认:1)per_page: 每页的照片数量(默认:10)order_by: 照片排序方式(默认:"relevant",选项:"relevant", "latest")请求示例:
GET /search?query=mountains&page=1&per_page=5&order_by=latest
响应示例:
json [ { "alt_description": "山峦在多云天空下的景象", "created_at": "2023-05-15T12:34:56Z", "username": "摄影师姓名", "image_link": "https://images.unsplash.com/photo-...", "download_link": "https://unsplash.com/photos/...", "likes": 123 }, ... ]
用于从 Unsplash 主页列出照片的端点。
端点: /photos
方法: GET
参数:
page: 页码(默认:1)per_page: 每页的照片数量(默认:10)order_by: 照片排序方式(默认:"latest",选项:"latest", "oldest", "popular")请求示例:
GET /photos?page=1&per_page=5&order_by=popular
响应示例:
json [ { "alt_description": "日间山景", "created_at": "2023-06-20T10:15:30Z", "username": "摄影师姓名", "image_link": "https://images.unsplash.com/photo-...", "download_link": "https://unsplash.com/photos/...", "likes": 456 }, ... ]
用于从 Unsplash 获取随机照片的端点。
端点: /random方法: GET
参数:
query: 用于筛选随机照片的搜索词 (默认: "nature")count: 返回的照片数量 (默认: 1, 最大: 30)请求示例:
GET /random?query=ocean&count=3
响应示例:
json [ { "alt_description": "蓝色的海浪拍打着海岸", "created_at": "2023-04-10T08:45:22Z", "username": "摄影师姓名", "image_link": "https://images.unsplash.com/photo-...", "download_link": "https://unsplash.com/photos/...", "likes": 789 }, ... ]
有关 Unsplash API 的更多信息,请参阅官方文档。
Model Context Protocol (MCP) 是一种允许 AI 模型直接与 API 和服务交互的协议。此实现使用 FastAPI-MCP 将 Unsplash API 端点作为 MCP 工具暴露出来。
MCP 服务器位于 /mcp,并以 MCP 工具的形式暴露所有 API 端点:
支持 MCP 的 AI 模型可以通过以下方式连接到此 API:
对于 Claude,您可以在模型设置中或通过 API 配置连接。
您可以使用一个简单的 Python 客户端来测试 MCP 服务器:
python import requests
def test_mcp_metadata(): """测试 MCP 服务器是否正常工作。""" response = requests.get("http://localhost:8000/mcp/.well-known/mcp-metadata") if response.status_code == 200: print("MCP 服务器正常工作!") print(f"响应: {response.json()}") else: print(f"错误: {response.text}")
def list_mcp_tools(): """列出 MCP 服务器中的可用工具。""" response = requests.post( "http://localhost:8000/mcp/jsonrpc", json={ "jsonrpc": "2.0", "id": 1, "method": "mcp/list_tools" } ) if response.status_code == 200: print("可用的 MCP 工具:") for tool in response.json()["result"]["tools"]: print(f"- {tool['name']}: {tool['description']}") else: print(f"错误: {response.text}")
if name == "main": test_mcp_metadata() list_mcp_tools()
有关使用 MCP 的更多信息,请参阅 MCP_USAGE.md 文件。
要贡献开发:
pip install -r requirements.txt.env 文件python main.py本项目根据 MIT 许可证发布 - 详情请参见 LICENSE 文件。
快递100 MCP Server提供快递信息查询、快递运费预估比价、快递时效查询(含发货前时效查询与在途动态时效查询)等功能。
视频合成、剪辑、素材创作等一系列工具。支持图生视频、一张或多张图片合成视频、一个或多个视频合成视频、支持将配音、背景音乐等进行合成,支持字幕识别、字幕打轴等功能。
即梦AI全能力生成MCP服务是一个基于Model Context Protocol (MCP)的AI图像和视频生成工具,集成了火山引擎即梦AI的强大生成能力。
一个集成了Figma API的模型上下文协议服务器,允许与Figma文件、评论、组件、项目和webhook管理进行交互。
语言类型:英语 翻译结果:具有完整API功能的Figma MCP
您可以在支持MCP协议的AI模型客户端中搜索授权的高清商业视频素材。