Sessionplan

de.sessionplan由 sessionplan.de 發布官方發布者v1.2.0更新於 Oct 27, 2026

Create and edit visual agendas for workshops, trainings, meetings, and events.

已驗證Streamable HTTP可網頁執行效率與工作流溝通與協作

概覽

AI 產生的概覽

Sessionplan MCP 伺服器,讓助理為工作坊、培訓、會議與活動建立並解析視覺化議程的分享連結。

可以做什麼
  • 依完整 session 物件為工作坊、培訓、會議或活動建立新的 Sessionplan 連結
  • 解析既有的 Sessionplan 網址、網址片段或 v2 快照碼,並回傳驗證過的 session 作為權威資料
  • 修改議程時,先編輯完整的已解析 session,再傳給建立工具產生新連結
適用情境
當使用者需要為工作坊、培訓、會議或活動製作依時間排列的視覺化議程,或想讀取、摘要、審閱、驗證、修改既有的 Sessionplan 連結時適用。
執行需求
透過 streamable HTTP 連線到 sessionplan.de 的遠端端點;未宣告任何套件、環境變數或請求標頭。底層網頁應用免費且無需註冊。
安裝前請注意
建立工具會產生新的分享連結,持有連結者即可檢視議程;只接受完整的 session 物件,不接受部分更新。議程在瀏覽器端加密,伺服器僅儲存加密封裝、標題與中繼資料,且沒有復原金鑰託管。

安裝

在 SourceWeft 中

  1. 開啟 儀表板中的 Sessionplan,將其新增到工作區。
  2. 為需要使用其工具的對話啟用該服務。

Web executable,透過 Streamable HTTP。 遠端服務在工作區中設定後即可從網頁執行環境執行。

交給代理程式安裝

把這段提示詞貼上到 Claude Code、Codex、Cursor 等代理程式,或 SourceWeft 對話中。代理程式會讀取該伺服器的安裝指南,先向你展示發布者、端點和登入方式,經你同意後再把它新增到你的客戶端。金鑰不會寫進任何命令。

閱讀 https://sourceweft.com/mcp/de.sessionplan%2Fsessionplan/install.md,並按其中說明把這個 MCP 伺服器接入我的客戶端。修改任何設定之前,先告訴我它的發布者、端點和登入方式,等我確認。不要把 API 金鑰寫進命令或我會提交的檔案;問我金鑰應從哪裡取得。

檢視代理程式所依據的安裝指南

其他 MCP 客戶端

把它新增到你客戶端的 mcpServers 設定中。

{
  "mcpServers": {
    "sessionplan": {
      "type": "http",
      "url": "https://sessionplan.de/mcp/"
    }
  }
}

README

Sessionplan

Sessionplan is a free, browser-based Progressive Web App for visually planning workshops, trainings, meetings, and events using an interactive timeline.

→ Try it live at sessionplan.de

Features

  • Visual timeline — Drag & drop blocks to build your agenda
  • Automatic time calculation — Start times and durations update instantly
  • Live mode — Follow your plan in real-time during sessions
  • Block types & templates — Custom categories, default library, reusable templates
  • Grouping & breakouts — Parallel sessions, configurable lanes, per-lane facilitators
  • Share & export — Snapshot links, JSON export/import, print-ready PDF
  • Offline-first — Works fully offline after first load (PWA)
  • No registration — All data stays in your browser by default

Tech Stack

  • Vite · TypeScript · React 18 · Tailwind CSS · shadcn/ui
  • react-router-dom · react-i18next · @dnd-kit · Vitest

Getting Started

bash
git clone <repository-url>cd sessionplannpm installnpm run dev

Open http://localhost:5173 (or the port Vite assigns) in your browser.

Self-Hosting

Sessionplan is a static web app. Install dependencies, build it and serve the generated files from any static web server. Plans remain in the browser and can be shared as URL links or exported as JSON.

Dynamic-Link sessions API (optional)

The public distribution ships a single PHP API at data/sessions.php plus the _shared modules it needs. The API is strictly server-blind — every Dynamic Link is encrypted in the browser before upload; the server stores only the encrypted envelope, the title, technical metadata and a hash of the write capability, never the encryption key. There is no recovery-key escrow and no server-side analytics or event logging integration in this build.

Self-hosters who want persistent Dynamic Links need a PHP runtime that can serve the data/ directory:

  1. Deploy the data/ directory so PHP can execute data/sessions.php (the shared modules under data/_shared/ are loaded by the endpoint).
  2. Set SP_SESSIONS_DIR on the PHP process to a path outside the webroot (e.g. /var/lib/sessionplan/sessions). The directory must be writable by the PHP process; the API persists one JSON file per session there.
  3. Optionally set SP_ALLOWED_ORIGIN to a single extra origin (exact match) if the planner is served from a staging or alternative hostname.
  4. Block direct web access to data/_shared/ (e.g. via your Apache/Nginx config) — the shared modules are required by data/sessions.php but are not meant to be served as standalone URLs.

Additional optional environment variables (both default to safe values and can be left unset for direct-internet deployments):

  • SP_PUBLIC_BASE_URL — overrides the base URL used when reconstructing a tracked dynamic-link URL for analytics. Defaults to https://sessionplan.de.
  • SP_TRUSTED_CLIENT_IP_HEADER — when set to a safe header name (e.g. CF-Connecting-IP, X-Real-IP), the rate-limit + per-IP capacity counters use that header's value instead of REMOTE_ADDR. Only enable this when a trusted front-end proxy sits in front of the API.

A reference Apache configuration is provided in public/.htaccess. Without the PHP runtime, the planner continues to work locally and shares plans via URL fragments or JSON export.

Local development with the API (npm run dev:full)

To work on the planner together with the sessions API locally:

  1. Run npm run dev:full — starts the Vite dev server (port 8080) and the PHP built-in server for the API (port 8081) side by side.
  2. Point the frontend at the API with VITE_SESSIONS_API=http://localhost:8081/data/sessions.php (see .env.example; the planner falls back to the same-origin data/sessions.php path in a same-origin deployment, which the Vite dev server cannot serve).
  3. CORS: dev:api sets SP_ENV=development, which additionally allows localhost/127.0.0.1 origins (any port). For a non-localhost staging check, set SP_ALLOWED_ORIGIN instead.
  4. Storage: sessions default to sessions_data/ in the repository root (gitignored). Point SP_SESSIONS_DIR at a directory outside any served document root for anything beyond local experiments.

Run the two servers separately with npm run dev and npm run dev:api if you prefer individual terminals (PHP ≥ 7.4 required).

License

Sessionplan is licensed under the GNU Affero General Public License v3.0 (AGPL-3.0).

The AGPL ensures that modifications distributed as a network service must also be open-sourced, protecting the project from commercial forks while allowing free self-hosting.

See LICENSE for the full text.

Contributing

Bug reports and pull requests are welcome! See CONTRIBUTING.md for details.

Security

See SECURITY.md for reporting vulnerabilities.

Public distribution

This repository contains the frontend application and neutral sample content. It has no analytics integration, operator-specific contact details, legal pages or server implementation. Static sample content in public/data/ is independent of production content.

.public-export.json lists the files generated in this export and carries a content-derived publicRevision marker plus a generated date. It identifies the distribution without exposing private commit references or per-file hashes. A working-tree-preview source is for review only; published exports should come from a committed release revision.

來源:README.md,提交 78baf6a

工具

2

版本歷史

1
  1. v1.2.0最新Sep 16, 2026

評分

已滿足適用檢查項的 100%

該評分衡量此收錄條目的完整程度,依據註冊中心條目、端點與公開來源計算得出。它不是對伺服器本身的評價,也不表示伺服器安全或目前可用:可連通性是帶日期的檢查結果,評分也不包含安裝量或使用者評價。

  • 近 30 天內可連通必需25 分
  • 已宣告認證方式必需10 分
  • 已列出工具必需15 分
  • 描述必需15 分
  • 圖示10 分
  • 文件15 分
  • 授權條款10 分