Cli

io.github.pushtodisplay由 GitHub 账号 pushtodisplay 发布v0.1.14更新于 Oct 24, 2026

PushToDisplay MCP server — send real-time updates to display boards on iOS and Android devices.

已验证STDIO仅桌面效率与工作流沟通与协作

概览

AI 生成的概览

本地 MCP 服务器,让助手向 iOS 和 Android 设备上的 Push To Display 显示板发送实时文字更新,并管理这些显示板。

可以做什么
向显示板发送带样式的文字更新,可设置字号、字重、颜色、目标面板和布局选项,也可从标准输入读取完整 JSON 负载;未指定时使用默认显示板。列出显示板、查看显示板详情、按名称、描述和布局创建显示板、更新显示板的名称、描述或布局、设为默认显示板,以及永久删除显示板。列出活跃的设备与显示板连接。支持 JSON 输出,便于脚本和代理使用。
适用场景
适合让助手把状态、构建结果、告警或事件记录推送到手机或平板上的实时显示板,或在对话中创建和管理这些显示板。
运行要求
通过 npx 或全局 npm 安装以 stdio 在本地运行,需要 Node.js 18+。需要 Push To Display 账户,通过浏览器或设备码登录,凭据保存在操作系统钥匙串或配置目录中。可选环境变量 PTD_API_URL、PTD_SERVICE_URL、PTD_IDP_URL 和 PTD_CONFIG_DIR 可覆盖服务地址和配置位置。需要访问 Push To Display 服务的网络连接。
安装前请注意
MCP 服务器沿用 CLI 的登录会话,助手将以你账户的完整权限操作。工具可创建、更新、设为默认并永久删除显示板,还会向你的设备发送内容。凭据保存在操作系统钥匙串,不可用时回退到配置目录。API 密钥(PTD_API_KEY)仅支持 send 命令。批准删除显示板前请先确认。

安装

在 SourceWeft 中

  1. 打开 控制台中的 Cli,将其添加到工作区。
  2. 为需要使用其工具的对话启用该服务。

Desktop only,通过 STDIO。 STDIO 服务会启动本地进程,因此需要 SourceWeft 桌面宿主。

其他 MCP 客户端

参照 仓库 中的启动说明。

README

pushtodisplay

Command-line interface and MCP server for Push To Display — send real-time updates to display boards from your terminal or AI agents.

[Push to Display — 4-panel regional status board]

Get the app

Turn any screen into a live display board — get Push to Display on iOS and Android.

[Download on the App Store] [Get it on Google Play]

Install

Run directly with npx (no install needed):

bash
npx pushtodisplay --help

Or install globally:

bash
npm install -g pushtodisplay

Requires Node.js 18+. See the PushToDisplay documentation for guides, use cases, and API details.

Quick start

bash
# Log in (opens browser)pushtodisplay auth login
# Send an update (uses your default board)pushtodisplay send "Hello, Display!"
# Send to a specific boardpushtodisplay send -b <board-id> "Deploy completed"
# List your boardspushtodisplay boards list

Authentication

Log in with your Push To Display account — the same account you use in the mobile app.

Browser login (default)

bash
pushtodisplay auth login

Opens your browser. Sign in and the CLI receives your credentials automatically.

Device code login (headless)

For machines without a browser — SSH sessions, containers, or remote servers:

bash
pushtodisplay auth login --device-code

The CLI prints a URL and a one-time code. Open the URL on any device, enter the code, and approve the login.

Credentials are stored in your OS keychain (macOS Keychain, Linux libsecret, Windows Credential Manager). Falls back to ~/.config/pushtodisplay/ if the keychain is unavailable.

bash
# Check auth statuspushtodisplay auth status
# Machine-readable status for scripts/agents (exit 0 = authenticated)pushtodisplay auth status --json
# Log out (clear stored credentials)pushtodisplay auth logout

auth status reports effective auth: an expired access token is still reported as authenticated when a valid refresh token can renew it transparently (a will refresh automatically note is shown instead of the raw token expiry). It exits 0 when authenticated and 1 when not, so it is safe to gate scripts on it.

json
{  "authenticated": true,  "method": "oauth",  "accessTokenExpired": true,  "canRefresh": true,  "sessionExpiresAt": "2026-06-01T00:00:00.000Z"}

Commands

send

Send a display update to a board.

bash
# Simple textpushtodisplay send -b my-board-id "Deploy succeeded"
# Styled textpushtodisplay send -b my-board-id "Status" --size large --weight bold --color "#00FF00"
# Multiple blockspushtodisplay send -b my-board-id "Build:" "passing" --color "#22C55E"
# Panel targeting with layout optionspushtodisplay send -b my-board-id --panel 2 "Right panel content"pushtodisplay send -b my-board-id --panel 1 --full-panel --density compact --align-x center "Alert"
# Per-block styling with JSON (repeatable)pushtodisplay send -b my-board-id \  --block '{"text": "API Health", "size": "large", "weight": "bold"}' \  --block '{"text": "Uptime: 99.97%", "color": "#22C55E"}'
# Pipe a full JSON payload from stdinecho '{"boardId":"my-board-id","blocks":[{"text":"From pipe"}]}' | pushtodisplay send --stdin

If no -b flag is provided, the server uses your default board.

Style flags
FlagValuesDescription
-s, --sizesmall, medium, largeText size
-w, --weightregular, semibold, boldFont weight
-c, --colorHex color (#RRGGBB)Text color
--backgroundHex color (#RRGGBB)Background color
Panel flags
FlagValuesDescription
-p, --panel1–4Target panel number
--full-panel—Fill the entire panel area
--densitycompact, standard, spaciousContent spacing
--align-xstart, center, endHorizontal alignment
--align-ystart, center, endVertical alignment
Other flags
FlagDescription
-b, --boardBoard ID
--block <json>Styled block as JSON (repeatable)
--stdinRead full JSON request from stdin

boards

bash
pushtodisplay boards list              # List all boardspushtodisplay boards get <id>          # Get board detailspushtodisplay boards create -n "Name"  # Create a boardpushtodisplay boards create -n "Dash" -l 4  # Create with a layoutpushtodisplay boards delete <id>       # Delete a board

Create options:

FlagDescription
-n, --nameBoard name (required)
-d, --descriptionBoard description
-l, --layoutLayout ID

devices

bash
pushtodisplay devices list    # List active device-board streams

config

bash
pushtodisplay config              # Show current configurationpushtodisplay config show         # Same as above

JSON output

Add --json to any command for machine-readable output:

bash
pushtodisplay boards list --jsonpushtodisplay send -b my-board "test" --json

Configuration

Configuration is resolved in order: environment variables → config file → defaults.

Env varDescriptionDefault
PTD_API_URLAPI endpointhttps://api.pushtodisplay.com
PTD_SERVICE_URLService endpointhttps://services.pushtodisplay.com
PTD_IDP_URLIdentity providerhttps://idp.pushtodisplay.com
PTD_CONFIG_DIRConfig directory~/.config/pushtodisplay

MCP server

The CLI includes a built-in Model Context Protocol server, giving AI agents (Claude, Cursor, VS Code Copilot, and others) direct access to your display boards.

The MCP server inherits your CLI session — if you've run pushtodisplay auth login, it authenticates automatically.

Setup

Claude Code
bash
claude mcp add pushtodisplay -- npx pushtodisplay mcp
Claude Desktop

Add to ~/Library/Application Support/Claude/claude_desktop_config.json (macOS) or %APPDATA%\Claude\claude_desktop_config.json (Windows):

json
{  "mcpServers": {    "pushtodisplay": {      "command": "npx",      "args": ["pushtodisplay", "mcp"]    }  }}
Cursor

Open Settings → MCP Servers → Add Server, or edit .cursor/mcp.json:

json
{  "mcpServers": {    "pushtodisplay": {      "command": "npx",      "args": ["pushtodisplay", "mcp"]    }  }}
VS Code (GitHub Copilot)

Add to .vscode/mcp.json:

json
{  "servers": {    "pushtodisplay": {      "command": "npx",      "args": ["pushtodisplay", "mcp"]    }  }}
Other MCP clients

Any MCP client that supports stdio transport can use Push To Display. The server command is:

bash
npx pushtodisplay mcp

Available MCP tools

ToolDescription
pushtodisplay_send_updateSend content to a board
pushtodisplay_list_boardsList all boards
pushtodisplay_get_boardGet details of a board
pushtodisplay_create_boardCreate a new board
pushtodisplay_update_boardUpdate a board's name, description, or layout
pushtodisplay_set_default_boardSet a board as your default
pushtodisplay_delete_boardDelete a board permanently
pushtodisplay_list_devicesList active device connections

Commands at a glance

CommandDescription
auth loginLog in (browser or device code)
auth logoutRemove stored credentials
auth statusShow current auth status
send [text...]Send a display update
boards listList your boards
boards get <id>Get board details
boards createCreate a new board
boards delete <id>Delete a board
devices listList active device connections
configShow current configuration
mcpStart the MCP server

API key authentication

For CI/CD pipelines and scripts where interactive login isn't available, you can authenticate with an API key. Create one from the mobile app or the web portal. API keys start with pt_.

bash
# Via environment variableexport PTD_API_KEY=pt_your_key_herepushtodisplay send "From CI"
# Or store in keychainpushtodisplay auth login --api-key pt_your_key_here

Note: API key auth only supports the send command. Use auth login for full access to boards, devices, and config management.

Screenshots

[4-panel layout — regional status board] 4-panel layout — regional status at a glance

[2-panel layout with CI/CD logs] Multi-panel with CI/CD pipeline and infrastructure logs

[Incident timeline display] Incident timeline with color-coded severity

License

MIT

来源:README.md,提交 4f4fa16

工具

0
SourceWeft 尚未在沙箱中启动过该软件包,因此其工具未知。

版本历史

1
  1. v0.1.14最新Sep 16, 2026

评分

已满足适用检查项的 50%

该评分衡量此收录条目的完整程度,依据注册中心条目、端点与公开来源计算得出。它不是对服务器本身的评价,也不表示服务器安全或当前可用:可连通性是带日期的检查结果,评分也不包含安装量或用户评价。

  • 近 30 天内可连通25 分

    请保持端点能够响应 MCP 握手;SourceWeft 每 30 天探测一次。

  • 已声明认证方式10 分

    请在注册中心条目中声明凭据请求头,或保持端点能够响应探测,以便判定其认证方式。

  • 已列出工具15 分

    请让服务器在无凭据时响应 tools/list,或发布可在沙箱中无凭据启动的软件包。

  • 描述必需15 分
  • 图标10 分
  • 文档15 分
  • 许可证10 分