-
Couldn't load subscription status.
- Fork 484
Copy the MCP server to the top level #354
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
Conversation
I want to experiment with using `uvx` from this location, and if it manages all the use cases correctly, we won't clone and copy the server code
|
Caution Review failedThe pull request is closed. WalkthroughIntroduces a complete Python-based MCP server for Unity integration. Adds core infrastructure (connection management, port discovery, telemetry, module discovery), a registry system for tools and resources, an extensible set of Unity tools (asset, scene, script, shader, menu, test management), resource endpoints, and comprehensive server configuration with logging, retry logic, and optional telemetry collection. Changes
Sequence Diagram(s)sequenceDiagram
participant Client
participant FastMCP as FastMCP Server
participant TelemetryDec as Telemetry Decorator
participant UnityConn as Unity Connection
participant Telemetry as Telemetry Collector
participant Unity as Unity Editor
Client->>FastMCP: Call MCP tool (e.g., manage_script)
FastMCP->>TelemetryDec: Invoke decorated function
TelemetryDec->>TelemetryDec: Start timer
TelemetryDec->>UnityConn: send_command_with_retry()
UnityConn->>UnityConn: Check port (cached or discover)
UnityConn->>Unity: TCP connect + handshake
Unity-->>UnityConn: FRAMING=1 response
UnityConn->>Unity: Send command (JSON with length header)
UnityConn->>UnityConn: receive_full_response()<br/>(handle framing, heartbeat)
Unity-->>UnityConn: Response (with length header)
UnityConn-->>TelemetryDec: Return parsed response dict
TelemetryDec->>Telemetry: record_tool_usage()<br/>(name, success, duration, error)
TelemetryDec->>Telemetry: record_milestone() if applicable
Telemetry->>Telemetry: Enqueue to background worker
Telemetry-->>Telemetry: (async send via httpx)
TelemetryDec-->>FastMCP: Return response
FastMCP-->>Client: MCP response
Estimated code review effort🎯 4 (Complex) | ⏱️ ~70 minutes Areas requiring special attention:
Possibly related PRs
Suggested reviewers
Poem
✨ Finishing touches
🧪 Generate unit tests (beta)
📜 Recent review detailsConfiguration used: CodeRabbit UI Review profile: CHILL Plan: Pro ⛔ Files ignored due to path filters (1)
📒 Files selected for processing (34)
Thanks for using CodeRabbit! It's free for OSS, and your support helps us grow. If you like it, consider giving us a shout-out. Comment |
|
I'm doing some tests with uvx, if it doesn't work out I'll remove this folder |
I want to experiment with using
uvxfrom this location, and if it manages all the use cases correctly, we won't clone and copy the server codeSummary by CodeRabbit
Release Notes
New Features
Documentation
Chores