mcpField
M
MCPollinations Multimodal MCP Server

MCPollinations Multimodal MCP Server

本地服务
github.com/pinkpixel-dev媒体与设计3916 周前更新

关于 MCPollinations Multimodal MCP Server

MCPollinations 是一个通过 Pollinations API 为 AI 助手提供图像、文本和音频生成能力的 MCP 服务。它无需认证即可使用,支持自定义参数、图片保存及多种模型选择。该项目已归档,作者建议改用 Nectar-MCP。

主要功能

  1. 01根据文本提示生成图片 URL 或 base64 数据
  2. 02生成图片并保存为 png、jpeg、jpg 或 webp
  3. 03生成文本回复,可调整 temperature 与 top_p
  4. 04生成语音音频并选择声音
  5. 05列出可用的图像与文本模型

适用场景

  1. 01在 AI 助手对话中按提示词生成配图
  2. 02为应用生成语音回复或朗读文本
  3. 03通过 MCP 配置设定默认模型与输出目录

MCP 相关

该项目是 MCP 服务,向 MCP 客户端暴露图像、文本和音频生成相关工具,以及模型与语音列表查询工具。

配置

本地服务的配置在各客户端中通用,复制后粘贴到客户端的 MCP 配置文件即可。

mcp.json · 通用配置
{
"mcpServers": {
"MCPollinations": {
"command": "npx",
"args": [
"-y",
"@pinkpixel/mcpollinations"
]
}
}
}
启动命令npx -y @pinkpixel/mcpollinations

本地服务需要在你的电脑上安装运行环境(如 Node.js 18+)。各客户端的配置文件位置不同,请参考客户端文档。

安装包
npm@pinkpixel/mcpollinations

工具

9

收录的工具列表 · 更新于 3 周前

参数类型必填说明
promptstring是要生成的图像的文本描述
modelstring否用于生成的模型名称(默认值:用户配置或 "flux")。使用 listImageModels 查看所有可用模型
seednumber否用于获得可复现结果的种子值(默认值:随机)
widthnumber否生成图像的宽度(默认值:1024)
heightnumber否生成图像的高度(默认值:1024)
enhanceboolean否生成前是否使用 LLM 增强提示词(默认值:true)
safeboolean否是否应用内容过滤(默认值:false)

详细介绍

此服务因不再兼容 Pollinations 的新版 API,现已归档。请查看 Nectar-MCP,这是我新推出的 Pollinations MCP 服务,专用于图像生成、图像编辑和视频生成。

MCPollinations 多模态 MCP 服务

一种 Model Context Protocol(MCP)服务,可通过 Pollinations API 让 AI 助手生成图像、文本和音频。

smithery badge Verified on MseeP

功能

  • 根据文本提示词生成图像 URL
  • 生成图像并以 base64 编码数据形式返回,同时保存为 png、jpeg、jpg 或 webp 格式(默认:png)
  • 根据文本提示词生成文本回复
  • 根据文本提示词生成音频回复
  • 列出可用的图像和文本生成模型
  • 无需身份验证
  • 简单轻量
  • 兼容 Model Context Protocol(MCP)

系统要求

  • Node.js:版本 14.0.0 或更高
    • 为获得最佳性能,建议使用 Node.js 16.0.0 或更高版本
    • 低于 16 的 Node.js 版本使用 AbortController polyfill

快速开始

通过 Smithery 安装

通过 Smithery 自动为 Claude Desktop 安装 mcpollinations:

npx -y @smithery/cli install @pinkpixel-dev/mcpollinations --client claude

使用 MCP 服务最简单的方式:

# Run directly with npx (no installation required)
npx @pinkpixel/mcpollinations

如果你更喜欢全局安装:

# Install globally
npm install -g @pinkpixel/mcpollinations

# Run the server
mcpollinations
# or
npx @pinkpixel/mcpollinations

或者克隆此仓库:

# Clone the git repository
git clone https://github.com/pinkpixel-dev/mcpollinations.git
# Run the server
mcpollinations
# or
npx @pinkpixel/mcpollinations
# or run directly
node /path/to/MCPollinations/pollinations-mcp-server.js

MCP 集成

将此服务集成到支持 Model Context Protocol(MCP)的应用程序中:

  1. 生成 MCP 配置文件:
# If installed globally
npx @pinkpixel/mcpollinations generate-config

# Or run directly
node /path/to/MCPollinations/generate-mcp-config.js
快速 MCP 配置(env)

如果你想跳过生成器,请将以下内容复制到 MCP 客户端配置中:

{
  "mcpollinations": {
    "command": "npx",
    "args": ["-y", "@pinkpixel/mcpollinations"],
    "env": {
      "token": "YOUR_TOKEN_OPTIONAL",
      "referrer": "your-app-or-domain-optional",
      "IMAGE_MODEL": "flux",
      "IMAGE_WIDTH": "1024",
      "IMAGE_HEIGHT": "1024",
      "IMAGE_ENHANCE": "true",
      "IMAGE_SAFE": "false",
      "TEXT_MODEL": "openai",
      "TEXT_TEMPERATURE": "0.7",
      "TEXT_TOP_P": "0.9",
      "TEXT_SYSTEM": "",
      "AUDIO_VOICE": "alloy",
      "OUTPUT_DIR": "./mcpollinations-output"
    }
  }
}
  1. 按照提示自定义配置,或使用默认值。

    • 设置输出目录(建议使用相对路径,以便移植)
      • Windows 用户:考虑使用绝对路径(例如 C:\Users\YourName\Pictures\MCPollinations),以便更可靠地保存文件
    • 在 env 中配置可选身份验证(token、referrer)
    • 配置图像生成的默认参数(包括可用模型列表、尺寸等)
    • 配置文本生成的默认参数(包括可用模型列表)
    • 配置音频生成的默认参数(语音)
  2. 将生成的 mcp.json 文件复制到应用程序的 MCP 设置 .json 文件中。

  3. 重启应用程序。

集成后,你可以使用如下命令:

“使用 MCPollinations 生成一张海上日落的图像”

身份验证(可选)

MCPollinations 支持可选身份验证,以便使用更多模型并获得更高的速率限制。此服务无需身份验证即可正常运行(免费层级),但持有 API 令牌的用户可以获得增强访问权限。

配置方法

方法 1:环境变量(推荐,安全性更高)

# Set environment variables before running the server
export POLLINATIONS_TOKEN="your-api-token"
export POLLINATIONS_REFERRER="https://your-domain.com"

# Then run the server
npx @pinkpixel/mcpollinations

方法 2:MCP 配置文件(env) 生成 MCP 配置时,请将身份验证信息放在 env 中,以便 MCP 客户端将其作为环境变量传递给服务进程:

{
  "mcpollinations": {
    "command": "npx",
    "args": ["-y", "@pinkpixel/mcpollinations"],
    "env": {
      "token": "your-api-token",
      "referrer": "your-app-or-domain"
    }
  }
}

你也可以改为提供 POLLINATIONS_TOKEN 和 POLLINATIONS_REFERRER;此服务识别这两种形式。在 MCP 配置中,建议在 env 中使用 token 和 referrer。

身份验证参数
  • token(可选):你的 Pollinations API 令牌,可用于增强访问权限
  • referrer(可选):你的域名/应用程序来源 URL

这两个参数均为可选。留空或不设置即可使用免费层级。

使用配置设置

MCPollinations 会将你在 env 中设置的 MCP 配置作为默认值。在你要求 AI 助手生成内容时:

  • 自动使用你配置的模型、输出目录和参数
  • 覆盖设置:明确指示 AI 使用其他设置
    • “使用 kontext 模型生成图像”
    • “将此图像保存到我的桌面文件夹”
    • “此次文本生成使用 1.2 的温度”

指令示例:

  • ✅ “生成一张日落图像” → 使用你配置的模型和输出目录
  • ✅ “使用 flux 模型生成一张日落图像” → 仅覆盖模型
  • ✅ “生成一张日落图像并保存到 C:\Pictures” → 仅覆盖输出路径

这样可以确保始终遵循你的偏好,除非你明确要求针对某项请求使用不同设置。

故障排除

“AbortController is not defined”错误

如果运行 MCP 服务时遇到此错误:

ReferenceError: AbortController is not defined

这通常是因为使用了较旧版本的 Node.js(低于 16.0.0)。请尝试以下解决方案之一:

  1. 更新 Node.js(推荐):

    • 更新至 Node.js 16.0.0 或更高版本
  2. 使用全局安装

    • 将软件包更新至最新版本:
    npm install -g @pinkpixel/mcpollinations
    # Run with npx
    npx @pinkpixel/mcpollinations
    
  3. 手动安装 AbortController:

    • 如果出于某种原因 polyfill 无法使用:
    npm install node-abort-controller
    
检查 Node.js 版本

若要检查当前 Node.js 版本:

node --version

如果显示的版本低于 16.0.0,建议升级以获得最佳兼容性。

可用工具

MCP 服务提供以下工具:

图像生成工具
  1. generateImageUrl - 根据文本提示词生成图像 URL
  2. generateImage - 生成图像,以 base64 编码数据的形式返回,并默认保存到文件(PNG 格式)
  3. editImage - 全新! 根据文本提示词编辑或修改现有图像
  4. generateImageFromReference - 全新! 使用现有图像作为参考来生成新图像
  5. listImageModels - 列出可用于图像生成的模型
文本和音频工具
  1. respondText - 使用文本模型根据提示词生成文本回复(参数可自定义)
  2. respondAudio - 根据文本提示词生成音频回复(语音参数可自定义)
  3. listTextModels - 列出可用于文本生成的模型
  4. listAudioVoices - 列出所有可用于音频生成的语音

文本生成详情

可用参数

respondText 工具支持多个参数,可微调文本生成:

  • model:从可用的文本模型中选择(使用 listTextModels 查看当前选项)
  • temperature(0.0-2.0):控制输出的随机性
    • 较低的值(0.1-0.7)= 输出更集中、更确定
    • 较高的值(0.8-2.0)= 输出更有创意、随机性更强
  • top_p(0.0-1.0):通过核采样控制多样性
    • 较低的值 = 更聚焦于可能性较高的词元
    • 较高的值 = 考虑更多词元选项
  • system:用于引导模型行为和个性的系统提示词
自定义文本生成
// Example options for respondText
const options = {
  model: "openai",           // Model selection
  temperature: 0.7,          // Balanced creativity
  top_p: 0.9,               // High diversity
  system: "You are a helpful assistant that explains things clearly and concisely."
};
配置示例

在 MCP 配置中的 env 下设置默认值,以便服务自动使用这些设置:

{
  "mcpollinations": {
    "env": {
      "TEXT_MODEL": "openai",
      "TEXT_TEMPERATURE": "0.7",
      "TEXT_TOP_P": "0.9",
      "TEXT_SYSTEM": "You are a helpful coding assistant."
    }
  }
}

图生图生成(全新!)

MCPollinations 现已支持强大的图生图生成功能,提供两种专用工具:

editImage 工具

非常适合修改现有图像:

  • 移除对象:“从此图像中移除猫”
  • 添加元素:“在此场景中添加一只狗”
  • 更改背景:“将背景替换为群山”
  • 修改风格:“让光线更具戏剧性”
generateImageFromReference 工具

非常适合创建变体和新风格:

  • 风格迁移:“让这张照片看起来像一幅画”
  • 格式转换:“将其转换为卡通风格”
  • 创意变体:“创建一个未来风格的版本”
  • 艺术化诠释:“让它看起来像一幅素描”
支持的模型
  • kontext:针对图生图任务优化的专用模型
  • nanobanana:Google 的新模型,支持文生图和图生图
  • seedream:ByteDance 的新模型,支持文生图和图生图

多参考图:editImage 和 generateImageFromReference 的 imageUrl 参数可接受单个 URL 或 URL 数组。服务会将数组编码为 API 使用的逗号分隔 image 参数。图片顺序很重要;kontext 仅使用第一张图片,nanobanana 安全支持最多约 4 张参考图,seedream 最多支持 10 张。

重要提示:仅支持 URL。图生图工具需要可公开访问的 HTTP(S) URL。此 MCP 服务不支持本地文件路径、文件上传和 base64/data URL(它不会上传文件)。如果需要使用本地图片,请将其托管在可访问的位置(例如临时文件托管服务、对象存储或仓库中的原始链接),然后传入该 URL。

使用示例
// Edit an existing image
const editResult = await editImage(
  "change the background to a sunset beach",
  "https://example.com/photo.jpg",
  "nanobanana"  // or "kontext", "seedream"
);

// Generate from reference
const referenceResult = await generateImageFromReference(
  "make this into a watercolor painting",
  "https://example.com/photo.jpg",
  "seedream"  // or "kontext", "nanobanana"
);

图像生成详情

默认行为

使用 generateImage 工具时:

  • 默认将图像保存到磁盘,格式为 PNG
  • 默认保存位置为 MCP 服务运行时所在的当前工作目录
  • 默认使用 'flux' 模型
  • 默认情况下,每张图像都会生成一个随机种子(确保图像多样)
  • 无论是否将图像保存到文件,都会返回 base64 编码的图像数据
自定义图像生成
// Example options for generateImage
const options = {
  // Model selection (defaults to 'flux')
  // Available models: "flux", "turbo", "kontext", "nanobanana", "seedream"
  model: "flux",

  // Image dimensions
  width: 1024,
  height: 1024,

  // Generation options
  seed: 12345,  // Specific seed for reproducibility (defaults to random)
  enhance: true,  // Enhance the prompt using an LLM before generating (defaults to true)
  safe: false,  // Content filtering (defaults to false)

  // File saving options
  saveToFile: true,  // Set to false to skip saving to disk
  outputPath: "/path/to/save/directory",  // Custom save location
  fileName: "my_custom_name",  // Without extension
  format: "png"  // png, jpeg, jpg, or webp
};
图像保存位置

在使用 Claude 或其他连接 MCP 服务的应用程序时:

  1. 图像会保存在 MCP 服务运行时所在的当前工作目录,而不是 Claude 或客户端应用程序的安装位置。

  2. 如果从特定目录手动启动 MCP 服务,图像默认会保存在该目录中。

  3. 如果 Claude Desktop 自动启动 MCP 服务,图像会保存在 Claude Desktop 的工作目录中(通常位于应用程序数据文件夹内)。

💡 Windows 用户:为确保在 Windows 上可靠保存文件,请在 MCP 配置中使用绝对路径,而不要使用相对路径(例如,使用 C:\Users\YourName\Pictures\MCPollinations,而不是 ./mcpollinations-output)。根据工作目录的上下文,相对路径可能无法按预期解析。

查找生成的图像
  • 生成图像后,Claude 的回复会包含图像保存位置的完整文件路径
  • 可以使用 outputPath 参数指定一个熟悉的位置
  • 最佳做法:让 Claude 将图像保存到易于访问的文件夹,例如“图片”或“下载”目录
唯一文件名

MCP 服务确保生成的图像始终使用唯一文件名,不会覆盖现有文件:

  1. 默认文件名包括:

    • 经净化处理的提示词版本(前 20 个字符)
    • 时间戳
    • 随机后缀
  2. 自定义文件名也会受到保护:

    • 如果指定的文件名已存在同名文件,系统会自动添加数字后缀
    • 例如:sunset.png、sunset_1.png、sunset_2.png 等

这意味着,你可以使用相同的提示词或文件名安全地生成多张图像,无需担心覆盖之前的图像。

访问 Base64 数据

即使图像已保存到文件,仍会始终返回 base64 编码的图像数据,可用于:

  • 在网页中嵌入图像(<img src="data:image/png;base64,..." />)
  • 传递给其他服务或 API
  • 在内存中处理,无需执行文件系统操作
  • 在支持数据 URI 的应用程序中显示

面向开发者

如果你想在自己的项目中使用此软件包:

# Install as a dependency
npm install @pinkpixel/mcpollinations

# Import in your code
import { generateImageUrl, generateImage, repsondText, respondAudio, listTextModels, listImageModels, listAudioVoices } from '@pinkpixel/mcpollinations';

评论

支持 Markdown

第一次接触 MCP?

从协议是什么,到在客户端里装上第一个服务,这几条回答覆盖了大多数入门问题。

一个开放协议,规定了 AI 应用如何以统一方式连接外部工具与数据源。客户端负责与模型对话,MCP 服务负责提供工具、资源和提示模板,两者通过标准消息通信,同一个服务可以被不同客户端复用。