@tensorfeed/mcp-server 2.0.0 → 2.0.2
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/CHANGELOG.md +21 -0
- package/README.md +33 -1
- package/dist/index.js +26 -23
- package/dist/meta-snapshot.json +1 -1
- package/dist/sanitize.d.ts +15 -0
- package/dist/sanitize.js +0 -0
- package/package.json +1 -1
- package/server.json +18 -4
package/CHANGELOG.md
CHANGED
|
@@ -2,6 +2,27 @@
|
|
|
2
2
|
|
|
3
3
|
All notable changes to the [TensorFeed.ai MCP server](https://github.com/RipperMercs/tensorfeed-mcp). Free tools work without configuration; premium tools require a bearer token via the `TENSORFEED_TOKEN` env var. Buy credits at [tensorfeed.ai/developers/agent-payments](https://tensorfeed.ai/developers/agent-payments).
|
|
4
4
|
|
|
5
|
+
## 2.0.2 - 2026-07-06
|
|
6
|
+
|
|
7
|
+
Output hardening. Caller-supplied identifiers that a tool echoes back in its
|
|
8
|
+
own message (a service, model, provider, benchmark, publisher domain, CVE id,
|
|
9
|
+
or search query that did not match) are now stripped of angle brackets and
|
|
10
|
+
length-capped before they are placed in the response text. This is a
|
|
11
|
+
defense-in-depth layer on top of the existing output sanitizer, so a value a
|
|
12
|
+
caller passes in cannot be reflected back as markup. No tool signatures,
|
|
13
|
+
endpoints, or behavior for valid inputs change.
|
|
14
|
+
|
|
15
|
+
## 2.0.1 - 2026-07-03
|
|
16
|
+
|
|
17
|
+
Docs release, no code changes to the stdio server. The README now documents
|
|
18
|
+
the hosted remote endpoint (https://mcp.tensorfeed.ai/mcp, 33-tool curated
|
|
19
|
+
subset) and its wallet-native x402 payment surfaces: premium tools
|
|
20
|
+
(route_verdict, whats_new) are payable per call with a funded USDC wallet
|
|
21
|
+
(Base or Solana) via arguments.payment or an X-PAYMENT header, with strict
|
|
22
|
+
HTTP-402 transport for auto-pay wrappers at
|
|
23
|
+
https://mcp.tensorfeed.ai/mcp?x402=strict. No account, no signup, no API key.
|
|
24
|
+
Bearer credits tokens keep working everywhere.
|
|
25
|
+
|
|
5
26
|
## 2.0.0 - 2026-06-07
|
|
6
27
|
|
|
7
28
|
Major tool-surface rework. BREAKING: the catalog drops from about 78 tools to
|
package/README.md
CHANGED
|
@@ -6,6 +6,38 @@
|
|
|
6
6
|
|
|
7
7
|
This subfolder remains in the main `tensorfeed` repo as the **publishing source** for the npm package (`@tensorfeed/mcp-server`) and the [official MCP registry](https://registry.modelcontextprotocol.io/v0/servers/ai.tensorfeed/mcp-server) entry. Edits to `src/`, `server.json`, `package.json`, etc. happen here and get pushed to the standalone repo on release.
|
|
8
8
|
|
|
9
|
+
## Hosted remote endpoint (zero install, wallet-payable)
|
|
10
|
+
|
|
11
|
+
You do not need to install this package to use TensorFeed over MCP. A hosted Streamable HTTP endpoint serves a curated 33-tool subset (31 free + 2 premium), and the premium tools are payable per call with nothing but a funded USDC wallet: no account, no signup, no API key.
|
|
12
|
+
|
|
13
|
+
| Surface | URL |
|
|
14
|
+
| --- | --- |
|
|
15
|
+
| Canonical endpoint | `https://mcp.tensorfeed.ai/mcp` |
|
|
16
|
+
| Same endpoint, legacy path | `https://tensorfeed.ai/api/mcp` |
|
|
17
|
+
| Strict x402 transport (for auto-pay wrappers) | `https://mcp.tensorfeed.ai/mcp?x402=strict` |
|
|
18
|
+
|
|
19
|
+
Connect any MCP client with an HTTP transport:
|
|
20
|
+
|
|
21
|
+
```json
|
|
22
|
+
{
|
|
23
|
+
"mcpServers": {
|
|
24
|
+
"tensorfeed": { "type": "http", "url": "https://mcp.tensorfeed.ai/mcp" }
|
|
25
|
+
}
|
|
26
|
+
}
|
|
27
|
+
```
|
|
28
|
+
|
|
29
|
+
`GET` the endpoint for machine-readable discovery info (tool count, payment surfaces, spec version). `POST` a JSON-RPC 2.0 envelope for `initialize`, `tools/list`, `tools/call`, and `ping`.
|
|
30
|
+
|
|
31
|
+
### Paying premium tools per call (x402)
|
|
32
|
+
|
|
33
|
+
The two premium tools, `route_verdict` (the signed model-routing decision) and `whats_new` (the full AFTA-signed morning brief), cost 1 credit ($0.02 in USDC, Base or Solana) per call. Three payment paths, pick whichever your client supports:
|
|
34
|
+
|
|
35
|
+
1. **`arguments.payment`**: call the tool unpaid, read the canonical x402 requirements from the response (`accepts` array), sign, then retry the same call with the base64 payment payload in the `payment` argument. Works in every MCP client, no header access needed.
|
|
36
|
+
2. **`X-PAYMENT` header**: send the same base64 payload as an `X-PAYMENT` (or `PAYMENT-SIGNATURE`) header on the POST.
|
|
37
|
+
3. **Bearer credits**: `Authorization: Bearer tf_live_...` token from [tensorfeed.ai/developers/agent-payments](https://tensorfeed.ai/developers/agent-payments).
|
|
38
|
+
|
|
39
|
+
x402 client wrappers that auto-pay on HTTP 402 should point at the strict URL (`?x402=strict`): unpaid premium calls there return a real HTTP 402 with a `PAYMENT-REQUIRED` header, the wrapper signs and retries, and the settled response carries a `PAYMENT-RESPONSE` header plus the AFTA-signed receipt in the body. No USDC yet? Claim free trial credits by signing a wallet message at `https://tensorfeed.ai/api/payment/trial-credits` (no payment required).
|
|
40
|
+
|
|
9
41
|
## Featured: Route Verdict
|
|
10
42
|
|
|
11
43
|
The single best model to use right now, as one signed call. `route_verdict` fuses live pricing, contamination-discounted benchmark capability, real production usage, measured p95 latency probes, live incident state, and deprecation flags into one ranked decision, with an AFTA-signed receipt over the exact inputs. Instead of stitching together pricing pages, benchmark leaderboards, status dashboards, and your own latency tests, you get a current, defensible routing answer in one request.
|
|
@@ -61,7 +93,7 @@ Models, prices, and latency move week to week. `route_verdict` is one signed cal
|
|
|
61
93
|
|
|
62
94
|
## Catalog
|
|
63
95
|
|
|
64
|
-
24 tools. The core flagships, the eight signed verdicts, the time-series tools, and the webhook watches are dedicated tools; the rest of the 100+ TensorFeed endpoints are reachable through the `find_tensorfeed_data` discovery tool and callable over HTTP. Free tiers need no token; paid tiers charge USDC on Base via x402 and return an AFTA-signed receipt. The full tool reference lives in the [standalone repo](https://github.com/RipperMercs/tensorfeed-mcp).
|
|
96
|
+
24 tools on this stdio package. The core flagships, the eight signed verdicts, the time-series tools, and the webhook watches are dedicated tools; the rest of the 100+ TensorFeed endpoints are reachable through the `find_tensorfeed_data` discovery tool and callable over HTTP. Free tiers need no token; paid tiers charge USDC on Base via x402 and return an AFTA-signed receipt. The hosted HTTP endpoint above carries a different, broader 33-tool curated subset (SEC EDGAR, openFDA, EIA, USGS, NWS, AI papers, and more). The full tool reference lives in the [standalone repo](https://github.com/RipperMercs/tensorfeed-mcp).
|
|
65
97
|
|
|
66
98
|
### Verdict family
|
|
67
99
|
|
package/dist/index.js
CHANGED
|
@@ -5,7 +5,7 @@ import { z } from 'zod';
|
|
|
5
5
|
import { readFileSync } from 'node:fs';
|
|
6
6
|
import { fileURLToPath } from 'node:url';
|
|
7
7
|
import { dirname, join } from 'node:path';
|
|
8
|
-
import { sanitizeToolResponse, sanitizeForLLM } from './sanitize.js';
|
|
8
|
+
import { sanitizeToolResponse, sanitizeForLLM, sanitizeReflectedValue } from './sanitize.js';
|
|
9
9
|
const API_BASE = 'https://tensorfeed.ai/api';
|
|
10
10
|
// Per-request upstream timeout. fetchJSON is the single HTTP helper behind every
|
|
11
11
|
// MCP tool and the latest_news resource, so a missing timeout would let one
|
|
@@ -235,10 +235,10 @@ registerTool('find_tensorfeed_data', 'Discover which TensorFeed endpoint answers
|
|
|
235
235
|
const rows = flattenCatalog(meta);
|
|
236
236
|
const top = scoreEndpoints(rows, query, limit ?? 3);
|
|
237
237
|
if (top.length === 0) {
|
|
238
|
-
return { content: [{ type: 'text', text: `No TensorFeed endpoint matched "${query}". Browse the full catalog at https://tensorfeed.ai/api/meta or https://tensorfeed.ai/developers.` }] };
|
|
238
|
+
return { content: [{ type: 'text', text: `No TensorFeed endpoint matched "${sanitizeReflectedValue(query)}". Browse the full catalog at https://tensorfeed.ai/api/meta or https://tensorfeed.ai/developers.` }] };
|
|
239
239
|
}
|
|
240
240
|
const lines = top.map((r) => `- ${r.path}\n ${r.description}`).join('\n');
|
|
241
|
-
return { content: [{ type: 'text', text: `Top TensorFeed endpoints for "${query}":\n${lines}\n\nCall free endpoints directly over HTTP. Paid endpoints (marked with a credit cost) accept x402 payment or a TENSORFEED_TOKEN bearer; see https://tensorfeed.ai/developers/agent-payments.` }] };
|
|
241
|
+
return { content: [{ type: 'text', text: `Top TensorFeed endpoints for "${sanitizeReflectedValue(query)}":\n${lines}\n\nCall free endpoints directly over HTTP. Paid endpoints (marked with a credit cost) accept x402 payment or a TENSORFEED_TOKEN bearer; see https://tensorfeed.ai/developers/agent-payments.` }] };
|
|
242
242
|
});
|
|
243
243
|
// ── Tool: get_ai_status ─────────────────────────────────────────────
|
|
244
244
|
registerTool('get_ai_status', 'Get the real-time operational status of major AI services (Claude, OpenAI, Gemini, Mistral, Cohere, Replicate, Hugging Face), including per-component breakdowns and an operational/degraded/down rollup per provider. One cross-provider status call instead of checking each vendor\'s status page, useful before an agent routes a request to a model that may be impaired. Free, no auth.', {}, async () => {
|
|
@@ -261,7 +261,7 @@ registerTool('is_service_down', 'Check whether one named AI service (e.g. "claud
|
|
|
261
261
|
const match = data.services.find(s => s.name.toLowerCase().includes(service.toLowerCase()) ||
|
|
262
262
|
s.provider.toLowerCase().includes(service.toLowerCase()));
|
|
263
263
|
if (!match) {
|
|
264
|
-
return { content: [{ type: 'text', text: `Service "${service}" not found. Available services: ${data.services.map(s => s.name).join(', ')}` }] };
|
|
264
|
+
return { content: [{ type: 'text', text: `Service "${sanitizeReflectedValue(service)}" not found. Available services: ${data.services.map(s => s.name).join(', ')}` }] };
|
|
265
265
|
}
|
|
266
266
|
const statusEmoji = match.status === 'operational' ? 'OK' : match.status === 'degraded' ? 'DEGRADED' : 'DOWN';
|
|
267
267
|
const components = match.components.length > 0
|
|
@@ -563,7 +563,7 @@ registerTool('x402_publisher_verdict', "TensorFeed's signed trust verdict on one
|
|
|
563
563
|
content: [
|
|
564
564
|
{
|
|
565
565
|
type: 'text',
|
|
566
|
-
text: `x402 Publisher Verdict for ${data.domain}: ${data.verdict}\n` +
|
|
566
|
+
text: `x402 Publisher Verdict for ${sanitizeReflectedValue(data.domain)}: ${data.verdict}\n` +
|
|
567
567
|
`Momentum: ${data.momentum}. Shared wallet: ${t.wallet_shared ? 'yes (risk flag)' : 'no'}` +
|
|
568
568
|
(t.last_settled ? `. Last settled ${t.last_settled}` : '') +
|
|
569
569
|
'\n' +
|
|
@@ -580,7 +580,7 @@ registerTool('x402_publisher_verdict', "TensorFeed's signed trust verdict on one
|
|
|
580
580
|
content: [
|
|
581
581
|
{
|
|
582
582
|
type: 'text',
|
|
583
|
-
text: `x402 Publisher Verdict for ${data.domain}: ${data.verdict}\n` +
|
|
583
|
+
text: `x402 Publisher Verdict for ${sanitizeReflectedValue(data.domain)}: ${data.verdict}\n` +
|
|
584
584
|
`Claim: ${data.claim}` +
|
|
585
585
|
(data.captured_at ? `\nIndex captured ${data.captured_at}` : '') +
|
|
586
586
|
'\n' +
|
|
@@ -711,15 +711,16 @@ registerTool('failover_verdict', "Provider A is degraded; TensorFeed's signed ru
|
|
|
711
711
|
if ((tier ?? 'preview') === 'full') {
|
|
712
712
|
const data = (await fetchJSON(`/premium/failover-verdict?${params}`, { auth: true }));
|
|
713
713
|
const dest = data.failover_to;
|
|
714
|
+
const fromProvider = sanitizeReflectedValue(data.from.provider);
|
|
714
715
|
const incidentLine = data.from.incident
|
|
715
|
-
? `Incident on ${
|
|
716
|
+
? `Incident on ${fromProvider}: ${data.from.incident.title} (action ${data.from.incident.recommended_action})\n`
|
|
716
717
|
: '';
|
|
717
718
|
if (!dest) {
|
|
718
719
|
return {
|
|
719
720
|
content: [
|
|
720
721
|
{
|
|
721
722
|
type: 'text',
|
|
722
|
-
text: `Failover Verdict from ${
|
|
723
|
+
text: `Failover Verdict from ${fromProvider}: no operational failover target found.\n` +
|
|
723
724
|
incidentLine +
|
|
724
725
|
`Why: ${data.why}\nClaim: ${data.claim}` +
|
|
725
726
|
verdictBilling(data.billing),
|
|
@@ -734,7 +735,7 @@ registerTool('failover_verdict', "Provider A is degraded; TensorFeed's signed ru
|
|
|
734
735
|
content: [
|
|
735
736
|
{
|
|
736
737
|
type: 'text',
|
|
737
|
-
text: `Failover Verdict from ${
|
|
738
|
+
text: `Failover Verdict from ${fromProvider}: fail over to ${dest.model.name} (${dest.model.provider})\n` +
|
|
738
739
|
`Why: ${dest.why}\n` +
|
|
739
740
|
`Blended $${dest.pricing.blended}/1M, p95 ${dest.latency.measured_p95_ms ?? 'n/a'}ms, status ${dest.operational.status}\n` +
|
|
740
741
|
incidentLine +
|
|
@@ -748,13 +749,14 @@ registerTool('failover_verdict', "Provider A is degraded; TensorFeed's signed ru
|
|
|
748
749
|
}
|
|
749
750
|
const data = (await fetchJSON(`/preview/failover-verdict?${params}`));
|
|
750
751
|
const dest = data.failover_to;
|
|
752
|
+
const fromProvider = sanitizeReflectedValue(data.from.provider);
|
|
751
753
|
const rl = previewRateLine(data.rate_limit);
|
|
752
754
|
if (!dest) {
|
|
753
755
|
return {
|
|
754
756
|
content: [
|
|
755
757
|
{
|
|
756
758
|
type: 'text',
|
|
757
|
-
text: `Failover Verdict from ${
|
|
759
|
+
text: `Failover Verdict from ${fromProvider}: no operational failover target found.\n` +
|
|
758
760
|
`Why: ${data.why}\n${data.claim}\n` +
|
|
759
761
|
verdictUpsell('failover_verdict', 'the full failover candidate (pricing, measured latency, quality) and the ranked alternatives', rl),
|
|
760
762
|
},
|
|
@@ -765,7 +767,7 @@ registerTool('failover_verdict', "Provider A is degraded; TensorFeed's signed ru
|
|
|
765
767
|
content: [
|
|
766
768
|
{
|
|
767
769
|
type: 'text',
|
|
768
|
-
text: `Failover Verdict from ${
|
|
770
|
+
text: `Failover Verdict from ${fromProvider}` +
|
|
769
771
|
(data.from.in_incident ? ' (confirmed in incident)' : '') +
|
|
770
772
|
`: fail over to ${dest.model.name} (${dest.model.provider})\n` +
|
|
771
773
|
`Why: ${data.why}\n` +
|
|
@@ -797,7 +799,7 @@ registerTool('ssvc_verdict', "TensorFeed's signed SSVC patch-urgency decision fo
|
|
|
797
799
|
content: [
|
|
798
800
|
{
|
|
799
801
|
type: 'text',
|
|
800
|
-
text: `SSVC Verdict for ${data.cve}: ${data.decision_primary} (Mission and Well-being assumed medium)\n` +
|
|
802
|
+
text: `SSVC Verdict for ${sanitizeReflectedValue(data.cve)}: ${data.decision_primary} (Mission and Well-being assumed medium)\n` +
|
|
801
803
|
`Envelope: low ${env.low}, medium ${env.medium}, high ${env.high}\n` +
|
|
802
804
|
`Decision points: exploitation ${dp.exploitation}, automatable ${dp.automatable}, technical impact ${dp.technical_impact}\n` +
|
|
803
805
|
`${kevLine}\n` +
|
|
@@ -815,7 +817,7 @@ registerTool('ssvc_verdict', "TensorFeed's signed SSVC patch-urgency decision fo
|
|
|
815
817
|
content: [
|
|
816
818
|
{
|
|
817
819
|
type: 'text',
|
|
818
|
-
text: `SSVC decision points for ${data.cve}:\n` +
|
|
820
|
+
text: `SSVC decision points for ${sanitizeReflectedValue(data.cve)}:\n` +
|
|
819
821
|
` exploitation: ${dp.exploitation}\n` +
|
|
820
822
|
` automatable: ${dp.automatable}\n` +
|
|
821
823
|
` technical impact: ${dp.technical_impact}\n` +
|
|
@@ -852,7 +854,7 @@ registerTool('pricing_series', 'Daily price points for one AI model over a windo
|
|
|
852
854
|
content: [
|
|
853
855
|
{
|
|
854
856
|
type: 'text',
|
|
855
|
-
text: `${data.model} (${data.provider ?? 'unknown'}) ${data.points.length} points\n${summary}\nCredits remaining: ${data.billing?.credits_remaining ?? '?'}`,
|
|
857
|
+
text: `${sanitizeReflectedValue(data.model)} (${sanitizeReflectedValue(data.provider ?? 'unknown')}) ${data.points.length} points\n${summary}\nCredits remaining: ${data.billing?.credits_remaining ?? '?'}`,
|
|
856
858
|
},
|
|
857
859
|
],
|
|
858
860
|
};
|
|
@@ -867,7 +869,7 @@ registerTool('pricing_series', 'Daily price points for one AI model over a windo
|
|
|
867
869
|
content: [
|
|
868
870
|
{
|
|
869
871
|
type: 'text',
|
|
870
|
-
text: `${data.model} (${data.provider ?? 'unknown'}) ${data.points.length} points over ${data.points.length} days\n${summary}\nFor up to 90 days, pass days 8 to 90 (1 credit).`,
|
|
872
|
+
text: `${sanitizeReflectedValue(data.model)} (${sanitizeReflectedValue(data.provider ?? 'unknown')}) ${data.points.length} points over ${data.points.length} days\n${summary}\nFor up to 90 days, pass days 8 to 90 (1 credit).`,
|
|
871
873
|
},
|
|
872
874
|
],
|
|
873
875
|
};
|
|
@@ -890,7 +892,7 @@ registerTool('benchmark_series', 'Daily benchmark scores for one model+benchmark
|
|
|
890
892
|
content: [
|
|
891
893
|
{
|
|
892
894
|
type: 'text',
|
|
893
|
-
text: `${data.model} on ${data.benchmark}: ${data.points.length} points\n${summary}\nCredits remaining: ${data.billing?.credits_remaining ?? '?'}`,
|
|
895
|
+
text: `${sanitizeReflectedValue(data.model)} on ${sanitizeReflectedValue(data.benchmark)}: ${data.points.length} points\n${summary}\nCredits remaining: ${data.billing?.credits_remaining ?? '?'}`,
|
|
894
896
|
},
|
|
895
897
|
],
|
|
896
898
|
};
|
|
@@ -905,7 +907,7 @@ registerTool('benchmark_series', 'Daily benchmark scores for one model+benchmark
|
|
|
905
907
|
content: [
|
|
906
908
|
{
|
|
907
909
|
type: 'text',
|
|
908
|
-
text: `${data.model} on ${data.benchmark}: ${data.points.length} points\n${summary}`,
|
|
910
|
+
text: `${sanitizeReflectedValue(data.model)} on ${sanitizeReflectedValue(data.benchmark)}: ${data.points.length} points\n${summary}`,
|
|
909
911
|
},
|
|
910
912
|
],
|
|
911
913
|
};
|
|
@@ -926,7 +928,7 @@ registerTool('status_uptime', 'Daily uptime rollup for one provider over a windo
|
|
|
926
928
|
content: [
|
|
927
929
|
{
|
|
928
930
|
type: 'text',
|
|
929
|
-
text: `${data.provider} uptime: ${data.uptime_pct ?? 'n/a'}% over ${data.days_with_data} measured days (of ${data.days_total} in range)\n` +
|
|
931
|
+
text: `${sanitizeReflectedValue(data.provider)} uptime: ${data.uptime_pct ?? 'n/a'}% over ${data.days_with_data} measured days (of ${data.days_total} in range)\n` +
|
|
930
932
|
` operational: ${data.days_operational}, degraded: ${data.days_degraded}, down: ${data.days_down}` +
|
|
931
933
|
incidents +
|
|
932
934
|
`\nCredits remaining: ${data.billing?.credits_remaining ?? '?'}`,
|
|
@@ -940,7 +942,7 @@ registerTool('status_uptime', 'Daily uptime rollup for one provider over a windo
|
|
|
940
942
|
content: [
|
|
941
943
|
{
|
|
942
944
|
type: 'text',
|
|
943
|
-
text: `${data.provider} over ${data.days_total} days: ${data.uptime_pct ?? '?'}% uptime (${data.days_operational} operational, ${data.days_degraded} degraded, ${data.days_down} down)`,
|
|
945
|
+
text: `${sanitizeReflectedValue(data.provider)} over ${data.days_total} days: ${data.uptime_pct ?? '?'}% uptime (${data.days_operational} operational, ${data.days_degraded} degraded, ${data.days_down} down)`,
|
|
944
946
|
},
|
|
945
947
|
],
|
|
946
948
|
};
|
|
@@ -1025,12 +1027,12 @@ registerTool('whats_new', 'Catch up on everything that changed in AI in one call
|
|
|
1025
1027
|
});
|
|
1026
1028
|
// ── Tool: compare_models (1 credit) ─────────────────────────────────
|
|
1027
1029
|
registerTool('compare_models', 'Pick between models in one call: pricing, benchmarks, status, and recent news for 2 to 5 models side by side, with cheapest-blended and per-benchmark rankings, so you choose without scraping each provider. Costs 1 credit ($0.02).', {
|
|
1028
|
-
ids: z.string().describe('Comma-separated list of 2-5 model ids or display names. Examples: "Claude Opus 4.
|
|
1030
|
+
ids: z.string().describe('Comma-separated list of 2-5 model ids or display names. Examples: "Claude Opus 4.8,GPT-5.5,Gemini 3.5 Flash" or "opus-4-8,gpt-5-5"'),
|
|
1029
1031
|
}, async ({ ids }) => {
|
|
1030
1032
|
const data = (await fetchJSON(`/premium/compare/models?ids=${encodeURIComponent(ids)}`, { auth: true }));
|
|
1031
1033
|
const lines = data.models.map(m => {
|
|
1032
1034
|
if (!m.matched)
|
|
1033
|
-
return ` ${m.query}: not found`;
|
|
1035
|
+
return ` ${sanitizeReflectedValue(m.query)}: not found`;
|
|
1034
1036
|
const benches = data.benchmark_keys
|
|
1035
1037
|
.map(k => `${k}=${m.benchmarks[k] ?? '-'}`)
|
|
1036
1038
|
.join(', ');
|
|
@@ -1209,9 +1211,10 @@ registerTool('create_watch', 'Register a webhook watch. type selects what to wat
|
|
|
1209
1211
|
if (secret !== undefined)
|
|
1210
1212
|
body.secret = secret;
|
|
1211
1213
|
const data = (await fetchJSON('/premium/watches', { method: 'POST', body, auth: true }));
|
|
1214
|
+
const safeProvider = sanitizeReflectedValue(provider);
|
|
1212
1215
|
const desc = op === 'changes'
|
|
1213
|
-
? `${
|
|
1214
|
-
: `${
|
|
1216
|
+
? `${safeProvider} rank changes`
|
|
1217
|
+
: `${safeProvider} ${(op ?? '').replace('_', ' ')} #${threshold}`;
|
|
1215
1218
|
return {
|
|
1216
1219
|
content: [
|
|
1217
1220
|
{
|
package/dist/meta-snapshot.json
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"ok":true,"site":"tensorfeed.ai","description":"AI news, model tracking, and real-time AI ecosystem data.","afta_self_description":"TensorFeed.ai is agent fair-trade certified: open pricing, automatic no-charge on 5xx, breaker, schema fail, and stale data, Ed25519-signed receipts on every paid call, inference-only license. Built with Claude (Anthropic). Standard at /.well-known/agent-fair-trade.json.","metaPremium":"/api/meta/premium (free; machine-readable catalog of every premium endpoint: path, credit cost, params, returns, free sibling, strict-premium flag. The canonical \"what can I buy\" surface for agents.)","metaOfficial":"/api/meta/official (free; canonical list of TensorFeed official surfaces and the one true payment address, for anti-impersonation. Verify any package, MCP server, repo, or payTo claiming to be TensorFeed here.)","feeds":{"rss":"/api/feed.xml","json":"/api/feed.json","research":"/api/feed/research.xml","tools":"/api/feed/tools.xml"},"api":{"news":"/api/agents/news","status":"/api/agents/status","pricing":"/api/agents/pricing","models":"/api/models","intelligence":"/api/intelligence (free; TFII Model Intelligence Index headline ranking, a 0 to 100 composite per model from public benchmarks (MMLU-Pro, HumanEval, GPQA-Diamond, MATH, SWE-bench) discounted for contamination and saturation. Free per-model field on /api/models; signed premium breakdown at /api/premium/model-intelligence.)","benchmarks":"/api/benchmarks","harnesses":"/api/harnesses","attention":"/api/attention","attentionHistory":"/api/attention/history","attentionHistorySnapshot":"/api/attention/history/{YYYY-MM-DD}","embeddings":"/api/embeddings?type=embedding|reranker","multimodal":"/api/multimodal?modality=image|video|tts|stt","vectorDbs":"/api/vector-dbs?type=managed|oss|hybrid&open_source=true","usageRankings":"/api/usage-rankings","frameworks":"/api/frameworks?language=python|typescript&category=agent-orchestration|rag|multi-agent|sdk|workflow|voice-agent|browser-agent","benchmarkRegistry":"/api/benchmark-registry?category=knowledge|math|code|multimodal|agents|long-context&status=active|saturated","openWeights":"/api/open-weights?family=Meta|DeepSeek|Mistral|Alibaba|Google|Microsoft","aiHardware":"/api/ai-hardware?manufacturer=NVIDIA|AMD|Google|AWS|Apple|Cerebras|Groq","mcpServers":"/api/mcp-servers?capability=filesystem|web-search|browser|github|slack|database&first_party=true","trainingDatasets":"/api/training-datasets?stage=pretraining|instruction-tuning|dpo|rlhf|multimodal","embodiedAi":"/api/embodied-ai?category=foundation_model|humanoid|dataset|simulator","aiLawsuits":"/api/ai-lawsuits?status=active|settled|dismissed|judgment|consolidated&claim=copyright-infringement|dmca-violation|antitrust|...&jurisdiction=US|UK|EU","x402Adopters":"/api/x402-adopters?category=publisher|sdk|gateway|reference|spec&status=live|beta|reference-impl|announced|sdk|gateway|spec","agentApis":"/api/agent-apis?category=search|web-scraping|weather|finance|maps|email|sms|payments|code-execution|ocr&has_mcp=true","agentProvisioning":"/api/agent-provisioning?status=live|pending|unknown&category=hosting|database|auth|observability|background-jobs|ai-infrastructure|cdn-edge|email","trainingRuns":"/api/training-runs?publisher=OpenAI|Anthropic|Meta|Google|DeepSeek&open_weights=true","fineTuning":"/api/fine-tuning?type=first-party|hosted&method=lora|qlora|full|dpo|rlhf","specializedModels":"/api/specialized-models?domain=code|medical|legal|finance|music|3d|retrieval|science&open_weights=true","modelCards":"/api/model-cards?lab=Anthropic|OpenAI|Google|Meta|DeepSeek","voiceLeaderboards":"/api/voice-leaderboards","marketplaces":"/api/marketplaces?category=gpts|agents|skills|models|spaces|mcp|workflows|plugins","publicLeaderboards":"/api/public-leaderboards?domain=general|code|math|reasoning|multimodal|agent|safety|voice|image|video|long-context|open-models","funding":"/api/funding?category=frontier-lab|inference|agent|coding|infra|enterprise|creative|voice|video|data&stage=seed|series-a|series-b|series-c|series-d|series-e|growth","ossTools":"/api/oss-tools?category=runtime|inference-server|fine-tuning|ui|eval|training|observability|edge","aiPolicy":"/api/ai-policy?status=active|pending|proposed|stalled&jurisdiction=EU|US|UK|China|Korea","conferences":"/api/conferences?category=research|industry|developer|community&upcoming=true","modelDeprecations":"/api/model-deprecations?provider=OpenAI|Anthropic|Google|Cohere|...&status=announced|deprecated|sunsetted","premiumModelDeprecationsTimeline":"/api/premium/model-deprecations/timeline?within_days=&provider= (1 credit, AFTA-signed; window-centered timeline over the model deprecation registry. Each entry enriched with urgency_band (within_7d / within_30d / within_60d / within_90d / within_180d / within_365d / past / future / no_date), days_until_sunset and days_since_sunset, and a resolved migration_chain hop sequence to the first still-active replacement. Summary breakdowns by_provider and by_urgency_band. within_days null returns the full registry; clamped to [7, 730].)","computeProviders":"/api/compute-providers?type=gpu-cloud|hyperscaler|ai-serverless|marketplace|specialized","inferenceProviders":"/api/inference-providers?family=Meta|DeepSeek|Mistral|Alibaba|Microsoft","inferenceProvidersCheapest":"/api/inference-providers/cheapest?model=<id>&sort=blended|input|output|tps_desc","premiumInferenceArbitrage":"/api/premium/inference-providers/arbitrage?family=&min_savings_pct= (1 credit, AFTA-signed; cross-provider arbitrage analytics over the inference-providers matrix. Per-model: cheapest_paid, most_expensive_paid, spread_usd, savings_pct, median_paid_blended, fastest_tps, cheapest_with_tps, free_tier_offers. Plus provider_rollup (cheapest_count, top_tps_count, value_score) and top_arbitrage models sorted by savings_pct desc. Default min_savings_pct=20; clamp [0,100].)","aiSafetyIncidentsAvid":"/api/ai-safety/incidents/avid?limit=&developer=&risk_domain= (free, capped at 50; raw normalized AVID snapshot. Source: avidml/avid-db, MIT. Refreshed daily 03:00 UTC.)","aiSafetyPackagesSecurity":"/api/ai-safety/packages/security?package=&ecosystem=&category= (free; per-package vulnerability history over the curated AI/ML PyPI + npm package lists. Sourced from OSV.dev (GHSA + PyPA + RustSec + Maven + npm + others). Refreshed daily 05:45 UTC.)","packagesReleases":"/api/packages/releases?ecosystem=&category=&package=&within_days= (free; latest version + last 10 release timestamps for every curated AI/ML PyPI + npm package. Sourced from pypi.org + registry.npmjs.org public JSON. Refreshed every 6h.)","aiVelocity":"/api/ai-velocity?limit= (free, capped at 30; first AFTA federation cross-call. Filters TerminalFeed.io HF + GitHub trending leaderboards to AI-relevant entries.)","aiCryptoPulse":"/api/ai-crypto-pulse (free; second AFTA federation cross-call. Pulls TerminalFeed crypto-movers + funding-rates, filters to AI-thesis token cohort (TAO, FET, RNDR, AKT, WLD, ARKM, IO, OCEAN, GRT, VIRTUAL, AI16Z, NMR, AGIX, TURBO).)","codingHarnessesLatest":"/api/coding-harnesses/latest (free; third AFTA federation cross-call. Latest snapshot of TerminalFeed coding-harness leaderboard (SWE-bench Verified, Terminal-Bench, Aider Polyglot, etc). Refreshed daily 05:25 UTC.)","newsActionCards":"/api/news/action-cards?limit= (free, capped at 25; Haiku-derived structured agent action cards over the news feed. Per article: action_summary, migration_recommendation, affected_capability, cost_impact, security_impact, urgency. Daily 08:00 UTC refresh.)","statusIncidentsTriage":"/api/status/incidents/triage?limit= (free, capped at 25; Haiku-triaged AI provider status incidents. Per card: triage_summary, impact_classification (informational/minor/major/critical), affected_capabilities, recommended_action (no_action/monitor/retry_later/failover_now/escalate). Refreshed every 2h.)","breaking":"/api/breaking","secFilingsRecent":"/api/sec/filings/recent?form=&ticker=&limit= (free, capped 50; recent EDGAR filings for the AI bellwether cohort: NVDA, AMD, AVGO, TSM, ARM, MSFT, GOOGL, AMZN, ORCL, PLTR, SMCI, AAPL, META, TSLA. Source data.sec.gov, public domain. Refreshed every 6h.)","secFilingsByCik":"/api/sec/filings/{cik}/recent (free; per-company recent filings, CIK must be from cohort. Returns 404 with cohort hint otherwise.)","secInsiderTrades":"/api/sec/insider-trades?ticker=&limit= (free, capped 100; Form 4 insider-trade filings for one AI bellwether ticker, lazy-fetched from EDGAR with 6h KV cache. V1 returns filing metadata (accession, date, URL); structured reporting-owner + transaction parsing queued behind DataPal Qwen. Source data.sec.gov, public domain.)","x402IndexSummary":"/api/x402-index/summary?window=24h|7d|30d (free, default 24h; ecosystem-level x402 USDC settlement volume + count + change-vs-prior-window across the AI agent payments economy on Base mainnet. Forward-only index from 2026-05-28 onward. Indexer cron every 5 min, daily publisher manifest refresh 06:35 UTC. Source data: Base mainnet USDC Transfer events filtered to wallets self-published in publisher /.well-known/x402.json manifests.)","x402IndexPublishers":"/api/x402-index/publishers (free, capped to discovered count; canonical list of x402-compliant publishers TensorFeed is currently indexing, auto-discovered from /.well-known/x402.json crawls plus a small hand-seeded set of discovery-dark publishers that expose no manifest. Each entry: domain, pay_to_wallets, source (manifest or manual), first_seen, last_crawled, last_event_at, last_crawl_error. Use this to see which publishers can be queried via /api/premium/x402-index/publisher/{domain}.)","x402IndexLeaderboard":"/api/x402-index/leaderboard?window=24h|7d|30d&limit= (free, limit clamped 1 to 25; top publishers by x402 USDC settlement volume in the window, with rank, count, volume_usdc, and share_pct of the windowed ecosystem volume (window_volume_usdc carries the denominator). Aggregated from full per-publisher daily rollups, no per-day top-N truncation.)","x402IndexRecent":"/api/x402-index/recent?limit= (free, limit clamped 1 to 50; most recent x402 USDC settlement events newest-first, each with tx_hash, block, ts, from_address, to_address, amount_usdc, publisher_domain, base_explorer_url. Powers a live ticker for the /x402 hub.)","x402IndexVerified":"/api/x402-index/verified (free; the verified-publisher directory: which curated x402 publishers have observed on-chain USDC settlements on Base, with verified/unverified status and metrics. Precomputed daily after the 06:35 UTC publisher refresh; each entry carries status (verified-settling, unverified, unreachable, no-base-payto), activity tier, settlement_count, volume_usdc, first/last_settled, pay_to_wallets, and source. Verification is a positive on-chain claim; absence of settlements is not a claim a publisher is fake.)","substrateChangelogRecent":"/api/substrate-changelog/recent?limit= (free, limit clamped 1 to 50; most recent substrate events newest-first across three event types: model lifecycle changes (added, removed, repriced, deprecated) across TF's curated catalog, version bumps in the public MCP, x402, and A2A spec repos (alongside the current spec versions), and agent-framework releases (new GitHub releases of ~20 agent frameworks and provider SDKs). Filter with event_type. Forward-only log fed by a daily 10:17 UTC capture.)","premiumAiCompaniesByTicker":"/api/premium/ai-companies/{ticker} (1 credit, AFTA-signed; per-ticker AI intelligence envelope for the 14 AI bellwethers. One paid call returns latest 10 SEC filings, latest 10 news mentions filtered by curated aliases, strategic and equity funding rounds where the company is a lead or notable investor, plus cohort metadata. Single captured-at timestamp, 9h freshness SLA. Composes four free siblings (/api/sec/filings, /api/news, /api/funding, cohort registry) into one round trip.)","premiumX402IndexPublisher":"/api/premium/x402-index/publisher/{domain}?from=YYYY-MM-DD&to=YYYY-MM-DD (1 credit, AFTA-signed; per-publisher receipt feed for one x402-compliant domain across the inclusive date range. Returns publisher meta (domain, pay_to_wallets, first_seen), window rollup (volume_usdc, count, avg_amount, daily_series), full attribution + CC BY 4.0 license. Forensic + compliance lane for any caller building dashboards over x402 settlement data. Strict-premium prefix; anonymous Bazaar probes see a clean 402 challenge.)","premiumX402IndexSeries":"/api/premium/x402-index/series?metric=volume|count&granularity=day|hour&from=&to=&domain= (1 credit, AFTA-signed; time-series of ecosystem or per-publisher x402 settlement volume / count across a date range. domain param optional (omit for ecosystem). MVP supports granularity=day only; hour returns an empty series with an attribution note. Wave 20 Bazaar pilot.)","premiumSubstrateChangelogHistory":"/api/premium/substrate-changelog/history?from=YYYY-MM-DD&to=YYYY-MM-DD&event_type= (1 credit, AFTA-signed; full forward-only changelog of model lifecycle events (added, removed, repriced, deprecated) and agent-protocol spec versions across an inclusive date range, optionally filtered by event_type. from and to required; an empty window returns free as a no-data result. Strict-premium prefix; anonymous Bazaar probes see a clean 402 challenge.)","premiumStatusIncidentsTriage":"/api/premium/status/incidents/triage?provider=&impact=&recommended_action=&capability=&ongoing_only= (1 credit, AFTA-signed; full incident cohort + provider substring + impact/action exact filters + capability membership filter + ongoing_only flag. Sort priority: impact > recommended_action > started_at. Summary rollups by_provider, by_impact, by_recommended_action, by_capability, cards_with_failover_action.)","premiumNewsActionCards":"/api/premium/news/action-cards?capability=&urgency=&min_cost_impact=&min_security_impact=&query= (1 credit, AFTA-signed; full cohort + capability/urgency exact filters + impact \"at-or-above\" threshold filters + title/source substring search. Sort priority: urgency > security_impact > cost_impact > published. Summary rollups by_capability, by_urgency, by_cost_impact, by_security_impact, cards_with_migration_recommendation.)","codingHarnessesDates":"/api/coding-harnesses/dates (free; ordered date index of captured TerminalFeed harness snapshots for delta queries.)","premiumCodingHarnessesWeeklyDeltas":"/api/premium/coding-harnesses/weekly-deltas?days_back=&harness=&benchmark=&model=&min_abs_delta= (1 credit, AFTA-signed; compares current TerminalFeed harness snapshot to a prior snapshot (default 7d back, clamp [1, 90]). Per-(benchmark, harness, model) score + rank deltas, biggest_gainers, biggest_regressions, entered/exited combinations, per-benchmark leader_cards with leader_changed flag.)","premiumAiCryptoPulse":"/api/premium/ai-crypto-pulse?token=&setup=&min_abs_change_pct= (1 credit, AFTA-signed; joins AI-token price moves with venue-weighted funding-rate skew. Per-token setup classification: squeeze_up / chase_up / squeeze_down / chase_down / coiled / neutral. Notable movers (squeezes_up, squeezes_down, coiled, top_gainers, top_losers), summary (by_setup, breadth_pct_positive, median_change_24h_pct).)","premiumAiVelocity":"/api/premium/ai-velocity?pipeline=&language=&min_traction=&cross_only= (1 credit, AFTA-signed; AI-velocity ranking + cross-pollination over the TerminalFeed-sourced HF + GitHub trending snapshot. Per-entry traction_score (HF: likes*3 + log10(downloads+1)*10; GH: log10(stars+1)*30), on_both flag, cross_pollinated array of normalized-name matches, summary rollups hf_by_pipeline + github_by_language.)","premiumPackagesReleasesVelocity":"/api/premium/packages/releases/velocity?ecosystem=&category=&package=&min_releases_7d= (1 credit, AFTA-signed; per-package release velocity (releases_24h/7d/30d), latest bump_kind (major/minor/patch/prerelease/sideways/unknown), is_breaking_recent flag (major bump within 30d). Notable movers: recent_major_bumps, most_releases_7d, fastest_cadence_30d. Pre-1.0 minor bumps count as major per semver convention.)","premiumAiSafetyPackagesSecurityRadar":"/api/premium/ai-safety/packages/security/radar?ecosystem=&category=&package=&min_risk_score= (1 credit, AFTA-signed; per-package risk_score (0-100) over the OSV snapshot. Risk_band classification (calm/watch/hot/critical), notable_movers (top-5 by_critical_30d, by_risk_score, new_in_last_7d), summary rollups by_band + by_ecosystem.)","premiumAiSafetyIncidentsExposure":"/api/premium/ai-safety/incidents/exposure?vendor=&risk_domain=&within_days= (1 credit, AFTA-signed; exposure rollups over the AVID snapshot. Per-developer + per-deployer incident counts with recency-weighted exposure_score (1.0 last 30d, 0.5 days 31-90, 0.25 older), risk_domain + sep_view distributions, top affected artifacts. Optional substring filters and within_days window [7, 730]. AIID coverage queued via the 100MB weekly R2 snapshot path.)","premiumSecurityPackageVerdict":"/api/premium/security/package-verdict?package=&ecosystem=&version= (1 credit, AFTA-signed; GO/REVIEW/BLOCK pre-install safety verdict for one AI/ML package, fusing the known-malicious IOC list, the OSV advisory snapshot, the GHSA AI firehose, and release cadence. No-charge out_of_coverage when the package is in no TF security feed.)","premiumResilienceConcentrationVerdict":"/api/premium/resilience/concentration-verdict?providers= (1 credit, AFTA-signed; RESILIENT/EXPOSED/CRITICAL single-point-of-failure ruling over a comma-separated AI-provider set, fusing the reliability ranking with live status, plus the weakest link and the best provider to add. No-charge when no listed provider is tracked.)","premiumInferenceCostVerdict":"/api/premium/inference/cost-verdict?model=&monthly_tokens=¤t_provider= (1 credit, AFTA-signed; cheapest inference host to serve one open-weight model at a monthly token volume, per-host projected spend, throughput context, and savings vs the current host. Optional input_tokens + output_tokens for an exact split. No-charge when the model is not in the matrix.)","premiumModelsFrontier":"/api/premium/models/frontier?task= (1 credit, AFTA-signed; the Pareto-optimal set of models on a capability (TFII subscore) versus blended-price plane, with every dominated model flagged plus its dominator. Optional task=code|reasoning|creative|general.)","premiumStackDriftVerdict":"/api/premium/stack-drift-verdict?models=&packages=&protocols=&since_days= (1 credit, AFTA-signed; STABLE/WATCH/ACTION_NEEDED ruling on what moved under a declared stack in the last N days (deprecated model, breaking package bump, protocol spec bump), classified by break-risk. At least one of models, packages, or protocols required. No-charge when nothing is tracked.)","premiumModelMigrationVerdict":"/api/premium/model-migration-verdict?model=&deadline= (1 credit, AFTA-signed; MIGRATE_NOW/MIGRATE_SOON/NO_ACTION for one depended-on model: the recommended successor with cost delta, capability (TFII) delta, and days until sunset. Optional deadline=YYYY-MM-DD. No-charge when the model is in no TF source.)","agentsDirectory":"/api/agents/directory","agentsOpportunities":"/api/agents/opportunities (free; daily-refreshed scan of new GitHub repos that represent submission/distribution opportunities for TF: anthropics/openai/microsoft/modelcontextprotocol orgs + MCP/x402/skills keyword sweeps. Scored by signal_weight * recency + log10(stars). 13:30 UTC cron)","agentsReputationByWallet":"/api/agents/reputation/{wallet} (free; v0 Agent Reputation Bureau. Returns a ReputationCard with metrics, ranks, trust grade, flags, and operator-claim status. Cards rebuilt daily at 04:50 UTC from TF telemetry. 404 on unknown wallet. Premium time series at /api/premium/agents/reputation/series.)","agentsReputationByToken":"/api/agents/reputation/by-token/{prefix} (free; same shape as the by-wallet card, indexed by tf_live_ token prefix for agents who have not signed an operator claim yet)","agentsLeaderboard":"/api/agents/leaderboard?metric=reliability|spend|activity|streak|composite&window=24h|7d|30d|all&limit=1-25 (free, cohort capped at 25; full cohort on /api/premium/agents/leaderboard/full at 1 credit)","agentsBans":"/api/agents/bans (free; transparency list of every banned wallet or token-prefix with reason + evidence_url; auto-bans for Chainalysis OFAC hits)","agentsBadgeByWallet":"/api/agents/badge/{wallet}.svg (free; embeddable 200x40 SVG reputation badge with composite rank, trust grade letter, reliability %. XSS-hardened, CSP-locked, 1h edge cache)","agentsBadgeByToken":"/api/agents/badge/by-token/{prefix}.svg (free; same shape, indexed by tf_live_ token prefix)","agentsClaim":"POST /api/agents/claim with { message, signature } (free; EIP-191 signed claim binding a wallet to a display name + optional directory fields. Chainalysis-screened, Llama Guard pre-flighted, brand-allowlist gated. Returns approved | queued | banned | rejected | retry_later.)","agentsClaimRead":"GET /api/agents/claim/{wallet} (free; read the verified operator claim record for a wallet)","agentsDirectorySearch":"GET /api/agents/directory/search?skill=&service_area=&language=&available=true|false&max_rate=&min_experience=&verified=true&limit=1-25 (free; agent self-directory search. Verified-hireable members sort first. Operators self-describe; TF publishes the listing. Off-platform transactions only. TF is publisher, not facilitator.)","agentsDirectorySkills":"GET /api/agents/directory/skills (free; tally of skill tags across the active directory cohort, sorted by count desc)","agentsDirectoryCategories":"GET /api/agents/directory/categories (free; tally of service_area tags across the active directory cohort)","premiumAgentsLeaderboardFull":"/api/premium/agents/leaderboard/full?metric=&window= (1 credit, AFTA-signed; untruncated reputation leaderboard with full cards for every ranked agent. Free /api/agents/leaderboard caps at 25.)","jobsBrowse":"/api/jobs (free; up to 25 active agent-work listings, newest first; ?limit=1-25&category=&q=. Listings are third-party content; TensorFeed is a listing and discovery service and never a party to any transaction)","jobsById":"/api/jobs/{id} (free; single listing; 404 on unknown or removed)","jobsPremium":"/api/premium/jobs (1 credit, AFTA-signed; full and filtered cohort ?category=&q=&status=active|filled|closed|expired; removed listings are never served)","jobsPost":"POST /api/jobs (tier 3, 5 credits about $0.10; requires a prepaid credits bearer token, the per-call x402 path is not accepted for writes; body is a free-text listing plus an EIP-191 signature, nonce, and signed_at; gated by schema allowlist, signed_at window, signature recovery to the poster wallet, single-use nonce, and Chainalysis OFAC fail-closed; settlement for the work is peer-to-peer off-platform; a rejected post is never charged and returns a signed no-charge receipt)","jobsClose":"POST /api/jobs/{id}/close (the original poster signs an EIP-191 close message, action-pinned and nonce single-use, no payment, marks the listing filled)","agentActivity":"/api/agents/activity","stats":"/api/stats (free; lifetime count of successful credit-debited premium API calls served, each returning a signed AFTA receipt when the receipt key is provisioned. Excludes free and crawler traffic. Edge-cached 60s.)","chaosStats":"/api/chaos/stats","podcasts":"/api/podcasts","trendingRepos":"/api/trending-repos","health":"/api/health","history":"/api/history","historySnapshot":"/api/history/{YYYY-MM-DD}/{type}","historyPricingSeries":"/api/history/pricing/series?model=&days=1-7 (free, 7-day cap)","historyBenchmarksSeries":"/api/history/benchmarks/series?model=&benchmark=&days=1-7 (free, 7-day cap)","historyStatusUptime":"/api/history/status/uptime?provider=&days=1-7 (free, 7-day cap)","historyNews":"/api/history/news?date=&limit=1-25 (free, capped at 25 articles per day; full daily snapshot at /api/premium/history/news/full)","historyNewsSources":"/api/history/news/sources?date= (free; per-source RSS poll reliability rollup for one UTC day)","historyNewsDates":"/api/history/news/dates (free; ordered list of UTC dates with a daily news snapshot)","historyNewsSourcesDates":"/api/history/news/sources/dates (free; ordered list of UTC dates with a source-health rollup)","historyNewsClusters":"/api/history/news/clusters?date=&min_sources=1-50 (free; story-level corroboration clusters for a UTC date with embedding-based grouping. Top 25 returned with optional source-count filter)","historyNewsClustersDates":"/api/history/news/clusters/dates (free; ordered list of UTC dates with cluster data)","securityCVEById":"/api/security/cve/{CVE-id} (free; lazy-fetch a single CVE Record v5.2 from MITRE, 7-day cache. License: MITRE CVE Terms of Use, commercial redistribution permitted)","securityCVERecent":"/api/security/cve/recent?limit=1-100 (free; ring buffer of CVE IDs added in cvelistV5 commits over the last ~24h)","securityCVEByDate":"/api/security/cve/by-date/{YYYY-MM-DD} (free; CVE IDs added in cvelistV5 commits on one UTC day)","securityCVEDates":"/api/security/cve/dates (free; ordered list of UTC dates with CVE-by-date data)","securityKEV":"/api/security/kev?limit=1-50 (free; CISA Known Exploited Vulnerabilities, 50 most-recent. Full catalog at /api/premium/security/kev/full. License: US Gov public domain)","securityKEVById":"/api/security/kev/{CVE-id} (free; single KEV entry by CVE ID, or 404 if the CVE is not in the catalog)","securityKEVAdded":"/api/security/kev/added/{YYYY-MM-DD} (free; KEV entries with dateAdded on one UTC day)","securityKEVDates":"/api/security/kev/dates (free; ordered list of UTC dates with KEV-added data)","securityEPSSById":"/api/security/epss/{CVE-id} (free; current EPSS exploitation-likelihood score for a CVE, lazy-fetched from FIRST.org with 24h cache. License: free for any use per FIRST.org policy)","securityEPSSTop":"/api/security/epss/top?limit=1-50 (free; top-N CVEs by current EPSS score)","securityOSVById":"/api/security/osv/{advisory-id} (free; lookup OSV.dev advisory by GHSA / CVE / PYSEC / RUSTSEC / etc id, lazy-fetched and cached 24h. License: Apache-2.0; attribution preserved on every response)","securityOSVPackage":"/api/security/osv/package?ecosystem=&name=&version= (free; OSV.dev advisories affecting one package version. Ecosystems: PyPI, npm, Go, crates.io, Maven, NuGet, RubyGems, Packagist, Hex, Pub, Hackage, Linux, etc)","securityOSVEcosystems":"/api/security/osv/ecosystems (free; supported OSV ecosystem identifiers)","securityVulnrichment":"/api/security/vulnrichment/{CVE-id} (free; CISA Vulnrichment enrichment for one CVE - CWE mappings, CVSS, exploitation evidence, KEV cross-refs - lazy-fetched from cisagov/vulnrichment, cached 7d. License: US Gov public domain. Pair with /api/security/cve/{id} for the MITRE record)","ssvcVerdictPreview":"/api/preview/security/ssvc-verdict?cve=CVE-YYYY-NNNNN (free, 10/IP/day; the three CISA SSVC decision points plus tree provenance, with the computed decision, the Mission and Well-being envelope, and the reasoning redacted)","ssvcVerdictVerdict":"/api/premium/security/ssvc-verdict?cve=CVE-YYYY-NNNNN (1 credit, AFTA-signed; the CISA SSVC Coordinator decision (Act, Attend, Track, or Track*) computed from the recorded decision points, returned as the full low/medium/high Mission and Well-being envelope with a per-level reasoning trace. Plus a kev_cross_check overlay that flags when the recorded Exploitation understates a CVE now on the CISA KEV catalog and recomputes the decision under active exploitation, leaving the CISA decision unchanged. Derived from CISA Vulnrichment, US Government public domain.)","securityAiSupplyChainIocs":"/api/security/ai-supply-chain-iocs.json (free; daily-refreshed feed of publicly-disclosed malicious npm + PyPI packages relevant to AI / MCP / LLM operators. Each entry cites its primary source (GHSA). Posture: republish + cite; TF does not detect, attribute, or actively scan. License: GitHub ToS + TF attribution; primary source authority always wins)","premiumSecurityGhsaAiFeed":"/api/premium/security/ghsa/ai-feed (1 credit; broader companion to the free supply-chain IOC feed. All GHSA advisory types (reviewed/unreviewed/malware) across all ecosystems (npm, pip, RubyGems, Maven, Go, Composer, NuGet, Rust, etc.), filtered to the same AI keyword list. Adds derived severity_band, age_days, ai_relevance.confidence per entry plus by_severity / by_ecosystem / by_type aggregates. Refresh every 6h. Posture: republish + derive + cite; primary source authority always wins.)","feedModelPricing":"/api/feeds/model-pricing (free; agent-sourced model pricing observations published by the cold-start gig flywheel. Each row was submitted with a primary-source source_url, validated at intake, and accepted by a human reviewer. Returns observations (newest accepted first), latest-per-(model,vendor), and a summary. Optional ?model=&vendor=&limit=. Provenance-distinct from the curated TF pricing catalog; source_url is the authority)","freeTrialStatus":"/api/free-tier/status (free; self-service quota check. Returns the caller IP's current premium-trial state: used today, remaining today, resets_at. Each IP gets 100 free premium API calls per 24h rolling window, no auth required, applied to every /api/premium/* endpoint. Excess returns canonical x402 V2 challenge)","wantlistGet":"/api/wantlist (free, GET; aggregated AI-agent wantlist. Returns the most-recent 200-item rolling window of submissions, top topics by count, and request-type breakdown. Items expire after 30d. Pass ?recent=N to control how many items are hydrated, capped at 100)","wantlistPost":"/api/wantlist (free, POST; submit what data you wish TF served. JSON body: { topic, request_type, description, contact_optional }. request_type one of: data_source, endpoint, tool, mcp, integration, other. Rate-limited to 5 submissions per IP per 24h. Anonymous by default. Patterns inform pipeline priorities)","freeWatchesCreate":"/api/watches/free (free, POST; register a webhook subscription to a watch spec without paying credits. Body: { spec, callback_url, secret?, fire_cap? }. 5 watches per IP, 25 fires per watch, 30-day TTL. Same delivery infrastructure as paid /api/premium/watches: HMAC-signed POST to callback_url when the spec fires. Spec types: price, status, digest, leaderboard_rank, macro_indicator (see /api/premium/watches docs for shapes))","freeWatchesList":"/api/watches/free (free, GET; list watches for the caller IP)","freeWatchesItem":"/api/watches/free/{id} (free, GET|DELETE; manage a watch from the same IP that created it)","premiumDecisionVerified":"/api/premium/news/decision-verified?cluster_id=&date= (1 credit; structured verification scores for a single corroboration cluster: verification_tier (single|limited|moderately-corroborated|broadly-verified|widely-reported), source_diversity_score, time_span_hours, per-source breakdown, AFTA-signed receipt over the source set. Pair with /api/history/news/clusters?date= to discover cluster_ids)","premiumDecisionVerifiedSearch":"/api/premium/news/decision-verified/search?q=&since=&until=&min_sources=1-50&limit=1-100 (1 credit; search recent days for clusters whose hero title matches q (substring + token-overlap), filtered by min_sources, sorted by match score then source count. Default lookback 30 days; max 90)","secEdgarSearch":"/api/sec/edgar/search?q=&forms=10-K,10-Q,8-K&from=YYYY-MM-DD&to=YYYY-MM-DD&limit=1-50&page=1-100 (free; SEC EDGAR full-text search across the entire filings corpus since 1990s. License: US Gov public domain. Pair with /api/sec/company-tickers for ticker-to-CIK lookup)","secEdgarSubmissions":"/api/sec/edgar/submissions/{cik} (free; recent filings + entity metadata for one CIK. Accepts numeric CIK in any zero-padding form, or CIK0000320193 prefixed form)","climatePowerDaily":"/api/climate/power/daily?latitude=&longitude=¶meters=&start=YYYYMMDD&end=YYYYMMDD&community=AG|RE|SB (free; NASA POWER daily meteorological + solar data for one point. License: open access US Gov public domain. Range capped at 365 days)","climatePowerParameters":"/api/climate/power/parameters (free; curated NASA POWER parameter catalog with units and longnames)","climateEarthquakes":"/api/climate/earthquakes?magnitude=significant|4.5|2.5|1.0|all&period=hour|day|week|month&limit=1-500 (free; USGS Earthquake Hazards Program pre-built summary feeds. License: US Gov public domain. Returns flattened earthquake list with id, magnitude, place, time, depth, lat/lon, tsunami flag, USGS detail URL. Cache TTL scales with feed window)","climateWeatherAlerts":"/api/climate/weather-alerts?area=US-state-code&event=NWS-event-name&severity=Extreme|Severe|Moderate|Minor|Unknown&urgency=Immediate|Expected|Future|Past|Unknown&status=actual|exercise|system|test|draft&limit=1-500 (free; NWS Active Weather Alerts. US-only coverage. License: US Gov public domain. Returns flattened alerts list with id, event, severity, urgency, headline, description, areaDesc, sent/effective/expires/ends, sender_name, web URL. 60s cache TTL since active-alert state changes minute by minute)","mcpHttp":"/api/mcp (free; hosted MCP Streamable HTTP transport, JSON-RPC 2.0 over POST. Compatible with Anthropic Claude Code, vertical agent repos, claude.ai connectors, and other MCP-compliant clients. GET returns discovery info; POST expects JSON-RPC envelope. Serves a curated subset of 32 tools (news, status, models, MITRE CVE, CISA KEV, EPSS, OSV.dev, SEC EDGAR search + submissions + ticker lookup, openFDA, EIA series, USGS earthquakes, NWS weather alerts, AI papers, agent-ecosystem opportunities, and the signed route_verdict premium tool); the full 61-tool set ships on the npx stdio server @tensorfeed/mcp-server)","healthFDADrugEvents":"/api/health/fda/drug/events?search=&limit=1-100&skip=&sort= (free; FDA Adverse Event Reporting System (FAERS), 10M+ records. License: CC0)","healthFDADrugLabels":"/api/health/fda/drug/labels?search=&limit=1-100&skip=&sort= (free; structured drug labels in SPL format)","healthFDADrugRecalls":"/api/health/fda/drug/recalls?search=&limit=1-100&skip=&sort= (free; FDA drug enforcement reports / recalls)","healthFDAFoodRecalls":"/api/health/fda/food/recalls?search=&limit=1-100&skip=&sort= (free; FDA food enforcement reports / recalls)","healthFDADeviceEvents":"/api/health/fda/device/events?search=&limit=1-100&skip=&sort= (free; FDA MAUDE device adverse events)","healthFDACategories":"/api/health/fda/categories (free; directory of supported openFDA categories with descriptions)","economyEIASeries":"/api/economy/eia/series?route=&frequency=&start=&end=&length=1-5000&data=value (free; EIA Open Data series. Routes: petroleum/pri/spt, petroleum/pri/gnd, natural-gas/pri/sum, electricity/retail-sales, electricity/electric-power-operational-data, total-energy. License: US Gov public domain)","economyEIACategories":"/api/economy/eia/categories (free; curated EIA route catalog with descriptions and example filters)","statusLeaderboard":"/api/status/leaderboard?days=1-7 (free, 7-day cap; cross-provider uptime ranking, minute-resolution counters)","uptimeBadge":"/api/badge/uptime/{slug} (free SVG; embeddable shields.io-style uptime badge for any monitored provider; 7-day rolling)","uptimeSeries":"/api/uptime/series?provider={slug}&days=1-7 (free, 7-day cap; daily uptime breakdown for a single provider)","mcpRegistrySnapshot":"/api/mcp/registry/snapshot","x402RegistrySnapshot":"/api/x402-registry/snapshot (free; live index of x402-compatible publishers, crawled daily from each domain's /.well-known/x402 manifest. Each entry carries status, x402 version, publisher metadata, paid + free endpoint counts, payment wallet, accepts summary, and an AFTA federation flag. Inclusion is not an endorsement; agents must verify wallets on-chain.)","papersAiTrending":"/api/papers/ai-trending","papersArxivRecent":"/api/papers/arxiv-recent","hfTrending":"/api/hf/trending","hfLeaderboard":"/api/hf-leaderboard/latest?limit=50&min_average= (free; daily snapshot of the Hugging Face Open LLM Leaderboard v2: rank, model_id, params_b, precision, license, base_model, type, average, IFEval/BBH/MATH-Lvl-5/GPQA/MUSR/MMLU-PRO scores. Captured at 04:45 UTC from the open-llm-leaderboard/contents dataset, CC-BY-SA.)","issuesHot":"/api/issues/hot","redditTrending":"/api/reddit/trending","openrouterModels":"/api/openrouter/models","aiTrainingCompute":"/api/ai/training-compute (free; daily snapshot of the Epoch AI Models dataset: per-model training compute in FLOP, parameters, training dataset size, training compute cost in 2023 USD, training power draw, frontier flag, org, domain, country, accessibility, primary-source link. Fills the AI training-compute gap; complements /api/models. License: Epoch AI CC-BY-4.0, attribution in payload. Daily snapshots compound for a future premium compute-trend series.)","papersHFDaily":"/api/papers/hf-daily","today":"/api/today (composite morning brief, optional ?sections=news,papers,hf,community,inference,status&limit=1-10)","probeLatest":"/api/probe/latest","gpuPricing":"/api/gpu/pricing","gpuPricingCheapest":"/api/gpu/pricing/cheapest?gpu=H100&type=on_demand|spot","sports":"/api/sports (league directory; nfl live, nba/mlb/nhl planned)","sportsNflTeams":"/api/sports/nfl/teams?conference=AFC|NFC&division=East|North|South|West","sportsNflTeamItem":"/api/sports/nfl/teams/{id} (e.g. sf, kc, nyj)","sportsNflNews":"/api/sports/nfl/news?limit=&team= (RSS-aggregated, 200-char snippet + link)","sportsMlbTeams":"/api/sports/mlb/teams?league=AL|NL&division=East|Central|West","sportsMlbTeamItem":"/api/sports/mlb/teams/{id} (e.g. nyy, lad, sf)","sportsMlbNews":"/api/sports/mlb/news?limit=&team= (RSS-aggregated, 200-char snippet + link)","sportsNflPlayers":"/api/sports/nfl/players?team=&position=&status=&q=&limit= (nflverse CC-BY-4.0)","sportsNflPlayerItem":"/api/sports/nfl/players/{gsis_id} (e.g. 00-0036971)","sportsNflSchedule":"/api/sports/nfl/schedule?season=&week=&team=&limit= (nflverse CC-BY-4.0)","secCompanyTickers":"/api/sec/company-tickers?q=&ticker=&limit= (US SEC EDGAR public-domain ticker -> CIK -> company-name mapping; ~10k entries)","secCompanyTickerItem":"/api/sec/company-tickers/{ticker_or_cik} (e.g. AAPL, 320193, 0000320193, CIK0000320193)","npmAITrending":"/api/packages/npm/ai-trending?category=llm-sdk|agent-framework|rag|inference|evals|tooling|mcp&limit= (curated, weekly downloads via api.npmjs.org)","pypiAITrending":"/api/packages/pypi/ai-trending?category=llm-sdk|agent-framework|rag|inference|evals|observability|tooling|mcp&limit= (curated, monthly downloads via pypistats.org / Linehaul / PyPI BigQuery public dataset)","researchInstitutionsAI":"/api/research/institutions/ai?country=&type=&limit= (OpenAlex CC0; top institutions by AI-tagged publications, last 365 days)","researchEmergingKeywords":"/api/research/emerging-keywords (free; top-25 preview of multi-word keyphrases across recent arXiv AI abstracts ranked by recent-vs-baseline lift. Cached 1800s. Full top-50 is paid /api/premium/research/emerging-keywords.)","researchCitationVelocity":"/api/research/citation-velocity (free; top-25 preview of AI papers from the last 2 years ranked by the share of citations that arrived in the most recent year. OpenAlex CC0, cross-checked against Semantic Scholar. Cached 1800s.)","researchAuthors":"/api/research/authors (free; top-25 preview of AI researchers by trailing-365-day publication volume, with h-index, citation count, affiliation, ORCID, and AI-publication share. OpenAlex CC0. Cached 1800s.)","researchConferenceAcceptances":"/api/research/conference-acceptances (free; notable-tier Oral and Spotlight accepted papers from ICLR, NeurIPS, ICML via OpenReview public metadata: title, authors, decision tier, area, keywords, clipped abstract, forum_url. Cached 1800s.)","researchNlpProceedings":"/api/research/nlp-proceedings (free; recent ACL, EMNLP, NAACL papers via the ACL Anthology: title, authors, clipped abstract, Anthology url. Abstracts CC-BY, link and summarize only. Cached 1800s.)","researchLabBlogs":"/api/research/lab-blogs (free; recent posts from major AI lab and academic research blogs (Google DeepMind, Google Research, Berkeley BAIR, MIT News AI, Hugging Face), newest-first: title, source, clipped snippet, date, link. Cached 1800s.)","researchMilestones":"/api/research/milestones (free; top-25 preview of arXiv papers from the last 30 days flagged is_milestone_candidate by the TensorFeed offline extraction pipeline, each with the named benchmark plus delta, model release, or architecture behind the flag. Cached 1800s. Full set is paid /api/premium/research/milestones.)","economyBLSIndicators":"/api/economy/bls/indicators?category=inflation|employment|wages|labor-force|jolts (US Bureau of Labor Statistics, public domain; CPI, unemployment, payrolls, JOLTS, etc., 24-month history with MoM delta)","economyFREDIndicators":"/api/economy/fred/indicators?category=rates|gdp|money|housing|fx|commodities (Federal Reserve Economic Data, public domain; fed funds, 10Y/2Y treasuries + spread, GDP, M2, mortgage rate, USD index, oil; native frequency per series)","policyAIRegistry":"/api/policy/ai/registry?jurisdiction=US-Federal|US-State|EU|UK|China|International&type=executive-order|statute|regulation|guidance|declaration|agency-action&status=active|phased|pending|rescinded|vetoed|proposed&scope=transparency|safety|high-risk|deepfakes|export-controls|...","fundingPortfolio":"/api/funding/portfolio?silicon_dependency=nvidia|tpu|trainium|mi400|maia|mixed&type=private-equity|public-equity|compute-commitment|capacity-partnership&from=&to=&since=&until= (free; hand-curated AI capital-commitment registry tagged with recipient silicon dependency. Sources: SEC filings, hyperscaler press releases, reputable trade reporting. Each entry carries source_urls. Returns summary aggregates by silicon dependency, type, and investor.)","premiumFundingExposure":"/api/premium/funding/exposure (1 credit; derived metrics over the free /api/funding/portfolio: silicon-vendor concentration shares, per-investor circular-loop classification (fully-circular / partial-loop / agnostic) using investor->silicon mapping for Nvidia/Google/Amazon/Microsoft/AMD, top recipients by inbound capital, co-investor pairs that both hold stakes in the same recipient.)","fundingFederalSummary":"/api/funding/federal/summary (free; full federal AI spending snapshot for a curated AI-vendor cohort: per-vendor totals, award counts, the most recent award date per vendor, top awarding agencies, plus cohort-wide totals and the top 25 recent awards. Source USAspending.gov, public domain under the DATA Act. Precomputed daily.)","fundingFederalRecent":"/api/funding/federal/recent (free; the 25 newest dated federal contract and grant awards across the AI-vendor cohort, each with recipient, amount, awarding agency, award type, and date. Source USAspending.gov, public domain. Precomputed daily.)","premiumFundingFederalMomentum":"/api/premium/funding/federal/momentum (1 credit, AFTA-signed; one signed leadership and concentration ruling over the federal spending snapshot. Names the cohort leader and its share of total tracked federal AI award dollars, the top-2 spend concentration, the leading awarding agency, and the vendors with a dated award inside the last 120 days, plus echoed cohort totals. 36h freshness SLA, no-charge when stale.)","procurementAiContracts":"/api/procurement/ai-contracts (free; the government AI procurement snapshot across the whole federal market, not a curated cohort: a keyword search of USAspending award descriptions for AI terms over the trailing 180 days, rolled up by agency demand, by vendor with an emerging-vendor flag, plus totals, unique counts, and the 25 newest dated awards. Source USAspending.gov, public domain under the DATA Act. Precomputed daily; cold-start returns an empty 200, never 503.)","premiumProcurementAiContractsDemand":"/api/premium/procurement/ai-contracts/demand (1 credit, AFTA-signed; one signed demand read over the free /api/procurement/ai-contracts snapshot. Agency concentration (top-agency share of tracked AI award dollars plus the Herfindahl-Hirschman Index over ranked agencies), the emerging contractors winning AI work outside the known vendor cohort, and the top buying agencies, with echoed total dollars. captured_at is the real snapshot data time; no-charge when the snapshot is not yet captured.)","procurementAiOpportunities":"/api/procurement/ai-opportunities (free; open US federal AI contract opportunities from SAM.gov, the open-solicitation sibling of /api/procurement/ai-contracts. A title-keyword search for AI terms across every agency over the trailing 90 days, rolled up by agency and set-aside, with a closing-soon preview and the 25 newest postings. The full ranked open pipeline is the paid sibling. Source SAM.gov, public domain. Precomputed daily; cold-start returns an empty 200, never 503.)","federalAiPolicy":"/api/federal-ai-policy (free; US federal AI policy tracker across two layers. Executive and agency actions from the Federal Register (rules, proposed rules, notices, presidential documents) whose title names an AI term, rolled up by agency and document type with the 15 newest as a preview; plus AI-named federal bills from GovInfo. License: US Gov public domain. The full ranked document and bill lists are the premium read /api/premium/federal-ai-policy. Precomputed daily; cold-start returns an empty 200, never 503.)","premiumProcurementAiOpportunitiesDeadlines":"/api/premium/procurement/ai-opportunities/deadlines (1 credit, AFTA-signed; the full ranked pipeline of open federal AI solicitations over the free /api/procurement/ai-opportunities snapshot, sorted by response deadline with days_remaining on each, plus the echoed agency and set-aside rollups. captured_at is the real snapshot data time; no-charge when the snapshot is not yet captured.)","premiumFederalAiPolicy":"/api/premium/federal-ai-policy (1 credit, AFTA-signed; the full ranked list of AI-related US Federal Register actions (rules, proposed rules, notices, presidential documents) plus AI-named federal bills (GovInfo), with agency and document-type rollups, over the free /api/federal-ai-policy snapshot. captured_at is the real snapshot data time; 36h freshness SLA, no-charge when stale or not yet captured.)","exportControlsAi":"/api/export-controls/ai (free; classified US BIS AI and advanced-computing export-control actions (Entity List changes, license and threshold rules) from the Federal Register. Returns by_category counts plus the 30 most recent classified events: Entity List additions, advanced-computing license and threshold rules, due-diligence and model-weights measures. Source federalregister.gov, public domain; TensorFeed editorial classification. Precomputed daily; cold-start returns an empty 200, never 503.)","premiumExportControlsAiHistory":"/api/premium/export-controls/ai/history?from=YYYY-MM-DD&to=YYYY-MM-DD&category= (1 credit, AFTA-signed; full filterable history of AI export-control actions by date range and category. Filters the BIS Federal Register snapshot by inclusive publication-date range and category (entity-list, compute-threshold, license-policy, due-diligence, model-weights, other). captured_at is the real snapshot data time; no-charge when the snapshot is missing or the filtered window is empty. Strict-premium prefix; anonymous Bazaar probes see a clean 402 challenge.)","aiDatacenters":"/api/ai-datacenters?operator=&status=announced|under_construction|operational|expansion|paused&country=®ion=&purpose=training|inference|mixed|unknown (free; hand-curated registry of publicly announced AI datacenter projects, the gigawatt-class training and inference campuses from the labs and hyperscalers. Each entry carries disclosed power (MW), capex, status, accelerator, partners, and a source_url; power and capex are disclosed values only, null where not public. Sorted operational-first.)","premiumAiDatacentersBuildout":"/api/premium/ai-datacenters/buildout (1 credit, AFTA-signed; aggregate over the free /api/ai-datacenters registry. Disclosed power (MW) and capex totals by operator, region, and status, plus the forward commissioning calendar of sites coming online. Curated registry, no staleness SLA.)","capitalCycles":"/api/capital-cycles?era=pre_1931|modern (free; hand-curated registry of six historical technology capital buildouts (UK Railway Mania through the dotcom fiber overbuild) on a fixed metric skeleton, plus the current AI buildout mapped into the same skeleton. The only cross-era-comparable metric is peak capex as a percent of national GDP; absolute dollars and physical units are descriptive. The signed ranking and analogy verdict is premium at /api/premium/ai-capex-cycle-verdict.)","premiumAiCapexCycleVerdict":"/api/premium/ai-capex-cycle-verdict (1 credit, AFTA-signed; one signed ruling on where the current AI infrastructure capex cycle ranks against six historical technology capital buildouts measured as capex over GDP: MODERATE, ELEVATED, EXTREME, or UNPRECEDENTED, with the closest and farthest historical analog, equities-led cycles surfaced as sentiment outliers, and the post-bust dimensions that cannot be scored while the cycle is in progress. No params. Free registry at /api/capital-cycles.)","routingPreview":"/api/preview/routing","routeVerdictPreview":"/api/preview/route-verdict?task=code|reasoning|creative|general or ?model= (free, 10/IP/day; the top Route Verdict only, no runners-up or signed receipt, so an agent can evaluate the shape before paying)","stackSafetyPreview":"/api/preview/stack-safety-verdict?packages= (free, 10/IP/day; the gate + per-package verdict only, no CVE evidence, capped at 3 packages)","benchmarkTrustPreview":"/api/preview/benchmark-trust-verdict (free, 10/IP/day; trust band + score per benchmark, no per-signal detail or recommendation)","failoverPreview":"/api/preview/failover-verdict?from= (free, 10/IP/day; the failover destination + incident reason, no full candidate detail or alternatives)","guidanceDeltaPreview":"/api/preview/sec/filings/guidance-delta?accession= or ?ticker=&form= (free, 10/IP/day; the materiality_summary + per-change category/type/direction/materiality, with the verbatim quotes and values redacted)","providerReliabilityPreview":"/api/preview/provider-reliability-verdict (free, 10/IP/day; the most-dependable and riskiest picks only, no full per-provider ranking or signed receipt)","x402SettlementPreview":"/api/preview/x402-settlement-verdict (free, 10/IP/day; the momentum, concentration, and leading-publisher verdict only, no full publisher ranking or signed receipt)","x402PublisherPreview":"/api/preview/x402-publisher-verdict?domain= (free, 10/IP/day; the trust verdict and claim for one publisher only, no momentum, shared-wallet flag, or settlement evidence)","premiumRouting":"/api/premium/routing?task=code|reasoning|creative|general (1 credit; top-5 ranked models with full score breakdown, pricing, status, and component-level detail. Optional ?budget=, ?min_quality=, ?top_n=1-10, and custom weights ?w_quality=, ?w_availability=, ?w_cost=, ?w_latency=.)","premiumRouteVerdict":"/api/premium/route-verdict?task=code|reasoning|creative|general or ?model= (1 credit, AFTA-signed; the single best model to use right now, fusing pricing, contamination-discounted capability, real usage, measured p95 latency, and live incident state, plus runners-up and a signed receipt. Optional ?max_latency_p95_ms=, ?require_operational=, ?exclude_deprecated=. 30-min freshness SLA, no-charge when stale.)","stackSafetyVerdict":"/api/premium/stack-safety-verdict?packages=name@version,... (1 credit, AFTA-signed; GO/HOLD/BLOCK deploy gate per AI-stack package, fusing the ingested AI-CVE batch + CISA KEV. Up to 10 packages. Never-false-confirm: BLOCK only on exploited with no fix, HOLD on version-ambiguous, PASS on no match, UNKNOWN outside the cohort.)","benchmarkTrustVerdict":"/api/premium/benchmark-trust-verdict?benchmark= or ?category= (1 credit, AFTA-signed; is an AI benchmark a trustworthy capability signal or saturated/contaminated/near-ceiling, so down-weight a high score. Trust band + 0-100 score per benchmark, fusing contamination and saturation flags with live frontier compression, plus a down-weight recommendation and an alternative benchmark.)","failoverVerdict":"/api/premium/failover-verdict?from=<provider>&task= (1 credit, AFTA-signed; provider A degraded, recommend the best operational failover target for a task. Confirms A against live incident triage, then runs the route verdict with A and any failover_now provider excluded. Returns destination + incident reason + ranked alternatives.)","guidanceDeltaVerdict":"/api/premium/sec/filings/guidance-delta?accession= or ?ticker=&form= (1 credit, AFTA-signed; did this periodic 10-K/10-Q materially change guidance, segment outlook, or risk language vs the prior same-form filing, with the exact changed sentences quoted. Deterministic materiality_summary + full verbatim changes. Input-keyed freshness, no-charge when a newer same-form filing supersedes the delta.)","providerReliabilityVerdict":"/api/premium/provider-reliability-verdict (1 credit, AFTA-signed; ranks the frontier providers TensorFeed probes by measured operational reliability, fusing availability and tail consistency (p50 over p95) into one dependability ranking. Names the most dependable and the riskiest, ships the full per-provider ranking and a signed receipt. 30-min freshness SLA, no-charge when stale.)","x402SettlementVerdict":"/api/premium/x402-settlement-verdict?window=24h|7d|30d (1 credit, AFTA-signed; rules on the Base x402 USDC settlement market over TensorFeed's own settlement index: momentum vs the prior window of equal length, concentration by the Herfindahl index, and the leading publisher, plus the full per-publisher ranking. 10-min freshness SLA, no-charge when stale.)","x402PublisherVerdict":"/api/premium/x402-publisher-verdict?domain= (1 credit, AFTA-signed; signed trust verdict on one x402 publisher over TensorFeed's own settlement index: whether its Base payTo is actively settling, its 30-day settlement momentum, a shared-wallet risk flag, and the settlement evidence. 10-min freshness SLA, no-charge when stale.)","premiumPricingSeries":"/api/premium/history/pricing/series?model=&from=&to=","premiumBenchmarkSeries":"/api/premium/history/benchmarks/series?model=&benchmark=&from=&to=","premiumStatusUptime":"/api/premium/history/status/uptime?provider=&from=&to=","premiumNewsHistoryFull":"/api/premium/history/news/full?date= or ?from=&to= (1 credit; full untruncated daily news snapshots, single-date or range up to 30 days)","premiumNewsSourceHealth":"/api/premium/history/news/source-health?from=&to= (1 credit; per-source RSS reliability series up to 90 days)","premiumSecurityCVERange":"/api/premium/security/cve/range?from=&to= (1 credit; CVE IDs added across a UTC date range, max 30 days)","premiumSecurityKEVFull":"/api/premium/security/kev/full (1 credit; full untruncated CISA KEV catalog ~1500+ entries)","premiumSecurityKEVSeries":"/api/premium/security/kev/series?from=&to= (1 credit; daily KEV catalog additions across a date range, max 90 days)","premiumSecurityEPSSSeries":"/api/premium/security/epss/series?cve_id= (1 credit; full historical EPSS time-series for one CVE)","premiumSecurityEPSSTop":"/api/premium/security/epss/top?date=&limit=1-100 (1 credit; top-N highest-EPSS CVEs as of any UTC date)","premiumCleanCVE":"/api/premium/clean/cve/{CVE-id} (1 credit; LLM-ready CVE record: ~80% token reduction vs raw MITRE v5.2, with derived severity_band, deduped CWEs, flat affected_products, top references)","premiumCleanKEV":"/api/premium/clean/kev/{CVE-id} (1 credit; LLM-ready KEV entry with normalized ransomware_use enum and extracted notes_urls)","premiumCleanEPSS":"/api/premium/clean/epss/{CVE-id}?series=true|false (1 credit; LLM-ready EPSS score with derived risk_band; optional series=true returns first/min/max summary instead of full series)","premiumSecurityVerifiedCVE":"/api/premium/security/verified/{CVE-id} (1 credit; cross-database CVE verification: composes MITRE CVE + CISA KEV + FIRST.org EPSS + OSV.dev + CISA Vulnrichment into one fact card with confirmed_by array and corroboration_count. The single-call anti-hallucination lookup for security agents)","premiumHistoryNewsClustersFull":"/api/premium/history/news/clusters/full?date= or ?from=&to= (1 credit; full untruncated cross-source story clusters, single-date or 30-day range)","premiumHistoryNewsVerified":"/api/premium/history/news/verified?date= or ?from=&to=&min_sources=2-50 (1 credit; the verified feed - story clusters with N+ independent sources corroborating; default min_sources=4)","premiumStatusLeaderboard":"/api/premium/status/leaderboard?from=&to= (1 credit; full date range, includes incident_count + mttr_minutes per provider)","premiumWatchesCreate":"POST /api/premium/watches (1 credit per registration)","premiumWatchesList":"GET /api/premium/watches","premiumWatchesItem":"GET|DELETE /api/premium/watches/{id}","premiumAgentsDirectory":"/api/premium/agents/directory?category=&status=&open_source=&capability=&sort=&limit=","premiumNewsSearch":"/api/premium/news/search?q=&from=&to=&provider=&category=&limit=","vrNews":"/api/vr/news?category=&limit= (free; sourced from vr.org)","vrOriginals":"/api/vr/originals?limit= (free; VR.org Original editorial)","aftaAdopters":"/api/afta/adopters (free; machine-readable AFTA adopter directory; not authoritative)","premiumCostProjection":"/api/premium/cost/projection?model=opus-4-7,gpt-5-5&input_tokens_per_day=&output_tokens_per_day=&horizon=monthly","premiumProviderDeepDive":"/api/premium/providers/{name}","premiumCompareModels":"/api/premium/compare/models?ids=opus-4-7,gpt-5-5,gemini-3","premiumWhatsNew":"/api/premium/whats-new?days=1&news_limit=10","premiumWhatsNewPro":"/api/premium/whats-new/pro?days=1&news_limit=10 (10 credits, AFTA-signed; pro tier of the morning brief. Same 24h base payload plus Claude Haiku 4.5 generated analyst summary, 1-5 cited key takeaways, and 1-3 recommended actions targeted by agent class. Every claim cites by stable basis ID; citations are server-side validated, so the agent never sees a hallucinated reference.)","premiumPolicyTimeline":"/api/premium/policy/timeline?days_back=&days_forward=&jurisdiction= (1 credit; forward + backward calendar over the AI policy registry with relative-to-now classification, next-3-milestones, days-until-effective per entry)","premiumPackagesPyPIMomentum":"/api/premium/packages/pypi/momentum (1 credit; momentum + velocity ratio per AI/ML PyPI package over the free trending snapshot, with direction classification, notable-movers, by-category counts. npm momentum follows once rolling snapshot history accumulates.)","premiumResearchVelocity":"/api/premium/research/velocity (1 credit; per-institution velocity over the OpenAlex 365-day baseline + fresh 30-day window, with direction classification, notable-movers, by-country and by-type breakdowns)","premiumResearchAuthors":"/api/premium/research/authors (1 credit; top 100 AI authors ranked by AI publication volume in the trailing 365 days. Enriched with h_index, i10_index, cited_by_count, primary affiliation (institution + country), ORCID, derived ai_share_pct (AI works as share of total). OpenAlex CC0. Daily refresh.)","premiumResearchCitationVelocity":"/api/premium/research/citation-velocity (1 credit; top 100 recent AI papers ranked by share of total citations gained in the most recent calendar year. Papers published in the last 2 years with 3+ citations. Returns title, year, total + latest-year citations, share, DOI, venue, first 3 authors, primary affiliation. OpenAlex CC0. Daily refresh.)","premiumApisGuruAiFeed":"/api/premium/apis-guru/ai-feed (1 credit; AI-relevant entries from the APIs.guru public directory of 2400+ OpenAPI specs, filtered via curated keyword match on provider + title + description. Per-entry first_seen_at against our daily snapshot history so agents can diff \"what new AI APIs appeared in the last 7 days.\" Includes by_provider counts + a separate newly_added_last_7d array. CC-BY-SA 4.0; primary source links preserved.)","premiumResearchMilestones":"/api/premium/research/milestones (1 credit; last 30 days of arXiv preprints flagged is_milestone_candidate by an offline Qwen 3.6 27B per-paper extraction pass. Each paper carries structured reasoning stating the named benchmark + quantified delta, model release, or novel architecture justification. Conservative; false positives are worse than false negatives.)","premiumCveKevExploitationTimeline":"/api/premium/cve/kev-exploitation-timeline?vendor= (1 credit, strict-premium; per-vendor exploited-in-the-wild history from the cve-kev-2026 dataset. One vendor per call: NVD disclosure date, days to CISA KEV listing, vendor patch status, ransomware association, severity distribution, mean and fastest KEV-add lag. Offline per-CVE extraction + deterministic per-vendor rollup. v1 capped slice, expandable. NVD + CISA KEV US public domain.)","premiumSecurityCorroborated":"/api/premium/security/corroborated?package= (1 credit, strict-premium; the full corroborated GHSA advisory set for one package in one call. Per advisory: the deterministic affected-package vs authoritative-OSV verdict (never-false-confirm), plus KEV/EPSS/SSVC/OSV enrichment joined ONLY by a verbatim-verified CVE id, plus verbatim version/severity context, each in an explicit provenance bucket. We corroborate the package and enrich by verified CVE id; we do NOT verify the advisory exploitation/severity claims. Quarantined records never served. Offline extraction + deterministic corroboration + verbatim-CVE guard.)","premiumResearchEmergingKeywords":"/api/premium/research/emerging-keywords (1 credit; top-50 multi-word keyphrases across recent arXiv abstracts ranked by recent-vs-baseline lift, last 30d frequency over prior 90d, smoothed. Each entry carries 2-5 example arxiv_ids.)","premiumResearchTopicSearch":"/api/premium/research/topic-search?subfield_tag=&methodology_bucket=&since=&until=&milestone_only=&limit=&offset= (1 credit; structured search over the arXiv preprint corpus using TF derived taxonomy. Filters arXiv by subfield + methodology, dimensions arXiv's native search has no concept of.)","premiumResearchLabProductivity":"/api/premium/research/lab-productivity?window=&affiliation_type=&limit= (1 credit; top labs by paper count over 30d/90d/365d windows, derived from TF normalized affiliations on the offline Qwen extraction. Filter by window (30d|90d|365d, default returns all three) and affiliation_type (industry|academia|government|nonprofit|mixed). arXiv has no native concept of normalized lab attribution.)","premiumProbeSeries":"/api/premium/probe/series?provider=&from=&to=","premiumOpenRouterSeries":"/api/premium/openrouter/series?from=&to= (1 credit; daily OpenRouter cross-provider catalog drift over a 90-day window: model count, cheapest paid input/output USD-per-million floor, free-tier count, namespace breadth, plus day-over-day model add/remove churn and per-model price-change counts. OpenRouter serves only current state, so this history is TensorFeed-captured and cannot be backfilled. Default 30 days, max 90.)","premiumX402RegistrySeries":"/api/premium/x402-registry/series?from=&to= (1 credit; daily x402 publisher-registry drift over a 90-day window: reachable vs erroring publishers, federation count, network breadth, paid and free endpoint totals, agent-fair-trade declarations, plus day-over-day domains added/removed, status flips, and payment-wallet changes. A registry is current-state only, so this history is TensorFeed-captured and cannot be backfilled. Default 30 days, max 90.)","premiumHFVelocity":"/api/premium/hf/velocity?from=&to= (1 credit; daily Hugging Face download-velocity over a 90-day window: per-day top models and datasets by download delta and top Spaces by likes delta among the daily top-30, top-set entered/exited churn, plus window gainers (last minus first captured day). HF exposes only cumulative totals and a live top list, so this velocity is TensorFeed-computed and cannot be backfilled. Default 30 days, max 90.)","gpuPricingSeries":"/api/gpu/pricing/series?gpu=&from=&to= (moved from premium 2026-05-06)","premiumAttentionSeries":"/api/premium/attention/series?provider=&from=&to=","paymentInfo":"/api/payment/info","paymentPacks":"/api/payment/packs","aftaCertifyCheck":"/api/afta-certify/check?domain=","dataLicensing":"/api/data-licensing","professionalServices":"/api/services","mcpProTier":"/api/mcp/pro-tier","paymentBuyCredits":"/api/payment/buy-credits","trialCredits":"POST /api/payment/trial-credits (free; sign EIP-191, get 25 trial credits, one per wallet)","paymentConfirm":"/api/payment/confirm","paymentBalance":"/api/payment/balance","paymentUsage":"/api/payment/usage","paymentHistory":"/api/payment/history","paymentSpendCap":"/api/payment/spend-cap (GET reads, POST sets)","paymentRevoke":"POST /api/payment/revoke","paymentNoChargeStats":"/api/payment/no-charge-stats","receiptVerify":"/api/receipt/verify","aiCrawlerAccessSummary":"/api/ai-crawler-access/summary.json (free; aggregate AI crawler access map across curated domains: per-bot allow/block percentages (GPTBot, ClaudeBot, PerplexityBot, CCBot, and more), plus llms.txt and ai.txt adoption. We report stated robots.txt policy, not enforcement. No parameters.)","aiCrawlerAccessSite":"/api/ai-crawler-access/site?domain= (free; per-site robots.txt verdict for each tracked AI bot, plus llms.txt and ai.txt presence, for one domain. Required param: domain.)","aiCrawlerAccessCheck":"/api/ai-crawler-access/check?domain= (free; live on-demand robots.txt verdict for any public domain not in the tracked set: per-bot allowed/blocked/partial/unknown plus llms.txt/ai.txt presence. Rate-limited 120/min/IP, cached 1h.)","premiumAiCrawlerAccessFull":"/api/premium/ai-crawler-access/full (1 credit, AFTA-signed; full dataset: every tracked domain with per-bot robots.txt verdicts (allowed/blocked/partial/unknown) and llms.txt/ai.txt flags, plus sector rollups. 8-day freshness SLA, no-charge when stale.)","premiumAiCrawlerAccessChanges":"/api/premium/ai-crawler-access/changes?domain=&from=&to= (1 credit, AFTA-signed, strict-premium; historical flip log: when a site changed a bot from allowed to blocked (or back) or published llms.txt, within a date range. Required params: from, to (domain optional).)","agentReadySummary":"/api/agent-ready/summary.json (free; agentic-web readiness across curated domains: per-surface adoption (x402 manifest, agent.json, openapi, llms.txt, AI-bot-crawlable, ai.txt), readiness-tier distribution, and a top-25 leaderboard. Derived from the crawler-access crawl. No parameters.)","agentReadySite":"/api/agent-ready/site?domain= (free; per-domain agent-readiness profile: a transparent 0-100 score, tier, and which agent surfaces the site exposes. Required param: domain.)","premiumAgentReadyFull":"/api/premium/agent-ready/full (1 credit, AFTA-signed; full per-domain agent-readiness dataset with scores and surface flags. 8-day freshness SLA, no-charge when stale.)","premiumHfLeaderboardMovers":"/api/premium/hf-leaderboard/movers?window= (1 credit, AFTA-signed, strict-premium; period-over-period movers on the Open LLM Leaderboard v2 from TF dated snapshots: rank climbers and fallers, score deltas, models entered and exited, new per-benchmark leaders, license changes. Optional window in days, default 7. 36h SLA, no-charge under two captured days.)"},"admin":{"usage":"/api/admin/usage?window=today|7d|30d&key=<ADMIN_KEY> (paid summary + AE funnel when provisioned; legacy ?date=YYYY-MM-DD still returns one day raw rollup)","statsBackfill":"/api/admin/stats/backfill?key=<ADMIN_KEY> (GET; one-time/idempotent seed of the /api/stats lifetime counter from the persisted daily rollups)","usageDates":"/api/admin/usage/dates?key=<ADMIN_KEY>","burnToken":"/api/admin/burn-token?token=tf_live_...&key=<ADMIN_KEY>","anomalies":"/api/admin/anomalies?key=<ADMIN_KEY>&severity=warning|critical","killSwitch":"/api/admin/kill-switch?key=<ADMIN_KEY> (GET = status + audit; POST&action=on|off to flip the runtime KV-flag side. Env-secret side via wrangler secret put KILL_SWITCH_KV_WRITES.)","breaking":"/api/admin/breaking?key=<ADMIN_KEY> (GET = raw alert + is_live + audit; POST {headline, href, ttl_hours?} sets; POST {clear:true} clears. Public read at /api/breaking.)","refresh":"/api/refresh?key=<ADMIN_KEY>[&task=history|harnesses|models|mcp-registry|papers|arxiv|hf|hf-leaderboard|hot-issues|reddit|openrouter|hf-daily-papers|probe|probe-rollup|fred|bls|npm-ai|pypi-ai|openalex|openalex-authors|openalex-citation-velocity|openreview|acl|lab-blogs|s2|apis-guru-ai|nflverse|sec-tickers|sec-filings|sports-news|opportunities|ai-supply-chain-iocs|ghsa-ai-feed|agent-reputation|epoch|crawler-access|federal-ai-policy]"},"chaos_engineering":{"description":"Free, no-auth headers for testing agent fallback logic against simulated failures. No credits charged for simulated errors.","headers":{"simulate_error":"X-TensorFeed-Simulate-Error: <400-599> (returns the requested status code immediately)","simulate_latency":"X-TensorFeed-Simulate-Latency: <ms> (sleeps before normal response, capped at 10000ms)"},"response_marker":"X-TensorFeed-Simulated: true","stats_endpoint":"/api/chaos/stats (free, public, edge-cached 30s; per-UTC-day count of simulated responses by status code, lets dashboards subtract synthetic from real 5xx)"},"circuit_breaker":{"description":"Premium endpoints return 429 infinite_loop_detected if a single bearer token issues more than 20 identical requests in 60 seconds. No credits are charged when the breaker is tripped.","threshold":20,"window_seconds":60,"cooldown_seconds":120},"rate_limit":{"description":"Free public endpoints are limited to 120 requests per minute per IP. Premium bearer tokens are exempt. Every response includes RateLimit-Limit, RateLimit-Remaining, and RateLimit-Reset headers so well-behaved agents can back off programmatically.","per_ip_per_minute":120,"headers":["RateLimit-Limit","RateLimit-Remaining","RateLimit-Reset","Retry-After"],"exempt_paths":["/api/premium/*","/api/payment/*","/api/internal/*","/api/admin/*","/api/refresh"],"doc":"https://tensorfeed.ai/developers/agent-payments#rate-limits"},"prompt_injection_sanitization":{"description":"Aggregated text on the agent-facing endpoints is scrubbed at read time. Strips ASCII control chars, bidi/zero-width spoofing, and neutralizes role-confusion tokens (<|im_start|>, [INST], \"system:\" line prefixes, \"ignore previous instructions\"). Title/snippet are length-capped.","enabled_on":["/api/news","/api/agents/news","/feed.xml","/feed.json","/feed/*.xml"],"doc":"https://tensorfeed.ai/developers/agent-payments#prompt-injection-sanitization"},"agent_fair_trade":{"description":"Agent Fair-Trade Agreement (AFTA): code-enforced no-charge guarantees, Ed25519-signed receipts on every paid call, public on-chain payment rail (USDC on Base). Combined: every dollar that flows through TensorFeed has two independent attestations (the Base RPC tx record, immutable and public, and our signed receipt, verifiable and non-forgeable).","no_charge_guarantees":["5xx","circuit_breaker","schema_validation_failure","upstream_failure","stale_data","empty_result"],"receipts":{"configured":true,"algorithm":"EdDSA / Ed25519","public_key_url":"https://tensorfeed.ai/.well-known/tensorfeed-receipt-key.json"},"freshness_slas":[{"endpoint":"/api/premium/routing","max_age_seconds":null,"reason":"computed live from current pricing"},{"endpoint":"/api/premium/route-verdict","max_age_seconds":1800,"reason":"fuses live latency probes + incident triage + status; charges only when the operational layer is fresh (within 30 min)"},{"endpoint":"/api/premium/model-intelligence","max_age_seconds":172800,"reason":""},{"endpoint":"/api/premium/models/frontier","max_age_seconds":172800,"reason":""},{"endpoint":"/api/premium/model-intelligence/history","max_age_seconds":null,"reason":""},{"endpoint":"/api/premium/provider-reliability-verdict","max_age_seconds":1800,"reason":"ranks providers by measured availability and tail consistency from the TensorFeed probes; charges only when the probe layer is fresh (within 30 min)"},{"endpoint":"/api/premium/resilience/concentration-verdict","max_age_seconds":1800,"reason":"rules on single-point-of-failure exposure across a caller-supplied AI-provider set, fusing the reliability ranking with live status; charges only when the probe layer is fresh (within 30 min) and at least one listed provider is tracked"},{"endpoint":"/api/premium/x402-settlement-verdict","max_age_seconds":600,"reason":"rules on Base x402 USDC settlement momentum, concentration, and the leading publisher over the TensorFeed settlement index; charges only when the index is fresh (within 10 min)"},{"endpoint":"/api/premium/x402-publisher-verdict","max_age_seconds":600,"reason":""},{"endpoint":"/api/premium/stack-safety-verdict","max_age_seconds":864000,"reason":"GO/HOLD/BLOCK deploy gate over the ingested AI-CVE batch joined to CISA KEV; charges only when the CVE batch is fresh (within 10 days)"},{"endpoint":"/api/premium/benchmark-trust-verdict","max_age_seconds":null,"reason":"pure compute over the editorial benchmark registry plus daily benchmark scores; no staleness signal applies"},{"endpoint":"/api/premium/failover-verdict","max_age_seconds":1800,"reason":"confirms the degraded provider against live incident triage then ranks operational alternatives; charges only when the operational layer is fresh (within 30 min)"},{"endpoint":"/api/premium/cost/projection","max_age_seconds":null,"reason":"computed live from current pricing"},{"endpoint":"/api/premium/compare/models","max_age_seconds":86400,"reason":"live aggregation over current pricing/benchmarks"},{"endpoint":"/api/premium/providers","max_age_seconds":86400,"reason":"live aggregation, ~24h freshness on cataloged data"},{"endpoint":"/api/premium/agents/directory","max_age_seconds":86400,"reason":"cataloged data, refreshed ~24h"},{"endpoint":"/api/premium/news/search","max_age_seconds":1800,"reason":"news refreshes every 10 min"},{"endpoint":"/api/premium/whats-new","max_age_seconds":3600,"reason":"aggregates last 1-7 days of news + status"},{"endpoint":"/api/premium/recent","max_age_seconds":3600,"reason":""},{"endpoint":"/api/premium/whats-new/pro","max_age_seconds":21600,"reason":""},{"endpoint":"/api/premium/policy/timeline","max_age_seconds":null,"reason":"compute over editorial registry, no staleness signal"},{"endpoint":"/api/premium/packages/pypi/momentum","max_age_seconds":86400,"reason":"synthesis over the daily PyPI trending snapshot"},{"endpoint":"/api/premium/research/velocity","max_age_seconds":86400,"reason":"baseline + fresh 30-day OpenAlex fetch with 24h cache"},{"endpoint":"/api/premium/research/authors","max_age_seconds":129600,"reason":"daily OpenAlex top-100 AI authors snapshot; charges only when fresh (within 36h of the daily cron)"},{"endpoint":"/api/premium/research/citation-velocity","max_age_seconds":129600,"reason":"daily OpenAlex citation-velocity snapshot with Semantic Scholar enrichment; charges only when fresh (within 36h of the daily cron)"},{"endpoint":"/api/premium/research/milestones","max_age_seconds":604800,"reason":""},{"endpoint":"/api/premium/research/emerging-keywords","max_age_seconds":604800,"reason":""},{"endpoint":"/api/premium/research/topic-search","max_age_seconds":604800,"reason":""},{"endpoint":"/api/premium/research/lab-productivity","max_age_seconds":604800,"reason":"offline Qwen extraction rolled up into 30/90/365-day lab counts; uploaded weekly"},{"endpoint":"/api/premium/funding/exposure","max_age_seconds":604800,"reason":""},{"endpoint":"/api/premium/funding/federal/momentum","max_age_seconds":129600,"reason":""},{"endpoint":"/api/premium/procurement/ai-contracts/demand","max_age_seconds":129600,"reason":""},{"endpoint":"/api/premium/procurement/ai-opportunities/deadlines","max_age_seconds":129600,"reason":""},{"endpoint":"/api/premium/federal-ai-policy","max_age_seconds":129600,"reason":""},{"endpoint":"/api/premium/ai-datacenters/buildout","max_age_seconds":null,"reason":""},{"endpoint":"/api/premium/ai-capex-cycle-verdict","max_age_seconds":null,"reason":""},{"endpoint":"/api/premium/model-deprecations/timeline","max_age_seconds":null,"reason":""},{"endpoint":"/api/premium/stack-drift-verdict","max_age_seconds":null,"reason":""},{"endpoint":"/api/premium/model-migration-verdict","max_age_seconds":null,"reason":""},{"endpoint":"/api/premium/inference-providers/arbitrage","max_age_seconds":null,"reason":""},{"endpoint":"/api/premium/inference/cost-verdict","max_age_seconds":null,"reason":""},{"endpoint":"/api/premium/ai-safety/incidents/exposure","max_age_seconds":129600,"reason":""},{"endpoint":"/api/premium/ai-safety/packages/security/radar","max_age_seconds":129600,"reason":""},{"endpoint":"/api/premium/security/package-verdict","max_age_seconds":129600,"reason":"GO/REVIEW/BLOCK pre-install ruling fusing the known-malicious IOC list, the OSV advisory snapshot, the GHSA AI firehose, and release cadence; charges only when the daily feeds are fresh (within 36h) and the package is in coverage"},{"endpoint":"/api/premium/packages/releases/velocity","max_age_seconds":32400,"reason":""},{"endpoint":"/api/premium/ai-velocity","max_age_seconds":7200,"reason":""},{"endpoint":"/api/premium/ai-crypto-pulse","max_age_seconds":1800,"reason":""},{"endpoint":"/api/premium/coding-harnesses/weekly-deltas","max_age_seconds":129600,"reason":""},{"endpoint":"/api/premium/news/action-cards","max_age_seconds":129600,"reason":""},{"endpoint":"/api/premium/status/incidents/triage","max_age_seconds":21600,"reason":""},{"endpoint":"/api/premium/ai-cves/ai-stack-cves","max_age_seconds":864000,"reason":""},{"endpoint":"/api/premium/ai-cves/exploited-in-wild","max_age_seconds":864000,"reason":""},{"endpoint":"/api/premium/ai-cves/cve","max_age_seconds":864000,"reason":""},{"endpoint":"/api/premium/ai-crawler-access/full","max_age_seconds":691200,"reason":""},{"endpoint":"/api/premium/ai-crawler-access/changes","max_age_seconds":691200,"reason":""},{"endpoint":"/api/premium/agent-ready/full","max_age_seconds":691200,"reason":""},{"endpoint":"/api/premium/hf-leaderboard/movers","max_age_seconds":129600,"reason":""},{"endpoint":"/api/premium/history/pricing/series","max_age_seconds":null,"reason":"historical immutable"},{"endpoint":"/api/premium/history/benchmarks/series","max_age_seconds":null,"reason":"historical immutable"},{"endpoint":"/api/premium/history/status/uptime","max_age_seconds":null,"reason":"historical immutable"},{"endpoint":"/api/premium/history/news/full","max_age_seconds":null,"reason":"historical immutable"},{"endpoint":"/api/premium/history/news/source-health","max_age_seconds":null,"reason":"historical immutable"},{"endpoint":"/api/premium/security/cve/range","max_age_seconds":null,"reason":"historical immutable"},{"endpoint":"/api/premium/security/kev/full","max_age_seconds":129600,"reason":"CISA KEV catalog refreshed daily at 06:30 UTC; SLA matches the 36h cron headroom"},{"endpoint":"/api/premium/security/kev/series","max_age_seconds":null,"reason":"historical immutable"},{"endpoint":"/api/premium/security/epss/series","max_age_seconds":129600,"reason":"EPSS scores update daily at FIRST.org; SLA matches the 36h cache headroom"},{"endpoint":"/api/premium/security/epss/top","max_age_seconds":129600,"reason":"EPSS scores update daily at FIRST.org; SLA matches the 36h cache headroom"},{"endpoint":"/api/premium/security/ssvc-verdict","max_age_seconds":null,"reason":"CISA SSVC Coordinator decision computed from the Vulnrichment record (immutable per scoring, 7-day cache); no wall-clock staleness applies"},{"endpoint":"/api/premium/clean/cve","max_age_seconds":null,"reason":"LLM-ready transform of immutable CVE Record"},{"endpoint":"/api/premium/clean/kev","max_age_seconds":129600,"reason":"LLM-ready transform of CISA KEV catalog entry; SLA tracks the 36h KEV cron headroom"},{"endpoint":"/api/premium/clean/epss","max_age_seconds":129600,"reason":"LLM-ready transform of EPSS score; SLA tracks the 36h EPSS cache headroom"},{"endpoint":"/api/premium/security/ghsa/ai-feed","max_age_seconds":32400,"reason":"GHSA AI-relevant advisory firehose refreshed every 6h; charges only when fresh (within 9h of the last successful refresh)"},{"endpoint":"/api/premium/apis-guru/ai-feed","max_age_seconds":129600,"reason":"APIs.guru AI-API watch refreshed daily; charges only when fresh (within 36h of the last successful refresh)"},{"endpoint":"/api/premium/history/news/clusters/full","max_age_seconds":null,"reason":"historical immutable"},{"endpoint":"/api/premium/history/news/verified","max_age_seconds":null,"reason":"historical immutable"},{"endpoint":"/api/premium/mcp/registry/series","max_age_seconds":null,"reason":"historical immutable"},{"endpoint":"/api/premium/openrouter/series","max_age_seconds":null,"reason":"historical immutable; daily OpenRouter catalog snapshots captured by TF, cannot be backfilled"},{"endpoint":"/api/premium/x402-registry/series","max_age_seconds":null,"reason":"historical immutable; daily x402 publisher-registry snapshots captured by TF, cannot be backfilled"},{"endpoint":"/api/premium/hf/velocity","max_age_seconds":null,"reason":"historical immutable; daily HF top-30 snapshots captured by TF, day-over-day velocity cannot be backfilled"},{"endpoint":"/api/premium/substrate-changelog/history","max_age_seconds":null,"reason":""},{"endpoint":"/api/premium/export-controls/ai/history","max_age_seconds":null,"reason":""},{"endpoint":"/api/premium/probe/series","max_age_seconds":null,"reason":"historical immutable"},{"endpoint":"/api/gpu/pricing/series","max_age_seconds":null,"reason":"historical immutable"},{"endpoint":"/api/premium/watches","max_age_seconds":null,"reason":"registration write, no capture concept"},{"endpoint":"/api/premium/ai-companies","max_age_seconds":32400,"reason":""},{"endpoint":"/api/premium/sec/filings/guidance-delta","max_age_seconds":null,"reason":"periodic filings are immutable once filed (no wall-clock staleness); freshness is input-keyed, the endpoint no-charges when a newer same-form filing has superseded the served delta"},{"endpoint":"/api/premium/x402-index","max_age_seconds":600,"reason":""},{"endpoint":"/api/x402-index","max_age_seconds":600,"reason":""}],"standard_manifest":"/.well-known/agent-fair-trade.json","public_record":"/api/payment/no-charge-stats","doc":"https://tensorfeed.ai/agent-fair-trade","network":{"description":"TensorFeed and TerminalFeed share a single bearer-token + credit ledger. A token minted on either site works on both. Each site signs receipts with its own keypair.","established":"2026-04-30","host_ledger":"tensorfeed.ai","sister_sites":[{"site":"tensorfeed.ai","manifest":"https://tensorfeed.ai/.well-known/agent-fair-trade.json","manifesto":"https://tensorfeed.ai/agent-fair-trade","receipt_key":"https://tensorfeed.ai/.well-known/tensorfeed-receipt-key.json"},{"site":"terminalfeed.io","manifest":"https://terminalfeed.io/.well-known/agent-fair-trade.json","manifesto":"https://terminalfeed.io/agent-fair-trade","receipt_key":"https://terminalfeed.io/.well-known/terminalfeed-receipt-key.json"}]},"supportive_sites":{"description":"Sites that contribute upstream data to the network without running an AFTA-compliant API of their own. TensorFeed pulls from their public endpoints and re-exposes the data through TF-side AFTA-compliant endpoints; payments and credits flow through TF's host ledger.","sites":[{"site":"vr.org","role":"data_partner","vertical":"VR / AR / XR news + original editorial","contributes_to":["/api/vr/news","/api/vr/originals"],"upstream_endpoints":["https://vr.org/api/feed","https://vr.org/api/articles"],"refresh_cadence":"TF pulls hourly via cron; vr.org refreshes every 15 min upstream"}]}},"news":{"totalArticles":107,"sourcesPolled":12,"sourcesSucceeded":11,"lastUpdated":"2026-06-07T22:00:13.302Z"}}
|
|
1
|
+
{"ok":true,"site":"tensorfeed.ai","description":"AI news, model tracking, and real-time AI ecosystem data.","afta_self_description":"TensorFeed.ai is agent fair-trade certified: open pricing, automatic no-charge on 5xx, breaker, schema fail, and stale data, Ed25519-signed receipts on every paid call, inference-only license. Built with Claude (Anthropic). Standard at /.well-known/agent-fair-trade.json.","metaPremium":"/api/meta/premium (free; machine-readable catalog of every premium endpoint: path, credit cost, params, returns, free sibling, strict-premium flag. The canonical \"what can I buy\" surface for agents.)","metaOfficial":"/api/meta/official (free; canonical list of TensorFeed official surfaces and the one true payment address, for anti-impersonation. Verify any package, MCP server, repo, or payTo claiming to be TensorFeed here.)","feeds":{"rss":"/api/feed.xml","json":"/api/feed.json","research":"/api/feed/research.xml","tools":"/api/feed/tools.xml"},"api":{"news":"/api/agents/news","status":"/api/agents/status","pricing":"/api/agents/pricing","models":"/api/models","intelligence":"/api/intelligence (free; TFII Model Intelligence Index headline ranking, a 0 to 100 composite per model from public benchmarks (MMLU-Pro, HumanEval, GPQA-Diamond, MATH, SWE-bench) discounted for contamination and saturation. Free per-model field on /api/models; signed premium breakdown at /api/premium/model-intelligence.)","benchmarks":"/api/benchmarks","harnesses":"/api/harnesses","attention":"/api/attention","attentionHistory":"/api/attention/history","attentionHistorySnapshot":"/api/attention/history/{YYYY-MM-DD}","embeddings":"/api/embeddings?type=embedding|reranker","multimodal":"/api/multimodal?modality=image|video|tts|stt","vectorDbs":"/api/vector-dbs?type=managed|oss|hybrid&open_source=true","usageRankings":"/api/usage-rankings","frameworks":"/api/frameworks?language=python|typescript&category=agent-orchestration|rag|multi-agent|sdk|workflow|voice-agent|browser-agent","benchmarkRegistry":"/api/benchmark-registry?category=knowledge|math|code|multimodal|agents|long-context&status=active|saturated","openWeights":"/api/open-weights?family=Meta|DeepSeek|Mistral|Alibaba|Google|Microsoft","aiHardware":"/api/ai-hardware?manufacturer=NVIDIA|AMD|Google|AWS|Apple|Cerebras|Groq","mcpServers":"/api/mcp-servers?capability=filesystem|web-search|browser|github|slack|database&first_party=true","trainingDatasets":"/api/training-datasets?stage=pretraining|instruction-tuning|dpo|rlhf|multimodal","embodiedAi":"/api/embodied-ai?category=foundation_model|humanoid|dataset|simulator","aiLawsuits":"/api/ai-lawsuits?status=active|settled|dismissed|judgment|consolidated&claim=copyright-infringement|dmca-violation|antitrust|...&jurisdiction=US|UK|EU","x402Adopters":"/api/x402-adopters?category=publisher|sdk|gateway|reference|spec&status=live|beta|reference-impl|announced|sdk|gateway|spec","agentApis":"/api/agent-apis?category=search|web-scraping|weather|finance|maps|email|sms|payments|code-execution|ocr&has_mcp=true","agentProvisioning":"/api/agent-provisioning?status=live|pending|unknown&category=hosting|database|auth|observability|background-jobs|ai-infrastructure|cdn-edge|email","trainingRuns":"/api/training-runs?publisher=OpenAI|Anthropic|Meta|Google|DeepSeek&open_weights=true","fineTuning":"/api/fine-tuning?type=first-party|hosted&method=lora|qlora|full|dpo|rlhf","specializedModels":"/api/specialized-models?domain=code|medical|legal|finance|music|3d|retrieval|science&open_weights=true","modelCards":"/api/model-cards?lab=Anthropic|OpenAI|Google|Meta|DeepSeek","voiceLeaderboards":"/api/voice-leaderboards","marketplaces":"/api/marketplaces?category=gpts|agents|skills|models|spaces|mcp|workflows|plugins","publicLeaderboards":"/api/public-leaderboards?domain=general|code|math|reasoning|multimodal|agent|safety|voice|image|video|long-context|open-models","funding":"/api/funding?category=frontier-lab|inference|agent|coding|infra|enterprise|creative|voice|video|data&stage=seed|series-a|series-b|series-c|series-d|series-e|growth","ossTools":"/api/oss-tools?category=runtime|inference-server|fine-tuning|ui|eval|training|observability|edge","aiPolicy":"/api/ai-policy?status=active|pending|proposed|stalled&jurisdiction=EU|US|UK|China|Korea","conferences":"/api/conferences?category=research|industry|developer|community&upcoming=true","modelDeprecations":"/api/model-deprecations?provider=OpenAI|Anthropic|Google|Cohere|...&status=announced|deprecated|sunsetted","premiumModelDeprecationsTimeline":"/api/premium/model-deprecations/timeline?within_days=&provider= (1 credit, AFTA-signed; window-centered timeline over the model deprecation registry. Each entry enriched with urgency_band (within_7d / within_30d / within_60d / within_90d / within_180d / within_365d / past / future / no_date), days_until_sunset and days_since_sunset, and a resolved migration_chain hop sequence to the first still-active replacement. Summary breakdowns by_provider and by_urgency_band. within_days null returns the full registry; clamped to [7, 730].)","computeProviders":"/api/compute-providers?type=gpu-cloud|hyperscaler|ai-serverless|marketplace|specialized","inferenceProviders":"/api/inference-providers?family=Meta|DeepSeek|Mistral|Alibaba|Microsoft","inferenceProvidersCheapest":"/api/inference-providers/cheapest?model=<id>&sort=blended|input|output|tps_desc","premiumInferenceArbitrage":"/api/premium/inference-providers/arbitrage?family=&min_savings_pct= (1 credit, AFTA-signed; cross-provider arbitrage analytics over the inference-providers matrix. Per-model: cheapest_paid, most_expensive_paid, spread_usd, savings_pct, median_paid_blended, fastest_tps, cheapest_with_tps, free_tier_offers. Plus provider_rollup (cheapest_count, top_tps_count, value_score) and top_arbitrage models sorted by savings_pct desc. Default min_savings_pct=20; clamp [0,100].)","aiSafetyIncidentsAvid":"/api/ai-safety/incidents/avid?limit=&developer=&risk_domain= (free, capped at 50; raw normalized AVID snapshot. Source: avidml/avid-db, MIT. Refreshed daily 03:00 UTC.)","aiSafetyPackagesSecurity":"/api/ai-safety/packages/security?package=&ecosystem=&category= (free; per-package vulnerability history over the curated AI/ML PyPI + npm package lists. Sourced from OSV.dev (GHSA + PyPA + RustSec + Maven + npm + others). Refreshed daily 05:45 UTC.)","packagesReleases":"/api/packages/releases?ecosystem=&category=&package=&within_days= (free; latest version + last 10 release timestamps for every curated AI/ML PyPI + npm package. Sourced from pypi.org + registry.npmjs.org public JSON. Refreshed every 6h.)","aiVelocity":"/api/ai-velocity?limit= (free, capped at 30; first AFTA federation cross-call. Filters TerminalFeed.io HF + GitHub trending leaderboards to AI-relevant entries.)","aiCryptoPulse":"/api/ai-crypto-pulse (free; second AFTA federation cross-call. Pulls TerminalFeed crypto-movers + funding-rates, filters to AI-thesis token cohort (TAO, FET, RNDR, AKT, WLD, ARKM, IO, OCEAN, GRT, VIRTUAL, AI16Z, NMR, AGIX, TURBO).)","codingHarnessesLatest":"/api/coding-harnesses/latest (free; third AFTA federation cross-call. Latest snapshot of TerminalFeed coding-harness leaderboard (SWE-bench Verified, Terminal-Bench, Aider Polyglot, etc). Refreshed daily 05:25 UTC.)","newsActionCards":"/api/news/action-cards?limit= (free, capped at 25; Haiku-derived structured agent action cards over the news feed. Per article: action_summary, migration_recommendation, affected_capability, cost_impact, security_impact, urgency. Daily 08:00 UTC refresh.)","statusIncidentsTriage":"/api/status/incidents/triage?limit= (free, capped at 25; Haiku-triaged AI provider status incidents. Per card: triage_summary, impact_classification (informational/minor/major/critical), affected_capabilities, recommended_action (no_action/monitor/retry_later/failover_now/escalate). Refreshed every 2h.)","breaking":"/api/breaking","secFilingsRecent":"/api/sec/filings/recent?form=&ticker=&limit= (free, capped 50; recent EDGAR filings for the AI bellwether cohort: NVDA, AMD, AVGO, TSM, ARM, MSFT, GOOGL, AMZN, ORCL, PLTR, SMCI, AAPL, META, TSLA. Source data.sec.gov, public domain. Refreshed every 6h.)","secFilingsByCik":"/api/sec/filings/{cik}/recent (free; per-company recent filings, CIK must be from cohort. Returns 404 with cohort hint otherwise.)","secInsiderTrades":"/api/sec/insider-trades?ticker=&limit= (free, capped 100; Form 4 insider-trade filings for one AI bellwether ticker, lazy-fetched from EDGAR with 6h KV cache. V1 returns filing metadata (accession, date, URL); structured reporting-owner + transaction parsing queued behind DataPal Qwen. Source data.sec.gov, public domain.)","x402IndexSummary":"/api/x402-index/summary?window=24h|7d|30d (free, default 24h; ecosystem-level x402 USDC settlement volume + count + change-vs-prior-window across the AI agent payments economy on Base mainnet. Forward-only index from 2026-05-28 onward. Indexer cron every 5 min, daily publisher manifest refresh 06:35 UTC. Source data: Base mainnet USDC Transfer events filtered to wallets self-published in publisher /.well-known/x402.json manifests.)","x402IndexPublishers":"/api/x402-index/publishers (free, capped to discovered count; canonical list of x402-compliant publishers TensorFeed is currently indexing, auto-discovered from /.well-known/x402.json crawls plus a small hand-seeded set of discovery-dark publishers that expose no manifest. Each entry: domain, pay_to_wallets, source (manifest or manual), first_seen, last_crawled, last_event_at, last_crawl_error. Use this to see which publishers can be queried via /api/premium/x402-index/publisher/{domain}.)","x402IndexLeaderboard":"/api/x402-index/leaderboard?window=24h|7d|30d&limit= (free, limit clamped 1 to 25; top publishers by x402 USDC settlement volume in the window, with rank, count, volume_usdc, and share_pct of the windowed ecosystem volume (window_volume_usdc carries the denominator). Aggregated from full per-publisher daily rollups, no per-day top-N truncation.)","x402IndexRecent":"/api/x402-index/recent?limit= (free, limit clamped 1 to 50; most recent x402 USDC settlement events newest-first, each with tx_hash, block, ts, from_address, to_address, amount_usdc, publisher_domain, base_explorer_url. Powers a live ticker for the /x402 hub.)","x402IndexVerified":"/api/x402-index/verified (free; the verified-publisher directory: which curated x402 publishers have observed on-chain USDC settlements on Base, with verified/unverified status and metrics. Precomputed daily after the 06:35 UTC publisher refresh; each entry carries status (verified-settling, unverified, unreachable, no-base-payto), activity tier, settlement_count, volume_usdc, first/last_settled, pay_to_wallets, and source. Verification is a positive on-chain claim; absence of settlements is not a claim a publisher is fake.)","substrateChangelogRecent":"/api/substrate-changelog/recent?limit= (free, limit clamped 1 to 50; most recent substrate events newest-first across three event types: model lifecycle changes (added, removed, repriced, deprecated) across TF's curated catalog, version bumps in the public MCP, x402, and A2A spec repos (alongside the current spec versions), and agent-framework releases (new GitHub releases of ~20 agent frameworks and provider SDKs). Filter with event_type. Forward-only log fed by a daily 10:17 UTC capture.)","premiumAiCompaniesByTicker":"/api/premium/ai-companies/{ticker} (1 credit, AFTA-signed; per-ticker AI intelligence envelope for the 14 AI bellwethers. One paid call returns latest 10 SEC filings, latest 10 news mentions filtered by curated aliases, strategic and equity funding rounds where the company is a lead or notable investor, plus cohort metadata. Single captured-at timestamp, 9h freshness SLA. Composes four free siblings (/api/sec/filings, /api/news, /api/funding, cohort registry) into one round trip.)","premiumX402IndexPublisher":"/api/premium/x402-index/publisher/{domain}?from=YYYY-MM-DD&to=YYYY-MM-DD (1 credit, AFTA-signed; per-publisher receipt feed for one x402-compliant domain across the inclusive date range. Returns publisher meta (domain, pay_to_wallets, first_seen), window rollup (volume_usdc, count, avg_amount, daily_series), full attribution + CC BY 4.0 license. Forensic + compliance lane for any caller building dashboards over x402 settlement data. Strict-premium prefix; anonymous Bazaar probes see a clean 402 challenge.)","premiumX402IndexSeries":"/api/premium/x402-index/series?metric=volume|count&granularity=day|hour&from=&to=&domain= (1 credit, AFTA-signed; time-series of ecosystem or per-publisher x402 settlement volume / count across a date range. domain param optional (omit for ecosystem). MVP supports granularity=day only; hour returns an empty series with an attribution note. Wave 20 Bazaar pilot.)","premiumSubstrateChangelogHistory":"/api/premium/substrate-changelog/history?from=YYYY-MM-DD&to=YYYY-MM-DD&event_type= (1 credit, AFTA-signed; full forward-only changelog of model lifecycle events (added, removed, repriced, deprecated) and agent-protocol spec versions across an inclusive date range, optionally filtered by event_type. from and to required; an empty window returns free as a no-data result. Strict-premium prefix; anonymous Bazaar probes see a clean 402 challenge.)","premiumStatusIncidentsTriage":"/api/premium/status/incidents/triage?provider=&impact=&recommended_action=&capability=&ongoing_only= (1 credit, AFTA-signed; full incident cohort + provider substring + impact/action exact filters + capability membership filter + ongoing_only flag. Sort priority: impact > recommended_action > started_at. Summary rollups by_provider, by_impact, by_recommended_action, by_capability, cards_with_failover_action.)","premiumNewsActionCards":"/api/premium/news/action-cards?capability=&urgency=&min_cost_impact=&min_security_impact=&query= (1 credit, AFTA-signed; full cohort + capability/urgency exact filters + impact \"at-or-above\" threshold filters + title/source substring search. Sort priority: urgency > security_impact > cost_impact > published. Summary rollups by_capability, by_urgency, by_cost_impact, by_security_impact, cards_with_migration_recommendation.)","codingHarnessesDates":"/api/coding-harnesses/dates (free; ordered date index of captured TerminalFeed harness snapshots for delta queries.)","premiumCodingHarnessesWeeklyDeltas":"/api/premium/coding-harnesses/weekly-deltas?days_back=&harness=&benchmark=&model=&min_abs_delta= (1 credit, AFTA-signed; compares current TerminalFeed harness snapshot to a prior snapshot (default 7d back, clamp [1, 90]). Per-(benchmark, harness, model) score + rank deltas, biggest_gainers, biggest_regressions, entered/exited combinations, per-benchmark leader_cards with leader_changed flag.)","premiumAiCryptoPulse":"/api/premium/ai-crypto-pulse?token=&setup=&min_abs_change_pct= (1 credit, AFTA-signed; joins AI-token price moves with venue-weighted funding-rate skew. Per-token setup classification: squeeze_up / chase_up / squeeze_down / chase_down / coiled / neutral. Notable movers (squeezes_up, squeezes_down, coiled, top_gainers, top_losers), summary (by_setup, breadth_pct_positive, median_change_24h_pct).)","premiumAiVelocity":"/api/premium/ai-velocity?pipeline=&language=&min_traction=&cross_only= (1 credit, AFTA-signed; AI-velocity ranking + cross-pollination over the TerminalFeed-sourced HF + GitHub trending snapshot. Per-entry traction_score (HF: likes*3 + log10(downloads+1)*10; GH: log10(stars+1)*30), on_both flag, cross_pollinated array of normalized-name matches, summary rollups hf_by_pipeline + github_by_language.)","premiumPackagesReleasesVelocity":"/api/premium/packages/releases/velocity?ecosystem=&category=&package=&min_releases_7d= (1 credit, AFTA-signed; per-package release velocity (releases_24h/7d/30d), latest bump_kind (major/minor/patch/prerelease/sideways/unknown), is_breaking_recent flag (major bump within 30d). Notable movers: recent_major_bumps, most_releases_7d, fastest_cadence_30d. Pre-1.0 minor bumps count as major per semver convention.)","premiumAiSafetyPackagesSecurityRadar":"/api/premium/ai-safety/packages/security/radar?ecosystem=&category=&package=&min_risk_score= (1 credit, AFTA-signed; per-package risk_score (0-100) over the OSV snapshot. Risk_band classification (calm/watch/hot/critical), notable_movers (top-5 by_critical_30d, by_risk_score, new_in_last_7d), summary rollups by_band + by_ecosystem.)","premiumAiSafetyIncidentsExposure":"/api/premium/ai-safety/incidents/exposure?vendor=&risk_domain=&within_days= (1 credit, AFTA-signed; exposure rollups over the AVID snapshot. Per-developer + per-deployer incident counts with recency-weighted exposure_score (1.0 last 30d, 0.5 days 31-90, 0.25 older), risk_domain + sep_view distributions, top affected artifacts. Optional substring filters and within_days window [7, 730]. AIID coverage queued via the 100MB weekly R2 snapshot path.)","premiumSecurityPackageVerdict":"/api/premium/security/package-verdict?package=&ecosystem=&version= (1 credit, AFTA-signed; GO/REVIEW/BLOCK pre-install safety verdict for one AI/ML package, fusing the known-malicious IOC list, the OSV advisory snapshot, the GHSA AI firehose, and release cadence. No-charge out_of_coverage when the package is in no TF security feed.)","premiumResilienceConcentrationVerdict":"/api/premium/resilience/concentration-verdict?providers= (1 credit, AFTA-signed; RESILIENT/EXPOSED/CRITICAL single-point-of-failure ruling over a comma-separated AI-provider set, fusing the reliability ranking with live status, plus the weakest link and the best provider to add. No-charge when no listed provider is tracked.)","premiumInferenceCostVerdict":"/api/premium/inference/cost-verdict?model=&monthly_tokens=¤t_provider= (1 credit, AFTA-signed; cheapest inference host to serve one open-weight model at a monthly token volume, per-host projected spend, throughput context, and savings vs the current host. Optional input_tokens + output_tokens for an exact split. No-charge when the model is not in the matrix.)","premiumModelsFrontier":"/api/premium/models/frontier?task= (1 credit, AFTA-signed; the Pareto-optimal set of models on a capability (TFII subscore) versus blended-price plane, with every dominated model flagged plus its dominator. Optional task=code|reasoning|creative|general.)","premiumStackDriftVerdict":"/api/premium/stack-drift-verdict?models=&packages=&protocols=&since_days= (1 credit, AFTA-signed; STABLE/WATCH/ACTION_NEEDED ruling on what moved under a declared stack in the last N days (deprecated model, breaking package bump, protocol spec bump), classified by break-risk. At least one of models, packages, or protocols required. No-charge when nothing is tracked.)","premiumModelMigrationVerdict":"/api/premium/model-migration-verdict?model=&deadline= (1 credit, AFTA-signed; MIGRATE_NOW/MIGRATE_SOON/NO_ACTION for one depended-on model: the recommended successor with cost delta, capability (TFII) delta, and days until sunset. Optional deadline=YYYY-MM-DD. No-charge when the model is in no TF source.)","agentsDirectory":"/api/agents/directory","agentsOpportunities":"/api/agents/opportunities (free; daily-refreshed scan of new GitHub repos that represent submission/distribution opportunities for TF: anthropics/openai/microsoft/modelcontextprotocol orgs + MCP/x402/skills keyword sweeps. Scored by signal_weight * recency + log10(stars). 13:30 UTC cron)","agentsReputationByWallet":"/api/agents/reputation/{wallet} (free; v0 Agent Reputation Bureau. Returns a ReputationCard with metrics, ranks, trust grade, flags, and operator-claim status. Cards rebuilt daily at 04:50 UTC from TF telemetry. 404 on unknown wallet.)","agentsReputationByToken":"/api/agents/reputation/by-token/{prefix} (free; same shape as the by-wallet card, indexed by tf_live_ token prefix for agents who have not signed an operator claim yet)","agentsLeaderboard":"/api/agents/leaderboard?metric=reliability|spend|activity|streak|composite&window=24h|7d|30d|all&limit=1-25 (free, cohort capped at 25; full cohort on /api/premium/agents/leaderboard/full at 1 credit)","agentsBans":"/api/agents/bans (free; transparency list of every banned wallet or token-prefix with reason + evidence_url; auto-bans for Chainalysis OFAC hits)","agentsBadgeByWallet":"/api/agents/badge/{wallet}.svg (free; embeddable 200x40 SVG reputation badge with composite rank, trust grade letter, reliability %. XSS-hardened, CSP-locked, 1h edge cache)","agentsBadgeByToken":"/api/agents/badge/by-token/{prefix}.svg (free; same shape, indexed by tf_live_ token prefix)","agentsClaim":"POST /api/agents/claim with { message, signature } (free; EIP-191 signed claim binding a wallet to a display name + optional directory fields. Chainalysis-screened, Llama Guard pre-flighted, brand-allowlist gated. Returns approved | queued | banned | rejected | retry_later.)","agentsClaimRead":"GET /api/agents/claim/{wallet} (free; read the verified operator claim record for a wallet)","agentsDirectorySearch":"GET /api/agents/directory/search?skill=&service_area=&language=&available=true|false&max_rate=&min_experience=&verified=true&limit=1-25 (free; agent self-directory search. Verified-hireable members sort first. Operators self-describe; TF publishes the listing. Off-platform transactions only. TF is publisher, not facilitator.)","agentsDirectorySkills":"GET /api/agents/directory/skills (free; tally of skill tags across the active directory cohort, sorted by count desc)","agentsDirectoryCategories":"GET /api/agents/directory/categories (free; tally of service_area tags across the active directory cohort)","premiumAgentsLeaderboardFull":"/api/premium/agents/leaderboard/full?metric=&window= (1 credit, AFTA-signed; untruncated reputation leaderboard with full cards for every ranked agent. Free /api/agents/leaderboard caps at 25.)","jobsBrowse":"/api/jobs (free; up to 25 active agent-work listings, newest first; ?limit=1-25&category=&q=. Listings are third-party content; TensorFeed is a listing and discovery service and never a party to any transaction)","jobsById":"/api/jobs/{id} (free; single listing; 404 on unknown or removed)","jobsPremium":"/api/premium/jobs (1 credit, AFTA-signed; full and filtered cohort ?category=&q=&status=active|filled|closed|expired; removed listings are never served)","jobsPost":"POST /api/jobs (tier 3, 5 credits about $0.10; requires a prepaid credits bearer token, the per-call x402 path is not accepted for writes; body is a free-text listing plus an EIP-191 signature, nonce, and signed_at; gated by schema allowlist, signed_at window, signature recovery to the poster wallet, single-use nonce, and Chainalysis OFAC fail-closed; settlement for the work is peer-to-peer off-platform; a rejected post is never charged and returns a signed no-charge receipt)","jobsClose":"POST /api/jobs/{id}/close (the original poster signs an EIP-191 close message, action-pinned and nonce single-use, no payment, marks the listing filled)","agentActivity":"/api/agents/activity","stats":"/api/stats (free; lifetime count of successful credit-debited premium API calls served, each returning a signed AFTA receipt when the receipt key is provisioned. Excludes free and crawler traffic. Edge-cached 60s.)","chaosStats":"/api/chaos/stats","podcasts":"/api/podcasts","trendingRepos":"/api/trending-repos","health":"/api/health","history":"/api/history","historySnapshot":"/api/history/{YYYY-MM-DD}/{type}","historyPricingSeries":"/api/history/pricing/series?model=&days=1-7 (free, 7-day cap)","historyBenchmarksSeries":"/api/history/benchmarks/series?model=&benchmark=&days=1-7 (free, 7-day cap)","historyStatusUptime":"/api/history/status/uptime?provider=&days=1-7 (free, 7-day cap)","historyNews":"/api/history/news?date=&limit=1-25 (free, capped at 25 articles per day; full daily snapshot at /api/premium/history/news/full)","historyNewsSources":"/api/history/news/sources?date= (free; per-source RSS poll reliability rollup for one UTC day)","historyNewsDates":"/api/history/news/dates (free; ordered list of UTC dates with a daily news snapshot)","historyNewsSourcesDates":"/api/history/news/sources/dates (free; ordered list of UTC dates with a source-health rollup)","historyNewsClusters":"/api/history/news/clusters?date=&min_sources=1-50 (free; story-level corroboration clusters for a UTC date with embedding-based grouping. Top 25 returned with optional source-count filter)","historyNewsClustersDates":"/api/history/news/clusters/dates (free; ordered list of UTC dates with cluster data)","securityCVEById":"/api/security/cve/{CVE-id} (free; lazy-fetch a single CVE Record v5.2 from MITRE, 7-day cache. License: MITRE CVE Terms of Use, commercial redistribution permitted)","securityCVERecent":"/api/security/cve/recent?limit=1-100 (free; ring buffer of CVE IDs added in cvelistV5 commits over the last ~24h)","securityCVEByDate":"/api/security/cve/by-date/{YYYY-MM-DD} (free; CVE IDs added in cvelistV5 commits on one UTC day)","securityCVEDates":"/api/security/cve/dates (free; ordered list of UTC dates with CVE-by-date data)","securityKEV":"/api/security/kev?limit=1-50 (free; CISA Known Exploited Vulnerabilities, 50 most-recent. Full catalog at /api/premium/security/kev/full. License: US Gov public domain)","securityKEVById":"/api/security/kev/{CVE-id} (free; single KEV entry by CVE ID, or 404 if the CVE is not in the catalog)","securityKEVAdded":"/api/security/kev/added/{YYYY-MM-DD} (free; KEV entries with dateAdded on one UTC day)","securityKEVDates":"/api/security/kev/dates (free; ordered list of UTC dates with KEV-added data)","securityEPSSById":"/api/security/epss/{CVE-id} (free; current EPSS exploitation-likelihood score for a CVE, lazy-fetched from FIRST.org with 24h cache. License: free for any use per FIRST.org policy)","securityEPSSTop":"/api/security/epss/top?limit=1-50 (free; top-N CVEs by current EPSS score)","securityOSVById":"/api/security/osv/{advisory-id} (free; lookup OSV.dev advisory by GHSA / CVE / PYSEC / RUSTSEC / etc id, lazy-fetched and cached 24h. License: Apache-2.0; attribution preserved on every response)","securityOSVPackage":"/api/security/osv/package?ecosystem=&name=&version= (free; OSV.dev advisories affecting one package version. Ecosystems: PyPI, npm, Go, crates.io, Maven, NuGet, RubyGems, Packagist, Hex, Pub, Hackage, Linux, etc)","securityOSVEcosystems":"/api/security/osv/ecosystems (free; supported OSV ecosystem identifiers)","securityVulnrichment":"/api/security/vulnrichment/{CVE-id} (free; CISA Vulnrichment enrichment for one CVE - CWE mappings, CVSS, exploitation evidence, KEV cross-refs - lazy-fetched from cisagov/vulnrichment, cached 7d. License: US Gov public domain. Pair with /api/security/cve/{id} for the MITRE record)","ssvcVerdictPreview":"/api/preview/security/ssvc-verdict?cve=CVE-YYYY-NNNNN (free, 10/IP/day; the three CISA SSVC decision points plus tree provenance, with the computed decision, the Mission and Well-being envelope, and the reasoning redacted)","ssvcVerdictVerdict":"/api/premium/security/ssvc-verdict?cve=CVE-YYYY-NNNNN (1 credit, AFTA-signed; the CISA SSVC Coordinator decision (Act, Attend, Track, or Track*) computed from the recorded decision points, returned as the full low/medium/high Mission and Well-being envelope with a per-level reasoning trace. Plus a kev_cross_check overlay that flags when the recorded Exploitation understates a CVE now on the CISA KEV catalog and recomputes the decision under active exploitation, leaving the CISA decision unchanged. Derived from CISA Vulnrichment, US Government public domain.)","securityAiSupplyChainIocs":"/api/security/ai-supply-chain-iocs.json (free; daily-refreshed feed of publicly-disclosed malicious npm + PyPI packages relevant to AI / MCP / LLM operators. Each entry cites its primary source (GHSA). Posture: republish + cite; TF does not detect, attribute, or actively scan. License: GitHub ToS + TF attribution; primary source authority always wins)","premiumSecurityGhsaAiFeed":"/api/premium/security/ghsa/ai-feed (1 credit; broader companion to the free supply-chain IOC feed. All GHSA advisory types (reviewed/unreviewed/malware) across all ecosystems (npm, pip, RubyGems, Maven, Go, Composer, NuGet, Rust, etc.), filtered to the same AI keyword list. Adds derived severity_band, age_days, ai_relevance.confidence per entry plus by_severity / by_ecosystem / by_type aggregates. Refresh every 6h. Posture: republish + derive + cite; primary source authority always wins.)","feedModelPricing":"/api/feeds/model-pricing (free; agent-sourced model pricing observations published by the cold-start gig flywheel. Each row was submitted with a primary-source source_url, validated at intake, and accepted by a human reviewer. Returns observations (newest accepted first), latest-per-(model,vendor), and a summary. Optional ?model=&vendor=&limit=. Provenance-distinct from the curated TF pricing catalog; source_url is the authority)","freeTrialStatus":"/api/free-tier/status (free; self-service quota check. Returns the caller IP's current premium-trial state: used today, remaining today, resets_at. Each IP gets 100 free premium API calls per 24h rolling window, no auth required, applied to every /api/premium/* endpoint. Excess returns canonical x402 V2 challenge)","wantlistGet":"/api/wantlist (free, GET; aggregated AI-agent wantlist. Returns the most-recent 200-item rolling window of submissions, top topics by count, and request-type breakdown. Items expire after 30d. Pass ?recent=N to control how many items are hydrated, capped at 100)","wantlistPost":"/api/wantlist (free, POST; submit what data you wish TF served. JSON body: { topic, request_type, description, contact_optional }. request_type one of: data_source, endpoint, tool, mcp, integration, other. Rate-limited to 5 submissions per IP per 24h. Anonymous by default. Patterns inform pipeline priorities)","freeWatchesCreate":"/api/watches/free (free, POST; register a webhook subscription to a watch spec without paying credits. Body: { spec, callback_url, secret?, fire_cap? }. 5 watches per IP, 25 fires per watch, 30-day TTL. Same delivery infrastructure as paid /api/premium/watches: HMAC-signed POST to callback_url when the spec fires. Spec types: price, status, digest, leaderboard_rank, macro_indicator (see /api/premium/watches docs for shapes))","freeWatchesList":"/api/watches/free (free, GET; list watches for the caller IP)","freeWatchesItem":"/api/watches/free/{id} (free, GET|DELETE; manage a watch from the same IP that created it)","premiumDecisionVerified":"/api/premium/news/decision-verified?cluster_id=&date= (1 credit; structured verification scores for a single corroboration cluster: verification_tier (single|limited|moderately-corroborated|broadly-verified|widely-reported), source_diversity_score, time_span_hours, per-source breakdown, AFTA-signed receipt over the source set. Pair with /api/history/news/clusters?date= to discover cluster_ids)","premiumDecisionVerifiedSearch":"/api/premium/news/decision-verified/search?q=&since=&until=&min_sources=1-50&limit=1-100 (1 credit; search recent days for clusters whose hero title matches q (substring + token-overlap), filtered by min_sources, sorted by match score then source count. Default lookback 30 days; max 90)","secEdgarSearch":"/api/sec/edgar/search?q=&forms=10-K,10-Q,8-K&from=YYYY-MM-DD&to=YYYY-MM-DD&limit=1-50&page=1-100 (free; SEC EDGAR full-text search across the entire filings corpus since 1990s. License: US Gov public domain. Pair with /api/sec/company-tickers for ticker-to-CIK lookup)","secEdgarSubmissions":"/api/sec/edgar/submissions/{cik} (free; recent filings + entity metadata for one CIK. Accepts numeric CIK in any zero-padding form, or CIK0000320193 prefixed form)","climatePowerDaily":"/api/climate/power/daily?latitude=&longitude=¶meters=&start=YYYYMMDD&end=YYYYMMDD&community=AG|RE|SB (free; NASA POWER daily meteorological + solar data for one point. License: open access US Gov public domain. Range capped at 365 days)","climatePowerParameters":"/api/climate/power/parameters (free; curated NASA POWER parameter catalog with units and longnames)","climateEarthquakes":"/api/climate/earthquakes?magnitude=significant|4.5|2.5|1.0|all&period=hour|day|week|month&limit=1-500 (free; USGS Earthquake Hazards Program pre-built summary feeds. License: US Gov public domain. Returns flattened earthquake list with id, magnitude, place, time, depth, lat/lon, tsunami flag, USGS detail URL. Cache TTL scales with feed window)","climateWeatherAlerts":"/api/climate/weather-alerts?area=US-state-code&event=NWS-event-name&severity=Extreme|Severe|Moderate|Minor|Unknown&urgency=Immediate|Expected|Future|Past|Unknown&status=actual|exercise|system|test|draft&limit=1-500 (free; NWS Active Weather Alerts. US-only coverage. License: US Gov public domain. Returns flattened alerts list with id, event, severity, urgency, headline, description, areaDesc, sent/effective/expires/ends, sender_name, web URL. 60s cache TTL since active-alert state changes minute by minute)","mcpHttp":"/api/mcp (free; hosted MCP Streamable HTTP transport, JSON-RPC 2.0 over POST. Compatible with Anthropic Claude Code, vertical agent repos, claude.ai connectors, and other MCP-compliant clients. GET returns discovery info; POST expects JSON-RPC envelope. Serves a curated subset of 32 tools (news, status, models, MITRE CVE, CISA KEV, EPSS, OSV.dev, SEC EDGAR search + submissions + ticker lookup, openFDA, EIA series, USGS earthquakes, NWS weather alerts, AI papers, agent-ecosystem opportunities, and the signed route_verdict premium tool); the full 24-tool set ships on the npx stdio server @tensorfeed/mcp-server)","healthFDADrugEvents":"/api/health/fda/drug/events?search=&limit=1-100&skip=&sort= (free; FDA Adverse Event Reporting System (FAERS), 10M+ records. License: CC0)","healthFDADrugLabels":"/api/health/fda/drug/labels?search=&limit=1-100&skip=&sort= (free; structured drug labels in SPL format)","healthFDADrugRecalls":"/api/health/fda/drug/recalls?search=&limit=1-100&skip=&sort= (free; FDA drug enforcement reports / recalls)","healthFDAFoodRecalls":"/api/health/fda/food/recalls?search=&limit=1-100&skip=&sort= (free; FDA food enforcement reports / recalls)","healthFDADeviceEvents":"/api/health/fda/device/events?search=&limit=1-100&skip=&sort= (free; FDA MAUDE device adverse events)","healthFDACategories":"/api/health/fda/categories (free; directory of supported openFDA categories with descriptions)","economyEIASeries":"/api/economy/eia/series?route=&frequency=&start=&end=&length=1-5000&data=value (free; EIA Open Data series. Routes: petroleum/pri/spt, petroleum/pri/gnd, natural-gas/pri/sum, electricity/retail-sales, electricity/electric-power-operational-data, total-energy. License: US Gov public domain)","economyEIACategories":"/api/economy/eia/categories (free; curated EIA route catalog with descriptions and example filters)","statusLeaderboard":"/api/status/leaderboard?days=1-7 (free, 7-day cap; cross-provider uptime ranking, minute-resolution counters)","uptimeBadge":"/api/badge/uptime/{slug} (free SVG; embeddable shields.io-style uptime badge for any monitored provider; 7-day rolling)","uptimeSeries":"/api/uptime/series?provider={slug}&days=1-7 (free, 7-day cap; daily uptime breakdown for a single provider)","mcpRegistrySnapshot":"/api/mcp/registry/snapshot","x402RegistrySnapshot":"/api/x402-registry/snapshot (free; live index of x402-compatible publishers, crawled daily from each domain's /.well-known/x402 manifest. Each entry carries status, x402 version, publisher metadata, paid + free endpoint counts, payment wallet, accepts summary, and an AFTA federation flag. Inclusion is not an endorsement; agents must verify wallets on-chain.)","papersAiTrending":"/api/papers/ai-trending","papersArxivRecent":"/api/papers/arxiv-recent","hfTrending":"/api/hf/trending","hfLeaderboard":"/api/hf-leaderboard/latest?limit=50&min_average= (free; daily snapshot of the Hugging Face Open LLM Leaderboard v2: rank, model_id, params_b, precision, license, base_model, type, average, IFEval/BBH/MATH-Lvl-5/GPQA/MUSR/MMLU-PRO scores. Captured at 04:45 UTC from the open-llm-leaderboard/contents dataset, CC-BY-SA.)","issuesHot":"/api/issues/hot","redditTrending":"/api/reddit/trending","openrouterModels":"/api/openrouter/models","aiTrainingCompute":"/api/ai/training-compute (free; daily snapshot of the Epoch AI Models dataset: per-model training compute in FLOP, parameters, training dataset size, training compute cost in 2023 USD, training power draw, frontier flag, org, domain, country, accessibility, primary-source link. Fills the AI training-compute gap; complements /api/models. License: Epoch AI CC-BY-4.0, attribution in payload. Daily snapshots compound for a future premium compute-trend series.)","papersHFDaily":"/api/papers/hf-daily","today":"/api/today (composite morning brief, optional ?sections=news,papers,hf,community,inference,status&limit=1-10)","probeLatest":"/api/probe/latest","gpuPricing":"/api/gpu/pricing","gpuPricingCheapest":"/api/gpu/pricing/cheapest?gpu=H100&type=on_demand|spot","sports":"/api/sports (league directory; nfl live, nba/mlb/nhl planned)","sportsNflTeams":"/api/sports/nfl/teams?conference=AFC|NFC&division=East|North|South|West","sportsNflTeamItem":"/api/sports/nfl/teams/{id} (e.g. sf, kc, nyj)","sportsNflNews":"/api/sports/nfl/news?limit=&team= (RSS-aggregated, 200-char snippet + link)","sportsMlbTeams":"/api/sports/mlb/teams?league=AL|NL&division=East|Central|West","sportsMlbTeamItem":"/api/sports/mlb/teams/{id} (e.g. nyy, lad, sf)","sportsMlbNews":"/api/sports/mlb/news?limit=&team= (RSS-aggregated, 200-char snippet + link)","sportsNflPlayers":"/api/sports/nfl/players?team=&position=&status=&q=&limit= (nflverse CC-BY-4.0)","sportsNflPlayerItem":"/api/sports/nfl/players/{gsis_id} (e.g. 00-0036971)","sportsNflSchedule":"/api/sports/nfl/schedule?season=&week=&team=&limit= (nflverse CC-BY-4.0)","secCompanyTickers":"/api/sec/company-tickers?q=&ticker=&limit= (US SEC EDGAR public-domain ticker -> CIK -> company-name mapping; ~10k entries)","secCompanyTickerItem":"/api/sec/company-tickers/{ticker_or_cik} (e.g. AAPL, 320193, 0000320193, CIK0000320193)","npmAITrending":"/api/packages/npm/ai-trending?category=llm-sdk|agent-framework|rag|inference|evals|tooling|mcp&limit= (curated, weekly downloads via api.npmjs.org)","pypiAITrending":"/api/packages/pypi/ai-trending?category=llm-sdk|agent-framework|rag|inference|evals|observability|tooling|mcp&limit= (curated, monthly downloads via pypistats.org / Linehaul / PyPI BigQuery public dataset)","researchInstitutionsAI":"/api/research/institutions/ai?country=&type=&limit= (OpenAlex CC0; top institutions by AI-tagged publications, last 365 days)","researchEmergingKeywords":"/api/research/emerging-keywords (free; top-25 preview of multi-word keyphrases across recent arXiv AI abstracts ranked by recent-vs-baseline lift. Cached 1800s. Full top-50 is paid /api/premium/research/emerging-keywords.)","researchCitationVelocity":"/api/research/citation-velocity (free; top-25 preview of AI papers from the last 2 years ranked by the share of citations that arrived in the most recent year. OpenAlex CC0, cross-checked against Semantic Scholar. Cached 1800s.)","researchAuthors":"/api/research/authors (free; top-25 preview of AI researchers by trailing-365-day publication volume, with h-index, citation count, affiliation, ORCID, and AI-publication share. OpenAlex CC0. Cached 1800s.)","researchConferenceAcceptances":"/api/research/conference-acceptances (free; notable-tier Oral and Spotlight accepted papers from ICLR, NeurIPS, ICML via OpenReview public metadata: title, authors, decision tier, area, keywords, clipped abstract, forum_url. Cached 1800s.)","researchNlpProceedings":"/api/research/nlp-proceedings (free; recent ACL, EMNLP, NAACL papers via the ACL Anthology: title, authors, clipped abstract, Anthology url. Abstracts CC-BY, link and summarize only. Cached 1800s.)","researchLabBlogs":"/api/research/lab-blogs (free; recent posts from major AI lab and academic research blogs (Google DeepMind, Google Research, Berkeley BAIR, MIT News AI, Hugging Face), newest-first: title, source, clipped snippet, date, link. Cached 1800s.)","researchMilestones":"/api/research/milestones (free; top-25 preview of arXiv papers from the last 30 days flagged is_milestone_candidate by the TensorFeed offline extraction pipeline, each with the named benchmark plus delta, model release, or architecture behind the flag. Cached 1800s. Full set is paid /api/premium/research/milestones.)","economyBLSIndicators":"/api/economy/bls/indicators?category=inflation|employment|wages|labor-force|jolts (US Bureau of Labor Statistics, public domain; CPI, unemployment, payrolls, JOLTS, etc., 24-month history with MoM delta)","economyFREDIndicators":"/api/economy/fred/indicators?category=rates|gdp|money|housing|fx|commodities (Federal Reserve Economic Data, public domain; fed funds, 10Y/2Y treasuries + spread, GDP, M2, mortgage rate, USD index, oil; native frequency per series)","policyAIRegistry":"/api/policy/ai/registry?jurisdiction=US-Federal|US-State|EU|UK|China|International&type=executive-order|statute|regulation|guidance|declaration|agency-action&status=active|phased|pending|rescinded|vetoed|proposed&scope=transparency|safety|high-risk|deepfakes|export-controls|...","fundingPortfolio":"/api/funding/portfolio?silicon_dependency=nvidia|tpu|trainium|mi400|maia|mixed&type=private-equity|public-equity|compute-commitment|capacity-partnership&from=&to=&since=&until= (free; hand-curated AI capital-commitment registry tagged with recipient silicon dependency. Sources: SEC filings, hyperscaler press releases, reputable trade reporting. Each entry carries source_urls. Returns summary aggregates by silicon dependency, type, and investor.)","premiumFundingExposure":"/api/premium/funding/exposure (1 credit; derived metrics over the free /api/funding/portfolio: silicon-vendor concentration shares, per-investor circular-loop classification (fully-circular / partial-loop / agnostic) using investor->silicon mapping for Nvidia/Google/Amazon/Microsoft/AMD, top recipients by inbound capital, co-investor pairs that both hold stakes in the same recipient.)","fundingFederalSummary":"/api/funding/federal/summary (free; full federal AI spending snapshot for a curated AI-vendor cohort: per-vendor totals, award counts, the most recent award date per vendor, top awarding agencies, plus cohort-wide totals and the top 25 recent awards. Source USAspending.gov, public domain under the DATA Act. Precomputed daily.)","fundingFederalRecent":"/api/funding/federal/recent (free; the 25 newest dated federal contract and grant awards across the AI-vendor cohort, each with recipient, amount, awarding agency, award type, and date. Source USAspending.gov, public domain. Precomputed daily.)","premiumFundingFederalMomentum":"/api/premium/funding/federal/momentum (1 credit, AFTA-signed; one signed leadership and concentration ruling over the federal spending snapshot. Names the cohort leader and its share of total tracked federal AI award dollars, the top-2 spend concentration, the leading awarding agency, and the vendors with a dated award inside the last 120 days, plus echoed cohort totals. 36h freshness SLA, no-charge when stale.)","procurementAiContracts":"/api/procurement/ai-contracts (free; the government AI procurement snapshot across the whole federal market, not a curated cohort: a keyword search of USAspending award descriptions for AI terms over the trailing 180 days, rolled up by agency demand, by vendor with an emerging-vendor flag, plus totals, unique counts, and the 25 newest dated awards. Source USAspending.gov, public domain under the DATA Act. Precomputed daily; cold-start returns an empty 200, never 503.)","premiumProcurementAiContractsDemand":"/api/premium/procurement/ai-contracts/demand (1 credit, AFTA-signed; one signed demand read over the free /api/procurement/ai-contracts snapshot. Agency concentration (top-agency share of tracked AI award dollars plus the Herfindahl-Hirschman Index over ranked agencies), the emerging contractors winning AI work outside the known vendor cohort, and the top buying agencies, with echoed total dollars. captured_at is the real snapshot data time; no-charge when the snapshot is not yet captured.)","procurementAiOpportunities":"/api/procurement/ai-opportunities (free; open US federal AI contract opportunities from SAM.gov, the open-solicitation sibling of /api/procurement/ai-contracts. A title-keyword search for AI terms across every agency over the trailing 90 days, rolled up by agency and set-aside, with a closing-soon preview and the 25 newest postings. The full ranked open pipeline is the paid sibling. Source SAM.gov, public domain. Precomputed daily; cold-start returns an empty 200, never 503.)","federalAiPolicy":"/api/federal-ai-policy (free; US federal AI policy tracker across two layers. Executive and agency actions from the Federal Register (rules, proposed rules, notices, presidential documents) whose title names an AI term, rolled up by agency and document type with the 15 newest as a preview; plus AI-named federal bills from GovInfo. License: US Gov public domain. The full ranked document and bill lists are the premium read /api/premium/federal-ai-policy. Precomputed daily; cold-start returns an empty 200, never 503.)","premiumProcurementAiOpportunitiesDeadlines":"/api/premium/procurement/ai-opportunities/deadlines (1 credit, AFTA-signed; the full ranked pipeline of open federal AI solicitations over the free /api/procurement/ai-opportunities snapshot, sorted by response deadline with days_remaining on each, plus the echoed agency and set-aside rollups. captured_at is the real snapshot data time; no-charge when the snapshot is not yet captured.)","premiumFederalAiPolicy":"/api/premium/federal-ai-policy (1 credit, AFTA-signed; the full ranked list of AI-related US Federal Register actions (rules, proposed rules, notices, presidential documents) plus AI-named federal bills (GovInfo), with agency and document-type rollups, over the free /api/federal-ai-policy snapshot. captured_at is the real snapshot data time; 36h freshness SLA, no-charge when stale or not yet captured.)","exportControlsAi":"/api/export-controls/ai (free; classified US BIS AI and advanced-computing export-control actions (Entity List changes, license and threshold rules) from the Federal Register. Returns by_category counts plus the 30 most recent classified events: Entity List additions, advanced-computing license and threshold rules, due-diligence and model-weights measures. Source federalregister.gov, public domain; TensorFeed editorial classification. Precomputed daily; cold-start returns an empty 200, never 503.)","premiumExportControlsAiHistory":"/api/premium/export-controls/ai/history?from=YYYY-MM-DD&to=YYYY-MM-DD&category= (1 credit, AFTA-signed; full filterable history of AI export-control actions by date range and category. Filters the BIS Federal Register snapshot by inclusive publication-date range and category (entity-list, compute-threshold, license-policy, due-diligence, model-weights, other). captured_at is the real snapshot data time; no-charge when the snapshot is missing or the filtered window is empty. Strict-premium prefix; anonymous Bazaar probes see a clean 402 challenge.)","aiDatacenters":"/api/ai-datacenters?operator=&status=announced|under_construction|operational|expansion|paused&country=®ion=&purpose=training|inference|mixed|unknown (free; hand-curated registry of publicly announced AI datacenter projects, the gigawatt-class training and inference campuses from the labs and hyperscalers. Each entry carries disclosed power (MW), capex, status, accelerator, partners, and a source_url; power and capex are disclosed values only, null where not public. Sorted operational-first.)","premiumAiDatacentersBuildout":"/api/premium/ai-datacenters/buildout (1 credit, AFTA-signed; aggregate over the free /api/ai-datacenters registry. Disclosed power (MW) and capex totals by operator, region, and status, plus the forward commissioning calendar of sites coming online. Curated registry, no staleness SLA.)","capitalCycles":"/api/capital-cycles?era=pre_1931|modern (free; hand-curated registry of six historical technology capital buildouts (UK Railway Mania through the dotcom fiber overbuild) on a fixed metric skeleton, plus the current AI buildout mapped into the same skeleton. The only cross-era-comparable metric is peak capex as a percent of national GDP; absolute dollars and physical units are descriptive. The signed ranking and analogy verdict is premium at /api/premium/ai-capex-cycle-verdict.)","premiumAiCapexCycleVerdict":"/api/premium/ai-capex-cycle-verdict (1 credit, AFTA-signed; one signed ruling on where the current AI infrastructure capex cycle ranks against six historical technology capital buildouts measured as capex over GDP: MODERATE, ELEVATED, EXTREME, or UNPRECEDENTED, with the closest and farthest historical analog, equities-led cycles surfaced as sentiment outliers, and the post-bust dimensions that cannot be scored while the cycle is in progress. No params. Free registry at /api/capital-cycles.)","routingPreview":"/api/preview/routing","routeVerdictPreview":"/api/preview/route-verdict?task=code|reasoning|creative|general or ?model= (free, 10/IP/day; the top Route Verdict only, no runners-up or signed receipt, so an agent can evaluate the shape before paying)","stackSafetyPreview":"/api/preview/stack-safety-verdict?packages= (free, 10/IP/day; the gate + per-package verdict only, no CVE evidence, capped at 3 packages)","benchmarkTrustPreview":"/api/preview/benchmark-trust-verdict (free, 10/IP/day; trust band + score per benchmark, no per-signal detail or recommendation)","failoverPreview":"/api/preview/failover-verdict?from= (free, 10/IP/day; the failover destination + incident reason, no full candidate detail or alternatives)","guidanceDeltaPreview":"/api/preview/sec/filings/guidance-delta?accession= or ?ticker=&form= (free, 10/IP/day; the materiality_summary + per-change category/type/direction/materiality, with the verbatim quotes and values redacted)","providerReliabilityPreview":"/api/preview/provider-reliability-verdict (free, 10/IP/day; the most-dependable and riskiest picks only, no full per-provider ranking or signed receipt)","x402SettlementPreview":"/api/preview/x402-settlement-verdict (free, 10/IP/day; the momentum, concentration, and leading-publisher verdict only, no full publisher ranking or signed receipt)","x402PublisherPreview":"/api/preview/x402-publisher-verdict?domain= (free, 10/IP/day; the trust verdict and claim for one publisher only, no momentum, shared-wallet flag, or settlement evidence)","premiumRouting":"/api/premium/routing?task=code|reasoning|creative|general (1 credit; top-5 ranked models with full score breakdown, pricing, status, and component-level detail. Optional ?budget=, ?min_quality=, ?top_n=1-10, and custom weights ?w_quality=, ?w_availability=, ?w_cost=, ?w_latency=.)","premiumRouteVerdict":"/api/premium/route-verdict?task=code|reasoning|creative|general or ?model= (1 credit, AFTA-signed; the single best model to use right now, fusing pricing, contamination-discounted capability, real usage, measured p95 latency, and live incident state, plus runners-up and a signed receipt. Optional ?max_latency_p95_ms=, ?require_operational=, ?exclude_deprecated=. 30-min freshness SLA, no-charge when stale.)","stackSafetyVerdict":"/api/premium/stack-safety-verdict?packages=name@version,... (1 credit, AFTA-signed; GO/HOLD/BLOCK deploy gate per AI-stack package, fusing the ingested AI-CVE batch + CISA KEV. Up to 10 packages. Never-false-confirm: BLOCK only on exploited with no fix, HOLD on version-ambiguous, PASS on no match, UNKNOWN outside the cohort.)","benchmarkTrustVerdict":"/api/premium/benchmark-trust-verdict?benchmark= or ?category= (1 credit, AFTA-signed; is an AI benchmark a trustworthy capability signal or saturated/contaminated/near-ceiling, so down-weight a high score. Trust band + 0-100 score per benchmark, fusing contamination and saturation flags with live frontier compression, plus a down-weight recommendation and an alternative benchmark.)","failoverVerdict":"/api/premium/failover-verdict?from=<provider>&task= (1 credit, AFTA-signed; provider A degraded, recommend the best operational failover target for a task. Confirms A against live incident triage, then runs the route verdict with A and any failover_now provider excluded. Returns destination + incident reason + ranked alternatives.)","guidanceDeltaVerdict":"/api/premium/sec/filings/guidance-delta?accession= or ?ticker=&form= (1 credit, AFTA-signed; did this periodic 10-K/10-Q materially change guidance, segment outlook, or risk language vs the prior same-form filing, with the exact changed sentences quoted. Deterministic materiality_summary + full verbatim changes. Input-keyed freshness, no-charge when a newer same-form filing supersedes the delta.)","providerReliabilityVerdict":"/api/premium/provider-reliability-verdict (1 credit, AFTA-signed; ranks the frontier providers TensorFeed probes by measured operational reliability, fusing availability and tail consistency (p50 over p95) into one dependability ranking. Names the most dependable and the riskiest, ships the full per-provider ranking and a signed receipt. 30-min freshness SLA, no-charge when stale.)","x402SettlementVerdict":"/api/premium/x402-settlement-verdict?window=24h|7d|30d (1 credit, AFTA-signed; rules on the Base x402 USDC settlement market over TensorFeed's own settlement index: momentum vs the prior window of equal length, concentration by the Herfindahl index, and the leading publisher, plus the full per-publisher ranking. 10-min freshness SLA, no-charge when stale.)","x402PublisherVerdict":"/api/premium/x402-publisher-verdict?domain= (1 credit, AFTA-signed; signed trust verdict on one x402 publisher over TensorFeed's own settlement index: whether its Base payTo is actively settling, its 30-day settlement momentum, a shared-wallet risk flag, and the settlement evidence. 10-min freshness SLA, no-charge when stale.)","premiumPricingSeries":"/api/premium/history/pricing/series?model=&from=&to=","premiumBenchmarkSeries":"/api/premium/history/benchmarks/series?model=&benchmark=&from=&to=","premiumStatusUptime":"/api/premium/history/status/uptime?provider=&from=&to=","premiumNewsHistoryFull":"/api/premium/history/news/full?date= or ?from=&to= (1 credit; full untruncated daily news snapshots, single-date or range up to 30 days)","premiumNewsSourceHealth":"/api/premium/history/news/source-health?from=&to= (1 credit; per-source RSS reliability series up to 90 days)","premiumSecurityCVERange":"/api/premium/security/cve/range?from=&to= (1 credit; CVE IDs added across a UTC date range, max 30 days)","premiumSecurityKEVFull":"/api/premium/security/kev/full (1 credit; full untruncated CISA KEV catalog ~1500+ entries)","premiumSecurityKEVSeries":"/api/premium/security/kev/series?from=&to= (1 credit; daily KEV catalog additions across a date range, max 90 days)","premiumSecurityEPSSSeries":"/api/premium/security/epss/series?cve_id= (1 credit; full historical EPSS time-series for one CVE)","premiumSecurityEPSSTop":"/api/premium/security/epss/top?date=&limit=1-100 (1 credit; top-N highest-EPSS CVEs as of any UTC date)","premiumCleanCVE":"/api/premium/clean/cve/{CVE-id} (1 credit; LLM-ready CVE record: ~80% token reduction vs raw MITRE v5.2, with derived severity_band, deduped CWEs, flat affected_products, top references)","premiumCleanKEV":"/api/premium/clean/kev/{CVE-id} (1 credit; LLM-ready KEV entry with normalized ransomware_use enum and extracted notes_urls)","premiumCleanEPSS":"/api/premium/clean/epss/{CVE-id}?series=true|false (1 credit; LLM-ready EPSS score with derived risk_band; optional series=true returns first/min/max summary instead of full series)","premiumSecurityVerifiedCVE":"/api/premium/security/verified/{CVE-id} (1 credit; cross-database CVE verification: composes MITRE CVE + CISA KEV + FIRST.org EPSS + OSV.dev + CISA Vulnrichment into one fact card with confirmed_by array and corroboration_count. The single-call anti-hallucination lookup for security agents)","premiumHistoryNewsClustersFull":"/api/premium/history/news/clusters/full?date= or ?from=&to= (1 credit; full untruncated cross-source story clusters, single-date or 30-day range)","premiumHistoryNewsVerified":"/api/premium/history/news/verified?date= or ?from=&to=&min_sources=2-50 (1 credit; the verified feed - story clusters with N+ independent sources corroborating; default min_sources=4)","premiumStatusLeaderboard":"/api/premium/status/leaderboard?from=&to= (1 credit; full date range, includes incident_count + mttr_minutes per provider)","premiumWatchesCreate":"POST /api/premium/watches (1 credit per registration)","premiumWatchesList":"GET /api/premium/watches","premiumWatchesItem":"GET|DELETE /api/premium/watches/{id}","premiumAgentsDirectory":"/api/premium/agents/directory?category=&status=&open_source=&capability=&sort=&limit=","premiumNewsSearch":"/api/premium/news/search?q=&from=&to=&provider=&category=&limit=","vrNews":"/api/vr/news?category=&limit= (free; sourced from vr.org)","vrOriginals":"/api/vr/originals?limit= (free; VR.org Original editorial)","aftaAdopters":"/api/afta/adopters (free; machine-readable AFTA adopter directory; not authoritative)","premiumCostProjection":"/api/premium/cost/projection?model=opus-4-7,gpt-5-5&input_tokens_per_day=&output_tokens_per_day=&horizon=monthly","premiumProviderDeepDive":"/api/premium/providers/{name}","premiumCompareModels":"/api/premium/compare/models?ids=opus-4-7,gpt-5-5,gemini-3","premiumWhatsNew":"/api/premium/whats-new?days=1&news_limit=10","premiumWhatsNewPro":"/api/premium/whats-new/pro?days=1&news_limit=10 (10 credits, AFTA-signed; pro tier of the morning brief. Same 24h base payload plus Claude Haiku 4.5 generated analyst summary, 1-5 cited key takeaways, and 1-3 recommended actions targeted by agent class. Every claim cites by stable basis ID; citations are server-side validated, so the agent never sees a hallucinated reference.)","premiumPolicyTimeline":"/api/premium/policy/timeline?days_back=&days_forward=&jurisdiction= (1 credit; forward + backward calendar over the AI policy registry with relative-to-now classification, next-3-milestones, days-until-effective per entry)","premiumPackagesPyPIMomentum":"/api/premium/packages/pypi/momentum (1 credit; momentum + velocity ratio per AI/ML PyPI package over the free trending snapshot, with direction classification, notable-movers, by-category counts. npm momentum follows once rolling snapshot history accumulates.)","premiumResearchVelocity":"/api/premium/research/velocity (1 credit; per-institution velocity over the OpenAlex 365-day baseline + fresh 30-day window, with direction classification, notable-movers, by-country and by-type breakdowns)","premiumResearchAuthors":"/api/premium/research/authors (1 credit; top 100 AI authors ranked by AI publication volume in the trailing 365 days. Enriched with h_index, i10_index, cited_by_count, primary affiliation (institution + country), ORCID, derived ai_share_pct (AI works as share of total). OpenAlex CC0. Daily refresh.)","premiumResearchCitationVelocity":"/api/premium/research/citation-velocity (1 credit; top 100 recent AI papers ranked by share of total citations gained in the most recent calendar year. Papers published in the last 2 years with 3+ citations. Returns title, year, total + latest-year citations, share, DOI, venue, first 3 authors, primary affiliation. OpenAlex CC0. Daily refresh.)","premiumApisGuruAiFeed":"/api/premium/apis-guru/ai-feed (1 credit; AI-relevant entries from the APIs.guru public directory of 2400+ OpenAPI specs, filtered via curated keyword match on provider + title + description. Per-entry first_seen_at against our daily snapshot history so agents can diff \"what new AI APIs appeared in the last 7 days.\" Includes by_provider counts + a separate newly_added_last_7d array. CC-BY-SA 4.0; primary source links preserved.)","premiumResearchMilestones":"/api/premium/research/milestones (1 credit; last 30 days of arXiv preprints flagged is_milestone_candidate by an offline Qwen 3.6 27B per-paper extraction pass. Each paper carries structured reasoning stating the named benchmark + quantified delta, model release, or novel architecture justification. Conservative; false positives are worse than false negatives.)","premiumCveKevExploitationTimeline":"/api/premium/cve/kev-exploitation-timeline?vendor= (1 credit, strict-premium; per-vendor exploited-in-the-wild history from the cve-kev-2026 dataset. One vendor per call: NVD disclosure date, days to CISA KEV listing, vendor patch status, ransomware association, severity distribution, mean and fastest KEV-add lag. Offline per-CVE extraction + deterministic per-vendor rollup. v1 capped slice, expandable. NVD + CISA KEV US public domain.)","premiumSecurityCorroborated":"/api/premium/security/corroborated?package= (1 credit, strict-premium; the full corroborated GHSA advisory set for one package in one call. Per advisory: the deterministic affected-package vs authoritative-OSV verdict (never-false-confirm), plus KEV/EPSS/SSVC/OSV enrichment joined ONLY by a verbatim-verified CVE id, plus verbatim version/severity context, each in an explicit provenance bucket. We corroborate the package and enrich by verified CVE id; we do NOT verify the advisory exploitation/severity claims. Quarantined records never served. Offline extraction + deterministic corroboration + verbatim-CVE guard.)","premiumResearchEmergingKeywords":"/api/premium/research/emerging-keywords (1 credit; top-50 multi-word keyphrases across recent arXiv abstracts ranked by recent-vs-baseline lift, last 30d frequency over prior 90d, smoothed. Each entry carries 2-5 example arxiv_ids.)","premiumResearchTopicSearch":"/api/premium/research/topic-search?subfield_tag=&methodology_bucket=&since=&until=&milestone_only=&limit=&offset= (1 credit; structured search over the arXiv preprint corpus using TF derived taxonomy. Filters arXiv by subfield + methodology, dimensions arXiv's native search has no concept of.)","premiumResearchLabProductivity":"/api/premium/research/lab-productivity?window=&affiliation_type=&limit= (1 credit; top labs by paper count over 30d/90d/365d windows, derived from TF normalized affiliations on the offline Qwen extraction. Filter by window (30d|90d|365d, default returns all three) and affiliation_type (industry|academia|government|nonprofit|mixed). arXiv has no native concept of normalized lab attribution.)","premiumProbeSeries":"/api/premium/probe/series?provider=&from=&to=","premiumOpenRouterSeries":"/api/premium/openrouter/series?from=&to= (1 credit; daily OpenRouter cross-provider catalog drift over a 90-day window: model count, cheapest paid input/output USD-per-million floor, free-tier count, namespace breadth, plus day-over-day model add/remove churn and per-model price-change counts. OpenRouter serves only current state, so this history is TensorFeed-captured and cannot be backfilled. Default 30 days, max 90.)","premiumX402RegistrySeries":"/api/premium/x402-registry/series?from=&to= (1 credit; daily x402 publisher-registry drift over a 90-day window: reachable vs erroring publishers, federation count, network breadth, paid and free endpoint totals, agent-fair-trade declarations, plus day-over-day domains added/removed, status flips, and payment-wallet changes. A registry is current-state only, so this history is TensorFeed-captured and cannot be backfilled. Default 30 days, max 90.)","premiumHFVelocity":"/api/premium/hf/velocity?from=&to= (1 credit; daily Hugging Face download-velocity over a 90-day window: per-day top models and datasets by download delta and top Spaces by likes delta among the daily top-30, top-set entered/exited churn, plus window gainers (last minus first captured day). HF exposes only cumulative totals and a live top list, so this velocity is TensorFeed-computed and cannot be backfilled. Default 30 days, max 90.)","gpuPricingSeries":"/api/gpu/pricing/series?gpu=&from=&to= (moved from premium 2026-05-06)","premiumAttentionSeries":"/api/premium/attention/series?provider=&from=&to=","paymentInfo":"/api/payment/info","paymentPacks":"/api/payment/packs","aftaCertifyCheck":"/api/afta-certify/check?domain=","dataLicensing":"/api/data-licensing","professionalServices":"/api/services","mcpProTier":"/api/mcp/pro-tier","paymentBuyCredits":"/api/payment/buy-credits","trialCredits":"POST /api/payment/trial-credits (free; sign EIP-191, get 25 trial credits, one per wallet)","paymentConfirm":"/api/payment/confirm","paymentBalance":"/api/payment/balance","paymentUsage":"/api/payment/usage","paymentHistory":"/api/payment/history","paymentSpendCap":"/api/payment/spend-cap (GET reads, POST sets)","paymentRevoke":"POST /api/payment/revoke","paymentNoChargeStats":"/api/payment/no-charge-stats","receiptVerify":"/api/receipt/verify","aiCrawlerAccessSummary":"/api/ai-crawler-access/summary.json (free; aggregate AI crawler access map across curated domains: per-bot allow/block percentages (GPTBot, ClaudeBot, PerplexityBot, CCBot, and more), plus llms.txt and ai.txt adoption. We report stated robots.txt policy, not enforcement. No parameters.)","aiCrawlerAccessSite":"/api/ai-crawler-access/site?domain= (free; per-site robots.txt verdict for each tracked AI bot, plus llms.txt and ai.txt presence, for one domain. Required param: domain.)","aiCrawlerAccessCheck":"/api/ai-crawler-access/check?domain= (free; live on-demand robots.txt verdict for any public domain not in the tracked set: per-bot allowed/blocked/partial/unknown plus llms.txt/ai.txt presence. Rate-limited 120/min/IP, cached 1h.)","premiumAiCrawlerAccessFull":"/api/premium/ai-crawler-access/full (1 credit, AFTA-signed; full dataset: every tracked domain with per-bot robots.txt verdicts (allowed/blocked/partial/unknown) and llms.txt/ai.txt flags, plus sector rollups. 8-day freshness SLA, no-charge when stale.)","premiumAiCrawlerAccessChanges":"/api/premium/ai-crawler-access/changes?domain=&from=&to= (1 credit, AFTA-signed, strict-premium; historical flip log: when a site changed a bot from allowed to blocked (or back) or published llms.txt, within a date range. Required params: from, to (domain optional).)","agentReadySummary":"/api/agent-ready/summary.json (free; agentic-web readiness across curated domains: per-surface adoption (x402 manifest, agent.json, openapi, llms.txt, AI-bot-crawlable, ai.txt), readiness-tier distribution, and a top-25 leaderboard. Derived from the crawler-access crawl. No parameters.)","agentReadySite":"/api/agent-ready/site?domain= (free; per-domain agent-readiness profile: a transparent 0-100 score, tier, and which agent surfaces the site exposes. Required param: domain.)","premiumAgentReadyFull":"/api/premium/agent-ready/full (1 credit, AFTA-signed; full per-domain agent-readiness dataset with scores and surface flags. 8-day freshness SLA, no-charge when stale.)","premiumHfLeaderboardMovers":"/api/premium/hf-leaderboard/movers?window= (1 credit, AFTA-signed, strict-premium; period-over-period movers on the Open LLM Leaderboard v2 from TF dated snapshots: rank climbers and fallers, score deltas, models entered and exited, new per-benchmark leaders, license changes. Optional window in days, default 7. 36h SLA, no-charge under two captured days.)"},"admin":{"usage":"/api/admin/usage?window=today|7d|30d&key=<ADMIN_KEY> (paid summary + AE funnel when provisioned; legacy ?date=YYYY-MM-DD still returns one day raw rollup)","statsBackfill":"/api/admin/stats/backfill?key=<ADMIN_KEY> (GET; one-time/idempotent seed of the /api/stats lifetime counter from the persisted daily rollups)","usageDates":"/api/admin/usage/dates?key=<ADMIN_KEY>","burnToken":"/api/admin/burn-token?token=tf_live_...&key=<ADMIN_KEY>","anomalies":"/api/admin/anomalies?key=<ADMIN_KEY>&severity=warning|critical","killSwitch":"/api/admin/kill-switch?key=<ADMIN_KEY> (GET = status + audit; POST&action=on|off to flip the runtime KV-flag side. Env-secret side via wrangler secret put KILL_SWITCH_KV_WRITES.)","breaking":"/api/admin/breaking?key=<ADMIN_KEY> (GET = raw alert + is_live + audit; POST {headline, href, ttl_hours?} sets; POST {clear:true} clears. Public read at /api/breaking.)","refresh":"/api/refresh?key=<ADMIN_KEY>[&task=history|harnesses|models|mcp-registry|papers|arxiv|hf|hf-leaderboard|hot-issues|reddit|openrouter|hf-daily-papers|probe|probe-rollup|fred|bls|npm-ai|pypi-ai|openalex|openalex-authors|openalex-citation-velocity|openreview|acl|lab-blogs|s2|apis-guru-ai|nflverse|sec-tickers|sec-filings|sports-news|opportunities|ai-supply-chain-iocs|ghsa-ai-feed|agent-reputation|epoch|crawler-access|federal-ai-policy]"},"chaos_engineering":{"description":"Free, no-auth headers for testing agent fallback logic against simulated failures. No credits charged for simulated errors.","headers":{"simulate_error":"X-TensorFeed-Simulate-Error: <400-599> (returns the requested status code immediately)","simulate_latency":"X-TensorFeed-Simulate-Latency: <ms> (sleeps before normal response, capped at 10000ms)"},"response_marker":"X-TensorFeed-Simulated: true","stats_endpoint":"/api/chaos/stats (free, public, edge-cached 30s; per-UTC-day count of simulated responses by status code, lets dashboards subtract synthetic from real 5xx)"},"circuit_breaker":{"description":"Premium endpoints return 429 infinite_loop_detected if a single bearer token issues more than 20 identical requests in 60 seconds. No credits are charged when the breaker is tripped.","threshold":20,"window_seconds":60,"cooldown_seconds":120},"rate_limit":{"description":"Free public endpoints are limited to 120 requests per minute per IP. Premium bearer tokens are exempt. Every response includes RateLimit-Limit, RateLimit-Remaining, and RateLimit-Reset headers so well-behaved agents can back off programmatically.","per_ip_per_minute":120,"headers":["RateLimit-Limit","RateLimit-Remaining","RateLimit-Reset","Retry-After"],"exempt_paths":["/api/premium/*","/api/payment/*","/api/internal/*","/api/admin/*","/api/refresh"],"doc":"https://tensorfeed.ai/developers/agent-payments#rate-limits"},"prompt_injection_sanitization":{"description":"Aggregated text on the agent-facing endpoints is scrubbed at read time. Strips ASCII control chars, bidi/zero-width spoofing, and neutralizes role-confusion tokens (<|im_start|>, [INST], \"system:\" line prefixes, \"ignore previous instructions\"). Title/snippet are length-capped.","enabled_on":["/api/news","/api/agents/news","/feed.xml","/feed.json","/feed/*.xml"],"doc":"https://tensorfeed.ai/developers/agent-payments#prompt-injection-sanitization"},"agent_fair_trade":{"description":"Agent Fair-Trade Agreement (AFTA): code-enforced no-charge guarantees, Ed25519-signed receipts on every paid call, public on-chain payment rail (USDC on Base). Combined: every dollar that flows through TensorFeed has two independent attestations (the Base RPC tx record, immutable and public, and our signed receipt, verifiable and non-forgeable).","no_charge_guarantees":["5xx","circuit_breaker","schema_validation_failure","upstream_failure","stale_data","empty_result"],"receipts":{"configured":true,"algorithm":"EdDSA / Ed25519","public_key_url":"https://tensorfeed.ai/.well-known/tensorfeed-receipt-key.json"},"freshness_slas":[{"endpoint":"/api/premium/routing","max_age_seconds":null,"reason":"computed live from current pricing"},{"endpoint":"/api/premium/route-verdict","max_age_seconds":1800,"reason":"fuses live latency probes + incident triage + status; charges only when the operational layer is fresh (within 30 min)"},{"endpoint":"/api/premium/model-intelligence","max_age_seconds":172800,"reason":""},{"endpoint":"/api/premium/models/frontier","max_age_seconds":172800,"reason":""},{"endpoint":"/api/premium/model-intelligence/history","max_age_seconds":null,"reason":""},{"endpoint":"/api/premium/provider-reliability-verdict","max_age_seconds":1800,"reason":"ranks providers by measured availability and tail consistency from the TensorFeed probes; charges only when the probe layer is fresh (within 30 min)"},{"endpoint":"/api/premium/resilience/concentration-verdict","max_age_seconds":1800,"reason":"rules on single-point-of-failure exposure across a caller-supplied AI-provider set, fusing the reliability ranking with live status; charges only when the probe layer is fresh (within 30 min) and at least one listed provider is tracked"},{"endpoint":"/api/premium/x402-settlement-verdict","max_age_seconds":600,"reason":"rules on Base x402 USDC settlement momentum, concentration, and the leading publisher over the TensorFeed settlement index; charges only when the index is fresh (within 10 min)"},{"endpoint":"/api/premium/x402-publisher-verdict","max_age_seconds":600,"reason":""},{"endpoint":"/api/premium/stack-safety-verdict","max_age_seconds":864000,"reason":"GO/HOLD/BLOCK deploy gate over the ingested AI-CVE batch joined to CISA KEV; charges only when the CVE batch is fresh (within 10 days)"},{"endpoint":"/api/premium/benchmark-trust-verdict","max_age_seconds":null,"reason":"pure compute over the editorial benchmark registry plus daily benchmark scores; no staleness signal applies"},{"endpoint":"/api/premium/failover-verdict","max_age_seconds":1800,"reason":"confirms the degraded provider against live incident triage then ranks operational alternatives; charges only when the operational layer is fresh (within 30 min)"},{"endpoint":"/api/premium/cost/projection","max_age_seconds":null,"reason":"computed live from current pricing"},{"endpoint":"/api/premium/compare/models","max_age_seconds":86400,"reason":"live aggregation over current pricing/benchmarks"},{"endpoint":"/api/premium/providers","max_age_seconds":86400,"reason":"live aggregation, ~24h freshness on cataloged data"},{"endpoint":"/api/premium/agents/directory","max_age_seconds":86400,"reason":"cataloged data, refreshed ~24h"},{"endpoint":"/api/premium/news/search","max_age_seconds":1800,"reason":"news refreshes every 10 min"},{"endpoint":"/api/premium/whats-new","max_age_seconds":3600,"reason":"aggregates last 1-7 days of news + status"},{"endpoint":"/api/premium/recent","max_age_seconds":3600,"reason":""},{"endpoint":"/api/premium/whats-new/pro","max_age_seconds":21600,"reason":""},{"endpoint":"/api/premium/policy/timeline","max_age_seconds":null,"reason":"compute over editorial registry, no staleness signal"},{"endpoint":"/api/premium/packages/pypi/momentum","max_age_seconds":86400,"reason":"synthesis over the daily PyPI trending snapshot"},{"endpoint":"/api/premium/research/velocity","max_age_seconds":86400,"reason":"baseline + fresh 30-day OpenAlex fetch with 24h cache"},{"endpoint":"/api/premium/research/authors","max_age_seconds":129600,"reason":"daily OpenAlex top-100 AI authors snapshot; charges only when fresh (within 36h of the daily cron)"},{"endpoint":"/api/premium/research/citation-velocity","max_age_seconds":129600,"reason":"daily OpenAlex citation-velocity snapshot with Semantic Scholar enrichment; charges only when fresh (within 36h of the daily cron)"},{"endpoint":"/api/premium/research/milestones","max_age_seconds":604800,"reason":""},{"endpoint":"/api/premium/research/emerging-keywords","max_age_seconds":604800,"reason":""},{"endpoint":"/api/premium/research/topic-search","max_age_seconds":604800,"reason":""},{"endpoint":"/api/premium/research/lab-productivity","max_age_seconds":604800,"reason":"offline Qwen extraction rolled up into 30/90/365-day lab counts; uploaded weekly"},{"endpoint":"/api/premium/funding/exposure","max_age_seconds":604800,"reason":""},{"endpoint":"/api/premium/funding/federal/momentum","max_age_seconds":129600,"reason":""},{"endpoint":"/api/premium/procurement/ai-contracts/demand","max_age_seconds":129600,"reason":""},{"endpoint":"/api/premium/procurement/ai-opportunities/deadlines","max_age_seconds":129600,"reason":""},{"endpoint":"/api/premium/federal-ai-policy","max_age_seconds":129600,"reason":""},{"endpoint":"/api/premium/ai-datacenters/buildout","max_age_seconds":null,"reason":""},{"endpoint":"/api/premium/ai-capex-cycle-verdict","max_age_seconds":null,"reason":""},{"endpoint":"/api/premium/model-deprecations/timeline","max_age_seconds":null,"reason":""},{"endpoint":"/api/premium/stack-drift-verdict","max_age_seconds":null,"reason":""},{"endpoint":"/api/premium/model-migration-verdict","max_age_seconds":null,"reason":""},{"endpoint":"/api/premium/inference-providers/arbitrage","max_age_seconds":null,"reason":""},{"endpoint":"/api/premium/inference/cost-verdict","max_age_seconds":null,"reason":""},{"endpoint":"/api/premium/ai-safety/incidents/exposure","max_age_seconds":129600,"reason":""},{"endpoint":"/api/premium/ai-safety/packages/security/radar","max_age_seconds":129600,"reason":""},{"endpoint":"/api/premium/security/package-verdict","max_age_seconds":129600,"reason":"GO/REVIEW/BLOCK pre-install ruling fusing the known-malicious IOC list, the OSV advisory snapshot, the GHSA AI firehose, and release cadence; charges only when the daily feeds are fresh (within 36h) and the package is in coverage"},{"endpoint":"/api/premium/packages/releases/velocity","max_age_seconds":32400,"reason":""},{"endpoint":"/api/premium/ai-velocity","max_age_seconds":7200,"reason":""},{"endpoint":"/api/premium/ai-crypto-pulse","max_age_seconds":1800,"reason":""},{"endpoint":"/api/premium/coding-harnesses/weekly-deltas","max_age_seconds":129600,"reason":""},{"endpoint":"/api/premium/news/action-cards","max_age_seconds":129600,"reason":""},{"endpoint":"/api/premium/status/incidents/triage","max_age_seconds":21600,"reason":""},{"endpoint":"/api/premium/ai-cves/ai-stack-cves","max_age_seconds":864000,"reason":""},{"endpoint":"/api/premium/ai-cves/exploited-in-wild","max_age_seconds":864000,"reason":""},{"endpoint":"/api/premium/ai-cves/cve","max_age_seconds":864000,"reason":""},{"endpoint":"/api/premium/ai-crawler-access/full","max_age_seconds":691200,"reason":""},{"endpoint":"/api/premium/ai-crawler-access/changes","max_age_seconds":691200,"reason":""},{"endpoint":"/api/premium/agent-ready/full","max_age_seconds":691200,"reason":""},{"endpoint":"/api/premium/hf-leaderboard/movers","max_age_seconds":129600,"reason":""},{"endpoint":"/api/premium/history/pricing/series","max_age_seconds":null,"reason":"historical immutable"},{"endpoint":"/api/premium/history/benchmarks/series","max_age_seconds":null,"reason":"historical immutable"},{"endpoint":"/api/premium/history/status/uptime","max_age_seconds":null,"reason":"historical immutable"},{"endpoint":"/api/premium/history/news/full","max_age_seconds":null,"reason":"historical immutable"},{"endpoint":"/api/premium/history/news/source-health","max_age_seconds":null,"reason":"historical immutable"},{"endpoint":"/api/premium/security/cve/range","max_age_seconds":null,"reason":"historical immutable"},{"endpoint":"/api/premium/security/kev/full","max_age_seconds":129600,"reason":"CISA KEV catalog refreshed daily at 06:30 UTC; SLA matches the 36h cron headroom"},{"endpoint":"/api/premium/security/kev/series","max_age_seconds":null,"reason":"historical immutable"},{"endpoint":"/api/premium/security/epss/series","max_age_seconds":129600,"reason":"EPSS scores update daily at FIRST.org; SLA matches the 36h cache headroom"},{"endpoint":"/api/premium/security/epss/top","max_age_seconds":129600,"reason":"EPSS scores update daily at FIRST.org; SLA matches the 36h cache headroom"},{"endpoint":"/api/premium/security/ssvc-verdict","max_age_seconds":null,"reason":"CISA SSVC Coordinator decision computed from the Vulnrichment record (immutable per scoring, 7-day cache); no wall-clock staleness applies"},{"endpoint":"/api/premium/clean/cve","max_age_seconds":null,"reason":"LLM-ready transform of immutable CVE Record"},{"endpoint":"/api/premium/clean/kev","max_age_seconds":129600,"reason":"LLM-ready transform of CISA KEV catalog entry; SLA tracks the 36h KEV cron headroom"},{"endpoint":"/api/premium/clean/epss","max_age_seconds":129600,"reason":"LLM-ready transform of EPSS score; SLA tracks the 36h EPSS cache headroom"},{"endpoint":"/api/premium/security/ghsa/ai-feed","max_age_seconds":32400,"reason":"GHSA AI-relevant advisory firehose refreshed every 6h; charges only when fresh (within 9h of the last successful refresh)"},{"endpoint":"/api/premium/apis-guru/ai-feed","max_age_seconds":129600,"reason":"APIs.guru AI-API watch refreshed daily; charges only when fresh (within 36h of the last successful refresh)"},{"endpoint":"/api/premium/history/news/clusters/full","max_age_seconds":null,"reason":"historical immutable"},{"endpoint":"/api/premium/history/news/verified","max_age_seconds":null,"reason":"historical immutable"},{"endpoint":"/api/premium/mcp/registry/series","max_age_seconds":null,"reason":"historical immutable"},{"endpoint":"/api/premium/openrouter/series","max_age_seconds":null,"reason":"historical immutable; daily OpenRouter catalog snapshots captured by TF, cannot be backfilled"},{"endpoint":"/api/premium/x402-registry/series","max_age_seconds":null,"reason":"historical immutable; daily x402 publisher-registry snapshots captured by TF, cannot be backfilled"},{"endpoint":"/api/premium/hf/velocity","max_age_seconds":null,"reason":"historical immutable; daily HF top-30 snapshots captured by TF, day-over-day velocity cannot be backfilled"},{"endpoint":"/api/premium/substrate-changelog/history","max_age_seconds":null,"reason":""},{"endpoint":"/api/premium/export-controls/ai/history","max_age_seconds":null,"reason":""},{"endpoint":"/api/premium/probe/series","max_age_seconds":null,"reason":"historical immutable"},{"endpoint":"/api/gpu/pricing/series","max_age_seconds":null,"reason":"historical immutable"},{"endpoint":"/api/premium/watches","max_age_seconds":null,"reason":"registration write, no capture concept"},{"endpoint":"/api/premium/ai-companies","max_age_seconds":32400,"reason":""},{"endpoint":"/api/premium/sec/filings/guidance-delta","max_age_seconds":null,"reason":"periodic filings are immutable once filed (no wall-clock staleness); freshness is input-keyed, the endpoint no-charges when a newer same-form filing has superseded the served delta"},{"endpoint":"/api/premium/x402-index","max_age_seconds":600,"reason":""},{"endpoint":"/api/x402-index","max_age_seconds":600,"reason":""}],"standard_manifest":"/.well-known/agent-fair-trade.json","public_record":"/api/payment/no-charge-stats","doc":"https://tensorfeed.ai/agent-fair-trade","network":{"description":"TensorFeed and TerminalFeed share a single bearer-token + credit ledger. A token minted on either site works on both. Each site signs receipts with its own keypair.","established":"2026-04-30","host_ledger":"tensorfeed.ai","sister_sites":[{"site":"tensorfeed.ai","manifest":"https://tensorfeed.ai/.well-known/agent-fair-trade.json","manifesto":"https://tensorfeed.ai/agent-fair-trade","receipt_key":"https://tensorfeed.ai/.well-known/tensorfeed-receipt-key.json"},{"site":"terminalfeed.io","manifest":"https://terminalfeed.io/.well-known/agent-fair-trade.json","manifesto":"https://terminalfeed.io/agent-fair-trade","receipt_key":"https://terminalfeed.io/.well-known/terminalfeed-receipt-key.json"}]},"supportive_sites":{"description":"Sites that contribute upstream data to the network without running an AFTA-compliant API of their own. TensorFeed pulls from their public endpoints and re-exposes the data through TF-side AFTA-compliant endpoints; payments and credits flow through TF's host ledger.","sites":[{"site":"vr.org","role":"data_partner","vertical":"VR / AR / XR news + original editorial","contributes_to":["/api/vr/news","/api/vr/originals"],"upstream_endpoints":["https://vr.org/api/feed","https://vr.org/api/articles"],"refresh_cadence":"TF pulls hourly via cron; vr.org refreshes every 15 min upstream"}]}},"news":{"totalArticles":107,"sourcesPolled":12,"sourcesSucceeded":11,"lastUpdated":"2026-06-07T22:00:13.302Z"}}
|
package/dist/sanitize.d.ts
CHANGED
|
@@ -28,6 +28,21 @@
|
|
|
28
28
|
* Scrub a single string for return to a host LLM. Idempotent and pure.
|
|
29
29
|
*/
|
|
30
30
|
export declare function sanitizeForLLM(input: string): string;
|
|
31
|
+
/**
|
|
32
|
+
* Neutralize a caller-supplied identifier before echoing it back inside a
|
|
33
|
+
* human-readable message (for example `Service "X" not found`). Model,
|
|
34
|
+
* provider, service and benchmark names are the only caller text that lands
|
|
35
|
+
* in our response strings, and a well-formed one never contains angle
|
|
36
|
+
* brackets. Stripping `<` and `>` means a value like
|
|
37
|
+
* `<script>alert(1)</script>` cannot be reflected as live markup into a
|
|
38
|
+
* downstream web renderer, nor masquerade as a tag in an LLM's context. The
|
|
39
|
+
* length cap stops a caller padding the message. This runs on echoed caller
|
|
40
|
+
* input only, never on the structured data we return, so arrow notation
|
|
41
|
+
* (`->`) and other formatted output elsewhere is untouched. The full
|
|
42
|
+
* response still passes through sanitizeForLLM afterward for control-char
|
|
43
|
+
* and role-token scrubbing.
|
|
44
|
+
*/
|
|
45
|
+
export declare function sanitizeReflectedValue(input: unknown): string;
|
|
31
46
|
/**
|
|
32
47
|
* Recursively scrub the `text` field of every text-content item in an
|
|
33
48
|
* MCP tool response. Non-text items (resources, images) pass through
|
package/dist/sanitize.js
CHANGED
|
Binary file
|
package/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "@tensorfeed/mcp-server",
|
|
3
|
-
"version": "2.0.
|
|
3
|
+
"version": "2.0.2",
|
|
4
4
|
"mcpName": "ai.tensorfeed/mcp-server",
|
|
5
5
|
"description": "MCP server for TensorFeed.ai - AI news, service status, model pricing, signed decision verdicts, time series, model comparison, webhook watches, and a discovery tool for the full TensorFeed data catalog, for AI agents",
|
|
6
6
|
"main": "dist/index.js",
|
package/server.json
CHANGED
|
@@ -3,7 +3,7 @@
|
|
|
3
3
|
"name": "ai.tensorfeed/mcp-server",
|
|
4
4
|
"title": "TensorFeed",
|
|
5
5
|
"description": "AI news, model pricing, service status, and machine-payable premium tools. AFTA-certified.",
|
|
6
|
-
"version": "2.0.
|
|
6
|
+
"version": "2.0.2",
|
|
7
7
|
"websiteUrl": "https://tensorfeed.ai/developers/agent-payments",
|
|
8
8
|
"repository": {
|
|
9
9
|
"url": "https://github.com/RipperMercs/tensorfeed-mcp",
|
|
@@ -20,7 +20,7 @@
|
|
|
20
20
|
"registryType": "npm",
|
|
21
21
|
"registryBaseUrl": "https://registry.npmjs.org",
|
|
22
22
|
"identifier": "@tensorfeed/mcp-server",
|
|
23
|
-
"version": "2.0.
|
|
23
|
+
"version": "2.0.2",
|
|
24
24
|
"runtimeHint": "npx",
|
|
25
25
|
"transport": {
|
|
26
26
|
"type": "stdio"
|
|
@@ -37,8 +37,22 @@
|
|
|
37
37
|
],
|
|
38
38
|
"_meta": {
|
|
39
39
|
"io.modelcontextprotocol.registry/publisher-provided": {
|
|
40
|
-
"categories": [
|
|
41
|
-
|
|
40
|
+
"categories": [
|
|
41
|
+
"news",
|
|
42
|
+
"ai-models",
|
|
43
|
+
"data",
|
|
44
|
+
"payments"
|
|
45
|
+
],
|
|
46
|
+
"tags": [
|
|
47
|
+
"ai-news",
|
|
48
|
+
"x402",
|
|
49
|
+
"usdc",
|
|
50
|
+
"base",
|
|
51
|
+
"model-routing",
|
|
52
|
+
"agent-payments",
|
|
53
|
+
"machine-payable",
|
|
54
|
+
"stablecoin"
|
|
55
|
+
],
|
|
42
56
|
"license": "MIT",
|
|
43
57
|
"premium": true,
|
|
44
58
|
"premiumPaymentMethod": "USDC on Base mainnet",
|