Class: MCPClient
Defined in: mcp/client.ts:110
MCP Client for connecting to a single MCP server
Example
const client = new MCPClient({
name: 'filesystem',
transport: 'stdio',
stdio: {
command: 'npx',
args: ['-y', '@modelcontextprotocol/server-filesystem', '/tmp'],
},
});
await client.connect();
const tools = await client.listTools();
const result = await client.callTool('read_file', { path: '/tmp/test.txt' });
await client.disconnect();
Constructors
Constructor
new MCPClient(config): MCPClient;
Defined in: mcp/client.ts:119
Parameters
| Parameter | Type |
|---|---|
config | MCPClientConfig |
Returns
MCPClient
Properties
name
readonly name: string;
Defined in: mcp/client.ts:111
Accessors
isConnected
Get Signature
get isConnected(): boolean;
Defined in: mcp/client.ts:150
Whether the client is connected
Returns
boolean
status
Get Signature
get status(): MCPConnectionStatus;
Defined in: mcp/client.ts:143
Current connection status
Returns
Methods
callTool()
callTool(toolName, args?): Promise<MCPToolResult>;
Defined in: mcp/client.ts:288
Call a tool on the server
Parameters
| Parameter | Type | Description |
|---|---|---|
toolName | string | Name of the tool to call |
args? | Record<string, unknown> | Arguments to pass to the tool |
Returns
Promise<MCPToolResult>
Throws
MCPError if not connected, tool not found, or execution fails
connect()
connect(): Promise<void>;
Defined in: mcp/client.ts:158
Connect to the MCP server
Returns
Promise<void>
Throws
MCPError if connection fails
disconnect()
disconnect(): Promise<void>;
Defined in: mcp/client.ts:236
Disconnect from the MCP server
Returns
Promise<void>
listTools()
listTools(): Promise<MCPToolDefinition[]>;
Defined in: mcp/client.ts:260
List available tools from the server
Returns
Promise<MCPToolDefinition[]>
Throws
MCPError if not connected or listing fails
onDisconnect()
onDisconnect(callback): () => void;
Defined in: mcp/client.ts:358
Convenience method to listen for disconnect
Parameters
| Parameter | Type |
|---|---|
callback | () => void |
Returns
() => void
onError()
onError(callback): () => void;
Defined in: mcp/client.ts:347
Convenience method to listen for errors
Parameters
| Parameter | Type |
|---|---|
callback | (error) => void |
Returns
() => void
onEvent()
onEvent(handler): () => void;
Defined in: mcp/client.ts:323
Register an event handler
Parameters
| Parameter | Type |
|---|---|
handler | MCPClientEventHandler |
Returns
() => void
onToolsChanged()
onToolsChanged(callback): () => void;
Defined in: mcp/client.ts:331
Convenience method to listen for tools changed events
Parameters
| Parameter | Type |
|---|---|
callback | (tools) => void |
Returns
() => void