hypothesis-mcp
MCP server for the Hypothesis annotation service, enabling Claude to search, create, and manage annotations, as well as read and discover PDFs from your library.
README
hypothesis-mcp
MCP server for the Hypothesis annotation service. Gives Claude access to your annotations and the ability to read PDFs — including finding which PDF in your library discusses a given topic.
Note: All code written by Claude (Anthropic) under the supervision of Ankit Goyal.
Quick Install (Claude Code)
# 1. Get your API key: https://hypothes.is/account/developer
# 2. Run this in Claude Code:
claude mcp add hypothesis -e HYPOTHESIS_API_KEY=your-key-here -- uvx --from git+https://github.com/imankgoyal/hypothesis-mcp hypothesis-mcp
That's it — no cloning, no venv, no config files. Requires uv.
Tools
| Tool | Description |
|---|---|
search_annotations |
Search annotations by URL, user, group, tag, text |
get_annotation |
Fetch a single annotation by ID |
create_annotation |
Create an annotation with optional quote/selectors |
update_annotation |
Update annotation text or tags |
delete_annotation |
Delete an annotation |
flag_annotation |
Flag an annotation for moderation |
hide_annotation / unhide_annotation |
Hide or unhide an annotation |
list_groups / get_group |
List or fetch groups |
get_user_profile |
Fetch the authenticated user's profile |
read_pdf |
Extract text from a PDF URL (direct or Chrome extension viewer format) |
discover_pdfs |
Scan all your annotated PDFs and find which ones discuss a topic |
Installation
Option A — uvx from GitHub (recommended, no cloning required)
Requires uv to be installed.
claude mcp add hypothesis -e HYPOTHESIS_API_KEY=your-key-here -- uvx --from git+https://github.com/imankgoyal/hypothesis-mcp hypothesis-mcp
Option B — local install
git clone https://github.com/imankgoyal/hypothesis-mcp
cd hypothesis-mcp
python3 -m venv .venv
.venv/bin/pip install -e .
claude mcp add hypothesis \
-e HYPOTHESIS_API_KEY=your-key-here \
-- /path/to/hypothesis-mcp/.venv/bin/hypothesis-mcp
Claude Desktop
Add to ~/Library/Application Support/Claude/claude_desktop_config.json:
{
"mcpServers": {
"hypothesis": {
"command": "uvx",
"args": ["--from", "git+https://github.com/imankgoyal/hypothesis-mcp", "hypothesis-mcp"],
"env": {
"HYPOTHESIS_API_KEY": "your-key-here"
}
}
}
}
Troubleshooting
uvx not found
Claude Code and Claude Desktop launch MCP servers without inheriting your shell PATH, so uvx may not be found even if it works in your terminal.
Fix: Use the full path to uvx. Find it with:
which uvx
Then replace uvx in the install command with the full path, e.g.:
# Claude Code
claude mcp add hypothesis -e HYPOTHESIS_API_KEY=your-key-here -- /Users/yourname/.local/bin/uvx --from git+https://github.com/imankgoyal/hypothesis-mcp hypothesis-mcp
// Claude Desktop (claude_desktop_config.json)
{
"mcpServers": {
"hypothesis": {
"command": "/Users/yourname/.local/bin/uvx",
"args": ["--from", "git+https://github.com/imankgoyal/hypothesis-mcp", "hypothesis-mcp"],
"env": {
"HYPOTHESIS_API_KEY": "your-key-here"
}
}
}
}
If uv is not yet installed, follow the uv installation guide — uvx is included.
PDF URL formats
read_pdf accepts both formats:
https://arxiv.org/pdf/2507.05331
chrome-extension://bjfhmglciegochdpefhhlphglcehbmek/pdfjs/web/viewer.html?file=https%3A%2F%2Farxiv.org%2Fpdf%2F2507.05331
Paste either directly — the chrome-extension URL is automatically unwrapped.
Self-hosted Hypothesis
Point the server at your own instance by setting HYPOTHESIS_BASE_URL:
claude mcp add hypothesis \
-e HYPOTHESIS_API_KEY=your-key-here \
-e HYPOTHESIS_BASE_URL=https://your-hypothesis-instance.com/api \
-- uvx hypothesis-mcp
License
Apache 2.0 — see LICENSE. Any modifications must credit Ankit Goyal as the original author and state what was changed (per Apache 2.0 Section 4(b)).
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.
E2B
Using MCP to run code via e2b.
Neon Database
MCP server for interacting with Neon Management API and databases
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.