{"$schema":"https://wellknown.network/schemas/agent-record-v1.json","schemaVersion":"1","id":"ag_7ekd7958b3t9","handle":"sardine-mcp","url":"https://wellknown.network/agents/sardine-mcp","links":{"self":"https://wellknown.network/agents/sardine-mcp/record.json","html":"https://wellknown.network/agents/sardine-mcp","markdown":"https://wellknown.network/agents/sardine-mcp/record.md","api":"https://wellknown.network/api/v1/agents/sardine-mcp","status":"https://wellknown.network/api/v1/agents/sardine-mcp/status","claim":"https://wellknown.network/agents/sardine-mcp/claim","claimApi":"https://wellknown.network/api/v1/claims","claimDescriptor":"https://wellknown.network/agents/sardine-mcp/claim.json","badge":"https://wellknown.network/agents/sardine-mcp/badge.svg","openapi":"https://wellknown.network/openapi.json","history":"https://wellknown.network/api/v1/agents/sardine-mcp/history","tools":"https://wellknown.network/api/v1/agents/sardine-mcp/tools"},"ard":{"identifier":"urn:air:sardine.info:server:sardine-mcp","type":"application/mcp-server-card+json"},"kind":"mcp_server","declared":{"name":"Sardine: Kalshi crypto settlement history","summary":"How often Kalshi BTC/ETH/XRP contracts settled YES, counted not forecast, with a public record","description":"How often Kalshi BTC/ETH/XRP contracts settled YES, counted not forecast, with a public record","publisher":{"name":"info.sardine","url":null},"homepage":"https://sardine.info","repository":null,"version":"0.1.1","license":null,"protocols":["mcp"],"tags":["bitcoin","data","kalshi","mcp","polymarket","prediction-markets"],"pricing":null,"endpoints":[{"url":"https://sardine.info/mcp","type":"mcp_streamable_http","auth":null,"probeable":true},{"url":"pypi:sardine-mcp","type":"package_pypi","auth":null,"probeable":false}],"skills":null,"tools":null,"extra":{"updatedAt":"2026-10-26T18:32:09.097611Z","publishedAt":"2026-10-26T18:32:09.097611Z","registryName":"info.sardine/sardine"},"attribution":{"kind":"mcp_registry","name":"mcp_registry","summary":"mcp_registry","version":"mcp_registry","description":"mcp_registry","homepageUrl":"mcp_registry","publisherName":"mcp_registry"}},"derived":{"capabilities":[{"slug":"finance.markets","name":"Markets & Trading","confidence":1,"provenance":"declared"},{"slug":"documents.contracts","name":"Contracts & Legal","confidence":0.938,"provenance":"derived"},{"slug":"documents.spreadsheets","name":"Spreadsheets","confidence":0.933,"provenance":"derived"}],"categories":["documents","finance"],"language":"en"},"observed":{"status":"recently_observed","statusReason":"Responded 4d ago; 3 recent checks failed (latest 38h ago).","lastOkAt":"2026-11-04T10:23:37.298Z","lastProbedAt":"2026-11-06T10:27:13.349Z","statusComputedAt":"2026-11-06T10:30:33.401Z","reliability30d":{"probes":23,"successRate":0.8696,"p50Ms":113,"basis":"service","measures":{"availability":"availability","latency":"response time","tools":"tool surface observed","summary":"Checks reached the service itself."},"checks":{"total":23,"ok":20,"authBoundaryOk":0,"serviceOk":20,"note":"Counted from the observation rows for the window, checks of the server only (HTTP, A2A card, MCP initialize). ok = authBoundaryOk + serviceOk. `probes` is the sum of daily rollups and includes registry checks, so it can differ from `total`."}},"latestObservations":[{"at":"2026-11-06T10:27:13.349Z","kind":"mcp_initialize","ok":false,"httpStatus":null,"latencyMs":null,"error":"timeout","detail":null},{"at":"2026-11-05T09:27:30.652Z","kind":"mcp_initialize","ok":false,"httpStatus":null,"latencyMs":null,"error":"timeout","detail":null},{"at":"2026-11-04T18:25:22.644Z","kind":"mcp_initialize","ok":false,"httpStatus":null,"latencyMs":null,"error":"timeout","detail":null},{"at":"2026-11-04T10:23:37.298Z","kind":"mcp_initialize","ok":true,"httpStatus":200,"latencyMs":89,"error":null,"detail":{"tools":[{"name":"list_markets","description":"List the Kalshi series Sardine covers, and whether each is currently served.\n\n        Each entry gives the Sardine key (e.g. \"BTC-15M\"), the Kalshi series\n     "},{"name":"get_settlement_rate","description":"How often has a contract like this one settled in favour of `side`?\n\n        Uses the asset's live spot price. Give the contract's strike (target\n        price)"},{"name":"get_live_board","description":"Open Kalshi contracts right now, each with Sardine's historical count. No prices.\n\n        Optionally filter to one market. Each row has the contract, the minut"},{"name":"get_rate_table","description":"The full lookup table behind every Sardine number for one series.\n\n        Each row is a (distance-from-strike, time-left) bucket: distance in\n        volatilit"},{"name":"get_track_record","description":"How accurate Sardine's published numbers have been, scored against settlements.\n\n        For each series and probability bucket: what Sardine said, what actuall"},{"name":"list_datasets","description":"Downloadable CSV history files, with row counts, date ranges and URLs.\n\n        Files open directly in Excel, pandas or any CSV reader. Credit\n        \"Sardine "},{"name":"backtest_rule","description":"Would this rule have made money? Replays recorded Kalshi quotes, second by second.\n\n        Describe a rule for Kalshi's 15-minute crypto up/down contracts: whi"},{"name":"backtest_signals","description":"Replay YOUR OWN signals on recorded per-second Kalshi quotes, after fees.\n\n        `signals` is a list of {\"ts\": <UTC epoch seconds>, \"side\": \"YES\"|\"NO\",\n      "},{"name":"get_z","description":"Where a contract sits in the table's coordinates right now: spot, sigma_1m, z and the bucket.\n\n        For a builder running the table offline against Kalshi's "}],"toolCount":9,"toolsHash":"7f586100563f5cfe0bb67ca1fa4998828e90d583993e4316b912220896fbe03a","serverName":"sardine","capabilities":["prompts","resources","tools"],"serverVersion":"0.2.0","protocolVersion":"2025-06-18"}},{"at":"2026-11-04T01:29:22.227Z","kind":"mcp_initialize","ok":true,"httpStatus":200,"latencyMs":87,"error":null,"detail":{"tools":[{"name":"list_markets","description":"List the Kalshi series Sardine covers, and whether each is currently served.\n\n        Each entry gives the Sardine key (e.g. \"BTC-15M\"), the Kalshi series\n     "},{"name":"get_settlement_rate","description":"How often has a contract like this one settled in favour of `side`?\n\n        Uses the asset's live spot price. Give the contract's strike (target\n        price)"},{"name":"get_live_board","description":"Open Kalshi contracts right now, each with Sardine's historical count. No prices.\n\n        Optionally filter to one market. Each row has the contract, the minut"},{"name":"get_rate_table","description":"The full lookup table behind every Sardine number for one series.\n\n        Each row is a (distance-from-strike, time-left) bucket: distance in\n        volatilit"},{"name":"get_track_record","description":"How accurate Sardine's published numbers have been, scored against settlements.\n\n        For each series and probability bucket: what Sardine said, what actuall"},{"name":"list_datasets","description":"Downloadable CSV history files, with row counts, date ranges and URLs.\n\n        Files open directly in Excel, pandas or any CSV reader. Credit\n        \"Sardine "},{"name":"backtest_rule","description":"Would this rule have made money? Replays recorded Kalshi quotes, second by second.\n\n        Describe a rule for Kalshi's 15-minute crypto up/down contracts: whi"},{"name":"backtest_signals","description":"Replay YOUR OWN signals on recorded per-second Kalshi quotes, after fees.\n\n        `signals` is a list of {\"ts\": <UTC epoch seconds>, \"side\": \"YES\"|\"NO\",\n      "},{"name":"get_z","description":"Where a contract sits in the table's coordinates right now: spot, sigma_1m, z and the bucket.\n\n        For a builder running the table offline against Kalshi's "}],"toolCount":9,"toolsHash":"7f586100563f5cfe0bb67ca1fa4998828e90d583993e4316b912220896fbe03a","serverName":"sardine","capabilities":["prompts","resources","tools"],"serverVersion":"0.2.0","protocolVersion":"2025-06-18"}},{"at":"2026-11-03T16:30:42.674Z","kind":"mcp_initialize","ok":true,"httpStatus":200,"latencyMs":88,"error":null,"detail":{"tools":[{"name":"list_markets","description":"List the Kalshi series Sardine covers, and whether each is currently served.\n\n        Each entry gives the Sardine key (e.g. \"BTC-15M\"), the Kalshi series\n     "},{"name":"get_settlement_rate","description":"How often has a contract like this one settled in favour of `side`?\n\n        Uses the asset's live spot price. Give the contract's strike (target\n        price)"},{"name":"get_live_board","description":"Open Kalshi contracts right now, each with Sardine's historical count. No prices.\n\n        Optionally filter to one market. Each row has the contract, the minut"},{"name":"get_rate_table","description":"The full lookup table behind every Sardine number for one series.\n\n        Each row is a (distance-from-strike, time-left) bucket: distance in\n        volatilit"},{"name":"get_track_record","description":"How accurate Sardine's published numbers have been, scored against settlements.\n\n        For each series and probability bucket: what Sardine said, what actuall"},{"name":"list_datasets","description":"Downloadable CSV history files, with row counts, date ranges and URLs.\n\n        Files open directly in Excel, pandas or any CSV reader. Credit\n        \"Sardine "},{"name":"backtest_rule","description":"Would this rule have made money? Replays recorded Kalshi quotes, second by second.\n\n        Describe a rule for Kalshi's 15-minute crypto up/down contracts: whi"},{"name":"backtest_signals","description":"Replay YOUR OWN signals on recorded per-second Kalshi quotes, after fees.\n\n        `signals` is a list of {\"ts\": <UTC epoch seconds>, \"side\": \"YES\"|\"NO\",\n      "},{"name":"get_z","description":"Where a contract sits in the table's coordinates right now: spot, sigma_1m, z and the bucket.\n\n        For a builder running the table offline against Kalshi's "}],"toolCount":9,"toolsHash":"7f586100563f5cfe0bb67ca1fa4998828e90d583993e4316b912220896fbe03a","serverName":"sardine","capabilities":["prompts","resources","tools"],"serverVersion":"0.2.0","protocolVersion":"2025-06-18"}},{"at":"2026-11-03T08:31:19.204Z","kind":"mcp_initialize","ok":true,"httpStatus":200,"latencyMs":88,"error":null,"detail":{"tools":[{"name":"list_markets","description":"List the Kalshi series Sardine covers, and whether each is currently served.\n\n        Each entry gives the Sardine key (e.g. \"BTC-15M\"), the Kalshi series\n     "},{"name":"get_settlement_rate","description":"How often has a contract like this one settled in favour of `side`?\n\n        Uses the asset's live spot price. Give the contract's strike (target\n        price)"},{"name":"get_live_board","description":"Open Kalshi contracts right now, each with Sardine's historical count. No prices.\n\n        Optionally filter to one market. Each row has the contract, the minut"},{"name":"get_rate_table","description":"The full lookup table behind every Sardine number for one series.\n\n        Each row is a (distance-from-strike, time-left) bucket: distance in\n        volatilit"},{"name":"get_track_record","description":"How accurate Sardine's published numbers have been, scored against settlements.\n\n        For each series and probability bucket: what Sardine said, what actuall"},{"name":"list_datasets","description":"Downloadable CSV history files, with row counts, date ranges and URLs.\n\n        Files open directly in Excel, pandas or any CSV reader. Credit\n        \"Sardine "},{"name":"backtest_rule","description":"Would this rule have made money? Replays recorded Kalshi quotes, second by second.\n\n        Describe a rule for Kalshi's 15-minute crypto up/down contracts: whi"},{"name":"backtest_signals","description":"Replay YOUR OWN signals on recorded per-second Kalshi quotes, after fees.\n\n        `signals` is a list of {\"ts\": <UTC epoch seconds>, \"side\": \"YES\"|\"NO\",\n      "},{"name":"get_z","description":"Where a contract sits in the table's coordinates right now: spot, sigma_1m, z and the bucket.\n\n        For a builder running the table offline against Kalshi's "}],"toolCount":9,"toolsHash":"7f586100563f5cfe0bb67ca1fa4998828e90d583993e4316b912220896fbe03a","serverName":"sardine","capabilities":["prompts","resources","tools"],"serverVersion":"0.2.0","protocolVersion":"2025-06-18"}},{"at":"2026-11-03T00:30:10.456Z","kind":"mcp_initialize","ok":true,"httpStatus":200,"latencyMs":113,"error":null,"detail":{"tools":[{"name":"list_markets","description":"List the Kalshi series Sardine covers, and whether each is currently served.\n\n        Each entry gives the Sardine key (e.g. \"BTC-15M\"), the Kalshi series\n     "},{"name":"get_settlement_rate","description":"How often has a contract like this one settled in favour of `side`?\n\n        Uses the asset's live spot price. Give the contract's strike (target\n        price)"},{"name":"get_live_board","description":"Open Kalshi contracts right now, each with Sardine's historical count. No prices.\n\n        Optionally filter to one market. Each row has the contract, the minut"},{"name":"get_rate_table","description":"The full lookup table behind every Sardine number for one series.\n\n        Each row is a (distance-from-strike, time-left) bucket: distance in\n        volatilit"},{"name":"get_track_record","description":"How accurate Sardine's published numbers have been, scored against settlements.\n\n        For each series and probability bucket: what Sardine said, what actuall"},{"name":"list_datasets","description":"Downloadable CSV history files, with row counts, date ranges and URLs.\n\n        Files open directly in Excel, pandas or any CSV reader. Credit\n        \"Sardine "},{"name":"backtest_rule","description":"Would this rule have made money? Replays recorded Kalshi quotes, second by second.\n\n        Describe a rule for Kalshi's 15-minute crypto up/down contracts: whi"},{"name":"backtest_signals","description":"Replay YOUR OWN signals on recorded per-second Kalshi quotes, after fees.\n\n        `signals` is a list of {\"ts\": <UTC epoch seconds>, \"side\": \"YES\"|\"NO\",\n      "},{"name":"get_z","description":"Where a contract sits in the table's coordinates right now: spot, sigma_1m, z and the bucket.\n\n        For a builder running the table offline against Kalshi's "}],"toolCount":9,"toolsHash":"7f586100563f5cfe0bb67ca1fa4998828e90d583993e4316b912220896fbe03a","serverName":"sardine","capabilities":["prompts","resources","tools"],"serverVersion":"0.2.0","protocolVersion":"2025-06-18"}},{"at":"2026-11-02T16:29:00.932Z","kind":"mcp_initialize","ok":true,"httpStatus":200,"latencyMs":103,"error":null,"detail":{"tools":[{"name":"list_markets","description":"List the Kalshi series Sardine covers, and whether each is currently served.\n\n        Each entry gives the Sardine key (e.g. \"BTC-15M\"), the Kalshi series\n     "},{"name":"get_settlement_rate","description":"How often has a contract like this one settled in favour of `side`?\n\n        Uses the asset's live spot price. Give the contract's strike (target\n        price)"},{"name":"get_live_board","description":"Open Kalshi contracts right now, each with Sardine's historical count. No prices.\n\n        Optionally filter to one market. Each row has the contract, the minut"},{"name":"get_rate_table","description":"The full lookup table behind every Sardine number for one series.\n\n        Each row is a (distance-from-strike, time-left) bucket: distance in\n        volatilit"},{"name":"get_track_record","description":"How accurate Sardine's published numbers have been, scored against settlements.\n\n        For each series and probability bucket: what Sardine said, what actuall"},{"name":"list_datasets","description":"Downloadable CSV history files, with row counts, date ranges and URLs.\n\n        Files open directly in Excel, pandas or any CSV reader. Credit\n        \"Sardine "},{"name":"backtest_rule","description":"Would this rule have made money? Replays recorded Kalshi quotes, second by second.\n\n        Describe a rule for Kalshi's 15-minute crypto up/down contracts: whi"},{"name":"backtest_signals","description":"Replay YOUR OWN signals on recorded per-second Kalshi quotes, after fees.\n\n        `signals` is a list of {\"ts\": <UTC epoch seconds>, \"side\": \"YES\"|\"NO\",\n      "},{"name":"get_z","description":"Where a contract sits in the table's coordinates right now: spot, sigma_1m, z and the bucket.\n\n        For a builder running the table offline against Kalshi's "}],"toolCount":9,"toolsHash":"7f586100563f5cfe0bb67ca1fa4998828e90d583993e4316b912220896fbe03a","serverName":"sardine","capabilities":["prompts","resources","tools"],"serverVersion":"0.2.0","protocolVersion":"2025-06-18"}},{"at":"2026-11-02T08:26:19.206Z","kind":"mcp_initialize","ok":true,"httpStatus":200,"latencyMs":88,"error":null,"detail":{"tools":[{"name":"list_markets","description":"List the Kalshi series Sardine covers, and whether each is currently served.\n\n        Each entry gives the Sardine key (e.g. \"BTC-15M\"), the Kalshi series\n     "},{"name":"get_settlement_rate","description":"How often has a contract like this one settled in favour of `side`?\n\n        Uses the asset's live spot price. Give the contract's strike (target\n        price)"},{"name":"get_live_board","description":"Open Kalshi contracts right now, each with Sardine's historical count. No prices.\n\n        Optionally filter to one market. Each row has the contract, the minut"},{"name":"get_rate_table","description":"The full lookup table behind every Sardine number for one series.\n\n        Each row is a (distance-from-strike, time-left) bucket: distance in\n        volatilit"},{"name":"get_track_record","description":"How accurate Sardine's published numbers have been, scored against settlements.\n\n        For each series and probability bucket: what Sardine said, what actuall"},{"name":"list_datasets","description":"Downloadable CSV history files, with row counts, date ranges and URLs.\n\n        Files open directly in Excel, pandas or any CSV reader. Credit\n        \"Sardine "},{"name":"backtest_rule","description":"Would this rule have made money? Replays recorded Kalshi quotes, second by second.\n\n        Describe a rule for Kalshi's 15-minute crypto up/down contracts: whi"},{"name":"backtest_signals","description":"Replay YOUR OWN signals on recorded per-second Kalshi quotes, after fees.\n\n        `signals` is a list of {\"ts\": <UTC epoch seconds>, \"side\": \"YES\"|\"NO\",\n      "},{"name":"get_z","description":"Where a contract sits in the table's coordinates right now: spot, sigma_1m, z and the bucket.\n\n        For a builder running the table offline against Kalshi's "}],"toolCount":9,"toolsHash":"7f586100563f5cfe0bb67ca1fa4998828e90d583993e4316b912220896fbe03a","serverName":"sardine","capabilities":["prompts","resources","tools"],"serverVersion":"0.2.0","protocolVersion":"2025-06-18"}}],"tools":[{"name":"list_markets","description":"List the Kalshi series Sardine covers, and whether each is currently served.\n\n        Each entry gives the Sardine key (e.g. \"BTC-15M\"), the Kalshi series\n     "},{"name":"get_settlement_rate","description":"How often has a contract like this one settled in favour of `side`?\n\n        Uses the asset's live spot price. Give the contract's strike (target\n        price)"},{"name":"get_live_board","description":"Open Kalshi contracts right now, each with Sardine's historical count. No prices.\n\n        Optionally filter to one market. Each row has the contract, the minut"},{"name":"get_rate_table","description":"The full lookup table behind every Sardine number for one series.\n\n        Each row is a (distance-from-strike, time-left) bucket: distance in\n        volatilit"},{"name":"get_track_record","description":"How accurate Sardine's published numbers have been, scored against settlements.\n\n        For each series and probability bucket: what Sardine said, what actuall"},{"name":"list_datasets","description":"Downloadable CSV history files, with row counts, date ranges and URLs.\n\n        Files open directly in Excel, pandas or any CSV reader. Credit\n        \"Sardine "},{"name":"backtest_rule","description":"Would this rule have made money? Replays recorded Kalshi quotes, second by second.\n\n        Describe a rule for Kalshi's 15-minute crypto up/down contracts: whi"},{"name":"backtest_signals","description":"Replay YOUR OWN signals on recorded per-second Kalshi quotes, after fees.\n\n        `signals` is a list of {\"ts\": <UTC epoch seconds>, \"side\": \"YES\"|\"NO\",\n      "},{"name":"get_z","description":"Where a contract sits in the table's coordinates right now: spot, sigma_1m, z and the bucket.\n\n        For a builder running the table offline against Kalshi's "}],"package":{"name":"sardine-mcp","registry":"pypi","observedAt":"2026-11-07T05:22:30.133Z","publishedAt":"2026-10-26T18:21:41.030560Z","latestVersion":"0.1.1"},"toolSurface":{"id":"ts_aj76qps4u4p2","endpointId":"ep_5y9jj955gzyj","hash":"7f586100563f5cfe0bb67ca1fa4998828e90d583993e4316b912220896fbe03a","toolCount":9,"serverName":"sardine","serverVersion":"0.2.0","protocolVersion":"2025-06-18","firstSeenAt":"2026-10-29T04:27:34.974Z","lastSeenAt":"2026-11-04T10:23:37.317Z","observations":20,"hiddenText":{"level":"none","total":0,"tools":0,"kinds":[],"findings":[]},"toolNames":["list_markets","get_settlement_rate","get_live_board","get_rate_table","get_track_record","list_datasets","backtest_rule","backtest_signals","get_z"],"distinctSurfaces":1,"surfacesWithHiddenText":0},"endpointFacts":[{"id":"ep_5y9jj955gzyj","url":"https://sardine.info/mcp","type":"mcp_streamable_http","factsCheckedAt":"2026-11-04T10:23:37.340Z","auth":{"observedAt":"2026-11-04T10:23:37.427Z","authRequired":false,"scheme":null,"resourceMetadata":null,"authorizationServer":null,"conformance":{"dpop":false,"rfc8414":false,"rfc9728":false,"pkceS256":false,"clientIdMetadataDocument":false,"dynamicClientRegistration":false}},"tls":{"observedAt":"2026-11-04T10:23:37.594Z","protocol":"TLSv1.3","chainValid":true,"chainError":null,"hostMatches":true,"subject":"sardine.info","issuer":{"commonName":"YE2","organization":"Let's Encrypt"},"validFrom":"2026-09-16T22:49:56.000Z","validTo":"2026-12-15T22:49:55.000Z","daysToExpiry":37,"sanCount":2,"fingerprint256":"72:60:63:66:01:83:F7:38:08:D6:80:CB:8C:2E:48:9E:12:90:E7:AC:85:49:F1:9C:5C:22:3A:75:E3:AB:02:45"}}]},"verification":{"claimed":false,"claimedAt":null,"proofs":[]},"provenance":{"sources":[{"source":"mcp_registry","key":"info.sardine/sardine","url":"https://registry.modelcontextprotocol.io/v0/servers/info.sardine%2Fsardine","firstSeenAt":"2026-10-29T03:19:35.037Z","fetchedAt":"2026-11-05T13:18:23.080Z","normalizedAt":"2026-11-05T13:18:23.080Z"},{"source":"pypi","key":"sardine-mcp","url":"https://pypi.org/project/sardine-mcp/","firstSeenAt":"2026-10-28T21:26:06.777Z","fetchedAt":"2026-11-07T05:21:04.615Z","normalizedAt":"2026-11-07T05:21:04.615Z"}]},"firstSeenAt":"2026-10-28T21:26:06.777Z","updatedAt":"2026-11-07T05:22:30.133Z"}