Endpoints: 28,729MCP servers: 18,413Payout addresses: 2,070Paid calls: 1,528Letters: 13Defects: 1,322counted 3 min ago
teppi

Server definition

Hash
sha256:2afd0ae01209bbd8c15cacdaff2ca67cbbebe0b590596fb5357e5f7758f57fdc
What it is
What a remote MCP server returned when asked what it offers: 4 tools

The blob, as servednamed by its sha256

{ "instructions": "Historical dollar-cost-averaging simulator for Bitcoin and other assets. Every result carries a share_url that opens the same run in the web app, pinned to the data vintage it was computed against. Call list_assets first to see coverage windows. Results are historical arithmetic, not advice.", "tools": [ { "description": "Run up to 5 plans over the same data and rank them by final value (2 without a signed-in Pro account or a Pro API key). Use to compare assets, cadences or start dates side by side. One share_url opens them all together.", "inputSchema": { "$schema": "https://json-schema.org/draft/2020-12/schema", "additionalProperties": false, "properties": { "as_of": { "pattern": "^\\d{4}-\\d{2}-\\d{2}$", "type": "string" }, "include": { "additionalProperties": false, "properties": { "checkpoints": { "description": "End-of-year value points. Default \"yearly\".", "enum": [ "yearly", "none" ], "type": "string" }, "ledger": { "description": "Per-purchase rows: \"none\" (default), \"head\" (first 20), \"all\" (capped at 200).", "enum": [ "none", "head", "all" ], "type": "string" } }, "type": "object" }, "plans": { "description": "The plans to compare: up to 2 anonymously or on a Free-account key, up to 5 with a signed-in Pro account or a Pro API key.", "items": { "additionalProperties": false, "properties": { "amount": { "description": "USD per contribution, or the single amount for lump-sum.", "exclusiveMinimum": 0, "type": "number" }, "asset": { "description": "Asset key from list_assets, e.g. \"btc_daily\", \"Ethereum\", \"S&P 500\".", "type": "string" }, "end_date": { "description": "Window end. Defaults to the last loaded close, never a relative \"today\".", "pattern": "^\\d{4}-\\d{2}-\\d{2}$", "type": "string" }, "frequency": { "description": "Contribution cadence. Default \"monthly\". Quarterly is the coarsest offered: wider gaps behave like a few lump sums (see the knowledge base, \"The gap between buys\").", "enum": [ "daily", "weekly", "monthly", "quarterly" ], "type": "string" }, "last_buy_date": { "description": "Stop buying here and hold to end_date.", "pattern": "^\\d{4}-\\d{2}-\\d{2}$", "type": "string" }, "start_date": { "description": "First scheduled contribution.", "pattern": "^\\d{4}-\\d{2}-\\d{2}$", "type": "string" }, "type": { "description": "\"dca\" repeats on the schedule; \"lump-sum\" buys once at the start. Default \"dca\".", "enum": [ "dca", "lump-sum" ], "type": "string" }, "wait_periods": { "description": "Save this many scheduled contributions as cash before the first purchase.", "maximum": 9007199254740991, "minimum": 0, "type": "integer" } }, "required": [ "asset", "amount", "start_date" ], "type": "object" }, "maxItems": 5, "minItems": 1, "type": "array" }, "settings": { "additionalProperties": false, "description": "Chart overlays carried into share_url, and the figures they add to each summary. Flags marked \"Pro only\" need a signed-in Pro account or a Pro API key; without one, the call returns an error naming the setting.", "properties": { "cpi": { "description": "Pro only. Inflation arm: what the contributed cash is worth after CPI-U. Adds cash_after_cpi to the summary and the overlay to share_url.", "type": "boolean" }, "fng": { "description": "Draw the Fear & Greed overlay on the shared chart.", "type": "boolean" }, "log": { "description": "Log scale on the shared chart.", "type": "boolean" }, "lump": { "description": "Pro only. Lump-sum benchmark: the same total bought at once on day one. Adds lump_sum_equivalent_final_value to the summary and the overlay to share_url.", "type": "boolean" }, "mayer": { "description": "Pro only. Mayer Multiple overlay on the shared chart.", "type": "boolean" }, "risk": { "description": "Pro only. Adds annualized sharpe and sortino to the summary.", "type": "boolean" }, "smart": { "anyOf": [ { "type": "boolean" }, { "additionalProperties": false, "properties": { "above": { "description": "Multiplier when the reading is over high, same list. Defaults: mayer 0 and fng 0 (skip the euphoric top), dd 2 (double in a deep drawdown).", "type": "number" }, "bank": { "description": "Hold and deploy: the cash a band below 1× withholds is kept and spent on the next purchase the rule does not scale down, and counts as invested from the day it was scheduled. With no band above 1× the rule then invests the same total as flat purchases, so final value is comparable too. Any pile still standing at the end is reported as cash_held. Default false.", "type": "boolean" }, "below": { "description": "Multiplier on the scheduled amount when the reading is under low: one of 0, 0.25, 0.5, 1, 2, 3, 4, 6. 0 skips the purchase (that money is not invested).", "type": "number" }, "between": { "description": "Multiplier when the reading is between the thresholds, same list. Default 1.", "type": "number" }, "high": { "description": "Upper threshold, from the same list and above low. Defaults mayer 2.4, fng 75, dd 50.", "type": "number" }, "low": { "description": "Lower threshold, from the signal's own list — mayer 0.5/0.6/0.7/0.8/0.9/1/1.2/1.5/2/2.4/3; fng 10/20/25/30/40/45/55/60/70/75/80/90; dd 10/20/30/40/50/60/70/80. Defaults mayer 0.8, fng 25, dd 20.", "type": "number" }, "signal": { "description": "Which reading decides each purchase. mayer (default): price vs its 200-day average, Bitcoin, Ethereum, Solana and XRP. fng: the alternative.me Fear & Greed index (0-100), the same four assets. dd: percent below the running high close, any market asset (not bonds or index levels).", "enum": [ "mayer", "fng", "dd" ], "type": "string" } }, "type": "object" } ], "description": "Pro only. Buy rule: a signal read on each purchase date, two thresholds, and a multiplier for each of the three bands they make. `true` is the Mayer default (0.8/2.4 — buy as usual, skip above 2.4); an object sets its own. Adds `rule` and `rule_finding` (cost per unit against flat purchases from fixed starts) to the summary and the rule to share_url." } }, "type": "object" } }, "required": [ "plans" ], "type": "object" }, "name": "compare_plans", "outputSchema": null }, { "description": "The vintage of the loaded price data and how often it refreshes.", "inputSchema": { "$schema": "https://json-schema.org/draft/2020-12/schema", "properties": {}, "type": "object" }, "name": "data_status", "outputSchema": null }, { "description": "Assets this endpoint can simulate, with the date each series starts and ends. Call before composing a plan so start dates fall inside coverage.", "inputSchema": { "$schema": "https://json-schema.org/draft/2020-12/schema", "properties": {}, "type": "object" }, "name": "list_assets", "outputSchema": null }, { "description": "Simulate one dollar-cost-averaging plan against real historical closes. Returns totals, end-of-year checkpoints and a share_url that opens the same run in the app.", "inputSchema": { "$schema": "https://json-schema.org/draft/2020-12/schema", "additionalProperties": false, "properties": { "amount": { "description": "USD per contribution, or the single amount for lump-sum.", "exclusiveMinimum": 0, "type": "number" }, "as_of": { "description": "Pin the answer to this data vintage so the share link keeps returning the same number.", "pattern": "^\\d{4}-\\d{2}-\\d{2}$", "type": "string" }, "asset": { "description": "Asset key from list_assets, e.g. \"btc_daily\", \"Ethereum\", \"S&P 500\".", "type": "string" }, "end_date": { "description": "Window end. Defaults to the last loaded close, never a relative \"today\".", "pattern": "^\\d{4}-\\d{2}-\\d{2}$", "type": "string" }, "frequency": { "description": "Contribution cadence. Default \"monthly\". Quarterly is the coarsest offered: wider gaps behave like a few lump sums (see the knowledge base, \"The gap between buys\").", "enum": [ "daily", "weekly", "monthly", "quarterly" ], "type": "string" }, "include": { "additionalProperties": false, "properties": { "checkpoints": { "description": "End-of-year value points. Default \"yearly\".", "enum": [ "yearly", "none" ], "type": "string" }, "ledger": { "description": "Per-purchase rows: \"none\" (default), \"head\" (first 20), \"all\" (capped at 200).", "enum": [ "none", "head", "all" ], "type": "string" } }, "type": "object" }, "last_buy_date": { "description": "Stop buying here and hold to end_date.", "pattern": "^\\d{4}-\\d{2}-\\d{2}$", "type": "string" }, "settings": { "additionalProperties": false, "description": "Chart overlays carried into share_url, and the figures they add to each summary. Flags marked \"Pro only\" need a signed-in Pro account or a Pro API key; without one, the call returns an error naming the setting.", "properties": { "cpi": { "description": "Pro only. Inflation arm: what the contributed cash is worth after CPI-U. Adds cash_after_cpi to the summary and the overlay to share_url.", "type": "boolean" }, "fng": { "description": "Draw the Fear & Greed overlay on the shared chart.", "type": "boolean" }, "log": { "description": "Log scale on the shared chart.", "type": "boolean" }, "lump": { "description": "Pro only. Lump-sum benchmark: the same total bought at once on day one. Adds lump_sum_equivalent_final_value to the summary and the overlay to share_url.", "type": "boolean" }, "mayer": { "description": "Pro only. Mayer Multiple overlay on the shared chart.", "type": "boolean" }, "risk": { "description": "Pro only. Adds annualized sharpe and sortino to the summary.", "type": "boolean" }, "smart": { "anyOf": [ { "type": "boolean" }, { "additionalProperties": false, "properties": { "above": { "description": "Multiplier when the reading is over high, same list. Defaults: mayer 0 and fng 0 (skip the euphoric top), dd 2 (double in a deep drawdown).", "type": "number" }, "bank": { "description": "Hold and deploy: the cash a band below 1× withholds is kept and spent on the next purchase the rule does not scale down, and counts as invested from the day it was scheduled. With no band above 1× the rule then invests the same total as flat purchases, so final value is comparable too. Any pile still standing at the end is reported as cash_held. Default false.", "type": "boolean" }, "below": { "description": "Multiplier on the scheduled amount when the reading is under low: one of 0, 0.25, 0.5, 1, 2, 3, 4, 6. 0 skips the purchase (that money is not invested).", "type": "number" }, "between": { "description": "Multiplier when the reading is between the thresholds, same list. Default 1.", "type": "number" }, "high": { "description": "Upper threshold, from the same list and above low. Defaults mayer 2.4, fng 75, dd 50.", "type": "number" }, "low": { "description": "Lower threshold, from the signal's own list — mayer 0.5/0.6/0.7/0.8/0.9/1/1.2/1.5/2/2.4/3; fng 10/20/25/30/40/45/55/60/70/75/80/90; dd 10/20/30/40/50/60/70/80. Defaults mayer 0.8, fng 25, dd 20.", "type": "number" }, "signal": { "description": "Which reading decides each purchase. mayer (default): price vs its 200-day average, Bitcoin, Ethereum, Solana and XRP. fng: the alternative.me Fear & Greed index (0-100), the same four assets. dd: percent below the running high close, any market asset (not bonds or index levels).", "enum": [ "mayer", "fng", "dd" ], "type": "string" } }, "type": "object" } ], "description": "Pro only. Buy rule: a signal read on each purchase date, two thresholds, and a multiplier for each of the three bands they make. `true` is the Mayer default (0.8/2.4 — buy as usual, skip above 2.4); an object sets its own. Adds `rule` and `rule_finding` (cost per unit against flat purchases from fixed starts) to the summary and the rule to share_url." } }, "type": "object" }, "start_date": { "description": "First scheduled contribution.", "pattern": "^\\d{4}-\\d{2}-\\d{2}$", "type": "string" }, "type": { "description": "\"dca\" repeats on the schedule; \"lump-sum\" buys once at the start. Default \"dca\".", "enum": [ "dca", "lump-sum" ], "type": "string" }, "wait_periods": { "description": "Save this many scheduled contributions as cash before the first purchase.", "maximum": 9007199254740991, "minimum": 0, "type": "integer" } }, "required": [ "asset", "amount", "start_date" ], "type": "object" }, "name": "run_dca", "outputSchema": null } ] }
Verify it yourselfcurl -s https://api.teppi.xyz/v1/evidence/sha256:2afd0ae01209bbd8c15cacdaff2ca67cbbebe0b590596fb5357e5f7758f57fdc | sha256sum