nanostudio
Nano Studio Pro: личный репозиторий изображений и видео с поиском по содержимому
Что умеет
- Искать сохранённые изображения по тексту, цвету или похожести
- Генерировать изображения и видео по описанию
- Вырезать объекты, увеличивать разрешение и менять стиль изображений
- Создавать спрайт- и стикер-листы с рамками кадров
- Управлять проектами, задачами и хранением файлов
Какие данные видит
Ассистент видит личный репозиторий ассетов пользователя, авторизация по OAuth 2.1 или персональным токенам доступа.
Нужен ли аккаунт
Не нужен: сервер работает без входа
Nano Studio Pro хранит все сгенерированные и загруженные изображения и видео в одном месте и сканирует их при поступлении, поэтому материалы можно искать по объектам, цветам, текстурам и сценам внутри кадра. MCP-сервер добавляет 35 инструментов: поиск, генерацию, рестайлинг, вырезание объектов, апскейл и создание спрайт-листов.
Как подключить
Как подключить nanostudio к Claude
Адрес сервера, который нужно вставить в настройках Claude:
https://nanostudio--daniel-yanez-g.run.tools
- Откройте Claude (сайт claude.ai или приложение для компьютера).
- Перейдите в Настройки → Коннекторы (в английском интерфейсе: Settings → Connectors).
- Нажмите Добавить пользовательский коннектор (Add custom connector).
- Вставьте адрес сервера, скопированный ниже, в поле URL удалённого MCP-сервера и нажмите Добавить.
- В чате нажмите + → Коннекторы и включите новый коннектор.
Пользовательские коннекторы доступны на тарифах Free, Pro, Max, Team и Enterprise. На Free можно добавить только один. В Team и Enterprise коннектор сначала добавляет владелец организации в Настройки организации → Коннекторы.
Авторизация
После нажатия Добавить откроется окно входа в сервис. Войдите под своим аккаунтом и подтвердите доступ. Пароль Claude не видит.
Как подключить nanostudio к ChatGPT
Адрес сервера, который нужно вставить в настройках ChatGPT:
https://nanostudio--daniel-yanez-g.run.tools
- Откройте ChatGPT в браузере (chatgpt.com). Нужен тариф Plus, Pro, Business, Enterprise или Edu.
- Один раз включите режим разработчика: Настройки → Приложения → Дополнительные настройки → Режим разработчика (Settings → Apps → Advanced settings → Developer mode).
- Откройте Настройки → Коннекторы и нажмите Создать (Create).
- Заполните форму: Название (любое), Описание (одна фраза, что делает сервис), URL MCP-сервера (скопируйте ниже).
- В поле Аутентификация выберите OAuth, если сервис требует вход, иначе Нет. Нажмите Создать.
- В новом чате откройте + → Приложения/Коннекторы и включите коннектор.
Название раздела у OpenAI менялось (Connectors → Apps/Plugins). Если пункт называется иначе, ищите «режим разработчика» в настройках. В рабочих пространствах Business/Enterprise администратор должен разрешить пользовательские коннекторы.
Авторизация
При первом использовании ChatGPT откроет окно входа в сервис. Войдите и подтвердите доступ.
Как подключить nanostudio к Cursor
Адрес сервера, который нужно вставить в настройках Cursor:
https://nanostudio--daniel-yanez-g.run.tools
Быстрый способ: нажмите кнопку Открыть в Cursor ниже, Cursor сам предложит добавить сервер.
Вручную:
- В Cursor откройте Settings → Cursor Settings → MCP и нажмите Add new global MCP server.
- Вставьте JSON, скопированный ниже, в открывшийся файл
~/.cursor/mcp.json(для одного проекта:.cursor/mcp.jsonв корне проекта). - Сохраните файл. Сервер появится в списке MCP; при необходимости пройдите авторизацию по кнопке рядом с ним.
Авторизация
Если сервис требует вход, рядом с сервером в списке MCP появится кнопка авторизации.
Список инструментов сервера (35)
Технические названия из tools/list. Нужны только разработчикам.
| whoami | Authenticated user, plan, and credit balance. Free. |
| get_meta | Server version + capability flags for feature detection. Free, no side effects. |
| get_credits | Wallet balance and (if the token has one) rolling-24h daily-cap status. Free. |
| get_pricing | Live credit cost of every operation: image tiers per model (generate_*, generate_pro_*, generate_gpt_*), restyle, cutouts, scans, and the per-second video rows (video_<model>_sec_<size>[_ref][_audio]; Veo is fixed video_veo_lite_<s>s_<res>). Free. For a whole clip's price use generate_video with dry_run — it multiplies for you. |
| sheet_options | FREE. The menus a sheet is made from, so nothing is invented: kinds, keyable grounds, art styles (photographic, drawn, painted), animation sequences by subject (kind frames) or by game type (kind sprites) with frame counts per detail level, the levels, and the image models with their resolution ceilings. No arguments = the index, ids and one-liners. family + type = that type's sequences with their full frame lists. The ids go straight into generate_sheet. |
| generate_sheet | Makes ONE image holding several separate elements laid out so each can be cut out: an animation cycle, a sprite sheet, an icon set, stickers, props. COSTS CREDITS: one image at the planned tier; quote with dry_run:true first, free. The asserted count, the keyable ground, no lines or labels, a grid whose cells cut cleanly and cells big enough to use are all built here, so never write this prompt yourself and never call generate_image for a sheet. Pick by job: - An animation of one subject (a walk, a face laughing, a coin spinning): kind frames + sequences from sheet_options ({family, type, id, level}; smooth = an in-between after every drawing, the default) + subject + art_style (photograph, film-still, studio-portrait, render-3d, stop-motion for a real subject; inked-cel, anime-cel, watercolour and the rest for a drawn one). - Pixel-art game sprites: kind sprites + sequences by game type. No art_style: pixel art is the style. - Icons, stickers, props: kind + items, one short description each. Returns the generation, the plan (grid, cell px, warnings), the sequences recorded and the prompt. get_sheet_atlas then gives frame rects and tags for any engine. |
| get_sheet_atlas | FREE. For a sheet you own (its generation id): every frame's pixel rect, the per-frame registration, fps, pivot and one animation tag per sequence, as Aseprite JSON that Phaser, Pixi, Godot and Unity import. Ask this instead of measuring gutters in the pixels. |
| plan_sheet | FREE. The prompt-only door to sheets: takes what generate_sheet takes and returns the plan and the exact prompt, for generating elsewhere with generate_image (pass prompt, aspect_ratio, resolution and model UNCHANGED). Prefer generate_sheet, which keeps the prompt server-side and quotes with dry_run. |
| get_storage | Storage usage and quota. Free. |
| list_projects | Lists the user's projects, most-recently-updated first. |
| create_project | Creates a new project. Returns its id. Free. |
| get_project | Fetches a single project by id. |
| resolve_project | Finds a project by exact name (case-insensitive) or creates it if none matches. Idempotent and free. Use this to follow the one-project-per-folder convention: resolve the folder's name, then pass the returned project_id to other tools. |
| generate_image | Generates an AI image. COSTS CREDITS (call get_pricing: generate_* for Nano Banana 2, generate_pro_* for Nano Banana Pro, generate_gpt_* for GPT Image 2.5). Returns the image inline plus id and credits_remaining. Attach references with reference_asset_ids (up to 14). Pick `model` for the job: Nano Banana 2 (default) for light, texture, mood and speed; Nano Banana Pro when structure and proportion must hold exactly; GPT 2.5 Flare for text you can actually read (labels, packaging, signs); GPT 2.5 Sunburst for the same with more care over references, slower. GPT tops out at 2K. |
| list_generations | Lists generations in a project, newest first. |
| list_favorites | Lists the FAVORITED (hearted) photos in a project, newest first — the images the user has marked as liked. Each item includes an image_url you can open to view the photo. Use this to look at a project's best/liked shots. |
| import_image | Imports a remote image (by url) into a project timeline (no AI). Counts against storage. |
| list_assets | Lists the user's assets (uploads + references). |
| upload_asset | Uploads a remote image (by url) as a reusable reference asset. Returns the new asset id. Pass category:"product" together with project_id to add it to that project's product photos (products column); without project_id a product asset is stored but shown in no project. |
| get_asset | Fetches metadata for a single asset by id. |
| delete_asset | Permanently deletes an asset. DESTRUCTIVE — confirm with the user first. |
| search | Detection-aware search across the user's assets and generations — matches what the scanner SAW inside each image (item names, colors, textures, scene), not just titles or prompts. Modes: text (default; requires query), color (ranks by closeness to a hex color), similar (ranks by likeness to an anchor image), browse (no query; newest first — use it to explore the library). Scope with project_id; set include_regions to get each hit's detected items with bounding boxes. Text results can include the matched instant INSIDE an indexed video: such hits carry is_video plus a video_moment object (time_ms = the exact millisecond). Filter to one category with gen_type (e.g. gen_type:"video" for clips only). |
| list_tasks | Lists background tasks (generations, uploads, scans, exports). |
| get_task | Status of a single task by id. Use to poll long-running operations. |
| cancel_task | Cancels a running task. Confirm with the user first; spent credits are not refunded. |
| retry_task | Retries a failed task. |
| cutout | Subject cutout (transparent PNG + clean plate). COSTS CREDITS. Source: exactly one of generation_id, asset_id, or url. |
| get_cutout | Fresh signed URLs for an existing cutout by generation_id. Free. |
| get_detections | What the detection engine sees in an image: item names, categories, textures, colors, and bounding boxes (0-1000 normalized), plus a scene narrative. Free. Use it to 'see' an image's contents, or to pick item names for restyle. 404 = never scanned; run scan_image first. |
| scan_image | Runs the detection scan on a generation or asset (items, colors, textures, scene). Costs credits (see get_pricing); takes ~5-20s and returns when done. Results power search and get_detections. Usually unnecessary — every generation and import is scanned automatically. |
| restyle | Edits an existing image with AI. COSTS CREDITS (generate_* pricing, like generate_image). Always creates a NEW generation; the original is untouched. Modes: plain-text edit (just instructions); one-click product placement (action bring + reference_id — places the reference's product into the scene at true scale, relit); recolor/remove/add items (use get_detections for item names); merge two images (merge_bias 0=reference dominates, 100=base dominates); art-style transfer (action style + style_intensity 0-100). reference_id can be an asset OR a generation you own. |
| expand_image | Outpaints an existing generation to a bigger canvas / new aspect ratio — the model extends the scene beyond the original edges. COSTS CREDITS (generate_* by output resolution). Creates a NEW generation in the source's own project. Optionally restrict directions with extend, or zoom out with zoom < 1. |
| upscale_image | Re-renders an existing generation at a higher resolution (sharper detail). COSTS CREDITS (generate_* at the TARGET resolution). Creates a NEW generation in the source's own project. |
| generate_video | Makes a video from an image the user owns (generation or upload). MOST EXPENSIVE operation: priced per second, charged when the clip completes, purchased credits only. Async: poll get_video. Quote with dry_run:true (free), then confirm the number with the user. Pick by job (credits per second, std/pro): - Bring a still to life: kling-v3, the default. 120/160; sound +40; 4K 600; 3-15s; lands on end_frame_id. - Cheapest clip WITH sound: veo-3.1-lite-generate-preview. 4, 6 or 8s; 8s = 280 total (1080p 440); end_frame_id. - Keep an existing clip's acting with a new person or scene: kling-v3-omni + reference_video_id (180/240, silent) + up to 3 reference_image_ids. Without a clip: kling-v3 prices, and 6 stills instead of 3. - Same at 120/160 when 10s, 1080p and silence are enough: kling-video-o1 + the clip. Without a clip it costs what kling-v3 costs and does less. - Copy a dance or gesture from a real clip onto the person in the still: kling-motion-control. 180/240 per second of the clip (3-30s), silent. - Edit a finished clip by describing the change, or sound plus reference stills: gemini-omni-1.1-flash. 140 at 720p (1080p 290, 4K 430, upscales); 3-10s chosen by the model, so state the length in the prompt; up to 3 reference_image_ids; end_frame_id. Reference clips are finished video ids (list_generations). |
| get_video | Status of a video job by task_id (from generate_video). Poll every ~15-30s until completed/failed; on completion returns signed video_url + preview_url. Free (the video's credits settle on completion). Kling 3.0 takes about 2 minutes; Omni, Motion Control, Veo and Gemini Omni 3-6. |