Texthyper

Connect Claude, Cursor and other AI assistants

Texthyper has an MCP server, so an assistant that speaks the Model Context Protocol can work with your library. It can find articles you saved, read them as clean text, look through your highlights, save a link for later and highlight a passage for you. It can't delete or archive anything.

1. Create a token

In Settings → API tokens, create a token named after the assistant ("Claude", "Cursor"). It's shown once, and Settings then gives you the Cursor config with the token filled in. Revoking the token disconnects that assistant immediately.

2. Add the server to your assistant

Replace th_YOUR_TOKEN with your token.

Cursor

Add this to ~/.cursor/mcp.json, or .cursor/mcp.json in a project.

{
  "mcpServers": {
    "texthyper": {
      "url": "https://app.texthyper.com/mcp",
      "headers": {
        "Authorization": "Bearer th_YOUR_TOKEN"
      }
    }
  }
}

Claude Code

Run this once in a terminal.

claude mcp add --transport http texthyper https://app.texthyper.com/mcp \
  --header "Authorization: Bearer th_YOUR_TOKEN"

Claude Desktop

Settings → Developer → Edit Config opens claude_desktop_config.json. Add the server, then restart Claude. It connects through the mcp-remote bridge, which needs Node.js.

{
  "mcpServers": {
    "texthyper": {
      "command": "npx",
      "args": [
        "-y",
        "mcp-remote",
        "https://app.texthyper.com/mcp",
        "--header",
        "Authorization:${TEXTHYPER_AUTH}"
      ],
      "env": {
        "TEXTHYPER_AUTH": "Bearer th_YOUR_TOKEN"
      }
    }
  }
}

Codex

Add this to ~/.codex/config.toml and set TEXTHYPER_TOKEN to your token in the environment Codex runs in.

[mcp_servers.texthyper]
url = "https://app.texthyper.com/mcp"
bearer_token_env_var = "TEXTHYPER_TOKEN"

Any other MCP client

Clients that support Streamable HTTP and custom headers need two things: the address and the header.

https://app.texthyper.com/mcp
Authorization: Bearer th_YOUR_TOKEN

Claude on the web

Organizations with Claude's request-headers beta can add a custom connector: Settings → Connectors → Add custom connector, the address https://app.texthyper.com/mcp, "No sign-in", and an Authorization request header of Bearer th_YOUR_TOKEN.

ChatGPT

Not yet. ChatGPT connects to MCP servers by signing in with OAuth, and Texthyper's server works with tokens for now. Sign-in support is planned.

What the assistant gets

list_articles
List the user's saved articles, newest saved first. Defaults to the unread reading list; filter by state, folder or tag. Returns metadata only: call read_article for an article's text.
search
Full-text search over everything the user saved, archived articles included: titles, authors and article text, best match first. Each result carries a snippet of the matching text with the hits in **bold**.
read_article
The text of one saved article as Markdown, with its metadata and the user's highlights. Long articles come in parts of about 40k characters: pass next_offset back as offset to read on.
list_highlights
The passages the user highlighted, with their notes. Give article_id for one article's highlights in reading order; leave it out for the most recent highlights across the whole library.
save_article
Save a web page to the user's Texthyper library for reading later. The text is extracted in the background, usually within seconds; read_article works once status is "ready". Saving a URL that is already saved returns the existing article.
create_highlight
Highlight a passage in a saved article, optionally with a note, as if the user had selected it in the reader. Quote the passage exactly as read_article returned it, within one paragraph and without Markdown markers.

The assistant sees only your library, through your token, up to 120 requests a minute. What it reads goes to the assistant's provider, like anything else you share with it.