Reddit Community Keyword Search (Relevance, All Time, No NSFW) or Post Thread by URL
omnial/reddit-community-search-or-post-thread
Two ways in: search one subreddit for up to three keywords (relevance order, all time, NSFW excluded, posts and comments), or give one post's link to get the post and its comments. Each row has its ID, type, link, author handle, community, text and time; a post from a link adds title, upvotes, upvote ratio, comment count and content type, and its comments add upvotes, depth, parent, post ID and reply count. Up to 20 rows; the tested keyword search returned only comments.
Price
Up to $0.0546 base + $0.00819 per result; you pay what the call used
The price shown is the price you pay. No monthly minimum. Top-ups start at $5.
Data source
Data from Reddit.
Use it
Five steps: search, inspect, learn, run, settle. No per-tool setup; your agent reaches this tool through the meta-tools it already has.
// 1. search: find the tool
omnial_search({ query: "what you need" })
// 2. inspect: price and input schema
omnial_inspect({ tool: "omnial/reddit-community-search-or-post-thread" })
// 3. learn: read the usage guide at runtime
omnial_learn({ tool: "omnial/reddit-community-search-or-post-thread" })
// 4. run: price the exact call first, then run it
omnial_execute({ tool: "omnial/reddit-community-search-or-post-thread", input: { /* see input_schema */ }, dry_run: true })
omnial_execute({ tool: "omnial/reddit-community-search-or-post-thread", input: { /* ... */ } })
// 5. settle: the call is charged when it finishes, nothing to doNot connected yet? Point your MCP client at https://mcp.eden-engine.com/mcp, then copy a config for your client.
Pricing
Every charge this tool can incur.
| Charge | Price |
|---|---|
Base price Charged once per request | $0.0546 |
Per result Charged for every result returned | $0.00819 |
- Updated
- Oct 15, 2026
Input and output schemas
Input schema
{
"type": "object",
"oneOf": [
{
"not": {
"anyOf": [
{
"required": [
"startUrls"
]
},
{
"required": [
"skipComments"
]
},
{
"required": [
"includeMediaLinks"
]
}
]
},
"required": [
"searches",
"searchCommunityName",
"searchPosts",
"searchComments",
"sort",
"time",
"includeNSFW"
]
},
{
"not": {
"anyOf": [
{
"required": [
"searches"
]
},
{
"required": [
"searchCommunityName"
]
},
{
"required": [
"searchPosts"
]
},
{
"required": [
"searchComments"
]
},
{
"required": [
"sort"
]
},
{
"required": [
"time"
]
},
{
"required": [
"includeNSFW"
]
}
]
},
"required": [
"startUrls",
"skipComments",
"includeMediaLinks"
]
}
],
"properties": {
"sort": {
"enum": [
"relevance"
],
"type": "string",
"description": "Keyword search: must be \"relevance\" (results by relevance)."
},
"time": {
"enum": [
"all"
],
"type": "string",
"description": "Keyword search: must be \"all\" (no date filter)."
},
"maxItems": {
"type": "integer",
"default": 10,
"maximum": 20,
"minimum": 1,
"description": "The most rows to return in all, from 1 to 20."
},
"searches": {
"type": "array",
"items": {
"type": "string",
"minLength": 1
},
"maxItems": 3,
"minItems": 1,
"description": "Keyword search: one to three search terms, matched inside the community."
},
"startUrls": {
"type": "array",
"items": {
"type": "object",
"required": [
"url"
],
"properties": {
"url": {
"type": "string",
"pattern": "^https://www\\.reddit\\.com/r/[A-Za-z0-9_]+/comments/[a-z0-9]+/[A-Za-z0-9_]*/?$"
}
},
"additionalProperties": false
},
"maxItems": 1,
"minItems": 1,
"description": "Post thread: a list holding one object whose url is a post's link of the form https://www.reddit.com/r/<community>/comments/<id>/<slug>/."
},
"includeNSFW": {
"enum": [
false
],
"type": "boolean",
"description": "Keyword search: must be false (NSFW content excluded)."
},
"maxComments": {
"type": "integer",
"default": 10,
"maximum": 20,
"minimum": 1,
"description": "The most comments to read on each post page, from 1 to 20."
},
"searchPosts": {
"enum": [
true
],
"type": "boolean",
"description": "Keyword search: must be true (search posts)."
},
"skipComments": {
"enum": [
false
],
"type": "boolean",
"description": "Post thread: must be false (the post's comments are included)."
},
"searchComments": {
"enum": [
true
],
"type": "boolean",
"description": "Keyword search: must be true (search comments)."
},
"includeMediaLinks": {
"enum": [
true
],
"type": "boolean",
"description": "Post thread: must be true (adds the post's upvotes and comment count)."
},
"searchCommunityName": {
"type": "string",
"pattern": "^[A-Za-z0-9_]+$",
"description": "Keyword search: the subreddit to search in, without the r/ prefix."
}
},
"additionalProperties": false
}Output schema
{
"type": "object",
"properties": {
"results": {
"type": "array",
"items": {
"type": "object",
"properties": {
"id": {
"type": "string",
"description": "The row's full ID (t3_ post, t1_ comment)."
},
"url": {
"type": [
"string",
"null"
],
"description": "The row's own reddit.com link."
},
"body": {
"type": [
"string",
"null"
],
"description": "The text, links and markup removed."
},
"depth": {
"type": "number",
"description": "Thread comments: nesting depth, 0 top."
},
"title": {
"type": [
"string",
"null"
],
"description": "Post rows: the title."
},
"postId": {
"type": "string",
"description": "Thread comments: the post's ID."
},
"upVotes": {
"type": "number",
"description": "Post thread rows: upvotes."
},
"dataType": {
"type": "string",
"description": "post or comment."
},
"parentId": {
"type": [
"string",
"null"
],
"description": "Thread comments: the parent comment's ID, null at the top."
},
"parsedId": {
"type": "string",
"description": "The ID without its prefix."
},
"username": {
"type": "string",
"description": "The author's handle; [deleted] for a deleted account."
},
"createdAt": {
"type": "string",
"description": "When it was posted (ISO 8601)."
},
"contentType": {
"type": "string",
"description": "Post rows: the content type."
},
"upVoteRatio": {
"type": "number",
"description": "Post rows: the upvote ratio."
},
"communityName": {
"type": "string",
"description": "The community, with r/."
},
"numberOfReplies": {
"type": "number",
"description": "Thread comments: replies."
},
"numberOfComments": {
"type": "number",
"description": "Post rows: comment count."
},
"parsedCommunityName": {
"type": "string",
"description": "The community, without r/."
}
}
},
"description": "Posts and comments; each row's dataType says which."
}
},
"description": "The rows, as a list."
}