vibehacker

VibeHacker MCP

Submit your website, search tools, and upvote from Claude Code, Claude Desktop, Cursor, or any MCP client.

Endpoint

Streamable HTTP, stateless. Read-only tools work without a token. Submitting and upvoting need a personal API token from Settings → API tokens, sent as a bearer header. Tokens act as you; revoke them there at any time.

https://vibehacker.com/api/mcp

Claude Code

claude mcp add --transport http vibehacker https://vibehacker.com/api/mcp \
  --header "Authorization: Bearer YOUR_TOKEN"

Then, in a session: “Submit https://your-product.com to VibeHacker.”

Claude Desktop, Cursor, and others

Add this to the client's MCP config (claude_desktop_config.json, .cursor/mcp.json, etc.).

{
  "mcpServers": {
    "vibehacker": {
      "url": "https://vibehacker.com/api/mcp",
      "headers": { "Authorization": "Bearer YOUR_TOKEN" }
    }
  }
}

Clients that can't set headers can append ?token=YOUR_TOKEN to the URL. That puts the token in logs and history, so prefer the header when you can.

Tools

  • submit_toolSubmit a website to VibeHacker. Reads the site, drafts the listing, and files it for review.token
  • preview_toolDraft a listing for a website without submitting it.token
  • my_submissionsList the tools you submitted and their review status.token
  • upvote_toolToggle your upvote on a tool.token
  • search_toolsSearch published tools by name, tagline, or maker.public
  • get_toolGet one tool by slug.public
  • list_categoriesList categories with tool counts.public

submit_tool reads the website, drafts the listing, and files it for review — the same flow as the submit page. Resubmitting a website you already listed returns the existing tool.

Try it with curl

curl -X POST https://vibehacker.com/api/mcp \
  -H "Content-Type: application/json" -H "Accept: application/json, text/event-stream" \
  -d '{"jsonrpc":"2.0","id":1,"method":"tools/list"}'