tool · inferred from evidence
curl
A command-line tool for making HTTP requests, used to diagnose Traefik 404 errors.
- AxiosError: Request failed with status code 401 (Notion MCP not sending the Authorization header)
Fixes the Notion MCP server 401ing because it never attaches the Authorization header. Use when the token is valid via curl but the server sends requests without it. Not for misquoted headers or unshared pages.
- 401 Unauthorized: API token is invalid (Notion MCP in Claude Code)
Fixes the Notion MCP server 401ing in Claude Code with a token that works elsewhere. Use when the same token succeeds in the Notion API directly. Not for unshared pages or remote SSE setups.
- Spurious 401 Login Required for a valid PAT after Jira rate limiting (Retry-After: 0)
Fixes mcp-atlassian reporting a valid Jira PAT as expired after a 429 rate limit. Use when a 429 is followed by 401 Login Required but the PAT works via curl. Not for genuinely expired tokens.
- Elasticsearch MCP: index_not_found_exception (the index name is wrong)
Fixes the Elasticsearch MCP server failing searches with index_not_found_exception. The index name in the query does not exist on the cluster. The fix is listing indices and correcting the name. Use when the cluster connects fine but a spec
- Elasticsearch MCP: self-signed certificate verify failed (trust the cluster CA)
Fixes the Elasticsearch MCP server failing with SSL certificate verify errors against clusters using self-signed certificates. The fix is pointing the server at the cluster CA certificate or enabling the insecure-skip option for testing. Us
- toomanyrequests: You have reached your pull rate limit
Fixes Docker Hub 'toomanyrequests: You have reached your pull rate limit'. Use when anonymous or free-tier pulls are throttled. Not for auth failures or manifest errors.
- Chroma MCP: connection refused (ChromaDB not running or wrong host/port)
Fixes the Chroma MCP server failing with connection refused because ChromaDB is not running at the configured host and port. The fix is starting ChromaDB and verifying CHROMA_HOST and CHROMA_PORT. Use when the MCP server cannot reach Chroma
- ModuleNotFoundError: No module named 'paramiko'
Explains why `import paramiko` throws ModuleNotFoundError and how to fix it with `pip install paramiko`. Use when paramiko is missing from a fresh environment. Not for DSSKey or Ed25519Key import errors.
- ModuleNotFoundError: No module named 'oauthlib'
Explains why `import oauthlib` throws ModuleNotFoundError and how to fix it with `pip install oauthlib`. Use when oauthlib is missing, often surfacing through requests-oauthlib or authlib. Not for OAuth flow errors.
- ModuleNotFoundError: No module named 'saml2'
Explains why `from saml2 import BINDING_HTTP_REDIRECT` throws ModuleNotFoundError and how to fix it with `pip install pysaml2`. Use when the import fails. Not for pysaml2 configuration errors.
- ModuleNotFoundError: No module named 'social_django'
Explains why `import social_django` throws ModuleNotFoundError and how to fix it with `pip install social-auth-app-django`. Use when the import fails on a fresh environment. Not for social-auth backend configuration errors.
- Parseur API: 5 req/s per IP, and your dashboard tabs count too
Integrating with the Parseur API: first check your rate budget, 5 req/s per IP with a burst of 20, and remember your own browser tabs on the Parseur dashboard share that budget from the same IP.
- ModuleNotFoundError: No module named 'gnupg'
Explains why `import gnupg` throws ModuleNotFoundError: No module named 'gnupg' and how to fix it with `pip install python-gnupg`. Use when the gnupg import fails on a fresh environment. Not for GPG binary-not-found errors with the package
- ModuleNotFoundError: No module named 'jose'
Explains why `from jose import jwt` throws ModuleNotFoundError: No module named 'jose' and how to fix it with `pip install python-jose`. Use when the jose import fails on a fresh environment. Not for the Python-2-syntax variant of jose prob
- Error: Failed to install provider
Fixes OpenTofu's 'Error: Failed to install provider' when the registry demands auth or the download fails. Use when tofu init fails installing a specific provider version with a registry or network complaint. Not for 'Failed to query availa
- ImportError: cannot import name 'Fernet' from partially initialized module 'cryptography.fernet'
Explains why `from cryptography.fernet import Fernet` throws ImportError: cannot import name 'Fernet' from partially initialized module 'cryptography.fernet' and how to fix it by renaming a local file called cryptography.py. Use when your o
- How to configure APM server to docker-compose file
How to configure APM server to docker-compose file. You need to add APM to your docker file like this: apm-server: image: docker.elastic.co/apm/apm-server:7.13.0 cap_add: ["CHOWN", "DAC_OVERRIDE", "SETGID", "SETUID"] cap_drop: ["ALL"] ports
- Browse AI API v2 auth: Bearer token in the Authorization header, v1 is deprecated
Guide Browse AI API v2 auth: Bearer token in the Authorization header, v1 is deprecated: What works: Generate an API key in the Browse AI dashboard, then call the v2 API like this: curl -H "your auth header key]" YOUR_HOST.browse.ai/v2/robo
- Kestra TIME inputs submitted in 12-hour format (wrong wall-clock time)
Fixes Kestra TIME inputs submitting in 12-hour format (wrong wall-clock time) and broken TIME defaults. Use this when picked times come back shifted by 12 hours or defaults show ~00:00:14. Not for other input types.
- Prediction interrupted; please retry (code: PA) when passing a file object as input
Fixes 'Prediction interrupted; please retry (code: PA)' on Replicate when passing a file object by uploading the file to a URL (a signed S3 URL works for private files) and passing the URL instead. Use when replicate.run fails on local file