{"_id":"@gtm-api/linkedin-mcp","_rev":"7-21ebddcaeee945c70b675a5218146d49","name":"@gtm-api/linkedin-mcp","dist-tags":{"latest":"1.3.2"},"versions":{"1.1.0":{"name":"@gtm-api/linkedin-mcp","version":"1.1.0","keywords":["mcp","mcp-server","linkedin-mcp-server","model-context-protocol","linkedin","linkedin-api","linkedin-automation","ai-agent","claude"],"author":{"url":"https://gtm-api.com/","name":"GTM API"},"license":"MIT","_id":"@gtm-api/linkedin-mcp@1.1.0","maintainers":[{"name":"gtmcreator","email":"es@gtm-api.com"}],"homepage":"https://gtm-api.com/linkedin-mcp-server/","bugs":{"url":"https://github.com/gtm-api/linkedin-mcp/issues"},"bin":{"gtm-api-linkedin-mcp":"bin/cli.js"},"dist":{"shasum":"990b4130f84b01bf4ae773f8856fdd0322fc78ec","tarball":"https://registry.npmjs.org/@gtm-api/linkedin-mcp/-/linkedin-mcp-1.1.0.tgz","fileCount":4,"integrity":"sha512-Vq6pkmcpQ67pbtSuBFr4UXB0xZxKhiBue3MGWU488hJb7RsVswhe6ikaHIGjbotbdMfC5RNrYy8nMFdDjYa1YA==","signatures":[{"sig":"MEYCIQCE2ahAndvvZ9g2CcvnP/ZRi67hUK7o5Eiq5k42kx6DgwIhAIaRk1FHLzXjJWEgCJ7+rncQ+jmGdsZsyFZoCsJhnZ/U","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":6059},"engines":{"node":">=18"},"gitHead":"72be4fb7fd55b0e5132a24d0d833a2a575a719b1","mcpName":"com.gtm-api/linkedin-mcp","_npmUser":{"name":"gtmcreator","email":"es@gtm-api.com"},"repository":{"url":"git+https://github.com/gtm-api/linkedin-mcp.git","type":"git","directory":"npm"},"_npmVersion":"11.16.0","description":"Managed LinkedIn MCP server for AI agents. Stdio launcher for the hosted GTM API endpoint: search, connect, message and enrich on LinkedIn accounts you own. 160+ typed actions behind three MCP tools.","directories":{},"_nodeVersion":"26.3.0","dependencies":{"mcp-remote":"0.1.38"},"_hasShrinkwrap":false,"_npmOperationalInternal":{"tmp":"tmp/linkedin-mcp_1.1.0_1785749475611_0.688434651459908","host":"s3://npm-registry-packages-npm-production"},"deprecated":"Puts GTM_API_KEY in the process list and the MCP client log. Use 1.3.2 or later, and rotate a key used with this version."},"1.2.0":{"name":"@gtm-api/linkedin-mcp","version":"1.2.0","keywords":["mcp","mcp-server","linkedin-mcp-server","model-context-protocol","linkedin","linkedin-api","linkedin-automation","ai-agent","claude"],"author":{"url":"https://gtm-api.com/","name":"gtm-api"},"license":"MIT","_id":"@gtm-api/linkedin-mcp@1.2.0","maintainers":[{"name":"gtmcreator","email":"es@gtm-api.com"}],"homepage":"https://gtm-api.com/linkedin-mcp-server/","bugs":{"url":"https://github.com/gtm-api/linkedin-mcp/issues"},"bin":{"gtm-api-linkedin-mcp":"bin/cli.js"},"dist":{"shasum":"ea8a247e61042e05f3c28b0896cee15783d9bd78","tarball":"https://registry.npmjs.org/@gtm-api/linkedin-mcp/-/linkedin-mcp-1.2.0.tgz","fileCount":4,"integrity":"sha512-ruGcEKBNLUQXA6JcXzKYu4S/C4ShwX9lS8wM8LT9NIaz9Vcf2fAPjGNFn2DpyGgIJAuuELB5pgT+Y4EoeNcMaw==","signatures":[{"sig":"MEQCICXz+JfD6C4U5KkePoPNsBsq6NfpkzdvFlzInUt+1vdMAiBjB5zgsAl+pUmG1OxKRLHZkumvjQeN06+rBUYI95/ojA==","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":8061},"engines":{"node":">=18"},"gitHead":"b8388cc51e888294b6d52c89e4de7d33ea9b1e35","mcpName":"com.gtm-api/linkedin-mcp","_npmUser":{"name":"gtmcreator","email":"es@gtm-api.com"},"repository":{"url":"git+https://github.com/gtm-api/linkedin-mcp.git","type":"git","directory":"npm"},"_npmVersion":"11.16.0","description":"Managed LinkedIn MCP server for AI agents. Stdio launcher for the hosted gtm-api endpoint: search, connect, message and enrich on LinkedIn accounts you own. 160+ typed actions behind three MCP tools.","directories":{},"_nodeVersion":"26.3.0","dependencies":{"mcp-remote":"0.1.38"},"_hasShrinkwrap":false,"_npmOperationalInternal":{"tmp":"tmp/linkedin-mcp_1.2.0_1786694448931_0.9348738420094218","host":"s3://npm-registry-packages-npm-production"}},"1.2.1":{"name":"@gtm-api/linkedin-mcp","version":"1.2.1","keywords":["mcp","mcp-server","linkedin-mcp-server","model-context-protocol","linkedin","linkedin-api","linkedin-automation","ai-agent","claude"],"author":{"url":"https://gtm-api.com/","name":"gtm-api"},"license":"MIT","_id":"@gtm-api/linkedin-mcp@1.2.1","maintainers":[{"name":"gtmcreator","email":"es@gtm-api.com"}],"homepage":"https://gtm-api.com/linkedin-mcp-server/","bugs":{"url":"https://github.com/gtm-api/linkedin-mcp/issues"},"bin":{"gtm-api-linkedin-mcp":"bin/cli.js"},"dist":{"shasum":"ab74716ed734847b7b6dbb7e5c312b96ed1dc0c1","tarball":"https://registry.npmjs.org/@gtm-api/linkedin-mcp/-/linkedin-mcp-1.2.1.tgz","fileCount":4,"integrity":"sha512-cgmSFRv6YLLYBnBtVgHJjrMN3YATcqEXz4FXfJr+p0J+LnTNbRMC5NNfARk3b9FRk7ijq3HC64Swq/xyDsgEGA==","signatures":[{"sig":"MEYCIQCehUpv0EhsKR9dbJERAPrES4Ax0wjsYENSpK+d+EkefwIhAO2mMNtEIq5uZa3DKLNbQRM9LMu9vhn3oL+bYE/NB9Cj","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":8067},"engines":{"node":">=18"},"gitHead":"4d0b073d6a383ad67fd87bda2f7a78919909d9c5","mcpName":"com.gtm-api/linkedin-mcp","_npmUser":{"name":"gtmcreator","email":"es@gtm-api.com"},"repository":{"url":"git+https://github.com/gtm-api/linkedin-mcp.git","type":"git","directory":"npm"},"_npmVersion":"11.16.0","description":"Managed LinkedIn MCP server for AI agents. Stdio launcher for the hosted gtm-api endpoint: search, connect, message and enrich on LinkedIn accounts you own. 160+ typed actions behind three MCP tools.","directories":{},"_nodeVersion":"26.3.0","dependencies":{"mcp-remote":"0.1.38"},"_hasShrinkwrap":false,"_npmOperationalInternal":{"tmp":"tmp/linkedin-mcp_1.2.1_1786902122702_0.4871823370306907","host":"s3://npm-registry-packages-npm-production"}},"1.3.0":{"name":"@gtm-api/linkedin-mcp","version":"1.3.0","keywords":["mcp","mcp-server","linkedin-mcp-server","model-context-protocol","linkedin","linkedin-api","linkedin-automation","ai-agent","claude"],"author":{"url":"https://gtm-api.com/","name":"gtm-api"},"license":"MIT","_id":"@gtm-api/linkedin-mcp@1.3.0","maintainers":[{"name":"gtmcreator","email":"es@gtm-api.com"}],"homepage":"https://gtm-api.com/linkedin-mcp-server/","bugs":{"url":"https://github.com/gtm-api/linkedin-mcp/issues"},"bin":{"gtm-api-linkedin-mcp":"bin/cli.js"},"dist":{"shasum":"7498faa632b5cb0402d9000e112f1a96faf829f0","tarball":"https://registry.npmjs.org/@gtm-api/linkedin-mcp/-/linkedin-mcp-1.3.0.tgz","fileCount":4,"integrity":"sha512-pJkUnGJQ9MKCFGYQugtre9EFWLOVQKOnf20hXQedVKKe6Nm6RlgDfPtWrrvNQFQ8WQiaesBuIvyoCjrJvtDMFw==","signatures":[{"sig":"MEQCIEGpsR/n6Tp67bZd6nBLwImwmTV/0qBlMgrc5MPZPb8YAiArWAqclN9lpcJXlrP/urX9LPkYUiGQvJSvnhC8kjqIkg==","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":10043},"engines":{"node":">=18"},"gitHead":"c1c90ea1b6e7255b6528178c16b08e1c92dc6550","mcpName":"com.gtm-api/linkedin-mcp","_npmUser":{"name":"gtmcreator","email":"es@gtm-api.com"},"repository":{"url":"git+https://github.com/gtm-api/linkedin-mcp.git","type":"git","directory":"npm"},"_npmVersion":"11.16.0","description":"Managed LinkedIn MCP server for AI agents. Stdio launcher for the hosted gtm-api endpoint: search, connect, message and enrich on LinkedIn accounts you own. 160+ typed actions behind three MCP tools.","directories":{},"_nodeVersion":"26.3.0","dependencies":{"mcp-remote":"0.1.38"},"_hasShrinkwrap":false,"_npmOperationalInternal":{"tmp":"tmp/linkedin-mcp_1.3.0_1787127310493_0.7139826658767499","host":"s3://npm-registry-packages-npm-production"},"deprecated":"Puts GTM_API_KEY in the process list and the MCP client log. Use 1.3.2 or later, and rotate a key used with this version."},"1.3.1":{"name":"@gtm-api/linkedin-mcp","version":"1.3.1","keywords":["mcp","mcp-server","linkedin-mcp-server","model-context-protocol","linkedin","linkedin-api","linkedin-automation","ai-agent","claude"],"author":{"url":"https://gtm-api.com/","name":"gtm-api"},"license":"MIT","_id":"@gtm-api/linkedin-mcp@1.3.1","maintainers":[{"name":"gtmcreator","email":"es@gtm-api.com"}],"homepage":"https://gtm-api.com/linkedin-mcp-server/","bugs":{"url":"https://github.com/gtm-api/linkedin-mcp/issues"},"bin":{"gtm-api-linkedin-mcp":"bin/cli.js"},"dist":{"shasum":"55e53a495773d988af18809dfe75ae5e2b62e11a","tarball":"https://registry.npmjs.org/@gtm-api/linkedin-mcp/-/linkedin-mcp-1.3.1.tgz","fileCount":4,"integrity":"sha512-5AuA4AueK9BIZ8IsGBLPJqzyhsoc9Vx1ISstrI1BcgX3VPr4biXwnm7c/Tg95KhR5fXzI9tv8iyEIo+Ha39aAQ==","signatures":[{"sig":"MEQCIBVubm3lCAIwCDa8DK1i0X52jSF8Hp8Mi1L/RWoiK1SxAiA7b2bel9MjrsJYJmd1NZneDO5Kd/2GV3gld8bhj141tA==","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"},{"sig":"MEYCIQDb+0ozfswWZIam+JJ9NTc7noa1o9eDikslRXepAs3x6wIhANb+6gz5vqidz6IfeR7EakwMsQeNbIsQzYQDNEl0OHJJ","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":10062},"engines":{"node":">=18"},"mcpName":"com.gtm-api/linkedin-mcp","_npmUser":{"name":"gtmcreator","email":"es@gtm-api.com"},"repository":{"url":"git+https://github.com/gtm-api/linkedin-mcp.git","type":"git","directory":"npm"},"_npmVersion":"11.16.0","description":"Managed LinkedIn MCP server for AI agents. Stdio launcher for the hosted gtm-api endpoint: search, connect, message and enrich on LinkedIn accounts you own. 160+ typed actions behind three MCP tools.","directories":{},"_nodeVersion":"26.3.0","dependencies":{"mcp-remote":"0.1.38"},"_hasShrinkwrap":false,"_npmOperationalInternal":{"tmp":"tmp/linkedin-mcp_1.3.1_1790610899137_0.8106975416808588","host":"s3://npm-registry-packages-npm-production"},"deprecated":"Puts GTM_API_KEY in the process list and the MCP client log. Use 1.3.2 or later, and rotate a key used with this version."},"1.3.2":{"name":"@gtm-api/linkedin-mcp","version":"1.3.2","keywords":["mcp","mcp-server","linkedin-mcp-server","model-context-protocol","linkedin","linkedin-api","linkedin-automation","ai-agent","claude"],"author":{"url":"https://gtm-api.com/","name":"gtm-api"},"license":"MIT","_id":"@gtm-api/linkedin-mcp@1.3.2","maintainers":[{"name":"gtmcreator","email":"es@gtm-api.com"}],"homepage":"https://gtm-api.com/linkedin-mcp-server/","bugs":{"url":"https://github.com/gtm-api/linkedin-mcp/issues"},"bin":{"gtm-api-linkedin-mcp":"bin/cli.js"},"dist":{"shasum":"f7878a78e03aca6573dabf29105108f93fde552b","tarball":"https://registry.npmjs.org/@gtm-api/linkedin-mcp/-/linkedin-mcp-1.3.2.tgz","fileCount":4,"integrity":"sha512-OOGa/9iu+PYguSer8UZ0Xm5tP55bKL0Z147BZNp+vwBDY55MotIpDr3cIlEKky+hbDRec7B9WB8rn/VzFt4Axw==","signatures":[{"sig":"MEYCIQDdGCizIF3NkIKaV4wny8IvU+i0x60VjHZE3sVY0Z10mQIhAIdMhToaj1YwqRpfXkJ8eksrQyB9o0dnL6MO+x+Hthwc","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"},{"sig":"MEUCIQCc0IBx2lgH9ZBTJh6TDgVy86NR4v1aX+nR7hjDLaj9OgIgFBK68imE+BVfBLT8uKHsRNJUnxf3zCTKCjs3oAQmgig=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":11049},"engines":{"node":">=18"},"gitHead":"4666bf65c267fb049922094fd39e62b21fc0b24f","mcpName":"com.gtm-api/linkedin-mcp","scripts":{"test":"node --test test/key-exposure.test.js"},"_npmUser":{"name":"gtmcreator","email":"es@gtm-api.com"},"repository":{"url":"git+https://github.com/gtm-api/linkedin-mcp.git","type":"git","directory":"npm"},"_npmVersion":"11.16.0","description":"Managed LinkedIn MCP server for AI agents. Stdio launcher for the hosted gtm-api endpoint: search, connect, message and enrich on LinkedIn accounts you own. 160+ typed actions behind three MCP tools.","directories":{},"_nodeVersion":"26.3.0","dependencies":{"mcp-remote":"0.1.38"},"_hasShrinkwrap":false,"_npmOperationalInternal":{"tmp":"tmp/linkedin-mcp_1.3.2_1793710893991_0.5256702921793723","host":"s3://npm-registry-packages-npm-production"}}},"time":{"created":"2026-08-03T09:31:15.382Z","modified":"2026-11-04T05:35:13.128Z","1.1.0":"2026-08-03T09:31:15.749Z","1.2.0":"2026-08-14T08:00:49.068Z","1.2.1":"2026-08-16T17:42:02.831Z","1.3.0":"2026-08-19T08:15:10.670Z","1.3.1":"2026-09-28T15:54:59.212Z","1.3.2":"2026-11-03T13:01:34.067Z"},"bugs":{"url":"https://github.com/gtm-api/linkedin-mcp/issues"},"author":{"url":"https://gtm-api.com/","name":"gtm-api"},"license":"MIT","homepage":"https://gtm-api.com/linkedin-mcp-server/","keywords":["mcp","mcp-server","linkedin-mcp-server","model-context-protocol","linkedin","linkedin-api","linkedin-automation","ai-agent","claude"],"repository":{"url":"git+https://github.com/gtm-api/linkedin-mcp.git","type":"git","directory":"npm"},"description":"Managed LinkedIn MCP server for AI agents. Stdio launcher for the hosted gtm-api endpoint: search, connect, message and enrich on LinkedIn accounts you own. 160+ typed actions behind three MCP tools.","maintainers":[{"name":"gtmcreator","email":"es@gtm-api.com"}],"readme":"# @gtm-api/linkedin-mcp\n\nLauncher for [gtm-api: LinkedIn MCP Server](https://github.com/gtm-api/linkedin-mcp), the managed LinkedIn MCP server for AI agents. It bridges a stdio MCP client (Claude Desktop, Cursor, anything that spawns a command) to the hosted streamable-http endpoint at `https://mcp.gtm-api.com/mcp` via [mcp-remote](https://www.npmjs.com/package/mcp-remote). No server logic runs locally; every tool executes on the hosted server, where account safety is enforced: warm-up, server-side daily limits, preview-then-confirm on outward actions. 20,000+ LinkedIn accounts run on that stack, and under 1% of them have ever been restricted. The method is written up at [gtm-api.com/safe-linkedin-automation](https://gtm-api.com/safe-linkedin-automation/).\n\nThe server exposes three MCP tools (`list_toolsets`, `get_toolset_tools`, `call_tool`) that give an agent progressive access to 160+ typed LinkedIn actions: messaging, connection requests, content, enrichment, search, account health and infrastructure.\n\n## Setup\n\nAdd the server to your MCP client. There is no key to paste: on first run a browser opens, you sign in and approve access, and the tokens are cached under `~/.mcp-auth`.\n\nClaude Desktop (`claude_desktop_config.json`):\n\n```json\n{\n  \"mcpServers\": {\n    \"gtm-api\": {\n      \"command\": \"npx\",\n      \"args\": [\"-y\", \"@gtm-api/linkedin-mcp\"]\n    }\n  }\n}\n```\n\nClaude Code:\n\n```\nclaude mcp add gtm-api -- npx -y @gtm-api/linkedin-mcp\n```\n\nSign up at [app.gtm-api.com](https://app.gtm-api.com/signup) (forever free plan, no card) and connect a LinkedIn account you own, either before or during the consent step.\n\nIf your client speaks streamable-http itself, skip this launcher and point it straight at `https://mcp.gtm-api.com/mcp`. It will run the same OAuth flow. The launcher is for clients that can only spawn a command.\n\n## Authentication\n\nTwo ways in; pick one.\n\n**OAuth (default).** With no environment set, your client discovers the flow on its own: the first call returns a `WWW-Authenticate` challenge naming the server's metadata document, mcp-remote registers itself with the authorization server (dynamic client registration, so nothing has to be pre-registered with us) and opens the consent page in a browser. Tokens are cached under `~/.mcp-auth`. Best for anything with a human at the keyboard.\n\n**API key.** Set `GTM_API_KEY` to a key from the app (Settings, API keys) and the launcher sends it as the bearer on every call: no browser, no consent screen. Best for headless machines, CI and servers where a browser round-trip is not an option. A rejected key fails fast at startup with the reason instead of looping.\n\n```json\n{\n  \"mcpServers\": {\n    \"gtm-api\": {\n      \"command\": \"npx\",\n      \"args\": [\"-y\", \"@gtm-api/linkedin-mcp\"],\n      \"env\": { \"GTM_API_KEY\": \"gtm_live_...\" }\n    }\n  }\n}\n```\n\nVersion notes: launchers up to 1.1.0 required `GTM_API_KEY` but the endpoint rejected keys back then, so they failed on the first call; 1.2.x ignored the variable and did OAuth only. Key auth works from 1.3.0 on, and requires nothing else in the config.\n\n1.3.2 hands the key to mcp-remote as a `${GTM_API_KEY}` reference instead of its value, so the key no longer shows up in the process list or in your MCP client's logs. 1.1.0, 1.3.0 and 1.3.1 exposed it in both, and so did the Docker image published before 1.3.2. If you ran one of them with a key and those logs ever left your machine (a bug report, a support chat), rotate the key in the app under Settings, API keys.\n\n## Environment variables\n\n| Variable | Required | Meaning |\n|---|---|---|\n| `GTM_MCP_URL` | no | Endpoint override, defaults to `https://mcp.gtm-api.com/mcp` |\n| `GTM_API_KEY` | no | Authenticate with this `gtm_live_...` key instead of OAuth |\n\nExtra CLI arguments pass through to `mcp-remote`, so its flags are available: `--debug` to write detailed logs to `~/.mcp-auth`, `--host` to change the callback hostname, `--allow-http` for a plain-http endpoint override.\n\n## Links\n\n- What the server does, tool list, safety model: [github.com/gtm-api/linkedin-mcp](https://github.com/gtm-api/linkedin-mcp)\n- Connecting any client, step by step: [docs.gtm-api.com/mcp/connect](https://docs.gtm-api.com/mcp/connect)\n- How a LinkedIn MCP server works: [gtm-api.com/linkedin-mcp-server](https://gtm-api.com/linkedin-mcp-server/)\n- Docker variant of this launcher: [hub.docker.com/r/gtmapi/linkedin-mcp](https://hub.docker.com/r/gtmapi/linkedin-mcp)\n","readmeFilename":"README.md"}