Build and deploy apps
Val Town helps users create, inspect, run, and deploy apps; manage files, branches, schedules, environment variables, SQLite data, and blob storage; and debug executions through your AI.
MCP connector Server URL https://api.val.town/v3/mcpCopy Login OAuth Tools Reads data21 find_ templatesfind_ val_ town_ skillsget_ logsget_ tracesget_ val_ detailget_ val_ historylist_ allowed_ userslist_ brancheslist_ bypass_ tokenslist_ env_ group_ varslist_ env_ groupslist_ env_ varslist_ fileslist_ orgslist_ tagslist_ valslistBlobs read_ fileread_ interval_ settingsreadBlob web_ fetch
Changes data11 add_ allowed_ useradd_ env_ varattach_ env_ groupcreate_ branchcreate_ bypass_ tokencreate_ directorycreate_ filecreate_ valremix_ valrequest_ file_ uploadset_ http_ privacy
Deletes or can't be undone27 append_ to_ filecopy_ filesdelete_ branchdelete_ filedelete_ valdeleteBlob detach_ env_ groupfetch_ val_ endpointinsert_ at_ linemerge_ branchmove_ fileprepend_ to_ fileremove_ allowed_ userrename_ filereplace_ in_ filerevert_ to_ versionrevoke_ bypass_ tokenrun_ fileset_ custom_ subdomainset_ file_ typesqlite_ batchsqlite_ executestoreBlob storeBlobFromUrl update_ fileupdate_ valwrite_ interval_ settings
Skills 11 in the ChatGPT listing
Blob storage Use when a val needs simple key/value persistence — JSON documents, cached responses, uploaded files, or binary assets. Client side js Use when a val needs to ship JavaScript that runs in the browser — React apps, vanilla DOM scripts, canvas/games, htmx/Alpine, or any client-side module beyond a single inline snippet. Create skill Use when the user wants to persist a preference, skill, or knowledge. Cron and intervals Use when building a val that runs on a schedule — periodic jobs, recurring tasks, polling, cron jobs, monitoring, alerting. email Use when a val sends email, receives email, or is triggered by an incoming email. Http endpoints Use when building an HTTP val — a web endpoint, API route, webhook receiver, or any val that responds to HTTP requests. oauth Use when a val needs to require login with a Val Town account — gating routes behind authentication, identifying the current user, building user-specific dashboards. React ui Use when building any val with a user interface — dashboards, web apps, landing pages, forms, admin tools, anything users see in a browser. Restricted access Use when a val's HTTP endpoints should not be open to the whole internet — limiting an app to a team, understanding why an endpoint redirects to a login page, letting a webhook through, or identifying which Val Town user is viewing an app. Sqlite storage Use when a val needs to store structured or relational data. Third party integrations Use when a val talks to an external service — Slack, Discord, Telegram, Stripe, GitHub, Gmail, Google Sheets, Postgres/Supabase/Upstash/Neon, browser automation (Playwright, Browserbase, Kernel, Steel), web scraping, PDF generation, push notifications, RSS, or any other third-party API.