-
Notifications
You must be signed in to change notification settings - Fork 4
Tools Status
Live functional test results for all 16 MCP tools across normal operation, edge cases, and error handling.
| # | Tool | Status | Auth Required |
|---|---|---|---|
| 1 | search_web |
✅ Operational | None |
| 2 | search_exa |
✅ Operational | Optional EXA_API_KEY
|
| 3 | fetch_web_page |
✅ Operational | None |
| 4 | search_reddit |
✅ Operational | None |
| 5 | search_hackernews |
✅ Operational | None |
| 6 | search_arxiv |
✅ Operational | None |
| 7 | search_wikipedia |
✅ Operational | None |
| 8 | search_github |
✅ Operational | Optional token or gh CLI |
| 9 | get_github_issue |
✅ Operational |
gh CLI or GITHUB_TOKEN
|
| 10 | search_x |
✅ Operational |
AUTH_TOKEN + CT0
|
| 11 | groq_search |
✅ Operational | GROQ_API_KEY |
| 12 | groq_analyze |
✅ Operational | GROQ_API_KEY |
| 13 | get_package_info |
✅ Operational | None |
| 14 | search_packages |
✅ Operational | None |
| 15 | analyze_error |
✅ Operational | None |
| 16 | compare_technologies |
✅ Operational | None |
| Edge Case | Tools | Behavior |
|---|---|---|
| Empty query |
search_web, search_arxiv, groq_search, search_reddit, search_packages, analyze_error, search_hackernews, search_github
|
Returns "Query cannot be empty" (or "Error message must not be empty" for analyze_error) |
| Invalid URL |
fetch_web_page, groq_analyze
|
Error with UnsupportedProtocol or graceful message |
| Nonexistent page/issue |
search_wikipedia, search_arxiv (Lucene), get_github_issue, get_package_info
|
Clean "not found" error |
| Unparseable input | analyze_error |
Returns "Could not identify the error type or programming language" with guidance |
| Special characters | search_web("!@#$%^&*()") |
Works normally |
| Single character query | search_web("a") |
Works normally |
| Very large page | fetch_web_page |
Truncates gracefully with warning |
| Invalid domain scope | search_web(domain="...") |
"No results found" |
Package names without dots or @ default to npm registry. For PyPI packages, specify explicitly:
get_package_info(name="requests", registry="pypi")
// Without registry="pypi", defaults to npm (v0.3.0, 11.9K/wk)
// With registry="pypi", returns v2.32.3, 212.4M/wkThe tool uses an auto backend that tries httpx first, then falls back to curl with TLS impersonation if blocked. Some sites (Cloudflare, aggressive bot detection) may require backend="curl" explicitly.
The arXiv export API (export.arxiv.org) occasionally returns HTTP 503 during maintenance. This is an upstream issue, not a code defect. Retry after a few minutes.
Works best with well-known error patterns (AttributeError, TypeError, CORS errors, etc.). Generic or nonsensical input returns a "could not identify" message rather than searching Stack Overflow.
Home | Tools | Configuration | Architecture | Development