
Val Town
town.valPublished by val.townOfficial publisherv1.0.0Updated Oct 24, 2026
Deploy serverless TypeScript on Val Town: HTTP vals, cron, SQLite, email, OAuth.
Overview
Hosted Val Town MCP server that lets an assistant build and deploy serverless TypeScript on Val Town, including HTTP vals, crons, SQLite, email and OAuth.
- What you can do
- Deploy and manage serverless TypeScript on Val Town, including HTTP vals and scheduled crons
- Work with Val Town SQLite storage, email sending and OAuth flows
- Use bundled platform skills covering HTTP vals, crons, SQLite, email, OAuth, frontend and API integrations
- Connect through a hosted remote endpoint after an OAuth sign-in in the browser
- When to use it
- Useful when you want an AI coding agent to build, deploy or maintain Val Town projects — small TypeScript HTTP endpoints, scheduled jobs, or integrations — without leaving the assistant. It suits Claude Code, Codex and Cursor users who already work on Val Town.
- Requirements
- A remote MCP endpoint hosted by Val Town; no local package or environment variables are declared. OAuth authentication is required, and the agent runs the OAuth flow in your browser on first tool use. The README also describes installing a plugin that adds platform skills to Claude Code, Codex or Cursor.
Installation
In SourceWeft
- Open Val Town in the dashboard and add it to a workspace.
- Connect the required credentials. They are stored privately and never shown on public pages.
- Enable the server for the chats that should use its tools.
Web executable via Streamable HTTP. Remote servers run from the web runtime once configured in a workspace.
Use with an agent
Paste this prompt into Claude Code, Codex, Cursor or another agent — or into SourceWeft chat. The agent reads this server's install guide, shows you its publisher, endpoint and sign-in, and adds it to your client once you agree. Keys never go into a command.
Read https://sourceweft.com/mcp/town.val%2Fmcp/install.md and connect the MCP server it describes to my client. Before changing any config, show me its publisher, endpoint and sign-in method and wait for my OK. Never put an API key in a command or in a file I would commit; ask me where it should come from.Other MCP clients
Add this to your client's mcpServers config. The client completes OAuth sign-in on first connect.
{
"mcpServers": {
"val-town": {
"type": "http",
"url": "https://api.val.town/v3/mcp"
}
}
}README
Agent plugins for Val Town
Installs the Val Town MCP server and Skills for Claude Code, Codex, and Cursor.
Skills are markdown files with platform guidance for building on Val Town. Used by Val Town's own tools (Townie, the MCP server) and by AI coding agents. Skills include HTTP vals, crons, SQLite, email, OAuth, frontend, and API integrations.
Install
Installing the plugin makes platform skills available to your agent and registers
the hosted Val Town MCP server (https://api.val.town/v3/mcp). On first use of
an MCP tool, the agent runs the OAuth flow in your browser.
Claude Code
Install the Val Town plugin by running:
Codex
codex CLI
First, run:
Then fire up codex and run:
Search for Val Town, hit install, and it'll take you through the OAuth path.
Codex desktop app
- Click "Plugins" in the sidebar
- In the dropdown that says "Built by OpenAI" click "Add more +"
- Copy-paste
https://github.com/val-town/pluginsand select "Add marketplace"
Cursor
In Cursor, run:
Or in Cursor Settings, copy-paste https://github.com/val-town/plugins in the search box and select "Add to Cursor."
Contributing
Authoring skills
Skills live in plugin/skills/<name>/SKILL.md with YAML frontmatter:
name(required) — must match the directory name; lowercase, hyphens, ≤64 chars.description(required) — written as "Use when…"; this is how Claude decides to load the skill. ≤1024 chars.triggers(optional) — keyword hints that boostsearchSkillsranking; ignored by Claude Code's native loader.
Keep content audience-neutral: only platform knowledge true for every consumer. No product-flow or chat-only advice.
Then build:
npm run generate validates every skill against both our schema and Claude
Code's frontmatter constraints — a skill that wouldn't load in Claude Code
fails the build.
Relationship to the Val Town monorepo
This package is the source of truth for skill content. The Val Town app and MCP
server consume it as a dependency rather than holding their own copy. See
docs/SKILLS_PLUGIN.md in the main repo for the full design.
Versioning
This repository uses Changesets for publishing. See their documentation for more information.
- For each change that should trigger a new version, you should run
npx @changesets/cliand fill out the interactive prompts to describe the changes. This will generate a new changeset in the.changesetsdirectory. - Each change in that directory will prompt the
release.ymlGitHub action to create a new release PR. - Merging a release PR will automatically publish a new version of this module.
Configuration
Claude Code
The official Claude plugin marketplace pulls from .plugins/marketplace.json.
Codex
Codex reads the native marketplace at .agents/plugins/marketplace.json (and
falls back to the Claude .claude-plugin/marketplace.json for compatibility).
Cursor
Cursor reads .cursor-plugin/marketplace.json and the per-plugin plugin/.cursor-plugin/plugin.json.
Source: README.md at commit 555ff74
Tools
0Version history
1- v1.0.0LatestSep 16, 2026
Score
85% of the applicable checks met
How complete this listing is, computed from the registry entry, the endpoint and public sources. Not a rating of the server and not a statement that it is safe or working today: reachability is a dated check, and no installs or reviews go into the score.
- Reached in the last 30 daysRequired25 pts
- Auth declaredRequired10 pts
- Tools listed15 pts
Answer tools/list without a credential, or ship a package that starts in a sandbox without one.
- DescriptionRequired15 pts
- Logo10 pts
- Documentation15 pts
- License10 pts