Machines

io.github.pollinationsPublished by GitHub account pollinationsv1.1.0Updated Nov 3, 2026

Start, pause, resume, and run commands and file operations in Linux sandboxes.

VerifiedStreamable HTTPWeb executable

Overview

Machines's hosted MCP server (gen.pollinations.ai); OAuth sign-in or API key required; Streamable HTTP.

No AI overview yet: these facts come from the registry entry and the server itself.

Endpoint
gen.pollinations.ai
Documentation
gen.pollinations.ai
Last checked

Installation

In SourceWeft

  1. Open Machines in the dashboard and add it to a workspace.
  2. Connect the required credentials. They are stored privately and never shown on public pages.
  3. Enable the server for the chats that should use its tools.

Web executable via Streamable HTTP. Remote servers run from the web runtime once configured in a workspace.

Use with an agent

Paste this prompt into Claude Code, Codex, Cursor or another agent — or into SourceWeft chat. The agent reads this server's install guide, shows you its publisher, endpoint and sign-in, and adds it to your client once you agree. Keys never go into a command.

Read https://sourceweft.com/mcp/io.github.pollinations%2Fmachines/install.md and connect the MCP server it describes to my client. Before changing any config, show me its publisher, endpoint and sign-in method and wait for my OK. Never put an API key in a command or in a file I would commit; ask me where it should come from.

Read the install guide the agent follows

Other MCP clients

Add this to your client's mcpServers config. The client completes OAuth sign-in on first connect.

{
  "mcpServers": {
    "machines": {
      "type": "http",
      "url": "https://gen.pollinations.ai/mcp/machines"
    }
  }
}

README

[pollinations.ai]

Open-source AI for people who make things.

[Stars] [License] [Discord]

Website · Dashboard · Playground · Guides · API Docs · Discord

[Pixel art cozy hackerspace: robot at terminal, nomnom creature eating code, bee with glasses]

🆕 Recent Apps

NameDescriptionAuthor
🎮 2048 AI Edition2048 AI Edition is a single-file browser game that integrates Pollinations AI. The "AI Skin" button calls the flux-2-dev-free image model to generate custom game themes on demand; the "AI Hint" button@boofan126
🖼️ Chatbot v2This app only ai assistant@amancrypto12-pixel
🖼️ Polli Snap - Text to Image Meme MakerA fast text-to-image meme generator. Type a prompt and instantly get a generated image with quick meme presets. Built directly on the Pollinations image API (flux). Live public app, no login required.@mhmdrizzzki
🛠️ WebsimGenerate, preview, and download single-file HTML pages using Pollinations models and your own Pollen.@pollinations-ai
🖼️ Image RemixUpload a photo (PNG, JPEG or WebP) and describe the change, or pick an idea such as "Winter night" or "Watercolor painting". A Pollinations image-editing model returns the edited image at the source's@danhquach
🛠️ Screenshot to Bug ReportPaste, drop or upload a screenshot and add rough notes. The community prompt agent community/danhquach/bug-report-writer reads the screenshot and writes a clean Markdown bug report: title, what happen@danhquach
🖼️ Prompt to ImageType a rough image idea and pick a style. The community prompt agent community/danhquach/prompt-enhancer expands it into a detailed prompt, which you can edit, and a Pollinations image model renders i@danhquach
🎬 Reel Hook GeneratorType a reel topic and get five scroll-stopping hooks in different styles (curiosity gap, shock fact, direct question, bold claim, mini story), each read aloud with Pollinations text-to-speech so you c@anojan-va
🎮 Tiny Fighter ArenaDescribe a fighter in one line, the AI designs the whole thing from it, then sends it into a short commentated battle up a five-rung ladder. One line in ( a shy storm cloud that apologises before it s@kreggscode
💬 Radio BloomRadio Bloom is a duplicate-ready voice character playground. Visitors sign in with their own Pollen, then speak or type to three AI characters powered by Pollinations chat, transcription, and voice mo@ismailbanouigu

Browse all apps →

🚀 Unified API

https://gen.pollinations.ai provides one API for text, images, audio, video, 3D, and embeddings.

What's Included

  • Unified endpoint: single API at gen.pollinations.ai for all generation
  • Pollen credits: simple pay-as-you-go system ($1 ≈ 1 Pollen)
  • All models, one place: Flux, GPT, Claude, Gemini, Seedream, and more
  • API keys: secret keys for model usage, app keys for tracking BYOP apps.
  • CLI: npx @pollinations/cli for humans and AI agents (source)

Get started at enter.pollinations.ai and check out the API docs

🆕 Latest News

  • [Feature] Clearer community model results Nov 2
    The Trust tab labels community models that error on more than half their eval questions as "endpoint errors" instead of showing a score gap. Score comparisons use answered questions as well as published scores.
  • [Feature] Model alerts reach their publishers Nov 2
    Community Watch sends a separate Discord message for each model incident and pings the publisher's linked Discord account when available. Each message points to the model it concerns.
  • [Feature] Usage and earnings together Nov 1
    Explore Usage and Earnings in one Activity view. Switch metrics, filter by model or key, inspect chart and table data, and export CSV.
  • [Feature] Claimable Quests come first Nov 1
    Claimable Quests now appear at the top with a prominent Claim button. Open and completed Quests follow in that order.
  • [Feature] Community model checks Nov 1
    Scheduled probes check public community text and image models with little traffic or poor health. Owners can get warnings for repeated model errors or frequent fallback rescues.
  • [Feature] A clearer My Apps view Oct 31
    Browse your apps in a card grid with 24-hour request counts beside their titles. The grid uses two columns on wider screens and one on phones.
  • [Feature] Community model leaderboards Oct 31
    Daily text and image boards show usage, speed, and success rates for public community models over the previous 24 hours. Text rankings require at least 50 requests per model; image rankings require at least 10.
  • [Feature] Community model status notices Oct 31
    Community Watch posts when a listed community model relies substantially on fallbacks or moves in or out of model listings. A filtered model remains callable by its exact ID.
  • [Feature] Request a Setup reward review Oct 31
    If your Setup Quest rewards are on hold, you can request an account review from the dashboard and see whether it is pending or declined. Other Quest rewards remain claimable.
  • [Feature] Verify a published Site Oct 30
    Run polli sites deploy --verify to publish a Site, then check that every public file matches your local build. A failed check exits nonzero, but the Site remains published.

More news on enter.pollinations.ai →


🌱 Introduction

pollinations.ai is an open-source generative AI platform based in Berlin, used by 500+ community projects. It provides APIs for text, image, video, audio, 3D, and embeddings generation. Our code and development discussions are public. Supporters help fund the project.

[Star History Chart]

🚀 Key Features

  • 🔓 100% Open Source: code, decisions, roadmap all public
  • 🤝 Community-Built: 500+ projects already using our APIs
  • 🌱 Pollen Quests: earn Pollen by completing Quests
  • 🖼️ Image Generation: Text-to-image and image editing
  • 📝 Text Generation: Chat, reasoning, vision, function calling, structured outputs
  • 🎬 Video Generation: Text-to-video and image-to-video
  • 🎵 Audio: Text-to-speech and speech-to-text
  • 🧊 3D Generation: Text-to-3D and image-to-3D
  • 🎙️ Real-time API: OpenAI-compatible WebSocket for streaming conversations
  • 🔢 Embeddings Creation: Semantic search, retrieval, similarity matching
  • 🤖 Managed Agents: Turn a prompt, base model, and optional Pollinations tools into a reusable model
  • 📦 Sandboxes: Cloud Linux computers for you or your agents, opened with SSH or VS Code
  • 🌐 Sites: Free static hosting at <name>.pollinations.app
  • 🎣 Easy-to-use Packages (Packages)

Guides

GuidePurpose
Pollinations Pay (BYOP)Let users pay with their own Pollen
Publish an AgentPublish a hosted agent
Publish a ModelConnect your model endpoint
SandboxesRun code in a virtual machine
SitesHost a static site at .pollinations.app
Coding HarnessesConnect a coding assistant
MCP ServersGive agents access to tools
CLIUse Pollinations from a terminal

🤖 Managed Agents

Build a reusable text agent without hosting an agent server. Choose a system prompt and base model, optionally give it Pollinations tools, then call it through the same OpenAI-compatible API as any other model.

  • Private or public: keep an agent owner-only or publish it after receiving community publisher access.
  • Normal model API: call a registered agent by its owner/agent-name model ID.
  • Dashboard, CLI, or API: manage agents in My Models, with polli agents, or through /account/agents.

See Publish an Agent for setup and billing behavior.

🛠️ Coding Harnesses

Run tools such as Bloom CLI, DeepSeek Harness, Hermes Agent, Mistral Vibe, OpenCode, Pi, Prime Agent, and tgpt on Pollinations models. polli harness edits the tool's own config so it calls Pollinations with a dedicated key, and restores it on off.

bash
npx @pollinations/cli harness dsh on

See Coding Harnesses for supported harnesses and how to add one.

🧩 Community Models

Community members connect their own OpenAI-compatible text, image, image-editing, and speech-to-text endpoints to Pollinations.

  • Host your own model: follow Publish a Model to test and register an upstream endpoint, then keep it private or publish it to the catalog.
  • Automatic fallback routing: nominate up to three compatible backup models so generations keep moving when an upstream model goes down.
  • Discover and monitor: browse community models via gen.pollinations.ai/v1/models and watch live health and community leaderboards at model-monitor.pollinations.ai.

For billing details when building apps on top, see Pollinations Pay.

🚀 Getting Started

[Ask DeepWiki]

Quick Start (3 Steps)

1️⃣ Get your API key
Sign up at enter.pollinations.ai to generate your key.

2️⃣ Choose what you want to generate
Pollinations supports:

  • 🖼 Images
  • 📝 Text
  • 🔊 Audio
  • 🎬 Video
  • 🧊 3D
  • 🔢 Embeddings

3️⃣ Make your first request
Use one of the examples below to generate your first AI output in seconds.

Image Generation

bash
curl -H "Authorization: Bearer YOUR_API_KEY" 'https://gen.pollinations.ai/image/a%20beautiful%20sunset' -o image.jpg

Or visit pollinations.ai/play for an interactive experience.

Text Generation

bash
curl 'https://gen.pollinations.ai/text/Hello%20world?key=YOUR_API_KEY'

Audio Generation

Simple GET endpoint:

bash
curl 'https://gen.pollinations.ai/audio/Hello%20from%20Pollinations?voice=nova&key=YOUR_API_KEY' -o speech.mp3

OpenAI TTS compatible:

bash
curl 'https://gen.pollinations.ai/v1/audio/speech' \  -H 'Content-Type: application/json' \  -H 'Authorization: Bearer YOUR_API_KEY' \  -d '{"model": "openai/tts-1", "input": "Hello from Pollinations!", "voice": "nova"}' \  -o speech.mp3

Available voices: alloy, echo, fable, onyx, nova, shimmer, plus 30+ ElevenLabs voices.

Speech-to-text:

bash
curl 'https://gen.pollinations.ai/v1/audio/transcriptions' \  -H "Authorization: Bearer YOUR_API_KEY" \  -F [email protected] \  -F model=openai/whisper-large-v3

Video Generation

bash
curl 'https://gen.pollinations.ai/video/a%20sunset%20timelapse%20over%20the%20ocean?key=YOUR_API_KEY' -o video.mp4

Use duration to set video length, aspectRatio for orientation, and image[0]/image[1] to pass start/end reference frames. See available video models and capabilities at gen.pollinations.ai/video/models.

3D Generation

bash
curl 'https://gen.pollinations.ai/3d/a%20low-poly%20treasure%20chest?model=microsoft/trellis-2&resolution=low&key=YOUR_API_KEY&image=IMAGE_URL' -o model.glb

Pass reference image URL(s) via the image parameter for image-to-3D models (put image= last in the URL, or URL-encode it). See available 3D models at gen.pollinations.ai/3d/models.

Embeddings

bash
curl 'https://gen.pollinations.ai/v1/embeddings' \  -H 'Content-Type: application/json' \  -H 'Authorization: Bearer YOUR_API_KEY' \  -d '{"model": "openai/text-embedding-3-small", "input": "Hello world!"}'

Pass a string or an array of up to 32 strings (text or multimodal content parts). See available embedding models at gen.pollinations.ai/embeddings/models.

Pollinations CLI

Generate text, images, audio, video, and more right from your terminal:

bash
npx @pollinations/cli gen image "cyberpunk city at night" --model black-forest-labs/flux.1-schnell --output city.pngnpx @pollinations/cli gen text "Explain quantum tunneling in one sentence"npx @pollinations/cli gen audio "Hello world" --voice nova --output speech.mp3npx @pollinations/cli gen video "a waterfall in slow motion" --duration 5 --output clip.mp4npx @pollinations/cli gen transcribe speech.mp3

Install globally and use the shorter polli command: npm install -g @pollinations/cli. Run polli models to list models, polli auth login to authenticate, and polli docs for the full API reference in your terminal.

Real-time API

Stream AI responses over an OpenAI-compatible WebSocket:

wss://gen.pollinations.ai/v1/realtime?model=openai/gpt-realtime-2.1&key=sk_YOUR_API_KEY

Browser clients pass a user-authorized key from Pollinations Pay as a query parameter (?key=); server clients can use the Authorization: Bearer header instead.

MCP Servers

Connect Streamable HTTP clients to the hosted Pollinations MCP server:

text
https://gen.pollinations.ai/mcp/pollinations

Send your Pollinations API key as an Authorization: Bearer header. See the MCP Servers documentation for the full hosted catalog.

🔐 Authentication

Get your API key at enter.pollinations.ai

Key Types

KeyPrefixUse CaseRate LimitsStatus
App Keypk_Identifies your app in Pollinations ConnectCan't authenticate requestsStable
Secretsk_Server-side onlyNo rate limitsStable

⚠️ Never expose sk_ keys in client-side code, git repos, or public URLs

💡 Building an app? Use Pollinations Pay: users pay for their own usage, you pay $0

Model Restrictions

Each API key can be scoped to model categories or specific models. When creating a key at enter.pollinations.ai, you can:

  • Allow all models: key works with any available model
  • Restrict to categories: e.g. only image, or image and text. A key allows every model in its categories, including models added later
  • Restrict to specific models: through the API or polli keys update <id> --models black-forest-labs/flux.1-schnell tongyi-mai/z-image-turbo; a model ID allows only that model

Usage

bash
curl 'https://gen.pollinations.ai/image/a%20cat?key=YOUR_KEY'

Environment variable (best practice):

bash
export POLLINATIONS_API_KEY=sk_...

See full API docs for detailed authentication information.

🖥️ How to Use

Web Interface

Visit the playground to generate content in your browser.

Here are some examples of what you can generate:

[Pixel art robot and bee in a cozy digital garden: Stardew Valley style]

[Robot holding generated image saying I CAN SEE, nomnom creature eating prompt text]

🛠️ Integration

SDK

Check out our Pollinations SDK for Node.js, browser, and React integration.

OpenAI SDK Compatibility

The API is OpenAI-compatible. Set the base URL in an official OpenAI SDK to https://gen.pollinations.ai/v1.

Node.js:

javascript
import OpenAI from "openai";
const client = new OpenAI({  baseURL: "https://gen.pollinations.ai/v1",  apiKey: "YOUR_API_KEY",});
const response = await client.chat.completions.create({  model: "openai/gpt-5.4-nano",  messages: [{ role: "user", content: "Hello!" }],});console.log(response.choices[0].message.content);

Python:

python
from openai import OpenAI
client = OpenAI(base_url="https://gen.pollinations.ai/v1", api_key="YOUR_API_KEY")
response = client.chat.completions.create(    model="openai/gpt-5.4-nano",    messages=[{"role": "user", "content": "Hello!"}],)print(response.choices[0].message.content)

Other OpenAI SDKs work too: Go, Java, .NET, Rust (async-openai, community), plus compatible frameworks like Vercel AI SDK.

Vercel AI SDK:

typescript
import { createOpenAICompatible } from "@ai-sdk/openai-compatible";import { generateText } from "ai";
const pollinations = createOpenAICompatible({  name: "pollinations",  baseURL: "https://gen.pollinations.ai/v1",  apiKey: "YOUR_API_KEY",});
const { text } = await generateText({  model: pollinations.chatModel("openai/gpt-5.4-nano"),  prompt: "Hello!",});console.log(text);

Streaming, image, and embedding examples: API docs → Vercel AI SDK.

Architecture

mermaid
%%{init: {'theme': 'dark', 'themeVariables': { 'background': '#1a1a1a', 'primaryColor': '#2a2a2a', 'primaryBorderColor': '#555555', 'primaryTextColor': '#eeeeee', 'lineColor': '#00e5ff', 'clusterBkg': 'transparent', 'clusterBorder': '#888888', 'fontSize': '13px', 'fontFamily': 'Inter, system-ui, sans-serif'}}}%%
graph LR    subgraph CLIENTS["Clients / Apps"]        Q[Bots - Discord, Telegram, WhatsApp]        N[30+ Mobile and Web Apps]        A[pollinations.ai Web Frontend]        R[AI Agents - Qwen, Sillytavern, ...]        AI[AI Assistants - Claude]        MCP[MCP Server]    end
    AI --> MCP    Q --> GEN    N --> GEN    A --> GEN    R --> GEN    MCP --> GEN
    GEN["gen.pollinations.ai: Edge Router + Generation Worker"]:::cfWorker -->|auth and billing| ENTER["enter.pollinations.ai: Auth Gateway + Billing"]:::cfWorker
    GEN --> IMG["Image: gen Worker dispatch to providers / GPU backends"]:::cfWorkerLight    IMG --> D["Flux, Z-Image, Seedream, ...: GPU VMs"]:::gpuNode
    GEN --> TXT["Text: Portkey multi-provider"]:::provider    GEN --> VID["Video: Wan / Veo / Seedance"]:::provider    GEN --> AUD["Audio: ElevenLabs / OVH (Whisper)"]:::provider
    style CLIENTS fill:none,stroke:#888,stroke-width:2px,stroke-dasharray: 5 5
    linkStyle default stroke-width:3px,stroke:#00E5FF
    classDef cfWorker fill:#E65100,color:#fff,stroke:#FFB300,stroke-width:2px,font-weight:bold    classDef cfWorkerLight fill:#BF360C,color:#fff,stroke:#FFB300,stroke-width:1px    classDef gpuNode fill:#064E3B,stroke:#34D399,color:#ECFDF5,stroke-width:2px    classDef provider fill:#1E3A8A,stroke:#60A5FA,color:#EFF6FF,stroke-width:1px

🔮 Future Developments

We're exploring:

  • Digital Twins: Creating interactive AI-driven avatars
  • Music Video Generation: Combining AI-generated visuals with music
  • Real-time AI-driven Visual Experiences: Projects like our Dreamachine

🌍 Our Vision

We want AI tools to be:

  • Open & Accessible: Earn Pollen by contributing, without a credit card

  • Transparent & Ethical: Inspect our code and discuss how the platform works

  • Community-Driven: Build tools with other developers, creators, and AI enthusiasts

  • Interconnected: Combine models and services through shared APIs

  • Evolving: Add new capabilities while keeping the platform open and accessible

🤝 Community and Development

You can contribute to pollinations.ai in several ways:

  1. Coding Assistant: Create a GitHub issue describing a feature for the Polli assistant to work on. You can propose a change without writing code.

  2. Project Submissions: Have you built something with pollinations.ai? Use our app submission template to share it with the community and get it featured in our README.

  3. Feature Requests & Bug Reports: Have an idea or found a bug? Open an issue and let us know. Our team and the Polli assistant will review it.

  4. Community Engagement: Join our Discord community to:

    • Share your creations
    • Get support and help others
    • Collaborate with fellow AI enthusiasts
    • Discuss feature ideas before creating issues

For any questions or support, please visit our Discord channel or create an issue on our GitHub repository.

🗂️ Project Structure

The main folders are:

  • pollinations.ai/: The main React application for the Pollinations.ai website.

  • gen.pollinations.ai/: Cloudflare Worker for API routing, auth handoff, text generation, and caching.

  • enter.pollinations.ai/: Auth gateway and billing: API keys, Pollen credits, and pack checkout.

  • shared/: Auth, model registries, IP queue, and utilities shared across the services.

  • apps/: Applications maintained in this repository.

  • operations/: Internal dashboards, monitoring, economics, and infrastructure, including the GPU fleet.

  • media.pollinations.ai/: Media upload service: upload files and get a URL to use with Pollinations models, with public tag galleries.

  • operations/news/: Automated social media pipeline (X, LinkedIn, Instagram, Reddit, Discord).

  • packages/polli-cli/: The Pollinations CLI for people and AI agents.

  • packages/sdk/: SDK NPM library with pollinations ready functions for Pollinations.ai.

  • packages/mcp/: Model Context Protocol (MCP) server for AI assistants like Claude to generate images directly.

  • opencode-pollinations-plugin: A community plugin that connects OpenCode to Pollinations models, built by @fkom13.

For development setup and environment management, see DEVELOP.md.

🏢 Supported By

pollinations.ai is supported by:

[Pixel art garden shelf: supporter plants in labeled pots, robot watering, bee with watering can]

💚 Support Us

The best way to support pollinations.ai is by using our product! Get your API key and start building at enter.pollinations.ai.

📣 Stay Connected

Status · News & FAQ · 𝕏 Twitter · Instagram · LinkedIn · Facebook · Reddit · YouTube

📜 License

pollinations.ai is open-source software licensed under the MIT license.


Made with ❤️ by the pollinations.ai team

Source: README.md at commit e4b6823

Tools

0
This server asks you to sign in, so SourceWeft could not read its tools without an account and has not indexed them. What a connected account sees can depend on that account and its permissions.

Version history

1
  1. v1.1.0LatestNov 3, 2026

Score

85% of the applicable checks met

How complete this listing is, computed from the registry entry, the endpoint and public sources. Not a rating of the server and not a statement that it is safe or working today: reachability is a dated check, and no installs or reviews go into the score.

  • Reached in the last 30 daysRequired25 pts
  • Auth declaredRequired10 pts
  • Tools listed15 pts

    Answer tools/list without a credential, or ship a package that starts in a sandbox without one.

  • DescriptionRequired15 pts
  • Logo10 pts
  • Documentation15 pts
  • License10 pts