MCPcopy
hub / github.com/zgsm-ai/costrict / messageHandler

Function messageHandler

apps/vscode-e2e/src/suite/tools/use-mcp-tool.test.ts:127–169  ·  view source on GitHub ↗
({ message }: { message: ClineMessage })

Source from the content-addressed store, hash-verified

125
126 // Listen for messages
127 const messageHandler = ({ message }: { message: ClineMessage }) => {
128 messages.push(message)
129
130 // Check for MCP tool request
131 if (message.type === "ask" && message.ask === "use_mcp_server") {
132 mcpToolRequested = true
133 console.log("MCP tool request:", message.text?.substring(0, 200))
134
135 // Parse the MCP request to verify structure and tool name
136 if (message.text) {
137 try {
138 const mcpRequest = JSON.parse(message.text)
139 mcpToolName = mcpRequest.toolName
140 console.log("MCP request parsed:", {
141 type: mcpRequest.type,
142 serverName: mcpRequest.serverName,
143 toolName: mcpRequest.toolName,
144 hasArguments: !!mcpRequest.arguments,
145 })
146 } catch (e) {
147 console.log("Failed to parse MCP request:", e)
148 }
149 }
150 }
151
152 // Check for MCP server response
153 if (message.type === "say" && message.say === "mcp_server_response") {
154 mcpServerResponse = message.text || null
155 console.log("MCP server response received:", message.text?.substring(0, 200))
156 }
157
158 // Check for attempt_completion
159 if (message.type === "say" && message.say === "completion_result") {
160 attemptCompletionCalled = true
161 console.log("Attempt completion called:", message.text?.substring(0, 200))
162 }
163
164 // Log important messages for debugging
165 if (message.type === "say" && message.say === "error") {
166 errorOccurred = message.text || "Unknown error"
167 console.error("Error:", message.text)
168 }
169 }
170 api.on(RooCodeEventName.Message, messageHandler)
171
172 // Listen for task events

Callers

nothing calls this directly

Calls 4

pushMethod · 0.80
parseMethod · 0.80
logMethod · 0.65
errorMethod · 0.65

Tested by

no test coverage detected