Skip to content
This repository was archived by the owner on Oct 14, 2026. It is now read-only.
Merged
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
5 changes: 5 additions & 0 deletions .changeset/fulldev-sites.md
Original file line number Diff line number Diff line change
@@ -0,0 +1,5 @@
---
"fulldev": minor
---

Add Fulldev Sites as the product `sites`, at `https://sites.full.dev/mcp`: have Fulldev make a finished website from a brief and tested design options. For administrators only for now.
1 change: 1 addition & 0 deletions README.md
Original file line number Diff line number Diff line change
Expand Up @@ -7,6 +7,7 @@ Use Fulldev products from a terminal or an AI agent. The CLI is a thin client of
| `cms` | `https://cms.full.dev/mcp` | Editing your website through the [Fulldev CMS](https://cms.full.dev) |
| `connect` | `https://connect.full.dev/mcp` | Your business tools, such as Shopify, through [Fulldev Connect](https://connect.full.dev) |
| `scan` | `https://scan.full.dev/mcp` | Scanning websites with [Fulldev Scan](https://scan.full.dev), for administrators only |
| `sites` | `https://sites.full.dev/mcp` | A finished website from [Fulldev Sites](https://sites.full.dev), for administrators only |

## Install

Expand Down
6 changes: 6 additions & 0 deletions dist/cli.mjs
Original file line number Diff line number Diff line change
Expand Up @@ -357,6 +357,12 @@ const products = [
title: "Fulldev Scan",
url: "https://scan.full.dev/mcp",
description: "Scan whole websites for problems. For administrators only."
},
{
name: "sites",
title: "Fulldev Sites",
url: "https://sites.full.dev/mcp",
description: "Have Fulldev make a finished website from a brief and tested design options. For administrators only for now."
}
];
function findProduct(name) {
Expand Down
5 changes: 3 additions & 2 deletions skills/fulldev/SKILL.md
Original file line number Diff line number Diff line change
@@ -1,8 +1,8 @@
---
name: fulldev
description: Use the Fulldev CLI to work with Fulldev products for the person. Use cms when they want to change their Fulldev website, such as text, pages, images, prices, opening hours, or contact details, or publish a change. Use connect when they want to use their business tools, such as Shopify, through Fulldev Connect. Use scan to scan websites, only for Fulldev administrators.
description: Use the Fulldev CLI to work with Fulldev products for the person. Use cms when they want to change their Fulldev website, such as text, pages, images, prices, opening hours, or contact details, or publish a change. Use connect when they want to use their business tools, such as Shopify, through Fulldev Connect. Use scan to scan websites, only for Fulldev administrators. Use sites when they want Fulldev to make a new website from a brief, only for Fulldev administrators for now.
license: MIT
compatibility: Needs Node.js 24 or later and network access to cms.full.dev, connect.full.dev, scan.full.dev and clerk.full.dev.
compatibility: Needs Node.js 24 or later and network access to cms.full.dev, connect.full.dev, scan.full.dev, sites.full.dev and clerk.full.dev.
---

# Fulldev
Expand All @@ -14,6 +14,7 @@ The `fulldev` CLI talks to the MCP server of each Fulldev product. The tools, th
| `cms` | Editing the person's website. Every change goes to a branch and a draft pull request, within the file permissions Fulldev grants the person. |
| `connect` | The person's business tools, such as Shopify, with the access their organization grants them. |
| `scan` | Scanning websites. Only for Fulldev administrators. |
| `sites` | Making a new website with Fulldev Sites from a brief and design options. Only for Fulldev administrators for now. |

## Run

Expand Down
1 change: 1 addition & 0 deletions src/main.test.ts
Original file line number Diff line number Diff line change
Expand Up @@ -153,6 +153,7 @@ describe("main", () => {
{ product: "cms", signedIn: false },
{ product: "connect", signedIn: false },
{ product: "scan", signedIn: false },
{ product: "sites", signedIn: false },
],
})
})
Expand Down
4 changes: 3 additions & 1 deletion src/products.test.ts
Original file line number Diff line number Diff line change
Expand Up @@ -12,11 +12,12 @@ import {
const cms = findProduct("cms")!

describe("products", () => {
it("has cms, connect and scan with their MCP servers", () => {
it("has cms, connect, scan and sites with their MCP servers", () => {
expect(products.map(({ name, url }) => [name, url])).toEqual([
["cms", "https://cms.full.dev/mcp"],
["connect", "https://connect.full.dev/mcp"],
["scan", "https://scan.full.dev/mcp"],
["sites", "https://sites.full.dev/mcp"],
])
for (const product of products) {
expect(product.title).toMatch(/^Fulldev /)
Expand Down Expand Up @@ -55,6 +56,7 @@ describe("products", () => {
"https://preview.example.com/mcp",
"https://connect.full.dev/mcp",
"https://scan.full.dev/mcp",
"https://sites.full.dev/mcp",
])
expect(parseCommandLine(["connect", "tools"], env)).toMatchObject({
target: { url: "https://connect.full.dev/mcp" },
Expand Down
7 changes: 7 additions & 0 deletions src/products.ts
Original file line number Diff line number Diff line change
Expand Up @@ -32,6 +32,13 @@ export const products: Array<Product> = [
url: "https://scan.full.dev/mcp",
description: "Scan whole websites for problems. For administrators only.",
},
{
name: "sites",
title: "Fulldev Sites",
url: "https://sites.full.dev/mcp",
description:
"Have Fulldev make a finished website from a brief and tested design options. For administrators only for now.",
},
Comment thread
coderabbitai[bot] marked this conversation as resolved.
]

/** A product with the server URL this run uses. */
Expand Down
Loading