{"_id":"@aifirelab/mcp-pinchtab","_rev":"2-7c53bb5c9472f77d12ece3aec943cf35","name":"@aifirelab/mcp-pinchtab","dist-tags":{"latest":"1.1.0"},"versions":{"1.0.0":{"name":"@aifirelab/mcp-pinchtab","version":"1.0.0","keywords":["mcp","pinchtab","browser","automation","ai","claude","model-context-protocol"],"author":{"name":"AI FireLab","email":"dev@aifirelab.com"},"license":"MIT","_id":"@aifirelab/mcp-pinchtab@1.0.0","maintainers":[{"name":"asbahriyas","email":"asbahnaseema11@gmail.com"}],"homepage":"https://github.com/Ai-firelab/mcp-pinchtab#readme","bugs":{"url":"https://github.com/Ai-firelab/mcp-pinchtab/issues"},"bin":{"mcp-pinchtab":"build/index.js"},"dist":{"shasum":"309f4540ad960fb83cbd13356e6c1372d6a35a50","tarball":"https://registry.npmjs.org/@aifirelab/mcp-pinchtab/-/mcp-pinchtab-1.0.0.tgz","fileCount":5,"integrity":"sha512-sfAF+JS9FIHjUo+7MJIb1Rx7v6AzTFuQTullzuSYIdFIr/8gUOwr+Hjrh6gkeVmdfgToPjFJUkTdQeTicPyopw==","signatures":[{"sig":"MEUCIQC0HLoI+zpmHK/f+rksc3KQ5gwmqbWLZiBwSdO9BJqkXAIgPBp/WtBjXVRJ1WNzv1cRHydOCrvR6AOH+/IQRuarY/s=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":19252},"type":"module","gitHead":"6d43d632776b5dafd4e6e5d918a54883fc4e4ac1","scripts":{"build":"tsc","start":"node build/index.js","prepublishOnly":"npm run build"},"_npmUser":{"name":"asbahriyas","email":"asbahnaseema11@gmail.com"},"repository":{"url":"git+https://github.com/Ai-firelab/mcp-pinchtab.git","type":"git"},"_npmVersion":"10.9.0","description":"MCP server for Pinchtab — browser automation for AI agents","directories":{},"_nodeVersion":"22.10.0","dependencies":{"zod":"^3.24.4","@modelcontextprotocol/sdk":"^1.12.1"},"_hasShrinkwrap":false,"devDependencies":{"typescript":"^5.8.0","@types/node":"^22.0.0"},"_npmOperationalInternal":{"tmp":"tmp/mcp-pinchtab_1.0.0_1772645212389_0.24121638000116996","host":"s3://npm-registry-packages-npm-production"}},"1.1.0":{"name":"@aifirelab/mcp-pinchtab","version":"1.1.0","description":"MCP server for Pinchtab — browser automation for AI agents","type":"module","bin":{"mcp-pinchtab":"build/index.js"},"scripts":{"build":"tsc","start":"node build/index.js","prepublishOnly":"npm run build"},"keywords":["mcp","pinchtab","browser","automation","ai","claude","model-context-protocol"],"author":{"name":"AI FireLab","email":"dev@aifirelab.com"},"license":"MIT","repository":{"type":"git","url":"git+https://github.com/Ai-firelab/mcp-pinchtab.git"},"homepage":"https://github.com/Ai-firelab/mcp-pinchtab#readme","bugs":{"url":"https://github.com/Ai-firelab/mcp-pinchtab/issues"},"dependencies":{"@modelcontextprotocol/sdk":"^1.12.1","zod":"^3.24.4"},"devDependencies":{"@types/node":"^22.0.0","typescript":"^5.8.0"},"_id":"@aifirelab/mcp-pinchtab@1.1.0","gitHead":"c26735b43c01e7be56e58dc0111f0556252ea28a","_nodeVersion":"22.10.0","_npmVersion":"10.9.0","dist":{"integrity":"sha512-y7Z2luG2Knf6CDfawuG82t2RYxAqkcoCtw2HS9etRtrymj6peFjDPSfitTAr0IPGRtt8oSWrYC+EmEYq0qDV3g==","shasum":"ef1989a7c11362d5e8ad4d454fc6b17066c1d5e0","tarball":"https://registry.npmjs.org/@aifirelab/mcp-pinchtab/-/mcp-pinchtab-1.1.0.tgz","fileCount":5,"unpackedSize":19173,"signatures":[{"keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U","sig":"MEUCIQDqyNgS4VBMt9LTJcxoWo5z2jg76fg5x3hHP66ZjAo3UQIgRDVowVUVF19XfGuWbq5KFwOI+kf2rNmc6XYlg4C1itQ="}]},"_npmUser":{"name":"asbahriyas","email":"asbahnaseema11@gmail.com"},"directories":{},"maintainers":[{"name":"asbahriyas","email":"asbahnaseema11@gmail.com"}],"_npmOperationalInternal":{"host":"s3://npm-registry-packages-npm-production","tmp":"tmp/mcp-pinchtab_1.1.0_1772741072434_0.3472915694611731"},"_hasShrinkwrap":false}},"time":{"created":"2026-03-04T17:26:52.325Z","modified":"2026-03-05T20:04:32.698Z","1.0.0":"2026-03-04T17:26:52.516Z","1.1.0":"2026-03-05T20:04:32.575Z"},"bugs":{"url":"https://github.com/Ai-firelab/mcp-pinchtab/issues"},"author":{"name":"AI FireLab","email":"dev@aifirelab.com"},"license":"MIT","homepage":"https://github.com/Ai-firelab/mcp-pinchtab#readme","keywords":["mcp","pinchtab","browser","automation","ai","claude","model-context-protocol"],"repository":{"type":"git","url":"git+https://github.com/Ai-firelab/mcp-pinchtab.git"},"description":"MCP server for Pinchtab — browser automation for AI agents","maintainers":[{"name":"asbahriyas","email":"asbahnaseema11@gmail.com"}],"readme":"# @aifirelab/mcp-pinchtab\n\nMCP server for [Pinchtab](https://www.npmjs.com/package/pinchtab) -- browser automation for AI agents.\n\n[![npm version](https://img.shields.io/npm/v/@aifirelab/mcp-pinchtab)](https://www.npmjs.com/package/@aifirelab/mcp-pinchtab)\n[![License: MIT](https://img.shields.io/badge/License-MIT-blue.svg)](./LICENSE)\n\n## What it does\n\nBridges Claude (or any MCP client) to a local Pinchtab server for headless browser control. Provides 16 tools for navigating pages, clicking elements, filling forms, taking screenshots, and more.\n\n- Works over stdio -- compatible with Claude Code, Claude Desktop, and any MCP client\n- Uses Pinchtab's accessibility-tree snapshots for token-efficient page understanding\n- All interactions use element refs (`e0`, `e1`, ...) from snapshots -- no CSS selectors needed\n\n## Prerequisites\n\n- **Node.js 18+**\n- **Pinchtab** installed globally:\n  ```bash\n  npm i -g pinchtab\n  ```\n\n## Quick Start -- Claude Code\n\nAdd to your `.mcp.json`:\n\n```json\n{\n  \"mcpServers\": {\n    \"pinchtab\": {\n      \"type\": \"stdio\",\n      \"command\": \"npx\",\n      \"args\": [\"@aifirelab/mcp-pinchtab\"]\n    }\n  }\n}\n```\n\n## Quick Start -- Claude Desktop\n\nAdd to your `claude_desktop_config.json`:\n\n```json\n{\n  \"mcpServers\": {\n    \"pinchtab\": {\n      \"command\": \"npx\",\n      \"args\": [\"@aifirelab/mcp-pinchtab\"]\n    }\n  }\n}\n```\n\n## Environment Variables\n\n| Variable | Default | Description |\n|----------|---------|-------------|\n| `PINCHTAB_URL` | `http://localhost:9867` | Override Pinchtab server URL |\n| `PINCHTAB_BIN` | `pinchtab` (from PATH) | Override pinchtab binary path |\n\n## Tools\n\n| Tool | Description | Key Parameters |\n|------|-------------|----------------|\n| `navigate` | Navigate the browser to a URL | `url`, `newTab?` |\n| `snapshot` | Get accessibility tree snapshot of the page (token-efficient) | `interactive?`, `compact?` |\n| `click` | Click an element by ref | `ref`, `human?` |\n| `type_text` | Type text character by character | `ref`, `text`, `human?` |\n| `fill` | Instantly fill a form field (clears existing value) | `ref`, `value` |\n| `press` | Press a keyboard key | `key`, `ref?` |\n| `select` | Select an option from a dropdown | `ref`, `value` |\n| `scroll` | Scroll the page or an element | `direction`, `amount?`, `ref?` |\n| `hover` | Hover over an element | `ref` |\n| `get_text` | Extract text content of the current page | -- |\n| `screenshot` | Take a screenshot (base64 JPEG) | -- |\n| `evaluate` | Execute JavaScript in the browser | `expression` |\n| `list_tabs` | List all open browser tabs | -- |\n| `close_tab` | Close the current or a specific tab | `tabId?` |\n| `get_cookies` | Get all cookies for the current page | -- |\n| `health` | Check if Pinchtab server is running | -- |\n\n## License\n\nMIT\n","readmeFilename":"README.md"}