{"name":"build.uplink/uplink","slug":"uplink","title":"Uplink","description":"Automate a real, logged-in browser on your own device — no stored credentials, no bot detection.","url":"https://mcp.market/server/uplink","rating":null,"grade":"B","score":82,"certified":false,"status":"active","category":"scraping","tags":["scraping"],"presence":{"score":21,"stars":0,"forks":0,"downloads_week":297,"last_push_at":"2026-06-23T21:05:48.000Z","license":"NOASSERTION"},"uptime":null,"claimed":false,"transport":"npm","callable_via_gateway":false,"default_price_micros":0,"repository":"https://github.com/uplink-code/mcp","website":"https://docs.uplink.build","version":"0.1.4","remotes":[],"packages":[{"registryType":"npm","registryBaseUrl":"https://registry.npmjs.org","identifier":"@uplink-code/mcp","version":"0.1.4","runtimeHint":"npx","transport":{"type":"stdio"}}],"tools":[{"name":"uplink_await_network_request","description":"Wait for the next network request whose URL contains `url_pattern` (substring match). Returns method, URL, status, headers, and a body preview.","write_action":false,"price_micros":0,"input_schema":null},{"name":"uplink_connect","description":"","write_action":false,"price_micros":0,"input_schema":null},{"name":"uplink_evaluate_javascript","description":"Run a JS expression in the device's page context and return the result. Can take either a single expression (`document.title`) or a statement block (`const r = await fetch(...); return r.json()`).","write_action":true,"price_micros":0,"input_schema":null},{"name":"uplink_get_command_result","description":"Fetch a single captured page command by id (the id from uplink_list_commands).","write_action":false,"price_micros":0,"input_schema":null},{"name":"uplink_get_current_url","description":"Returns the current URL of the device's active page.","write_action":false,"price_micros":0,"input_schema":null},{"name":"uplink_get_dom_snapshot","description":"Snapshot the DOM of the active device. Returns the body tree (formatted for LLM consumption) plus head metadata (title, base, meta tags, link rels).","write_action":false,"price_micros":0,"input_schema":null},{"name":"uplink_get_network_request","description":"Fetch a single captured network request by id (the id from uplink_search_network).","write_action":false,"price_micros":0,"input_schema":null},{"name":"uplink_get_qr","description":"Render the active session's pairing URL as an ASCII QR code. Opt-in: only call when the user explicitly asks to see a QR (e.g., 'show me a QR' / 'I want to scan'). CRITICAL: Claude Code collapses tool output behind ctrl+o. After calling this tool, you MUST paste the returned QR ASCII art VERBATIM into your own response prose \\u2014 every line of unicode half-blocks, exactly as returned. Do not say","write_action":false,"price_micros":0,"input_schema":null},{"name":"uplink_list_commands","description":"List captured page commands (method, args, result/error, timing) emitted while uplink_run_script executed. Optional `method` filter and `limit`.","write_action":false,"price_micros":0,"input_schema":null},{"name":"uplink_read_logs","description":"Return captured console logs from `uplink_run_script` invocations on the active session. Optional `level` filter and `limit`.","write_action":false,"price_micros":0,"input_schema":null},{"name":"uplink_refresh_pairing_code","description":"Mint a fresh 6-digit pairing code for the active session. Use this if the previous code expired (30s TTL) before the user typed it \\u2014 the session itself stays valid, only the OTP rotates. Surface the new code in YOUR OWN prose, same format as uplink_connect (XXX-XXX), e.g.: `New pairing code: 123-456 (expires in 30s)` Claude Code collapses tool output; the code must be visible in your prose.","write_action":false,"price_micros":0,"input_schema":null},{"name":"uplink_run_script","description":"Execute a script against the device. The script body has `page` and `console` bound. Returns counts of captured flows + logs plus any error.","write_action":true,"price_micros":0,"input_schema":null},{"name":"uplink_search_network","description":"Search captured network requests by URL substring. Returns matches with method, URL, status, headers, and body previews. Use uplink_get_network_request to fetch a single entry by id.","write_action":false,"price_micros":0,"input_schema":null},{"name":"uplink_session_status","description":"Return whether a session is active and whether a device is paired to it.","write_action":false,"price_micros":0,"input_schema":null},{"name":"uplink_wait_for_device","description":"","write_action":false,"price_micros":0,"input_schema":null}],"scan":{"score":82,"grade":"B","scanned_at":"2026-09-26T16:36:27.377Z","report":{"scannerVersion":"0.1.9","scannedAt":"2026-09-26T16:36:27.306Z","components":{"code":{"score":25,"max":25,"notes":["7 source files scanned"]},"reliability":{"score":-1,"max":20,"notes":["no gateway calls yet and no remote to probe"]},"poisoning":{"score":-1,"max":15,"notes":["tools not inspected (local package is not executed); not counted"]},"auth":{"score":12,"max":15,"notes":["local package, no credentials required"]},"maintenance":{"score":8,"max":15,"notes":["last push 95 days ago"]},"identity":{"score":8,"max":10,"notes":["namespace and repository owner differ","GitHub account older than a year","website matches verified namespace"]}},"findings":[],"inputs":{"packages":[{"registryType":"npm","identifier":"@uplink-code/mcp","version":"0.1.4","found":true,"license":"proprietary","hasInstallScripts":false,"dependencyCount":7,"publishedAt":"2026-06-23T21:33:06.967Z","repositoryUrl":"git://github.com/uplink-code/uplink-ai.git","weeklyDownloads":297}],"repo":{"found":true,"owner":"uplink-code","repo":"mcp","archived":false,"pushedAt":"2026-06-23T21:05:48Z","stars":0,"forks":0,"openIssues":0,"ownerType":"Organization","ownerAvatarUrl":"https://avatars.githubusercontent.com/u/208883182?v=4","ownerCreatedAt":"2025-04-23T22:41:04Z","license":"NOASSERTION"},"icon":{"url":"https://docs.uplink.build/mintlify-assets/_mintlify/favicons/uplink-4345befa/uoimuR0Mvat0ngZ0/_generated/favicon/apple-touch-icon.png","source":"site","width":180,"height":180},"presence":{"stars":0,"forks":0,"downloadsWeek":297,"license":"NOASSERTION","lastPushAt":"2026-06-23T21:05:48.000Z","score":21}}}},"grade_history":[],"reviews":[]}