-
-
Notifications
You must be signed in to change notification settings - Fork 1
Open
Description
Parent Epic
Part of #18 - STDIO Transport Support
Description
Create a new RpcServer class in the Server project that acts as a named pipe SERVER (inverse of existing RpcClient which is a pipe client).
Implementation
New File: src/CodingWithCalvin.MCPServer.Server/RpcServer.cs
- Mirror of existing RpcClient pattern but as
NamedPipeServerStream WaitForConnectionAsyncwith configurable timeout (default 60s)- Implements
IServerRpc(for VS to call) - Creates proxy to
IVisualStudioRpc(to call VS) - Handles connection/disconnection lifecycle
Key Methods
StartAsync(string pipeName)- Create pipe server and start waitingWaitForConnectionAsync(TimeSpan timeout)- Block until VS connects or timeout- Proxy implementations for all
IVisualStudioRpcmethods
Reference
Use src/CodingWithCalvin.MCPServer.Server/RpcClient.cs as pattern reference (invert server/client relationship).
Acceptance Criteria
- RpcServer class created
- Named pipe server functionality working
- Connection timeout handling
- Proper cleanup on dispose
Metadata
Metadata
Assignees
Labels
No labels