CaptureMem

Settle into your library.

Connect your private library, save straight from your browser, and bring your collection into conversations with Claude or ChatGPT.

Connect your private library

CaptureMem needs a dedicated Supabase project and a Next.js deployment. The project’s README.md, .env.example, and docs/worker.md contain the full operational instructions.

  1. Apply the SQL migrations from supabase/migrations/ in filename order. Keep the email authentication provider enabled, disable public signup, and invite your owner account.
  2. Set the deployment environment variables below. Only the publishable key belongs in a public variable; the server key stays on the server.
  3. Set the Supabase Auth Site URL and callback allow-list to your app’s HTTPS origin and /auth/callback.
  4. Install the database schedule in docs/worker.md. It calls /api/jobs with the worker secret so saved links are enriched and organized after capture.
  5. Redeploy, sign in, and save a link. Verify it appears immediately and its metadata becomes ready after a worker run.
NEXT_PUBLIC_SUPABASE_URL=https://your-project.supabase.co
NEXT_PUBLIC_SUPABASE_PUBLISHABLE_KEY=your-public-key
SUPABASE_SECRET_KEY=your-server-only-key
APP_URL=https://capturemem.com
CRON_SECRET=your-random-secret-at-least-32-bytes

GITHUB_TOKEN is optional and increases the public API rate limit. OPENAI_API_KEY enables model-generated summaries; source-based summaries and automatic filing work without it.

For local development, follow the README and run npm run worker alongside npm run dev. A hosted app must be reachable by the worker, Shortcuts, and MCP clients; deployment protection may need configuration.

Sign in to your library

Save from iPhone & Mac

The Apple-signed Save to Library Shortcut accepts URLs and shared text. It saves without asking you to choose folders or tags.

  1. In CaptureMem, open Settings & connections. Create a Capture only credential with a device name such as “iPhone Shortcut”. Copy it when shown.
  2. Download the Shortcut below and open it in Apple Shortcuts. Select Add Shortcut. The import questions ask for your HTTPS capture URL (https://capturemem.com/api/capture) and credential.
  3. If your Shortcuts version skips the questions, edit the first two Text actions after the opening comment: endpoint first, credential second.
  4. In Chrome on iPhone, open a page, choose Share → Save to Library, and allow network access when asked. If it is missing, check Show in Share Sheet in Shortcuts and enable URL and Text input.
  5. On Mac, install the same Shortcut and enable its Share sheet / Services entry in Shortcuts Details. The native Share menu depends on the app. Use the extension below for a direct Chrome save button.
Download Save to Library

What a successful save means

Saved to CaptureMem or Already saved appears only after the database confirms persistence. Metadata and folder assignments arrive afterward. If a server or network error appears, share the page again to retry; repeated saves are deduplicated.

The credential stays in your private Shortcut and may sync through your Apple account. Keep an export containing your credential private. Revoke a lost device’s credential in Settings.

The installer was generated and signed in the build environment. Installation, permissions, and actual sharing on your iPhone and Mac still need device verification. Test a GitHub URL, an ordinary website, a duplicate save, and a revoked credential.

Save from Chrome on desktop

  1. Download the ZIP below and extract it.
  2. Open chrome://extensions, enable Developer mode, choose Load unpacked, and select the extracted folder containing manifest.json.
  3. Open the extension’s Connection settings, enter your CaptureMem site address and a capture-only credential, and approve access to your site.
  4. Pin the extension. Click it on a page and select Save to Library, or press S on Mac / Ctrl Shift S elsewhere. Configure conflicts at chrome://extensions/shortcuts.
Download Chrome extension

A successful toolbar badge or confirmation means persistence completed. A red ! indicates failure; reopen the popup and choose Retry last failed save. The extension remembers the failed URL locally.

The extension reads the current page URL after your save action. It requests access only to your configured CaptureMem origin, stores credentials locally, and does not inject page content. This release is installed unpacked and has not been published to the Chrome Web Store.

Ask your library with MCP

Use your deployed HTTPS URL followed by /api/mcp as the remote MCP server. Set the deployment’s APP_URL to that exact origin. Localhost cannot be reached by account-based Claude or ChatGPT connections.

https://capturemem.com/api/mcp

Claude

Open Customize → Connectors → + → Add custom connector. Enter “CaptureMem” and your MCP URL, then complete OAuth by signing in to CaptureMem and approving read access. Team or Enterprise administrators may need to allow the connector first.

As checked September 8, 2026, Anthropic lists remote custom connectors on Free, Pro, Max, Team, and Enterprise plans; Free has a one-custom-connector limit. See Anthropic’s connection requirements.

ChatGPT

Where your account or workspace permits it, enable developer mode and create a custom MCP app from Settings → Apps. Workspace administrators may use Workspace settings → Apps → Create. Enter the MCP URL, choose OAuth, approve access in CaptureMem, and scan the available tools.

As checked September 8, 2026, OpenAI documents full developer-mode MCP on ChatGPT web for Business and Enterprise/Edu with workspace controls, plus read/fetch custom MCP connectivity for Pro in developer mode. Availability may change. Check OpenAI’s current MCP requirements.

Access and useful questions

OAuth requests library:read and may request offline_access for renewable access. Access tokens last one hour; rotating refresh tokens last 30 days. Revoke the “MCP: client name” credential in Settings to stop both. Your notes are part of read access.

Ask: “Find the document-processing repos I saved and show their licenses.” Tools can search, filter, discover folders and tags, and retrieve individual items with notes, source URLs, README content, and freshness timestamps.

CaptureMem supports public OAuth clients with dynamic registration and PKCE S256. It does not support confidential client secrets or URL-based Client ID Metadata Documents. A client that requires these needs a compatible public PKCE configuration. For local tools supporting manual headers, a Read library credential can be used; capture credentials cannot read the library.

Local protocol verification and a real Claude or ChatGPT account connection are separate checks. Complete connection setup in your account and confirm that unauthorized requests cannot retrieve your library.
Back to CaptureMem