ChatGPT Bookmark Site MCP Server

ChatGPT Bookmark Site MCP Server

Enables users to search, read, and query saved bookmark content via a read-only MCP interface, with full-text and optional semantic search.

Category
Visit Server

README

ChatGPT Bookmark Site

一個建在 OpenAI Sites 上的私人書籤收件匣:貼上網址,自動保存乾淨內容,之後可搜尋、閱讀,或讓 ChatGPT/Codex 透過唯讀 MCP 查詢。

這個 repo 是可重建的公開模板,不包含任何既有 Site ID、正式網址、帳號、Email、金鑰、token、資料庫內容或舊 Git 歷史。

最快開始:把 repo 丟給 ChatGPT

將這個 GitHub repo 的網址貼給 ChatGPT,並說:

請依照 docs/CHATGPT_SETUP_PROMPT.md,從這個 repo 建立一個全新的私人 Bookmark Site。不要沿用任何既有部署或憑證。完成建置、測試、部署與權限設定後,把 Site 網址交給我,並帶我連接 Bookmark Site plugin。

ChatGPT 會為你建立新的 Site 與獨立 D1/R2 資源。部署過程只需要:

  • OWNER_EMAIL:必要,請設為 Site 的 server-side Secret;只有這個 ChatGPT 帳號能開啟私人介面。
  • GEMINI_API_KEY:可選,請設為 server-side Secret;啟用語意搜尋與附引用問答。未設定時,收藏、全文搜尋、匯出與其他 MCP 工具仍可使用。

完整、可直接複製的中英文建站指令在 docs/CHATGPT_SETUP_PROMPT.md

功能

  • 貼上網址後擷取標題、來源、作者、描述、正文與預覽圖。
  • D1 FTS5 全文搜尋;可選 Gemini Embedding 2+D1 語意檢索。
  • R2 保存 Markdown、原始內容與預覽圖。
  • iPhone 分享捷徑可用獨立、可撤銷、只具新增權限的收件金鑰。
  • 唯讀 Streamable HTTP MCP:
    • search_library
    • ask_library
    • read_bookmark
    • list_recent_bookmarks
  • MCP 支援 OAuth;每次授權都由 Site owner 使用 ChatGPT 登入並核准。

隱私與安全模型

Site 必須能從公開網路到達,iPhone 分享與 MCP/OAuth 才能運作;私人內容仍由應用程式預設上鎖:

  • 首頁、收藏、預覽、匯出、索引與連線管理只允許 OWNER_EMAIL
  • /mcp 每次讀取都需要短效 OAuth token 或獨立唯讀金鑰。
  • /api/capture 只接受收件金鑰,而且只能新增 URL,不能讀取、修改或刪除資料。
  • D1 只保存金鑰與 OAuth token 的 SHA-256 雜湊,不保存可用明文。
  • 擷取到的網頁一律視為不可信參考內容,不能覆寫系統指令。
  • .env*.dev.vars* 與本機設定不會進入 Git。

發現安全問題時請依 SECURITY.md 私下回報,不要建立公開 issue。

Codex plugin

Repo 內含可安裝的 Bookmark Site plugin:

  • plugins/bookmark-site/:plugin manifest、圖示與連線 skill。
  • .agents/plugins/marketplace.json:repo marketplace。
  • 三個 starter prompts:連線、查看近期收藏、搜尋收藏。

每位使用者的 Site URL 都不同,因此公開 plugin 不會寫死 MCP 網址。Connect Bookmark Site skill 會驗證你的 Site,使用 Codex 官方 OAuth 流程建立個人 MCP 連線,且不要求你把 token 或 code 貼進對話。安裝方式見 docs/PLUGIN.md

本機開發

需求:Node.js 22.13 或更新版本。

npm install
npm run dev

預設開發網址為 http://localhost:3000。交付前執行:

npm test
npm run lint
npm run build

.openai/hosting.json 在模板中只宣告 D1 DB 與 R2 ARCHIVE bindings,刻意不含 project_id。首次建立 Site 時,OpenAI Sites 會寫入屬於該使用者的新 ID。

English quick start

Give the repository URL to ChatGPT and ask it to follow docs/CHATGPT_SETUP_PROMPT.md. It should create a brand-new OpenAI Site, provision independent D1 and R2 resources, configure OWNER_EMAIL as a server-side secret, optionally configure GEMINI_API_KEY, validate the project, and deploy it. No existing deployment ID or credential is included in this repository.

License

MIT

Recommended Servers

playwright-mcp

playwright-mcp

A Model Context Protocol server that enables LLMs to interact with web pages through structured accessibility snapshots without requiring vision models or screenshots.

Official
Featured
TypeScript
Magic Component Platform (MCP)

Magic Component Platform (MCP)

An AI-powered tool that generates modern UI components from natural language descriptions, integrating with popular IDEs to streamline UI development workflow.

Official
Featured
Local
TypeScript
Audiense Insights MCP Server

Audiense Insights MCP Server

Enables interaction with Audiense Insights accounts via the Model Context Protocol, facilitating the extraction and analysis of marketing insights and audience data including demographics, behavior, and influencer engagement.

Official
Featured
Local
TypeScript
VeyraX MCP

VeyraX MCP

Single MCP tool to connect all your favorite tools: Gmail, Calendar and 40 more.

Official
Featured
Local
graphlit-mcp-server

graphlit-mcp-server

The Model Context Protocol (MCP) Server enables integration between MCP clients and the Graphlit service. Ingest anything from Slack to Gmail to podcast feeds, in addition to web crawling, into a Graphlit project - and then retrieve relevant contents from the MCP client.

Official
Featured
TypeScript
Kagi MCP Server

Kagi MCP Server

An MCP server that integrates Kagi search capabilities with Claude AI, enabling Claude to perform real-time web searches when answering questions that require up-to-date information.

Official
Featured
Python
E2B

E2B

Using MCP to run code via e2b.

Official
Featured
Neon Database

Neon Database

MCP server for interacting with Neon Management API and databases

Official
Featured
Exa Search

Exa Search

A Model Context Protocol (MCP) server lets AI assistants like Claude use the Exa AI Search API for web searches. This setup allows AI models to get real-time web information in a safe and controlled way.

Official
Featured
Qdrant Server

Qdrant Server

This repository is an example of how to create a MCP server for Qdrant, a vector search engine.

Official
Featured