PureBasic Requires Chilkat v11.6.0+
PureBasic
Read a Resource from an MCP Server
See more MCP Client Examples
Demonstrates Mcp.ReadResource, which calls the MCP resources/read method for a resource identified by URI and places the contents 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. A resource URI is obtained from the
resources array returned by ListResources. Not all MCP servers expose resources.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
; Read a specific resource by its URI. A resource URI is obtained from the "resources" array
; returned by ListResources. The resource contents are placed in the JsonObject.
json.i = CkJsonObject::ckCreate()
If json.i = 0
Debug "Failed to create object."
ProcedureReturn
EndIf
success = CkMcp::ckReadResource(mcp,"file:///example/resource.txt",json)
If success = 0
Debug CkMcp::ckLastErrorText(mcp)
CkMcp::ckDispose(mcp)
CkJsonObject::ckDispose(json)
ProcedureReturn
EndIf
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(json)
ProcedureReturn
EndProcedure