Function: createFusionClient()
ts
function createFusionClient<TRouter>(transport, options?): FusionClient<TRouter>;Defined in: packages/core/src/client/FusionClient.ts:439
Create a type-safe MCP client.
The client provides full autocomplete for action names and compile-time validation for arguments based on the server's router type.
Type Parameters
| Type Parameter | Description |
|---|---|
TRouter extends RouterMap | The router map (use InferRouter<typeof registry>) |
Parameters
| Parameter | Type | Description |
|---|---|---|
transport | FusionTransport | The MCP transport layer |
options? | FusionClientOptions | Client options (middleware, error handling) |
Returns
FusionClient<TRouter>
A typed FusionClient
Examples
typescript
import type { AppRouter } from './mcp-server';
const client = createFusionClient<AppRouter>(transport);
// Full autocomplete + type validation:
await client.execute('projects.create', { name: 'Vinkius V2' });
// TS error: 'projects.nonexistent' is not a valid action
await client.execute('projects.nonexistent', {});
// TS error: missing required arg 'name'
await client.execute('projects.create', {});typescript
// With client middleware and throwOnError
const client = createFusionClient<AppRouter>(transport, {
throwOnError: true,
middleware: [
async (action, args, next) => {
console.log(`[Client] calling ${action}`);
const result = await next(action, args);
console.log(`[Client] ${action} done`);
return result;
},
],
});