Skip to content

v1.0.7 — Your coding agent gets a backend

Choose a tag to compare

@xanojustin xanojustin released this 07 Oct 04:10
· 3 commits to main since this release

This release is about coding agents working on a Xano backend. An agent in a Xano project now reaches the Xano Engine on your machine over MCP: it can read tables and rows, seed data, and run functions and tests with nothing to configure by hand. xanosdk init adds a backend to an app you already have instead of refusing it, and the new xano-backend agent skill points agents there. The AGENTS.md that init writes now briefs an agent on a project with a backend. It also fixes .ts entries failing on Node 20 and 22 with tsx 4.23.

npm install @xano/sdk@1.0.7

Coding agents reach the Xano Engine over MCP

Xano Engine v0.1.20 serves an MCP server, and xanosdk init connects Claude Code (.mcp.json) and Cursor (.cursor/mcp.json) to it. Through it an agent can look at the deployed backend (objects, table schemas, rows, run history), seed and edit rows, and run functions, tasks, triggers, endpoints and tests. Tables and code still change in xano/ and ship with xanosdk deploy.

The config holds no URL and no token. It launches xanosdk local mcp --stdio, which finds the running engine and its current bearer itself. It keeps working when the engine restarts on a new port, connects before the first deploy and lists the tools once one exists, and works in a fresh clone before npm install. A local deploy prints the MCP URL, and xanosdk local mcp prints the config for any other agent. An engine older than v0.1.20 says so on deploy, and xanosdk local update moves the project to one that serves MCP.

init adds a backend to an app you already have

In a non-empty directory, xanosdk init now writes xano/ and merges what the backend needs into the project, instead of refusing. That means the xano:* scripts and dependencies in package.json, a .gitignore block, and an AGENTS.md section. Your own entries win: an existing dependency keeps your range, and a xano:* script you defined differently is a clash. Every clash is listed and refused unless --force. Key order, indentation and line endings are kept. CommonJS hosts such as most Next.js apps work through a xano/package.json marker, so your manifest is untouched. A new project can now also skip the frontend with --framework none.

The xano-backend agent skill

npx @xano/sdk agent-skill install (or npx skills add xano-sdk/sdk, or /plugin marketplace add xano-sdk/sdk in Claude Code) installs a skill into Claude Code, Codex, Cursor, Copilot and Gemini CLI. It steers an agent asked to "add auth and a database" to a Xano backend inside the existing app. It stays out of projects that already have a backend, asks before installing Xano unasked, and hands off to AGENTS.md. The installer never overwrites a copy you edited, and uninstall removes only copies it wrote.

AGENTS.md is a backend brief, not a command list

The managed block init and init --from write is restructured into seven sections: Xano backend, Source of truth, Development workflow, Xano SDK, Backend changes, AI agent guidance, Troubleshooting. The env, testing, lock and add-on guidance keep their own headings.

The new sections cover:

  • Xano is the backend, and no Node server is expected.
  • Every file to inspect before building anything: xano/index.ts, routes.gen.ts, xano.lock, xano/.env.example, the xanosdk block in package.json, and .xano/.
  • The other backends (Express, Supabase, Prisma, …) that mean checking xano/ first.
  • Five common failures, each mapped to the project's own commands.

The brief also explains the engine's MCP server and where its job ends. xanosdk upgrade refreshes an existing project's block in place.

The brief's authoring example is compile-checked

The Xano SDK section shows one typed example: two tables, a pinned API group, and an authenticated POST with s.db.add. It lives in a type-checked fixture, and a test holds the brief to it verbatim, so the snippet an agent copies is one the compiler accepted.

.ts entries load again with tsx 4.23 on Node 20 and 22

A fresh scaffold resolves tsx to 4.23, whose CommonJS build of tsx/esm/api points at a file the package doesn't ship. Every command that loads xano/index.ts (xano:check, build, export, deploy) failed on Node 20 and 22 with Cannot find module …/tsx/dist/esm/api/esm/index.mjs. The CLI now loads tsx's ESM entry from your project, which works with any tsx version. Projects on 1.0.6 that hit this only need the upgrade.

Notes

  • The MCP server needs Xano Engine v0.1.20 or later; older engines keep working without it.
  • The rendered AGENTS.md is about 5.7k tokens in a React scaffold, up from about 3.6k.
  • Projects created before this release don't get the MCP configs written for them: xanosdk local mcp prints the server block to paste into .mcp.json or .cursor/mcp.json, and a local deploy points at that command.
  • CHANGELOG.md is regenerated through 1.0.6.