Every change Wellknown observed on this MCP server, newest first, with what it was before and what it became. Tool-surface changes carry the definition diff. Nothing here is edited after the fact.
Changed the definition of "ab_test", "did_it_change", "dyson_reference" and 7 more
CompareBernoullitwo cumulative binary-outcome experiment arms to decide whether either success rate is higher. Use for conversions or other Bernoulli outcomes withanytime-validconstant conditional success probabilities; use did_it_change for an ordered numeric metric, not these counts. The beta-binomial confidence sequences split alpha across arms, allowing repeated looks under the statedmodelsampling assumptions. Do not substitute selected windows, continuous returns or changing-probability outcomes. Returns decided, winner (label or null), reading, and each label's successes/n/rate/interval; rates and bounds are fractions in [0,1]. Zero totals are allowed and leave the test undecided. No winner means overlapping intervals, not equal rates. Invalid counts (including successes > total) or duplicate/reserved labels return a tool error. Example: {"a_successes":40,"a_total":100,"b_successes":55,"b_total":100}.
{"additionalProperties":false,"properties":{"a_label":{"default":"A","description":"Arm A's output key and possible winner label; default A. Must differ from b_label and not replace result keys such as decided, winner or reading.","maxLength":128,"minLength":1,"type":"string"},"a_successes":{"description":"Cumulative successful binary outcomes in arm A, an integer from 0 through a_total; do not supply a percentage.","maximum":1000000000000,"minimum":0,"type":"integer"},"a_total":{"description":"Cumulative trials in arm A, including successes and failures. Zero is valid and returns an undecided result.","maximum":1000000000000,"minimum":0,"type":"integer"},"alpha":{"default":0.05,"description":"Total error budget shared by both confidence sequences; default 0.05 means 5%, split equally between arms. Must be strictly between 0 and 1.","exclusiveMaximum":1,"exclusiveMinimum":0,"type":"number"},"b_label":{"default":"B","description":"Arm B's output key and possible winner label; default B. Must differ from a_label and not replace result keys such as alpha, method or validity.","maxLength":128,"minLength":1,"type":"string"},"b_successes":{"description":"Cumulative successful binary outcomes in arm B, an integer from 0 through b_total; do not supply a percentage.","maximum":1000000000000,"minimum":0,"type":"integer"},"b_total":{"description":"Cumulative trials in arm B, including successes and failures. Counts must use the same pre-defined experiment and outcome as arm A.","maximum":1000000000000,"minimum":0,"type": ⟨8 unchanged words⟩
{"anyOf":[{"additionalProperties":{"additionalProperties":false,"description":"One experiment arm, stored under its caller-supplied label.","properties":{"interval":{"description":"Lower and upper confidence-sequence bounds.","items":{"description":"Success-probability bound as a fraction.","type":"number"},"maxItems":2,"minItems":2,"type":"array"},"n":{"description":"Cumulative trials, including failures.","minimum":0,"type":"integer"},"rate":{"anyOf":[{"description":"Observed success fraction; null when n is zero.","type":"number"},{"type":"null"}],"description":"Observed success fraction; null when n is zero. Null means unavailable or not applicable, never zero."},"successes":{"description":"Cumulative successful binary outcomes.","minimum":0,"type":"integer"}},"required":["successes","n","rate","interval"],"type":"object"},"properties":{"alpha":{},"assumptions":{},"decided":{},"guarantee":{},"method":{},"observed_difference_pp":{},"reading":{},"safe_to_peek":{},"validity":{},"what_would_decide_it":{},"winner":{}},"required":["decided","winner","reading","alpha","safe_to_peek","validity","guarantee","assumptions","method"],"type":"object"},{"additionalProperties":false,"description":"Existing tool-error payload; no successful result fields are implied.","properties":{"error":{"description":"Validation or computation failure message; inspect MCP isError or the HTTP status.","type":"string"}},"required":["error"],"type":"object"}],"description":"Two dynamically named arm objects plus comparison metadata. A and B are defaults, not fixed output keys. Tool errors retain the separate error-message shape.","properties":{"alpha":{"description":"Total error budget split across the arms, as a fraction.","type":"number"},"assumptions":{"description":"Ordered statements or identifiers.","items":{"description":"One retained statement or identifier.","type":"string"},"type":"array"},"decided":{"description":"Whether the two confidence sequences are disjoint.","type":"boolean"},"error":{"anyOf":[{"description":"Validation or computation failure message; inspect MCP isError or the HTTP status.","type":"string"},{"additionalProperties":false,"description":"One experiment arm, stored under its caller-supplied label.","properties":{"interval":{"description":"Lower and upper confidence-sequence bounds.","items":{"description":"Success-probability bound as a fraction.","type":"number"},"maxItems":2,"minItems":2,"type":"array"},"n":{"description":"Cumulative trials, including failures.","minimum":0,"type":"integer"},"rate":{"anyOf":[{"description":"Observed success fraction; null when n is zero.","type":"number"},{"type":"null"}],"description":"Observed success fraction; null when n is zero. Null means unavailable or not applicable, never zero."},"successes":{"description":"Cumulative successful binary outcomes.","minimum":0,"type":"integer"}},"required":["successes","n","rate","interval"],"type":"object"}],"description":"A string on tool error, or a successful arm object when the caller labels that arm error; inspect MCP isError."},"guarantee":{"description":"Conditional confidence-sequence guarantee; not a market-performance claim.","type":"string"},"method":{"description":"Confidence-sequence method and reference.","type":"string"},"observed_difference_pp":{"description":"B's observed success rate minus A's, in percentage points; present only for undecided nonempty arms.","type":"number"},"reading":{"description":"Interpretation of the current comparison.","type":"string"},"safe_to_peek":{"const":
DescribeScanchangesoneinchronological numeric metric for departures from its own preceding observations, using anumericdescriptivehistory.rank-based Shiryaev-Roberts monitor. Use this for a change-review queue; choose real_or_sampling when a measurement denominator may explain the movement, market_assessment when source/freshness gates matter, or spectral_assessment for a multi-series correlation panel. Thechangefirststatisticeight readings warm up the reference; comparison starts at reading nine. An alarm resets the reference and starts warmup again. Returns state (warming_up, steady, watch, changed), monitoring_statistic, direction, zero-based change_points and effect (delta in input units, robust_z, percentile from 0 to 100). The evidence field is a compatibility alias, not a calibrated e-value orp-value.
SimulateGenerate a seeded synthetic real-symmetricmatrixBrownian-matrixBrownianpathmotiontoandillustrate eigenvaluerepulsion.repulsionSynthetic(beta=1).referenceUseonlyfor reproducible numerical education or research references; choose spectral_assessment to analyze observed market panels. No market data is accepted or fetched. All arguments are optional: defaults are dimension=6, steps=40, dt=0.05 and seed=0. Returns status=synthetic, parameters, beta, normalization and path with steps+1 snapshots; each snapshot contains synthetic time and ordered eigenvalues, starting from all zeros. Negative eigenvalues are valid because this is
ReturnEstimate the next observation of one numeric series using the last value as a point forecast and adaptive historical absolute-error quantiles for an empiricalnext-valueinterval.interval;Useindividualfor a one-step baseline or uncertainty display; choose score_forecasts to check this same method on historical prefixes before relying on it. At least 11 chronological readings are required; shorter valid histories return ok=false with reading. Successful results contain ok=true, forecast, interval [lower, upper], nominal_coverage, adaptive_alpha and error_history_size. Forecast and bounds use the input's units; the horizon is one supplied observation, not a timestamp or marketcoveragesession. Coverage is a target, notguaranteed.a next-step or changing-market guarantee. This does not fetch prices or train a custom model. Example: {"values":[10,11,10,12,11,13,12,13,14,13,15],"nominal":0.8}.
AssessBuild a source-aware review queue for caller-supplied market series at an explicit UTC as_of cutoff, checking moves, volatility, missing data andobservationmeasurementqualitycoverage.atUse when provenance and freshness matter; use did_it_change for an unannotated numeric history or spectral_assessment for correlation structure across an aligned panel. Prices become log returns; other kinds retain their supplied values and units. Defaults require 30 baseline + 3 recent derived points (34 contiguous price observations, 33 for other kinds). Returns status (assessed, partial or insufficient_visibility), per-series status/reasons/diagnostics, attention_queue, visibility_gaps, related_movements and coverage. Nonpermitted rights, stale/future observations or inadequate history remain explicitas-ofgaps;clock.noDescriptive
GroupDeduplicaterepeatedand prioritize a caller-suppliedheadlinesheadlineandcollectionrankfor human or agent reviewrelevance.atNoveltya UTC as_of cutoff. Use for wording repetition, entity focus andsourcepossiblediversitycorrections;neverchooseestablishmarket_assessment
Review whetherathe latest numeric metricmoveddeparturealongsidepersists after accounting for its historical linear association with measurement sample size.AssociationUse when both a dashboard metric and its coverage denominator are available; choose did_it_change when no denominator isnotknown.proofRequires at least ten aligned pairs; shorter valid arrays return NOT_ENOUGH_HISTORY. The latest pair is excluded from the historical fit. Returns verdict, assessment, reading and, when estimable, metric_delta in input units, standardized departures, sample_size_change_pct as a percent of the historical median, fit and departure_after_conditioning. Prefer assessment/validity over legacy REAL or SAMPLING_ARTIFACT labels: linear association neither proves acausal
ReplayBacktest NoiseFloor's own one-step forecast on chronological historicalforecastsprefixes, issuing before observing andreportthenempiricalupdatingcalibrationwithout hindsight. Use to evaluate forecast_next's coverage and misses; this tool does not accept externally supplied predictions. At least 20 readings are required; shorter valid histories return ok=false. Successful results contain n_forecasts, empirical_coverage, nominal_coverage, score, baseline_score, beats_baseline, records, misseswithoutandhindsight.worst_misses. Scores are mean weighted interval scores in input units (lower is better), compared with fixed historical-error quantiles. Records use zero-based input indices and retain actual, forecast, interval and missed_by. within_coverage_tolerance and its calibrated alias mean observed coverage is within 0.05 of target; they are descriptive, not a certification or significance test. Coverage and favorable scores do not establish future market performance or profitability.
ReviewAnalyze shared correlationeigenvalues,structure and rolling concentration in a caller-defined comparable panel. Use for research on shared movements across at least two series; choose market_assessment for individual move/freshness review,idealoriiddyson_referencenoiseforboundsa wholly synthetic illustration. Prices become log returns, returns stay returns, other kinds become first differences. Both interval endpoints must align; no interpolation or silent removal of rejected series occurs. Default windows need 60 aligned intervals (at least 61 original readings per series), androllingwindow_pointschangesmustin
Ranksuppliedaevidence;namedconditionalboard of nonnegative evidence scores for review. By default valid_evalues=false: arbitrary nonnegative scores are ranked descriptively and selected stays empty. Set valid_evalues=true only when every input has a justified null expectation at most one; then e-Benjamini-Hochberg (e-BH)requirescontrolsexplicitthisvalid_evalues=true.family'sDescriptiveexpectedchangefalse-discoverystatisticsproportion at alpha, provided the supplied e-values are valid. The server cannot certify that assertion. Raw returns, z-scores, model confidence and did_it_change's monitoring statistic
Certificate recorded, valid to 2026-12-06
Authorization not required
Unknown → Live
First tool surface recorded: 10 tools (server version 0.4.0)
https://api.seiche.info/noisefloor/mcp (mcp_streamable_http) — from mcp_registry
Showing the latest 6 events. The API returns up to 500 and filters by kind: ?kind=tool_surface_changed
{"additionalProperties":false,"properties":{"half_life":{"description":"Optional positive half-life measured in prior observations, not seconds. A reading this many positions older receives half the rank weight. Omit for equal weights; weighting remains descriptive, not calibrated.","exclusiveMinimum":0,"type":"number"},"two_sided":{"default":true,"description":"Default true monitors upward and downward departures, with watch/changed thresholds 200/1000. False monitors upward only, with thresholds 100/500; thresholds are descriptive.","type":"boolean"},"values":{"description":"One to 2048 finite readings in chronological order, oldest first, with consistent units and cadence. The last entry is the current reading; no dates or missing values are inferred.","items":{"type":"number"},"maxItems ⟨9 unchanged words⟩
{"anyOf":[{"additionalProperties":truefalse,"properties":{"assumptions":{},"change_points":{},"changed_at":{},"direction":{},"effect":{},"effect_reference_size":{},"evidence":{},"guarantee":{},"interpretation":{},"is_e_value":{},"method":{},"monitoring_statistic":{},"n":{},"reading":{},"readings_since_change":{},"state":{},"statistic_type":{},"validity":{},"watch_at":{},"weighted":{}},"required":["n","state","evidence","monitoring_statistic","statistic_type","is_e_value","validity","weighted","assumptions","direction","effect","effect_reference_size","change_points","watch_at","changed_at","readings_since_change","reading","guarantee","interpretation","method"],"type":"object"},{"additionalProperties":false,"description":"Existing tool-error payload; no successful result fields are implied.","properties":{"error":{"description":"Validation or computation failure message; inspect MCP isError or the HTTP status.","type":"string"}},"required":["error"],"type":"object"}],"description":"MCP change result; full per-reading states and evidence_series are deliberately omitted by this tool. Tool errors retain the separate error-message shape.","properties":{"assumptions":{"description":"Ordered statements or identifiers.","items":{"description":"One retained statement or identifier.","type":"string"},"type":"array"},"change_points":{"description":"Historical alarm indices.","items":{"description":"Zero-based observation index.","minimum":0,"type":"integer"},"type":"array"},"changed_at":{"description":"Descriptive alarm threshold.","type":"number"},"direction":{"anyOf":[{"description":"Direction driving the positive monitor statistic.","enum":["up","down"],"type":"string"},{"type":"null"}],"description":"Direction driving the positive monitor statistic. Null means unavailable or not applicable, never zero."},"effect":{"additionalProperties":false,"description":"Latest reading compared with the current post-reset reference.","properties":{"delta":{"anyOf":[{"description":"Latest reading minus reference median, in input units.","type":"number"},{"type":"null"}],"description":"Latest reading minus reference median, in input units. Null means unavailable or not applicable, never zero."},"direction":{"description":"Direction relative to the preceding reference median.","enum":["up","down","flat"],"type":"string"},"percentile":{"anyOf":[{"description":"Percentage of reference readings strictly below the current value.","type":"number"},{"type":"null"}],"description":"Percentage of reference readings strictly below the current value. Null means unavailable or not applicable, never zero."},"robust_z":{"anyOf":[{"description":"Departure divided by 1.4826 times reference MAD; unavailable at zero spread.","type":"number"},{"type":"null"}],"description":"Departure divided by 1.4826 times reference MAD; unavailable at zero spread. Null means unavailable or not applicable, never zero."}},"required":["direction","delta","robust_z","percentile"],"type":"object"},"effect_reference_size":{"description":"Preceding observations in the current reference.","minimum":0,"type":"integer"},"error":{"description":"Validation or computation failure message; inspect MCP isError or the HTTP status.","type":"string"},"evidence":{"description":"Compatibility alias of monitoring_statistic; not an e-value.","type":"number"},"guarantee":{"description":"No statistical or market-performance guarantee is made.","type":"null"},"interpretation":{"description":"Limits on interpreting a threshold crossing.","type":"string"},"is_e_value":{"const":false,"description":"The statistic is not a calibrated e-value.","type":"boolean"},"method":{"description":"Monitor construction and one-sided/two-sided mode.","type":"string"},"monitoring_statistic":{"description":"Descriptive Shiryaev-Roberts statistic.","type":"number"},"n":{"description":"Number of supplied observations.","minimum":0,"type":"integer"},"reading":{"description":"Interpretation, including remaining warmup requirements.","type":"string"},"readings_since_change":{"anyOf":[{"description":"Observations after the most recent alarm.","minimum":0,"type":"integer"},{"type":"null"}],"description":"Observations after the most recent alarm. Null means unavailable or not applicable, never zero."},"state":{"description":"Current descriptive monitor state.","enum":["warming_up","steady","watch","changed"],"type":"string"},"statistic_type":{"const":"shiryaev_roberts","description":"Monitor family.","type":"string"},"validity":{"const":"descriptive","description":"Descriptive assessment, not a probability or statistical certificate.","type":"string"},"watch_at":{"description":"Descriptive watch threshold.","type":"number"},"weighted":{"description":"Whether half-life weighting was requested.","type":"boolean"}},"type":"object"}
{"additionalProperties":false,"properties":{"dimension":{"default":6,"description":"Size N of the synthetic real-symmetric N-by-N matrix and number of eigenvalues per step; default 6.","maximum":16,"minimum":2,"type":"integer"},"dt":{"default":0.05,"description":"Synthetic time increment; default 0.05. This is not seconds or a market horizon. Off-diagonal increment variance is dt/N; diagonal variance is 2*dt/N.","maximum":1,"minimum":0.000001,"type":"number"},"seed":{"default":0,"description":"Integer random seed for deterministic replay in a recorded Python runtime; default 0. Record the implementation fingerprint and runtime with results.","maximum":4294967295,"minimum":0,"type":"integer"},"steps":{"default":40,"description":"Number of Brownian increments; default 40. The returned path contains steps + 1 snapshots, including the initial zero matrix.","maximum":100,"minimum":1,"type": ⟨4 unchanged words⟩
{"anyOf":[{"additionalProperties":truefalse,"properties":{"beta":{},"execution_authority":{},"guarantee":{},"initial_condition":{},"is_covariance_model":{},"limits":{},"market_calibrated":{},"maturity":{},"mean_reversion":{},"normalization":{},"parameters":{},"path":{},"request_sha256":{},"schema":{},"status":{},"validity":{}},"required":["schema","status","maturity","validity","guarantee","parameters","beta","path","initial_condition","mean_reversion","normalization","market_calibrated","is_covariance_model","execution_authority","request_sha256","limits"],"type":"object"},{"additionalProperties":false,"description":"Existing tool-error payload; no successful result fields are implied.","properties":{"error":{"description":"Validation or computation failure message; inspect MCP isError or the HTTP status.","type":"string"}},"required":["error"],"type":"object"}],"description":"Seeded synthetic eigenvalue path, never market observations or a covariance forecast. Tool errors retain the separate error-message shape.","properties":{"beta":{"const":1,"description":"Real-symmetric reference beta.","type":"integer"},"error":{"description":"Validation or computation failure message; inspect MCP isError or the HTTP status.","type":"string"},"execution_authority":{"const":false,"description":"No trading authority.","type":"boolean"},"guarantee":{"description":"No statistical or market-performance guarantee is made.","type":"null"},"initial_condition":{"const":"zero_matrix","description":"Initial matrix.","type":"string"},"is_covariance_model":{"const":false,"description":"Negative eigenvalues are possible; not a covariance model.","type":"boolean"},"limits":{"description":"Ordered statements or identifiers.","items":{"description":"One retained statement or identifier.","type":"string"},"type":"array"},"market_calibrated":{"const":false,"description":"Not calibrated to markets.","type":"boolean"},"maturity":{"const":"research","description":"Research maturity.","type":"string"},"mean_reversion":{"const":false,"description":"Unconfined Brownian reference.","type":"boolean"},"normalization":{"description":"Increment variance convention.","type":"string"},"parameters":{"additionalProperties":false,"description":"Fully applied parameters.","properties":{"dimension":{"description":"Matrix dimension N.","minimum":0,"type":"integer"},"dt":{"description":"Synthetic time step, not seconds.","type":"number"},"seed":{"description":"Replay seed for this Python runtime.","minimum":0,"type":"integer"},"steps":{"description":"Number of increments.","minimum":0,"type":"integer"}},"required":["dimension","steps","dt","seed"],"type":"object"},"path":{"description":"Initial zero spectrum followed by every simulated step.","items":{"additionalProperties":false,"description":"Ordered spectrum at one synthetic time.","properties":{"eigenvalues":{"description":"Numeric values in the documented order.","items":{"description":"One finite numeric value.","type":"number"},"type":"array"},"time":{"description":"Synthetic elapsed time.","type":"number"}},"required":["time","eigenvalues"],"type":"object"},"type":"array"},"request_sha256":{"description":"SHA-256 of the canonicalized submitted request or applied policy.","pattern":"^[0-9a-f]{64}$","type":"string"},"schema":{"const":"noisefloor.dyson-reference.v1","description":"Result contract identifier.","type":"string"},"status":{"const":"synthetic","description":"Synthetic output.","type":"string"},"validity":{"const":"synthetic_reference","description":"Synthetic reference only.","type":"string"}},"type":"object"}
{"additionalProperties":false,"properties":{"nominal":{"default":0.8,"description":"Target empirical interval coverage as a fraction strictly between 0 and 1; default 0.80 means 80%, not 80. The adaptive feedback does not guarantee the next observation is covered.","exclusiveMaximum":1,"exclusiveMinimum":0,"type":"number"},"values":{"description":"One to 2048 finite chronological observations, oldest first, in consistent units and cadence. At least 11 readings are needed for ten prior one-step errors; no missing values, date interpolation or resampling.","items":{"type":"number"},"maxItems ⟨9 unchanged words⟩
{"anyOf":[{"additionalProperties":false,"allOf":[{"if":{"properties":{"ok":{"const":true}}},"then":{"required":["forecast","interval","nominal_coverage","adaptive_alpha","error_history_size"]}}],"properties":{"adaptive_alpha":{},"caveats":{},"error_history_size":{},"forecast":{},"guarantee":{},"interval":{},"method":{},"nominal_coverage":{},"ok":{},"reading":{},"validity":{}},"required":["ok","validity","guarantee","method","caveats","reading"],"type":"object"},{"additionalProperties":false,"description":"Existing tool-error payload; no successful result fields are implied.","properties":{"error":{"description":"Validation or computation failure message; inspect MCP isError or the HTTP status.","type":"string"}},"required":["error"],"type":"object"}],"description":"One-step empirical forecast or insufficient-history result. Tool errors retain the separate error-message shape.","properties":{"adaptive_alpha":{"description":"Clipped adaptive miscoverage parameter as a fraction.","type":"number"},"caveats":{"description":"Ordered statements or identifiers.","items":{"description":"One retained statement or identifier.","type":"string"},"type":"array"},"error":{"description":"Validation or computation failure message; inspect MCP isError or the HTTP status.","type":"string"},"error_history_size":{"description":"Historical absolute errors used before issuing this forecast.","minimum":0,"type":"integer"},"forecast":{"description":"One-step random-walk point forecast in input units.","type":"number"},"guarantee":{"description":"No statistical or market-performance guarantee is made.","type":"null"},"interval":{"description":"Lower and upper bounds, in that order.","items":{"description":"Bound in the original input units.","type":"number"},"maxItems":2,"minItems":2,"type":"array"},"method":{"description":"Shared forecast issuance and scoring method.","type":"string"},"nominal_coverage":{"description":"Requested target coverage as a fraction, not a guarantee.","type":"number"},"ok":{"description":"False denotes insufficient history; forecast or scoring fields are then absent.","type":"boolean"},"reading":{"description":"Result interpretation or minimum-history requirement.","type":"string"},"validity":{"const":"empirical_only","description":"Coverage is empirical only.","type":"string"}},"type":"object"}
{"additionalProperties":false,"properties":{"as_of":{"description":"UTC decision-time cutoff for source freshness and availability checks; for example 2026-01-01T12:00:00Z. Future observations are not silently included.","format":"utc-date-time","maxLength":64,"minLength":1,"type":"string"},"policy":{"additionalProperties":false,"description":"Optional review thresholds; omitted fields use the documented defaults. Policies do not create statistical or trading guarantees.","properties":{"baseline_points":{"default":30,"description":"Number of earlier transformed observations in the baseline window; default 30. Total required transformed history is baseline_points + recent_points.","maximum":256,"minimum":10,"type":"integer"},"coverage_drop_fraction":{"default":0.2,"description":"Absolute fractional change in median measurement coverage that prompts review, including increases; default 0.2 means 20%. Applies only to supplied sample_size values.","maximum":1,"minimum":0,"type":"number"},"move_threshold":{"default":3,"description":"Departure threshold in baseline robust-spread units (1.4826 times median absolute deviation); default 3.0. This is a review threshold, not a significance level.","exclusiveMinimum":0,"type":"number"},"recent_points":{"default":3,"description":"Number of latest transformed observations compared with the baseline; default 3. Persistence requires at least two qualifying readings, so a one-point window cannot establish persistence.","maximum":32,"minimum":1,"type":"integer"},"volatility_ratio":{"default":3,"description":"Recent-to-baseline robust-spread ratio that flags volatility expansion; default 3.0. A constant baseline followed by positive spread is also flagged.","exclusiveMinimum":1,"type":"number"}},"required":[],"type":"object"},"series":{"description":"Up to 32 caller-supplied series to assess independently, with unique ids and source/clock metadata. An empty list returns insufficient_visibility.","items":{"additionalProperties":false,"properties":{"group":{"description":"Optional caller-defined grouping label for review queues; defaults to this series id. It does not certify independence or comparability.","maxLength":128,"minLength":1,"type":"string"},"id":{"description":"Unique series identifier within this request, used in results and cross-series relationships.","maxLength":128,"minLength":1,"type":"string"},"kind":{"description":"Measurement type. Both assessment tools convert price to log returns. market_assessment keeps other values unchanged; spectral_assessment keeps return values and first-differences level, spread, rate and count.","enum":["price","return","level", ⟨3 unchanged words⟩ ,"type":"string"},"max_age_seconds":{"description":"Maximum allowed age in seconds of the last observation relative to as_of. Older data remains insufficient_visibility; choose an appropriate cadence-specific limit.","exclusiveMinimum":0,"type":"number"},"max_gap_seconds":{"description":"Optional largest allowed time gap in seconds between observations. A larger gap restarts the contiguous tail. If omitted, calendar gap policy is unknown and a warning is returned.","exclusiveMinimum":0,"type":"number"},"observations":{"description":"Zero to 2048 observations in strictly increasing UTC order. Empty or inadequate histories return visibility gaps; null values and declared time gaps are preserved, never interpolated.","items":{"additionalProperties":false,"properties":{"available_at":{"description":"UTC time the observation became available to the caller. A time before observed_at becomes an availability_precedes_observation visibility gap; after as_of becomes not_yet_available. Omission is retained as incomplete availability history.","format":"utc-date-time","maxLength":64,"minLength":1,"type":"string"},"observed_at":{"description":"Time represented by this observation, in UTC. Timestamps within a series must be unique and strictly increasing.","format":"utc-date-time","maxLength":64,"minLength":1,"type":"string"},"sample_size":{"description":"Positive measurement-coverage denominator for this observation, or null when missing. This is not trading volume. Omit if coverage is not supplied; zero is invalid.","exclusiveMinimum":0,"type":["number","null"]},"value":{"description":"Finite measurement in the declared series unit. Prices must be positive and counts nonnegative. Use null for missing data; it breaks the contiguous analysis window and is never filled.","type":["number","null"]}}," ⟨10 unchanged words⟩ array"},"source":{"additionalProperties":false,"description":"Source identity, optional attribution URL and declared usage rights. All are caller-supplied, not attestations.","properties":{"id":{"description":"Caller-defined source identifier retained in results, for example synthetic-demo or a licensed provider name.","maxLength":128,"minLength":1,"type":"string"},"rights":{"description":"Caller's source-use declaration. Only permitted permits numerical assessment; unknown and restricted remain explicit visibility gaps. The server does not grant or verify rights.","enum":["permitted","unknown","restricted"],"type":"string"},"url":{"description":"Optional source or evidence URL retained for attribution; no URL is fetched or independently verified.","maxLength":2048,"minLength":1,"type":" ⟨4 unchanged words⟩ ],"type":"object"},"unit":{"description":"Consistent measurement unit for all observations, for example USD, decimal_return, basis_points or count. No currency conversion, percent conversion or economic comparability is inferred.","maxLength":64,"minLength":1,"type": ⟨21 unchanged words⟩
before
{"additionalProperties":true,"type":"object"}after
{"anyOf":[{"additionalProperties":false,"properties":{"as_of":{},"attention_queue":{},"coverage":{},"execution_authority":{},"limits":{},"method":{},"policy":{},"policy_sha256":{},"related_movements":{},"request_sha256":{},"schema":{},"series":{},"status":{},"visibility_gaps":{}},"required":["schema","as_of","status","policy","series","attention_queue","visibility_gaps","related_movements","coverage","method","limits","execution_authority","request_sha256","policy_sha256"],"type":"object"},{"additionalProperties":false,"description":"Existing tool-error payload; no successful result fields are implied.","properties":{"error":{"description":"Validation or computation failure message; inspect MCP isError or the HTTP status.","type":"string"}},"required":["error"],"type":"object"}],"description":"Market attention and explicit source/coverage gaps; no absent evidence is replaced by zero. Tool errors retain the separate error-message shape.","properties":{"as_of":{"description":"Caller-supplied UTC cutoff.","type":"string"},"attention_queue":{"description":"Review/watch series sorted by priority then id.","items":{"additionalProperties":false,"description":"One prioritized series.","properties":{"group":{"description":"Declared group.","type":"string"},"id":{"description":"Series id.","type":"string"},"reasons":{"description":"Ordered statements or identifiers.","items":{"description":"One retained statement or identifier.","type":"string"},"type":"array"},"status":{"description":"Review priority state.","enum":["review","watch"],"type":"string"}},"required":["id","status","reasons","group"],"type":"object"},"type":"array"},"coverage":{"additionalProperties":false,"description":"Coverage of only the supplied set.","properties":{"assessed_series":{"description":"Series passing visibility gates.","minimum":0,"type":"integer"},"complete_for_supplied_series":{"description":"Nonempty supplied set with no visibility gaps.","type":"boolean"},"market_universe_complete":{"const":false,"description":"Market collection completeness is unknown.","type":"boolean"},"requested_series":{"description":"Supplied series.","minimum":0,"type":"integer"}},"required":["requested_series","assessed_series","complete_for_supplied_series","market_universe_complete"],"type":"object"},"error":{"description":"Validation or computation failure message; inspect MCP isError or the HTTP status.","type":"string"},"execution_authority":{"const":false,"description":"No trading authority.","type":"boolean"},"limits":{"description":"Ordered statements or identifiers.","items":{"description":"One retained statement or identifier.","type":"string"},"type":"array"},"method":{"description":"Assessment construction.","type":"string"},"policy":{"additionalProperties":false,"description":"Fully applied policy, including defaults.","properties":{"baseline_points":{"description":"Earlier transformed readings.","minimum":0,"type":"integer"},"coverage_drop_fraction":{"description":"Absolute measurement-coverage change fraction.","type":"number"},"move_threshold":{"description":"Robust-spread units.","type":"number"},"recent_points":{"description":"Latest transformed readings.","minimum":0,"type":"integer"},"volatility_ratio":{"description":"Recent/baseline spread ratio.","type":"number"}},"required":["baseline_points","recent_points","move_threshold","volatility_ratio","coverage_drop_fraction"],"type":"object"},"policy_sha256":{"description":"SHA-256 of the canonicalized submitted request or applied policy.","pattern":"^[0-9a-f]{64}$","type":"string"},"related_movements":{"description":"Relationships with absolute correlation at least 0.85.","items":{"additionalProperties":false,"description":"Strong aligned relationship.","properties":{"aligned_points":{"description":"Shared timestamps.","minimum":0,"type":"integer"},"correlation":{"description":"Aligned Pearson correlation.","type":"number"},"independent_confirmation":{"const":false,"description":"Correlation is not independent corroboration.","type":"boolean"},"series":{"description":"Pair of series ids.","items":{"description":"Series id.","type":"string"},"maxItems":2,"minItems":2,"type":"array"}},"required":["series","correlation","aligned_points","independent_confirmation"],"type":"object"},"type":"array"},"request_sha256":{"description":"SHA-256 of the canonicalized submitted request or applied policy.","pattern":"^[0-9a-f]{64}$","type":"string"},"schema":{"const":"noisefloor.market-assessment.v1","description":"Result contract identifier.","type":"string"},"series":{"description":"All supplied series in input order.","items":{"additionalProperties":false,"description":"Every supplied series is retained, including rejected sources and missing histories.","properties":{"age_seconds":{"anyOf":[{"description":"Cutoff minus last observation timestamp in seconds; may be negative for future data.","type":"number"},{"type":"null"}],"description":"Cutoff minus last observation timestamp in seconds; may be negative for future data. Null means unavailable or not applicable, never zero."},"analyzed_points":{"description":"Points actually used; omitted for insufficient visibility.","minimum":0,"type":"integer"},"analyzed_unit":{"description":"log_return for prices, otherwise the declared unit.","type":"string"},"as_published_history_verified":{"const":false,"description":"Caller timestamps do not verify historical availability.","type":"boolean"},"availability_timestamps_complete":{"description":"Every supplied observation declares availability and the series is nonempty.","type":"boolean"},"available_at":{"anyOf":[{"description":"Last supplied availability timestamp, if present.","type":"string"},{"type":"null"}],"description":"Last supplied availability timestamp, if present. Null means unavailable or not applicable, never zero."},"contiguous_points":{"description":"Usable transformed tail points.","minimum":0,"type":"integer"},"diagnostics":{"anyOf":[{"additionalProperties":false,"description":"Computed only for source-eligible series with sufficient contiguous history.","properties":{"baseline_median":{"description":"Baseline center in analyzed units.","type":"number"},"baseline_robust_spread":{"description":"Baseline MAD times 1.4826 in analyzed units.","type":"number"},"coverage":{"additionalProperties":false,"description":"Measurement coverage, not trading volume.","properties":{"relative_change":{"anyOf":[{"description":"Recent minus baseline median denominator divided by baseline.","type":"number"},{"type":"null"}],"description":"Recent minus baseline median denominator divided by baseline. Null means unavailable or not applicable, never zero."},"status":{"description":"Measurement-denominator availability or change.","enum":["not_supplied","incomplete","changed","stable"],"type":"string"}},"required":["status","relative_change"],"type":"object"},"lag_one_correlation":{"anyOf":[{"description":"Lag-one correlation, when estimable.","type":"number"},{"type":"null"}],"description":"Lag-one correlation, when estimable. Null means unavailable or not applicable, never zero."},"latest_change":{"description":"Latest minus baseline median in analyzed units.","type":"number"},"latest_robust_departure":{"anyOf":[{"description":"Latest change in baseline robust-spread units.","type":"number"},{"type":"null"}],"description":"Latest change in baseline robust-spread units. Null means unavailable or not applicable, never zero."},"median_change":{"description":"Recent minus baseline median in analyzed units.","type":"number"},"monitor":{"additionalProperties":false,"description":"Descriptive monitor of the analyzed window.","properties":{"change_points":{"description":"Alarm positions in the analyzed window.","items":{"description":"Zero-based window position.","minimum":0,"type":"integer"},"type":"array"},"guarantee":{"description":"No statistical or market-performance guarantee is made.","type":"null"},"is_e_value":{"const":false,"description":"Not a calibrated e-value.","type":"boolean"},"state":{"description":"Descriptive monitor state.","type":"string"},"statistic":{"description":"Raw monitoring statistic, not an e-value.","type":"number"},"statistic_type":{"const":"shiryaev_roberts","description":"Monitor family.","type":"string"}},"required":["state","statistic","statistic_type","is_e_value","change_points","guarantee"],"type":"object"},"persistence_points":{"description":"Recent readings with a supported same-direction departure.","minimum":0,"type":"integer"},"recent_median":{"description":"Recent center in analyzed units.","type":"number"},"recent_robust_spread":{"description":"Recent MAD times 1.4826 in analyzed units.","type":"number"},"representation_tolerance":{"description":"Log-price arithmetic tolerance in analyzed units, zero for direct measurements.","type":"number"},"representation_tolerance_basis":{"description":"Arithmetic source of the tolerance.","type":"string"},"robust_departure":{"anyOf":[{"description":"Median change in baseline robust-spread units.","type":"number"},{"type":"null"}],"description":"Median change in baseline robust-spread units. Null means unavailable or not applicable, never zero."},"volatility_ratio":{"anyOf":[{"description":"Recent/baseline robust spread; null at zero baseline spread.","type":"number"},{"type":"null"}],"description":"Recent/baseline robust spread; null at zero baseline spread. Null means unavailable or not applicable, never zero."},"window_end":{"description":"Last analyzed observation timestamp.","type":"string"},"window_start":{"description":"First analyzed observation timestamp.","type":"string"}},"required":["baseline_median","recent_median","median_change","latest_change","baseline_robust_spread","recent_robust_spread","representation_tolerance","robust_departure","latest_robust_departure","volatility_ratio","persistence_points","representation_tolerance_basis","lag_one_correlation","coverage","monitor","window_start","window_end"],"type":"object"},{"type":"null"}],"description":"Computed only for source-eligible series with sufficient contiguous history. Null means unavailable or not applicable, never zero."},"gap_indices":{"description":"Declared-calendar gap positions.","items":{"description":"Zero-based observation index.","minimum":0,"type":"integer"},"type":"array"},"group":{"description":"Declared group, defaulting to series id.","type":"string"},"guarantee":{"description":"No statistical or market-performance guarantee is made.","type":"null"},"id":{"description":"Caller-supplied series identifier.","type":"string"},"is_e_value":{"const":false,"description":"No calibrated e-value.","type":"boolean"},"kind":{"description":"Caller-declared measurement kind.","type":"string"},"missing_points":{"description":"Null-valued observations.","minimum":0,"type":"integer"},"observation_count":{"description":"Supplied observation count.","minimum":0,"type":"integer"},"observed_at":{"anyOf":[{"description":"Last supplied observation timestamp; null for no observations.","type":"string"},{"type":"null"}],"description":"Last supplied observation timestamp; null for no observations. Null means unavailable or not applicable, never zero."},"priority":{"anyOf":[{"description":"Review=2, watch=1, no supported departure=0; null when ineligible.","minimum":0,"type":"integer"},{"type":"null"}],"description":"Review=2, watch=1, no supported departure=0; null when ineligible. Null means unavailable or not applicable, never zero."},"reading":{"description":"Interpretation or visibility-gap explanation.","type":"string"},"reasons":{"description":"Ordered statements or identifiers.","items":{"description":"One retained statement or identifier.","type":"string"},"type":"array"},"required_points":{"description":"Baseline plus recent point requirement.","minimum":0,"type":"integer"},"source":{"additionalProperties":false,"properties":{"id":{"description":"Caller-defined source identifier retained in results, for example synthetic-demo or a licensed provider name.","maxLength":128,"minLength":1,"type":"string"},"rights":{"description":"Caller's source-use declaration. Only permitted permits numerical assessment; unknown and restricted remain explicit visibility gaps. The server does not grant or verify rights.","enum":["permitted","unknown","restricted"],"type":"string"},"url":{"description":"Optional source or evidence URL retained for attribution; no URL is fetched or independently verified.","maxLength":2048,"minLength":1,"type":"string"}},"required":["id","rights"],"type":"object"},"status":{"description":"Per-series assessment state.","enum":["insufficient_visibility","review","watch","no_supported_departure"],"type":"string"},"transform":{"description":"price becomes log_return; all other kinds use identity.","enum":["log_return","identity"],"type":"string"},"unit":{"description":"Caller-declared input unit.","type":"string"},"validity":{"const":"descriptive","description":"Descriptive assessment, not a probability or statistical certificate.","type":"string"},"warnings":{"description":"Ordered statements or identifiers.","items":{"description":"One retained statement or identifier.","type":"string"},"type":"array"}},"required":["id","kind","unit","source","group","reasons","warnings","observed_at","available_at","age_seconds","gap_indices","missing_points","availability_timestamps_complete","as_published_history_verified","status","observation_count","contiguous_points","required_points","transform","analyzed_unit","diagnostics","priority","is_e_value","validity","guarantee","reading"],"type":"object"},"type":"array"},"status":{"description":"Aggregate visibility state.","enum":["insufficient_visibility","partial","assessed"],"type":"string"},"visibility_gaps":{"description":"Ordered statements or identifiers.","items":{"description":"One retained statement or identifier.","type":"string"},"type":"array"}},"type":"object"}{"additionalProperties":false,"properties":{"as_of":{"description":"UTC cutoff for headline recency and availability, for example 2026-01-01T12:00:00Z.","format":"utc-date-time","maxLength":64,"minLength":1,"type":"string"},"events":{"description":"Up to 500 caller-supplied headline records with unique ids. Supply the collection you are permitted to use; input order does not determine queue order. Empty input returns insufficient_visibility.","items":{"additionalProperties":false,"properties":{"available_at":{"description":"Optional UTC time the headline became available to the caller; must not precede published_at. A value after as_of excludes it as not_yet_available. Omission prevents a verified as-published history claim.","format":"utc-date-time","maxLength":64,"minLength":1,"type":"string"},"entities":{"description":"Up to 64 caller-assigned entity ids, for example SYNTHETIC_CO. Matching is exact and case-sensitive. An empty list remains unmapped; entities are not inferred from title text.","items":{"maxLength":128,"minLength":1, ⟨6 unchanged words⟩ ,"type":"array"},"event_key":{"description":"Optional caller-defined event identity. Different explicit keys prevent merging; a shared key with different wording or quantities can flag separate conflict candidates for review.","maxLength":128,"minLength":1,"type":"string"},"id":{"description":"Unique event identifier within the request, retained in event records and cluster member_ids.","maxLength":128,"minLength":1,"type":"string"},"published_at":{"description":"Headline publication time in UTC; future or stale headlines are retained with an exclusion reason.","format":"utc-date-time","maxLength":64,"minLength":1,"type":"string"},"source":{"additionalProperties":false,"description":"Caller-supplied source identity and type, with optional attribution and family. No retrieval or independent source verification occurs.","properties":{"family":{"description":"Optional shared source-family label for syndication or common ownership. Defaults to URL hostname, then source id. Distinct families are not verified independent corroboration.","maxLength":128,"minLength":1,"type":"string"},"id":{"description":"Caller-defined source identifier retained with the headline.","maxLength":128,"minLength":1,"type":"string"},"kind":{"description":"Caller-declared source type, prioritized in this order: primary, reporting, commentary. This label does not verify truth, authority or independence.","enum":["primary","reporting","commentary"],"type":"string"},"url":{"description":"Optional attribution URL, never fetched. Its hostname is the source-family fallback when family is omitted.","maxLength":2048,"minLength":1,"type":" ⟨4 unchanged words⟩ ,"type":"object"},"title":{"description":"Headline text, up to 2000 characters, treated only as untrusted data. Wording, numbers and negation guide grouping; this is not full article analysis.","maxLength":2000,"minLength":1,"type":" ⟨13 unchanged words⟩ ,"type":"array"},"focus":{"description":"Optional entity ids of interest, matched exactly to each event's entities. Omitted or empty means no entity filter. Events with no mapped entity are retained for review; mapped off-focus events are excluded.","items":{"maxLength":128,"minLength":1, ⟨7 unchanged words⟩ array"},"policy":{"additionalProperties":false,"description":"Optional triage settings; omitted fields use 86400 seconds maximum age, 20 queue items and 0.8 wording similarity.","properties":{"max_age_seconds":{"default":86400,"description":"Maximum headline age in seconds at as_of; default 86400 (24 hours). Older events are retained as stale and excluded from candidate clusters.","exclusiveMinimum":0,"type":"number"},"max_items":{"default":20,"description":"Maximum clusters in attention_queue; default 20. All clusters and events remain available, with overflow listed in deferred_cluster_ids.","maximum":100,"minimum":1,"type":"integer"},"similarity_threshold":{"default":0.8,"description":"Minimum token-set Jaccard similarity for grouping; default 0.8. Matching entities and compatible quantities, negation, direction and units are also required.","maximum":1,"minimum":0.5,"type": ⟨9 unchanged words⟩
before
{"additionalProperties":true,"type":"object"}after
{"anyOf":[{"additionalProperties":false,"properties":{"as_of":{},"attention_queue":{},"clusters":{},"conflict_candidates":{},"counts":{},"deferred_cluster_ids":{},"events":{},"execution_authority":{},"focus":{},"limits":{},"policy":{},"policy_sha256":{},"request_sha256":{},"schema":{},"source_universe_complete":{},"status":{}},"required":["schema","as_of","focus","status","policy","attention_queue","clusters","events","conflict_candidates","deferred_cluster_ids","counts","limits","source_universe_complete","execution_authority","request_sha256","policy_sha256"],"type":"object"},{"additionalProperties":false,"description":"Existing tool-error payload; no successful result fields are implied.","properties":{"error":{"description":"Validation or computation failure message; inspect MCP isError or the HTTP status.","type":"string"}},"required":["error"],"type":"object"}],"description":"Headline repetition and review-priority result, never a truth or market-impact score. Tool errors retain the separate error-message shape.","properties":{"as_of":{"description":"Caller-supplied UTC cutoff.","type":"string"},"attention_queue":{"description":"Prioritized bounded queue.","items":{"additionalProperties":false,"description":"One wording cluster, not independent corroboration or truth.","properties":{"cluster_id":{"description":"Deterministic cluster id.","type":"string"},"declared_source_families":{"description":"Ordered statements or identifiers.","items":{"description":"One retained statement or identifier.","type":"string"},"type":"array"},"entities":{"description":"Ordered statements or identifiers.","items":{"description":"One retained statement or identifier.","type":"string"},"type":"array"},"event_keys":{"description":"Ordered statements or identifiers.","items":{"description":"One retained statement or identifier.","type":"string"},"type":"array"},"impact_assessed":{"const":false,"description":"No impact assessment.","type":"boolean"},"independence_verified":{"const":false,"description":"Source independence is not verified.","type":"boolean"},"member_ids":{"description":"Ordered statements or identifiers.","items":{"description":"One retained statement or identifier.","type":"string"},"type":"array"},"published_at":{"description":"Representative publication timestamp.","type":"string"},"relevance":{"description":"Caller-entity focus classification.","enum":["unmapped","matches_focus","not_filtered"],"type":"string"},"report_count":{"description":"Member events.","minimum":0,"type":"integer"},"representative_id":{"description":"Selected representative event id.","type":"string"},"source":{"additionalProperties":false,"properties":{"family":{"description":"Optional shared source-family label for syndication or common ownership. Defaults to URL hostname, then source id. Distinct families are not verified independent corroboration.","maxLength":128,"minLength":1,"type":"string"},"id":{"description":"Caller-defined source identifier retained with the headline.","maxLength":128,"minLength":1,"type":"string"},"kind":{"description":"Caller-declared source type, prioritized in this order: primary, reporting, commentary. This label does not verify truth, authority or independence.","enum":["primary","reporting","commentary"],"type":"string"},"url":{"description":"Optional attribution URL, never fetched. Its hostname is the source-family fallback when family is omitted.","maxLength":2048,"minLength":1,"type":"string"}},"required":["id","kind"],"type":"object"},"title":{"description":"Untrusted caller headline text.","type":"string"},"truth_assessed":{"const":false,"description":"No truth assessment.","type":"boolean"}},"required":["cluster_id","representative_id","title","entities","published_at","source","member_ids","report_count","declared_source_families","independence_verified","truth_assessed","impact_assessed","relevance","event_keys"],"type":"object"},"type":"array"},"clusters":{"description":"All eligible wording clusters.","items":{"additionalProperties":false,"description":"One wording cluster, not independent corroboration or truth.","properties":{"cluster_id":{"description":"Deterministic cluster id.","type":"string"},"declared_source_families":{"description":"Ordered statements or identifiers.","items":{"description":"One retained statement or identifier.","type":"string"},"type":"array"},"entities":{"description":"Ordered statements or identifiers.","items":{"description":"One retained statement or identifier.","type":"string"},"type":"array"},"event_keys":{"description":"Ordered statements or identifiers.","items":{"description":"One retained statement or identifier.","type":"string"},"type":"array"},"impact_assessed":{"const":false,"description":"No impact assessment.","type":"boolean"},"independence_verified":{"const":false,"description":"Source independence is not verified.","type":"boolean"},"member_ids":{"description":"Ordered statements or identifiers.","items":{"description":"One retained statement or identifier.","type":"string"},"type":"array"},"published_at":{"description":"Representative publication timestamp.","type":"string"},"relevance":{"description":"Caller-entity focus classification.","enum":["unmapped","matches_focus","not_filtered"],"type":"string"},"report_count":{"description":"Member events.","minimum":0,"type":"integer"},"representative_id":{"description":"Selected representative event id.","type":"string"},"source":{"additionalProperties":false,"properties":{"family":{"description":"Optional shared source-family label for syndication or common ownership. Defaults to URL hostname, then source id. Distinct families are not verified independent corroboration.","maxLength":128,"minLength":1,"type":"string"},"id":{"description":"Caller-defined source identifier retained with the headline.","maxLength":128,"minLength":1,"type":"string"},"kind":{"description":"Caller-declared source type, prioritized in this order: primary, reporting, commentary. This label does not verify truth, authority or independence.","enum":["primary","reporting","commentary"],"type":"string"},"url":{"description":"Optional attribution URL, never fetched. Its hostname is the source-family fallback when family is omitted.","maxLength":2048,"minLength":1,"type":"string"}},"required":["id","kind"],"type":"object"},"title":{"description":"Untrusted caller headline text.","type":"string"},"truth_assessed":{"const":false,"description":"No truth assessment.","type":"boolean"}},"required":["cluster_id","representative_id","title","entities","published_at","source","member_ids","report_count","declared_source_families","independence_verified","truth_assessed","impact_assessed","relevance","event_keys"],"type":"object"},"type":"array"},"conflict_candidates":{"description":"Potential conflicts requiring review.","items":{"additionalProperties":false,"description":"Distinct wording sharing an event key.","properties":{"cluster_ids":{"description":"Ordered statements or identifiers.","items":{"description":"One retained statement or identifier.","type":"string"},"type":"array"},"event_key":{"description":"Shared caller-defined event identity.","type":"string"},"reason":{"const":"different_wording_or_quantities_requires_review","description":"Review reason.","type":"string"}},"required":["event_key","cluster_ids","reason"],"type":"object"},"type":"array"},"counts":{"additionalProperties":false,"description":"Complete event/cluster counts.","properties":{"deferred":{"description":"Clusters beyond queue capacity.","minimum":0,"type":"integer"},"distinct_wording_clusters":{"description":"Clusters.","minimum":0,"type":"integer"},"eligible_for_triage":{"description":"Eligible events.","minimum":0,"type":"integer"},"queued":{"description":"Queued clusters.","minimum":0,"type":"integer"},"repeated_wording":{"description":"Eligible events minus clusters.","minimum":0,"type":"integer"},"supplied":{"description":"Input events.","minimum":0,"type":"integer"}},"required":["supplied","eligible_for_triage","distinct_wording_clusters","repeated_wording","queued","deferred"],"type":"object"},"deferred_cluster_ids":{"description":"Ordered statements or identifiers.","items":{"description":"One retained statement or identifier.","type":"string"},"type":"array"},"error":{"description":"Validation or computation failure message; inspect MCP isError or the HTTP status.","type":"string"},"events":{"description":"All events sorted by id.","items":{"additionalProperties":false,"description":"Every supplied event remains visible with a disposition.","properties":{"available_at":{"anyOf":[{"description":"Supplied availability timestamp, if present.","type":"string"},{"type":"null"}],"description":"Supplied availability timestamp, if present. Null means unavailable or not applicable, never zero."},"cluster_id":{"anyOf":[{"description":"Assigned cluster id; null for excluded events.","type":"string"},{"type":"null"}],"description":"Assigned cluster id; null for excluded events. Null means unavailable or not applicable, never zero."},"entities":{"description":"Ordered statements or identifiers.","items":{"description":"One retained statement or identifier.","type":"string"},"type":"array"},"id":{"description":"Caller event id.","type":"string"},"published_at":{"description":"Supplied publication timestamp.","type":"string"},"source":{"additionalProperties":false,"properties":{"family":{"description":"Optional shared source-family label for syndication or common ownership. Defaults to URL hostname, then source id. Distinct families are not verified independent corroboration.","maxLength":128,"minLength":1,"type":"string"},"id":{"description":"Caller-defined source identifier retained with the headline.","maxLength":128,"minLength":1,"type":"string"},"kind":{"description":"Caller-declared source type, prioritized in this order: primary, reporting, commentary. This label does not verify truth, authority or independence.","enum":["primary","reporting","commentary"],"type":"string"},"url":{"description":"Optional attribution URL, never fetched. Its hostname is the source-family fallback when family is omitted.","maxLength":2048,"minLength":1,"type":"string"}},"required":["id","kind"],"type":"object"},"status":{"description":"Retained event disposition.","enum":["not_yet_available","stale","outside_focus","unmapped_entity","representative","repeated_wording"],"type":"string"},"title":{"description":"Untrusted caller headline.","type":"string"}},"required":["id","status","cluster_id","published_at","available_at","source","entities","title"],"type":"object"},"type":"array"},"execution_authority":{"const":false,"description":"No trading authority.","type":"boolean"},"focus":{"description":"Ordered statements or identifiers.","items":{"description":"One retained statement or identifier.","type":"string"},"type":"array"},"limits":{"description":"Ordered statements or identifiers.","items":{"description":"One retained statement or identifier.","type":"string"},"type":"array"},"policy":{"additionalProperties":false,"description":"Fully applied policy.","properties":{"max_age_seconds":{"description":"Maximum event age in seconds.","type":"number"},"max_items":{"description":"Maximum queue length.","minimum":0,"type":"integer"},"similarity_threshold":{"description":"Token-set similarity threshold.","type":"number"}},"required":["max_age_seconds","max_items","similarity_threshold"],"type":"object"},"policy_sha256":{"description":"SHA-256 of the canonicalized submitted request or applied policy.","pattern":"^[0-9a-f]{64}$","type":"string"},"request_sha256":{"description":"SHA-256 of the canonicalized submitted request or applied policy.","pattern":"^[0-9a-f]{64}$","type":"string"},"schema":{"const":"noisefloor.narrative-triage.v1","description":"Result contract identifier.","type":"string"},"source_universe_complete":{"const":false,"description":"Collection completeness is unknown.","type":"boolean"},"status":{"description":"Whether any supplied events were eligible.","enum":["triaged","insufficient_visibility"],"type":"string"}},"type":"object"}{"additionalProperties":false,"properties":{"sample_sizes":{"description":"Positive measurement denominators aligned one-for-one with values. Equal array length is required. Zero coverage is missing data, not a valid denominator; economic trading volume is not measurement coverage.","items":{"exclusiveMinimum":0,"type":"number ⟨3 unchanged words⟩ 1,"type":"array"},"values":{"description":"Chronological metric readings in consistent units, one per sample_sizes entry. At least 10 aligned pairs are needed; all earlier pairs form the reference for the latest reading.","items":{"type":"number"},"maxItems ⟨10 unchanged words⟩
{"anyOf":[{"additionalProperties":truefalse,"properties":{"assessment":{},"caveats":{},"denominator_extrapolation":{},"departure_after_conditioning":{},"fit":{},"guarantee":{},"is_causal":{},"method":{},"metric_delta":{},"metric_departure":{},"metric_now":{},"n_pairs":{},"reading":{},"sample_size_change_pct":{},"sample_size_departure":{},"sample_size_now":{},"validity":{},"verdict":{},"zero_reference_spread":{}},"required":["n_pairs","validity","guarantee","is_causal","method","caveats","verdict","assessment","reading"],"type":"object"},{"additionalProperties":false,"description":"Existing tool-error payload; no successful result fields are implied.","properties":{"error":{"description":"Validation or computation failure message; inspect MCP isError or the HTTP status.","type":"string"}},"required":["error"],"type":"object"}],"description":"Short histories omit departure/fit fields; later branches retain only quantities that were computed. Tool errors retain the separate error-message shape.","properties":{"assessment":{"description":"Preferred interpretation of the legacy verdict.","enum":["insufficient_history","no_supported_departure","departure_from_zero_spread","denominator_explanation_unidentified","weak_linear_association","consistent_with_denominator_association","departure_survives_linear_conditioning"],"type":"string"},"caveats":{"description":"Ordered statements or identifiers.","items":{"description":"One retained statement or identifier.","type":"string"},"type":"array"},"denominator_extrapolation":{"description":"Latest denominator falls outside the historical range.","type":"boolean"},"departure_after_conditioning":{"anyOf":[{"description":"Robust standardized latest residual after linear conditioning.","type":"number"},{"type":"null"}],"description":"Robust standardized latest residual after linear conditioning. Null means unavailable or not applicable, never zero."},"error":{"description":"Validation or computation failure message; inspect MCP isError or the HTTP status.","type":"string"},"fit":{"additionalProperties":false,"description":"Historical linear association, when estimable.","properties":{"correlation":{"description":"Historical linear correlation, rounded to three decimals.","type":"number"},"intercept":{"description":"Metric units.","type":"number"},"slope":{"description":"Metric units per denominator unit.","type":"number"}},"required":["slope","intercept","correlation"],"type":"object"},"guarantee":{"description":"No statistical or market-performance guarantee is made.","type":"null"},"is_causal":{"const":false,"description":"Association does not establish causality.","type":"boolean"},"method":{"description":"Descriptive denominator-conditioning method.","type":"string"},"metric_delta":{"description":"Latest metric minus historical median, in input units.","type":"number"},"metric_departure":{"anyOf":[{"description":"Robust standardized latest metric departure.","type":"number"},{"type":"null"}],"description":"Robust standardized latest metric departure. Null means unavailable or not applicable, never zero."},"metric_now":{"description":"Latest metric in input units.","type":"number"},"n_pairs":{"description":"Number of aligned metric/measurement-denominator pairs.","minimum":0,"type":"integer"},"reading":{"description":"Explanation and limits of the result.","type":"string"},"sample_size_change_pct":{"description":"Denominator change as percent of its historical median.","type":"number"},"sample_size_departure":{"anyOf":[{"description":"Robust standardized denominator departure.","type":"number"},{"type":"null"}],"description":"Robust standardized denominator departure. Null means unavailable or not applicable, never zero."},"sample_size_now":{"description":"Latest declared measurement denominator.","type":"number"},"validity":{"const":"descriptive","description":"Descriptive assessment, not a probability or statistical certificate.","type":"string"},"verdict":{"description":"Legacy descriptive result code.","enum":["NOT_ENOUGH_HISTORY","NO_MOVE","UNCLEAR","SAMPLING_ARTIFACT","REAL"],"type":"string"},"zero_reference_spread":{"description":"Historical metric MAD is zero.","type":"boolean"}},"type":"object"}
{"additionalProperties":false,"properties":{"nominal":{"default":0.8,"description":"Target interval coverage fraction, default 0.80. Use the same value passed to forecast_next for like-for-like replay; not a confidence level for the backtest result.","exclusiveMaximum":1,"exclusiveMinimum":0,"type":"number"},"values":{"description":"One to 2048 chronological realized observations with consistent units/cadence; at least 20 to score. Predictions begin after ten one-step errors, so the first scored record has zero-based index 11.","items":{"type":"number"},"maxItems ⟨9 unchanged words⟩
{"anyOf":[{"additionalProperties":false,"allOf":[{"if":{"properties":{"ok":{"const":true}}},"then":{"required":["n_forecasts","nominal_coverage","empirical_coverage","calibrated","within_coverage_tolerance","calibration_criterion","score","baseline_score","beats_baseline","skill_vs_baseline","n_misses","records","misses","worst_misses","records_complete"]}}],"properties":{"baseline_score":{},"beats_baseline":{},"calibrated":{},"calibration_criterion":{},"caveats":{},"empirical_coverage":{},"guarantee":{},"method":{},"misses":{},"n_forecasts":{},"n_misses":{},"nominal_coverage":{},"ok":{},"reading":{},"records":{},"records_complete":{},"score":{},"skill_vs_baseline":{},"validity":{},"within_coverage_tolerance":{},"worst_misses":{}},"required":["ok","validity","guarantee","method","caveats","reading"],"type":"object"},{"additionalProperties":false,"description":"Existing tool-error payload; no successful result fields are implied.","properties":{"error":{"description":"Validation or computation failure message; inspect MCP isError or the HTTP status.","type":"string"}},"required":["error"],"type":"object"}],"description":"Forecast replay scores or insufficient-history result. Tool errors retain the separate error-message shape.","properties":{"baseline_score":{"description":"Mean baseline weighted interval score.","type":"number"},"beats_baseline":{"description":"Adaptive mean score is strictly below baseline.","type":"boolean"},"calibrated":{"description":"Compatibility alias of within_coverage_tolerance; descriptive only.","type":"boolean"},"calibration_criterion":{"description":"Descriptive tolerance rule, not a significance test.","type":"string"},"caveats":{"description":"Ordered statements or identifiers.","items":{"description":"One retained statement or identifier.","type":"string"},"type":"array"},"empirical_coverage":{"description":"Observed covered fraction.","type":"number"},"error":{"description":"Validation or computation failure message; inspect MCP isError or the HTTP status.","type":"string"},"guarantee":{"description":"No statistical or market-performance guarantee is made.","type":"null"},"method":{"description":"Shared forecast issuance and scoring method.","type":"string"},"misses":{"description":"Every uncovered observation.","items":{"additionalProperties":false,"description":"One prequential issue/observe/score record; future observations do not alter it.","properties":{"actual":{"description":"Observed value in input units.","type":"number"},"adaptive_alpha":{"description":"Clipped adaptive miscoverage parameter as a fraction.","type":"number"},"baseline_score":{"description":"Historical-quantile baseline weighted interval score in input units.","type":"number"},"covered":{"description":"Actual value lies inside the issued interval.","type":"boolean"},"error_history_size":{"description":"Historical absolute errors used before issuing this forecast.","minimum":0,"type":"integer"},"forecast":{"description":"One-step random-walk point forecast in input units.","type":"number"},"index":{"description":"Zero-based index of the observation scored after forecast issuance.","minimum":0,"type":"integer"},"interval":{"description":"Lower and upper bounds, in that order.","items":{"description":"Bound in the original input units.","type":"number"},"maxItems":2,"minItems":2,"type":"array"},"missed_by":{"description":"Distance outside the interval in input units, zero when covered.","type":"number"},"nominal_coverage":{"description":"Requested target coverage as a fraction, not a guarantee.","type":"number"},"score":{"description":"Adaptive weighted interval score in input units; lower is better.","type":"number"}},"required":["index","forecast","interval","nominal_coverage","adaptive_alpha","error_history_size","actual","covered","missed_by","score","baseline_score"],"type":"object"},"type":"array"},"n_forecasts":{"description":"Number of issued forecasts scored.","minimum":0,"type":"integer"},"n_misses":{"description":"Number of uncovered observations.","minimum":0,"type":"integer"},"nominal_coverage":{"description":"Target coverage fraction.","type":"number"},"ok":{"description":"False denotes insufficient history; forecast or scoring fields are then absent.","type":"boolean"},"reading":{"description":"Result interpretation or minimum-history requirement.","type":"string"},"records":{"description":"Every scored observation.","items":{"additionalProperties":false,"description":"One prequential issue/observe/score record; future observations do not alter it.","properties":{"actual":{"description":"Observed value in input units.","type":"number"},"adaptive_alpha":{"description":"Clipped adaptive miscoverage parameter as a fraction.","type":"number"},"baseline_score":{"description":"Historical-quantile baseline weighted interval score in input units.","type":"number"},"covered":{"description":"Actual value lies inside the issued interval.","type":"boolean"},"error_history_size":{"description":"Historical absolute errors used before issuing this forecast.","minimum":0,"type":"integer"},"forecast":{"description":"One-step random-walk point forecast in input units.","type":"number"},"index":{"description":"Zero-based index of the observation scored after forecast issuance.","minimum":0,"type":"integer"},"interval":{"description":"Lower and upper bounds, in that order.","items":{"description":"Bound in the original input units.","type":"number"},"maxItems":2,"minItems":2,"type":"array"},"missed_by":{"description":"Distance outside the interval in input units, zero when covered.","type":"number"},"nominal_coverage":{"description":"Requested target coverage as a fraction, not a guarantee.","type":"number"},"score":{"description":"Adaptive weighted interval score in input units; lower is better.","type":"number"}},"required":["index","forecast","interval","nominal_coverage","adaptive_alpha","error_history_size","actual","covered","missed_by","score","baseline_score"],"type":"object"},"type":"array"},"records_complete":{"const":true,"description":"All scored observations are included.","type":"boolean"},"score":{"description":"Mean adaptive weighted interval score.","type":"number"},"skill_vs_baseline":{"anyOf":[{"description":"One minus adaptive/baseline score; null when baseline score is zero.","type":"number"},{"type":"null"}],"description":"One minus adaptive/baseline score; null when baseline score is zero. Null means unavailable or not applicable, never zero."},"validity":{"const":"empirical_only","description":"Coverage is empirical only.","type":"string"},"within_coverage_tolerance":{"description":"Observed coverage is within 0.05 of the target.","type":"boolean"},"worst_misses":{"description":"At most five misses sorted by distance outside the interval.","items":{"additionalProperties":false,"description":"One prequential issue/observe/score record; future observations do not alter it.","properties":{"actual":{"description":"Observed value in input units.","type":"number"},"adaptive_alpha":{"description":"Clipped adaptive miscoverage parameter as a fraction.","type":"number"},"baseline_score":{"description":"Historical-quantile baseline weighted interval score in input units.","type":"number"},"covered":{"description":"Actual value lies inside the issued interval.","type":"boolean"},"error_history_size":{"description":"Historical absolute errors used before issuing this forecast.","minimum":0,"type":"integer"},"forecast":{"description":"One-step random-walk point forecast in input units.","type":"number"},"index":{"description":"Zero-based index of the observation scored after forecast issuance.","minimum":0,"type":"integer"},"interval":{"description":"Lower and upper bounds, in that order.","items":{"description":"Bound in the original input units.","type":"number"},"maxItems":2,"minItems":2,"type":"array"},"missed_by":{"description":"Distance outside the interval in input units, zero when covered.","type":"number"},"nominal_coverage":{"description":"Requested target coverage as a fraction, not a guarantee.","type":"number"},"score":{"description":"Adaptive weighted interval score in input units; lower is better.","type":"number"}},"required":["index","forecast","interval","nominal_coverage","adaptive_alpha","error_history_size","actual","covered","missed_by","score","baseline_score"],"type":"object"},"maxItems":5,"type":"array"}},"type":"object"}
{"additionalProperties":false,"properties":{"as_of":{"description":"UTC cutoff for freshness and availability, for example 2026-01-01T12:00:00Z. Caller timestamps do not certify historical as-published vintages.","format":"utc-date-time","maxLength":64,"minLength":1,"type":"string"},"policy":{"additionalProperties":false,"description":"Optional rolling-window sizes; omitted fields default to 60 intervals, 20-interval steps and at most 4 windows.","properties":{"max_windows":{"default":4,"description":"Maximum recent complete windows returned, in chronological order; default 4. Fewer are returned when only a shorter eligible history is available.","maximum":8,"minimum":1,"type":"integer"},"step_points":{"default":20,"description":"Step back in aligned intervals between window endpoints; default 20. Overlapping windows are descriptive and not independent tests.","maximum":512,"minimum":1,"type":"integer"},"window_points":{"default":60,"description":"Aligned transformed intervals per correlation window; default 60. Must exceed the supplied series count; needs at least window_points + 1 original observations per series, including returns.","maximum":512,"minimum":20,"type":" ⟨2 unchanged words⟩ ,"type":"object"},"series":{"description":"Caller-defined comparable panel, normally 2–32 series with unique ids. All members must pass source and clock gates. Both endpoints of each interval must align; rejected members are never silently removed.","items":{"additionalProperties":false,"properties":{"group":{"description":"Optional caller-defined grouping label for review queues; defaults to this series id. It does not certify independence or comparability.","maxLength":128,"minLength":1,"type":"string"},"id":{"description":"Unique series identifier within this request, used in results and cross-series relationships.","maxLength":128,"minLength":1,"type":"string"},"kind":{"description":"Measurement type. Both assessment tools convert price to log returns. market_assessment keeps other values unchanged; spectral_assessment keeps return values and first-differences level, spread, rate and count.","enum":["price","return","level", ⟨3 unchanged words⟩ ,"type":"string"},"max_age_seconds":{"description":"Maximum allowed age in seconds of the last observation relative to as_of. Older data remains insufficient_visibility; choose an appropriate cadence-specific limit.","exclusiveMinimum":0,"type":"number"},"max_gap_seconds":{"description":"Optional largest allowed time gap in seconds between observations. A larger gap restarts the contiguous tail. If omitted, calendar gap policy is unknown and a warning is returned.","exclusiveMinimum":0,"type":"number"},"observations":{"description":"Zero to 2048 observations in strictly increasing UTC order. Empty or inadequate histories return visibility gaps; null values and declared time gaps are preserved, never interpolated.","items":{"additionalProperties":false,"properties":{"available_at":{"description":"UTC time the observation became available to the caller. A time before observed_at becomes an availability_precedes_observation visibility gap; after as_of becomes not_yet_available. Omission is retained as incomplete availability history.","format":"utc-date-time","maxLength":64,"minLength":1,"type":"string"},"observed_at":{"description":"Time represented by this observation, in UTC. Timestamps within a series must be unique and strictly increasing.","format":"utc-date-time","maxLength":64,"minLength":1,"type":"string"},"sample_size":{"description":"Positive measurement-coverage denominator for this observation, or null when missing. This is not trading volume. Omit if coverage is not supplied; zero is invalid.","exclusiveMinimum":0,"type":["number","null"]},"value":{"description":"Finite measurement in the declared series unit. Prices must be positive and counts nonnegative. Use null for missing data; it breaks the contiguous analysis window and is never filled.","type":["number","null"]}}," ⟨10 unchanged words⟩ array"},"source":{"additionalProperties":false,"description":"Source identity, optional attribution URL and declared usage rights. All are caller-supplied, not attestations.","properties":{"id":{"description":"Caller-defined source identifier retained in results, for example synthetic-demo or a licensed provider name.","maxLength":128,"minLength":1,"type":"string"},"rights":{"description":"Caller's source-use declaration. Only permitted permits numerical assessment; unknown and restricted remain explicit visibility gaps. The server does not grant or verify rights.","enum":["permitted","unknown","restricted"],"type":"string"},"url":{"description":"Optional source or evidence URL retained for attribution; no URL is fetched or independently verified.","maxLength":2048,"minLength":1,"type":" ⟨4 unchanged words⟩ ],"type":"object"},"unit":{"description":"Consistent measurement unit for all observations, for example USD, decimal_return, basis_points or count. No currency conversion, percent conversion or economic comparability is inferred.","maxLength":64,"minLength":1,"type": ⟨21 unchanged words⟩
before
{"additionalProperties":true,"type":"object"}after
{"anyOf":[{"additionalProperties":false,"properties":{"alignment":{},"as_of":{},"coverage":{},"dynamics":{},"execution_authority":{},"guarantee":{},"is_e_value":{},"latest":{},"limits":{},"maturity":{},"policy":{},"policy_sha256":{},"reasons":{},"request_sha256":{},"schema":{},"series":{},"status":{},"validity":{},"windows":{}},"required":["schema","as_of","status","maturity","validity","guarantee","is_e_value","policy","series","reasons","windows","latest","dynamics","alignment","coverage","limits","execution_authority","request_sha256","policy_sha256"],"type":"object"},{"additionalProperties":false,"description":"Existing tool-error payload; no successful result fields are implied.","properties":{"error":{"description":"Validation or computation failure message; inspect MCP isError or the HTTP status.","type":"string"}},"required":["error"],"type":"object"}],"description":"Source-gated spectral research, with explicit unresolved and partial windows. Tool errors retain the separate error-message shape.","properties":{"alignment":{"additionalProperties":false,"description":"Alignment diagnostics; mismatch counts are absent when early gates stop alignment.","properties":{"aligned_points":{"description":"Aligned contiguous intervals.","minimum":0,"type":"integer"},"discarded_common_intervals":{"description":"Common intervals before the last mismatch.","minimum":0,"type":"integer"},"filled_points":{"description":"Always zero; data are never filled.","minimum":0,"type":"integer"},"first_observation_sets_interval_start":{"const":true,"description":"First observation sets the first interval start.","type":"boolean"},"method":{"const":"common_contiguous_interval_suffix","description":"Alignment method.","type":"string"},"unmatched_intervals":{"description":"Union intervals absent from at least one member.","minimum":0,"type":"integer"}},"required":["method","aligned_points","first_observation_sets_interval_start","filled_points"],"type":"object"},"as_of":{"description":"Caller cutoff.","type":"string"},"coverage":{"additionalProperties":false,"description":"Supplied-panel coverage only.","properties":{"complete_for_supplied_series":{"description":"All returned windows assessed for the entire supplied panel.","type":"boolean"},"market_universe_complete":{"const":false,"description":"No claim of market-wide completeness.","type":"boolean"},"requested_series":{"description":"Requested panel members.","minimum":0,"type":"integer"}},"required":["requested_series","complete_for_supplied_series","market_universe_complete"],"type":"object"},"dynamics":{"description":"Only pairs of assessed windows are compared.","items":{"additionalProperties":false,"description":"Adjacent assessed-window comparison.","properties":{"calibrated_regime_change":{"const":false,"description":"No calibrated change decision.","type":"boolean"},"correlation_rms_change":{"description":"RMS matrix-entry difference.","type":"number"},"eigenvalue_rms_change":{"description":"RMS eigenvalue difference.","type":"number"},"from":{"description":"Previous window-end timestamp.","type":"string"},"leading_variance_share_change":{"description":"Current minus previous leading variance share.","type":"number"},"leading_vector_comparison":{"description":"Whether vector overlap is resolved.","enum":["descriptive","unresolved_degenerate_mode"],"type":"string"},"leading_vector_squared_overlap":{"anyOf":[{"description":"Squared overlap; null when the leading mode is degenerate.","type":"number"},{"type":"null"}],"description":"Squared overlap; null when the leading mode is degenerate. Null means unavailable or not applicable, never zero."},"to":{"description":"Current window-end timestamp.","type":"string"}},"required":["from","to","leading_variance_share_change","eigenvalue_rms_change","correlation_rms_change","leading_vector_squared_overlap","leading_vector_comparison","calibrated_regime_change"],"type":"object"},"type":"array"},"error":{"description":"Validation or computation failure message; inspect MCP isError or the HTTP status.","type":"string"},"execution_authority":{"const":false,"description":"No trading authority.","type":"boolean"},"guarantee":{"description":"No statistical or market-performance guarantee is made.","type":"null"},"is_e_value":{"const":false,"description":"No calibrated e-value.","type":"boolean"},"latest":{"anyOf":[{"additionalProperties":false,"allOf":[{"if":{"properties":{"status":{"const":"assessed"}}},"then":{"required":["correlation","eigenvalues","leading_variance_share","participation_ratio","effective_rank","numerical_rank","leading_eigengap","leading_loadings","lag_one_correlations","reference","shrinkage_candidate"]}}],"description":"Window with all metrics absent when a series is constant or numerically unresolved.","properties":{"correlation":{"description":"Rows of a matrix in the declared series order.","items":{"description":"Numeric values in the documented order.","items":{"description":"One finite numeric value.","type":"number"},"type":"array"},"type":"array"},"effective_rank":{"description":"Exponential entropy of normalized positive eigenvalues.","type":"number"},"eigenvalues":{"description":"Numeric values in the documented order.","items":{"description":"One finite numeric value.","type":"number"},"type":"array"},"lag_one_correlations":{"description":"Lag diagnostics in series order.","items":{"additionalProperties":false,"description":"One series lag diagnostic.","properties":{"correlation":{"anyOf":[{"description":"Lag-one correlation, when estimable.","type":"number"},{"type":"null"}],"description":"Lag-one correlation, when estimable. Null means unavailable or not applicable, never zero."},"id":{"description":"Series id.","type":"string"}},"required":["id","correlation"],"type":"object"},"type":"array"},"leading_eigengap":{"description":"First minus second eigenvalue.","type":"number"},"leading_loadings":{"additionalProperties":{"description":"Eigenvector component.","type":"number"},"description":"Leading eigenvector components keyed by caller series ids; sign is normalized, not an economic factor label.","type":"object"},"leading_variance_share":{"description":"Largest eigenvalue divided by trace.","type":"number"},"numerical_rank":{"description":"Eigenvalues above 1e-10.","minimum":0,"type":"integer"},"observations":{"description":"Aligned intervals in this window.","minimum":0,"type":"integer"},"participation_ratio":{"description":"Squared trace divided by sum of squared eigenvalues.","type":"number"},"reasons":{"description":"Ordered statements or identifiers.","items":{"description":"One retained statement or identifier.","type":"string"},"type":"array"},"reference":{"additionalProperties":false,"description":"Idealized reference, not evidence of alpha or certified factors.","properties":{"above_upper_count":{"description":"Eigenvalues above upper edge.","minimum":0,"type":"integer"},"below_lower_count":{"description":"Eigenvalues below lower edge.","minimum":0,"type":"integer"},"finite_sample_calibrated":{"const":false,"description":"Not a finite-sample significance test.","type":"boolean"},"in_band_count":{"description":"Eigenvalues inside the reference band.","minimum":0,"type":"integer"},"is_e_value":{"const":false,"description":"Not an e-value.","type":"boolean"},"lower_edge":{"description":"Asymptotic lower reference edge.","type":"number"},"name":{"const":"marchenko_pastur_iid_unit_variance","description":"Reference model.","type":"string"},"p_value":{"description":"No calibrated p-value.","type":"null"},"q":{"description":"Series count divided by sample degrees of freedom.","type":"number"},"sample_degrees_of_freedom":{"description":"Window observations minus one.","minimum":0,"type":"integer"},"upper_edge":{"description":"Asymptotic upper reference edge.","type":"number"}},"required":["name","q","sample_degrees_of_freedom","lower_edge","upper_edge","above_upper_count","below_lower_count","in_band_count","finite_sample_calibrated","p_value","is_e_value"],"type":"object"},"series_ids":{"description":"Ordered statements or identifiers.","items":{"description":"One retained statement or identifier.","type":"string"},"type":"array"},"shrinkage_candidate":{"additionalProperties":false,"description":"Experimental correlation candidate, not a validated risk model.","properties":{"correlation":{"description":"Rows of a matrix in the declared series order.","items":{"description":"Numeric values in the documented order.","items":{"description":"One finite numeric value.","type":"number"},"type":"array"},"type":"array"},"low_and_high_outliers_preserved_before_diagonal_normalization":{"const":true,"description":"Outliers retained before diagonal normalization.","type":"boolean"},"method":{"const":"equalize_in_band_eigenvalues_then_restore_unit_diagonal","description":"Construction.","type":"string"},"out_of_sample_validated":{"const":false,"description":"No held-out validation.","type":"boolean"},"positive_definite_guaranteed":{"const":false,"description":"Singular candidates remain possible.","type":"boolean"},"status":{"const":"experimental","description":"Candidate maturity.","type":"string"}},"required":["status","correlation","method","low_and_high_outliers_preserved_before_diagonal_normalization","positive_definite_guaranteed","out_of_sample_validated"],"type":"object"},"status":{"description":"Window assessment state.","enum":["assessed","insufficient_visibility"],"type":"string"},"window_end":{"description":"Last interval end in UTC.","type":"string"},"window_start":{"description":"First interval start in UTC.","type":"string"}},"required":["window_start","window_end","observations","series_ids","status","reasons"],"type":"object"},{"type":"null"}],"description":"Window with all metrics absent when a series is constant or numerically unresolved. Null means unavailable or not applicable, never zero."},"limits":{"description":"Ordered statements or identifiers.","items":{"description":"One retained statement or identifier.","type":"string"},"type":"array"},"maturity":{"const":"research","description":"Research maturity.","type":"string"},"policy":{"additionalProperties":false,"description":"Fully applied rolling policy.","properties":{"max_windows":{"description":"Maximum returned windows.","minimum":0,"type":"integer"},"step_points":{"description":"Intervals between window ends.","minimum":0,"type":"integer"},"window_points":{"description":"Aligned intervals per window.","minimum":0,"type":"integer"}},"required":["window_points","step_points","max_windows"],"type":"object"},"policy_sha256":{"description":"SHA-256 of the canonicalized submitted request or applied policy.","pattern":"^[0-9a-f]{64}$","type":"string"},"reasons":{"description":"Ordered statements or identifiers.","items":{"description":"One retained statement or identifier.","type":"string"},"type":"array"},"request_sha256":{"description":"SHA-256 of the canonicalized submitted request or applied policy.","pattern":"^[0-9a-f]{64}$","type":"string"},"schema":{"const":"noisefloor.spectral-assessment.v1","description":"Result contract identifier.","type":"string"},"series":{"description":"All requested series sorted by id.","items":{"additionalProperties":false,"description":"Panel member retained even when its source or history is ineligible.","properties":{"age_seconds":{"anyOf":[{"description":"Cutoff minus last observation timestamp in seconds; may be negative for future data.","type":"number"},{"type":"null"}],"description":"Cutoff minus last observation timestamp in seconds; may be negative for future data. Null means unavailable or not applicable, never zero."},"as_published_history_verified":{"const":false,"description":"Caller timestamps do not verify historical availability.","type":"boolean"},"availability_timestamps_complete":{"description":"Every supplied observation declares availability and the series is nonempty.","type":"boolean"},"available_at":{"anyOf":[{"description":"Last supplied availability timestamp, if present.","type":"string"},{"type":"null"}],"description":"Last supplied availability timestamp, if present. Null means unavailable or not applicable, never zero."},"contiguous_intervals":{"description":"Transformed eligible intervals; zero when source gates fail.","minimum":0,"type":"integer"},"gap_indices":{"description":"Declared-calendar gap positions.","items":{"description":"Zero-based observation index.","minimum":0,"type":"integer"},"type":"array"},"group":{"description":"Declared group, defaulting to series id.","type":"string"},"id":{"description":"Caller-supplied series identifier.","type":"string"},"kind":{"description":"Caller-declared measurement kind.","type":"string"},"measurement_coverage":{"additionalProperties":false,"description":"Caller-declared measurement coverage.","properties":{"declared_points":{"description":"Non-null declared denominators.","minimum":0,"type":"integer"},"maximum":{"anyOf":[{"description":"Maximum declared denominator.","type":"number"},{"type":"null"}],"description":"Maximum declared denominator. Null means unavailable or not applicable, never zero."},"minimum":{"anyOf":[{"description":"Minimum declared denominator.","type":"number"},{"type":"null"}],"description":"Minimum declared denominator. Null means unavailable or not applicable, never zero."},"sampling_adjustment_applied":{"const":false,"description":"No adjustment is made.","type":"boolean"},"status":{"description":"Declared denominator state.","enum":["not_supplied","incomplete","variable","constant_declared_count"],"type":"string"},"tail_points":{"description":"Contiguous tail observations.","minimum":0,"type":"integer"}},"required":["status","declared_points","tail_points","minimum","maximum","sampling_adjustment_applied"],"type":"object"},"missing_points":{"description":"Null-valued observations.","minimum":0,"type":"integer"},"observed_at":{"anyOf":[{"description":"Last supplied observation timestamp; null for no observations.","type":"string"},{"type":"null"}],"description":"Last supplied observation timestamp; null for no observations. Null means unavailable or not applicable, never zero."},"reasons":{"description":"Ordered statements or identifiers.","items":{"description":"One retained statement or identifier.","type":"string"},"type":"array"},"source":{"additionalProperties":false,"properties":{"id":{"description":"Caller-defined source identifier retained in results, for example synthetic-demo or a licensed provider name.","maxLength":128,"minLength":1,"type":"string"},"rights":{"description":"Caller's source-use declaration. Only permitted permits numerical assessment; unknown and restricted remain explicit visibility gaps. The server does not grant or verify rights.","enum":["permitted","unknown","restricted"],"type":"string"},"url":{"description":"Optional source or evidence URL retained for attribution; no URL is fetched or independently verified.","maxLength":2048,"minLength":1,"type":"string"}},"required":["id","rights"],"type":"object"},"transform":{"description":"Transformation applied to the contiguous tail.","enum":["log_return","identity_return","first_difference"],"type":"string"},"unit":{"description":"Caller-declared input unit.","type":"string"},"warnings":{"description":"Ordered statements or identifiers.","items":{"description":"One retained statement or identifier.","type":"string"},"type":"array"}},"required":["id","kind","unit","source","group","reasons","warnings","observed_at","available_at","age_seconds","gap_indices","missing_points","availability_timestamps_complete","as_published_history_verified","transform","measurement_coverage","contiguous_intervals"],"type":"object"},"type":"array"},"status":{"description":"Window/visibility result.","enum":["insufficient_visibility","assessed","partial"],"type":"string"},"validity":{"const":"descriptive","description":"Descriptive assessment, not a probability or statistical certificate.","type":"string"},"windows":{"description":"Complete recent windows in chronological order.","items":{"additionalProperties":false,"allOf":[{"if":{"properties":{"status":{"const":"assessed"}}},"then":{"required":["correlation","eigenvalues","leading_variance_share","participation_ratio","effective_rank","numerical_rank","leading_eigengap","leading_loadings","lag_one_correlations","reference","shrinkage_candidate"]}}],"description":"Window with all metrics absent when a series is constant or numerically unresolved.","properties":{"correlation":{"description":"Rows of a matrix in the declared series order.","items":{"description":"Numeric values in the documented order.","items":{"description":"One finite numeric value.","type":"number"},"type":"array"},"type":"array"},"effective_rank":{"description":"Exponential entropy of normalized positive eigenvalues.","type":"number"},"eigenvalues":{"description":"Numeric values in the documented order.","items":{"description":"One finite numeric value.","type":"number"},"type":"array"},"lag_one_correlations":{"description":"Lag diagnostics in series order.","items":{"additionalProperties":false,"description":"One series lag diagnostic.","properties":{"correlation":{"anyOf":[{"description":"Lag-one correlation, when estimable.","type":"number"},{"type":"null"}],"description":"Lag-one correlation, when estimable. Null means unavailable or not applicable, never zero."},"id":{"description":"Series id.","type":"string"}},"required":["id","correlation"],"type":"object"},"type":"array"},"leading_eigengap":{"description":"First minus second eigenvalue.","type":"number"},"leading_loadings":{"additionalProperties":{"description":"Eigenvector component.","type":"number"},"description":"Leading eigenvector components keyed by caller series ids; sign is normalized, not an economic factor label.","type":"object"},"leading_variance_share":{"description":"Largest eigenvalue divided by trace.","type":"number"},"numerical_rank":{"description":"Eigenvalues above 1e-10.","minimum":0,"type":"integer"},"observations":{"description":"Aligned intervals in this window.","minimum":0,"type":"integer"},"participation_ratio":{"description":"Squared trace divided by sum of squared eigenvalues.","type":"number"},"reasons":{"description":"Ordered statements or identifiers.","items":{"description":"One retained statement or identifier.","type":"string"},"type":"array"},"reference":{"additionalProperties":false,"description":"Idealized reference, not evidence of alpha or certified factors.","properties":{"above_upper_count":{"description":"Eigenvalues above upper edge.","minimum":0,"type":"integer"},"below_lower_count":{"description":"Eigenvalues below lower edge.","minimum":0,"type":"integer"},"finite_sample_calibrated":{"const":false,"description":"Not a finite-sample significance test.","type":"boolean"},"in_band_count":{"description":"Eigenvalues inside the reference band.","minimum":0,"type":"integer"},"is_e_value":{"const":false,"description":"Not an e-value.","type":"boolean"},"lower_edge":{"description":"Asymptotic lower reference edge.","type":"number"},"name":{"const":"marchenko_pastur_iid_unit_variance","description":"Reference model.","type":"string"},"p_value":{"description":"No calibrated p-value.","type":"null"},"q":{"description":"Series count divided by sample degrees of freedom.","type":"number"},"sample_degrees_of_freedom":{"description":"Window observations minus one.","minimum":0,"type":"integer"},"upper_edge":{"description":"Asymptotic upper reference edge.","type":"number"}},"required":["name","q","sample_degrees_of_freedom","lower_edge","upper_edge","above_upper_count","below_lower_count","in_band_count","finite_sample_calibrated","p_value","is_e_value"],"type":"object"},"series_ids":{"description":"Ordered statements or identifiers.","items":{"description":"One retained statement or identifier.","type":"string"},"type":"array"},"shrinkage_candidate":{"additionalProperties":false,"description":"Experimental correlation candidate, not a validated risk model.","properties":{"correlation":{"description":"Rows of a matrix in the declared series order.","items":{"description":"Numeric values in the documented order.","items":{"description":"One finite numeric value.","type":"number"},"type":"array"},"type":"array"},"low_and_high_outliers_preserved_before_diagonal_normalization":{"const":true,"description":"Outliers retained before diagonal normalization.","type":"boolean"},"method":{"const":"equalize_in_band_eigenvalues_then_restore_unit_diagonal","description":"Construction.","type":"string"},"out_of_sample_validated":{"const":false,"description":"No held-out validation.","type":"boolean"},"positive_definite_guaranteed":{"const":false,"description":"Singular candidates remain possible.","type":"boolean"},"status":{"const":"experimental","description":"Candidate maturity.","type":"string"}},"required":["status","correlation","method","low_and_high_outliers_preserved_before_diagonal_normalization","positive_definite_guaranteed","out_of_sample_validated"],"type":"object"},"status":{"description":"Window assessment state.","enum":["assessed","insufficient_visibility"],"type":"string"},"window_end":{"description":"Last interval end in UTC.","type":"string"},"window_start":{"description":"First interval start in UTC.","type":"string"}},"required":["window_start","window_end","observations","series_ids","status","reasons"],"type":"object"},"type":"array"}},"type":"object"}{"additionalProperties":false,"properties":{"alpha":{"default":0.1,"description":"Target expected false-discovery proportion for this supplied family, default 0.10 (10%), strictly between 0 and 1. Only controls selection conditionally when valid_evalues=true; it is not a per-metric probability.","exclusiveMaximum":1,"exclusiveMinimum":0,"type":"number"},"evidence":{"additionalProperties":{"description":"Nonnegative evidence score for this metric; zero is allowed. Magnitude alone does not prove e-value validity.","minimum":0,"type":"number"},"description":"Map 1–128 nonempty metric names (up to 128 characters) to finite nonnegative scores; larger scores rank first, ties use metric name. Valid e-values are dimensionless; unverified scores receive descriptive ranking only.","maxProperties":128,"minProperties":1,"type":"object"},"valid_evalues":{"default":false,"description":"Caller assertion that every score is a valid e-value with defined null, sampling/selection procedure and observation window. Default false performs ranking only. True enables conditional e-BH; it does not validate provenance or the statistical construction.","type":"boolean"}},"required":[" ⟨3 unchanged words⟩
{"anyOf":[{"additionalProperties":truefalse,"properties":{"alpha":{},"assumptions":{},"board_evidence":{},"descriptive_mean":{},"guarantee":{},"k":{},"method":{},"n_watched":{},"note":{},"ranked":{},"reading":{},"selected":{},"threshold":{},"valid_evalues":{},"validity":{}},"required":["selected","alpha","k","n_watched","threshold","board_evidence","descriptive_mean","ranked","valid_evalues","validity","guarantee","assumptions","reading","method","note"],"type":"object"},{"additionalProperties":false,"description":"Existing tool-error payload; no successful result fields are implied.","properties":{"error":{"description":"Validation or computation failure message; inspect MCP isError or the HTTP status.","type":"string"}},"required":["error"],"type":"object"}],"description":"A complete nonempty supplied-family result, including unverified rankings. Empty input is a tool error. Tool errors retain the separate error-message shape.","properties":{"alpha":{"description":"Requested expected false-discovery proportion bound, conditional on valid e-values.","type":"number"},"assumptions":{"description":"Ordered statements or identifiers.","items":{"description":"One retained statement or identifier.","type":"string"},"type":"array"},"board_evidence":{"anyOf":[{"description":"Mean supplied valid e-values; null without attestation.","type":"number"},{"type":"null"}],"description":"Mean supplied valid e-values; null without attestation. Null means unavailable or not applicable, never zero."},"descriptive_mean":{"description":"Mean supplied values, without certifying their statistical construction.","type":"number"},"error":{"description":"Validation or computation failure message; inspect MCP isError or the HTTP status.","type":"string"},"guarantee":{"anyOf":[{"description":"Conditional e-BH statement; null for unverified inputs.","type":"string"},{"type":"null"}],"description":"Conditional e-BH statement; null for unverified inputs. Null means unavailable or not applicable, never zero."},"k":{"description":"Number selected.","minimum":0,"type":"integer"},"method":{"description":"Conditional e-BH or descriptive ranking.","type":"string"},"n_watched":{"description":"Number of supplied metrics.","minimum":0,"type":"integer"},"note":{"description":"Selection requests review, not trading.","type":"string"},"ranked":{"description":"Inputs sorted by decreasing value then name.","items":{"additionalProperties":false,"description":"One ranked input.","properties":{"evidence":{"description":"Supplied nonnegative value.","type":"number"},"metric":{"description":"Caller-supplied name.","type":"string"}},"required":["metric","evidence"],"type":"object"},"type":"array"},"reading":{"description":"Selection interpretation.","type":"string"},"selected":{"description":"Names selected only when the caller attests valid e-values.","items":{"description":"Caller-supplied metric name.","type":"string"},"type":"array"},"threshold":{"anyOf":[{"description":"e-BH threshold; null without the caller's validity attestation.","type":"number"},{"type":"null"}],"description":"e-BH threshold; null without the caller's validity attestation. Null means unavailable or not applicable, never zero."},"valid_evalues":{"description":"Caller attestation, not a server certification.","type":"boolean"},"validity":{"description":"Selection contract.","enum":["conditional_on_valid_evalues","unverified_inputs"],"type":"string"}},"type":"object"}