reddit-trends-mcp
Allows querying Amazon product search trends and discussion volume data, including time-series, growth rates, and top trending topics.
Allows querying Google Search trends for any keyword, providing time-series data and growth rates.
Allows querying npm package download trends and growth rates.
Allows querying Reddit discussion volume trends for any topic, including historical time series and growth rates.
Allows querying Steam trend data for games and topics, including volume and growth.
Allows querying TikTok trend data, including hashtag or topic volume and growth.
Allows querying Wikipedia page view trends and discussion volume for topics.
Allows querying YouTube trend data, including video discussion volume and growth metrics.
Click on "Install Server".
Wait a few minutes for the server to deploy. Once ready, it will show a "Started" state.
In the chat, type
@followed by the MCP server name and your instructions, e.g., "@reddit-trends-mcpshow me reddit trends for AI agents this month"
That's it! The server will respond to your query, and you can continue using it as needed.
Here is a step-by-step guide with screenshots.
Reddit Trends MCP
Live trend data for AI agents. Google, TikTok, YouTube, Amazon, Reddit, and 30+ other sources. One MCP connection, one API key.
Get a free API key · Docs · Pricing · Data sources · PyPI · Glama
You: Using TrendsMCP, compare 6-month growth for GLP-1 on Google, TikTok, and Amazon.
Agent: Google Search +84%
TikTok +212%
Amazon +61%Three tools. Normalized 0–100 where the pipeline supports it. No per-platform keys. No scraping on your side.
Quick install
Same four clients as the site hero. Get a free key first (100 req/mo). Claude and ChatGPT sign you in with OAuth. Cursor and VS Code: click, then put your key from /account if the deeplink used a placeholder.
Client | After you click |
Claude | Connector name and URL are prefilled ( |
Cursor | Approve the MCP install. Replace |
ChatGPT | Enable Developer mode (Profile → Settings → Security). Name |
VS Code | Sign in on the account page and use the VS Code button so the key is included. |
Then ask: Using TrendsMCP, what's trending on Google right now?
Tools · Sources · Feeds · REST · Install in other clients
Related MCP server: Reddit MCP Server
What this is
Hosted MCP at https://api.trendsmcp.ai/mcp. Same Bearer key for POST https://api.trendsmcp.ai/api. This repo also has a stdio adapter for Glama and local hosts.
Tool | Use when | Needs a keyword? |
| History for one keyword on one source | Yes |
| Percent change over 7D–5Y (several windows in one call) | Yes |
| What is ranking on a platform right now | No |
Install in other clients
Replace YOUR_API_KEY with the key from your account.
claude mcp add --scope user --transport http trends-mcp https://api.trendsmcp.ai/mcp \
--header "Authorization: Bearer YOUR_API_KEY"~/.cursor/mcp.json (Windows: %USERPROFILE%\.cursor\mcp.json)
{
"mcpServers": {
"trends-mcp": {
"url": "https://api.trendsmcp.ai/mcp",
"transport": "http",
"headers": { "Authorization": "Bearer YOUR_API_KEY" }
}
}
}.vscode/mcp.json or Command Palette → MCP: Add Server. Prefer the account-page VS Code button so the key is wired for you.
{
"servers": {
"trends-mcp": {
"type": "http",
"url": "https://api.trendsmcp.ai/mcp",
"headers": { "Authorization": "Bearer YOUR_API_KEY" }
}
}
}Uses serverUrl, not Cursor’s url + transport. File: ~/.codeium/windsurf/mcp_config.json.
{
"mcpServers": {
"trends-mcp": {
"serverUrl": "https://api.trendsmcp.ai/mcp",
"headers": { "Authorization": "Bearer YOUR_API_KEY" }
}
}
}Remote server, type exactly streamableHttp. See llms-install.md.
{
"mcpServers": {
"trends-mcp": {
"type": "streamableHttp",
"url": "https://api.trendsmcp.ai/mcp",
"headers": { "Authorization": "Bearer YOUR_API_KEY" },
"disabled": false
}
}
}{
"mcpServers": {
"trends-mcp": {
"command": "npx",
"args": [
"-y", "mcp-remote",
"https://api.trendsmcp.ai/mcp",
"--header", "Authorization:${AUTH_HEADER}"
],
"env": { "AUTH_HEADER": "Bearer YOUR_API_KEY" }
}
}
}Settings → Connectors → add https://www.trendsmcp.ai/mcp. This path uses OAuth on www.trendsmcp.ai. Do not put a Bearer key in that connector config.
Hosted HTTP is still the product default. This process lists tools with no key; paid calls need TRENDSMCP_API_KEY and bill the same quota.
pip install -e .
python -m trends_mcp_server{
"mcpServers": {
"trends-mcp": {
"command": "python",
"args": ["-m", "trends_mcp_server"],
"env": { "TRENDSMCP_API_KEY": "YOUR_API_KEY" }
}
}
}Say “using TrendsMCP” so the model picks these tools instead of web search. More clients: docs.
Tools
Always-current parameter lists: docs.
get_time_series
Weekly (or daily) history for one source + keyword. Same name on MCP and REST (mode: "get_time_series"). REST also accepts get_trends as an alias.
Argument | Required | Notes |
| yes | Format depends on source (table below) |
| yes | One source per call. Lowercase catalog names |
| no | REST only. |
Index is 0–100 where the pipeline supports it (100 = peak in the returned window). volume is present when that source has an absolute series.
get_growth
Point-to-point percent change. Several windows in one call still count as one request for that source + keyword.
Argument | Required | Notes |
| yes | Same formats as |
| yes | One source, or a comma-separated list ( |
| no | Default |
Presets: 7D 14D 30D 1M 2M 3M 6M 9M 12M 1Y 18M 24M 2Y 36M 3Y 48M 60M 5Y MTD QTD YTD.
get_top_trends
Live ranked list. No keyword. On MCP, type is required and must match the feed name exactly (including capitals). On REST, omit type only if you intend to pull every feed (billed per feed).
Argument | Required on MCP | Notes |
| yes | See live feeds |
| no | Default 25, max 200 |
| no | Pagination |
| for some types | Amazon / Google Trends / Top Websites / Substack / TikTok hashtag category boards |
| no |
|
| no | With |
Prompts that route correctly
Using TrendsMCP, what's trending on Google right now?
Using TrendsMCP, what are the hottest Reddit posts right now?
Using TrendsMCP, compare 6-month growth for creatine gummies on Google, TikTok, and Amazon.
Using TrendsMCP, show Google Search history for protein soda.
Via TrendsMCP, pull npm download history for langchain.
Using TrendsMCP, show Steam concurrent players for Elden Ring.
Via TrendsMCP, Android downloads for com.openai.chatgpt.
Using TrendsMCP, fastest-climbing Amazon best sellers in Toys Games this week.Keyword sources
source on get_time_series / get_growth. Not the same strings as type on live feeds.
| Signal |
|
| Search volume | Any phrase |
| Image search volume | Any phrase |
| News-tab volume | Any phrase |
| Shopping-tab volume | Any phrase |
| YouTube search volume | Any phrase |
| Hashtag volume | Hashtag or topic ( |
| Subreddit attention | Name only, no |
| Product search volume | Product or category |
| Page views | Article title or topic |
| Mention volume | Any phrase |
| News tone | Any phrase |
| Android downloads | Play bundle id, e.g. |
| Android chart position | Bundle id |
| Weekly downloads | Exact package name ( |
| Monthly concurrent players | Game display name ( |
source: "Google Trends" is invalid. Use google search for history and type: "Google Trends" for the live board.
Live feeds
type on get_top_trends. Copy the name exactly.
| Board |
| Google searches now |
| Needs |
| Google News stories |
| Hashtags |
| Needs |
| In-app searches |
| Videos |
| Topics on X |
| Front page |
| r/worldnews |
| Most-viewed articles |
| Top-rated sellers |
| Needs |
| iOS charts |
| Play chart |
| Global traffic rank; optional |
| Podcasts |
| Live players |
| Newsletters |
| Daily trending repos |
| Movie activity |
| Books |
Category name lists: docs.
iOS charts, GitHub repos, Spotify, IMDb, Open Library, Substack, and Top Websites are feeds, not source values. There is no source: "web traffic".
REST API
curl -sS -X POST https://api.trendsmcp.ai/api \
-H "Authorization: Bearer $TRENDSMCP_API_KEY" \
-H "Content-Type: application/json" \
-d '{"mode":"get_top_trends","type":"Google Trends","limit":5}'import os, requests
r = requests.post(
"https://api.trendsmcp.ai/api",
headers={"Authorization": f"Bearer {os.environ['TRENDSMCP_API_KEY']}"},
json={"mode": "get_growth", "source": "google search", "keyword": "bitcoin", "percent_growth": ["3M", "12M"]},
)
print(r.json())Python client: pip install trendsmcp.
Limits and errors
Plan | Requests / month | Price |
Free | 100 | $0 |
Starter | 1,000 | $19 |
Pro | 5,000 | $49 |
Business | 25,000 | $199 |
Annual billing is 20% less. Same source catalog on every plan. Free history and “top N” caps are on pricing. Failed calls are not billed. Over quota returns 429 / rate_limited (no surprise overages).
One billed request:
get_time_series: one source + keywordget_growth: one source + keyword (all windows in that call included)get_top_trends: pertype(and pagination as documented)
Status | Meaning |
400 | Bad or missing |
401 | Missing or invalid key |
404 | No series for that keyword + source |
429 | Monthly cap |
500 | Upstream or internal error |
Do not commit keys. Claude.ai connectors use OAuth; other clients use Authorization: Bearer ….
What this does not do
Region / geo breakdown, related queries, or related topics
Hourly series
get_time_seriesacross several sources in one call (useget_growthwith a comma-separatedsourcelist, or severalget_time_seriescalls)Inventing feed names: MCP
typemust match the table
Develop this repo
pip install -e .
python -m trends_mcp_serverCI: .github/workflows/ci.yml. Security: SECURITY.md. Issues: github.com/trendsmcp-ai/reddit-trends-mcp/issues.
Links
TrendWatch (alerts in your own GitHub repo)
MIT © Trends MCP
Available Tools
3 toolsget_growthARead-onlyIdempotentInspect
Point-to-point growth for a keyword on one or more sources. Each window is a preset string (12M, 3M, YTD, and the other listed periods). Values are on a 0-100 scale, plus absolute volume when available. Prefer this over get_time_series for growth questions. app downloads and app rankings are keyword sources (Android bundle ID). They are not the App Store / Google Play live boards on get_top_trends. If the request is rate limited or the monthly quota is used up, tell the user their plan limit is reached.
| Name | Required | Description | Default |
|---|---|---|---|
| source | Yes | One source, or comma-separated sources (e.g. 'amazon, tiktok, youtube'). Valid: 'google search', 'google images', 'google news', 'google shopping', 'youtube', 'wikipedia', 'tiktok', 'reddit', 'amazon', 'news sentiment', 'news volume', 'npm', 'python', 'steam', 'app downloads', 'app rankings'. | |
| keyword | Yes | What to look up. The string format is required by source. Standard sources (google search, google images, google news, google shopping, youtube, wikipedia, tiktok, reddit, amazon, news sentiment, news volume): any name or phrase, e.g. 'nike'. npm: exact npmjs.com package name, case-sensitive. Right: 'react', '@babel/core'. Wrong: 'React', 'React.js'. python: exact PyPI project name. Right: 'pandas', 'requests'. Wrong: 'Pandas'. steam: game display name in plain English, not a Steam App ID. Right: 'Elden Ring', 'CS2'. First Steam store search result wins, so use an unambiguous name. app downloads and app rankings: Android bundle ID only (the id= value on Google Play). Right: 'com.openai.chatgpt', 'com.whatsapp'. Wrong: 'ChatGPT', 'WhatsApp', an iOS App Store ID, or a bundle ID that is not Android. Find it at play.google.com/store/apps/details?id=THIS_PART. If the request includes app downloads or app rankings with other sources, keyword must still be the Android bundle ID. | |
| percent_growth | No | Growth windows. Default if omitted: ['12M']. Each item must be a preset string: '7D', '1W', '14D', '2W', '30D', '1M', '2M', '3M', '6M', '9M', '12M', '1Y', '18M', '24M', '2Y', '36M', '3Y', '48M', '4Y', '60M', '5Y', 'MTD', 'QTD', 'YTD'. Every preset is a two-date comparison. |
Output Schema
| Name | Required | Description |
|---|---|---|
| result | Yes |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
Annotations already declare readOnlyHint, openWorldHint, and idempotentHint. The description adds useful behavioral context beyond that: values are on a 0-100 scale, absolute volume is included when available, and rate-limit/quota exhaustion should be reported to the user as a plan-limit message. No contradiction with annotations.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
The description is front-loaded with the core purpose and each sentence earns its place. It is slightly longer than strictly necessary because some details repeat the schema, and 'the other listed periods' is vague, but overall it is well-structured and compact.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
Given the detailed input schema and the presence of an output schema, the description provides the needed selection guidance, source caveats, Android bundle ID clarification, and rate-limit handling. An agent has enough context to invoke this tool correctly and distinguish it from siblings.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Schema description coverage is 100%, and the schema already documents sources, keyword formats per source, and the full preset window list. The description mostly restates schema content rather than adding new parameter-level meaning, so the baseline score of 3 applies.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description names a specific operation: 'Point-to-point growth for a keyword on one or more sources.' It also differentiates itself from the sibling tools by saying to prefer it over get_time_series for growth questions and clarifying that app download/ranking sources are not the live boards on get_top_trends.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
Explicit guidance is given: 'Prefer this over get_time_series for growth questions.' It also tells agents when this tool is not appropriate by stating that app downloads/rankings are not the App Store / Google Play live boards from get_top_trends, providing a clear exclusion.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
get_time_seriesARead-onlyIdempotentInspect
Full historical series for one keyword and one source (0-100 values, plus volume when available). Use for charting or custom math. Not for live 'what's trending now' boards (use get_top_trends). For most growth questions, use get_growth. If the request is rate limited or the monthly quota is used up, tell the user their plan limit is reached.
| Name | Required | Description | Default |
|---|---|---|---|
| source | Yes | Exactly one source per request. Valid: 'google search', 'google images', 'google news', 'google shopping', 'youtube', 'wikipedia', 'tiktok', 'reddit', 'amazon', 'news sentiment', 'news volume', 'npm', 'python', 'steam', 'app downloads', 'app rankings'. | |
| keyword | Yes | What to look up. The string format is required by source. Standard sources (google search, google images, google news, google shopping, youtube, wikipedia, tiktok, reddit, amazon, news sentiment, news volume): any name or phrase, e.g. 'tesla'. npm: exact npmjs.com package name, case-sensitive. Right: 'react', '@babel/core'. Wrong: 'React', 'React.js'. python: exact PyPI project name. Right: 'pandas', 'requests'. Wrong: 'Pandas'. steam: game display name in plain English, not a Steam App ID. Right: 'Elden Ring', 'CS2'. First Steam store search result wins, so use an unambiguous name. app downloads and app rankings: Android bundle ID only (the id= value on Google Play). Right: 'com.openai.chatgpt', 'com.whatsapp'. Wrong: 'ChatGPT', 'WhatsApp', an iOS App Store ID, or a bundle ID that is not Android. Find it at play.google.com/store/apps/details?id=THIS_PART. |
Output Schema
| Name | Required | Description |
|---|---|---|
| result | Yes |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
Annotations already cover readOnlyHint, openWorldHint, and idempotentHint. The description adds meaningful behavioral context beyond those: the 0-100 value limit, volume being provided only when available, the one-keyword-one-source constraint, and specific quota/rate-limit handling instructions. No contradiction with annotations.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
The description is dense but every sentence earns its place: scope, data shape, use cases, exclusions with alternatives, and quota behavior. The primary purpose is front-loaded, followed by routing and operational guidance.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
Given the 2 required parameters, full schema documentation, presence of an output schema, and strong annotations, the description is complete. It covers what the agent needs to call the tool correctly, including edge-case handling for rate limits and quota exhaustion.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Schema description coverage is 100%, and the keyword and source parameters are documented in detail, including source-specific formats. The description restates the one-keyword/one-source constraint but does not materially add parameter meaning beyond the schema, so the baseline of 3 applies.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description clearly states the tool returns a full historical series for one keyword and one source, with a data range (0-100 values plus volume when available). It also distinguishes itself from siblings by naming get_top_trends and get_growth for adjacent use cases, so an agent can select it confidently.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
The description gives explicit when-to-use guidance: charting or custom math. It also states when not to use it (live trending boards) and names the sibling alternative (get_top_trends), and routes growth questions to get_growth. This is direct, actionable usage routing.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
get_top_trendsARead-onlyIdempotentInspect
Live top-trending board for exactly one feed type. No keyword. For 'Amazon Best Sellers by Category', 'Google Trends by Category', 'Top Websites', and 'Substack by Category', always pass category. Default sort is current rank. Use sort='rank_change' for climbers vs a prior snapshot (window 1d, 3d, 7d, 14d, or 30d). App Store Top Free, App Store Top Paid, and Google Play are live store boards, not keyword lookups. For an app's history use get_growth or get_time_series with source app downloads or app rankings and an Android bundle ID. Do not use get_time_series for live boards. If the request is rate limited or the monthly quota is used up, tell the user their plan limit is reached.
| Name | Required | Description | Default |
|---|---|---|---|
| sort | No | How to rank the board. 'rank' (default): current leaders. 'rank_change': biggest climbers vs a prior snapshot. Mover rows include rank, keyword, prev_rank, and rank_change. | rank |
| type | Yes | Exactly one live feed. Valid: 'Amazon Best Sellers Top Rated', 'Amazon Best Sellers by Category', 'App Store Top Free', 'App Store Top Paid', 'GitHub', 'Google News Top News', 'Google Play', 'Google Trends', 'Google Trends by Category', 'IMDb MOVIEmeter', 'Open Library Trending Books', 'Reddit Hot Posts', 'Reddit World News', 'Top Websites', 'Spotify Top Podcasts', 'Steam Most Played', 'Substack', 'Substack by Category', 'TikTok Trending Hashtags', 'TikTok Trending Searches', 'Wikipedia Trending', 'X (Twitter) Trending', 'YouTube Trending'. | |
| limit | No | Max rows to return. Default 25, min 1, max 200. | |
| offset | No | Rows to skip for pagination. Default 0. | |
| window | No | Lookback used only when sort is 'rank_change'. One of '1d', '3d', '7d', '14d', '30d'. Default '30d'. Short windows only work on daily feeds; weekly and monthly feeds return a note pointing to a longer window. | 30d |
| category | No | Pass this whenever type is 'Amazon Best Sellers by Category', 'Google Trends by Category', 'Top Websites', or 'Substack by Category'. Use the official name. Without it those feeds mix every board. Only omit on a first pull to learn the official names. |
Output Schema
| Name | Required | Description |
|---|---|---|
| result | Yes |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
Annotations already mark the tool as read-only, open-world, and idempotent, and the description adds substantial behavioral context beyond that: it is a live board rather than a keyword lookup, category omission mixes boards, rank_change compares to a prior snapshot, and rate-limit/quota exhaustion should be reported to the user. No contradiction with annotations exists.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
The description is dense and front-loaded with the core constraint, and every sentence carries an instruction or exclusion. It repeats some schema-level details such as window values and defaults, making it slightly longer than strictly necessary, but there is no fluff.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
With a full input schema, an output schema, and a description covering purpose, category requirements, sort semantics, sibling routing, and quota/rate-limit behavior, the agent has everything needed to invoke the tool correctly. No critical operational context is missing.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Schema coverage is 100%, so the baseline is 3, but the description adds real decision logic on top: when to pass category, what sort values mean, and how window relates to rank_change. It partially repeats schema details, but it clarifies the intended usage patterns rather than just naming parameters.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description clearly states that the tool returns a live top-trending board for exactly one feed type and explicitly says there is no keyword. It distinguishes itself from siblings by specifying that app history should be handled by get_growth or get_time_series, making the tool's niche unambiguous.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
The description gives explicit when-to-use and when-not-to-use guidance: pass category for four named feed types, use sort='rank_change' for climbers, avoid get_time_series for live boards, and route app-history requests to alternatives. It even includes rate-limit handling instructions for the user-facing response.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
Tool Schema Changelog
Recent tool additions, removals, and schema changes observed during successful MCP inspections. Dates show when Glama detected each change.
3 tool updates
v0.1.0- First observed
get_growth - First observed
get_time_series - First observed
get_top_trends
TDQS
get_top_trends is clearly distinct as a live board, while get_growth and get_time_series both operate on keyword/source history with 0-100 values. However, their descriptions explicitly separate growth questions from charting/custom math, so an agent can reliably choose between them.
All tools follow a consistent get_<noun> snake_case pattern: get_growth, get_time_series, get_top_trends. Each name clearly reflects the resource or action being retrieved, with no mixed conventions or vague verbs.
Three tools cover the core trends workflow: growth comparisons, full historical series, and live top-trending boards. The count is small but well-scoped, and each tool has a distinct, necessary role.
The set covers the main trend-analysis needs: current rankings, growth over time, and detailed historical data. Minor gaps exist, such as no dedicated source/category discovery mechanism, but the descriptions provide enough guidance to work around this.
Maintenance
Related MCP Connectors
Reddit posts, comments, subreddits, and search for AI agents. Free key, self-minted, no signup.
Reddit discussion volume and subreddit growth over time. Free key at trendsapi.ai
Read-only Reddit search API for AI agents: posts, comments, comment trees, subreddit rules.
Reddit & X data for AI agents over MCP. Semantic search, hosted, no Reddit API.
Related MCP Servers
- AlicenseAqualityBmaintenanceEnables AI assistants to browse Reddit, search posts, analyze user activity, and fetch comments without requiring API keys. Features smart caching, clean data responses, and optional authentication for higher rate limits.851,785811MIT
- AlicenseNot gradedqualityDmaintenanceEnables AI agents to search, monitor, and analyze Reddit's communities and discussions through authenticated API access with intelligent caching and rate limiting.MIT
- AlicenseNot gradedqualityCmaintenanceProvides Reddit discussion volume trends, growth rates, and top trending topics for any keyword, accessible via MCP tools and Python client.1MIT
- AlicenseAqualityAmaintenanceEnables AI assistants to search, browse, and analyze Reddit in real-time via web scraping, including subreddit browsing, post comments, and business opportunity scoring.91MIT
Latest Blog Posts
- Who's Calling? MCP Hosts Are an Identity Blind Spot (And the Spec Knows It)By Om-Shree-0709 on .mcpAgent IdentityOAuth 2.1
- Your AI Chatbot Just Exposed Your CEO's Salary to an InternBy Om-Shree-0709 on .Agent IdentityMCP SecurityOAuth Delegation
- Why MCP Servers Need Execution Sandboxing (And Why Your Current Stack Isn't Enough)By Om-Shree-0709 on .Agentic AiPrompt InjectionWebAssembly
MCP directory API
We provide all the information about MCP servers via our MCP API.
curl -X GET 'https://glama.ai/api/mcp/v1/servers/trendsmcp-ai/reddit-trends-mcp'
If you have feedback or need assistance with the MCP directory API, please join our Discord server