The finance developer workbenchSearch the reference Development · 0.1.4 · unpublished

@insiderfinance/totalfinance-mcp

McpServerOptions · field contracts

Page 1 of 2. Back to the entry point or find this declaration.

Name / typeMeaning & unitOptional / default
artifacts
ArtifactStoreReader
An artifact store (Decision 5): input handles resolve through it; permitted reports are listed as `totalfinance://reports/<hash>` resources. With jobs attached, reports for excluded operations are hidden. A constructor argument — nothing is looked up by "current session".
unitless by name
Optional
No @default declared; consult the signature and description.
artifacts.get
(uri: string) => { handle: import('@insiderfinance/totalfinance/workflows').ResourceHandle; value: Record<string, unknown>; } | null

unitless by name
Required / declared member
No @default declared; consult the signature and description.
artifacts.get().return.handle
import('@insiderfinance/totalfinance/workflows').ResourceHandle

unitless by name
Required / declared member
No @default declared; consult the signature and description.
artifacts.get().return.value
Record<string, unknown>

unitless by name
Required / declared member
No @default declared; consult the signature and description.
artifacts.get(uri)
string

unitless by name
Required / declared member
No @default declared; consult the signature and description.
artifacts.list
(filter?: { kind?: import('@insiderfinance/totalfinance/workflows').ResourceHandleKind; }) => import('@insiderfinance/totalfinance/workflows').ResourceHandle[]

unitless by name
Required / declared member
No @default declared; consult the signature and description.
artifacts.list(filter)
{ kind?: import('@insiderfinance/totalfinance/workflows').ResourceHandleKind; } | undefined

unitless by name
Optional
No @default declared; consult the signature and description.
artifacts.list(filter).kind
import('@insiderfinance/totalfinance/workflows').ResourceHandleKind

unitless by name
Optional
No @default declared; consult the signature and description.
capabilities
readonly string[]
What every caller of this server holds (Stage 7B.2 Decision 9); default the runtime's defaults.
unitless by name
Optional
No @default declared; consult the signature and description.
clock
() => string
The instant stamped on a stored result's handle when `artifacts` is writable — the edge's clock (default `new Date().toISOString()`).
unitless by name
Optional
No @default declared; consult the signature and description.
deadlineMs
number
Soft wall-clock budget per tool call (ms). A call exceeding it returns an error.
milliseconds
Optional
No @default declared; consult the signature and description.
defaultSeed
number
Deterministic seed policy (spec §18.5). Any stochastic CALL (Monte Carlo, resampling — a tool's `stochastic` flag may be a per-call predicate) requires a seed; when absent, this default is injected and echoed in `structured.assumptions.seed` so MCP results are reproducible. Default 0. Deterministic calls (e.g. historical/parametric VaR) never get a meaningless seed injected.
unitless by name
Optional
No @default declared; consult the signature and description.
jobs
JobRunner
Explicit local worker runner; requires its artifact reader. Adds typed job controls, never grants.
unitless by name
Optional
No @default declared; consult the signature and description.
jobs.cancel
(id: string) => import('@insiderfinance/totalfinance/workflows').JobRecord

unitless by name
Required / declared member
No @default declared; consult the signature and description.
jobs.cancel().return.error
OperationError | null

unitless by name
Required / declared member
No @default declared; consult the signature and description.
jobs.cancel().return.error.code
string

unitless by name
Required / declared member
No @default declared; consult the signature and description.
jobs.cancel().return.error.context
Record<string, unknown>

unitless by name
Required / declared member
No @default declared; consult the signature and description.
jobs.cancel().return.error.issues
import('@insiderfinance/totalfinance/core/schema').SchemaIssue[]

unitless by name
Optional
No @default declared; consult the signature and description.
jobs.cancel().return.error.message
string

unitless by name
Required / declared member
No @default declared; consult the signature and description.
jobs.cancel().return.error.operation
{ id: string; version: string; } | null

unitless by name
Required / declared member
No @default declared; consult the signature and description.
jobs.cancel().return.error.operation.id
string

unitless by name
Required / declared member
No @default declared; consult the signature and description.
jobs.cancel().return.error.operation.version
string

unitless by name
Required / declared member
No @default declared; consult the signature and description.
jobs.cancel().return.finishedAt
string | null

unitless by name
Required / declared member
No @default declared; consult the signature and description.
jobs.cancel().return.id
string

unitless by name
Required / declared member
No @default declared; consult the signature and description.
jobs.cancel().return.inputsHash
string

unitless by name
Required / declared member
No @default declared; consult the signature and description.
jobs.cancel().return.operation
{ id: string; version: string; }

unitless by name
Required / declared member
No @default declared; consult the signature and description.
jobs.cancel().return.operation.id
string

unitless by name
Required / declared member
No @default declared; consult the signature and description.
jobs.cancel().return.operation.version
string

unitless by name
Required / declared member
No @default declared; consult the signature and description.
jobs.cancel().return.progress
{ fraction: number | null; stage: string; } | null

unitless by name
Required / declared member
No @default declared; consult the signature and description.
jobs.cancel().return.progress.fraction
number | null

unitless by name
Required / declared member
No @default declared; consult the signature and description.
jobs.cancel().return.progress.stage
string

unitless by name
Required / declared member
No @default declared; consult the signature and description.
jobs.cancel().return.result
import('@insiderfinance/totalfinance/workflows').ResourceHandle | null

unitless by name
Required / declared member
No @default declared; consult the signature and description.
jobs.cancel().return.result.contentHash
string | null

unitless by name
Required / declared member
No @default declared; consult the signature and description.
jobs.cancel().return.result.createdTimestampMs
number
When the store minted the handle — the caller's clock in epoch ms, never the library's.
epoch milliseconds (UTC instant)
Required / declared member
No @default declared; consult the signature and description.
jobs.cancel().return.result.expiresTimestampMs
number | null
When the stored value stops being served, epoch ms; null = never.
epoch milliseconds (UTC instant)
Required / declared member
No @default declared; consult the signature and description.
jobs.cancel().return.result.kind
import('@insiderfinance/totalfinance/workflows').ResourceHandleKind

unitless by name
Required / declared member
No @default declared; consult the signature and description.
jobs.cancel().return.result.provenance
import('@insiderfinance/totalfinance/core').Provenance
Caller-supplied provenance, preserved verbatim.
unitless by name
Required / declared member
No @default declared; consult the signature and description.
jobs.cancel().return.result.schema
string

unitless by name
Required / declared member
No @default declared; consult the signature and description.
jobs.cancel().return.result.uri
string

unitless by name
Required / declared member
No @default declared; consult the signature and description.
jobs.cancel().return.result.version
string

unitless by name
Required / declared member
No @default declared; consult the signature and description.
jobs.cancel().return.seed
number | null

unitless by name
Required / declared member
No @default declared; consult the signature and description.
jobs.cancel().return.startedAt
string | null

unitless by name
Required / declared member
No @default declared; consult the signature and description.
jobs.cancel().return.state
import('@insiderfinance/totalfinance/workflows').JobState

unitless by name
Required / declared member
No @default declared; consult the signature and description.
jobs.cancel().return.submittedAt
string

unitless by name
Required / declared member
No @default declared; consult the signature and description.
jobs.cancel().return.usage
{ elapsedMs: number | null; }

unitless by name
Required / declared member
No @default declared; consult the signature and description.
jobs.cancel().return.usage.elapsedMs
number | null

milliseconds
Required / declared member
No @default declared; consult the signature and description.
jobs.cancel(id)
string

unitless by name
Required / declared member
No @default declared; consult the signature and description.
jobs.get
(id: string) => import('@insiderfinance/totalfinance/workflows').JobRecord | null

unitless by name
Required / declared member
No @default declared; consult the signature and description.
jobs.get().return.error
OperationError | null

unitless by name
Required / declared member
No @default declared; consult the signature and description.
jobs.get().return.error.code
string

unitless by name
Required / declared member
No @default declared; consult the signature and description.
jobs.get().return.error.context
Record<string, unknown>

unitless by name
Required / declared member
No @default declared; consult the signature and description.
jobs.get().return.error.issues
import('@insiderfinance/totalfinance/core/schema').SchemaIssue[]

unitless by name
Optional
No @default declared; consult the signature and description.
jobs.get().return.error.message
string

unitless by name
Required / declared member
No @default declared; consult the signature and description.
jobs.get().return.error.operation
{ id: string; version: string; } | null

unitless by name
Required / declared member
No @default declared; consult the signature and description.
jobs.get().return.error.operation.id
string

unitless by name
Required / declared member
No @default declared; consult the signature and description.
jobs.get().return.error.operation.version
string

unitless by name
Required / declared member
No @default declared; consult the signature and description.
jobs.get().return.finishedAt
string | null

unitless by name
Required / declared member
No @default declared; consult the signature and description.
jobs.get().return.id
string

unitless by name
Required / declared member
No @default declared; consult the signature and description.
jobs.get().return.inputsHash
string

unitless by name
Required / declared member
No @default declared; consult the signature and description.
jobs.get().return.operation
{ id: string; version: string; }

unitless by name
Required / declared member
No @default declared; consult the signature and description.
jobs.get().return.operation.id
string

unitless by name
Required / declared member
No @default declared; consult the signature and description.
jobs.get().return.operation.version
string

unitless by name
Required / declared member
No @default declared; consult the signature and description.
jobs.get().return.progress
{ fraction: number | null; stage: string; } | null

unitless by name
Required / declared member
No @default declared; consult the signature and description.
jobs.get().return.progress.fraction
number | null

unitless by name
Required / declared member
No @default declared; consult the signature and description.
jobs.get().return.progress.stage
string

unitless by name
Required / declared member
No @default declared; consult the signature and description.
jobs.get().return.result
import('@insiderfinance/totalfinance/workflows').ResourceHandle | null

unitless by name
Required / declared member
No @default declared; consult the signature and description.
jobs.get().return.result.contentHash
string | null

unitless by name
Required / declared member
No @default declared; consult the signature and description.
jobs.get().return.result.createdTimestampMs
number
When the store minted the handle — the caller's clock in epoch ms, never the library's.
epoch milliseconds (UTC instant)
Required / declared member
No @default declared; consult the signature and description.
jobs.get().return.result.expiresTimestampMs
number | null
When the stored value stops being served, epoch ms; null = never.
epoch milliseconds (UTC instant)
Required / declared member
No @default declared; consult the signature and description.
jobs.get().return.result.kind
import('@insiderfinance/totalfinance/workflows').ResourceHandleKind

unitless by name
Required / declared member
No @default declared; consult the signature and description.
jobs.get().return.result.provenance
import('@insiderfinance/totalfinance/core').Provenance
Caller-supplied provenance, preserved verbatim.
unitless by name
Required / declared member
No @default declared; consult the signature and description.
jobs.get().return.result.schema
string

unitless by name
Required / declared member
No @default declared; consult the signature and description.
jobs.get().return.result.uri
string

unitless by name
Required / declared member
No @default declared; consult the signature and description.
jobs.get().return.result.version
string

unitless by name
Required / declared member
No @default declared; consult the signature and description.
jobs.get().return.seed
number | null

unitless by name
Required / declared member
No @default declared; consult the signature and description.
jobs.get().return.startedAt
string | null

unitless by name
Required / declared member
No @default declared; consult the signature and description.
jobs.get().return.state
import('@insiderfinance/totalfinance/workflows').JobState

unitless by name
Required / declared member
No @default declared; consult the signature and description.
jobs.get().return.submittedAt
string

unitless by name
Required / declared member
No @default declared; consult the signature and description.
jobs.get().return.usage
{ elapsedMs: number | null; }

unitless by name
Required / declared member
No @default declared; consult the signature and description.
jobs.get().return.usage.elapsedMs
number | null

milliseconds
Required / declared member
No @default declared; consult the signature and description.
jobs.get(id)
string

unitless by name
Required / declared member
No @default declared; consult the signature and description.
jobs.list
() => import('@insiderfinance/totalfinance/workflows').JobRecord[]

unitless by name
Required / declared member
No @default declared; consult the signature and description.
jobs.submit
(submission: import('@insiderfinance/totalfinance/workflows/local').JobSubmission) => import('@insiderfinance/totalfinance/workflows/local').JobRun

unitless by name
Required / declared member
No @default declared; consult the signature and description.
jobs.submit().return.cancel
() => Promise<import('@insiderfinance/totalfinance/workflows').JobRecord>
Terminate the worker now; resolves with the cancelled (or already terminal) record.
unitless by name
Required / declared member
No @default declared; consult the signature and description.
jobs.submit().return.completion
Promise<import('@insiderfinance/totalfinance/workflows').JobRecord>
Resolves with the terminal record — completed, failed, or cancelled. Never rejects.
unitless by name
Required / declared member
No @default declared; consult the signature and description.
jobs.submit().return.record
import('@insiderfinance/totalfinance/workflows').JobRecord
The record as accepted (or, for an inline non-job operation, as completed).
unitless by name
Required / declared member
No @default declared; consult the signature and description.
jobs.submit(submission)
import('@insiderfinance/totalfinance/workflows/local').JobSubmission

unitless by name
Required / declared member
No @default declared; consult the signature and description.
jobs.submit(submission).deadlineMs
number

milliseconds
Optional
No @default declared; consult the signature and description.
jobs.submit(submission).id
string
The operation id.
unitless by name
Required / declared member
No @default declared; consult the signature and description.
jobs.submit(submission).inlineResultBytes
number

unitless by name
Optional
No @default declared; consult the signature and description.
jobs.submit(submission).input
unknown

unitless by name
Required / declared member
No @default declared; consult the signature and description.
jobs.submit(submission).maxInputBytes
number

unitless by name
Optional
No @default declared; consult the signature and description.
jobs.submit(submission).requestId
string

unitless by name
Optional
No @default declared; consult the signature and description.
jobs.submit(submission).seed
number

unitless by name
Optional
No @default declared; consult the signature and description.
maxInputBytes
number
Reject any tool call whose serialized arguments exceed this many bytes (compute-budget guard, spec §18.5). Default 64 KB.
unitless by name
Optional
No @default declared; consult the signature and description.
packs
(OperationPack | ToolPack)[]
EXACT pack selection (alignment spec P1.1): omitted → the selected profile; provided → exactly the packs given, nothing implicit. `packs: [optionsPack()]` exposes only the option tools; expand the defaults with `packs: [...defaultPacks(), backtestPack()]`. When `tools` is also given, the registry is their union (both are explicit). Pack tools obey the same read-only filter, seed policy, and budgets as the defaults.
unitless by name
Optional
No @default declared; consult the signature and description.
pageSize
number
Maximum entries per tools/resources list page: integer 1–100, default 100.
count (integer)
Optional
No @default declared; consult the signature and description.
profile
'default' | 'valuation' | 'options' | 'portfolio' | 'research' | 'strategies' | 'backtesting' | 'scenarios' | 'full'
Task selection when neither tools nor packs is supplied. Explicit tools/packs remain exact.
unitless by name
Optional
No @default declared; consult the signature and description.
readOnly
boolean
Financial read-only mode (default `true`): tools flagged `mutates` or requiring a write/approval capability are filtered out. Explicit artifact storage and job controls are independent.
unitless by name
Optional
No @default declared; consult the signature and description.
stores
{ authorization?: AuthorizationStore; journal?: ExecutionJournalStore; }
The trade lifecycle's stores (Decision 10).
unitless by name
Optional
No @default declared; consult the signature and description.
stores.authorization
AuthorizationStore

unitless by name
Optional
No @default declared; consult the signature and description.
stores.authorization.consume
(input: import('@insiderfinance/totalfinance/workflows').GrantConsumption & { hashOrUri: string; }) => import('@insiderfinance/totalfinance/workflows').GrantConsumption
Atomically claim the grant with its validated write-ahead batch before journal commit. Idempotent only for the same store, receipt, key and batch; all other claims refuse.
unitless by name
Required / declared member
No @default declared; consult the signature and description.
stores.authorization.consume().return.consumedTimestampMs
number

epoch milliseconds (UTC instant)
Required / declared member
No @default declared; consult the signature and description.
stores.authorization.consume().return.idempotencyKey
string

unitless by name
Required / declared member
No @default declared; consult the signature and description.
stores.authorization.consume().return.journalEvents
readonly import('@insiderfinance/totalfinance/portfolio').ExecutionJournalEvent[]
Write-ahead event batch: recovery replays these exact facts, never the fill engine.
unitless by name
Required / declared member
No @default declared; consult the signature and description.
stores.authorization.consume().return.journalId
string

unitless by name
Required / declared member
No @default declared; consult the signature and description.
stores.authorization.consume().return.journalStoreId
string
Opaque identity of the authoritative store, retained across file-store restarts.
unitless by name
Required / declared member
No @default declared; consult the signature and description.
stores.authorization.consume().return.receiptId
string

unitless by name
Required / declared member
No @default declared; consult the signature and description.
stores.authorization.consume(input)
import('@insiderfinance/totalfinance/workflows').GrantConsumption & { hashOrUri: string; }

unitless by name
Required / declared member
No @default declared; consult the signature and description.
stores.authorization.consume(input).consumedTimestampMs
number

epoch milliseconds (UTC instant)
Required / declared member
No @default declared; consult the signature and description.
stores.authorization.consume(input).hashOrUri
string

unitless by name
Required / declared member
No @default declared; consult the signature and description.
stores.authorization.consume(input).idempotencyKey
string

unitless by name
Required / declared member
No @default declared; consult the signature and description.
stores.authorization.consume(input).journalEvents
readonly import('@insiderfinance/totalfinance/portfolio').ExecutionJournalEvent[]
Write-ahead event batch: recovery replays these exact facts, never the fill engine.
unitless by name
Required / declared member
No @default declared; consult the signature and description.
stores.authorization.consume(input).journalId
string

unitless by name
Required / declared member
No @default declared; consult the signature and description.
stores.authorization.consume(input).journalStoreId
string
Opaque identity of the authoritative store, retained across file-store restarts.
unitless by name
Required / declared member
No @default declared; consult the signature and description.
stores.authorization.consume(input).receiptId
string

unitless by name
Required / declared member
No @default declared; consult the signature and description.
stores.authorization.get
(hashOrUri: string) => { handle: import('@insiderfinance/totalfinance/workflows').ResourceHandle; grant: import('@insiderfinance/totalfinance/portfolio').AuthorizationGrant; consumed: import('@insiderfinance/totalfinance/workflows').GrantConsumption | null; } | null
The grant by content hash (or handle uri) with its consumption (null while unconsumed), or null.
unitless by name
Required / declared member
No @default declared; consult the signature and description.
stores.authorization.get().return.consumed
import('@insiderfinance/totalfinance/workflows').GrantConsumption | null

unitless by name
Required / declared member
No @default declared; consult the signature and description.
stores.authorization.get().return.consumed.consumedTimestampMs
number

epoch milliseconds (UTC instant)
Required / declared member
No @default declared; consult the signature and description.
stores.authorization.get().return.consumed.idempotencyKey
string

unitless by name
Required / declared member
No @default declared; consult the signature and description.
stores.authorization.get().return.consumed.journalEvents
readonly import('@insiderfinance/totalfinance/portfolio').ExecutionJournalEvent[]
Write-ahead event batch: recovery replays these exact facts, never the fill engine.
unitless by name
Required / declared member
No @default declared; consult the signature and description.
stores.authorization.get().return.consumed.journalId
string

unitless by name
Required / declared member
No @default declared; consult the signature and description.
stores.authorization.get().return.consumed.journalStoreId
string
Opaque identity of the authoritative store, retained across file-store restarts.
unitless by name
Required / declared member
No @default declared; consult the signature and description.
stores.authorization.get().return.consumed.receiptId
string

unitless by name
Required / declared member
No @default declared; consult the signature and description.
stores.authorization.get().return.grant
import('@insiderfinance/totalfinance/portfolio').AuthorizationGrant

unitless by name
Required / declared member
No @default declared; consult the signature and description.
stores.authorization.get().return.handle
import('@insiderfinance/totalfinance/workflows').ResourceHandle

unitless by name
Required / declared member
No @default declared; consult the signature and description.
stores.authorization.get(hashOrUri)
string

unitless by name
Required / declared member
No @default declared; consult the signature and description.
stores.authorization.list
() => import('@insiderfinance/totalfinance/workflows').ResourceHandle[]

unitless by name
Required / declared member
No @default declared; consult the signature and description.
stores.authorization.put
(input: { grant: import('@insiderfinance/totalfinance/portfolio').AuthorizationGrant; createdTimestampMs: import('@insiderfinance/totalfinance/core').EpochMs; }) => import('@insiderfinance/totalfinance/workflows').ResourceHandle
Store a grant under its content hash; idempotent (the first put stands). Returns its handle.
unitless by name
Required / declared member
No @default declared; consult the signature and description.
stores.authorization.put().return.contentHash
string | null

unitless by name
Required / declared member
No @default declared; consult the signature and description.
stores.authorization.put().return.createdTimestampMs
number
When the store minted the handle — the caller's clock in epoch ms, never the library's.
epoch milliseconds (UTC instant)
Required / declared member
No @default declared; consult the signature and description.
stores.authorization.put().return.expiresTimestampMs
number | null
When the stored value stops being served, epoch ms; null = never.
epoch milliseconds (UTC instant)
Required / declared member
No @default declared; consult the signature and description.
stores.authorization.put().return.kind
import('@insiderfinance/totalfinance/workflows').ResourceHandleKind

unitless by name
Required / declared member
No @default declared; consult the signature and description.
stores.authorization.put().return.provenance
import('@insiderfinance/totalfinance/core').Provenance
Caller-supplied provenance, preserved verbatim.
unitless by name
Required / declared member
No @default declared; consult the signature and description.
stores.authorization.put().return.schema
string

unitless by name
Required / declared member
No @default declared; consult the signature and description.
stores.authorization.put().return.uri
string

unitless by name
Required / declared member
No @default declared; consult the signature and description.
stores.authorization.put().return.version
string

unitless by name
Required / declared member
No @default declared; consult the signature and description.
stores.authorization.put(input)
{ createdTimestampMs: import('@insiderfinance/totalfinance/core').EpochMs; grant: import('@insiderfinance/totalfinance/portfolio').AuthorizationGrant; }

unitless by name
Required / declared member
No @default declared; consult the signature and description.
stores.authorization.put(input).createdTimestampMs
number

epoch milliseconds (UTC instant)
Required / declared member
No @default declared; consult the signature and description.
stores.authorization.put(input).grant
import('@insiderfinance/totalfinance/portfolio').AuthorizationGrant

unitless by name
Required / declared member
No @default declared; consult the signature and description.
stores.journal
ExecutionJournalStore

unitless by name
Optional
No @default declared; consult the signature and description.
stores.journal.append
(input: { events: readonly import('@insiderfinance/totalfinance/portfolio').ExecutionJournalEvent[]; }) => { journalId: string; appended: number; skipped: number; total: number; }
Append atomically; identical eventId/body retries are skipped, conflicting bodies refused.
unitless by name
Required / declared member
No @default declared; consult the signature and description.
stores.journal.append().return.appended
number

unitless by name
Required / declared member
No @default declared; consult the signature and description.
stores.journal.append().return.journalId
string

unitless by name
Required / declared member
No @default declared; consult the signature and description.
stores.journal.append().return.skipped
number

unitless by name
Required / declared member
No @default declared; consult the signature and description.
stores.journal.append().return.total
number

unitless by name
Required / declared member
No @default declared; consult the signature and description.
stores.journal.append(input)
{ events: readonly import('@insiderfinance/totalfinance/portfolio').ExecutionJournalEvent[]; }

unitless by name
Required / declared member
No @default declared; consult the signature and description.
stores.journal.append(input).events
readonly import('@insiderfinance/totalfinance/portfolio').ExecutionJournalEvent[]

unitless by name
Required / declared member
No @default declared; consult the signature and description.
stores.journal.list
() => string[]
Every journal id, sorted.
unitless by name
Required / declared member
No @default declared; consult the signature and description.
stores.journal.read
(journalId: string) => import('@insiderfinance/totalfinance/portfolio').ExecutionJournalEvent[]
Every event of a journal in append order (empty for an unknown journal).
unitless by name
Required / declared member
No @default declared; consult the signature and description.