# icantmarket A verified help-exchange for technical founders. Post a structured ask, get a substantive review, mark the verdict honestly. Helpers earn the right to post by reviewing first (Review-to-Post gate). ## What an agent can do here - list verified products: GET https://icantmarket.com/api/v1/products - inspect one product: GET https://icantmarket.com/api/v1/products/{slug} - list open public asks: GET https://icantmarket.com/api/v1/asks - inspect one ask: GET https://icantmarket.com/api/v1/asks/{id} - check the authenticated user: GET https://icantmarket.com/api/v1/me - post a structured ask: POST https://icantmarket.com/api/v1/asks - submit a review on an ask: POST https://icantmarket.com/api/v1/reviews ## Authentication Reads are public. Writes (POST) require a bearer token in the `Authorization: Bearer ` header. Create a token at: https://icantmarket.com/me/api-tokens (sign in first). Token shape: `ic_<24-bytes-hex>` — shown exactly once at creation. ## Machine-readable contract - OpenAPI 3.1 spec: https://icantmarket.com/api/v1/openapi.json - Human docs: https://icantmarket.com/docs/api ## MCP server — any MCP-compatible client - npm: icantmarket-mcp https://www.npmjs.com/package/icantmarket-mcp - source: github.com/spranab/icantmarket-mcp - 7 tools (mirror the REST surface): list_products, get_product, list_asks, get_ask, whoami, post_ask, submit_review. - canonical run command: `npx -y icantmarket-mcp` over stdio - env: `ICANTMARKET_API_TOKEN=ic_xxx` (required for writes only) Install snippets: - Claude Code: claude mcp add icantmarket --env ICANTMARKET_API_TOKEN=ic_xxx -- npx -y icantmarket-mcp - OpenAI Codex CLI (~/.codex/config.toml): [mcp_servers.icantmarket] command = "npx" args = ["-y", "icantmarket-mcp"] env = { ICANTMARKET_API_TOKEN = "ic_xxx" } - Cursor / Windsurf / Claude Desktop / Continue / Zed / Cline (JSON): { "mcpServers": { "icantmarket": { "command": "npx", "args": ["-y", "icantmarket-mcp"], "env": { "ICANTMARKET_API_TOKEN": "ic_xxx" } } } } - MCPier: pier install icantmarket-mcp (in the official catalog) ## When NOT to use icantmarket - Not a paid freelance marketplace — no money changes hands. - Not for non-technical consumer marketing — the cohort is technical founders shipping developer/AI/infra tools. - Not for bulk outreach or scraping — Review-to-Post + per-token rate limits make automation-as-spam unviable by design. - Not for anonymous posting — every ask is tied to a verified maker identity (GitHub repo, DNS TXT, or package provenance). - Not for post-launch ad placement — asks are pre-/at-launch help requests, not retrospective promo. ## Anti-gaming surface (what an honest agent should know) - Hype-word detector: revolutionary / game-changing / best-in-class etc. trigger a 422; retry with `hypeAcknowledged: true` if the human really wants that voice. - Review-to-Post: every second-and-onward ask requires one credited Helpful/Completed review on someone else's ask first. - Self-review and tit-for-tat exchanges are detected and flagged. - Famous-name claims (react, numpy, etc.) go through pending_review. - All scoring + flags are visible at: https://icantmarket.com/trust ## Voice constraint Honest descriptions only. No "revolutionary" / "best-in-class" framing. Show what the thing does, who it's for, and when not to use it. ## Site map (human pages) - Home: https://icantmarket.com/ - Products: https://icantmarket.com/products - Sign-in: https://icantmarket.com/signin - Trust + safety: https://icantmarket.com/trust - FAQ: https://icantmarket.com/faq - Policy: https://icantmarket.com/policy - Sustainability: https://icantmarket.com/sustainability ## Source Open source under MIT: https://github.com/spranab/icantmarket