Sample code for 30+ languages & platforms
Objective-C Requires Chilkat v11.6.0+

Get a Prompt from an MCP Server

See more MCP Client Examples

Demonstrates Mcp.GetPrompt, which calls the MCP prompts/get method for a named prompt, passing a JSON arguments object and receiving the prompt result.

Tip: Code to parse the returned JSON can be generated with Chilkat's online tool at https://tools.chilkat.io/jsonParse.

Background. The prompt name and its expected arguments come from the prompts array returned by ListPrompts. Pass an empty arguments object for a prompt that takes none.

Chilkat Objective-C Downloads

Objective-C
#import <CkoMcp.h>
#import <CkoJsonObject.h>

BOOL success = NO;

CkoMcp *mcp = [[CkoMcp alloc] init];

//  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 = [mcp Connect: @"https://learn.microsoft.com/api/mcp"];
if (success == NO) {
    NSLog(@"%@",mcp.LastErrorText);
    return;
}

//  Build the prompt's arguments (pass an empty object for a prompt that takes no arguments).  The
//  prompt name and its arguments come from the "prompts" array returned by ListPrompts.
CkoJsonObject *args = [[CkoJsonObject alloc] init];
[args UpdateString: @"topic" value: @"azure-storage"];

//  Call the MCP prompts/get method for the named prompt.  The prompt result is placed in the
//  JsonObject.
CkoJsonObject *json = [[CkoJsonObject alloc] init];
success = [mcp GetPrompt: @"example-prompt" arguments: args json: json];
if (success == NO) {
    NSLog(@"%@",mcp.LastErrorText);
    return;
}

json.EmitCompact = NO;
NSLog(@"%@",[json Emit]);
//  JSON parsing code for this result can be generated at Chilkat's online tool:
//  https://tools.chilkat.io/jsonParse