Reddit (JSON API)

*://*.reddit.com/*

Read and write Reddit via its own JSON API: list subreddit posts, read threads, search, comment, and vote — executed as the logged-in user. Tier-1 API execution (no DOM selectors).

by webmcp-cafe · v1 · updated 7/28/2026

What changed in v1: `returns` projections are JMESPath, `extract`/`errorPath` are locator arrays, `sendAs` is {in, name}, and the modhash source caches for 300s instead of re-fetching before every write.

Checking for the extension…

Installing saves v1 in your browser — nothing is tied to your account. The extension registers its tools whenever you're on a matching page, and you stay on v1 until you update.

Needs the extension on Chrome 149+ with the WebMCP testing flag. Get the extension →

Tools (6)

  • reddit_meread-only

    Get the logged-in Reddit user's username and total karma. Proves the session works; write tools need a logged-in session.

    Show input schema and execution
    {
      "inputSchema": {
        "type": "object",
        "properties": {}
      },
      "execution": {
        "mode": "api",
        "endpoint": "me"
      }
    }
  • reddit_subreddit_hotread-only

    List the current hot posts in a subreddit: title, author, score, comment count, permalink, and fullname (use with reddit_comment/reddit_vote).

    Show input schema and execution
    {
      "inputSchema": {
        "type": "object",
        "required": [
          "subreddit",
          "limit"
        ],
        "properties": {
          "limit": {
            "type": "integer",
            "description": "Max posts to return (1-25)"
          },
          "subreddit": {
            "type": "string",
            "description": "Subreddit name, without the r/ prefix"
          }
        }
      },
      "execution": {
        "mode": "api",
        "endpoint": "subredditHot"
      }
    }
  • reddit_searchread-only

    Search all of Reddit for posts matching a query, ranked by relevance: title, subreddit, author, score, comment count, permalink, and fullname.

    Show input schema and execution
    {
      "inputSchema": {
        "type": "object",
        "required": [
          "query",
          "limit"
        ],
        "properties": {
          "limit": {
            "type": "integer",
            "description": "Max posts to return (1-25)"
          },
          "query": {
            "type": "string",
            "description": "Search query"
          }
        }
      },
      "execution": {
        "mode": "api",
        "endpoint": "search"
      }
    }
  • reddit_read_threadread-only

    Read the top comments of a Reddit post: author, score, and body per comment. Take the post ID from a permalink (/comments/<id>/).

    Show input schema and execution
    {
      "inputSchema": {
        "type": "object",
        "required": [
          "postId",
          "limit",
          "depth"
        ],
        "properties": {
          "depth": {
            "type": "integer",
            "description": "Reply nesting depth to include (1-10)"
          },
          "limit": {
            "type": "integer",
            "description": "Max top-level comments (1-25)"
          },
          "postId": {
            "type": "string",
            "description": "Base36 post ID from the URL, e.g. 1abc2de (no t3_ prefix)"
          }
        }
      },
      "execution": {
        "mode": "api",
        "endpoint": "thread"
      }
    }
  • reddit_comment

    Post a comment on a Reddit post, or reply to a comment, as the logged-in user. Use a fullname (t3_... or t1_...) from the read tools.

    Show input schema and execution
    {
      "inputSchema": {
        "type": "object",
        "required": [
          "thingId",
          "text"
        ],
        "properties": {
          "text": {
            "type": "string",
            "description": "Comment body (Reddit markdown)"
          },
          "thingId": {
            "type": "string",
            "description": "Fullname of the target: t3_... for a post, t1_... for a comment"
          }
        }
      },
      "execution": {
        "mode": "api",
        "endpoint": "comment"
      }
    }
  • reddit_vote

    Upvote, downvote, or clear a vote on a Reddit post or comment, as the logged-in user. Use a fullname (t3_... or t1_...) from the read tools.

    Show input schema and execution
    {
      "inputSchema": {
        "type": "object",
        "required": [
          "thingId",
          "direction"
        ],
        "properties": {
          "thingId": {
            "type": "string",
            "description": "Fullname of the target: t3_... for a post, t1_... for a comment"
          },
          "direction": {
            "enum": [
              "1",
              "0",
              "-1"
            ],
            "type": "string",
            "description": "Vote direction: 1 = upvote, 0 = clear, -1 = downvote"
          }
        }
      },
      "execution": {
        "mode": "api",
        "endpoint": "vote"
      }
    }