Lantern Works agent deals
Server Configuration
Describes the environment variables required to run the server.
| Name | Required | Description | Default |
|---|---|---|---|
No arguments | |||
Instructions
Guidance the server publishes about itself, which clients place ahead of the tool catalog so the model reads it before choosing anything.
This server publishes no instructions, or was last inspected before Glama recorded them.
Capabilities
Features and capabilities supported by this server
Protocol revision2025-11-25
| Capability | Details |
|---|---|
| tools | {
"listChanged": false
} |
| prompts | {
"listChanged": false
} |
| resources | {
"subscribe": false,
"listChanged": false
} |
| experimental | {} |
Tools
Functions exposed to the LLM to take actions
| Name | Description |
|---|---|
| compare_gpu_pricesA | Compare tracked GPU rental prices for one model (e.g. 'H100', 'A100 SXM', 'RTX 4090', 'L40S'), cheapest first. Same data as https://thelanternworks.com/api/v1/gpu-prices.json. Sorted by hourly_usd ascending; each result has source_url and checked_at. 'Cheapest' means cheapest among tracked providers, not the whole market. limit 1-25. Unknown model returns not_found listing tracked models. Each result has tier_class: on-demand | community | marketplace | interruptible (spot/preemptible) | reserved | dedicated-monthly. Reserved (reservation/commitment 'starting from') rates are left out unless include_reserved=true, and even then they are never reported as cheapest. The cheapest overall can be spot or community capacity; on_demand_only=true keeps only on-demand rates, and the summary names the cheapest on-demand rate when the overall cheapest isn't. include_history=true adds each result's price_history (daily-snapshot change points) and history.recent_changes (price changes for this model among tracked providers, last 30 days) from /api/v1/gpu-prices/history.json. Each result has data_age_hours (hours since its price was last verified), degraded (> 48 h) and stale (> 7 days). max_data_age_hours (optional) drops older rates; excluded_too_old reports how many were dropped. |
| get_price_changesA | GPU rental price changes among tracked providers, newest first, each with old/new hourly price, change_pct, direction and the vendor source_url. since: 'YYYY-MM-DD' returns every change on or after that date (daily snapshots in /api/v1/gpu-prices/history.json); omitted returns the latest day's moves (/api/v1/gpu-price-changes.json). gpu: optional model filter (substring, e.g. 'H100'). limit 1-200. Includes data_checked_at and next_refresh_utc (prices refresh daily at about 10:23 UTC), so you can call again after the next refresh to see what moved. |
| optimize_stackA | Cheapest suitable stack among tracked providers for monthly needs (set the quantities you need, rest 0). scrape_pages: pages/month without JS rendering. scrape_pages_js: pages/month needing JS rendering. proxy_gb: residential proxy GB/month. emails_sent: transactional emails/month. search_queries: search API queries/month. gpu_hours: GPU-hours/month (1 GPU), optionally gpu_model e.g. 'H100', 'A100', 'RTX 4090'. Each line has the chosen plan, monthly_cost_usd, calc, vendor quote, source_url, checked_at and assumptions, plus alternatives. A vendor price that isn't published is 'unknown' (never estimated). manual_signup_only=true means a human must sign up (never automate it); exclude_manual_signup=true drops those plans. Same data as https://thelanternworks.com/api/v1/stack-pricing.json and /tools/stack-optimizer/. |
| optimize_agent_stackA | Estimate a monthly stack cost from a short description of the agent being built. description: free text, e.g. 'scrapes 20k JS pages/month via 5 GB residential proxies, 3k search queries, summarizes with an LLM, budget $300/mo'. Parsed deterministically (keywords/regex, no LLM) into components: gpu, scraping, proxy, search, llm_api, email, hosting, database, monitoring. Optional fields override the parse: gpu_hours (GPU-hours/month), gpu_model ('H100', 'A100', 'RTX 4090'), model_size_b (billions of params; sets a minimum VRAM using FP16 x 1.2), scrape_pages, js_rendering, proxy_gb, search_queries, emails_sent, llm_api, monthly_budget_usd. Each component gets the cheapest option with a cited price among tracked providers, with calc, source_url, verified_at, referral_disclosure (set when the link is a referral link) and manual-signup notes. Components with no cited price say 'no sourced price tracked' (nothing is estimated). Totals show the math and say whether they are complete. Pulled listings are excluded. Every option has data_age_hours, degraded (> 48 h) and stale (> 7 days); max_data_age_hours drops older options (excluded_too_old counts them). Same data as optimize_stack, compare_gpu_prices and the deal feed. |
| search_dealsA | Search agent work-stack deals (compute, search, email, unblock, hosting...). offer_type: verified_discount | listed_discount (not confirmed; verified_at null) | free_tier | trial | standard_referral | credit_only_referral. max_price excludes deals with unknown price. limit 1-25. Pass next_cursor back as cursor to page. |
| compare_dealsB | Compare 2-5 deals side by side (price, unit, offer type, code, verification), best value first. |
| get_dealB | Get one deal's public record by id, including redeem_url and agent_instructions. |
Prompts
Interactive templates invoked by user choice
| Name | Description |
|---|---|
No prompts | |
Resources
Contextual data attached and managed by the client
| Name | Description |
|---|---|
No resources | |
TDQS
Scored across 7 tools
Most tools have distinct resource+action targets: search_deals finds deals, compare_deals compares specific ones, get_deal fetches a single record, and compare_gpu_prices vs get_price_changes separate snapshot pricing from movement history. The one real overlap is optimize_stack vs optimize_agent_stack, since the latter accepts all of the former's explicit fields as overrides, making the plain optimizer largely a subset.
Every tool follows a clean snake_case verb_noun pattern (compare_*, get_*, search_*, optimize_*), with verbs that accurately signal the operation. No mixed casing or inconsistent verb styles anywhere in the set.
Seven tools is well-scoped for a price/deal data service, with each covering a distinct facet: GPU price comparison, price movement, deal search, deal comparison, deal lookup, and two stack cost estimators. Nothing feels padded or missing at the count level.
The surface covers the core workflows: find/compare/get deals, compare GPU prices, track changes, and estimate stack costs with history via parameters. Minor gaps remain — no way to list tracked models or providers directly (only via not_found or a substring filter), and no per-provider price table across models, but agents can work around these.