Quick Reference
| Symptom | Likely Cause | Jump to |
|---|---|---|
npm ERR! 404 Not Found | Package name wrong or registry issue | Installation |
command not found: testdino-mcp | Global bin not on PATH | Installation |
| Server not appearing in editor | Config file path or JSON syntax | Editor Integration |
health returns “Invalid token” | Token expired, revoked, or missing scope | Authentication |
health returns “No projects found” | Token has no project access | Authentication |
Run not found or empty results | Wrong project, filters too narrow | Data Lookup |
ECONNREFUSED or timeout | Network block or firewall | Network |
Installation Issues
npm ERR! 404 Not Found - testdino-mcp
npm ERR! 404 Not Found - testdino-mcp
https://registry.npmjs.org/.command not found: testdino-mcp
command not found: testdino-mcp
bin subdirectory to your PATH. On macOS/Linux:npx:EACCES: permission denied during global install
EACCES: permission denied during global install
npx instead of a global install. It requires no special permissions.Editor Integration
Claude Code: server not registered after claude mcp add
Claude Code: server not registered after claude mcp add
testdino does not appear, re-run the add command:Cursor: TestDino not showing in Settings → MCP
Cursor: TestDino not showing in Settings → MCP
- Open your config file and validate JSON syntax (trailing commas, missing brackets):
-
Confirm the file path Cursor reads. Common locations:
- Project:
.cursor/mcp.json - macOS/Linux home:
~/.cursor/mcp.json - Windows:
%APPDATA%\Cursor\mcp.json
- Project:
- Restart Cursor fully. Quit and reopen, not just reload window.
- Go to Settings → Tools & MCP and check if TestDino appears.
Claude Desktop: server not detected after restart
Claude Desktop: server not detected after restart
-
Confirm config file location for your OS:
- macOS:
~/Library/Application Support/Claude/claude_desktop_config.json - Windows:
%APPDATA%\Claude\claude_desktop_config.json - Linux:
~/.config/Claude/claude_desktop_config.json
- macOS:
-
Verify
npxworks in your terminal:
- Restart Claude Desktop completely (quit from system tray/dock, reopen).
Authentication
health returns: Invalid token or Unauthorized
health returns: Invalid token or Unauthorized
health returns: No projects found or empty project list
health returns: No projects found or empty project list
- Go to app.testdino.com → User Settings → Personal Access Tokens
- Click the eye icon next to your token to view its scope
- Ensure at least one project has Test runs or Manual tests access enabled
- If you just created the project, you may need to regenerate the token with the new project included
health succeeds but tools return Permission denied
health succeeds but tools return Permission denied
list_testrunsandget_run_detailsrequire Test runs module accesslist_manual_test_casesand related tools require Manual tests module access
Data Lookup
list_testruns returns empty results
list_testruns returns empty results
- Remove
by_branch,by_environment, orby_authorfilters - Extend
by_time_intervaltoweeklyormonthly - Confirm you are querying the correct project
get_run_details returns: Run not found
get_run_details returns: Run not found
- The
testrun_idmay be from a different project than what the token can access - If using
counter, provide the correctprojectIdor project name alongside it - Use
list_testrunsfirst to confirm the run exists and get its exact ID
debug_testcase returns no failure data
debug_testcase returns no failure data
debug_testcase tool aggregates historical execution data. If the test case has only run once or has no recorded failures, there is not enough data for root cause analysis.Run the test case across multiple runs to build a failure history before using debug_testcase.Network Errors
ECONNREFUSED or connection timeout
ECONNREFUSED or connection timeout
- Check internet connectivity:
-
If behind a corporate firewall or VPN, ensure outbound HTTPS (port 443) to
*.testdino.comis allowed - Check the Cloud Endpoints page for the full list of domains to allowlist
Rate limiting errors (429)
Rate limiting errors (429)
- Use specific filters instead of
get_all=true - Lower
limitvalues - Avoid rapid sequential calls. Add short delays between queries.