McpOperationContext
Class: McpOperationContext
Defined in: packages/mcp/src/invoke.ts:24
Operation context used for MCP calls: collects AsyncGenerator chunks instead of concatenating them into the output, and stops on cancellation.
Extends
SimpleOperationContext
Properties
_body
protected_body:string
Defined in: packages/core/lib/contexts/operationcontext.d.ts:32
Output
Inherited from
SimpleOperationContext._body
_promises
_promises:
Promise<any>[]
Defined in: packages/core/lib/contexts/icontext.d.ts:29
Contain all registered promises to this context
Inherited from
SimpleOperationContext._promises
_sanitized
protected_sanitized:any
Defined in: packages/core/lib/contexts/operationcontext.d.ts:28
Contain the sanitized request body if computed
Inherited from
SimpleOperationContext._sanitized
_stream
_stream:
Writable
Defined in: packages/core/lib/contexts/operationcontext.d.ts:51
Output stream
Inherited from
SimpleOperationContext._stream
caches
caches:
any
Defined in: packages/core/lib/contexts/icontext.d.ts:15
Get the caches linked to the context
Inherited from
SimpleOperationContext.caches
chunks
chunks:
unknown[] =[]
Defined in: packages/mcp/src/invoke.ts:28
Chunks yielded by a streaming operation
extensions
protectedextensions:object
Defined in: packages/core/lib/contexts/icontext.d.ts:19
Allow extensions
Index Signature
[key: string]: any
Inherited from
SimpleOperationContext.extensions
flushed
protectedflushed:boolean
Defined in: packages/core/lib/contexts/icontext.d.ts:33
If the headers were flushed
Inherited from
SimpleOperationContext.flushed
input
input:
Buffer
Defined in: packages/core/lib/contexts/simplecontext.d.ts:7
Inherited from
SimpleOperationContext.input
onChunk?
optionalonChunk?: (chunk,index) =>void
Defined in: packages/mcp/src/invoke.ts:36
Called for every streamed chunk with its 1-based index
Parameters
chunk
unknown
index
number
Returns
void
parameters
parameters:
any
Defined in: packages/core/lib/contexts/operationcontext.d.ts:37
Inherited from
SimpleOperationContext.parameters
session
protectedsession:Session
Defined in: packages/core/lib/contexts/operationcontext.d.ts:24
Session
Inherited from
SimpleOperationContext.session
signal?
optionalsignal?:AbortSignal
Defined in: packages/mcp/src/invoke.ts:32
Abort signal of the MCP request
Methods
addAsyncRequest()
addAsyncRequest(
promise):void
Defined in: packages/core/lib/contexts/operationcontext.d.ts:86
Register a promise with the context
Parameters
promise
any
the promise to add
Returns
void
Inherited from
SimpleOperationContext.addAsyncRequest
clearInput()
clearInput():
void
Defined in: packages/core/lib/contexts/operationcontext.d.ts:99
Remove the input
Returns
void
Inherited from
SimpleOperationContext.clearInput
createStream()
createStream():
void
Defined in: packages/core/lib/contexts/operationcontext.d.ts:147
Create a buffer stream
Returns
void
Inherited from
SimpleOperationContext.createStream
end()
end():
Promise<void>
Defined in: packages/core/lib/contexts/operationcontext.d.ts:95
Ensure the whole execution is finished
Returns
Promise<void>
Inherited from
SimpleOperationContext.end
flushHeaders()
flushHeaders():
Promise<void>
Defined in: packages/core/lib/contexts/icontext.d.ts:100
Send the headers to the client
Returns
Promise<void>
Inherited from
SimpleOperationContext.flushHeaders
getCurrentUser()
getCurrentUser<
K>(refresh?):Promise<K>
Defined in: packages/core/lib/contexts/operationcontext.d.ts:172
Get the current user from session
Type Parameters
K
K extends IUser
Parameters
refresh?
boolean
whether to refresh
Returns
Promise<K>
the result
Inherited from
SimpleOperationContext.getCurrentUser
getCurrentUserId()
getCurrentUserId():
string
Defined in: packages/core/lib/contexts/operationcontext.d.ts:180
Get the current user id from session
A session waiting for its second factor (mfa: "pending") is not logged: it has no current user. Code that needs
the pending user reads getSession().userId.
Returns
string
the result
Inherited from
SimpleOperationContext.getCurrentUserId
getExtension()
getExtension<
K>(name):K
Defined in: packages/core/lib/contexts/operationcontext.d.ts:57
Get an extension of the context
Type Parameters
K
K = any
Parameters
name
string
of the extension
Returns
K
extension object
Inherited from
SimpleOperationContext.getExtension
getInput()
getInput(
sanitizedOptions?):Promise<any>
Defined in: packages/core/lib/contexts/operationcontext.d.ts:105
Get the sanitized input body, caching the result after the first call
Parameters
sanitizedOptions?
IOptions & object
the sanitized options
Returns
Promise<any>
the result
Inherited from
SimpleOperationContext.getInput
getOutput()
getOutput():
string
Defined in: packages/core/lib/contexts/operationcontext.d.ts:91
Get output as string, if a OutputStream is provided it will returned null
Returns
string
the result string
Inherited from
SimpleOperationContext.getOutput
getOutputStream()
getOutputStream():
Promise<Writable>
Defined in: packages/core/lib/contexts/operationcontext.d.ts:129
Get the HTTP stream to output raw data
Returns
Promise<Writable>
the result
Inherited from
SimpleOperationContext.getOutputStream
getParameters()
getParameters():
any
Defined in: packages/core/lib/contexts/operationcontext.d.ts:69
Get the parameters
Returns
any
the result
Inherited from
SimpleOperationContext.getParameters
getRawInput()
getRawInput(
limit?,_timeout?):Promise<Buffer<ArrayBufferLike>>
Defined in: packages/core/lib/contexts/simplecontext.d.ts:29
Parameters
limit?
number
_timeout?
number
Returns
Promise<Buffer<ArrayBufferLike>>
Inherited from
SimpleOperationContext.getRawInput
getRawInputAsString()
getRawInputAsString(
limit?,timeout?,encoding?):Promise<string>
Defined in: packages/core/lib/contexts/operationcontext.d.ts:116
By default empty
Parameters
limit?
number
the maximum count
timeout?
number
the timeout in milliseconds
encoding?
BufferEncoding
the encoding to use
Returns
Promise<string>
the result string
Inherited from
SimpleOperationContext.getRawInputAsString
getRawStream()
getRawStream():
Readable
Defined in: packages/core/lib/contexts/operationcontext.d.ts:124
Returns
Readable
Inherited from
SimpleOperationContext.getRawStream
getResponseHeaders()
getResponseHeaders():
any
Defined in: packages/core/lib/contexts/icontext.d.ts:96
Get current response headers
Returns
any
the result
Inherited from
SimpleOperationContext.getResponseHeaders
getSession()
getSession<
K>():K
Defined in: packages/core/lib/contexts/operationcontext.d.ts:134
Get linked session
Type Parameters
K
K = Session
Returns
K
the result
Inherited from
SimpleOperationContext.getSession
init()
init():
Promise<McpOperationContext>
Defined in: packages/core/lib/contexts/operationcontext.d.ts:166
Initialize the operation context
Returns
Promise<McpOperationContext>
this for chaining
Inherited from
SimpleOperationContext.init
isGlobalContext()
isGlobalContext():
boolean
Defined in: packages/core/lib/contexts/icontext.d.ts:38
Whether this is the global (non-request-scoped) context
Returns
boolean
true if the condition is met
Inherited from
SimpleOperationContext.isGlobalContext
newSession()
newSession():
Session
Defined in: packages/core/lib/contexts/operationcontext.d.ts:139
Create and assign a new empty session
Returns
Session
the result
Inherited from
SimpleOperationContext.newSession
parameter()
parameter(
name,defaultValue?):any
Defined in: packages/core/lib/contexts/operationcontext.d.ts:64
Get one parameter
Parameters
name
string
the name to use
defaultValue?
any
the default value
Returns
any
the result
Inherited from
SimpleOperationContext.parameter
pipeline()
pipeline(
stream1, ...streams):Promise<void>
Defined in: packages/core/lib/contexts/icontext.d.ts:108
Pipeline streams into the output stream
Parameters
stream1
ReadableStream
the first stream
streams
...(ReadWriteStream | PipelineOptions)[]
additional streams
Returns
Promise<void>
See
https://nodejs.org/api/stream.html#streampipelinestreams-options
Inherited from
SimpleOperationContext.pipeline
registerPromise()
registerPromise(
promise):void
Defined in: packages/core/lib/contexts/icontext.d.ts:47
Register a promise with the context
Parameters
promise
any
the promise to add
Returns
void
Inherited from
SimpleOperationContext.registerPromise
reinit()
reinit():
void
Defined in: packages/core/lib/contexts/operationcontext.d.ts:143
Remove sanitized body
Returns
void
Inherited from
SimpleOperationContext.reinit
resetResponse()
resetResponse():
void
Defined in: packages/core/lib/contexts/operationcontext.d.ts:151
Remove everything that was about to be sent
Returns
void
Inherited from
SimpleOperationContext.resetResponse
setExtension()
setExtension(
name,extension):this
Defined in: packages/core/lib/contexts/operationcontext.d.ts:81
Parameters
name
string
to add
extension
any
object to store
Returns
this
this for chaining
Inherited from
SimpleOperationContext.setExtension
setHeader()
setHeader(
name,value):void
Defined in: packages/core/lib/contexts/icontext.d.ts:83
Set a header in the response
Parameters
name
string
the name to use
value
string | number | string[]
the value to set
Returns
void
Inherited from
SimpleOperationContext.setHeader
setInput()
setInput(
input):this
Defined in: packages/core/lib/contexts/simplecontext.d.ts:19
Set the input
Parameters
input
Buffer
the input
Returns
this
this for chaining
Inherited from
SimpleOperationContext.setInput
setParameters()
setParameters(
params):void
Defined in: packages/core/lib/contexts/operationcontext.d.ts:74
Set the parameters
Parameters
params
any
the service parameters
Returns
void
Inherited from
SimpleOperationContext.setParameters
setSession()
setSession(
session):this
Defined in: packages/core/lib/contexts/simplecontext.d.ts:25
Set the session
Parameters
session
Session
the session object
Returns
this
this for chaining
Inherited from
SimpleOperationContext.setSession
write()
write(
output,encoding?,cb?):boolean
Defined in: packages/mcp/src/invoke.ts:44
Parameters
output
any
chunk or result
encoding?
any
unused for chunks
cb?
any
unused for chunks
Returns
boolean
true
Overrides
SimpleOperationContext.write
writeHead()
writeHead(
_code,headers):void
Defined in: packages/core/lib/contexts/icontext.d.ts:89
For easier compatibility with WebContext On OperationContext this call is simply ignored
Parameters
_code
number
the status code
headers
Returns
void
Inherited from
SimpleOperationContext.writeHead
fromContext()
staticfromContext(context):Promise<SimpleOperationContext>
Defined in: packages/core/lib/contexts/simplecontext.d.ts:13
Create another context from an existing one
Parameters
context
OperationContext
the execution context
Returns
Promise<SimpleOperationContext>
the result
Inherited from
SimpleOperationContext.fromContext