Skip to content

Documentation / @agentick/mcp / MCPClient

Class: MCPClient

Defined in: client/client.ts:121

Constructors

Constructor

new MCPClient(options?): MCPClient

Defined in: client/client.ts:133

Parameters

options?

MCPClientOptions

Returns

MCPClient

Methods

callTool()

callTool(serverName, toolName, input, options?): Promise<any>

Defined in: client/client.ts:424

Parameters

serverName

string

toolName

string

input

Record<string, unknown>

options?
onProgress?

ProgressCallback

signal?

AbortSignal

timeoutMs?

number

Returns

Promise<any>


completePromptArgument()

completePromptArgument(serverName, promptName, argumentName, value): Promise<string[]>

Defined in: client/client.ts:690

Request argument completions for a prompt. MCP spec supports completions for ref/prompt and ref/resource.

Parameters

serverName

string

promptName

string

argumentName

string

value

string

Returns

Promise<string[]>


completeResourceTemplate()

completeResourceTemplate(serverName, uriTemplate, argumentName, value): Promise<string[]>

Defined in: client/client.ts:707

Request argument completions for a resource template variable.

Parameters

serverName

string

uriTemplate

string

argumentName

string

value

string

Returns

Promise<string[]>


connect()

connect(config): Promise<void>

Defined in: client/client.ts:145

Parameters

config

MCPConnectionConfig

Returns

Promise<void>


disconnect()

disconnect(serverName): Promise<void>

Defined in: client/client.ts:299

Parameters

serverName

string

Returns

Promise<void>


disconnectAll()

disconnectAll(): Promise<void>

Defined in: client/client.ts:320

Returns

Promise<void>


getAllHealth()

getAllHealth(): ServerHealth[]

Defined in: client/client.ts:337

Returns

ServerHealth[]


getHealth()

getHealth(serverName): ServerHealth | undefined

Defined in: client/client.ts:325

Parameters

serverName

string

Returns

ServerHealth | undefined


getInstructions()

getInstructions(serverName): string | undefined

Defined in: client/client.ts:395

Get instructions from a connected server. Instructions describe how to use the server's tools and resources — intended for injection into the LLM's system prompt.

Parameters

serverName

string

Returns

string | undefined


getMcpAppsCapability()

getMcpAppsCapability(serverName): { mimeTypes: string[]; } | undefined

Defined in: client/client.ts:357

Returns the MCP Apps capability declared by a connected server, or undefined if the server didn't advertise the extension. The returned object lists the MIME types the server supports for UI resources (typically ["text/html;profile=mcp-app"]).

Host code should check this before mounting iframes — a server with no apps (or a server whose host declines to serve UI resources) won't declare the capability, and the host should render tool results as plain content.

Parameters

serverName

string

Returns

{ mimeTypes: string[]; } | undefined


getPrompt()

getPrompt(serverName, name, args?, opts?): Promise<PromptResult>

Defined in: client/client.ts:660

Get a prompt by name with optional arguments. Pass opts.timeoutMs: "never" for slow handlers (~24.8 days, effectively indefinite). Defaults to the SDK's 60s when omitted.

Parameters

serverName

string

name

string

args?

Record<string, string>

opts?
signal?

AbortSignal

timeoutMs?

number | "never"

Returns

Promise<PromptResult>


getServerInfo()

getServerInfo(serverName): { description?: string; name: string; version: string; } | undefined

Defined in: client/client.ts:379

Get server info (name, version, description) from a connected server. Available after initialize handshake completes.

Parameters

serverName

string

Returns

{ description?: string; name: string; version: string; } | undefined


invalidatePrompts()

invalidatePrompts(serverName?): void

Defined in: client/client.ts:677

Parameters

serverName?

string

Returns

void


invalidateResources()

invalidateResources(serverName?): void

Defined in: client/client.ts:584

Parameters

serverName?

string

Returns

void


invalidateTools()

invalidateTools(serverName?): void

Defined in: client/client.ts:528

Parameters

serverName?

string

Returns

void


listAllResources()

listAllResources(): Promise<DiscoveredResource[]>

Defined in: client/client.ts:594

Returns

Promise<DiscoveredResource[]>


listAllResourceTemplates()

listAllResourceTemplates(): Promise<DiscoveredResourceTemplate[]>

Defined in: client/client.ts:603

Returns

Promise<DiscoveredResourceTemplate[]>


listPrompts()

listPrompts(serverName, opts?): Promise<DiscoveredPrompt[]>

Defined in: client/client.ts:631

Parameters

serverName

string

opts?
signal?

AbortSignal

timeoutMs?

number | "never"

Returns

Promise<DiscoveredPrompt[]>


listResources()

listResources(serverName): Promise<DiscoveredResource[]>

Defined in: client/client.ts:537

Parameters

serverName

string

Returns

Promise<DiscoveredResource[]>


listResourceTemplates()

listResourceTemplates(serverName): Promise<DiscoveredResourceTemplate[]>

Defined in: client/client.ts:555

Parameters

serverName

string

Returns

Promise<DiscoveredResourceTemplate[]>


listTools()

listTools(serverName): Promise<DiscoveredTool[]>

Defined in: client/client.ts:405

Parameters

serverName

string

Returns

Promise<DiscoveredTool[]>


off()

off(event, handler): void

Defined in: client/client.ts:747

Parameters

event

string

handler

(...args) => void

Returns

void


on()

on(event, handler): void

Defined in: client/client.ts:743

Parameters

event

string

handler

(...args) => void

Returns

void


readResource()

readResource(serverName, uri): Promise<ResourceContent[]>

Defined in: client/client.ts:573

Parameters

serverName

string

uri

string

Returns

Promise<ResourceContent[]>


readResourceByURI()

readResourceByURI(uri): Promise<ResourceContent[]>

Defined in: client/client.ts:612

Parameters

uri

string

Returns

Promise<ResourceContent[]>


sendRootsChanged()

sendRootsChanged(serverName): Promise<void>

Defined in: client/client.ts:734

Parameters

serverName

string

Returns

Promise<void>


setLoggingLevel()

setLoggingLevel(serverName, level): Promise<void>

Defined in: client/client.ts:725

Parameters

serverName

string

level

string

Returns

Promise<void>


supportsMcpApps()

supportsMcpApps(serverName): boolean

Defined in: client/client.ts:370

Convenience: does the connected server support MCP Apps rendering for at least the standard text/html;profile=mcp-app MIME type?

Parameters

serverName

string

Returns

boolean

Released under the ISC License.