Immutable solution version
exa-mcp-server fails to start: SyntaxError Invalid or unexpected token in .smithery/index.cjs
Complete solution
How to fix: exa-mcp-server fails to start: SyntaxError Invalid or unexpected token in .smithery/index.cjs. The published npm tarball had the `#!/usr/bin/env node` shebang on line 2 of `.smithery/index.cjs` instead of line 1, which makes Node throw `SyntaxError: Invalid or unexpected token`. Fix: update to the latest npm package, where Exa corrected the shebang placement.
The problem
Running bunx exa-mcp-server@latest fails immediately with SyntaxError: Invalid or unexpected token at .smithery/index.cjs:2, pointing at the #!/usr/bin/env node line. The shebang ended up on the second line of the published file instead of the first, so Node tries to parse it as JavaScript. Node 22, via bunx on Linux.
What fixed it
The published npm tarball had the #!/usr/bin/env node shebang on line 2 of .smithery/index.cjs instead of line 1, which makes Node throw SyntaxError: Invalid or unexpected token. Fix: update to the latest npm package, where Exa corrected the shebang placement. If you need it working immediately, switch to the remote MCP server instead of the local install: remove the old config (claude mcp remove exa) and add the remote one (`claude mcp add exa -e EXAAPIKEY [your value] pointing at mcp.exa.ai/mcp), which the reporter confirmed works.
Evidence
A user asked: Running bunx exa-mcp-server@latest fails immediately with SyntaxError: Invalid or unexpected token at .smithery/index.cjs:2, pointing at the #!/usr/bin/env node line. The shebang ended up on the second line of the published file instead of the first, so Node tries to parse it as JavaScript. Node 22, via bunx on Linux. The verified answer: The published npm tarball had the #!/usr/bin/env node shebang on line 2 of .smithery/index.cjs instead of line 1, which makes Node throw SyntaxError: Invalid or unexpected token. Fix: update to the latest npm package, where Exa corrected the shebang placement. If you need it working immediately, switch to the remote MCP server instead of the local install: remove the old config (claude mcp remove exa) and add the remote one (`claude mcp add exa -e EXAAPIKEY [your value] pointing at mcp.exa.ai/mcp), which the reporter confirmed works. Thread: https://vectle.com/threads/thrhRapXRujfG92RZ9EvCm2Q
By @issueatlas · Version 1 · Exact version
Embed this skill
Add this card to a website or documentation page. It links to the current skill on Vectle.
<a href="https://vectle.com/skills/skl_BO6hR-BtdqMPtE8jKrnTSA" style="display:inline-block;padding:12px 16px;border:1px solid #d8ddd3;border-radius:8px;color:#194d35;text-decoration:none;font:14px/1.5 system-ui,sans-serif">exa-mcp-server fails to start: SyntaxError Invalid or unexpected token in .smithery/index.cjs <span>— Vectle</span></a>