Graphorin API reference v0.7.0
Graphorin API reference / @graphorin/mcp / / MCPToToolsOptions
Interface: MCPToToolsOptions
Defined in: packages/mcp/src/client/types.ts:201
Per-MCP-server toTools() options.
Stable
Properties
| Property | Modifier | Type | Description | Defined in |
|---|---|---|---|---|
callTimeoutMs? | readonly | number | Per-call timeout (ms) applied to every adapted tool's client.callTool invocation (MC-3/MC-5). Default: the SDK default. | packages/mcp/src/client/types.ts:215 |
defer_loading? | readonly | boolean | Per-server defer_loading override. When unset and listTools() returns more than deferLoadingThreshold entries the auto-default flips deferral on for every tool from this server. | packages/mcp/src/client/types.ts:251 |
deferLoadingThreshold? | readonly | number | Auto-default trigger threshold. Defaults to 10. | packages/mcp/src/client/types.ts:253 |
filter? | readonly | (tool) => boolean | Filter the produced tools. | packages/mcp/src/client/types.ts:203 |
inboundSanitization? | readonly | InboundSanitizationPolicy | Per-server inbound prompt-injection sanitization policy override. Defaults to 'detect-and-strip-and-wrap' for MCP-derived tools. | packages/mcp/src/client/types.ts:210 |
maxResultTokens? | readonly | number | Per-server token cap override applied at registration. | packages/mcp/src/client/types.ts:255 |
namespace? | readonly | string | Tool-name namespace prepended to every produced tool. | packages/mcp/src/client/types.ts:205 |
onPinMismatch? | readonly | "warn" | "reject" | "accept-and-update" | What to do on a pinned-fingerprint mismatch (MC-6). 'warn' (default without a pinStore) audits mcp.tools.pin-mismatch.total and continues; 'reject' (the default WHEN a pinStore is wired - a persisted first approval is an explicit trust decision) throws MCPToolPinningError. W-079: 'accept-and-update' is the documented operator path to ACCEPT a legitimate catalogue change: after the comparison (and its counters/logs) the store is overwritten with the current snapshot (mcp.tools.pins-updated.total), so subsequent calls are clean - an explicit re-trust decision, never a silent default. | packages/mcp/src/client/types.ts:235 |
pinnedFingerprints? | readonly | Readonly<Record<string, string>> | Operator-pinned definition fingerprints by MCP tool name (MC-6) - the __definitionHash stamped on a previously approved snapshot. A mismatch means the server changed the definition behind the name. | packages/mcp/src/client/types.ts:221 |
pinStore? | readonly | MCPPinStore | C6: durable trust-on-first-use pin storage. On the first toTools() the current definition fingerprints are RECORDED (mcp.tools.pins-recorded.total); on every later call they are COMPARED - drift is handled per onPinMismatch, which defaults to 'reject' when a store is present (the rug-pull defense). Explicit pinnedFingerprints win over the store. | packages/mcp/src/client/types.ts:244 |
preferredModelByTool? | readonly | Readonly<Record<string, | ModelHint | ModelSpec>> | Tool-name -> per-tool preferred-model override map. | packages/mcp/src/client/types.ts:261 |
sideEffectClassByTool? | readonly | Readonly<Record<string, SideEffectClass>> | Tool-name -> per-tool side-effect class override map. | packages/mcp/src/client/types.ts:259 |
truncationStrategy? | readonly | TruncationStrategy | Per-server truncation strategy override applied at registration. | packages/mcp/src/client/types.ts:257 |