{"name":"market.mtok/mcp","slug":"mtok-mcp","title":null,"description":"Spot market for AI inference tokens. Buyers pay per draw in USDC on Base; sellers host delivery.","url":"https://mcp.market/server/mtok-mcp","rating":null,"grade":"B","score":79,"certified":false,"status":"active","category":"other","tags":[],"presence":{"score":23,"stars":0,"forks":0,"downloads_week":null,"last_push_at":"2026-09-20T01:21:56.000Z","license":"MIT"},"uptime":{"percent":100,"checks":28,"ok":28,"last_checked_at":"2026-11-04T10:45:46.760Z","last_ok_at":"2026-11-04T10:45:46.760Z","latency_ms":258},"claimed":false,"transport":"remote","callable_via_gateway":true,"default_price_micros":0,"repository":"https://github.com/mtok-market/mcp","website":"https://mtok.market","version":"1.0.1","remotes":[{"type":"streamable-http","url":"https://mtok.market/mcp"}],"packages":[],"tools":[{"name":"buying_guide","description":"Turnkey, executable steps to get a human cheap AI tokens and run their prompts on mtok.market: bid (read routes[]) or read the book for a tier:direct offer, then draw paid chunks from the seller's relay (pay each draw on-chain through MtokDripLedger, POST <relayEndpoint>/chunk, the relay verifies DrawPaid and serves). You need a funded wallet on Base.","write_action":false,"price_micros":0,"input_schema":{"type":"object","properties":{}}},{"name":"cancel_order","description":"Cancel one of your open orders. side: offer|bid.","write_action":true,"price_micros":0,"input_schema":{"type":"object","properties":{"side":{"type":"string","enum":["offer","bid"]},"id":{"type":"string"}},"required":["side","id"]}},{"name":"get_book","description":"Open offers (asks) and bids for a model. sort=input|output ranks by that dimension.","write_action":false,"price_micros":0,"input_schema":{"type":"object","properties":{"model":{"type":"string"},"sort":{"type":"string","enum":["input","output"]}}}},{"name":"get_config","description":"Chain config a SELLER-HOSTED buyer needs to build the on-chain draw payment: { feeAddress, feeBps, dustThresholdUsd, chainId, usdcAddress, dripContractAddress }. Pay each draw through the MtokDripLedger contract at dripContractAddress (payDraw), then affirmDraw/disputeDraw on-chain; the seller relay verifies the DrawPaid event before delivery.","write_action":false,"price_micros":0,"input_schema":{"type":"object","properties":{}}},{"name":"get_draws","description":"The chain-derived draw tape: contract-paid draws indexed from MtokDripLedger events on Base. status=inProcess (DrawPaid with no terminal yet) | settled (closed by DrawAffirmed or DrawDisputed). This is the canonical delivered/receipt surface; the platform records nothing off-chain.","write_action":false,"price_micros":0,"input_schema":{"type":"object","properties":{"status":{"type":"string","enum":["inProcess","settled"]},"limit":{"type":"integer"}}}},{"name":"get_me","description":"Your agent state: open orders (offers + bids). Non-custodial — there is no platform wallet, grant, or credential vault in /me; money moves peer-to-peer on-chain, and your delivered draws are the on-chain tape (get_draws).","write_action":false,"price_micros":0,"input_schema":{"type":"object","properties":{}}},{"name":"get_reputation","description":"A seller's reputation: score, tier, recommendedMaxChunkUsd (the per-draw size a buyer should risk in the direct tier), plus a chain object {affirmed, disputed, deliveredUsd} folded from MtokDripLedger events (source:\"chain\").","write_action":false,"price_micros":0,"input_schema":{"type":"object","properties":{"agentId":{"type":"string"}},"required":["agentId"]}},{"name":"get_spot","description":"Spot prices per model: the delivered OUTPUT-token rate (USD/MTok) from affirmed on-chain draws (last price, median, draw count).","write_action":false,"price_micros":0,"input_schema":{"type":"object","properties":{}}},{"name":"get_stats","description":"Exchange fee model plus chain-derived volume: delivered volume + affirmed/disputed counts, all recomputable from MtokDripLedger events on Base (source:\"chain\").","write_action":false,"price_micros":0,"input_schema":{"type":"object","properties":{}}},{"name":"place_bid","description":"Bid for a block. The bid response returns routes[] — the crossing SELLER-HOSTED offers (lowest price first), each {offerId, sellerId, relayEndpoint, settlementPubkey, requestHashScheme?, inputPricePerMTok, outputPricePerMTok, availableInputTokens, availableOutputTokens}. Pick a route and DRAW paid chunks from its relayEndpoint (pay each draw on-chain through MtokDripLedger using /api/config, POST <relayEndpoint>/chunk, then affirmDraw/disputeDraw on-chain — see buying_guide / drawFromSeller). priceOn=input|output ranks matches by one dimension. You ALWAYS need a funded wallet on Base (there is no no-wallet path). SIGNING: a non-custodial market requires a client-signed Ed25519 intent — the MCP server CANNOT sign (it does not hold your key). Use the mtok SDK's bid() (it signs for you), or sign the intent yourself and pass {intent, sig}.","write_action":false,"price_micros":0,"input_schema":{"type":"object","properties":{"model":{"type":"string"},"inputTokens":{"type":"integer"},"outputTokens":{"type":"integer"},"maxInputPricePerMTok":{"type":"number"},"maxOutputPricePerMTok":{"type":"number"},"priceOn":{"type":"string","enum":["input","output"]},"maxStartDelaySeconds":{"type":"integer"},"intent":{"type":"object"},"sig":{"type":"string"}},"required":[],"anyOf":[{"required":["intent","sig"]},{"required":["model","inputTokens","outputTokens","maxInputPricePerMTok","maxOutputPricePerMTok"]}]}},{"name":"place_offer","description":"List capacity for sale via SELLER-HOSTED delivery (tier:\"direct\" — the only advertised path). Set tier:\"direct\" + relayEndpoint (your relay's PUBLIC HTTPS url — a cloudflared tunnel gives one free) + settlementPubkey (your seller payout EVM address on Base) and NO credentialId: you run your own relay (mtok-relay or any conforming passthrough) pointed at an upstream you control, and buyers pay each draw on-chain through MtokDripLedger (canonical relay protocol: GET /api/guides/selling, notes.directTierProtocol). After every instance behind relayEndpoint is dual-stack, add requestHashScheme:\"nonce-v1\"; omit it during a mixed-fleet rollout. Set a positive price; each on-chain draw pays seller plus configured platform fee, and the platform holds nothing. Your relay is REPORT-FREE: it verifies the DrawPaid event before delivery and reports nothing (the platform indexes the draw from MtokDripLedger events; the canonical tape is GET /api/chain/draws). GET /api/models/licenses is best-effort guidance, not a gate: you are responsible for the right to sell what you list. usableForSeconds is required. SIGNING: a non-custodial market requires a client-signed Ed25519 intent — the MCP server CANNOT sign (it does not hold your key); sign tier/relayEndpoint/settlementPubkey/requestHashScheme INTO the intent params. Use the mtok SDK's offer() (it signs for you), or sign the intent yourself and pass {intent, sig}.","write_action":false,"price_micros":0,"input_schema":{"type":"object","properties":{"model":{"type":"string"},"inputTokens":{"type":"integer"},"outputTokens":{"type":"integer"},"inputPricePerMTok":{"type":"number"},"outputPricePerMTok":{"type":"number"},"usableForSeconds":{"type":"integer"},"payoutAddress":{"type":"string"},"tier":{"type":"string","enum":["direct"]},"relayEndpoint":{"type":"string"},"settlementPubkey":{"type":"string"},"requestHashScheme":{"type":"string","enum":["nonce-v1"],"description":"Optional signed rollout marker; set only when every relay instance behind relayEndpoint is dual-stack."},"startsInSeconds":{"type":"integer"},"recurring":{"type":"boolean"},"intent":{"type":"object"},"sig":{"type":"string"}},"required":[],"anyOf":[{"required":["intent","sig"]},{"required":["model","inputTokens","outputTokens","inputPricePerMTok","outputPricePerMTok","usableForSeconds","relayEndpoint","settlementPubkey","payoutAddress"]}]}},{"name":"register","description":"Create an agent identity. Returns {agentId, apiKey}; send the apiKey as the x-api-key (or Authorization: Bearer) header on EVERY subsequent request to act as that agent — this transport is stateless, so it is not remembered between calls. Pass pubkey (Ed25519 SPKI PEM) if you will place signed non-custodial orders.","write_action":true,"price_micros":0,"input_schema":{"type":"object","properties":{"name":{"type":"string"},"pubkey":{"type":"string"}},"required":["name"]}},{"name":"selling_guide","description":"Turnkey, executable steps to put a human's spare AI capacity on mtok.market via SELLER-HOSTED delivery — run YOUR OWN relay pointed at an upstream you control (a local Ollama/vLLM model, a subscription via a CLI bridge, or a provider key) and list a tier:direct offer; buyers pay you per chunk on-chain. Gotchas baked in. supply_type filters to one path.","write_action":false,"price_micros":0,"input_schema":{"type":"object","properties":{"supply_type":{"type":"string","enum":["open-weight","subscription","provider-key"]}}}}],"scan":{"score":79,"grade":"B","scanned_at":"2026-09-26T05:15:17.929Z","report":{"scannerVersion":"0.1.9","scannedAt":"2026-09-26T05:15:17.828Z","components":{"code":{"score":-1,"max":25,"notes":["remote-only server, no package to scan"]},"reliability":{"score":20,"max":20,"notes":["remote reachable in 602ms"]},"poisoning":{"score":15,"max":15,"notes":["13 tool descriptions checked"]},"auth":{"score":3,"max":15,"notes":["open endpoint exposes 2 write-action tools with no auth"]},"maintenance":{"score":15,"max":15,"notes":["last push 6 days ago"]},"identity":{"score":6,"max":10,"notes":["namespace and repository owner differ","website matches verified namespace"]}},"findings":[{"id":"auth.open-write","severity":"high","component":"auth","title":"Write-action tools reachable without authentication"}],"inputs":{"probes":[{"url":"https://mtok.market/mcp","reachable":true,"authRequired":false,"latencyMs":602,"serverInfo":{"name":"mtok.market","version":"1"}}],"packages":[],"repo":{"found":true,"owner":"mtok-market","repo":"mcp","archived":false,"pushedAt":"2026-09-20T01:21:56Z","stars":0,"forks":0,"openIssues":0,"ownerType":"Organization","ownerAvatarUrl":"https://avatars.githubusercontent.com/u/297053433?v=4","ownerCreatedAt":"2026-06-26T03:45:48Z","license":"MIT"},"icon":{"url":"https://mtok.market/favicon.svg","source":"site"},"presence":{"stars":0,"forks":0,"downloadsWeek":null,"license":"MIT","lastPushAt":"2026-09-20T01:21:56.000Z","score":23}}}},"grade_history":[],"reviews":[]}