Context7
Feeds AI the latest docs for libraries and frameworks before it answers, so code it writes does not use outdated, removed functions.
Description from the maker (original English)
Structured failure knowledge for AI agents — dead ends, workarounds, error chains
These three are never merged into one score: opinions, measurements and popularity are different things.
We have not written a plain-language summary for this one yet. Below are the facts we read from the registry.
Pick the AI app you use, then copy the settings.
You need
Which app do you use?
Pick your app above. We remember it, so next time the button says “Install in …”.
Works in Claude on the web, desktop and mobile:
https://deadends.dev/mcpOpen Claude Desktop → Settings → Developer → Edit Config, and paste this into claude_desktop_config.json
{
"mcpServers": {
"deadends-dev": {
"command": "uvx",
"args": [
"deadends-dev"
]
}
}
}Run this in your terminal
claude mcp add --transport http deadends-dev https://deadends.dev/mcpclaude mcp add deadends-dev -- uvx deadends-devPaste into .cursor/mcp.json in your project, or ~/.cursor/mcp.json
{
"mcpServers": {
"deadends-dev": {
"url": "https://deadends.dev/mcp"
}
}
}Paste into .cursor/mcp.json in your project, or ~/.cursor/mcp.json
{
"mcpServers": {
"deadends-dev": {
"command": "uvx",
"args": [
"deadends-dev"
]
}
}
}Your browser asks to open the app, then the app shows the settings and asks you to confirm. Key values are left empty for you to fill in.
Paste into .vscode/mcp.json in your project
{
"servers": {
"deadends-dev": {
"type": "http",
"url": "https://deadends.dev/mcp"
}
}
}Paste into .vscode/mcp.json in your project
{
"servers": {
"deadends-dev": {
"type": "stdio",
"command": "uvx",
"args": [
"deadends-dev"
]
}
}
}Your browser asks to open the app, then the app shows the settings and asks you to confirm. Key values are left empty for you to fill in.
ChatGPT connects only to servers on the internet:
https://deadends.dev/mcpMenu names can differ slightly by plan and over time.
Your choice stays on this device in a cookie; no account needed.
These settings are generated from the maker’s registry entry. If the README says otherwise, follow the README.
We have not read this server’s tool list yet; we check endpoints in rotation.
We check information anyone can see; we have not read the code. Checks that do not apply are left out of the count. · Checked Nov 6, 2026
The registry name was verified against the domain deadends.dev (the registry checks domain ownership)
We have not read this repo from GitHub yet
We have not read this repo from GitHub yet
Not checked yet; we check endpoints in rotation
Not checked yet; we check endpoints in rotation
Not checked yet; we read the tool list when we check the endpoint
Compared with every active server in this category in the registry. Stars count only when the publisher owns the repo.
It passed 1 of 1 applicable basic checks. We have not read the code. Before adding a key or token, see what access the server asks for and use a key with only the permissions you need.
The registry does not list a required key, though some servers ask you to sign in on first use.
Either way works: install it on your computer or connect to the cloud version.
The GitHub repo last changed –, and the latest version (0.9.0) reached the registry 3 months ago.
Apps that support MCP, such as Claude Desktop, Claude Code, Cursor and VS Code. It connects by URL, so apps that accept remote MCP servers work too, such as ChatGPT in developer mode.
In the same category: Context7, Codebase Memory, Exa
Servers in the same category from other makers, sorted by stars.
Reading a card:★ GitHub starsiThree pillars: reviews · checks · usageiUpdated = latest version published to the registryi
Feeds AI the latest docs for libraries and frameworks before it answers, so code it writes does not use outdated, removed functions.
Codebase knowledge graph for AI agents — 162 languages, sub-ms queries, 99% fewer tokens.
Connect AI agents to Exa for web search, content fetching, and multi-step research.
Copied from the maker’s repo as written. PopNx MCP has not reviewed or endorsed it. HTML, images and scripts are removed. Links lead off this site.
Stop AI agents from repeating known failures - in code AND in the real world.
AI assistants reliably fumble two kinds of problems: known-failed code fixes, and country-specific real-world rules they've never been exposed to in training. deadends.dev now covers both:
ModuleNotFoundError, CUDA OOM, CrashLoopBackOff, etc.Why the expansion? Coding dead ends are largely solved by a good LLM.
Country-specific friction - Japanese hanko requirements, Schengen 90/180
math, Ramadan business hours, Saudi alcohol ban, Indian beef taboos - is
where generic AI advice breaks hardest. The codebase and schema are
identical; the env segment just carries a country code.
90% Precision@1 · 0.935 MRR · Data Quality Dashboard
Website: deadends.dev · MCP Server: Smithery · PyPI: deadends-dev · API: /api/v1/index.json
Repository: https://github.com/dbwls99706/deadends.dev
| Without deadends.dev | With deadends.dev |
|---|---|
Agent tries sudo pip install → breaks system Python → wastes 3 retries | Agent sees "dead end: sudo pip - fails 70%" → skips it immediately |
| Agent tells user to tip 15% at a Tokyo restaurant | Agent knows tipping is refused in Japan (culture/tipping-refused/jp) |
| Agent drafts a Thai social post referencing King Rama X | Agent stops: Article 112 lèse-majesté risk (legal/lese-majeste-article-112/th) |
| Agent fixes error A, gets confused by error B | Agent knows "A leads to B 78% of the time" → handles both |
| Agent tells unmarried couple to kiss publicly in Dubai | Agent flags UAE public decency law (legal/unmarried-public-affection/ae) |
What makes this different from asking an LLM?
{domain}/{slug}/{env} - env holds the country code (kr, jp, us, de...) so the same taboo can be answered differently for different jurisdictions.report_outcome로 빠르게 보완합니다.pip install deadends-dev
deadends "CUDA error: out of memory"
Add to ~/.claude/claude_desktop_config.json:
{
"mcpServers": { "deadend": { "command": "python", "args": ["-m", "mcp.server"], "cwd": "/path/to/deadends.dev" } } }
Or install via Smithery (no local setup):
npx -y @smithery/cli@latest install deadend/deadends-dev --client claude
Unauthorized 빠른 해결 가이드 (사람용)deadend: calling "initialize": sending "initialize": Unauthorized 에러가 보이면 아래를 순서대로 그대로 실행/확인하세요.
# 로컬 서버 확인 (정상 시 툴 목록이 출력됨)
python -m mcp.server --help
cwd는 실제 경로여야 함)cat ~/.claude/claude_desktop_config.json
cd /path/to/deadends.dev
python -m mcp.server
npx -y @smithery/cli@latest uninstall deadend/deadends-dev --client claude
npx -y @smithery/cli@latest install deadend/deadends-dev --client claude
# macOS 예시
osascript -e 'quit app "Claude"' open -a Claude
팁:
Unauthorized는 보통 잘못된cwd, 중복 서버 설정(로컬+원격 동시), 또는 만료된 인증 상태에서 발생합니다.
Add as a remote MCP server - no authentication required:
{
"mcpServers": { "deadend": { "serverUrl": "https://deadends.dev/mcp", "type": "http" } } }
Note: Antigravity uses
serverUrl(noturl). If you getUnauthorized, remove any existing deadend entries from the MCP Store and re-add manually using the config above. See the Antigravity MCP auth guide for general troubleshooting.
from generator.lookup import lookup, batch_lookup, search
result = lookup("ModuleNotFoundError: No module named 'torch'")
for d in result["dead_ends"]: print(f"AVOID: {d['action']} - fails {int(d['fail_rate']*100)}%")
for w in result["workarounds"]: print(f"TRY: {w['action']} - works {int(w['success_rate']*100)}%")
results = batch_lookup(["error1", "error2", "error3"])
## ModuleNotFoundError: No module named 'X' (Python 3.11+)
Resolvable: true | Fix rate: 0.88
| Tool | Description |
|---|---|
lookup_error | Match an error message against 2000+ known patterns |
get_error_detail | Full canon by ID |
list_error_domains | All 54 domains with counts |
search_errors | TF-IDF keyword search across all domains |
list_errors_by_domain | All errors in a domain |
list_errors_by_country | All country-scoped dead ends for an ISO alpha-2 code |
get_country_summary | Country-level summary (entries, fix rate, domain mix) |
batch_lookup | Look up multiple errors at once (max 10) |
get_domain_stats | Domain quality metrics and confidence levels |
get_error_chain | Traverse the error transition graph |
report_outcome | Report whether a workaround worked (feeds back into success rates) |
| Endpoint | Description |
|---|---|
/api/v1/match.json | Lightweight regex matching (fits in context window) |
/api/v1/index.json | Full error index with metadata (entries include country field for country canons) |
/api/v1/{id}.json | Individual ErrorCanon |
/api/v1/countries.json | Country index with counts and update dates |
/api/v1/country/{cc}.json | Per-country aggregate (one call returns all entries for that country) |
/api/v1/openapi.json | OpenAPI 3.1 spec |
/api/v1/stats.json | Dataset quality metrics by domain |
/api/v1/errors.ndjson | NDJSON streaming |
/llms.txt | LLM-optimized listing (llmstxt.org) |
/dashboard/ | Data quality dashboard |
| Domain | Errors | Examples |
|---|---|---|
| Python | 88 | ModuleNotFoundError, TypeError, KeyError, MemoryError, RecursionError |
| Node | 70 | ERR_MODULE_NOT_FOUND, EACCES, EADDRINUSE, heap OOM, ERR_REQUIRE_ESM |
| Docker | 65 | no space left, exec format error, bind address in use, healthcheck |
| Kubernetes | 61 | CrashLoopBackOff, ImagePullBackOff, OOMKilled, RBAC forbidden, HPA |
| Git | 60 | failed to push, merge conflicts, detached HEAD, stash apply, tags |
| CUDA | 57 | OOM, device-side assert, NCCL, cuDNN, tensor device mismatch |
| Go | 54 | nil pointer, unused import, interface conversion, slice out of range |
| Java | 54 | NullPointerException, ClassNotFound, OutOfMemoryError, connection pool |
| Database | 52 | deadlock, connection pool, slow query, replication lag |
| AWS | 51 | AccessDenied, S3 NoSuchBucket, Lambda timeout, CloudFormation rollback |
| .NET | 50 | NullReferenceException, LINQ translation, DI circular, EF concurrency |
| ROS 2 | 50 | node spin, launch error, QoS mismatch, tf2 transform |
| TypeScript | 49 | TS2307, TS2322, TS2345, TS2532, TS7053 |
| Rust | 48 | E0382 borrow, E0308 mismatch, E0277 trait, E0106 lifetime |
| + 37 more domains | 40+ each | CI/CD, PHP, Terraform, Networking, Next.js, React, pip, Android, ... |
| Domain | Covers | Example dead ends |
|---|---|---|
visa | Pre-travel authorization, overstay, re-entry bans | ESTA 90-day rule (US), K-ETA (KR), ETIAS/EES (Schengen), Schengen 90/180 (DE) |
banking | Account opening, KYC, foreigner rules | ARC required (KR), residence card 6-month (JP), SSN/ITIN (US) |
emergency | Correct emergency numbers, transit | 112 not 911 (DE), 999/101/111 (UK) |
medical | Insurance, Rx import, coverage | Shaho/Kokuho (JP), NHIS 6-month (KR), EHIC ineligibility (DE), Adderall import ban (JP) |
legal | Criminal liability, contract norms | §86a Nazi symbols (DE), Article 112 (TH), Article 301 (TR), alcohol ban (SA), key money (JP) |
culture | Etiquette, taboos, social norms | Chopsticks in rice (JP), clock gifts (CN), Tiananmen silence, red ink names (KR), bonjour (FR) |
food-safety | Water, pathogens, religious taboos | Tap water (MX), fugu license (JP), beef in India, pork in Indonesia |
communication | Language register, terminology | Honorifics (KR), American War framing (VN), 'gringo' (MX), Cantonese vs Mandarin (HK) |
safety | Driving, public-safety norms | Left-side drive (JP), Autobahn rules (DE), horn-language (IN) |
All metrics are publicly available on the Data Quality Dashboard:
Only the beginning is shown; read the rest in the repo