Puppetflow

com.puppetflowPublished by puppetflow.comv1.0.0Updated Oct 25, 2026

Build, run, monitor, and control Puppetflow browser automations from AI clients.

VerifiedStreamable HTTPWeb executableProductivity & WorkflowBrowser Automation

Overview

AI-generated overview

Remote MCP server for a self-hosted Puppetflow instance that lets an AI assistant search, create and run browser automation flows and follow their results.

What you can do
Search, inspect and create browser automation flows and reusable snippets in workspaces, and run them manually or through integrations, with optional JSON input and scheduling context from the platform. Follow runs and inspect run history, logs and execution results. Retrieve outputs such as screenshots, files and session recordings from completed runs. Manage supporting resources such as variables, secrets, browser profiles and Media Library files used as flow inputs.
When to use it
Use it when you already run a self-hosted Puppetflow instance and want an AI client to author, launch and monitor JavaScript browser workflows without leaving the chat. Useful for teams that need human-in-the-loop browser automation with live session control and run history.
Requirements
A reachable self-hosted Puppetflow instance (Docker deployment is supported) with MCP enabled under Workspace Settings, plus an access token sent as an Authorization Bearer header; OAuth with PKCE and Dynamic Client Registration is also offered. Nothing runs locally; the client connects to the instance's remote endpoint over Streamable HTTP.
Before you install
The server can create and run browser automation flows, which act on external websites and may submit forms or change data. It manages variables, secrets and browser profiles, and can connect repositories and external vaults such as 1Password, so the access token grants broad control of the instance. Treat the token as a secret and scope access carefully.

Installation

In SourceWeft

  1. Open Puppetflow in the dashboard and add it to a workspace.
  2. 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.

Other MCP clients

Follow the launch instructions in the repository.

README

[Puppetflow]

Puppetflow

Puppetflow is a self-hosted browser automation platform for writing, running, scheduling, and monitoring JavaScript workflows. Watch browser sessions live and take control whenever a run needs human attention.

[GitHub stars] [Package on GHCR] [GHCR package version] [Last commit]

⭐️ Like Puppetflow? Give the repository a star. It helps others discover the project.

Install Puppetflow with one command

curl -fsSL https://puppetflow.com/install.sh | bash

🌐 Website and documentation

🎉 Features

  • Build browser workflows in JavaScript
  • Run workflows manually, on a schedule, or through integrations
  • Watch browser sessions live and take control when needed
  • Organize flows and reusable snippets in workspaces
  • Store, tag, organize, and edit text files in a scoped Media Library, then reuse them in flow inputs or $upload
  • Manage variables, secrets, and browser profiles
  • Inspect run history, logs, and execution results
  • Connect repositories and external vaults like 1Password
  • Integrate with messaging tools and mailboxes
  • Deploy on your own infrastructure with Docker
  • Extend Puppetflow with reusable flows and snippets
  • Automate Media Library files and folders through the authenticated REST API

🔗 n8n integration

Puppetflow provides the n8n-nodes-puppetflow community node for adding browser automation to n8n workflows.

  • Trigger a flow with optional JSON input.
  • List and monitor runs, then retrieve their results.
  • Download screenshots, files, and session recordings.

Install the package from Settings > Community Nodes on a self-hosted n8n instance, then connect it with your Puppetflow instance URL and an API key from Profile > API Keys. See the n8n integration guide for setup details.

🤖 MCP server for AI clients

Every Puppetflow instance exposes a remote Model Context Protocol server over Streamable HTTP. Connect Cline, Cursor, Claude, Claude Code, or any other MCP client to search, inspect, create, and run browser automation flows, follow runs, and retrieve results, screenshots, and recordings.

Nothing runs locally. Enable MCP under Workspace > Settings > Instance MCP, create an access token, then add the endpoint to your client:

json
{  "mcpServers": {    "puppetflow": {      "type": "streamableHttp",      "url": "https://your-puppetflow.example/api/mcp-server/http",      "headers": {        "Authorization": "Bearer mcp_your_token_here"      }    }  }}

An OAuth endpoint with PKCE and Dynamic Client Registration is also available for clients that support remote MCP OAuth. See llms-install.md for step-by-step client setup and the MCP guide for the complete tool list.

Puppetflow in action

🛟 Discussion / Need help?

Join our Discord

[Join our Discord]

Open an Issue

[Open an issue on GitHub]

Project philosophy

Puppetflow is built around a few straightforward ideas:

  • Browser automation should remain understandable and debuggable.
  • Self-hosting should be a real option, not an afterthought.
  • Good defaults matter, but users should keep control of their data and infrastructure.
  • Reliability and maintainability matter more than shipping a long list of half-finished features.

A note on project history

The public Git history was intentionally reset for the Community Edition release for security reasons. This repository's commit count therefore does not reflect the age or maturity of the project.

Puppetflow has been developed and operated in real conditions for nearly a year. The Community Edition is a publication of an existing product, not the beginning of a prototype.

No AI Slop Policy

Puppetflow does not accept low-effort, unreviewed generated code or content.

AI-assisted work is not banned. Submitting output that the contributor does not understand, has not checked, or cannot maintain is. Contributions must be deliberate, consistent with the existing codebase, and owned by the person submitting them.

See Contributing for the practical rules.

Repository documentation

License

Puppetflow is source available. Most of the code is licensed under the Puppetflow Source Available License, which permits personal, non-commercial use. Internal business use requires a current paid Puppetflow subscription or order.

Files under proprietary/, files containing the .pp. marker, and explicitly marked code blocks implement paid features. They are covered by the Puppetflow Proprietary License, and their use in production requires a valid Puppetflow subscription.

Source: README.md at commit 2d64e63

Tools

0
SourceWeft has not read this server's tools yet.

Version history

1
  1. v1.0.0LatestSep 16, 2026

Score

40% 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

    Keep the endpoint answering the MCP handshake; SourceWeft probes it every 30 days.

  • Auth declaredRequired10 pts

    Declare the credential headers in the registry entry, or keep the endpoint answering the probe so its auth can be classified.

  • 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

    Declare a license in the repository or the registry entry.