PureBasic Requires Chilkat v11.6.0+
PureBasic
Get the Last JSON-RPC Response from an MCP Server
See more MCP Client Examples
Demonstrates Mcp.GetLastJsonData, which returns the complete JSON-RPC response envelope (the jsonrpc, id, and result members) from the most recent request into a JsonObject.
Tip: Code to parse the returned JSON can be generated with Chilkat's online tool at https://tools.chilkat.io/jsonParse.
Background. This exposes the full protocol-level response for inspection or debugging after any MCP request.
Chilkat PureBasic Downloads
IncludeFile "CkJsonObject.pb"
IncludeFile "CkMcp.pb"
Procedure ChilkatExample()
success.i = 0
mcp.i = CkMcp::ckCreate()
If mcp.i = 0
Debug "Failed to create object."
ProcedureReturn
EndIf
; Connect to a public MCP (Model Context Protocol) server over its Streamable HTTP endpoint. The
; Microsoft Learn MCP server is public and requires no authentication.
success = CkMcp::ckConnect(mcp,"https://learn.microsoft.com/api/mcp")
If success = 0
Debug CkMcp::ckLastErrorText(mcp)
CkMcp::ckDispose(mcp)
ProcedureReturn
EndIf
; Perform an MCP request.
toolsResult.i = CkJsonObject::ckCreate()
If toolsResult.i = 0
Debug "Failed to create object."
ProcedureReturn
EndIf
success = CkMcp::ckListTools(mcp,toolsResult)
If success = 0
Debug CkMcp::ckLastErrorText(mcp)
CkMcp::ckDispose(mcp)
CkJsonObject::ckDispose(toolsResult)
ProcedureReturn
EndIf
; Get the complete JSON-RPC response envelope (the jsonrpc, id, and result members) from the most
; recent request.
json.i = CkJsonObject::ckCreate()
If json.i = 0
Debug "Failed to create object."
ProcedureReturn
EndIf
CkMcp::ckGetLastJsonData(mcp,json)
CkJsonObject::setCkEmitCompact(json, 0)
Debug CkJsonObject::ckEmit(json)
; JSON parsing code for this result can be generated at Chilkat's online tool:
; https://tools.chilkat.io/jsonParse
CkMcp::ckDispose(mcp)
CkJsonObject::ckDispose(toolsResult)
CkJsonObject::ckDispose(json)
ProcedureReturn
EndProcedure