Skip to content
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
138 changes: 69 additions & 69 deletions docs/.vitepress/config.mts
Original file line number Diff line number Diff line change
Expand Up @@ -25,6 +25,73 @@ const integrations = [
['ZBrush', 'dcc-mcp-zbrush'],
]

const englishTheme = {
nav: [
{ text: 'Marketplace', link: '/marketplace' },
{ text: 'Showcase', link: '/showcase' },
{ text: 'For Agents', link: '/agents' },
{ text: 'For Developers', link: '/developers' },
{ text: 'Ecosystem', link: '/ecosystem' },
{
text: 'Reference',
items: [
{ text: 'Core documentation', link: 'https://dcc-mcp.github.io/dcc-mcp-core/' },
{ text: 'CLI reference', link: 'https://dcc-mcp.github.io/dcc-mcp-core/guide/cli-reference' },
{ text: 'Python API', link: 'https://dcc-mcp.github.io/dcc-mcp-core/api/models' },
{ text: 'Marketplace source', link: 'https://github.com/dcc-mcp/marketplace' },
],
},
],
footer: {
message: 'Open infrastructure for agent-driven creative software.',
copyright: 'DCC-MCP',
},
editLink: {
pattern: 'https://github.com/dcc-mcp/dcc-mcp.github.io/edit/main/docs/:path',
text: 'Improve this page',
},
docFooter: { prev: 'Previous page', next: 'Next page' },
lastUpdatedText: 'Last updated',
outlineTitle: 'On this page',
}

const chineseTheme = {
nav: [
{ text: '技能市场', link: '/zh/marketplace' },
{ text: '案例画廊', link: '/zh/showcase' },
{ text: 'Agent 使用', link: '/zh/agents' },
{ text: '开发者', link: '/zh/developers' },
{ text: '生态目录', link: '/zh/ecosystem' },
{
text: '参考资料',
items: [
{ text: 'Core 文档', link: 'https://dcc-mcp.github.io/dcc-mcp-core/zh/' },
{ text: 'CLI 参考', link: 'https://dcc-mcp.github.io/dcc-mcp-core/zh/guide/cli-reference' },
{ text: 'Python API', link: 'https://dcc-mcp.github.io/dcc-mcp-core/api/models' },
{ text: 'Marketplace 源目录', link: 'https://github.com/dcc-mcp/marketplace' },
],
},
],
footer: {
message: '面向 Agent 驱动创意软件的开放基础设施。',
copyright: 'DCC-MCP',
},
editLink: {
pattern: 'https://github.com/dcc-mcp/dcc-mcp.github.io/edit/main/docs/:path',
text: '改进此页面',
},
docFooter: { prev: '上一页', next: '下一页' },
lastUpdatedText: '最后更新',
outlineTitle: '本页内容',
darkModeSwitchLabel: '外观',
lightModeSwitchTitle: '切换到浅色主题',
darkModeSwitchTitle: '切换到深色主题',
langMenuLabel: '切换语言',
sidebarMenuLabel: '菜单',
returnToTopLabel: '返回顶部',
skipToContentLabel: '跳到正文',
}

export default defineConfig({
title: 'DCC-MCP',
description,
Expand All @@ -34,8 +101,8 @@ export default defineConfig({
sitemap: { hostname: siteUrl },

locales: {
root: { label: 'English', lang: 'en', title: 'DCC-MCP', description },
zh: { label: '简体中文', lang: 'zh-CN', title: 'DCC-MCP', description: zhDescription, link: '/zh/' },
root: { label: 'English', lang: 'en', title: 'DCC-MCP', description, themeConfig: englishTheme },
zh: { label: '简体中文', lang: 'zh-CN', title: 'DCC-MCP', description: zhDescription, link: '/zh/', themeConfig: chineseTheme },
},

head: [
Expand Down Expand Up @@ -161,72 +228,5 @@ export default defineConfig({
socialLinks: [
{ icon: 'github', link: 'https://github.com/dcc-mcp' },
],
locales: {
root: {
label: 'English',
nav: [
{ text: 'Marketplace', link: '/marketplace' },
{ text: 'For Agents', link: '/agents' },
{ text: 'For Developers', link: '/developers' },
{ text: 'Ecosystem', link: '/ecosystem' },
{
text: 'Reference',
items: [
{ text: 'Core documentation', link: 'https://dcc-mcp.github.io/dcc-mcp-core/' },
{ text: 'CLI reference', link: 'https://dcc-mcp.github.io/dcc-mcp-core/guide/cli-reference' },
{ text: 'Python API', link: 'https://dcc-mcp.github.io/dcc-mcp-core/api/models' },
{ text: 'Marketplace source', link: 'https://github.com/dcc-mcp/marketplace' },
],
},
],
footer: {
message: 'Open infrastructure for agent-driven creative software.',
copyright: 'DCC-MCP',
},
editLink: {
pattern: 'https://github.com/dcc-mcp/dcc-mcp.github.io/edit/main/docs/:path',
text: 'Improve this page',
},
docFooter: { prev: 'Previous page', next: 'Next page' },
lastUpdatedText: 'Last updated',
outlineTitle: 'On this page',
},
zh: {
label: '简体中文',
nav: [
{ text: '技能市场', link: '/zh/marketplace' },
{ text: 'Agent 使用', link: '/zh/agents' },
{ text: '开发者', link: '/zh/developers' },
{ text: '生态目录', link: '/zh/ecosystem' },
{
text: '参考资料',
items: [
{ text: 'Core 文档', link: 'https://dcc-mcp.github.io/dcc-mcp-core/zh/' },
{ text: 'CLI 参考', link: 'https://dcc-mcp.github.io/dcc-mcp-core/zh/guide/cli-reference' },
{ text: 'Python API', link: 'https://dcc-mcp.github.io/dcc-mcp-core/api/models' },
{ text: 'Marketplace 源目录', link: 'https://github.com/dcc-mcp/marketplace' },
],
},
],
footer: {
message: '面向 Agent 驱动创意软件的开放基础设施。',
copyright: 'DCC-MCP',
},
editLink: {
pattern: 'https://github.com/dcc-mcp/dcc-mcp.github.io/edit/main/docs/:path',
text: '改进此页面',
},
docFooter: { prev: '上一页', next: '下一页' },
lastUpdatedText: '最后更新',
outlineTitle: '本页内容',
darkModeSwitchLabel: '外观',
lightModeSwitchTitle: '切换到浅色主题',
darkModeSwitchTitle: '切换到深色主题',
langMenuLabel: '切换语言',
sidebarMenuLabel: '菜单',
returnToTopLabel: '返回顶部',
skipToContentLabel: '跳到正文',
},
},
},
})
131 changes: 131 additions & 0 deletions docs/.vitepress/theme/components/ShowcaseGallery.vue
Original file line number Diff line number Diff line change
@@ -0,0 +1,131 @@
<script setup lang="ts">
import { computed, ref } from 'vue'
import { useData } from 'vitepress'

type Copy = { label: string; title: string; prompt: string }
type Showcase = { id: string; image: string; source: string; en: Copy; zh: Copy }

const { lang } = useData()
const copied = ref('')
const isZh = computed(() => lang.value.startsWith('zh'))

const showcases: Showcase[] = [
{
id: 'blender-lookdev',
image: '/showcase/blender-lookdev.webp',
source: 'https://github.com/dcc-mcp/dcc-mcp-blender',
en: {
label: 'BLENDER · PROCEDURAL LOOKDEV',
title: 'Spiral galaxy, built from typed tools',
prompt: 'Use the dcc-mcp Skill to connect to Blender. Discover the typed procedural modeling, material, lighting, and render tools needed to create a spiral galaxy in a new collection. Work non-destructively, render a preview, validate the scene, and report the tool calls and output path. Ask before installing anything.',
},
zh: {
label: 'BLENDER · 程序化视觉开发',
title: '用类型化工具构建螺旋星系',
prompt: '使用 dcc-mcp Skill 连接 Blender。搜索创建螺旋星系所需的类型化程序化建模、材质、灯光和渲染工具,在新 Collection 中非破坏性构建,渲染预览并验证场景,最后报告工具调用与输出路径。安装任何内容前先征得我的同意。',
},
},
{
id: 'houdini-portal',
image: '/showcase/houdini-portal.png',
source: 'https://github.com/dcc-mcp/dcc-mcp-houdini',
en: {
label: 'HOUDINI · FX',
title: 'A portal system with procedural particles',
prompt: 'Use the dcc-mcp Skill to connect to Houdini. Discover the typed SOP, POP, material, and preview tools for a procedural energy portal. Build it in a new isolated network, keep parameters editable, cache only when needed, render a preview, and report validation evidence.',
},
zh: {
label: 'HOUDINI · 特效',
title: '程序化粒子能量门',
prompt: '使用 dcc-mcp Skill 连接 Houdini。搜索程序化能量门所需的类型化 SOP、POP、材质和预览工具,在新的独立网络中构建并保持参数可编辑,仅在需要时缓存,渲染预览并报告验证证据。',
},
},
{
id: 'hunyuan3d',
image: '/showcase/hunyuan3d.webp',
source: 'https://github.com/dcc-mcp/dcc-ai-hunyuan3d',
en: {
label: 'HUNYUAN3D · AI SERVICE',
title: 'Prompt-to-3D with traceable provenance',
prompt: 'Inspect the official Marketplace package dcc-ai-hunyuan3d. Ask before installing it or calling a remote service. Generate a production-ready 3D lantern from my description, import it into the selected DCC, validate geometry and materials, and report provenance and output files.',
},
zh: {
label: '混元 3D · AI 服务',
title: '可追溯来源的提示词生成 3D',
prompt: '检查官方 Marketplace 软件包 dcc-ai-hunyuan3d。安装或调用远程服务前先征得我的同意。根据我的描述生成可用于生产的 3D 灯笼,导入所选 DCC,验证几何体和材质,并报告来源与输出文件。',
},
},
{
id: 'geospatial-city',
image: '/showcase/geospatial-city.webp',
source: 'https://github.com/dcc-mcp/dcc-asset-geospatial',
en: {
label: 'GEOSPATIAL · ASSET PROVIDER',
title: 'Real-world city data into a DCC scene',
prompt: 'Inspect the official Marketplace package dcc-asset-geospatial and ask before installing or downloading data. Use a bounded area I provide, preserve CRS and source provenance, create a city layout in my selected DCC, validate object counts and scale, and report the resulting scene path.',
},
zh: {
label: '地理空间 · 资产提供方',
title: '将真实城市数据带入 DCC 场景',
prompt: '检查官方 Marketplace 软件包 dcc-asset-geospatial,安装或下载数据前先征得我的同意。使用我提供的有限区域,保留坐标系与数据来源,在所选 DCC 中创建城市布局,验证对象数量和比例,并报告场景输出路径。',
},
},
{
id: 'maya-architecture',
image: '/showcase/maya-architecture.jpg',
source: 'https://github.com/dcc-mcp/dcc-mcp-maya-procedural-architecture',
en: {
label: 'MAYA · SPECIALIZED SKILL',
title: 'Procedural architecture as a reusable workflow',
prompt: 'Inspect the official Marketplace package dcc-mcp-maya-procedural-architecture and ask before installing it. In a new Maya scene or namespace, create three editable architectural variations from one brief, render a contact sheet, validate scene structure, and report the selected parameters.',
},
zh: {
label: 'MAYA · 专项 SKILL',
title: '可复用的程序化建筑工作流',
prompt: '检查官方 Marketplace 软件包 dcc-mcp-maya-procedural-architecture,安装前先征得我的同意。在新的 Maya 场景或 Namespace 中,根据同一需求创建三个可编辑建筑方案,渲染联系表,验证场景结构并报告所选参数。',
},
},
{
id: 'kenney-assets',
image: '/showcase/kenney-assets.webp',
source: 'https://github.com/dcc-mcp/dcc-asset-kenney',
en: {
label: 'KENNEY · ASSET PROVIDER',
title: 'Licensed assets assembled into a playable scene',
prompt: 'Inspect the official Marketplace package dcc-asset-kenney and ask before installing or downloading assets. Find a coherent pack, preserve license and source provenance, assemble a small playable level in my selected DCC or game engine, validate missing references, and report output paths.',
},
zh: {
label: 'KENNEY · 资产提供方',
title: '将授权资产组装为可玩场景',
prompt: '检查官方 Marketplace 软件包 dcc-asset-kenney,安装或下载资产前先征得我的同意。选择风格统一的资产包,保留许可证和来源信息,在所选 DCC 或游戏引擎中组装一个小型可玩关卡,检查丢失引用并报告输出路径。',
},
},
]

async function copyPrompt(item: Showcase) {
await navigator.clipboard.writeText((isZh.value ? item.zh : item.en).prompt)
copied.value = item.id
window.setTimeout(() => { copied.value = '' }, 1600)
}
</script>

<template>
<div class="showcase-gallery">
<article v-for="item in showcases" :key="item.id" class="showcase-prompt-card">
<a class="showcase-prompt-media" :href="item.source" target="_blank" rel="noreferrer">
<img :src="item.image" :alt="(isZh ? item.zh : item.en).title">
<span>{{ (isZh ? item.zh : item.en).label }}</span>
</a>
<div class="showcase-prompt-body">
<h2>{{ (isZh ? item.zh : item.en).title }}</h2>
<div class="showcase-prompt-copy">
<small>{{ isZh ? '交给你的 Agent' : 'GIVE THIS TO YOUR AGENT' }}</small>
<p>{{ (isZh ? item.zh : item.en).prompt }}</p>
<button type="button" @click="copyPrompt(item)">
{{ copied === item.id ? (isZh ? '已复制' : 'Copied') : (isZh ? '复制提示词' : 'Copy prompt') }}
</button>
</div>
</div>
</article>
</div>
</template>
2 changes: 2 additions & 0 deletions docs/.vitepress/theme/index.ts
Original file line number Diff line number Diff line change
@@ -1,10 +1,12 @@
import DefaultTheme from 'vitepress/theme'
import MarketplaceSearch from './components/MarketplaceSearch.vue'
import ShowcaseGallery from './components/ShowcaseGallery.vue'
import './styles.css'

export default {
extends: DefaultTheme,
enhanceApp({ app }) {
app.component('MarketplaceSearch', MarketplaceSearch)
app.component('ShowcaseGallery', ShowcaseGallery)
},
}
Loading