Skip to content

Commit 14c5393

Browse files
docs: rebrand docs site — remove MCP Mesh/Studio product names, restructure versions (#2890)
- Rename product references from "MCP Mesh" / "MCP Studio" to "deco Studio" across all docs - Replace mesh-admin.decocms.com URLs with studio.decocms.com - Restructure content folders: 2026-03-10 → deco-studio, 2025-10-10 → deco-chat - Rename mcp-mesh/ content folder to studio/ - Version dropdown: "deco Studio - current" and "deco.chat - legacy admin" - Hide legacy admin content (no-code/full-code guides) from current version sidebar - Rewrite overview and quickstart pages (EN + PT-BR) to reflect Studio positioning - Add API Reference and Built-in Tools sidebar labels - Update all internal links to new paths Co-authored-by: Claude Opus 4.6 <noreply@anthropic.com>
1 parent f61df19 commit 14c5393

143 files changed

Lines changed: 815 additions & 777 deletions

File tree

Some content is hidden

Large Commits have some content hidden by default. Use the searchbox below for content that may be hidden.

apps/docs/client/src/components/ui/Sidebar.astro

Lines changed: 31 additions & 19 deletions
Original file line numberDiff line numberDiff line change
@@ -69,12 +69,12 @@ function buildTree(docs: any[]): TreeNode[] {
6969
const parentPath = a.path[a.path.length - 2];
7070
7171
// Custom order for decocms top-level pages
72-
if (parentPath === "mcp-mesh") {
72+
if (parentPath === "studio") {
7373
// NOTE: doc IDs do not include ".mdx" (e.g. "overview", not "overview.mdx")
7474
// Order follows: Quickstart → Overview → Core Concepts → Working with MCP → Monitoring → User Management → Reference
7575
7676
// Version-aware ordering
77-
const mcpMeshOrder =
77+
const studioFolderOrder =
7878
version === LATEST_VERSION.id
7979
? [
8080
// Latest version structure
@@ -105,8 +105,8 @@ function buildTree(docs: any[]): TreeNode[] {
105105
"api-reference",
106106
];
107107
108-
const aIndex = mcpMeshOrder.indexOf(a.name);
109-
const bIndex = mcpMeshOrder.indexOf(b.name);
108+
const aIndex = studioFolderOrder.indexOf(a.name);
109+
const bIndex = studioFolderOrder.indexOf(b.name);
110110
if (aIndex !== -1 && bIndex !== -1) {
111111
return aIndex - bIndex;
112112
}
@@ -210,7 +210,7 @@ function buildTree(docs: any[]): TreeNode[] {
210210
211211
// Custom order for deploy docs (now under self-hosting)
212212
const rootPath = a.path[0];
213-
if (rootPath === "mcp-mesh" && parentPath === "deploy") {
213+
if (rootPath === "studio" && parentPath === "deploy") {
214214
// Version-aware deploy file names
215215
const deployOrder =
216216
version === LATEST_VERSION.id
@@ -230,7 +230,7 @@ function buildTree(docs: any[]): TreeNode[] {
230230
if (a.type === "folder" && b.type === "folder") {
231231
const folderOrder: Record<string, number> = {
232232
// Order follows improved information architecture
233-
"mcp-mesh": 0, // decocms docs (main product)
233+
studio: 0, // decocms docs (main product)
234234
"getting-started": 1, // Getting Started (after intro)
235235
decopilot: 2, // Decopilot (elevated section within mcp-mesh)
236236
"self-hosting": 3, // Self-hosting section
@@ -267,17 +267,27 @@ function prefixNode(node: TreeNode, prefix: string[]): TreeNode {
267267
};
268268
}
269269
270-
function groupLegacyAdminSections(nodes: TreeNode[]): TreeNode[] {
270+
function groupLegacyAdminSections(
271+
nodes: TreeNode[],
272+
isLatest: boolean,
273+
): TreeNode[] {
271274
const legacyRootName = "admin-decocms-com";
275+
const legacyFolderNames = [
276+
"no-code-guides",
277+
"full-code-guides",
278+
"getting-started",
279+
];
272280
273281
const files = nodes.filter((n) => n.type === "file");
274282
const folders = nodes.filter((n) => n.type === "folder");
275283
276-
const mcpMesh = folders.find((f) => f.name === "mcp-mesh");
284+
const studioFolder = folders.find((f) => f.name === "studio");
277285
const mcpStudio = folders.find((f) => f.name === "mcp-studio");
278-
const legacyChildren = folders.filter(
279-
(f) => f.name !== "mcp-mesh" && f.name !== "mcp-studio",
280-
);
286+
287+
// For the latest version, exclude legacy admin folders entirely
288+
const legacyChildren = isLatest
289+
? []
290+
: folders.filter((f) => legacyFolderNames.includes(f.name));
281291
282292
const legacyFolder: TreeNode | null =
283293
legacyChildren.length > 0
@@ -292,30 +302,32 @@ function groupLegacyAdminSections(nodes: TreeNode[]): TreeNode[] {
292302
}
293303
: null;
294304
305+
// For v0 (deco.chat), show legacy content directly without the wrapper folder
306+
if (!isLatest) {
307+
return legacyChildren;
308+
}
309+
295310
// Flatten mcp-mesh folder - bring its children to the top level
296-
// mcp-mesh children will be shown at the top level
297311
const next: TreeNode[] = [];
298312
299313
// Add any top-level files first (e.g. introduction.mdx)
300314
next.push(...files);
301315
302-
// Add all mcp-mesh children directly at top level (order controlled by mcpMeshOrder array)
303-
if (mcpMesh && mcpMesh.children.length > 0) {
304-
next.push(...mcpMesh.children);
316+
// Add all mcp-mesh children directly at top level (order controlled by studioFolderOrder array)
317+
if (studioFolder && studioFolder.children.length > 0) {
318+
next.push(...studioFolder.children);
305319
}
306320
307321
// Add mcp-studio as its own top-level section
308322
if (mcpStudio) {
309323
next.push(mcpStudio);
310324
}
311325
312-
// Add legacy admin section at the end
313-
if (legacyFolder) next.push(legacyFolder);
314-
315326
return next;
316327
}
317328
318-
const tree = groupLegacyAdminSections(buildTree(docs));
329+
const isLatest = version === LATEST_VERSION.id;
330+
const tree = groupLegacyAdminSections(buildTree(docs), isLatest);
319331
320332
interface FlatNode {
321333
name: string;

apps/docs/client/src/components/ui/Sidebar.tsx

Lines changed: 8 additions & 6 deletions
Original file line numberDiff line numberDiff line change
@@ -102,7 +102,6 @@ function VersionSelector({
102102
{versionOptions.map((v) => (
103103
<option key={v.id} value={v.id}>
104104
{v.shortLabel}
105-
{v.isLatest ? " (latest)" : ""}
106105
</option>
107106
))}
108107
</select>
@@ -211,13 +210,16 @@ function TreeItem({
211210
return (
212211
<Icon
213212
name={
214-
node.id === "mcp-mesh/self-hosting"
213+
node.id === "studio/self-hosting"
215214
? "Database"
216-
: node.id === "mcp-mesh/self-hosting/deploy"
215+
: node.id === "studio/self-hosting/deploy"
217216
? "Rocket"
218-
: node.id === "mcp-mesh/decopilot"
217+
: node.id === "studio/decopilot"
219218
? "Cpu"
220-
: "Folder"
219+
: node.id === "studio/api-reference" ||
220+
node.id === "api-reference"
221+
? "Code"
222+
: "Folder"
221223
}
222224
size={16}
223225
className={`shrink-0 ${active ? "text-primary" : ""}`}
@@ -447,7 +449,7 @@ export default function Sidebar({
447449
// Handle version change by navigating to the new version's root page
448450
const versionRoots = Object.fromEntries(versions.map((v) => [v.id, v.root]));
449451
const handleVersionChange = (newVersion: string) => {
450-
const root = versionRoots[newVersion] ?? "mcp-mesh/quickstart";
452+
const root = versionRoots[newVersion] ?? "studio/quickstart";
451453
navigate(`/${newVersion}/${locale}/${root}`);
452454
};
453455

apps/docs/client/src/config/versions.ts

Lines changed: 9 additions & 9 deletions
Original file line numberDiff line numberDiff line change
@@ -9,20 +9,20 @@ export interface VersionConfig {
99

1010
export const versions: VersionConfig[] = [
1111
{
12-
id: "2026-03-10",
13-
label: "2026-03-10 (Current)",
14-
shortLabel: "2026-03-10",
12+
id: "deco-studio",
13+
label: "deco Studio - current",
14+
shortLabel: "deco Studio - current",
1515
description: "Current production docs",
1616
isLatest: true,
17-
root: "mcp-mesh/quickstart",
17+
root: "studio/quickstart",
1818
},
1919
{
20-
id: "2025-10-10",
21-
label: "2025-10-10",
22-
shortLabel: "2025-10-10",
23-
description: "Previous version docs",
20+
id: "deco-chat",
21+
label: "deco.chat - legacy admin",
22+
shortLabel: "deco.chat - legacy admin",
23+
description: "Legacy deco.chat docs",
2424
isLatest: false,
25-
root: "introduction",
25+
root: "getting-started/ai-builders",
2626
},
2727
];
2828

apps/docs/client/src/content/2026-03-10/en/mcp-mesh/overview.mdx

Lines changed: 0 additions & 70 deletions
This file was deleted.

apps/docs/client/src/content/2026-03-10/en/mcp-mesh/quickstart.mdx

Lines changed: 0 additions & 65 deletions
This file was deleted.

apps/docs/client/src/content/2026-03-10/pt-br/mcp-mesh/overview.mdx

Lines changed: 0 additions & 70 deletions
This file was deleted.

0 commit comments

Comments
 (0)