KissMyPost
Reddit audience data for your AI assistant: subreddits, best time to post, brand mentions.
Hosted MCP Server
npx add-mcp 'https://kissmypost.com/api/mcp'Installs into Claude Code, Codex, Cursor and more
Documentation
Connect in one click
Pick your app and press the button. You sign in with your KissMyPost account, no key or config needed.
Pick your app
Then:
- Click Connect on the KissMyPost page in Claude.
- Sign in to KissMyPost and click Allow.
KissMyPost is in the Claude Directory. Added once, it works in Claude Desktop and the mobile apps too.
Other apps and API keys
For apps without sign-in, or for scripts: create a personal API key, and it is filled into every config and install button below.
Checking your account…
Chat apps
ChatGPTNo key needed
- Open ChatGPT on the web, go to Plugins and choose Add custom MCP server (on some plans it sits under Settings → Apps → Advanced settings → Developer mode).
- Name it KissMyPost and paste https://kissmypost.com/api/mcp as the server URL.
- Choose No authentication and create the plugin. The public tools work right away, no account needed.
Signing in with your KissMyPost account inside ChatGPT, for higher limits and account tools, comes with our listing in the ChatGPT app directory.
Claude (claude.ai and Claude Desktop)API key
- Easiest: open KissMyPost in the Claude Directory (https://claude.ai/directory/kissmypost), click Connect and sign in. No key needed. To use an API key instead, follow the steps below.
- In Claude, open Customize → Connectors, click + Add and choose Add custom connector. Connectors you add on claude.ai also appear in Claude Desktop and the mobile apps.
- Name it KissMyPost and paste https://kissmypost.com/api/mcp as the URL.
- Under Request headers add the header below, set sign-in to No sign in, and click Add.
Authorization: Bearer kmp_YOUR_API_KEY
Team and Enterprise workspaces: an owner adds the connector for everyone.
Gemini appNo key needed
- Open Gemini on the web (gemini.google.com) and go to Settings → Personal Intelligence → Connected Apps.
- Click + Custom and paste https://kissmypost.com/api/mcp as the MCP server URL, then click Next.
- Accept Google's notice and click Connect, sign in to KissMyPost and click Allow, then click Connect again to save.
- Name KissMyPost in your prompt, for example: Use KissMyPost to find subreddits about espresso.
Google offers custom apps to personal Google accounts (not work or school), 18+, in English, with Keep Activity on; its help page lists the US. You can only add the app on the web; after that it also works in the Gemini mobile app.
Gemini EnterpriseNo key needed
- For a Google Cloud admin with the Discovery Engine Editor role. First get a client ID and secret: run the command below (it registers your Gemini Enterprise as an OAuth client of KissMyPost), or email [email protected] and we send them.
- In the Google Cloud console open Gemini Enterprise → Apps → your app → Connected Data Stores → New data store, search for Custom MCP Server and click Add MCP server.
- Choose OAuth 2.0 and fill in the fields below, keep Use HTTP Basic Authentication on, turn on Enable PKCE Support, then click Verify Auth and sign in to KissMyPost.
- Create the data store and wait until it is Active. Then open it, go to Actions → Reload custom actions, select the KissMyPost tools and click Enable actions.
Get a client ID and secret
curl -s https://clerk.kissmypost.com/oauth/register -H "Content-Type: application/json" -d '{"client_name":"Gemini Enterprise","redirect_uris":["https://vertexaisearch.cloud.google.com/oauth-redirect"],"token_endpoint_auth_method":"client_secret_basic","scope":"openid profile email offline_access"}'
MCP Server URL: https://kissmypost.com/api/mcp
Authorization URL: https://clerk.kissmypost.com/oauth/authorize
Authorization URL Parameters: resource=https://kissmypost.com/api/mcp
Token URL: https://clerk.kissmypost.com/oauth/token
Client ID: client_id from the command above
Client Secret: client_secret from the command above
Scopes: openid profile email offline_access
Your organization policy must allow Custom MCP data stores and the domains kissmypost.com and clerk.kissmypost.com. Google supports only the Streamable HTTP transport here, which KissMyPost uses.
Mistral Le Chat (Vibe)No key needed
- In Le Chat (chat.mistral.ai), open Context → Connectors, click New connector, then New custom connector.
- Name it KissMyPost and paste https://kissmypost.com/api/mcp as the server.
- Leave Authentication on Auto-detect (it picks OAuth 2.1), click Add connector, sign in to KissMyPost and click Allow.
- Start a chat with the KissMyPost connector on and ask, for example: When is the best time to post in r/startups?
To use an API key instead, choose API Token Authentication and paste your key. On Free, Pro and Student plans you add the connector yourself; on Team and Enterprise an admin adds it for the organization.
RaycastAPI key
- Run the Install MCP Server command.
- Name it KissMyPost, paste https://kissmypost.com/api/mcp as the URL and add an HTTP header: Authorization = Bearer and your key.
Authorization: Bearer kmp_YOUR_API_KEY
ManusAPI key
- Open Connectors, then Create → Custom MCP.
- Server name KissMyPost, transport HTTP, server URL https://kissmypost.com/api/mcp.
- Add custom header: name Authorization, value Bearer and your key. Save, then press Try it out.
- Mention KissMyPost or Reddit in a task, for example: find the subreddits where indie SaaS founders hang out.
Authorization: Bearer kmp_YOUR_API_KEY
Coding agents and editors
Claude CodeAPI key
- Run in your terminal, then check with /mcp inside Claude Code.
claude mcp add --transport http kissmypost https://kissmypost.com/api/mcp --header "Authorization: Bearer kmp_YOUR_API_KEY"
OpenAI CodexAPI key
- Add to ~/.codex/config.toml (or.codex/config.toml in a trusted project).
[mcp_servers.kissmypost]
url = "https://kissmypost.com/api/mcp"
http_headers = { "Authorization" = "Bearer kmp_YOUR_API_KEY" }
CursorAPI key
- Click Add to Cursor, or add the server to ~/.cursor/mcp.json (all projects) or.cursor/mcp.json (one project).
Create a key above first: the button puts it in for you.
{
"mcpServers": {
"kissmypost": {
"url": "https://kissmypost.com/api/mcp",
"headers": {
"Authorization": "Bearer kmp_YOUR_API_KEY"
}
}
}
}
VS Code (GitHub Copilot)API key
- Click Install in VS Code, or run MCP: Open User Configuration (or create.vscode/mcp.json in a project) and add the server. Use it from Copilot Chat in Agent mode.
Create a key above first: the button puts it in for you.
{
"servers": {
"kissmypost": {
"type": "http",
"url": "https://kissmypost.com/api/mcp",
"headers": {
"Authorization": "Bearer kmp_YOUR_API_KEY"
}
}
}
}
Devin Desktop (formerly Windsurf)API key
- Click Customize in the agent sidebar, open the MCPs tab, set Install MCPs for to This computer and open the config file (~/.config/devin/mcp_config.json;.devin/mcp_config.json for one project). Add the server and refresh the list.
{
"mcpServers": {
"kissmypost": {
"url": "https://kissmypost.com/api/mcp",
"transport": "http",
"headers": {
"Authorization": "Bearer kmp_YOUR_API_KEY"
}
}
}
}
ZedAPI key
- Open settings.json (Zed → Settings → Open Settings) and add the server under context_servers. Or use Agent Panel → Settings → Add Custom Server.
{
"context_servers": {
"kissmypost": {
"url": "https://kissmypost.com/api/mcp",
"headers": {
"Authorization": "Bearer kmp_YOUR_API_KEY"
}
}
}
}
JetBrains AI AssistantAPI key
- Settings → Tools → AI Assistant → Model Context Protocol (MCP) → Add, choose As JSON and paste the config. Needs Node.js: it runs the mcp-remote bridge.
{
"mcpServers": {
"kissmypost": {
"command": "npx",
"args": [
"-y",
"mcp-remote",
"https://kissmypost.com/api/mcp",
"--header",
"Authorization:${KMP_AUTH}"
],
"env": {
"KMP_AUTH": "Bearer kmp_YOUR_API_KEY"
}
}
}
}
AntigravityAPI key
- Install the KissMyPost plugin, then open /plugin (CLI) or Customizations → Plugins (App), turn it on and paste your key.
- Or add only the server: run the command below, or put the JSON in ~/.gemini/config/mcp_config.json.
agy plugin install https://github.com/krutytskyi/kissmypost-gemini
agy mcp add --header "Authorization: Bearer kmp_YOUR_API_KEY" kissmypost https://kissmypost.com/api/mcp
{
"mcpServers": {
"kissmypost": {
"serverUrl": "https://kissmypost.com/api/mcp",
"headers": {
"Authorization": "Bearer kmp_YOUR_API_KEY"
}
}
}
}
Gemini CLIAPI key
- Run in your terminal. It writes the server to ~/.gemini/settings.json (httpUrl means Streamable HTTP).
gemini mcp add --transport http -H "Authorization: Bearer kmp_YOUR_API_KEY" kissmypost https://kissmypost.com/api/mcp
In June 2026 Google moved individual accounts from Gemini CLI to Antigravity (see the Antigravity card). With a paid Gemini API key or Code Assist, you can also install the extension: gemini extensions install https://github.com/krutytskyi/kissmypost-gemini
Gemini Code AssistAPI key
- VS Code: add the server to ~/.gemini/settings.json (the command palette can't install MCP servers for agent mode), then run Developer: Reload Window.
- Open Gemini Code Assist chat, turn on the Agent toggle and run /mcp to check that kissmypost is connected.
{
"mcpServers": {
"kissmypost": {
"httpUrl": "https://kissmypost.com/api/mcp",
"headers": {
"Authorization": "Bearer kmp_YOUR_API_KEY"
}
}
}
}
{
"mcpServers": {
"kissmypost": {
"command": "npx",
"args": [
"-y",
"mcp-remote",
"https://kissmypost.com/api/mcp",
"--header",
"Authorization:${KMP_AUTH}"
],
"env": {
"KMP_AUTH": "Bearer kmp_YOUR_API_KEY"
}
}
}
}
Agent mode is a preview feature. In IntelliJ and other JetBrains IDEs, Google documents only local servers in mcp.json (placed in the IDE configuration directory, Agent tab in the Gemini tool window), so use the stdio bridge above. It needs Node.js.
ClineAPI key
- In Cline open MCP Servers → Configure → Configure MCP Servers and add the server to cline_mcp_settings.json. Keep the type: without it Cline assumes SSE.
{
"mcpServers": {
"kissmypost": {
"type": "streamableHttp",
"url": "https://kissmypost.com/api/mcp",
"headers": {
"Authorization": "Bearer kmp_YOUR_API_KEY"
},
"disabled": false
}
}
}
Roo CodeAPI key
- Add to.roo/mcp.json in your project, or to the global mcp_settings.json (MCP Servers → Edit Global MCP).
{
"mcpServers": {
"kissmypost": {
"type": "streamable-http",
"url": "https://kissmypost.com/api/mcp",
"headers": {
"Authorization": "Bearer kmp_YOUR_API_KEY"
}
}
}
}
ContinueAPI key
- Save as.continue/mcpServers/kissmypost.json in your workspace: Continue reads Claude Desktop-style JSON files from that folder. Needs Node.js for the mcp-remote bridge. MCP tools work in Agent mode.
{
"mcpServers": {
"kissmypost": {
"command": "npx",
"args": [
"-y",
"mcp-remote",
"https://kissmypost.com/api/mcp",
"--header",
"Authorization:${KMP_AUTH}"
],
"env": {
"KMP_AUTH": "Bearer kmp_YOUR_API_KEY"
}
}
}
}
KiroAPI key
- Add to ~/.kiro/settings/mcp.json (all projects) or.kiro/settings/mcp.json (one project).
{
"mcpServers": {
"kissmypost": {
"url": "https://kissmypost.com/api/mcp",
"headers": {
"Authorization": "Bearer kmp_YOUR_API_KEY"
}
}
}
}
opencodeAPI key
- Add to opencode.json. oauth: false stops opencode from trying to sign in on its own.
{
"mcp": {
"kissmypost": {
"type": "remote",
"url": "https://kissmypost.com/api/mcp",
"headers": {
"Authorization": "Bearer kmp_YOUR_API_KEY"
},
"oauth": false
}
}
}
WarpAPI key
- Settings → Agents → MCP servers → + Add, choose the URL server type and paste the config.
{
"mcpServers": {
"kissmypost": {
"url": "https://kissmypost.com/api/mcp",
"headers": {
"Authorization": "Bearer kmp_YOUR_API_KEY"
}
}
}
}
LM StudioAPI key
- Click Add to LM Studio, or open the Program tab → Install → Edit mcp.json and add the server.
Create a key above first: the button puts it in for you.
{
"mcpServers": {
"kissmypost": {
"url": "https://kissmypost.com/api/mcp",
"headers": {
"Authorization": "Bearer kmp_YOUR_API_KEY"
}
}
}
}
Automation
n8nAPI key
- Add an AI Agent node and give it the MCP Client Tool.
- Set the endpoint to https://kissmypost.com/api/mcp and the transport to HTTP Streamable (older n8n versions only offer SSE: update n8n first).
- Authentication: Bearer Auth, with your API key as the token.
kmp_YOUR_API_KEY
Any other MCP clientAPI key
- Remote server, Streamable HTTP transport, URL https://kissmypost.com/api/mcp, header Authorization: Bearer and your key.
- If the client only runs local (stdio) servers, use the mcp-remote bridge below. It needs Node.js.
{
"mcpServers": {
"kissmypost": {
"command": "npx",
"args": [
"-y",
"mcp-remote",
"https://kissmypost.com/api/mcp",
"--header",
"Authorization:${KMP_AUTH}"
],
"env": {
"KMP_AUTH": "Bearer kmp_YOUR_API_KEY"
}
}
}
}
What you can ask
17 read-only tools. Each answer is a short summary with a link to the full report on KissMyPost.
- search_subreddits Subreddits whose name matches a keyword, with members and monthly posts. “Find subreddits about woodworking.”
- find_subreddits_by_topic The most active subreddits about a topic, by name and description. “Which subreddits talk about home espresso?”
- subreddit_overview Members, 12-month growth, posts and authors per month, top topics, main language. “How big is r/SaaS and is it growing?”
- best_time_to_post Best day and hour (UTC), whether timing matters, where the active audience is. “When should I post in r/startups?”
- similar_subreddits Up to 10 subreddits with similar topics and 10 with an overlapping audience. “Which subreddits are like r/Entrepreneur?”
- brand_mentions How often Reddit links to a brand: monthly mentions, top subreddits and topics. “Where on Reddit do people talk about notion.so?”
- top_subreddits The largest, fastest-growing and most active subreddits, overall or by topic. “What are the fastest-growing fitness subreddits?”
- reddit_statistics Headline Reddit numbers: monthly active posters, posts, comments, countries. “How many people post on Reddit each month?”
- explore_topics Where a topic sits on the map of Reddit topics and which subreddits lead its area. “What does Reddit talk about around sourdough?”
- subreddit_audience Who the regulars are: share of women, median age, where else they hang out, what they are more into. “Who are the people in r/espresso?”
- compare_subreddits Two subreddits side by side: overlap, gender and age, interests, where each side hangs out. Groups of subreddits on paid plans. “How are r/running people different from r/bicycling people?”
- search_research KissMyPost studies of Reddit data with their short answers, dates and dataset DOIs. “Is there data on karma requirements for new accounts?”
- search_reddit_mentionsFree account How often posts and comments mention a phrase, month by month, and in which subreddits. “How often has Reddit mentioned Cursor IDE in the last two years?”
- search_reddit_postsPaid plansAPI key only The most relevant posts for a phrase: title, subreddit, month and link. “Find Reddit posts asking for a Notion alternative.”
- subreddit_posting_rulesPaid plans What a subreddit allows (links, images, crossposts) and how often posts get removed. “Can I post a link to my blog in r/marketing?”
- where_to_postPaid plans Check a post idea: subreddits where similar posts live and how they scored, best day and hour, seasonality. “Where and when should I post about my CRM for freelancers?”
- reply_radarPaid plansAPI key only Fresh threads in your subreddits that are worth a reply, with a suggested angle. “Which new threads in r/SaaS and r/startups should I reply to today?”
Limits
Per day, for each kind (subreddits, brands, searches, topics): in ChatGPT without signing in — 6; with a free account — 12; on a paid plan — 200. The same subreddit asked again on the same day counts once. Limits reset at 00:00 UTC. For deeper research (demographics, full post texts, exports), open the full reports in the app. See plans.
FAQ
What is the KissMyPost MCP server?
A remote Model Context Protocol server at https://kissmypost.com/api/mcp. AI assistants that support MCP, such as ChatGPT, Claude Code, Claude Desktop and Cursor, can call it to look up subreddit statistics, the best time to post, similar subreddits, brand mentions, topics and keyword trends on Reddit.
Is it free?
Yes. In ChatGPT the public tools work without signing in, up to 6 different subreddits, brands and searches of each kind per day. With a free KissMyPost account it is 12 of each per day, plus keyword trends across Reddit. Paid plans get 200 per day plus posting rules, and with an API key also post search and Reply Radar. Asking about the same subreddit again the same day does not count twice.
Do the paid tools cost kisses?
They use the same unlocks as the website, at the same prices: post search unlocks a phrase for 30 days, posting rules unlock a subreddit for 30 days, and Reply Radar works like in the app. Something already unlocked in the app is free in MCP and the other way round.
Which apps does it work with?
Any app that supports remote MCP servers. This page has step-by-step setup for ChatGPT, Claude (claude.ai, Claude Desktop and mobile), the Gemini app, Claude Code, OpenAI Codex, Cursor, VS Code with GitHub Copilot, Devin Desktop (formerly Windsurf), Zed, JetBrains AI Assistant, Gemini CLI, Cline, Roo Code, Continue, Kiro, opencode, Warp, LM Studio, Raycast, Manus and n8n. In Claude, add it from the Claude Directory. Claude, Gemini, Claude Code, Cursor and VS Code connect by signing in with your KissMyPost account; ChatGPT works without an account; other apps use an API key from this page. Post search and Reply Radar are not in ChatGPT yet.
Is KissMyPost in the Claude connector directory?
Yes. KissMyPost is listed in the Claude Directory, the official catalog of Claude connectors: https://claude.ai/directory/kissmypost. Open it, click Connect and sign in with your KissMyPost account. No API key or custom connector needed, and it then works in Claude on the web, Claude Desktop and the mobile apps.
What data does it return?
Aggregated monthly statistics from public Reddit activity, the same numbers as the public subreddit and brand pages on KissMyPost. It does not return post or comment texts, usernames or raw tables, and it skips NSFW communities.
How do I keep my API key safe?
Treat it like a password. It is shown once; we store only a hash. If it leaks, revoke it on this page or in your account settings: it stops working within a minute.