Spec Driven Development
MCP Server that facilitates spec-driven development workflows, not just Vibe Coding.
Descripción del creador (original en inglés)
MCP server for one throwaway RedNote account. Every write waits for a human Approve click.
Estos tres nunca se combinan en una sola puntuación: las opiniones, las mediciones y la popularidad son cosas distintas.
Todavía no escribimos un resumen sencillo para este. Abajo están los datos que leímos del registro.
Elige la app de IA que usas y copia la configuración.
Necesitas
¿Qué app usas?
Elige tu app arriba. La recordamos, así que la próxima vez el botón dirá “Instalar en …”.
Abre Claude Desktop → Settings → Developer → Edit Config y pega esto en claude_desktop_config.json
{
"mcpServers": {
"rednote-gate": {
"command": "npx",
"args": [
"-y",
"rednote-gate"
]
}
}
}Ejecuta esto en tu terminal
claude mcp add rednote-gate -- npx -y rednote-gatePégalo en .cursor/mcp.json de tu proyecto, o en ~/.cursor/mcp.json
{
"mcpServers": {
"rednote-gate": {
"command": "npx",
"args": [
"-y",
"rednote-gate"
]
}
}
}Tu navegador te pide permiso para abrir la app; luego la app muestra la configuración y te pide confirmar. Los valores de las claves quedan vacíos para que los completes tú.
Pégalo en .vscode/mcp.json de tu proyecto
{
"servers": {
"rednote-gate": {
"type": "stdio",
"command": "npx",
"args": [
"-y",
"rednote-gate"
]
}
}
}Tu navegador te pide permiso para abrir la app; luego la app muestra la configuración y te pide confirmar. Los valores de las claves quedan vacíos para que los completes tú.
Este se ejecuta en tu computadora, y ChatGPT solo puede conectarse a servidores en internet. Elige otra app.
Tu elección se guarda en una cookie en este dispositivo; no necesitas cuenta.
Esta configuración se genera a partir de la ficha del creador en el registro. Si el README dice otra cosa, sigue el README.
Se ejecuta en tu computadora; la lista de herramientas aparece en tu app de IA después de instalarlo.
Revisamos información que cualquiera puede ver; no hemos leído el código. Las revisiones que no aplican no se cuentan. · Revisado el 7 nov 2026
El nombre en el registro se verificó con la cuenta de GitHub YashShelar007, dueña del repo
Todavía no hemos leído este repo en GitHub
Todavía no hemos leído este repo en GitHub
Este se ejecuta en tu computadora; no hay endpoint en internet
Se ejecuta en tu computadora y usa ajustes locales en su lugar
Se ejecuta en tu computadora; solo podemos leer listas de herramientas de endpoints en internet
Comparado con todos los servidores activos de esta categoría en el registro. Las estrellas solo cuentan cuando quien lo publica es dueño del repo.
Superó 1 de 1 revisiones básicas aplicables. No hemos leído el código. Antes de agregar una clave o un token, revisa qué acceso pide el servidor y usa una clave que tenga solo los permisos que necesitas.
El registro no indica ninguna clave obligatoria, aunque algunos servidores te piden iniciar sesión la primera vez que los usas.
Se ejecuta en tu computadora. Tu app de IA lo inicia cuando hace falta, y los datos no pasan por los servidores del creador (a menos que el propio servidor llame a un servicio en línea).
El repo de GitHub cambió por última vez –, y la última versión (1.1.1) llegó al registro hace 30 días.
Las apps compatibles con MCP, como Claude Desktop, Claude Code, Cursor y VS Code. También necesitas Node.js en tu computadora.
En la misma categoría: Spec Driven Development, Remote Desktop Commander, Georgia MCP
Servidores de la misma categoría hechos por otros creadores, ordenados por estrellas.
Cómo leer una tarjeta:★ Estrellas de GitHubiTres pilares: reseñas · revisiones · usoiActualizado = fecha en que se publicó la última versión en el registroi
MCP Server that facilitates spec-driven development workflows, not just Vibe Coding.
Remote Desktop Commander: use files, terminal and processes on your own computers from any AI app.
An MCP server for Georgian public data, read from the organizations that publish it.
Copiado tal cual del repo del creador. PopNx MCP no lo ha revisado ni lo respalda. Se quitaron HTML, imágenes y scripts. Los enlaces llevan fuera de este sitio.
中文说明
rednote-gate drives ONE dedicated throwaway RedNote (Xiaohongshu) account. Never point it at a primary or brand account. It works by browser automation, which is against RedNote's terms of service. The account can be rate limited or banned. Only use an account you can afford to lose.
Website: https://yashshelar007.github.io/rednote-gate/
It is a local MCP server for Claude Code, Claude Desktop and Codex. Reads run directly. Every write waits in a queue until a human clicks Approve on a local web page.
npm install -g rednote-gate
rednote-gate setup
That installs Chromium, opens the QR login for your throwaway account, and connects rednote-gate to Claude Code. Your data and login live in ~/.rednote-gate.
git clone https://github.com/YashShelar007/rednote-gate.git
cd rednote-gate npm run setup
Same steps, plus the build. A clone that already has a login in .session/ keeps its data in the clone folder.
Then use rednote-gate's prompts. Claude Code shows them as slash commands:
| Prompt (slash command) | What happens |
|---|---|
/rednote-gate:post_photos | Claude writes a photo note from your photos and a one-line brief, and queues it |
/rednote-gate:reply_to_comments | Claude reads a note's comments, drafts up to 3 replies, and queues them |
/rednote-gate:post_from_concept | Claude researches a concept, writes an original note, renders text-card images, and queues it |
/rednote-gate:research_topic | Claude searches a topic, reads the top notes and comments, and summarises what works. Read only. |
/rednote-gate:review_queue | Claude summarises what is waiting and what happened |
/rednote-gate:help | every tool and prompt, your mode, and what is left of today's budget |
Or just ask in plain words ("post these two photos about my hike"). The first time you use a rednote tool, a small background service starts. It owns the browser, the approval page and the worker, and it keeps running after you close Claude Code, so the approval page always works and approved items always run. It closes the browser window after 5 idle minutes. Stop it with rednote-gate stop (npm run stop in a clone). When something is queued, the approval page opens in your browser and your Mac shows a notification. You click Approve. About 30 seconds later it runs, and the page shows a screenshot of the result. You get a notification when it is done, or if RedNote ever shows a captcha.
Status: every flow was checked against the live site on 2026-10-06 on a rednote.com account, headed: four reads, and one real publish, draft, comment and reply, each approved by a human on the approval page. See Last verified against the live site.
| Part | Here |
|---|---|
| Host | Claude Code, Claude Desktop or Codex: the AI app you talk to |
| Client | the connector inside the host, one per server. The host provides it. |
| Server | rednote-gate, a local MCP server. The host starts it and talks to it over stdio. |
| Tools (15) | 5 read tools run straight away. 6 write tools only queue. 4 local tools never touch RedNote. |
| Prompts (6) | post_photos, post_from_concept, reply_to_comments, research_topic, review_queue, help. Claude Code shows them as slash commands. |
| Resources | none |
The model calls tools. You choose prompts. The background service, the approval page and the rednote-gate CLI are not part of MCP. The approval page is a local web page on 127.0.0.1. It sits outside MCP on purpose, so the model cannot approve its own writes.
rednote-gate is a local stdio MCP server. It needs Node 20 or newer. It is written in TypeScript and drives Playwright Chromium on your own machine.
Read tools run straight away:
| Tool | Arguments | Returns |
|---|---|---|
rednote_login_status | none | site, loggedIn (main site) and creatorSession (creator site, needed to publish) |
rednote_search | keyword, limit (up to 30) | noteId, title, author, likes, url. The url carries an xsec_token. |
rednote_get_note | url | noteId, title, body, author, tags, likes, collects, comment count, ipLocation, time |
rednote_get_comments | url, limit (up to 50) | id, author, text, likes, reply count. First page only. |
rednote_make_cards | cards (1 to 9: title, up to 8 lines, footer), optional theme (notebook, sticky, chalkboard, blueprint) | renders 1080x1440 text-card PNGs on your computer and returns their paths. Never touches RedNote. |
rednote_my_notes | limit (up to 30) | your own notes, newest first: noteId, title, likes, url |
rednote_queue_status | limit | recent queue items: id, tool, status, last change. Never the approval link. |
rednote_help | none | what rednote-gate can do, the current mode, and today's remaining budget |
rednote_open_approval_page | none | opens the approval page in your browser. Never returns the link. |
Write tools only add an item to the queue and return its queue id. They never touch the browser.
| Tool | Arguments | What happens after approval |
|---|---|---|
rednote_create_post | title (RedNote's limit of 20: a CJK character counts 1, ASCII counts half), body (up to 1000 characters, emoji fine, no #), images (1 to 9 absolute paths to JPEG, PNG or WebP files; the first is the cover), optional topics (up to 5, without #) | publishes a photo note; each topic is added as a linked RedNote topic when the picker offers exactly that topic, otherwise as plain #text |
rednote_create_draft | same as rednote_create_post | saves a draft instead of publishing |
rednote_create_video_post | title, body, video (absolute path to one MP4 or MOV, up to 500 MB, a project limit), optional topics | publishes a video note once RedNote has processed it |
rednote_post_comment | url, text (up to 500 characters) | posts a comment on the note |
rednote_like_note | url, optional noteTitle | likes the note (own daily cap, see RN_DAILY_LIKES); refuses a note already liked |
rednote_reply_comment | url, commentId, commentAuthor, commentText, text (up to 500 characters) | replies to that comment |
For rednote_reply_comment, pass the id, author and text exactly as rednote_get_comments returned them. Before replying, the worker reads the comment with that id from the page and checks that its author and text still match exactly. If not, it does not reply.
Titles, comments and replies must be a single line: a line break would be typed as Enter, which can send a comment early. The body of a note may have line breaks.
Note URLs must look like https://www.xiaohongshu.com/explore/ ?xsec_token=... (or www.rednote.com for overseas accounts). Take them from rednote_search results. Bare URLs without the token are refused, because RedNote answers them with a captcha. See docs/friction.md.
A short example:
rednote_create_post. The server checks the image, copies it into the queue and hashes it. It returns a queue id such as q_20261006T153012_ab12. No browser opens. Nothing is posted.rednote-gate approve and open the link it prints. The page shows the exact title, body and image. You click Approve.attempt line to the ledger, then opens the creator page, uploads the image and types the text.dry_run. In live mode (rednote-gate live) it clicks publish. The item becomes posted.rednote_queue_status to see the result. It never gets the approval link.Clicking Approve only marks the item. It does not post anything by itself. There is no approval in chat. Telling Claude "yes, post it" changes nothing.
pending -> approved | rejected
approved -> posting | rejected (Cancel) posting -> posted | dry_run | failed | unknown
| Status | Meaning |
|---|---|
pending | queued, waiting for a human |
approved | a human clicked Approve. Waits for the worker and the budget. |
rejected | a human clicked Reject, or Cancel on an approved item |
posting | the worker is running it now |
posted | a live attempt finished |
dry_run | the worker ran the flow with dry run on. It navigated, uploaded images and typed text, but did not click the final button. |
failed | a dry run hit an error, or a live attempt stopped before its final click (for example, the comment it should reply to changed). Nothing was sent. It can be queued again. |
unknown | a live attempt hit an error after its final click, or the process died mid live attempt. It may or may not have posted. It is never retried. Check the account by hand. |
Queuing an identical write returns the existing id instead of a second item. Identical means same tool, same arguments and same image bytes. This applies while the first one is pending, approved, posting, posted or unknown.
RN_DAILY_WRITES live attempts (default 5) in any rolling 24 hours. Comments and replies also need RN_COMMENT_GAP_MIN minutes (default 10) since the last live comment or reply attempt. The budget is worked out from the ledger, so a restart does not reset it. Failed and unknown live attempts count. Dry runs do not. An approved item over budget waits. The approval page shows when the next slot opens.attempt line is written before the browser starts, so a crash still uses up budget. A live item cut off mid attempt becomes unknown and is never retried. A dry run cut oSolo se muestra el principio; lee el resto en el repo