mcp-starter
Val Town is a collaborative website to build and scale JavaScript apps.
Deploy APIs, crons, & store data – all from the browser, and deployed in milliseconds.
main.ts
https://charmaine--fae547db394248dfb4c2cdd2abf5bbd1.web.val.run
Remix this and open main.ts to edit the MCP server and find its HTTP trigger
endpoint.
Add to the MCP configuration file for Cursor or your client of choice:
{ "mcpServers": { "my-val": { "command": "npx", "args": [ "mcp-remote", "<YOUR-VAL-ENDPOINT>/mcp" ] } } }
Since the adapter only works with streamable HTTP on Val Town, you'll probably need mcp-remote to connect to it from clients that don't yet support this newer transport.
The MCP TypeScript SDK uses Node-specific APIs that don't play nicely with Deno or edge functions:
- https://github.com/modelcontextprotocol/typescript-sdk/issues/260
- https://github.com/modelcontextprotocol/typescript-sdk/pull/349
- https://github.com/modelcontextprotocol/typescript-sdk/issues/385
Vercel's MCP adapter translates the standard web Request that Val Town gives
us into something the SDK can understand, and reduces overall boilerplate.