Skip to content
Merged
Show file tree
Hide file tree
Changes from all commits
Commits
Show all changes
27 commits
Select commit Hold shift + click to select a range
e94769c
docs: add repo-revamp design spec (brand, distribution, analytics)
Jun 27, 2026
0013760
docs: resolve repo-revamp open decisions (single PR, GoatCounter, evo…
Jun 27, 2026
976840f
docs: add repo-revamp implementation plan (13 tasks, 3 phases)
Jun 27, 2026
a2586a3
feat(brand): finalize Ocean split-cube mark + favicon-safe mini
Jun 27, 2026
ce17286
feat(brand): generate favicon/icon set + hero & social cards
Jun 27, 2026
93b4e0d
refactor(brand): ProductInfo constant; standardize Editor UI to 'MCP …
Jun 27, 2026
853b893
docs(readme): rebuild front door + distribution metadata
Jun 27, 2026
1f86306
feat(analytics+brand): unified stats dashboard + wire new brand into …
Jun 27, 2026
45e5c88
chore(review): fold in minor review findings
Jun 27, 2026
1a5bb1b
refactor(analytics): make the dashboard private (maintainer-only)
Jun 28, 2026
bcea12c
feat(analytics): lead with honest user signals, demote PyPI to a labe…
Jun 28, 2026
a02ffe6
fix(readme): show hero banner at true aspect
Jun 28, 2026
be3d66d
feat(readme): replace header banner with a clean logo lockup
Jun 28, 2026
656a040
fix(review): resolve whole-branch review findings (docs/config hygiene)
Jun 28, 2026
df3c522
chore: drop MAINTAINER_ACTIONS.md from the PR
Jun 28, 2026
2ec94fd
style(readme): center the logo header; drop Website + PyPI-version ba…
Jun 28, 2026
88d437c
style(readme): center hero, de-table clients, simplify How-it-works, …
Jun 28, 2026
390c848
style(readme): Discord/Wiki links over badges, Recent Updates first, …
Jun 28, 2026
34c5420
style(brand+readme): full-mark favicon, brand connector for link pair…
Jun 28, 2026
aad002e
style(readme): fix Recent Updates anchor bug; merge nav to one line; …
Jun 28, 2026
a0ee624
docs(readme-zh): sync structure with EN + rewrite copy into natural C…
Jun 28, 2026
69eb51c
chore(revamp): checkpoint WIP before testing feat/3d-asset-generation
Jun 28, 2026
36fcefb
Merge remote-tracking branch 'upstream/beta' into revamp/brand-distri…
Scriptwonder Jun 30, 2026
cc50b21
docs: add v10 release candidate notes
Scriptwonder Jun 30, 2026
b4839ed
docs: tighten v10 release notes
Scriptwonder Jun 30, 2026
b5cb4f9
docs: compare v10 against v9 major baseline
Scriptwonder Jun 30, 2026
3e98413
fix: address ai review comments
Scriptwonder Jun 30, 2026
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
5 changes: 5 additions & 0 deletions .github/workflows/docs-deploy.yml
Original file line number Diff line number Diff line change
Expand Up @@ -70,6 +70,11 @@ jobs:

- name: Build
working-directory: website
env:
# Inject the cookieless GoatCounter beacon when provisioned. The site
# gates on process.env.GOATCOUNTER_CODE, which Actions does NOT
# auto-expose — the Actions variable must be mapped in explicitly.
GOATCOUNTER_CODE: ${{ vars.GOATCOUNTER_CODE }}
run: npm run build

- name: Upload Pages artifact
Expand Down
25 changes: 25 additions & 0 deletions .github/workflows/stats.yml
Original file line number Diff line number Diff line change
@@ -0,0 +1,25 @@
name: Adoption stats (maintainer-only)
# Posts unified PyPI install + docs-traffic numbers to the workflow run summary,
# which is visible ONLY to repo collaborators. Nothing is published publicly.
on:
schedule:
- cron: '0 6 * * *'
workflow_dispatch: {}
permissions:
contents: read
jobs:
stats:
runs-on: ubuntu-latest
steps:
- uses: actions/checkout@v4
- uses: actions/setup-node@v4
with: { node-version: 20 }
- name: Fetch + summarize stats (private to collaborators)
env:
# public stars/forks work with the default token; unique cloners/viewers
# need a maintainer PAT with Administration: read (STATS_GITHUB_TOKEN).
GITHUB_TOKEN: ${{ secrets.GITHUB_TOKEN }}
STATS_GITHUB_TOKEN: ${{ secrets.STATS_GITHUB_TOKEN }}
GOATCOUNTER_TOKEN: ${{ secrets.GOATCOUNTER_TOKEN }}
GOATCOUNTER_SITE: ${{ secrets.GOATCOUNTER_SITE }}
run: node website/scripts/fetch-stats.mjs >> "$GITHUB_STEP_SUMMARY"
4 changes: 4 additions & 0 deletions .gitignore
Original file line number Diff line number Diff line change
Expand Up @@ -69,3 +69,7 @@ tools/.unity-check-logs/
# Ignore the .claude directory, since it might contain local/project-level setting such as deny and allowlist.
/.claude
.mcp.json

# Superpowers skill working artifacts (specs, plans, SDD ledger)
docs/superpowers/
.superpowers/
9 changes: 9 additions & 0 deletions MCPForUnity/Editor/Constants/ProductInfo.cs
Original file line number Diff line number Diff line change
@@ -0,0 +1,9 @@
namespace MCPForUnity.Editor.Constants
{
/// <summary>Canonical user-facing product identity strings.</summary>
public static class ProductInfo
{
public const string ProductName = "MCP for Unity";
public const string MenuRoot = "Window/MCP for Unity";
}
}
11 changes: 11 additions & 0 deletions MCPForUnity/Editor/Constants/ProductInfo.cs.meta

Some generated files are not rendered by default. Learn more about how customized files appear on GitHub.

11 changes: 10 additions & 1 deletion MCPForUnity/Editor/Helpers/McpLogRecord.cs.meta

Some generated files are not rendered by default. Learn more about how customized files appear on GitHub.

7 changes: 4 additions & 3 deletions MCPForUnity/Editor/MenuItems/MCPForUnityMenu.cs
Original file line number Diff line number Diff line change
@@ -1,3 +1,4 @@
using MCPForUnity.Editor.Constants;
using MCPForUnity.Editor.Setup;
using MCPForUnity.Editor.Windows;
using UnityEditor;
Expand All @@ -7,20 +8,20 @@ namespace MCPForUnity.Editor.MenuItems
{
public static class MCPForUnityMenu
{
[MenuItem("Window/MCP For Unity/Toggle MCP Window %#m", priority = 1)]
[MenuItem(ProductInfo.MenuRoot + "/Toggle MCP Window %#m", priority = 1)]
public static void ToggleMCPWindow()
{
MCPForUnityEditorWindow.ShowWindow();
}

[MenuItem("Window/MCP For Unity/Local Setup Window", priority = 2)]
[MenuItem(ProductInfo.MenuRoot + "/Local Setup Window", priority = 2)]
public static void ShowSetupWindow()
{
SetupWindowService.ShowSetupWindow();
}


[MenuItem("Window/MCP For Unity/Edit EditorPrefs", priority = 3)]
[MenuItem(ProductInfo.MenuRoot + "/Edit EditorPrefs", priority = 3)]
public static void ShowEditorPrefsWindow()
{
EditorPrefsWindow.ShowWindow();
Expand Down
11 changes: 10 additions & 1 deletion MCPForUnity/Editor/Services/HttpAutoStartHandler.cs.meta

Some generated files are not rendered by default. Learn more about how customized files appear on GitHub.

11 changes: 10 additions & 1 deletion MCPForUnity/Editor/Services/PackageJobManager.cs.meta

Some generated files are not rendered by default. Learn more about how customized files appear on GitHub.

2 changes: 1 addition & 1 deletion MCPForUnity/Editor/Services/Server/ServerCommandBuilder.cs
Original file line number Diff line number Diff line change
Expand Up @@ -26,7 +26,7 @@ public bool TryBuildCommand(out string fileName, out string arguments, out strin
bool useHttpTransport = EditorConfigurationCache.Instance.UseHttpTransport;
if (!useHttpTransport)
{
error = "HTTP transport is disabled. Enable it in the MCP For Unity window first.";
error = $"HTTP transport is disabled. Enable it in the {ProductInfo.ProductName} window first.";
return false;
}

Expand Down
2 changes: 1 addition & 1 deletion MCPForUnity/Editor/Services/ServerManagementService.cs
Original file line number Diff line number Diff line change
Expand Up @@ -271,7 +271,7 @@ public bool StartLocalHttpServer(bool quiet = false)
"Port In Use",
$"Cannot start the local HTTP server because port {uri.Port} is already in use by PID(s): " +
$"{string.Join(", ", remaining)}\n\n" +
"MCP For Unity will not terminate unrelated processes. Stop the owning process manually or change the HTTP URL.",
$"{ProductInfo.ProductName} will not terminate unrelated processes. Stop the owning process manually or change the HTTP URL.",
"OK");
}
return false;
Expand Down
11 changes: 10 additions & 1 deletion MCPForUnity/Editor/Tools/ExecuteCode.cs.meta

Some generated files are not rendered by default. Learn more about how customized files appear on GitHub.

11 changes: 10 additions & 1 deletion MCPForUnity/Editor/Tools/ManagePackages.cs.meta

Some generated files are not rendered by default. Learn more about how customized files appear on GitHub.

11 changes: 10 additions & 1 deletion MCPForUnity/Editor/Tools/Profiler/ManageProfiler.cs.meta

Some generated files are not rendered by default. Learn more about how customized files appear on GitHub.

11 changes: 10 additions & 1 deletion MCPForUnity/Editor/Tools/Profiler/Operations/CounterOps.cs.meta

Some generated files are not rendered by default. Learn more about how customized files appear on GitHub.

Some generated files are not rendered by default. Learn more about how customized files appear on GitHub.

Some generated files are not rendered by default. Learn more about how customized files appear on GitHub.

Some generated files are not rendered by default. Learn more about how customized files appear on GitHub.

Some generated files are not rendered by default. Learn more about how customized files appear on GitHub.

11 changes: 10 additions & 1 deletion MCPForUnity/Editor/Tools/Profiler/Operations/SessionOps.cs.meta

Some generated files are not rendered by default. Learn more about how customized files appear on GitHub.

Original file line number Diff line number Diff line change
Expand Up @@ -18,7 +18,7 @@
namespace MCPForUnity.Editor.Windows.Components.ClientConfig
{
/// <summary>
/// Controller for the Client Configuration section of the MCP For Unity editor window.
/// Controller for the Client Configuration section of the MCP for Unity editor window.
/// Handles client selection, configuration, status display, and manual configuration details.
/// </summary>
public class McpClientConfigSection
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -14,7 +14,7 @@
namespace MCPForUnity.Editor.Windows.Components.Connection
{
/// <summary>
/// Controller for the Connection section of the MCP For Unity editor window.
/// Controller for the Connection section of the MCP for Unity editor window.
/// Handles transport protocol, HTTP/stdio configuration, connection status, and health checks.
/// </summary>
public class McpConnectionSection
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -10,7 +10,7 @@
namespace MCPForUnity.Editor.Windows.Components.Resources
{
/// <summary>
/// Controller for the Resources section inside the MCP For Unity editor window.
/// Controller for the Resources section inside the MCP for Unity editor window.
/// Provides discovery, filtering, and per-resource enablement toggles.
/// </summary>
public class McpResourcesSection
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -16,7 +16,7 @@
namespace MCPForUnity.Editor.Windows.Components.Tools
{
/// <summary>
/// Controller for the Tools section inside the MCP For Unity editor window.
/// Controller for the Tools section inside the MCP for Unity editor window.
/// Provides discovery, filtering, and per-tool enablement toggles.
/// Tools are grouped by their Group property (core first, then alphabetical).
/// </summary>
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -12,7 +12,7 @@
namespace MCPForUnity.Editor.Windows
{
/// <summary>
/// Editor window for managing Unity EditorPrefs, specifically for MCP For Unity development
/// Editor window for managing Unity EditorPrefs, specifically for MCP for Unity development
/// </summary>
public class EditorPrefsWindow : EditorWindow
{
Expand Down
8 changes: 4 additions & 4 deletions MCPForUnity/Editor/Windows/MCPForUnityEditorWindow.cs
Original file line number Diff line number Diff line change
Expand Up @@ -100,10 +100,10 @@ public static void ShowWindow()
}
else
{
window = GetWindow<MCPForUnityEditorWindow>("MCP For Unity");
window = GetWindow<MCPForUnityEditorWindow>(ProductInfo.ProductName);
}

window.titleContent = new GUIContent("MCP For Unity");
window.titleContent = new GUIContent(ProductInfo.ProductName);
window.minSize = new Vector2(500, 340);

if (window.position.width < 100 || window.position.height < 100)
Expand Down Expand Up @@ -409,8 +409,8 @@ private void UpdateVersionLabel()
string version = AssetPathUtility.GetPackageVersion();
versionLabel.text = $"v{version}";
versionLabel.tooltip = AssetPathUtility.IsPreReleaseVersion()
? $"MCP For Unity v{version} (pre-release package, using prerelease server channel)"
: $"MCP For Unity v{version}";
? $"{ProductInfo.ProductName} v{version} (pre-release package, using prerelease server channel)"
: $"{ProductInfo.ProductName} v{version}";
}

private void QueueUpdateCheck()
Expand Down
2 changes: 1 addition & 1 deletion MCPForUnity/Editor/Windows/MCPForUnityEditorWindow.uxml
Original file line number Diff line number Diff line change
@@ -1,7 +1,7 @@
<ui:UXML xmlns:ui="UnityEngine.UIElements" xmlns:uie="UnityEditor.UIElements" editor-extension-mode="True">
<ui:VisualElement name="root-container" class="root-layout">
<ui:VisualElement name="header-bar" class="header-bar">
<ui:Label text="MCP For Unity" name="title" class="header-title" />
<ui:Label text="MCP for Unity" name="title" class="header-title" />
<ui:Label text="v9.1.0" name="version-label" class="header-version" />
</ui:VisualElement>
<ui:VisualElement name="update-notification" class="update-notification">
Expand Down
11 changes: 10 additions & 1 deletion MCPForUnity/Runtime/Helpers/UnityFindObjectsCompat.cs.meta

Some generated files are not rendered by default. Learn more about how customized files appear on GitHub.

Loading
Loading