mcp-reddit-publisher
A safe-by-default MCP server that allows AI assistants (Claude, Codex, OpenCode) to interact with Reddit for content publishing workflows.
Health Check (
health): Validate Reddit configuration and connectivity without exposing credentials.Search Subreddits (
search_subreddits): Search Reddit communities by query to find the best audience fit (returns up to 50 results).Get Subreddit Rules (
get_subreddit_rules): Fetch a subreddit's rules and automatically flag promotional-posting risks to avoid violations.Preview Text Post (
preview_text_post): Validate and preview a post (title, body, flair, NSFW/spoiler flags) without publishing.Submit Text Post (
submit_text_post): Publish a Reddit text post with built-in safety controls — dry-run mode (enabled by default viaREDDIT_DRY_RUN=true), subreddit allowlisting, rate limiting, rule checks, and promotional risk overrides.
Credentials (client_id, client_secret, refresh_token) are managed securely, and dry-run mode prevents accidental publishing until explicitly disabled.
Allows publishing text posts to Reddit subreddits, with capabilities to search subreddits, retrieve subreddit rules, preview posts before publishing, and submit posts with safety features like dry-run mode, subreddit allowlist, rule checking, and rate limiting.
Click on "Deploy 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., "@mcp-reddit-publisher Preview post in r/SideProject about my new tool"
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.
mcp-reddit-publisher
MCP para Claude/Codex/OpenCode publicar no Reddit com segurança.
npm:
mcp-reddit-publisher(ainda não publicado; por enquanto usegithub:osamuelnovaes/mcp-reddit-publisher)Por padrão é seguro:
REDDIT_DRY_RUN=true, então nada é publicado de verdade até você trocar parafalse.
Instalação rápida
Você não precisa clonar o projeto, instalar dependências nem rodar build.
Claude Code
Rode uma vez:
npx -y github:osamuelnovaes/mcp-reddit-publisher install claude-code \
--client-id "SEU_REDDIT_CLIENT_ID" \
--client-secret "SEU_REDDIT_CLIENT_SECRET" \
--refresh-token "SEU_REDDIT_REFRESH_TOKEN" \
--user-agent "mcp-reddit-publisher/0.1.0 by u/SEU_USUARIO" \
--allowed "SideProject,saas,startups"Depois reinicie o Claude Code e peça:
Use o reddit-publisher para verificar o health e buscar subreddits sobre SaaS.Claude Desktop
Rode uma vez:
npx -y github:osamuelnovaes/mcp-reddit-publisher install claude-desktop \
--client-id "SEU_REDDIT_CLIENT_ID" \
--client-secret "SEU_REDDIT_CLIENT_SECRET" \
--refresh-token "SEU_REDDIT_REFRESH_TOKEN" \
--user-agent "mcp-reddit-publisher/0.1.0 by u/SEU_USUARIO" \
--allowed "SideProject,saas,startups"Depois reinicie o Claude Desktop.
Só testar se o pacote roda
npx -y github:osamuelnovaes/mcp-reddit-publisher --helpSe apareceu a ajuda, o pacote baixou e executou corretamente.
Related MCP server: mcp-reddit-publisher
O que o comando install faz
install claude-code: chama o CLI oficial do Claude Code e adiciona o MCP automaticamente.install claude-desktop: edita/cria o arquivoclaude_desktop_config.jsonautomaticamente.Não publica nada no Reddit durante a instalação.
Mantém
REDDIT_DRY_RUN=truepor padrão.
Credenciais Reddit
Crie um app no Reddit uma vez:
Clique em
create another app.Escolha o tipo
scriptpara uso pessoal/local.Copie:
client_idclient_secret
Configure um user agent, por exemplo:
mcp-reddit-publisher/0.1.0 by u/seu_usuarioA forma recomendada é usar:
REDDIT_REFRESH_TOKENAlternativa para app script:
--username "SEU_USUARIO" --password "SUA_SENHA"Codex, OpenCode ou outros clientes MCP
Se o cliente não tem instalador automático ainda, gere o bloco pronto:
npx -y github:osamuelnovaes/mcp-reddit-publisher setup codex \
--client-id "..." \
--client-secret "..." \
--refresh-token "..." \
--user-agent "mcp-reddit-publisher/0.1.0 by u/SEU_USUARIO"Troque codex por:
setup opencode
setup claude
setup jsonFerramentas MCP disponíveis
health: valida a configuração sem expor secrets.search_subreddits: busca comunidades por termo.get_subreddit_rules: lê regras do subreddit e aponta riscos.preview_text_post: valida e mostra o post sem publicar.submit_text_post: publica o post respeitando dry-run, allowlist, regras e rate limit.
Segurança por padrão
Nada é publicado por padrão:
REDDIT_DRY_RUN=truePara publicar de verdade, só depois de testar:
npx -y github:osamuelnovaes/mcp-reddit-publisher install claude-code \
--client-id "..." \
--client-secret "..." \
--refresh-token "..." \
--user-agent "mcp-reddit-publisher/0.1.0 by u/SEU_USUARIO" \
--dry-run falseRecomendações:
REDDIT_ALLOWED_SUBREDDITS=SideProject,saas,startups
REDDIT_REQUIRE_RULE_CHECK=true
REDDIT_MIN_SECONDS_BETWEEN_POSTS=300Desenvolvimento local
git clone https://github.com/osamuelnovaes/mcp-reddit-publisher.git
cd mcp-reddit-publisher
npm install
npm run typecheck
npm test
npm run build
node scripts/smoke.mjsLicença
MIT
Available Tools
5 toolsget_subreddit_rulesGet subreddit rulesB
Fetches subreddit rules and flags obvious promotional-posting risks.
Inputs: subreddit (required).
healthHealth checkA
Shows current configuration status without revealing secrets.
Inputs: no named parameters.
preview_text_postPreview text postC
Validates and previews a Reddit text post without publishing.
Inputs: subreddit (required), title (required), body (required), sendReplies, +3 more.
search_subredditsSearch subredditsB
Searches Reddit communities by query to help find audience fit before posting.
Inputs: query (required), limit.
submit_text_postSubmit text postB
Publishes a Reddit text post. By default REDDIT_DRY_RUN=true prevents real publishing; set false only after testing.
Inputs: subreddit (required), title (required), body (required), sendReplies, +4 more.
Tool Schema Changelog
Recent tool additions, removals, and schema changes observed during successful MCP inspections.
Loading tool schema changelog…
TDQS
Scored across 5 tools
Each tool has a distinct purpose: fetching subreddit rules, checking health, previewing a post, searching communities, and submitting a post. No tool overlaps in functionality.
All tool names follow snake_case with a verb_noun pattern except for 'health', which is a single word but commonly accepted. Overall naming is consistent and predictable.
With 5 tools, the server is well-scoped for the Reddit publishing domain. Each tool covers a necessary step in the workflow without being too few or excessive.
The tool set covers the core publishing workflow: search subreddits, check rules, preview, and submit. Missing features like deleting posts or handling other post types, but sufficient for text post publishing.
Maintenance
Related MCP Connectors
One MCP server for all your MCP servers: code mode, per-tool permissions, approvals and audit.
MCP server for QPost — lets AI agents publish video and image posts to YouTube, TikTok, Instagram.
Hosted X (Twitter) MCP server for Claude, ChatGPT and Cursor, with each action switched per account.
Related MCP Servers
- AlicenseBqualityDmaintenanceAn MCP server that provides both read-only and authenticated access to Reddit content and interactions without requiring a developer API key. It enables users to browse posts, search subreddits, and perform write actions like commenting and voting by leveraging browser session cookies.827 PyPI3-
- FlicenseBqualityDmaintenanceMCP server to publish on Reddit safely, with automated rule checking, dry-run mode, and subreddit allowlisting.5-
- AlicenseAqualityCmaintenanceAn MCP server that enables authenticated Reddit account actions like posting, commenting, voting, and messaging via the Reddit API.1234 npmMIT
- AlicenseNot gradedqualityDmaintenanceMCP server for interacting with Reddit via OAuth, with tiered tools for reading, writing, and moderation actions.MIT