/mcp-source
Switch MCP for Unity package source in connected Unity projects. Use /mcp-source [main|beta|branch|local] to swap between upstream releases, your remote branch, or local dev checkout.
$ npx -y skills add CoplayDev/unity-mcp --skill mcp-source --agent claude-codeHow it fires
How this skill gets triggered: by you, by Claude, or both.
- Fires itselfAuto-invocation. Claude auto-loads it when your prompt matches the work.Auto-invocation is when the right skill fires by itself at the right moment, driven by a FLOW.md router and a hook, instead of you invoking it by name. It is the difference between a skill being installed and a skill actually getting used.Read the full definition →
- You can call itInvoke it directly when you want it.
- Slash command
/mcp-source
Context preview
The summary Claude sees to decide when to auto-load this skill.
Switch MCP for Unity package source in connected Unity projects. Use /mcp-source [main|beta|branch|local] to swap between upstream releases, your remote branch, or local dev checkout.
SKILL.md
mcp-source.SKILL.mdname: mcp-source
description: Switch MCP for Unity package source in connected Unity projects. Use /mcp-source [main|beta|branch|local] to swap between upstream releases, your remote branch, or local dev checkout.
Switch MCP for Unity Package Source
You are switching the `com.coplaydev.unity-mcp` package source in one or more Unity projects.
allowed-tools
Bash, Read, Edit, ReadMcpResourceTool, ListMcpResourcesTool
Instructions
1. Parse arguments
The user's argument is: `$ARGUMENTS`
Valid values: `main`, `beta`, `branch`, `local`, or empty.
If empty or not one of the four valid values, ask the user to choose:
- **main** — upstream main branch (stable releases)
- **beta** — upstream beta branch (pre-release)
- **branch** — your current remote branch (for testing a PR)
- **local** — local file reference to your checkout (for live dev iteration)
2. Detect repo context
Run these git commands from the current working directory to find the unity-mcp repo:
git rev-parse --show-toplevel # → repo_root
git rev-parse --abbrev-ref HEAD # → branch_name
git remote get-url origin # → origin_url
Convert SSH origins to HTTPS: if `origin_url` starts with `git@github.com:`, transform it to `https://github.com/{owner}/{repo}.git`.
3. Discover target Unity projects
Try two approaches to find `Packages/manifest.json` files to update:
**Approach A — MCP resources (preferred):** Read `mcpforunity://project/info` for each connected Unity instance (use `ListMcpResourcesTool` to find available instances). Extract `projectRoot` and use `{projectRoot}/Packages/manifest.json`.
**Approach B — filesystem fallback:** If no MCP instances are connected, search upward from the current working directory for `Packages/manifest.json` files using Bash:
find "$(pwd)" -maxdepth 3 -name "manifest.json" -path "*/Packages/manifest.json" 2>/dev/null
If multiple manifests are found, update all of them (confirming with the user first).
4. Build the package URL
Based on the user's selection, construct the dependency value:
| Selection | URL | |-----------|-----| | `main` | `https://github.com/CoplayDev/unity-mcp.git?path=/MCPForUnity#main` | | `beta` | `https://github.com/CoplayDev/unity-mcp.git?path=/MCPForUnity#beta` | | `branch` | `{origin_https}?path=/MCPForUnity#{branch_name}` | | `local` | `file:{repo_root}/MCPForUnity` |
For `branch`: use the HTTPS-normalized origin URL and current git branch name. For `local`: use the absolute path to the repo root with `file:` prefix (no `//`), e.g. `file:/Users/davidsarno/unity-mcp/MCPForUnity`.
5. Update each manifest
For each discovered `manifest.json`:
1. Read the file with the Read tool 2. Find the `"com.coplaydev.unity-mcp"` dependency line 3. Use the Edit tool to replace the old value with the new URL 4. Report what was changed: old value → new value, file path
6. Report results
After updating, tell the user:
- Which manifests were updated
- The old and new package source values
- Remind them: "Unity will re-resolve the package automatically. If it doesn't, open Package Manager and click Refresh."
Read more
name: mcp-source description: Switch MCP for Unity package source in connected Unity projects. Use /mcp-source [main|beta|branch|local] to swap between upstream releases, your remote branch, or local dev checkout.
Switch MCP for Unity Package Source
You are switching the `com.coplaydev.unity-mcp` package source in one or more Unity projects.
allowed-tools
Bash, Read, Edit, ReadMcpResourceTool, ListMcpResourcesTool
Instructions
1. Parse arguments
The user's argument is: `$ARGUMENTS`
Valid values: `main`, `beta`, `branch`, `local`, or empty.
If empty or not one of the four valid values, ask the user to choose:
- **main** — upstream main branch (stable releases)
- **beta** — upstream beta branch (pre-release)
- **branch** — your current remote branch (for testing a PR)
- **local** — local file reference to your checkout (for live dev iteration)
2. Detect repo context
Run these git commands from the current working directory to find the unity-mcp repo:
git rev-parse --show-toplevel # → repo_root git rev-parse --abbrev-ref HEAD # → branch_name git remote get-url origin # → origin_url
Convert SSH origins to HTTPS: if `origin_url` starts with `git@github.com:`, transform it to `https://github.com/{owner}/{repo}.git`.
3. Discover target Unity projects
Try two approaches to find `Packages/manifest.json` files to update:
**Approach A — MCP resources (preferred):** Read `mcpforunity://project/info` for each connected Unity instance (use `ListMcpResourcesTool` to find available instances). Extract `projectRoot` and use `{projectRoot}/Packages/manifest.json`.
**Approach B — filesystem fallback:** If no MCP instances are connected, search upward from the current working directory for `Packages/manifest.json` files using Bash:
find "$(pwd)" -maxdepth 3 -name "manifest.json" -path "*/Packages/manifest.json" 2>/dev/null
If multiple manifests are found, update all of them (confirming with the user first).
4. Build the package URL
Based on the user's selection, construct the dependency value:
| Selection | URL | |-----------|-----| | `main` | `https://github.com/CoplayDev/unity-mcp.git?path=/MCPForUnity#main` | | `beta` | `https://github.com/CoplayDev/unity-mcp.git?path=/MCPForUnity#beta` | | `branch` | `{origin_https}?path=/MCPForUnity#{branch_name}` | | `local` | `file:{repo_root}/MCPForUnity` |
For `branch`: use the HTTPS-normalized origin URL and current git branch name. For `local`: use the absolute path to the repo root with `file:` prefix (no `//`), e.g. `file:/Users/davidsarno/unity-mcp/MCPForUnity`.
5. Update each manifest
For each discovered `manifest.json`:
1. Read the file with the Read tool 2. Find the `"com.coplaydev.unity-mcp"` dependency line 3. Use the Edit tool to replace the old value with the new URL 4. Report what was changed: old value → new value, file path
6. Report results
After updating, tell the user:
- Which manifests were updated
- The old and new package source values
- Remind them: "Unity will re-resolve the package automatically. If it doesn't, open Package Manager and click Refresh."
Unity MCP acts as a bridge between AI assistants and your Unity Editor. Give your LLM tools to manage assets, control scenes, edit scripts, and automate tasks within Unity.
Other skills on coplaydev-unity-mcp.
- /blender-to-unity
Hand off a model from Blender (via BlenderMCP) into Unity (via MCP for Unity) — export the current Blender model, import it through import_model_file, and place it in the open scene. Use when the user has BlenderMCP and MCP for Unity both connected and wants to bring a Blender
Open skill - /unity-mcp-skill
Orchestrate Unity Editor via MCP (Model Context Protocol) tools and resources. Use when working with Unity projects through MCP for Unity - creating/modifying GameObjects, editing scripts, managing scenes, running tests, or any Unity Editor automation. Provides best practices,
Open skill

