markit-mcp
Enables AI to search, read, save, and manage reminders in your personal MarkIt library.
README
<p align="center"> <img src="assets/banner.png" alt="MarkIt - everything you save, findable again" width="100%" /> </p>
MarkIt MCP - connect your AI to your library
Bring your own AI. MarkIt is the memory.
[!TIP] The lazy path (recommended): paste this repo's URL into your AI and say "connect me to MarkIt". It reads llms.txt and handles everything below for you.
MarkIt saves the links, posts, and notes you'd otherwise lose, and makes them searchable in plain language. This repo is the official guide for connecting your own AI - Claude, ChatGPT, Cursor, and friends - to your MarkIt library over the open Model Context Protocol.
Once connected, your AI can search your library, read what it finds, save new things into it, and set reminders. In your words, not keywords.
Server URL: https://mark-it.co/api/mcp
Transport: Streamable HTTP
Auth: OAuth 2.1 (sign in) or a personal API key (mkt_...)
Pick your path
Option 1 - Sign in (OAuth). No key to handle. Paste the server URL where your app asks for a custom connector or MCP server, and sign in to MarkIt when the browser opens. Best for Claude, ChatGPT web, Cursor, VS Code.
Option 2 - API key. Generate a key in Settings > Integrations (shown once, keep it secret). Best for CLIs, scripts, and the ChatGPT desktop app.
Option 1 - sign in from your app
One-click installs
Everyone else
| App | Steps |
|---|---|
| Claude (claude.ai + Claude Desktop) | Settings > Connectors (under Customize) > Add custom connector > paste https://mark-it.co/api/mcp > authorize. Available on all plans (Free allows one custom connector). Known issue: an open Anthropic-side bug can fail the authorization right after you approve - if that happens, use Claude Code (below) until Anthropic ships the fix. |
| ChatGPT (web) | Settings > Security and login > turn on Developer mode, then Settings > Plugins (or chatgpt.com/plugins) > + > paste the server URL > connect with OAuth. |
| Claude Code | claude mcp add --transport http markit https://mark-it.co/api/mcp then run /mcp in a session and pick Authenticate. Add --scope user to use it in every project. |
| Codex CLI | Add the server (see clients/codex.toml, skip the token line) then codex mcp login markit. |
| Zed | Add a context_servers entry with just the url (see clients/zed.json); Zed prompts you through OAuth when there is no Authorization header. |
Option 2 - use your API key
- In MarkIt Settings > Integrations, open Connect Your AI and generate your key. It starts with
mkt_and is shown once. - Grab your app's config from
clients/and replacemkt_your_key_here:
| App | Config |
|---|---|
| Claude Code | clients/claude-code.md |
| Cursor | clients/cursor.json |
| VS Code | clients/vscode.json |
| Codex CLI + ChatGPT desktop app | clients/codex.toml (they share ~/.codex/config.toml) |
| Windsurf | clients/windsurf.json |
| Cline | clients/cline.json |
| Zed | clients/zed.json |
| Anything stdio-only | clients/mcp-remote.json |
Rules of the key: one per account, treat it like a password, never paste it into a chat, revoke or regenerate anytime in Settings.
What your AI gets
| Tool | What it does |
|---|---|
search |
Plain-language search over your library, with optional filters (category, platform, type, author, tags, dates). |
fetch |
Full stored content of one item by id. |
list_categories |
Your categories with item counts. |
save_item |
Save a URL or a text note into your library. MarkIt scrapes, categorizes, and indexes it. Each save spends one monthly capture; re-saving a URL you already have is a free no-op. |
create_reminder |
Set or reschedule a reminder on an item (email for everyone; WhatsApp/Telegram on Pro). |
list_reminders |
Your pending reminders. |
cancel_reminder |
Cancel one reminder by id. Never touches the item itself; Google-Calendar-synced reminders stay managed on-site. |
send_feedback |
Send a short note straight to MarkIt's founder - only when you ask it to. A real person reads every one. Max 3 a day. |
What it can NOT do, by design: delete items, edit your account, touch anyone else's data. Saved page content is treated as data, never as instructions.
Privacy, in one breath
Your AI talks to MarkIt with your identity and only ever sees your items. Whatever AI you connect (Claude, ChatGPT, ...) is your own tool under its own terms - MarkIt does not send your library anywhere on its own. OAuth grants are revocable from your AI app; the API key is revocable in Settings. Full details: Privacy Policy.
Troubleshooting
- 401 right after connecting with a key: the header must be exactly
Authorization: Bearer mkt_...- check for a lost space or a truncated key (regenerating in Settings invalidates old keys). - Windsurf: the remote-server field is
serverUrl, noturl. - Cline: set
"type": "streamableHttp"explicitly. - VS Code says it cannot start the server: an entry with a
urlalso needs"type": "http". - Claude says "Authorization with MarkIt failed" right after you approve: known Anthropic-side bug in claude.ai custom connectors (our server completes the whole OAuth flow; Claude drops it after the token). Use Claude Code or Cursor until it's fixed.
- Sign-in window never comes back: finish the login in the browser tab it opened, then retry from the app; some apps need a retry after the first authorize.
mcp-remoteshim: keep it current (mcp-remote@latest; versions before 0.1.16 have a known critical vulnerability). No space around the colon inAuthorization:${AUTH_HEADER}on Windows.- Still stuck? support@mark-it.co.
For your AI
Point your assistant at llms.txt - a plain-text playbook that teaches it to connect you and to use the tools well. Same file, branded URL: mark-it.co/mcp/llms.txt.
Claude Code users can go one step further: copy the skill/ folder into .claude/skills/markit/ and Claude picks up the full MarkIt usage playbook (when to search vs save, note etiquette, reminder handling) automatically.
License
MIT. The MarkIt name and logo belong to MarkIt.
Recommended Servers
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.
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.
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.
VeyraX MCP
Single MCP tool to connect all your favorite tools: Gmail, Calendar and 40 more.
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.
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.
Neon Database
MCP server for interacting with Neon Management API and databases
E2B
Using MCP to run code via e2b.
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.
Qdrant Server
This repository is an example of how to create a MCP server for Qdrant, a vector search engine.