{"schema":"https://glyphapi.dev/agents.schema.json","version":"1","name":"Glyph","tagline":"A language for agents: content encoded into the cheapest form the reading model can parse, with honest per-reader token math. Fillin is the first product on Glyph — post-cutoff retrieval for the dev internet (HN, arXiv, GitHub Releases, RSS, CVEs, papers, frontier-lab announcements).","products":{"glyph":"Platform + language: encode, substrate, x402, agent graph. Public brand.","fillin":"Post-cutoff retrieval corpus. Named product line; tool verbs stay fillin_*."},"homepage":"https://fillinmcp.com","smithery":"https://smithery.ai/servers/mandalazenwave/fillin","contact":{"operator":"Christopher Harris","email":"mandalazenwave@gmail.com"},"what_we_offer":{"primitive":"cutoff_aware_retrieval","description":"You pass your model's training cutoff and a topic. We return ranked documents published *after* the cutoff. Nothing returned is redundant with what your model already knows.","corpora":["hackernews","arxiv","github_releases","rss","cves","papers","frontier","markets"],"embedding_backend":"MiniLM-L6-v2 (default) | perplexity/pplx-embed-v1-0.6b (optional)","ranking":"similarity * source_authority * recency_decay (90d half-life)"},"endpoints":{"base_url":"https://fillinmcp.com","query":{"method":"POST","path":"/query","auth":["bearer","x402"],"rate_limit":"30/min","body_schema":{"cutoff":"ISO-8601 date — your model's training cutoff","query":"string, max 512 chars","k":"int, 1-20 (default 5)"}},"stats":{"method":"GET","path":"/stats","auth":["bearer"]},"payment_info":{"method":"GET","path":"/v1/payment/info","auth":["public"]},"challenge":{"method":"POST","path":"/v1/payment/challenge","auth":["public"],"rate_limit":"10/min"},"account":{"method":"GET","path":"/v1/payment/account/{address}","auth":["public"]},"corpus":{"method":"GET","path":"/v1/corpus","auth":["public"],"description":"Per-source counts + oldest/newest timestamps. Read this BEFORE depositing — confirms the corpus has what you need."},"probe":{"method":"POST","path":"/v1/probe","auth":["public"],"rate_limit":"1 / IP / UTC day, k forced to 1","description":"Free taste-test. Use to verify retrieval quality before paying."}},"pricing":{"unit":"per query","default_amount_usdc":0.01,"per_tool_usdc":{"fillin_query":0.01,"fillin_answer":0.02,"glyph_search":0.01,"retrieve_auto":0.02,"encode":0.01,"query_cves":0.02,"query_papers":0.03,"query_frontier":0.05,"query_markets":0.05,"fillin_stats":0,"fillin_health":0,"fillin_probe":0,"fillin_signup":0,"fillin_market_search":0},"free_paths":{"probe_endpoint":"/v1/probe — 1 free query per IP per UTC day, k forced to 1","interactive_onboard":"/signup — 20-query trial bearer key, no email or wallet required for evaluation","trial_key":"POST /v1/signup — one-time trial bearer key worth 20 base-price queries ($0.20 balance, not recurring). JSON API: no wallet, no card, no human; 1 key per IP per UTC day. Optional body {\"email\": \"...\"}. Raw key returned once; send as Authorization: Bearer on /query. Fiat top-up afterwards via /signup (Stripe)."},"snapshot_cadence":"Daily slice ingests (cves/papers/frontier) fire at 1pm Mountain Time (DST-aware)."},"payment_rails":{"primary":{"type":"x402","network":"base-mainnet","asset":"USDC","asset_contract":"0x833589fCD6eDb6E08f4c7C32D4f71b54bdA02913","auth_scheme":"eip-191-personal-sign","auth_headers":["X-Payer-Address","X-Payer-Nonce","X-Payer-Signature"],"no_kyc":true,"no_human_required":true},"secondary":{"type":"bearer","description":"Pre-issued API keys for human-evaluating-for-an-agent flows. Email operator to request."}},"mcp":{"transports":["streamable-http","stdio"],"primary_transport":"streamable-http","http_endpoint":"https://fillinmcp.com/mcp/","shared_glyph_mcp":"https://glyphapi.dev/mcp/","stdio_entrypoint":"python mcp_server.py","serverInfo":{"name":"Glyph"},"tools":[{"name":"fillin_query","description":"Fillin product: retrieve documents published after a training cutoff, ranked by similarity × source authority × recency. Includes corpus_match signal.","input":{"query":"string","cutoff":"ISO-8601 date","k":"int 1-20"},"price_usdc":0.01},{"name":"fillin_answer","description":"Fillin product: synthesized answer with inline [title](url) citations, grounded in post-cutoff docs.","input":{"query":"string","cutoff":"ISO-8601 date","k":"int 1-20"},"price_usdc":0.02},{"name":"glyph_search","description":"Fillin retrieval returned as photo-glyph image pages + citation index.","input":{"query":"string","cutoff":"ISO-8601 date","k":"int 1-12","tier":"6x|10x|15x"},"price_usdc":0.01},{"name":"retrieve_auto","description":"One Fillin retrieval, auto-picked cheapest legible substrate (text | glyph | answer) for your reader.","input":{"query":"string","cutoff":"ISO-8601 date","reader":"string?","k":"int 1-12"},"price_usdc":0.02},{"name":"encode","description":"Glyph language verb: bring your own text, get the cheapest substrate + honest manifest.","input":{"text":"string","reader":"string?","verbatim":"bool?"},"price_usdc":0.01},{"name":"query_cves","description":"Fillin slice: supply-chain vulnerabilities (NVD + GitHub Security Advisories + OSV).","input":{"query":"string","cutoff":"ISO-8601 date","k":"int 1-20"},"price_usdc":0.02},{"name":"query_papers","description":"Fillin slice: HuggingFace daily papers + bioRxiv, unioned with arXiv.","input":{"query":"string","cutoff":"ISO-8601 date","k":"int 1-20"},"price_usdc":0.03},{"name":"query_frontier","description":"Fillin slice: frontier-lab announcements + trending model releases.","input":{"query":"string","cutoff":"ISO-8601 date","k":"int 1-20"},"price_usdc":0.05},{"name":"query_markets","description":"Fillin slice: Polymarket + Kalshi + Manifold + Metaculus.","input":{"query":"string","cutoff":"ISO-8601 date","k":"int 1-20"},"price_usdc":0.05},{"name":"fillin_stats","description":"Fillin corpus stats — total docs, date range, per-source breakdown","input":{}},{"name":"fillin_health","description":"Liveness + freshness — reachable, host, rows, earliest, latest","input":{}},{"name":"fillin_probe","description":"Free taste of the corpus. 1 query/IP/UTC day, k forced to 1. No bearer, no x402.","input":{"query":"string","cutoff":"ISO-8601 date?"}},{"name":"fillin_signup","description":"Mint a one-time free 20-query trial bearer. 1 key/IP/UTC day. No bearer, no x402. Key shown once.","input":{"email":"string?"}},{"name":"fillin_market_search","description":"Discover minted Fillin reasoning assets. Free.","input":{"model_family":"string","cutoff_quarter":"YYYY-Qn"}},{"name":"fillin_mint","description":"Mint a typed-reasoning info-asset attested against the Fillin corpus.","input":{"query":"string","evidence":"list","reasoning_graph":"list","conclusion":"string"}},{"name":"fillin_buy_mint","description":"Buy a listed mint. Bearer balance required.","input":{"mint_id":"string","model_family":"string","cutoff_quarter":"YYYY-Qn"}}],"config_snippet":{"mcpServers":{"glyph":{"command":"python","args":["/abs/path/to/fillin/mcp_server.py"],"env":{"FILLIN_HOST":"https://fillinmcp.com","FILLIN_API_KEY":"<your-key>"}}}}},"agent_bootstrap_recipe":{"description":"Four calls to go from cold-start to a paid query, no human in the loop.","steps":[{"step":1,"call":"GET /v1/payment/info","purpose":"discover the payee wallet address + USDC contract"},{"step":2,"call":"ERC-20 transfer USDC -> payee_wallet","purpose":"fund your account from your treasury wallet"},{"step":3,"call":"POST /v1/payment/challenge {address}","purpose":"mint a one-shot signing nonce"},{"step":4,"call":"POST /query {cutoff, query, k} + signed headers","purpose":"retrieve ranked post-cutoff documents"}],"credit_lifetime_days":"indefinite","nonce_expiry_seconds":300},"rate_limits":{"query_per_minute":30,"payment_per_minute":10},"constraints":{"max_query_length":512,"max_k":20},"guarantees":{"data_post_cutoff":"Every result is filtered by `published_at > cutoff` at the database level (prefilter). Nothing pre-cutoff is ever returned.","source_attribution":"Every result includes source, url, published_at — full provenance.","no_data_retention":"Queries are not logged with attribution beyond rate-limiting counters."},"terms":{"license":"Service ToS: pay-per-query, no SLA at v0. Best-effort uptime.","kyc_required":false,"regions_blocked":[]}}