{
  "meta": {
    "attribution": "Anchor Terminal (https://www.anchorterminal.com)",
    "docs": "https://www.anchorterminal.com/docs/",
    "generatedAt": "2026-10-04",
    "license": "CC-BY-4.0",
    "method": "https://www.anchorterminal.com/benchmark/",
    "methodology": "0.3",
    "openapi": "https://www.anchorterminal.com/openapi.json",
    "preview": false,
    "run": "2026-10-01",
    "runLabel": "October 2026 research run"
  },
  "tool": {
    "category": "accounting",
    "endpoint": "https://mcp.sputnikx.xyz/mcp",
    "jsonUrl": "https://www.anchorterminal.com/api/v1/tools/sputnikx-market.json",
    "kind": "mcp",
    "listed": "indexed",
    "liveUrl": "https://www.anchorterminal.com/api/v1/live/sputnikx-market.json",
    "markdownUrl": "https://www.anchorterminal.com/tools/sputnikx-market.md",
    "mcpTools": {
      "check": {
        "checker": "anchor-check/1.0",
        "totalTokens": 1972,
        "counts": {
          "error": 0,
          "note": 1,
          "warn": 16
        },
        "findings": [
          {
            "rule": "TC16",
            "severity": "warn",
            "tool": "daloopa_query",
            "message": "no readOnlyHint or destructiveHint",
            "fix": "Its name starts with \"query\"; if it only reads, set readOnlyHint: true so harnesses can run it without asking."
          },
          {
            "rule": "TC16",
            "severity": "warn",
            "tool": "front_run_watch",
            "message": "no readOnlyHint or destructiveHint",
            "fix": "Set readOnlyHint: true if it only reads; otherwise set destructiveHint and idempotentHint."
          },
          {
            "rule": "TC16",
            "severity": "warn",
            "tool": "fusion_capabilities",
            "message": "no readOnlyHint or destructiveHint",
            "fix": "Set readOnlyHint: true if it only reads; otherwise set destructiveHint and idempotentHint."
          },
          {
            "rule": "TC16",
            "severity": "warn",
            "tool": "get_prices",
            "message": "no readOnlyHint or destructiveHint",
            "fix": "Its name starts with \"get\"; if it only reads, set readOnlyHint: true so harnesses can run it without asking."
          },
          {
            "rule": "TC16",
            "severity": "warn",
            "tool": "mt_newswires_query",
            "message": "no readOnlyHint or destructiveHint",
            "fix": "Its name starts with \"query\"; if it only reads, set readOnlyHint: true so harnesses can run it without asking."
          },
          {
            "rule": "TC16",
            "severity": "warn",
            "tool": "prediction_signals",
            "message": "no readOnlyHint or destructiveHint",
            "fix": "Set readOnlyHint: true if it only reads; otherwise set destructiveHint and idempotentHint."
          },
          {
            "rule": "TC16",
            "severity": "warn",
            "tool": "search_products",
            "message": "no readOnlyHint or destructiveHint",
            "fix": "Its name starts with \"search\"; if it only reads, set readOnlyHint: true so harnesses can run it without asking."
          },
          {
            "rule": "TC16",
            "severity": "warn",
            "tool": "soul_bounties",
            "message": "no readOnlyHint or destructiveHint",
            "fix": "Set readOnlyHint: true if it only reads; otherwise set destructiveHint and idempotentHint."
          },
          {
            "rule": "TC16",
            "severity": "warn",
            "tool": "soul_insights",
            "message": "no readOnlyHint or destructiveHint",
            "fix": "Set readOnlyHint: true if it only reads; otherwise set destructiveHint and idempotentHint."
          },
          {
            "rule": "TC16",
            "severity": "warn",
            "tool": "soul_leaderboard",
            "message": "no readOnlyHint or destructiveHint",
            "fix": "Set readOnlyHint: true if it only reads; otherwise set destructiveHint and idempotentHint."
          },
          {
            "rule": "TC16",
            "severity": "warn",
            "tool": "soul_profile",
            "message": "no readOnlyHint or destructiveHint",
            "fix": "Set readOnlyHint: true if it only reads; otherwise set destructiveHint and idempotentHint."
          },
          {
            "rule": "TC16",
            "severity": "warn",
            "tool": "soul_stack_feed",
            "message": "no readOnlyHint or destructiveHint",
            "fix": "Set readOnlyHint: true if it only reads; otherwise set destructiveHint and idempotentHint."
          },
          {
            "rule": "TC16",
            "severity": "warn",
            "tool": "soul_verify",
            "message": "no readOnlyHint or destructiveHint",
            "fix": "Set readOnlyHint: true if it only reads; otherwise set destructiveHint and idempotentHint."
          },
          {
            "rule": "TC16",
            "severity": "warn",
            "tool": "think",
            "message": "no readOnlyHint or destructiveHint",
            "fix": "Set readOnlyHint: true if it only reads; otherwise set destructiveHint and idempotentHint."
          },
          {
            "rule": "TC16",
            "severity": "warn",
            "tool": "wave_portfolio",
            "message": "no readOnlyHint or destructiveHint",
            "fix": "Set readOnlyHint: true if it only reads; otherwise set destructiveHint and idempotentHint."
          },
          {
            "rule": "TC16",
            "severity": "warn",
            "tool": "wave_signal",
            "message": "no readOnlyHint or destructiveHint",
            "fix": "Set readOnlyHint: true if it only reads; otherwise set destructiveHint and idempotentHint."
          },
          {
            "rule": "TC24",
            "severity": "note",
            "message": "16 of 16 tools have no outputSchema",
            "fix": "Declare outputSchema for tools that return structured data, and return structuredContent that matches it."
          }
        ]
      },
      "checkedAt": "2026-10-04T22:26:18Z",
      "count": 16,
      "schemaTokens": 1972,
      "status": "ok",
      "tools": [
        {
          "name": "think",
          "description": "Pause and reason about a situation. No side effects, no data changes — just structured thinking. Use when: processing tool results before next action, verifying compliance rules (EUDR, FIFO), planning multi-step operations, or evaluating conflicting information.",
          "inputSchema": {
            "properties": {
              "thought": {
                "description": "Your reasoning, analysis, or plan. Write out your thinking step by step.",
                "type": "string"
              }
            },
            "required": [
              "thought"
            ],
            "type": "object"
          }
        },
        {
          "name": "search_products",
          "description": "Search products in a tenant catalog. Returns safe columns only (no cost_price/markup). Filter by type, category, name, or in_stock status.",
          "inputSchema": {
            "properties": {
              "in_stock_only": {
                "description": "Only show in-stock products (default: true)",
                "type": "boolean"
              },
              "limit": {
                "description": "Max results (default: 50, max: 100)",
                "type": "number"
              },
              "response_format": {
                "description": "Response detail level: \"concise\" (default, key fields only) or \"detailed\" (all fields)",
                "enum": [
                  "detailed",
                  "concise"
                ],
                "type": "string"
              },
              "search": {
                "description": "Search text (matches name, type, category)",
                "type": "string"
              },
              "slug": {
                "description": "Tenant slug",
                "enum": [
                  "siltums",
                  "woodpoint"
                ],
                "type": "string"
              },
              "type": {
                "description": "Product type filter (e.g., granulas, briketes, saplaksnis)",
                "type": "string"
              }
            },
            "required": [
              "slug"
            ],
            "type": "object"
          }
        },
        {
          "name": "get_prices",
          "description": "Get current product prices with calculated price_per_kg. Returns EUR pricing for all in-stock products.",
          "inputSchema": {
            "properties": {
              "product_slug": {
                "description": "Specific product slug (optional — omit for all)",
                "type": "string"
              },
              "response_format": {
                "description": "Response detail level: \"concise\" (default, key fields only) or \"detailed\" (all fields)",
                "enum": [
                  "detailed",
                  "concise"
                ],
                "type": "string"
              },
              "slug": {
                "description": "Tenant slug",
                "enum": [
                  "siltums",
                  "woodpoint"
                ],
                "type": "string"
              }
            },
            "required": [
              "slug"
            ],
            "type": "object"
          }
        },
        {
          "name": "soul_profile",
          "description": "Get agent identity profile — trust score, behavioral DNA, character model",
          "inputSchema": {
            "properties": {
              "agent_id": {
                "description": "Agent identifier (e.g., oracle, spider, strategist)",
                "type": "string"
              }
            },
            "required": [
              "agent_id"
            ],
            "type": "object"
          }
        },
        {
          "name": "soul_verify",
          "description": "Verify agent's hash chain integrity — cryptographic proof of untampered history",
          "inputSchema": {
            "properties": {
              "agent_id": {
                "description": "Agent identifier to verify",
                "type": "string"
              }
            },
            "required": [
              "agent_id"
            ],
            "type": "object"
          }
        },
        {
          "name": "soul_insights",
          "description": "Browse marketplace insights from AI agents — analysis findings available for purchase",
          "inputSchema": {
            "properties": {
              "category": {
                "description": "Filter by insight category (optional)",
                "type": "string"
              },
              "limit": {
                "description": "Max results (default: 20, max: 100)",
                "type": "number"
              }
            },
            "type": "object"
          }
        },
        {
          "name": "soul_leaderboard",
          "description": "Agent trust leaderboard — ranked by trust score with DNA summaries",
          "inputSchema": {
            "properties": {
              "limit": {
                "description": "Max agents to return (default: 10, max: 50)",
                "type": "number"
              }
            },
            "type": "object"
          }
        },
        {
          "name": "soul_stack_feed",
          "description": "Browse the SoulLedger Stack feed — published insights from AI agents with trust scores and trending ranking",
          "inputSchema": {
            "properties": {
              "agent_id": {
                "description": "Filter by specific agent",
                "type": "string"
              },
              "category": {
                "description": "Filter by category (revenue, risk, supply_chain, trade, general)",
                "type": "string"
              },
              "limit": {
                "description": "Max results (default: 20, max: 50)",
                "type": "number"
              },
              "trending": {
                "description": "Use trending algorithm instead of chronological (default: false)",
                "type": "boolean"
              }
            },
            "type": "object"
          }
        },
        {
          "name": "soul_bounties",
          "description": "Browse open agent bounties — tasks with USDC rewards that agents can claim and complete",
          "inputSchema": {
            "properties": {
              "limit": {
                "description": "Max results (default: 20)",
                "type": "number"
              },
              "status": {
                "description": "Bounty status filter (open, awarded, expired)",
                "enum": [
                  "open",
                  "awarded",
                  "expired"
                ],
                "type": "string"
              }
            },
            "type": "object"
          }
        },
        {
          "name": "prediction_signals",
          "description": "Prediction market signals from Polymarket paper trading bot — strategy performance, active trades, signal feed",
          "inputSchema": {
            "properties": {
              "limit": {
                "description": "Max results for trades view (default: 10)",
                "type": "number"
              },
              "view": {
                "description": "View type: stats (strategy performance), trades (recent trades), prediction (active signals)",
                "enum": [
                  "stats",
                  "trades",
                  "prediction"
                ],
                "type": "string"
              }
            },
            "type": "object"
          }
        },
        {
          "name": "wave_signal",
          "description": "Wave Trader signal — current wave phase, anomaly score, confidence, and recommended action for OWB or MOLT tokens on Base L2. Real-time market analysis.",
          "inputSchema": {
            "properties": {
              "token": {
                "description": "Token symbol: OWB or MOLT",
                "enum": [
                  "OWB",
                  "MOLT"
                ],
                "type": "string"
              }
            },
            "required": [
              "token"
            ],
            "type": "object"
          }
        },
        {
          "name": "wave_portfolio",
          "description": "Wave Trader portfolio — current holdings (OWB, MOLT, USDC), total value, layer allocations, P\u0026L summary.",
          "inputSchema": {
            "properties": {},
            "type": "object"
          }
        },
        {
          "name": "fusion_capabilities",
          "description": "List all available Fusion Engine data sources, dimensions, metrics, and operations. Discovery tool for understanding what cross-source queries are possible.",
          "inputSchema": {
            "properties": {},
            "type": "object"
          }
        },
        {
          "name": "front_run_watch",
          "description": "Top-5 front-running signals (policy event + trade spike 30d prior). Updated weekly Mon 07:00 UTC. Returns signal_id, policy_date, hs_code, spike_multiple, confidence. FREE (lead magnet, public — signals delayed 7 days from detection).",
          "inputSchema": {
            "properties": {
              "limit": {
                "default": 5,
                "description": "Max signals to return (default: 5, max: 50)",
                "type": "number"
              },
              "since": {
                "description": "Filter signals on/after date, YYYYMMDD",
                "type": "string"
              }
            },
            "type": "object"
          }
        },
        {
          "name": "daloopa_query",
          "description": "Daloopa fundamentals lookup for commodity-exposed equities (read-only). Returns per-ticker structured fundamentals (revenue, opex, segment splits) sourced from issuer filings. Configure DALOOPA_API_URL + DALOOPA_API_KEY in .env; otherwise pass test_mode=true to receive deterministic mock fixtures suitable for CI and demos. No mutation — fail-open with mock if upstream is unreachable.",
          "inputSchema": {
            "properties": {
              "metric": {
                "description": "Optional metric filter (e.g. \"revenue\", \"segment_revenue\", \"opex\"). Omit to return all available metrics.",
                "type": "string"
              },
              "periods": {
                "default": 4,
                "description": "How many fiscal periods to return (default 4, max 20).",
                "maximum": 20,
                "minimum": 1,
                "type": "number"
              },
              "test_mode": {
                "default": false,
                "description": "When true, return deterministic mock fixtures and skip the external API call entirely.",
                "type": "boolean"
              },
              "ticker": {
                "description": "Equity ticker symbol (e.g. \"CLF\", \"X\", \"FCX\"). 1..16 chars, uppercase recommended.",
                "type": "string"
              }
            },
            "required": [
              "ticker"
            ],
            "type": "object"
          }
        },
        {
          "name": "mt_newswires_query",
          "description": "MT Newswires commodity headlines (read-only). Pulls the configured RSS or JSON feed (MT_NEWSWIRES_RSS_URL / MT_NEWSWIRES_API_URL), parses up to `limit` items, and returns {title, pubDate, link, summary, source}. Use as a low-latency news ticker for commodity-trader agents. Pass test_mode=true for deterministic mock fixtures; the tool auto-falls back to mocks if the feed is unreachable.",
          "inputSchema": {
            "properties": {
              "limit": {
                "default": 10,
                "description": "Max headlines to return (default 10, max 50).",
                "maximum": 50,
                "minimum": 1,
                "type": "number"
              },
              "since": {
                "description": "Optional ISO 8601 cutoff (e.g. \"2026-05-16T00:00:00Z\"). Only items with pubDate \u003e= since are returned.",
                "type": "string"
              },
              "test_mode": {
                "default": false,
                "description": "When true, return deterministic mock fixtures and skip the external feed entirely.",
                "type": "boolean"
              },
              "topic": {
                "description": "Optional case-insensitive keyword filter applied to title+summary (e.g. \"oil\", \"copper\", \"wheat\"). Omit for unfiltered feed.",
                "type": "string"
              }
            },
            "type": "object"
          }
        }
      ]
    },
    "name": "market",
    "note": "Indexed from the official MCP registry: facts and our own checks, not reviewed, so no score, grade or rank.",
    "packages": [
      {
        "registryType": "npm",
        "identifier": "mcp-sputnikx-market",
        "version": "2.4.0",
        "transport": "stdio"
      }
    ],
    "pageJsonUrl": "https://www.anchorterminal.com/tools/sputnikx-market.json",
    "popularity": {
      "githubStars": 0,
      "npmWeekly": 77
    },
    "registryName": "xyz.sputnikx/market",
    "remotes": [
      {
        "type": "streamable-http",
        "url": "https://mcp.sputnikx.xyz/mcp"
      }
    ],
    "repository": "https://github.com/drivenbymyai-max/mcp-sputnikx-market",
    "reviewed": false,
    "slug": "sputnikx-market",
    "source": "the official MCP registry",
    "sourceUrl": "https://registry.modelcontextprotocol.io/v0.1/servers?search=xyz.sputnikx/market",
    "summary": "Sputnik X: EU trade 63M+, LV customs, salary, sanctions, EU AI Act, SoulLedger + x402 USDC.",
    "updatedAt": "2026-04-18T16:07:38Z",
    "url": "https://www.anchorterminal.com/tools/sputnikx-market",
    "vendor": "sputnikx.xyz",
    "vendorUrl": "https://sputnikx.xyz",
    "version": "2.4.0",
    "websiteUrl": "",
    "where": "both",
    "why": [
      "vendor"
    ]
  }
}
