Nostr Ecosystem Metrics over MCP
Curated, methodology-documented metrics over Nostr ecosystem data - starting with the Zapstore app store - queryable by AI agents over the Model Context Protocol. Free at present, no authentication.
Connect your agent
MCP server URLhttps://nostrolo.gy/mcp claude mcp add --transport http nostrology https://nostrolo.gy/mcp Applies to new sessions. An agent with shell access can run this itself.
Edit ~/.codex/config.toml
[mcp_servers.nostrology]
url = "https://nostrolo.gy/mcp" Edit ~/.hermes config.yaml (or: hermes mcp)
mcp_servers:
nostrology:
url: "https://nostrolo.gy/mcp" MCP support ships with the standard install; /reload-mcp applies config edits.
Edit opencode.json
{
"mcp": {
"nostrology": {
"type": "remote",
"url": "https://nostrolo.gy/mcp",
"enabled": true
}
}
} Settings -> Connectors -> Add custom connector -> URL: https://nostrolo.gy/mcp Edit ~/.cursor/mcp.json (or .cursor/mcp.json per-project)
{
"mcpServers": {
"nostrology": {
"url": "https://nostrolo.gy/mcp"
}
}
} Edit .vscode/mcp.json (or MCP: Add Server)
{
"servers": {
"nostrology": {
"type": "http",
"url": "https://nostrolo.gy/mcp"
}
}
} Edit cline_mcp_settings.json
{
"mcpServers": {
"nostrology": {
"type": "streamableHttp",
"url": "https://nostrolo.gy/mcp"
}
}
} type streamableHttp matters: omitting it falls back to legacy SSE.
Edit mcp_config.json
{
"mcpServers": {
"nostrology": {
"serverUrl": "https://nostrolo.gy/mcp"
}
}
} Edit settings.json (Settings -> AI -> MCP Servers -> Add Remote Server)
{
"context_servers": {
"nostrology": {
"url": "https://nostrolo.gy/mcp"
}
}
} Edit ~/.config/goose/config.yaml
extensions:
nostrology:
type: streamable_http
enabled: true
name: nostrology
uri: https://nostrolo.gy/mcp
timeout: 300 One-off alternative: goose session --with-streamable-http-extension <the endpoint URL above>
gemini mcp add --transport http nostrology https://nostrolo.gy/mcp Edit config.yaml
mcpServers:
- name: Nostrology
type: streamable-http
url: https://nostrolo.gy/mcp Harness has no remote-MCP support?
Bridge the endpoint into a local stdio server with mcp-remote:
npx mcp-remote https://nostrolo.gy/mcp Catalog
Three tools. nostrology_query_metric serves the
free quantitative metrics - including the nutzaps payment and mint metrics
(kind-9321 (nutzaps) payments per day and per Cashu mint) - routed by the metric parameter; nostrology_query_reference serves the free reference records (qualitative entity data - catalog entries,
publisher profiles, release history), routed by the record parameter; and nostrology_query_nutzaps serves the one paid metric, network-wide nutzaps active users
(active_users), paid per call in Cashu ecash - its
card states the price (pick the Nutzaps pill), and calling it without a token returns
the payment terms for free. Every response carries its own envelope: scope, window,
freshness, column contract, and the methodology caveats stating what is and is not
counted. Pick a domain below; more arrive as their data is exposed.
Domains
nutzaps metrics
Counts DISTINCT sender pubkeys with at least one kind-9321 (nutzaps) event in each UTC bucket at the requested grain - daily (DAU), ISO-week (WAU) or calendar-month (MAU) - active users, not event volume.
Active nutzap senders PER MINT: distinct sender pubkeys with at least one payment on the mint in each UTC bucket - day, ISO week (Monday start) or calendar month (the default) - for any window and every mint (mint_url for one). grain=month is the Monthly Active Users chart of each nostrolo.gy/nutzaps/mints page.
Nutzap payments and sats per (UTC day, mint) - the per-mint daily ledger behind the 'Cumulative sats by mint' chart of nostrolo.gy/nutzaps/mints (that chart = the top mints by sats over the window, from nutzaps.mint_leaderboard, each with the running sum of its sats here).
The nutzap mint leaderboard of nostrolo.gy/nutzaps/mints, for any window: one row per listed mint with its payments and sats in the from/to window and its Configured By count - omit from/to for the page's All view, pass mint_url for one mint's headline figures (its /nutzaps/mints page).
Nutzap payments and the sats they carried, across all counted mints or one (mint_url) - at grain=day one row per UTC day (the Nutzap Payments and Nutzap Sats charts on nostrolo.gy/nutzaps, and the daily charts of each /nutzaps/mints page with mint_url), at grain=total one row for the whole from/to window.