Skip to content
verify mcp Beta VerifyMCP is currently in beta. If you notice any issues, get in touch and we’ll put it right.

Highlyt

REMOTE · MCP.HIGHLYT.APP

Highlight anything you read. Then ask your AI about it: search, read and edit your highlights.

Available components

+3 this week 80 Trust /100

Last scanned (22 hours ago)

Scores higher than 81% of remote servers

Reachable. Last reached 4 Nov 2026.

Category Productivity and Notes

Trust breakdown (7 categories)

How this component scores in each security and reliability category. Every signal is checked automatically against the live server, and we only credit what we can confirm. How we score → Why this is hard to score →

Endpoint Security89
Transport & Reachability100
Schema Quality & AI Usability67
  • AI-judged instruction clarity (good).Pass
  • Tool/resource definitions use about 2479 tokens (~88/item across 28 items; 28 tools + 0 resources), lean.Pass
  • Usage-examples check failed: none of the tools include examples. See how to fix → Fail
Stability & Change Management30
  • Stability observed for 9 of 30 days with no destabilising changes; credit accrues until the full window elapses.Partial
Tool Coverage99
  • 100% of tools have a non-trivial description (not blank, and not just the tool's name).Pass
  • 96% of tool parameters carry a description.Partial
  • Structured output schemas are declared (100% of tools); any adoption earns full credit.Pass
Tool Safety100
  • No prompt-injection markers were found in the server instructions, tool names or descriptions we captured.Pass
  • All 3 tool(s) whose name or description implies an irreversible operation declare an MCP destructiveHint annotation.Pass
  • An AI judge read all 28 captured unit(s) of tool text and found none that tries to manipulate the model reading it.Pass
Capabilities100
  • Implements a supported MCP spec version (2025-11-25); the latest is 2026-07-28.Pass
Changelog

Every change we have recorded for this component, newest first. Security-relevant changes are always shown. ▲ marks a change for the better, ▼ a change for the worse; unmarked changes are neutral.

  • 4 Nov 26 +1
    • This server's schema is too large to store in full, so we cannot compare its tools day to day functional
  • 3 Nov 26 0
    • This server's schema is too large to store in full, so we cannot compare its tools day to day functional
  • 2 Nov 26 +1
    • This server's schema is too large to store in full, so we cannot compare its tools day to day functional
  • 1 Nov 26 0
    • This server's schema is too large to store in full, so we cannot compare its tools day to day functional
  • 31 Oct 26 +1
    • This server's schema is too large to store in full, so we cannot compare its tools day to day functional
  • 30 Oct 26 0
    • This server's schema is too large to store in full, so we cannot compare its tools day to day functional
  • 29 Oct 26 0
    • This server's schema is too large to store in full, so we cannot compare its tools day to day functional
  • 28 Oct 26 +1
    • This server's schema is too large to store in full, so we cannot compare its tools day to day functional
Diagnostics

Diagnostic detail from the automated scan of this channel: what the scanner observed at each step, so you can see exactly where a check passed or failed. It is informational only and never changes the trust score.

Captured 4 Nov 2026 · Probed https://mcp.highlyt.app/mcp

TLS valid

Negotiated TLS 1.3 with TLS_AES_128_GCM_SHA256 .

Subject Issuer Valid from Valid until Key Signature Serial
CN=highlyt.app CN=YE2,O=Let's Encrypt,C=US 22 Oct 2026 20 Jan 2027 ECDSA 256 ECDSA-SHA384 630d5ed60e9909f1e0dee63e0be0b0722ba
SANs: *.highlyt.app, highlyt.app
CN=YE2,O=Let's Encrypt,C=US (CA) CN=Root YE,O=ISRG,C=US 3 Sept 2025 2 Sept 2028 ECDSA 384 ECDSA-SHA384 4df3b15dd6c0784c507cd37b58e6f115
CN=Root YE,O=ISRG,C=US (CA) CN=ISRG Root X2,O=Internet Security Research Group,C=US 13 May 2026 2 Sept 2032 ECDSA 384 ECDSA-SHA384 872165fc34b6e5fba8add5b3705fb53a
CN=ISRG Root X2,O=Internet Security Research Group,C=US (CA) CN=ISRG Root X1,O=Internet Security Research Group,C=US 13 May 2026 2 Sept 2032 ECDSA 384 SHA256-RSA 6c8f1dc727c7117f7baf853ac980f9cd

Background: What to check on a remote MCP endpoint →

DNSSEC insecure

Validation of mcp.highlyt.app. — Not signed

Zone DS Keys Algorithms Outcome
. trust_anchor 20326, 38696 8, 8 Verified
app. present 23684 8 Verified
highlyt.app. absent Unsigned (proven) parent-signed NSEC/NSEC3 proves an unsigned delegation
Authentication Enforced and verified

The endpoint asked for a token and published valid RFC 9728 metadata describing how to get one.

Result Enforced and verified
Enforced On tool calls
HTTP status 200

WWW-Authenticate challenge Bearer resource_metadata="https://mcp.highlyt.app/.well-known/oauth-protected-resource/mcp"

Bearer resource_metadata="https://mcp.highlyt.app/.well-known/oauth-protected-resource/mcp"

Protected resource metadata

Document https://mcp.highlyt.app/.well-known/oauth-protected-resource/mcp
Retrieved Yes
Resource https://mcp.highlyt.app/mcp
Authorisation server https://xzxzgrtbcmgcqprdukmg.supabase.co/auth/v1

Background: How OAuth 2.1 works in the 2026 MCP spec →

Transports 2 probes
Transport URL Outcome Status Location
streamable-http https://mcp.highlyt.app/mcp Verified 200
http (plaintext) http://mcp.highlyt.app/mcp HTTPS enforced 301 https://mcp.highlyt.app/mcp
MCP tools · 28 exposed · ~2,479 tokens

The tools this component advertises to a client, with an estimated token cost for each. Expand a tool to see its parameters and schema. The per-tool counts are indicative and are not scored directly; the schema's total context footprint is one signal in Schema Quality & AI Usability. A tool's description is untrusted text the model reads on every call, which is what makes this list a security surface and not just an inventory: how tool poisoning works →

Tool Tokens
highlyt_bulk_create_highlights ~127

Create multiple text-based highlights in one batch (max 10 per request). Efficient for chapter analysis — create highlights in batches of up to 10. If you have more than 10, split into multiple calls. Highlight format: {page_number: int, text: str, comment?: str, color?: str} Colors: amber (#E5A84B) core ideas, sage (#6BBF8A) action items, sky (#5BA3D9) questions.

NameTypeReqDescription
paramsobjectyesParameters for creating multiple text-based highlights at once.

Structured output declared, but exposes no named fields.

No examples provided.

highlyt_create_highlight ~106

Create a new highlight in a document. Uses react-pdf-highlighter-extended format: - position: ScaledPosition with boundingRect, rects, pageNumber - content: {text: "..."} or {image: "..."} - highlight_type: "text" or "area" - comment: User's comment Colors should be hex codes (e.g., #FFEB3B for yellow).

NameTypeReqDescription
paramsobjectyesParameters for creating a highlight.

Structured output declared, but exposes no named fields.

No examples provided.

highlyt_create_highlight_link ~279

Create a link between two highlights to form an insight thread. Supports both same-document and cross-document linking. IMPORTANT — parent/child semantics: - parent_highlight_id = the highlight you are viewing (the "context" highlight) - child_highlight_id = the highlight you are linking TO (the "related" highlight) - link_type describes what the CHILD does to the PARENT: - supports: "child supports parent" (child provides evidence for parent) - contradicts: "child contradicts parent" (child challenges parent) - expands: "child expands parent" (child elaborates on parent) - questions: "child questions parent" (child raises questions about parent) - related: general connection For cross-document links, set target_document_id to the document containing the child highlight. If omitted, both highlights are assumed to be in source_document_id. Example: If highlight A says "GDP grew 5%" and you want to link highlight B "Exports increased 12%" as supporting evidence, then: parent_highlight_id = A (the claim), child_highlight_id = B (the evidence), link_type = "supports" (B supports A).

NameTypeReqDescription
paramsobjectyesParameters for creating a link between two highlights (same-doc or cross-doc).

Structured output declared, but exposes no named fields.

No examples provided.

highlyt_create_text_highlight ~77

Create a text-based highlight on a specific page. Use this after reading page content with highlyt_get_page_text. The highlight will appear in the sidebar and be searchable/exportable. Copy the exact text from the page content for the 'text' field.

NameTypeReqDescription
paramsobjectyesParameters for creating a text-based highlight.

Structured output declared, but exposes no named fields.

No examples provided.

highlyt_delete_cluster_summary ~48

Delete a cluster summary from the knowledge graph. This removes the summary record but does not affect the highlights or their links.

NameTypeReqDescription
paramsobjectyesParameters for deleting a cluster summary.

Structured output declared, but exposes no named fields.

No examples provided.

highlyt_delete_highlight ~34

Delete a highlight permanently. This action cannot be undone.

NameTypeReqDescription
paramsobjectyesParameters for deleting a highlight.

Structured output declared, but exposes no named fields.

No examples provided.

highlyt_delete_highlight_link ~44

Delete a link between two highlights. This removes the connection but does not delete the highlights themselves.

NameTypeReqDescription
paramsobjectyesParameters for deleting a highlight link.

Structured output declared, but exposes no named fields.

No examples provided.

highlyt_export_highlights ~82

Export document highlights for AI context with pagination. Returns up to 'limit' highlights (default 20, max 50) starting from 'offset'. Use has_more and next_offset to paginate through all highlights. Includes document metadata, color meanings, and insight threads relevant to the returned highlights.

NameTypeReqDescription
paramsobjectyesParameters for exporting highlights.

Structured output declared, but exposes no named fields.

No examples provided.

highlyt_export_references ~57

Export reviewed references as BibTeX, RIS, or canonical CSL-JSON. This always excludes drafts. Never cite a draft as a verified source.

NameTypeReqDescription
paramsobjectyesParameters for a portable, reviewed-only reference export.

Structured output declared, but exposes no named fields.

No examples provided.

highlyt_export_research_brief_markdown ~42

Export a portable researcher-authored Markdown brief with safe receipts.

NameTypeReqDescription
paramsobjectyesRead a source-linked research brief by UUID.

Structured output declared, but exposes no named fields.

No examples provided.

highlyt_get_cross_document_links ~66

List all cross-document highlight links for the current user. Returns links where source_document_id != target_document_id, with metadata about both source and target documents. Useful for exploring connections across your entire library.

NameTypeReqDescription
paramsobjectyesParameters for listing cross-document highlight links.

Structured output declared, but exposes no named fields.

No examples provided.

highlyt_get_document ~43

Get detailed information about a document. Returns full metadata including book context, reading progress, and organizational information.

NameTypeReqDescription
paramsobjectyesParameters for getting a document.

Structured output declared, but exposes no named fields.

No examples provided.

highlyt_get_document_images ~173

Retrieve images (charts, graphs, figures, diagrams, photos) and their surrounding text context from an EPUB or web clip document. WHEN TO USE THIS TOOL: - User asks about a chart, graph, figure, diagram, or image in a document - User wants visual data or illustrations from a book/article - User references "Figure X.X" or any visual element Returns each image's base64 data URI, alt text, dimensions, chapter location, and the paragraph text before/after it so you can describe what the image shows. Use the optional query parameter to filter images by surrounding text context. For PDFs, images are embedded in the rendered pages — use highlyt_get_page_text instead.

NameTypeReqDescription
paramsobjectyesParameters for retrieving images and their surrounding context from EPUB/web documents.

Structured output declared, but exposes no named fields.

No examples provided.

highlyt_get_highlight_links ~70

Get all links connected to a specific highlight. Returns parent links (where this highlight is referenced by others) and child links (where this highlight references others). Useful for exploring how a specific idea connects to other highlights.

NameTypeReqDescription
paramsobjectyesParameters for getting links for a specific highlight.

Structured output declared, but exposes no named fields.

No examples provided.

highlyt_get_page_text ~76

Retrieve the text content of specific pages from a document. Use this to read document content before creating highlights. Returns up to 5 pages per request. If the requested range exceeds 5 pages, use has_more and next_page_start to paginate through remaining pages.

NameTypeReqDescription
paramsobjectyesParameters for retrieving page text content.

Structured output declared, but exposes no named fields.

No examples provided.

highlyt_get_reference ~31

Get one reviewed research reference. Never cite a draft without explicit permission.

NameTypeReqDescription
paramsobjectyes–

Structured output declared, but exposes no named fields.

No examples provided.

highlyt_get_research_brief ~71

Read a researcher-authored brief with verified, reviewed source receipts. Use this as context only. Cite only the included receipts. The tool does not reveal a draft reference or proposed evidence as support for a claim.

NameTypeReqDescription
paramsobjectyesRead a source-linked research brief by UUID.

Structured output declared, but exposes no named fields.

No examples provided.

highlyt_list_cluster_summaries ~207

List all cluster summaries for a document's knowledge graph. Returns each summary with its highlight_ids array — the highlights that were in the cluster when the summary was last generated. DETECTING STALE SUMMARIES: To check if summaries need updating after adding new links: 1. Call highlyt_list_highlight_links to get all current links 2. Compute connected components (group highlights by connectivity) 3. Call this tool to get stored summaries 4. For each summary, check if its highlight_ids is a SUBSET of a current component - If highlight_ids == component_ids → summary is current - If highlight_ids ⊂ component_ids → summary is STALE (cluster grew) - Set difference (component_ids - highlight_ids) = newly added highlights 5. Regenerate stale summaries with highlyt_upsert_cluster_summary, passing the FULL current component highlight_ids

NameTypeReqDescription
paramsobjectyesParameters for listing cluster summaries.

Structured output declared, but exposes no named fields.

No examples provided.

highlyt_list_documents ~52

List PDF documents in your Highlyt library. Returns documents sorted by last update time with pagination. Filter by shelf_id to see documents in a specific collection.

NameTypeReqDescription
paramsobjectyesParameters for listing documents.

Structured output declared, but exposes no named fields.

No examples provided.

highlyt_list_highlight_links ~99

List highlight links (insight threads) in a document with pagination. Returns up to 'limit' links (default 50, max 100) starting from 'offset'. Use has_more and next_offset to paginate through all links. Each link has a type: 'related', 'supports', 'contradicts', 'expands', or 'questions'.

NameTypeReqDescription
paramsobjectyesParameters for listing highlight links in a document.

Structured output declared, but exposes no named fields.

No examples provided.

highlyt_list_highlights ~80

List highlights in a document with pagination. Returns up to 'limit' highlights (default 20, max 50) starting from 'offset'. Use has_more and next_offset to paginate through all highlights. Each highlight includes the color meaning (e.g., "Key concepts", "Questions").

NameTypeReqDescription
paramsobjectyesParameters for listing highlights.

Structured output declared, but exposes no named fields.

No examples provided.

highlyt_list_references ~56

List reviewed references, optionally in one project. Drafts are excluded unless include_drafts is explicitly true. Never cite a draft as a verified source.

NameTypeReqDescription
paramsobjectyesParameters for listing or exporting research references.

Structured output declared, but exposes no named fields.

No examples provided.

highlyt_list_research_projects ~25

List the caller's research projects for a bounded AI research task.

Input schema present but exposes no named parameters.

Structured output declared, but exposes no named fields.

No examples provided.

highlyt_search ~165

Full-text search across your entire library — documents, highlights, and page content. This searches the actual text content of your PDFs (every page), highlight text/comments, and document metadata (title, author, keywords). Results are ranked by relevance with text snippets showing where matches were found. Supports natural language queries and websearch syntax: - Simple: "machine learning" - Exact phrase: '"neural network"' - OR: "neural OR deep" - Exclude: "learning -supervised" Each result includes match_type ('content', 'highlight', or 'metadata'), the page number where the match was found, and a snippet with **bold** markers around matching terms.

NameTypeReqDescription
paramsobjectyesParameters for full-text search across all document content.

Structured output declared, but exposes no named fields.

No examples provided.

highlyt_search_highlights ~57

Search highlights across your library. Finds highlights containing the query text. Each result includes the color meaning based on the document's definitions. Optionally limit to a specific document.

NameTypeReqDescription
paramsobjectyesParameters for searching highlights.

Structured output declared, but exposes no named fields.

No examples provided.

highlyt_update_highlight ~38

Update a highlight's color or comment. Only provided fields will be updated.

NameTypeReqDescription
paramsobjectyesParameters for updating a highlight.

Structured output declared, but exposes no named fields.

No examples provided.

highlyt_update_highlight_link ~42

Update a highlight link's relationship type or note. Only provided fields will be updated.

NameTypeReqDescription
paramsobjectyesParameters for updating a highlight link.

Structured output declared, but exposes no named fields.

No examples provided.

highlyt_upsert_cluster_summary ~232

Create or update a summary for a connected component cluster in the knowledge graph. A cluster is a group of linked highlights that form a connected component. IMPORTANT: - highlight_ids must be the COMPLETE, CURRENT set of highlight UUIDs in the cluster (not just newly added ones). The array is sorted internally for matching. - If a summary already exists for this document_id + highlight_ids combination, it will be UPDATED (upsert behavior). - When updating a stale summary (cluster grew due to new links), pass the FULL updated highlight_ids array so the stored record reflects the current cluster. - The summary should describe thematic connections across ALL highlights in the cluster, including any newly added ones. Typical workflow: 1. Read highlights with highlyt_list_highlights 2. Read links with highlyt_list_highlight_links 3. Compute connected components from links 4. For each component, generate a summary covering all highlights 5. Call this tool with the component's highlight_ids and generated summary

NameTypeReqDescription
paramsobjectyesParameters for creating or updating a cluster summary.

Structured output declared, but exposes no named fields.

No examples provided.

Install

How do I install the Highlyt MCP server?

Highlyt is a hosted endpoint at https://mcp.highlyt.app/mcp, so there is nothing to install locally. Ready-made configuration for Claude, Cursor, VS Code, Codex and 5 more is on this page, copied from each client's own documentation.

remote · mcp.highlyt.app

# add to Claude Code
claude mcp add --transport http app-highlyt-highlyt 'https://mcp.highlyt.app/mcp'
Common questions

What is the Highlyt MCP server?

Highlyt is an MCP server listed in the public MCP registry as app.highlyt/highlyt. Highlight anything you read. Then ask your AI about it: search, read and edit your highlights. This page covers its hosted endpoint (https://mcp.highlyt.app/mcp).

Is the Highlyt MCP server safe to use?

Highlyt scores 80 out of 100 on VerifyMCP. That is a record of what we were able to check automatically, not an endorsement. The category breakdown on this page shows every signal behind the number, including the ones we could not confirm.

What tools does the Highlyt MCP server expose?

Highlyt exposes 28 tools: highlyt_list_documents, highlyt_get_document, highlyt_get_research_brief, highlyt_export_research_brief_markdown, highlyt_list_highlights, and 23 more. Their descriptions and schemas cost roughly 2,479 tokens of context every time the server is loaded.

Does the Highlyt MCP server require authentication?

Yes. Highlyt asked us for credentials when we connected, so you will need to authorise it in your MCP client before it can do anything.

Is the Highlyt MCP server still maintained?

Highlyt is still listed as active in the MCP registry. We last reached this channel on 4 November 2026. Those dates come from our own scans of the registry and the channel itself, not from anything the publisher announced.