parse_datetime
Convert any freeform datetime string into ISO 8601, unix epoch, and human-readable relative time, with confidence scoring.
Instructions
Parse any freeform datetime string ('tomorrow at noon', 'yesterday', '2026-05-13T15:30Z', 'in 2 hours') into a fully structured normalized form: ISO 8601, unix epoch, components (year/month/day/hour/min/sec/weekday), relative seconds + human form, confidence score. Saves agent LLM tokens on date parsing. $0.001 USDC.
Input Schema
| Name | Required | Description | Default |
|---|---|---|---|
| input | Yes | Freeform datetime string. | |
| base_time | No | Optional ISO 8601 reference; defaults to now UTC. | |
| timezone | No | Optional IANA tz name (e.g. 'America/New_York'); defaults to UTC. |
Implementation Reference
- index.js:174-187 (schema)Tool definition and input schema for 'parse_datetime', including description and input properties (input, base_time, timezone).
{ name: "parse_datetime", description: "Parse any freeform datetime string ('tomorrow at noon', 'yesterday', '2026-05-13T15:30Z', 'in 2 hours') into a fully structured normalized form: ISO 8601, unix epoch, components (year/month/day/hour/min/sec/weekday), relative seconds + human form, confidence score. Saves agent LLM tokens on date parsing. $0.001 USDC.", inputSchema: { type: "object", properties: { input: { type: "string", description: "Freeform datetime string." }, base_time: { type: "string", description: "Optional ISO 8601 reference; defaults to now UTC." }, timezone: { type: "string", description: "Optional IANA tz name (e.g. 'America/New_York'); defaults to UTC." }, }, required: ["input"], }, }, - index.js:68-200 (registration)Registration of the parse_datetime tool in the TOOLS array (line 174-187), which is listed via ListToolsRequestSchema handler.
const TOOLS = [ { name: "anchor_hash", description: "Anchor a 32-byte hash to BOTH Base mainnet (as EIP-1559 calldata) and Solana mainnet (via the Memo program) in a single call. Returns both transaction hashes plus block-explorer URLs as cryptographic proof of when the hash existed. Pure infrastructure — no opinions about content. Use for DAO vote receipts, AI decision attestations, contract notarization, scientific data integrity, audit trails. $0.005 USDC.", inputSchema: { type: "object", properties: { hash: { type: "string", description: "Pre-computed 32-byte hex hash (64 chars, no 0x prefix). Mutually exclusive with `data`.", }, data: { description: "Arbitrary JSON to be canonicalized + SHA-256'd by the server. Mutually exclusive with `hash`.", }, note: { type: "string", description: "Optional 200-char note included in the response (NOT on-chain).", }, }, }, }, { name: "screen_wallet", description: "Sanctions + AML screening for any EVM or Solana wallet address. Returns sanctions match (boolean), specific OFAC SDN programs flagged (Tornado Cash, Lazarus Group, Hydra Market, Garantex, Blender.io etc.), inferred chain, and a low/medium/high risk verdict. Use for AML pre-flight checks before any treasury transfer, KYC onboarding, vendor diligence, payroll wallet verification, marketplace counterparty checks. $0.001 USDC.", inputSchema: { type: "object", properties: { wallet: { type: "string", description: "EVM 0x… address (40 hex) or Solana base58 pubkey.", }, }, required: ["wallet"], }, }, { name: "attest_decision", description: "Verify a wallet signature over (input_hash, output_hash, decision) with domain separation, then dual-chain anchor the resulting Merkle root on Base and Solana mainnet. Returns the verified signer plus on-chain proof URLs. Use when an AI agent's decision needs a cryptographic, auditable receipt — autonomous trade approvals, AI-assisted contract decisions, model-output attestation for liability records. $0.010 USDC.", inputSchema: { type: "object", properties: { input_hash: { type: "string", description: "64-char hex SHA-256 of the agent's input." }, output_hash: { type: "string", description: "64-char hex SHA-256 of the agent's output / decision payload." }, decision: { type: "string", description: 'Free-form short label, e.g. "APPROVED", "REJECTED", "CONFIDENCE=0.93" (max 64 chars).' }, scheme: { type: "string", enum: ["eip191", "ed25519"], description: "Signature scheme." }, signature: { type: "string", description: "0x-prefixed hex (eip191) or base58 (ed25519)." }, signer_pubkey: { type: "string", description: "Required for ed25519 (Solana base58 pubkey)." }, }, required: ["input_hash", "output_hash", "decision", "scheme", "signature"], }, }, { name: "decode_tx", description: "Structured decode of any mainnet transaction by hash. Supply chain ('base' | 'ethereum' | 'solana') and tx_hash. Returns from/to/value/gas/status/calldata for EVM, or slot/fee/signers/program_calls for Solana. Mined txs cached in-process. Use for tx inspection, audit, agent UX (rendering tx summaries to users). $0.001 USDC.", inputSchema: { type: "object", properties: { chain: { type: "string", enum: ["base", "ethereum", "solana"] }, tx_hash: { type: "string", description: "EVM 0x+64hex or Solana base58 signature." }, }, required: ["chain", "tx_hash"], }, }, { name: "resolve_name", description: "Cross-chain name resolution. Pass a name like 'vitalik.eth' or 'bonfida.sol' and get back the resolved address(es) across supported registries. Currently supports ENS (.eth) and Bonfida SNS (.sol). Cached 1h server-side. $0.001 USDC.", inputSchema: { type: "object", properties: { name: { type: "string", description: "Human-readable name, e.g. 'vitalik.eth' or 'bonfida.sol'." }, }, required: ["name"], }, }, { name: "token_price", description: "USD spot price for any major token. Pass either `symbol` (BTC, ETH, SOL, USDC, etc.) OR (chain + contract). Returns USD price, 24h change percent, market cap, fetched-at timestamp. CoinGecko-backed, cached 60s. $0.001 USDC.", inputSchema: { type: "object", properties: { symbol: { type: "string", description: "Token symbol like 'ETH'. Mutually exclusive with chain+contract." }, chain: { type: "string", description: "Chain slug: base, ethereum, solana, polygon, arbitrum, optimism, bsc, avalanche." }, contract: { type: "string", description: "Token contract address. Required with chain." }, }, }, }, { name: "decode_calldata", description: "Decode raw EVM calldata into a human-readable function name, canonical signature, and typed parameter values. Resolves the 4-byte selector against openchain.xyz's signature directory, then ABI-decodes the args. Use for tx inspection before signing, mempool analysis, debug. EVM-only (chain='ethereum'); 'solana' returns 400. $0.001 USDC.", inputSchema: { type: "object", properties: { chain: { type: "string", enum: ["ethereum", "solana"], description: "EVM-only; 'solana' returns 400." }, calldata_hex: { type: "string", description: "Raw EVM calldata (>=4 byte selector), with or without 0x prefix." }, contract_address: { type: "string", description: "Optional. Reserved for future on-chain ABI lookups." }, }, required: ["chain", "calldata_hex"], }, }, { name: "parse_datetime", description: "Parse any freeform datetime string ('tomorrow at noon', 'yesterday', '2026-05-13T15:30Z', 'in 2 hours') into a fully structured normalized form: ISO 8601, unix epoch, components (year/month/day/hour/min/sec/weekday), relative seconds + human form, confidence score. Saves agent LLM tokens on date parsing. $0.001 USDC.", inputSchema: { type: "object", properties: { input: { type: "string", description: "Freeform datetime string." }, base_time: { type: "string", description: "Optional ISO 8601 reference; defaults to now UTC." }, timezone: { type: "string", description: "Optional IANA tz name (e.g. 'America/New_York'); defaults to UTC." }, }, required: ["input"], }, }, { name: "intel_wallet", description: "Unified wallet intelligence bundle. ONE call returns balances on Base + Ethereum + Solana, USDC across chains, transaction count, ENS/SNS reverse lookup, and sanctions verdict — all aggregated from 8–10 parallel free public sources. Replaces a wallet-investigation script with a single $0.005 call. Use for KYB pre-flight, counterparty research, fraud detection. $0.005 USDC.", inputSchema: { type: "object", properties: { wallet: { type: "string", description: "EVM 0x… address (40 hex) or Solana base58 pubkey." }, }, required: ["wallet"], }, }, ]; - index.js:279-291 (handler)Handler for 'parse_datetime' in the buildRequest switch-case: builds a POST request to BASE_URL/v1/parse/datetime with the input, optional base_time, and timezone parameters. The actual parsing logic is delegated to the remote API endpoint.
case "parse_datetime": return { url: `${BASE_URL}/v1/parse/datetime`, opts: { method: "POST", headers: { "Content-Type": "application/json" }, body: JSON.stringify({ input: String(args.input).slice(0, 500), ...(args.base_time ? { base_time: args.base_time } : {}), ...(args.timezone ? { timezone: args.timezone } : {}), }), }, };