mcpField
P
Plopino

Plopino

本地服务
plopino.com文件与存储02 天前更新

关于 Plopino

Plopino 提供发布服务、命令行工具和 MCP 服务,供 Agent 分享生成的页面或本地文件。常见文档会渲染为可阅读页面,也可替换已发布内容并保留原链接。

主要功能

  1. 01发布生成内容或本地路径
  2. 02将文档渲染为可读页面
  3. 03预览代码、数据、图片和视频
  4. 04更新内容并保留原链接
  5. 05匿名发布或账户发布

适用场景

  1. 01分享 Agent 生成的 HTML 页面
  2. 02发布本地报告或电子表格
  3. 03修改已发布页面并保留链接

MCP 相关

MCP 服务提供 `publish_page`、`publish_path` 和 `publish_files` 工具,用于发布内容。支持本地 stdio 和托管 HTTP 端点;远程使用提供 `publish_files`,不支持访问本地路径。

配置

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

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

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

安装包
npmplopino0.3.2

工具

2

收录的工具列表 · 更新于 1 天前

参数类型必填说明
contentstring是文件的完整内容,以字符串形式提供。默认文件名下,此内容应为包含 <html> 标签的独立 HTML 文档;对本地文件的相对引用将无法解析,因此如果页面需要同级文件(CSS、JS、图像),请使用 publish_path。
filenamestring否文件名,用于决定内容的呈现方式,因此请正确设置,不要把 Markdown 重命名为 .html。默认为 "index.html"。可使用 "report.md"、"data.csv"、"query.sql" 等;也支持子目录("reports/q3.md")。只能将文本作为字符串发送;二进制格式(docx、xlsx、pdf)必须通过 publish_path 发送。
update_urlstring否之前发布时返回的 URL。指定后,该页面的内容将被替换,链接保持不变。要求服务器已配置 Plopino token。

详细介绍

plopino

CLI:使用一条命令发布

npx -y plopino publish ./index.html
npx -y plopino publish ./dist --json
npx -y plopino login
npx -y plopino publish ./dist --update https://plopino.com/b/YOUR_BOARD_ID/
npx -y plopino whoami
npx -y plopino logout

login 会提示输入邮箱和隐藏的密码。如有需要,请先在网站上创建账户。登录后会认领使用此 CLI 保存的身份进行的可用匿名上传,报告认领数量,并保存会话以供后续上传使用。已存在的 PLOPINO_TOKEN 会覆盖已保存的会话,用于发布。对于仅通过 Google/GitHub 登录的账户,请使用 API token 进行后续上传;CLI 密码登录要求账户设置了密码。

Cookie 会以未加密的 JSON 格式,按服务器源分别存储在 ~/.config/plopino/ 下。该目录以 0700 权限创建,Cookie 文件以 0600 权限写入;这会限制对你操作系统用户的访问,但并未加密。使用 PLOPINO_CONFIG_DIR 覆盖该目录。 保留此目录,才能继续认领匿名上传。密码绝不会被存储。退出登录会撤销已保存的账户会话,但会保留匿名身份;将共享的操作系统账户交给他人之前,请先退出登录。浏览器会话与 MCP 会话相互独立:仅在网站上登录不会认领 CLI 上传的内容。

如需以非交互方式登录,请使用 login --email [email protected] --password-stdin,通过标准输入从密钥管理器提供密码。不要将密码作为命令行参数传入。--json 会输出结构化结果和错误;发生错误时,退出状态为 1。默认情况下,发布时仅将 URL 写入 stdout,状态信息写入 stderr。

CLI 和 MCP 的目录上传都会跳过 .git、.env*、node_modules、.ssh、.aws 和符号链接。其他文件都会包含在内;请发布你打算分享的输出目录。明确选择的单个文件会按请求上传,因此绝不要选择凭据或其他机密。符号链接输入会被拒绝。 同一服务器的 CLI 命令不能并发运行;进程被强制终止后,下一个命令会识别出过期锁,并在没有命令运行时提示将其移除。

在 npm 发布前进行开发时,请在上面的示例中将 npx -y plopino 替换为 node /path/to/boards/mcp/index.js。

MCP

Plopino 的 MCP 服务(https://plopino.com)——让 AI Agent 发布刚刚构建的内容并返回公开链接,无需用户操作浏览器。

agent writes index.html — or has a report / spreadsheet / markdown on disk
   ↓  publish_page / publish_path
https://plopino.com/b/xxxxxxxx/

文档是一等公民:Word(doc/docx)、Excel(xls/xlsx)和 Markdown 会呈现为易读页面;代码和数据文件会显示语法高亮预览;图片和视频则会直接显示在页面中。接收者打开链接即可查看,无需下载文件。

工具

工具适用场景
publish_page内容是字符串形式时使用,例如生成的 HTML,或 Markdown / CSV / 代码文档。filename 决定呈现方式:保留为 index.html 时会呈现为页面,传入 report.md 则会呈现为文档。
publish_path页面需要同级文件(CSS、JS、图片),或要分享已存储在磁盘上的内容时使用,包括任何文档,也包括无法作为字符串发送的二进制格式(docx、xlsx、pdf)。指定一个目录即可保留其结构,无需先压缩成 zip。
publish_files仅限远程端点。作用与 publish_path 相同,适用于无法提供本地路径的客户端:以内联方式发送文件内容(每个条目包含相对路径及其内容)。

两者都接受可选的 update_url:传入之前发布时返回的链接,即可替换该页面的 内容,同时保持链接不变。这需要令牌(见下文)。

发布默认匿名进行:无需账户、配置或 API 密钥。返回的链接是公开的;没有令牌时, 页面会保留一个月;使用令牌时,页面会永久保留,并且可以原位更新。

stdio MCP 服务会复用 CLI 在 ~/.config/plopino/ 中按来源保存的匿名 Cookie (可通过 PLOPINO_CONFIG_DIR 覆盖)。因此,重复发布和重启 MCP 都会保留相同的匿名身份, 并且可以通过 plopino login 认领这些上传内容。MCP 不会使用已保存的 CLI 登录会话; 账户发布和更新仍需要 PLOPINO_TOKEN。

匿名创建也会返回 claimUrl。这是供发布者使用的私密浏览器链接: 由你自行打开、登录并确认认领,即可将该页面保留在你的账户中。请勿将其 附加到公开 URL,也不要与页面浏览者分享。JSON 输出会将其包含在 claimUrl 中;CLI 发布时,人类可读输出会将其打印到 stderr;Agent 发布时, 则会将其显示在 MCP 工具结果中。

身份验证(可选)

设置 PLOPINO_TOKEN,即可发布到你的账户,而非匿名发布。你将获得私有 看板、保持链接不变的更新,并且不受匿名速率限制的约束。

在 plopino.com/b 创建令牌——面板会提供一条已包含令牌的现成命令 (服务端会保存加密副本,因此你随时都可以回来获取),然后:

claude mcp add plopino --env PLOPINO_TOKEN=plp_xxx -- npx -y plopino

不设置令牌是受支持的配置,并非功能降级。 大多数用户都不需要令牌—— 匿名流程就是本产品的一部分。

安装

也已列入官方 MCP 注册表,名称为 io.github.plopino/plopino-mcp;同时也在 Smithery 上提供可安装的软件包。

Claude Code 插件

此仓库也是一个 Claude Code 插件市场:

claude plugin marketplace add plopino/plopino-mcp
claude plugin install plopino@plopino

该插件连接到 Plopino 的远程 MCP 端点,因此无需本地 Node 进程即可运行。令牌可选; 留空即可匿名发布。

OpenAI Codex / ChatGPT 插件

codex-plugin/ 是 OpenAI 格式的软件包,.agents/plugins/marketplace.json 是 其 Codex 市场条目:

codex plugin marketplace add plopino/plopino-mcp
codex plugin add plopino@plopino

它使用带混合身份验证的远程 MCP 端点:默认匿名,也可以使用 Plopino OAuth 2.1(DCR + PKCE) 进行账户发布和原位更新。同一文件夹也是提交到 OpenAI 目录 ZIP 的单插件根目录软件包。

Claude Desktop 扩展

下载最新的 plopino.mcpb, 然后打开它,或将其拖入 Claude Desktop。这是本地 stdio 服务,可在扩展设置中选择性配置 PLOPINO_TOKEN。

任何支持 stdio MCP 的客户端都能使用——该服务是一个普通的 stdio 进程,因此客户端之间唯一的区别是注册方式。以下都是客户端官方文档中记录的配置形式(已于 2026-09 验证)。看到 plp_xxx 时,请粘贴来自 plopino.com/b 的令牌——该页面会自动填入令牌,并让你选择客户端。如果你的客户端不想运行本地进程,请跳转到 远程端点——无需安装——工具相同,只需一个 URL。

Claude Code

claude mcp add plopino -e PLOPINO_TOKEN=plp_xxx -- npx -y plopino

Codex(CLI 和 IDE 扩展共用 ~/.codex/config.toml)

codex mcp add plopino --env PLOPINO_TOKEN=plp_xxx -- npx -y plopino

Gemini CLI

gemini mcp add -e PLOPINO_TOKEN=plp_xxx plopino npx -y plopino

WorkBuddy — ~/.workbuddy/mcp.json(Windows 上为 %USERPROFILE%\.workbuddy\mcp.json; 需要 WorkBuddy 5.3+),然后重启 WorkBuddy:

{
  "mcpServers": {
    "plopino": {
      "command": "npx",
      "args": ["-y", "plopino"],
      "env": { "PLOPINO_TOKEN": "plp_xxx" }
    }
  }
}

Cursor — 在 .cursor/mcp.json(项目级)或 ~/.cursor/mcp.json(全局)中使用相同的 JSON。 Windsurf — 在 ~/.codeium/windsurf/mcp_config.json 中使用相同的 JSON。 Claude Desktop — 在 claude_desktop_config.json 中使用相同的 JSON。

VS Code — 配置方式相同,但在 .vscode/mcp.json 中使用的键是 servers,而不是 mcpServers:

{
  "servers": {
    "plopino": {
      "command": "npx",
      "args": ["-y", "plopino"],
      "env": { "PLOPINO_TOKEN": "plp_xxx" }
    }
  }
}

没有 npm? 网站上也提供了一个独立的单文件版本。需要两行而不是一行,但无需安装:

curl -fsSL https://plopino.com/plopino-mcp.mjs -o "$HOME/.plopino-mcp.mjs"
claude mcp add plopino -e PLOPINO_TOKEN=plp_xxx -- node "$HOME/.plopino-mcp.mjs"

粘贴时,shell 会展开 "$HOME/…",因此注册时使用的是绝对路径。这一点很重要:MCP 客户端会从任意工作目录启动服务,因此相对路径会导致故障。

然后只需询问:“将此发布到 Plopino”,或 “给我那个页面的链接”。

远程端点——无需安装

以上方式都在你的机器上运行。此外,还有一个托管的 Streamable HTTP 端点,提供相同的工具,适用于支持远程 MCP 服务且不想运行本地进程的客户端:

https://plopino.com/mcp
claude mcp add --transport http plopino https://plopino.com/mcp

任何接受远程服务 URL 的客户端都可以使用同一个地址。身份验证方式相同:如果你有令牌,请发送 Authorization: Bearer plp_xxx;如果没有,也可以匿名发布。

与 stdio 版本相比有两点不同,都是有意为之:

  • 远程版本不提供 publish_path。 它需要服务器运行所在机器上的路径——而远程服务器所在的机器并不是你的机器。请使用 publish_files 并发送文件内容。
  • 该端点是无状态的:每个请求都独立处理,无需维持会话。

可自托管 / 本地部署

服务器默认发布到 https://plopino.com。设置 PLOPINO_BASE_URL 即可指向其他实例——例如预发布环境,或你自己的部署:

PLOPINO_BASE_URL=https://plopino.com npx -y plopino

要求

  • Node 20 或更高版本(MCP TypeScript SDK v2 所需)。
  • 唯一的运行时依赖是 MCP SDK。

开发

npm install
npm test        # 路径展开的边界 + 协议握手/工具列表(不需要网络)

如需完整测试发布流程,请运行一个 Plopino 实例,并通过 stdio 向其驱动服务:

PLOPINO_BASE_URL=https://plopino.com node index.js

stdout 是 MCP 协议通道。 写入其中的任何非 JSON-RPC 消息都会导致客户端故障。所有日志都必须写入 stderr——因此应始终使用 console.error,绝不要使用 console.log。

隐私政策

完整政策:https://plopino.com/privacy

  • 收集的内容。 仅收集发布所需的信息:你传递给工具的文件内容和文件名、目标 URL,以及匿名发布时的请求 IP 地址(用于每日速率限制)。MCP 服务本身不收集任何信息,也不发送遥测数据;它在本地运行,且仅向 stderr 写入日志。匿名发布会写入上文所述的本地身份 Cookie。
  • 使用和存储方式。 上传的内容存储在 Plopino 的服务器上,并通过返回的公开链接提供。PLOPINO_TOKEN 存储在你的 MCP 客户端配置中;服务端仅保存其 SHA-256 哈希值。
  • 第三方。 不会出售、分享内容或使用数据,也不会将其发送给第三方用于广告。Plopino 使用 Cloudflare 作为 CDN/反向代理,并使用可自托管的 Umami 统计汇总的、无 Cookie 的访问次数。
  • 保留期限。 匿名上传内容会在 30 天 后删除;也可以从账户页面提前移除链接。使用令牌进行的上传内容会保留,直到你将其删除或账户关闭。如需请求删除或举报滥用行为,请联系 [email protected]。
  • 联系方式。 [email protected](用于举报滥用行为和隐私相关请求),或访问 https://plopino.com/abuse。

说明

  • publish_path 会递归遍历目录,并跳过符号链接——跟随符号链接可能会越出目录树,上传计算机其他位置的文件。
  • 匿名上传受服务端的 IP 速率限制。
  • 只有在调用工具后才会上传内容;服务在启动时不会进行网络 I/O。

评论

支持 Markdown

第一次接触 MCP?

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

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