Image Studio MCP
Image Studio MCP(画室)
一个独立、可拆卸、可审计的 MCP 生图服务。它可以生成头像、插画和小礼物,也可以把旅行系统保存的文字明信片制作成“正面画面 + 本地排版信笺”的 PNG。
本项目源码公开供个人学习、研究和非商业创作使用;不允许商业使用。详见 LICENSE。
Credits
Product direction and stewardship: yianyan968
Development collaborator: Adel(阿灯), an AI coding agent used through OpenAI Codex
从最初的旅行明信片,到隐私边界、独立 MCP、人工付费审批与本地排版,这个项目由 yianyan968 和阿灯共同设计、实现与验收。项目不代表 OpenAI 的官方产品或背书。
设计边界
通用生图只使用当前工具调用显式传入的画面描述。
不读取聊天记录、日记或长期记忆。
明信片仅向生图服务发送地点、天气、地表、时段和可选视觉提示。
私人信件正文不上传,由本机使用 Sharp 排版。
API 密钥不写进 MCP 配置、项目文件或 Git;Windows 启动脚本使用当前用户的 DPAPI 加密保存。
生图会产生外部 API 调用和潜在费用,建议由宿主系统保留人工批准步骤。
MCP 工具
image_studio_status:只读检查配置、模型和隐私边界,不调用付费 API。image_generate:生成头像、插画、礼物或明信片正面。postcard_generate:读取一张已保存的 Nowhere 明信片,生成画面并在本地合成正文。
本地只读画廊
画廊是可选模块。它只读取作品目录,不修改、删除或上传图片;默认仅监听 127.0.0.1,并且不会向浏览器 API 返回完整磁盘路径或提示词。
通用启动方式:
$env:IMAGE_STUDIO_HOME = "D:\your-data\image-studio"
$env:IMAGE_STUDIO_PERSONA_NAME = "画室主人"
$env:IMAGE_STUDIO_STUDIO_NAME = "我的小画室"
npm run galleryWindows 示例脚本:
.\scripts\start-gallery.ps1 `
-StudioHome "D:\your-data\image-studio" `
-PersonaName "画室主人" `
-StudioName "我的小画室"浏览器打开 http://127.0.0.1:3088。停止画廊只需在对应终端按 Ctrl+C;MCP 生图不受影响。
Windows 中文显示
项目自带脚本中的中文默认名称使用 Unicode 码点构造,可兼容 Windows PowerShell 5.1 对无 BOM 脚本的旧式解码行为。如果你自己编写含中文的 .ps1,请将文件保存为 UTF-8 with BOM,或使用默认以 UTF-8 处理脚本的 PowerShell 7(pwsh)。
chcp 65001 主要改变控制台代码页,不能修复已经按错误编码读取的脚本源码;通常不需要修改 Windows 系统区域或开启全局“Beta UTF-8”选项。
致谢 Nowhere(乌有乡)
感谢 yuyixuanfu/nowhere 创造这个可以出发、漫游并寄回明信片的旅行世界。
Image Studio MCP 希望为暂时没有生图能力的模型补上一双可以创作的手,让旅途中积累的地点、天气与文字,变成一张真正能够寄回家的明信片,也让一次虚拟旅行留下可以看见的温度。
postcard_generate 中的可选适配器读取 Nowhere 导出的 postcards.json 数据格式。我们尊重原作者及原项目的许可与创作;完整的来源说明见 NOTICE.md。
环境要求
Node.js 22 或更高版本
Windows PowerShell(仅 DPAPI 配置脚本需要)
一个兼容的 DashScope 图像模型与对应 API 凭据
安装并检查:
npm install
npm run check
npm test配置
Windows 下可用交互式脚本保存提供商配置:
.\scripts\configure.ps1 -ConfigFile "D:\your-data\image-studio\provider-config.json"
.\scripts\start-local.ps1 -ConfigFile "D:\your-data\image-studio\provider-config.json" -Doctor启动服务:
npm start支持的环境变量:
IMAGE_STUDIO_HOMENOWHERE_HOMEDASHSCOPE_API_KEYDASHSCOPE_WORKSPACE_IDIMAGE_STUDIO_DASHSCOPE_REGIONIMAGE_STUDIO_DASHSCOPE_BASE_URLIMAGE_STUDIO_MODELIMAGE_STUDIO_RECORD_PROMPTSIMAGE_STUDIO_MAX_DOWNLOAD_BYTESIMAGE_STUDIO_REQUEST_TIMEOUT_MSIMAGE_STUDIO_PERSONA_NAMEIMAGE_STUDIO_STUDIO_NAMEIMAGE_STUDIO_SEND_INSTRUCTIONIMAGE_STUDIO_GALLERY_HOST(仅允许本机回环地址)IMAGE_STUDIO_GALLERY_PORTIMAGE_STUDIO_GALLERY_SHOW_PROMPTS(默认false)
请勿把 API 密钥、DPAPI 配置文件、私人明信片、生成记录或 .mcp.json 提交到仓库。
测试
npm run check
npm test
npm audit --audit-level=high测试不会发起真实生图请求。
后续方向见 项目路线图。
许可证
Copyright 2026 yianyan968 and contributors.
本项目按 PolyForm Noncommercial License 1.0.0 提供,仅允许该许可证定义的非商业用途。它属于 source-available,不是 OSI 定义的开源许可证。商业授权目前不提供。