Fantasy Tabletop Helper

io.github.kushaim由 GitHub 帳號 kushaim 發布v1.0.0更新於 Oct 25, 2026

Read-only access to your tabletop campaigns: codex, sessions, and session notes.

已驗證Streamable HTTP可網頁執行效率與工作流知識與記憶

概覽

AI 產生的概覽

遠端 MCP 伺服器,讓助理以唯讀為主、有限寫入的方式存取你的 Fantasy Tabletop Helper 戰役、設定集、場次與筆記。

可以做什麼
列出並讀取你的戰役、你在其中的角色與戰役詳情,依最近遊玩順序瀏覽場次及其筆記、回顧、可讀事件與逐字稿(逐字稿僅限 DM)。在設定集中搜尋 NPC、地點、物品、傳說、宗教、文化與團體,並開啟單一條目及其關聯關係。新增場次筆記(必須指定可見性),儲存你撰寫的回顧,附加擲骰、命中、治療等具型別的場次事件。為 DM 提交新的設定集條目提案,以及現有條目之間的關聯提案。
適用情境
適合在 Fantasy Tabletop Helper 中主持或參與戰役、希望讓 AI 用戶端在對話中回答關於自己世界的問題、查詢 NPC 與傳說,或起草筆記、回顧與設定集提案的情境。
執行需求
遠端端點位於 fantasytabletophelper.com(必須保留 www. 前綴,否則重新導向時權杖會被移除)。需要 Hero 方案,以及在 Account > AI Tool Access 建立的個人存取權杖,透過 Authorization 標頭以 Bearer 前綴送出。無需本機安裝;伺服器為僅 POST 的無狀態 Streamable HTTP。
安裝前請注意
Authorization 權杖是僅顯示一次的機密,遺失或外洩後應撤銷。寫入雖受限但確實存在:筆記、回顧、事件以及設定集與關聯提案都會被儲存,但在 DM 審核前不會成為戰役正史。存取受列級安全限制在你的帳號範圍內,DM 專屬與私人筆記不會曝光。每個權杖約有每分鐘 60 次請求的軟性限流。

安裝

在 SourceWeft 中

  1. 開啟 儀表板中的 Fantasy Tabletop Helper,將其新增到工作區。
  2. 連接 所需的 憑證。它們會被私密儲存,絕不會在公開頁面上展示。
  3. 為需要使用其工具的對話啟用該服務。

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

交給代理程式安裝

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

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

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

其他 MCP 客戶端

把它新增到你客戶端的 mcpServers 設定中。 客戶端會在首次連接時完成 OAuth 登入。

{
  "mcpServers": {
    "fantasy-tabletop-helper": {
      "type": "http",
      "url": "https://www.fantasytabletophelper.com/api/mcp"
    }
  }
}

README

Fantasy Tabletop Helper — MCP server

Connect Claude Desktop, Cursor, Codex, or any MCP-capable client to your tabletop campaigns, and ask questions about your own world in plain language.

"Which NPCs in Westruun belong to a religion, and which of them have my party already met?"

This repository holds the connection docs and example client configs. The server itself is hosted — it runs inside fantasytabletophelper.com, so there is nothing to install, clone, or keep running.

  • Endpoint: https://www.fantasytabletophelper.com/api/mcp — keep the www., see below
  • Transport: stateless Streamable HTTP, POST only
  • Access: Hero plan + PAT (ftth_mcp_…). Reads plus controlled writes (proposals / notes / events you authored). Not OAuth — that is a separate issue.
  • Source: closed. The app is a commercial product; this repo is the client-side half.

Scoped to you (reads + controlled writes)

The server queries the database as you, not as an administrator. Row-level security decides the answer, so it can only ever show what the website would show you when logged in.

Writes exist, and they are bounded: notes and events you authored, recaps you submit, and proposals for the DM to review. Nothing an AI tool does through this connection becomes campaign canon until a DM reviews it in the app.

Who sees it
Party notesCampaign members
DM-only notesThe DM of that campaign, or whoever wrote them
Private notesOnly their author
Codex entriesMembers of that campaign; non-canon entries only for the DM

If you are a player, pointing an AI client at your campaign cannot surface your DM's secrets. That is enforced in the database, not in application code.

Tools

ToolReturns
list_campaignsYour campaigns, and your role in each
get_campaignOne campaign's details
list_sessionsSessions, most recently played first
search_codexNPCs, locations, items, lore, religions, cultures, groups
get_subjectOne codex entry in full, with its relationships
get_session_notesNotes from a single session
get_session_recapSession recap — plus DM prep hooks if you are the DM
append_session_noteAdd a note (visibility required)
submit_session_recapSave a recap you wrote
propose_subjectPropose a codex entry for the DM to review
propose_relationshipPropose a link between two existing entries
list_session_eventsRolls and combat events you may read
append_session_eventAppend one typed event (roll / hit / heal…)
get_session_transcriptLatest ready transcript — DM only, never the audio

Factions and guilds are stored as kind: "group" — there is no separate faction kind.


Setup

1. Create a token

On the site, go to Account → AI Tool Access (/account/mcp), name the token after the tool you are connecting, and press Create token.

The token appears once, beginning ftth_mcp_. Copy it then. Only a hash is stored, so it cannot be shown again. If you lose one, revoke it and make another.

2. Configure your client

Ready-to-edit files are in examples/. Claude Desktop, for instance:

json
{  "mcpServers": {    "ftthelper": {      "url": "https://www.fantasytabletophelper.com/api/mcp",      "headers": { "Authorization": "Bearer ftth_mcp_YOUR_TOKEN_HERE" }    }  }}

Restart the client. ftthelper should appear in its tool list.

Keep the www.

It is not cosmetic. The bare domain redirects to www, and HTTP clients drop the Authorization header whenever a redirect changes origin — sensibly, since they cannot know the new host deserves your credentials. Point a client at https://fantasytabletophelper.com/api/mcp and the token is stripped in transit, so the server sees an anonymous request and answers 401 Invalid or missing MCP token for a perfectly good token.

3. Ask it something

"List my campaigns, then find every religion in the Westruun one."


Revoking a token

Press Revoke next to it on Account → AI Tool Access. It takes effect on that client's next request. Revoke any token you have pasted somewhere you no longer control.

Troubleshooting

SymptomCause
404Wrong path, or the server is switched off on this deployment.
401 on a token you just madeAlmost always the URL: the bare domain instead of www., which strips the token. Check that before suspecting the token.
401Token is wrong, revoked, or expired. Make a new one.
503We could not open a session for your account. Usually transient; retry.
403Your plan is not Hero.
429Soft rate limit (~60 requests/min per token). Wait for Retry-After.
405 on a GETExpected. The server is POST-only; your client should be using POST.
Connects, but every tool call returns an errorA server-side configuration problem. Contact support — the server logs these.
A tool returns an empty listUsually genuine: you have no campaigns yet, or the search matched nothing.

The last two rows are worth keeping apart. An empty list is an answer; an error is a fault.

Licence

Docs and example configs: MIT. The hosted service has its own terms.

來源:README.md,提交 801b66c

工具

0
該伺服器需要登入,因此 SourceWeft 無法在沒有帳號的情況下讀取其工具,也未收錄。已連接帳號所能看到的內容可能因帳號及其權限而異。

版本歷史

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

評分

已滿足適用檢查項的 85%

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

  • 近 30 天內可連通必需25 分
  • 已宣告認證方式必需10 分
  • 已列出工具15 分

    請讓伺服器在無憑證時回應 tools/list,或發布可在沙箱中無憑證啟動的軟體包。

  • 描述必需15 分
  • 圖示10 分
  • 文件15 分
  • 授權條款10 分