Lovable
Make a Lovable project agent-ready: robots.txt, llms.txt, sitemap, and MCP endpoints.
Lovable projects are TanStack Start apps. AIScan grades them like any other SPA-style framework: most static signals live in public/, dynamic ones (sitemap, share cards, JSON-LD) live in route files. AIScan.site itself is a Lovable project — every example below is what runs in production here.
Files in public/
Drop these files at the project root and Lovable serves them from the site root automatically:
public/robots.txt— with explicit AI bot blocks and aSitemap:line.public/llms.txtandpublic/llms-full.txt— an index plus a fuller dump for agents that want everything in one go.public/CLAUDE.md— the human-friendly instructions for Claude Code-style agents.public/aiscan-skill.json— your Agent Skill descriptor.public/.well-known/api-catalog— RFC 9727 catalog if you expose an API.public/.well-known/mcp/server-card.json— your MCP server card.
Dynamic sitemap
Use a server route at src/routes/sitemap[.]xml.ts so the sitemap stays in sync with whatever rows live in your database. See the file in this repo for a working example.
Head metadata per route
Set per-route metadata via head() in createFileRoute. Each shareable route needs its own title, description, og:title, og:description, and canonical. AIScan checks these on every scan of your homepage; deeper pages benefit at share time.
export const Route = createFileRoute("/about")({
head: () => ({
meta: [
{ title: "About — Acme" },
{ name: "description", content: "How Acme came to be." },
{ property: "og:title", content: "About — Acme" },
{ property: "og:description", content: "How Acme came to be." },
{ property: "og:url", content: "https://acme.com/about" },
],
links: [{ rel: "canonical", href: "https://acme.com/about" }],
}),
component: AboutPage,
});MCP & .well-known
Add a server route at src/routes/api/mcp.ts (HTTP transport) and publish a card atpublic/.well-known/mcp/server-card.json. AIScan.site exposes its scanner this way — see MCP Server.
Prompt to ship it
Paste this into Lovable's chat after running AIScan on your project:
Take my AIScan report and apply every failing fix.
Use the project's existing /public/ directory for robots.txt, llms.txt,
CLAUDE.md, aiscan-skill.json, and .well-known files. If a fix needs a
server route, put it under src/routes/ following the TanStack Start
file convention. Don't change unrelated code. Show me the diff first.