Skip to content

Documentation / @agentick/gateway / MCPServerPluginConfig

Interface: MCPServerPluginConfig ​

Defined in: gateway/src/plugins/mcp-server.ts:82

Properties ​

apps? ​

optional apps: MCPAppDefinition[]

Defined in: gateway/src/plugins/mcp-server.ts:124


contextProvider()? ​

optional contextProvider: (extra) => MCPRequestContext | Promise<MCPRequestContext>

Defined in: gateway/src/plugins/mcp-server.ts:128

Build MCPRequestContext from each request.

Parameters ​

extra ​

MCPHandlerExtra

Returns ​

MCPRequestContext | Promise<MCPRequestContext>


description? ​

optional description: string

Defined in: gateway/src/plugins/mcp-server.ts:99

Human-readable server description for the MCP initialize response.


exclude? ​

optional exclude: string[]

Defined in: gateway/src/plugins/mcp-server.ts:106


id? ​

optional id: string

Defined in: gateway/src/plugins/mcp-server.ts:83


include? ​

optional include: string[]

Defined in: gateway/src/plugins/mcp-server.ts:105


instructions? ​

optional instructions: string | () => string

Defined in: gateway/src/plugins/mcp-server.ts:123

Instructions for MCP clients. Supports per-session dynamic form (function).


name? ​

optional name: string

Defined in: gateway/src/plugins/mcp-server.ts:95

Server name for the MCP initialize response.


oauthMetadata? ​

optional oauthMetadata: { cacheTtl?: number; issuer: string; } | { metadata: Record<string, unknown>; }

Defined in: gateway/src/plugins/mcp-server.ts:131


path? ​

optional path: string

Defined in: gateway/src/plugins/mcp-server.ts:84


resources? ​

optional resources: MCPStaticResource[]

Defined in: gateway/src/plugins/mcp-server.ts:120


resourceTemplates? ​

optional resourceTemplates: MCPResourceTemplate[]

Defined in: gateway/src/plugins/mcp-server.ts:121


security? ​

optional security: object

Defined in: gateway/src/plugins/mcp-server.ts:126

Security config passed to MCPServer. Default: allow-all (gateway handles auth).

authenticator? ​

optional authenticator: Authenticator

authorizer? ​

optional authorizer: Authorizer

connectionGuard? ​

optional connectionGuard: ConnectionGuard

inputSanitizer? ​

optional inputSanitizer: InputSanitizer

rateLimiter? ​

optional rateLimiter: RateLimiter


server? ​

optional server: MCPServer

Defined in: gateway/src/plugins/mcp-server.ts:93

Pre-built MCPServer instance. When provided, the plugin uses this server directly instead of constructing one from tools/resources/apps config. The server's security pipeline, tools, resources, and apps are all owned by the caller — the plugin just bridges it to HTTP.

Mutually exclusive with tools/resources/resourceTemplates/apps/instructions.


serverName? ​

optional serverName: string

Defined in: gateway/src/plugins/mcp-server.ts:101

Deprecated ​

Use name instead.


serverVersion? ​

optional serverVersion: string

Defined in: gateway/src/plugins/mcp-server.ts:103

Deprecated ​

Use version instead.


sessionId? ​

optional sessionId: string

Defined in: gateway/src/plugins/mcp-server.ts:104


sessions? ​

optional sessions: object

Defined in: gateway/src/plugins/mcp-server.ts:130

Session management config.

cleanupIntervalMs? ​

optional cleanupIntervalMs: number

Idle sweep interval. Default: 60 seconds.

idleTtlMs? ​

optional idleTtlMs: number

Idle time before a session is evicted. Default: 30 minutes.

maxSessions? ​

optional maxSessions: number

Hard cap on concurrent sessions. Default: 1000. Reaching the cap evicts the least-recently-active session — a new client is never rejected.


toolFilter()? ​

optional toolFilter: (tools, ctx) => McpToolEntry[] | Promise<McpToolEntry[]>

Defined in: gateway/src/plugins/mcp-server.ts:112

Per-session tool filtering. Receives the tool catalog and request context (which includes user info from the gateway's auth layer via contextProvider). Return the tools this client should see.

Parameters ​

tools ​

McpToolEntry[]

ctx ​

MCPRequestContext

Returns ​

McpToolEntry[] | Promise<McpToolEntry[]>


tools? ​

optional tools: MCPStandaloneTool[]

Defined in: gateway/src/plugins/mcp-server.ts:119


toolTransform()? ​

optional toolTransform: (tool, ctx) => MCPToolDefinition | null

Defined in: gateway/src/plugins/mcp-server.ts:118

Transform tool definitions per session before tools/list response. Passed directly to MCPServer — use to inject per-session context (e.g., user info into tool descriptions).

Parameters ​

tool ​

MCPToolDefinition

ctx ​

MCPRequestContext

Returns ​

MCPToolDefinition | null


version? ​

optional version: string

Defined in: gateway/src/plugins/mcp-server.ts:97

Server version for the MCP initialize response.

Released under the ISC License.