Skip to main content
Glama
jcislo
by jcislo

Server Configuration

Describes the environment variables required to run the server.

NameRequiredDescriptionDefault
PRIVATE_KEYNoFallback for EVM_PRIVATE_KEY. 0x-prefixed wallet key with USDC on Base Mainnet.
EVM_PRIVATE_KEYNo0x-prefixed wallet key with USDC on Base Mainnet. Required to pay the 5 paid tools on a live API. PRIVATE_KEY is accepted as a fallback. Free tools work without it; without a key the paid tools surface the 402 price terms.
DEMANDEX_API_URLNoOverride the API base URL (default https://api.demandex.dev).https://api.demandex.dev

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

CapabilityDetails
tools
{
  "listChanged": true
}

Tools

Functions exposed to the LLM to take actions

NameDescription
get_categoriesA

Category index with opportunityCount, topScore, lastUpdated per category. Free.

get_sample_opportunityB

Real, fixed sample opportunity card showing the full paid card shape. Free.

get_trending_opportunitiesA

PAID $0.01 via x402. Top 20 trending opportunity cards by score as TEASERS (id, slug, title, category, score, signalCount, lastSeen) — no evidence; buy get_opportunity for the full card. Pays USDC on Base via x402. Compute-first, settle-after — you are never charged for an error. Set EVM_PRIVATE_KEY (wallet with USDC on Base Mainnet) to pay on a live API; without a key the call returns the 402 price terms.

get_opportunitiesA

PAID $0.02 via x402. Up to 50 opportunity cards in a category, each a teaser plus its summary. Requires category; optional minScore (0-100) filters. Unknown/missing category → no-charge 400 listing valid categories. Pays USDC on Base via x402. Compute-first, settle-after — you are never charged for an error. Set EVM_PRIVATE_KEY (wallet with USDC on Base Mainnet) to pay on a live API; without a key the call returns the 402 price terms.

get_opportunityA

PAID $0.05 via x402. One FULL opportunity card by id or slug (provide exactly one): all score components (freqScore, intensityScore, wtpScore), productAngle, summary, evidence[] (verbatim quotes with subreddit, upvotes, permalink), builderMomentum, firstSeen, lastSeen, signalCount, distinctAuthors. Pays USDC on Base via x402. Compute-first, settle-after — you are never charged for an error. Set EVM_PRIVATE_KEY (wallet with USDC on Base Mainnet) to pay on a live API; without a key the call returns the 402 price terms.

gauge_demandA

PAID $0.03 via x402. Demand verdict for any physical-product query, cached 7 days by normalized query (corpus-only synthesis + 1 LLM call). Returns { query, verdictScore (0-100), demandTemperature (cold|warm|hot), rationale, topEvidence[], relatedOpportunities[], cache, fetchedAt }. Pays USDC on Base via x402. Compute-first, settle-after — you are never charged for an error. Set EVM_PRIVATE_KEY (wallet with USDC on Base Mainnet) to pay on a live API; without a key the call returns the 402 price terms.

gauge_demand_liveA

PAID $0.10 via x402. Demand verdict backed by a LIVE Reddit search at request time (up to 50 posts) plus the mined corpus and one LLM synthesis call, under a ~45s budget. Same verdict shape as gauge_demand (cache always miss); timeout → no-charge 504. Pays USDC on Base via x402. Compute-first, settle-after — you are never charged for an error. Set EVM_PRIVATE_KEY (wallet with USDC on Base Mainnet) to pay on a live API; without a key the call returns the 402 price terms.

Prompts

Interactive templates invoked by user choice

NameDescription

No prompts

Resources

Contextual data attached and managed by the client

NameDescription

No resources

TDQS

A4/5.0

Scored across 7 tools

Disambiguation4/5

Most tools have clearly distinct purposes: categories, sample, trending list, category list, full detail, and two demand gauges. The only potential confusion is between get_trending_opportunities and get_opportunities, but pricing and descriptions (trending vs category-based) make them differentiable.

Naming Consistency4/5

The verb_noun pattern is consistent, with all retrieval tools prefixed get_ and analysis tools using gauge_. The shift from get_ to gauge_ is logical and doesn't break readability, but it is a minor deviation from a uniform verb.

Tool Count5/5

Seven tools is well-scoped for a demand-intelligence server, covering free samples, paid tiers, and both cached and live analysis without redundancy. Each tool earns its place in the workflow.

Completeness4/5

The surface covers categories, trending, detailed cards, and demand gauging, which covers the core use case. A minor gap is the lack of keyword-based opportunity search, though gauge_demand's relatedOpportunities partially fills this.

Maintenance

ActivitySlowing
ResponsivenessNo issues