
InfoSlides — put content on a TV or screen
io.github.arnibjv1.7.3更新於 Oct 7, 2026
Put a PowerPoint, PDF, photo, or live data on any smart TV, menu board, or lobby screen.
概覽
讓助理建立數位看板工作區,把簡報、PDF、照片或即時資料放到電視與螢幕上播放。
- 功能
- 包裝 InfoSlides 數位看板 API,讓助理能匿名開通工作區、上傳 PowerPoint 或 PDF 簡報與媒體、製作含顯示條件與即時資料範本的幻燈片、註冊螢幕、指派排程與臨時接管,並回傳可在電視上開啟的串流連結。也涵蓋裝置配對、播放報表、螢幕診斷、團隊管理、AI Studio 幻燈片、預覽與復原。
- 適用情境
- 當有人想讓內容在實體螢幕上播放——接待櫃檯的菜單看板、櫥窗營業時間、大廳顯示器、即時數字看板——並希望由助理完成設定與日後修改,而不必打開管理後台時,適合使用。
- 執行需求
- 以本機 stdio 程序執行(Windows、Linux 或 macOS 的自包含二進位檔,或 .mcpb 套件);另有託管的 streamable HTTP 端點。二進位檔不需要執行階段。INFOSLIDES_API_KEY 為選用,因為 create_tenant 是匿名的並會回傳金鑰;INFOSLIDES_API_URL 僅用於自架後端。需要連線至 InfoSlides API 的網路。
安裝
在 SourceWeft 中
- 開啟 儀表板中的 InfoSlides — put content on a TV or screen,將其新增到工作區。
- 為需要使用其工具的對話啟用該服務。
Desktop only,透過 STDIO。 STDIO 服務會啟動本機處理程序,因此需要 SourceWeft 桌面主機。
其他 MCP 客戶端
參照 儲存庫 中的啟動說明。
README
InfoSlides: put content on a TV from your terminal or your agent
Turn a PowerPoint, a PDF, a photo, or a live data feed into a video stream playing on any smart TV. The lunch menu on the screen in reception. Opening hours in a shop window. A noticeboard in a school corridor. Room information in a hotel lobby. A live numbers board in an office.
This repo is the infoslides binary: one dependency-free executable that is both a developer
CLI and an MCP server for AI agents like Claude Code,
Claude Desktop, and Cursor. The same tools also run as a hosted server at
https://infoslides.app/mcp, for assistants like ChatGPT and Claude on the web (see
Hosted server).
The interesting part is that create_tenant is anonymous. An agent with this server installed can
take someone from no account at all to content playing on a physical screen: provision the
workspace, upload the deck, register the display, assign the schedule, hand back the stream link,
without anyone opening a dashboard. As far as we know, no other digital signage platform can be
driven that way.
New workspaces land on a permanent free plan: 1 screen, 4 slideshows, 2 users, 200 MB. No credit card, no trial clock, nothing expires. The whole flow below costs nothing and keeps running.
Zero to a live screen
Open that URL in the TV's browser or the InfoSlides TV app. It plays the content whichever way this screen is set up to play it.
https://github.com/user-attachments/assets/8da62e05-59f4-4a70-9351-dfa3fd47ce4e
As an MCP server
Hook it into an MCP client:
Or install as a Gemini CLI extension or Antigravity plugin:
Antigravity installs plugins from a folder, so it needs a copy of this repository; the repository
root is the plugin (plugin.json, mcp_config.json and skills/). Install agy itself first:
irm https://antigravity.google/cli/install.ps1 | iex on Windows, or
curl -fsSL https://antigravity.google/cli/install.sh | bash on macOS and Linux. Both routes run
the local infoslides program, so install that first and put it on your PATH. (agy plugin import gemini only imports extensions already installed in Gemini CLI and takes no URL.)
Or add the Claude plugin (it uses the hosted server, nothing to install first):
Or install the .mcpb bundle from the latest release
in any client that supports MCP bundles. It carries binaries for all three platforms and needs no
runtime and no API key to get started.
Or configure it by hand (stdio transport):
INFOSLIDES_API_KEY is optional. Leave it out and the agent can create a workspace from scratch.
Hosted server
Assistants that run in the browser or the cloud connect to the hosted server instead of a local binary:
- Transport: streamable HTTP.
- Sign-in: OAuth with your InfoSlides account. The assistant opens an InfoSlides consent page,
you approve it, and it acts as you in that workspace. A bearer
isk_API key also works. - Where to add it: as a custom connector in ChatGPT, Claude or Gemini, or through the Claude plugin above.
- Disconnecting: revoke any connection at infoslides.app/settings/connected-apps.
For ChatGPT, Claude and other hosted assistants the server offers a curated set of tools for everyday screen work (a Gemini connection gets a wider set): what is playing, slides, schedules, tickers, live data, devices and AI Studio slides. It leaves out billing and checkout, workspace creation, API key management and file uploads from a local path, which only make sense on your own machine or in the dashboard. Every call goes to the InfoSlides API with your own credential, and the server stores none. It loads the hosted variant of the assistant skill (zip).
What the agent gets
The tools cover the whole path: workspace provisioning (create_tenant, anonymous, returns
the admin key), slideshows including direct .pptx/.pdf upload (upload_pptx), media slides by URL or
direct file upload (upload_media), visibility conditions (time of day, weekday, date range, data triggers; show or hide, all or any),
edits to what is already playing (update_slide for a slide's duration, hidden flag and live data;
update_slideshow for the news ticker, clock, default duration and sharing; delete_slide,
delete_slideshow, replace_slideshow_file; list_sources for the ticker's sources, and
list_adapters, create_source, update_source_settings, delete_source for fetched feeds),
self-updating template slides driven by live data pushes (update_source, and push sources fed by
the user's own system: push_data, get_source_status, create_source_key), devices, schedules with
AspectMismatch warnings, playback-mode control (update_slideshow's playbackMode switches a
slideshow between the rendered-video stream and a live HTML/CSS loop), playable stream links that
work whichever mode a screen is in, pairing the TV in front of the person (pair_device),
"play this there" in one call (play_slideshow_find_device), timed schedules (get_schedule, add_schedule_entry,
delete_schedule_entry), temporary takeovers (create_takeover, list_takeovers, end_takeover),
play-time reports (get_slideshow_plays, get_device_plays), screen locations (update_device, list_devices near a
point), the team (list_team, invite_team_member, revoke_team_invitation, remove_team_member),
workspace time zone and locale (update_tenant), "which screen is this?"
(identify_devices), what is on a screen and why it is black (get_now_slide_png, get_device_diagnosis),
a photo or video on a screen in a minute (show_media_on_device, get_show_status), renaming a screen
(update_device), one workspace health summary and offline-alert emails (get_workspace_health,
get_offline_alerts, set_workspace_offline_alerts, set_device_offline_alerts), AI Studio slides
(make_ai_slide, get_ai_slide_job, insert_ai_slides, start_ai_studio_trial), previewing a
template before saving it (preview_new_template), undoing a change (undo_change), feedback to the
InfoSlides team (report_issue when it gets stuck, leave_testimonial after a job went well; the
team may pin a testimonial to the landing page, credited to the agent), PNG slide previews for
self-verification, API keys including push-only keys scoped to a single slide, and Paddle checkout
links for a chosen plan and billing period. The backend enforces every plan
limit, and the tool layer cannot bypass them.
Designing your own live data slide: the agent's guide to templates and pushed data covers how to write a template that reads well on a screen and how to connect a system that pushes data to it.
A Skill, which is the judgement the tools do not carry: when a self-updating slide
beats a fixed one, how to pick between landscape and portrait, how long a slide should stay up for
someone queueing versus someone walking past, how to find a screen by name, edit what is on it and
confirm the change reached the wall (renderStatus), and how to talk a person through the TV end of it
while they are holding a remote.
The InfoSlides Digital Signage Assistant skill covers the conversation side: it turns what a person says ("turn off the ticker in the lobby", "breakfast menu before 11") into the right tool calls in the right order, says what to tell them back, and includes worked scenarios, designing a slide yourself, and when to report an issue or leave a testimonial. The tool names are the same. Read it at https://infoslides.app/skills/infoslides-assistant/SKILL.md or download infoslides-assistant.zip to install it in Claude or another agent that loads skills.
CLI
Screens, schedules and the workspace:
AI Studio, template previews and undo:
A command that changes something prints undo with: infoslides undo <token> to stderr; the token
works for 24 hours. When the API needs a decision (NeedsClarification), the question and its
choices are printed to stderr; run the command again with the chosen id.
Global options: --api-url, --api-key, --json. Credential precedence: flags →
INFOSLIDES_API_KEY / INFOSLIDES_API_URL → ~/.infoslides/ → defaults.
Update notices
No install route notifies you of a new release on its own, so the binary checks for one itself: at
most once a day, in the background, cached to ~/.infoslides/update-check.json. The notice goes to
stderr in CLI mode (so --json output stays clean and pipeable) and into the server
instructions in --mcp mode, where an agent can pass it on.
The check never sits on the critical path: the notice you see comes from the cache and the refresh
is for next time, so no command is slower for it and being offline costs nothing. Set
INFOSLIDES_NO_UPDATE_CHECK=1 to switch it off; it also disables itself when CI is set.
Install
Download from the latest release:
Every release ships sha256sums.txt. Nothing is needed at runtime: the binary is Native AOT
compiled. Or build from source:
Links
- InfoSlides: https://infoslides.app
- Hosted MCP server:
https://infoslides.app/mcp(OAuth; see Hosted server) - REST API reference: https://infoslides.app/docs/api (the
/v1surface these tools wrap) - Guide for AI agents: https://infoslides.app/agents.md
- Blog: https://infoslides.app/blog (guides on templates, live data, screen design and agents)
- Digital Signage Assistant skill: https://infoslides.app/skills/infoslides-assistant/SKILL.md (zip)
Repository layout
Development
The MCP SDK tools are registered via the AOT-safe WithTools<T>() path; every wire type must be
listed in InfoSlidesJsonContext (a test fails if one is missing). In --mcp mode stdout is the
protocol, so log only to stderr.
Tool descriptions are trigger text, not documentation: a model matches them against what the user
just said, so they lead with the situation ("register the physical screen: the TV in reception,
the menu board above the counter") rather than the API operation. Tests in
McpStdioSmokeTests pin that vocabulary so it cannot quietly regress.
Privacy Policy
InfoSlides processes presentation content, media assets, and screen device metadata solely for rendering and delivering digital signage streams to authorized displays. InfoSlides does not sell user data, train foundation AI models on user content, or track users for third-party advertising.
For full details regarding OAuth authentication security, data retention, and data subject rights, read our Privacy Policy.
Licence
MIT.
來源:README.md,提交 11a5e9c
工具
0版本歷史
1- v1.7.3最新Oct 7, 2026


