Skip to main content
Glama

article-review-mcp

Una aplicación MCP visual para revisar parches explícitos de artículos con comentarios categorizados.

El agente editor no entrega al servidor un manuscrito reescrito silenciosamente. En su lugar, envía:

unchanged base document
+ explicit patches against that base
+ one or more categorized rationale comments per patch

El servidor valida y aplica esos parches de forma determinista, abre una interfaz de revisión interactiva, registra las decisiones humanas y ensambla de forma segura el artículo final.

Por qué el enfoque basado en parches

Un diff de documento completo puede mostrar qué cambió, pero pierde la intención original del agente. En este proyecto, un parche es el objeto atómico de revisión:

Patch
├── exact target in the original document
├── replace / delete / insert_before / insert_after
├── proposed text
├── categorized comments explaining why
└── human decision: pending / accepted / rejected / edited

Cada comentario tiene exactamente un topicId principal. Un parche puede contener múltiples comentarios sobre diferentes temas.

Related MCP server: Lens

Capacidades actuales

  • Envío explícito de PatchSet contra un documento base inmutable

  • replace, delete, insert_before e insert_after

  • Verificación SHA-256 de la base

  • Resolución de anclas exactas con contextBefore y contextAfter opcionales

  • Rechazo de anclas ambiguas y parches superpuestos

  • Comentarios de justificación categorizados obligatorios para cada parche

  • Taxonomías de temas personalizadas por sesión de revisión

  • Pestañas de temas con recuentos de parches/comentarios por tema

  • Dos modos de revisión por tema:

    • mantener todos los parches visibles y atenuar los no relacionados

    • mostrar solo los parches que contienen el tema seleccionado

  • Vistas divididas, unificadas y Final completas

  • Resaltado de inserciones/eliminaciones a nivel de palabra para inglés y chino

  • Aceptar, rechazar, restablecer, editar manualmente y decidir en bloque los parches visibles

  • Añadir, responder, resolver y filtrar comentarios de revisores

  • Comentarios compactos filtrados por tema para el agente editor

  • Rondas de revisión inmutables con transferencia exacta de decisiones de parches

  • Persistencia JSON, concurrencia optimista e idempotencia

  • Aplicación MCP más visor de navegador localhost protegido por token

  • Vista previa segura, escritura en archivo nuevo, sobrescritura protegida y exportación HTML estática

  • Herramientas heredadas de base + propuesta completa conservadas como alias de compatibilidad obsoletos

Requisitos

  • Node.js 20 o superior

  • No se requiere instalación de dependencias en tiempo de ejecución

Validar

npm run check

La suite ejecuta comprobaciones de sintaxis y 13 pruebas, incluido un intercambio real de MCP stdio y llamadas al visor localhost.

Ejecutar como servidor MCP

node src/cli.mjs \
  --stdio \
  --workspace /absolute/path/to/your/writing-workspace

Ejemplo de configuración de cliente:

{
  "mcpServers": {
    "article-review": {
      "command": "node",
      "args": [
        "/absolute/path/to/article-review-mcp/src/cli.mjs",
        "--stdio",
        "--workspace",
        "/absolute/path/to/your/writing-workspace"
      ]
    }
  }
}

Llamada principal del agente

Llame a article_review_submit_patchset:

{
  "title": "Introduction revision",
  "format": "markdown",
  "base": {
    "type": "workspace_file",
    "path": "manuscript.md"
  },
  "baseHash": "optional-sha256-of-the-base",
  "topics": [
    {
      "id": "architecture",
      "label": "架构与叙事",
      "description": "章节组织、研究主线和段落衔接"
    },
    {
      "id": "logic",
      "label": "逻辑与论证"
    },
    {
      "id": "clarity",
      "label": "表达与清晰度"
    }
  ],
  "patchSet": {
    "id": "revision-001",
    "summary": "补齐 Section 1 到 Section 2 的理论过渡",
    "patches": [
      {
        "id": "selection-pressure-bridge",
        "operation": "replace",
        "target": {
          "oldText": "The later experiments therefore held the candidate text fixed...",
          "contextBefore": "These results support Prediction 1...",
          "contextAfter": "LLM judge reliability varies..."
        },
        "newText": "Collectively, Section 1 establishes that...",
        "comments": [
          {
            "topicId": "architecture",
            "kind": "proposal_rationale",
            "title": "补齐 Section 1 → Section 2 的逻辑桥梁",
            "body": "原文从多智能体失败直接跳到 Judge reliability,缺少为什么需要 Judge 的理论过渡。",
            "severity": "major"
          },
          {
            "topicId": "logic",
            "kind": "proposal_rationale",
            "title": "明确研究问题递进关系",
            "body": "先证明系统存在选择失败,再验证 Judge 是否能够提供可靠信号。"
          }
        ]
      }
    ]
  }
}

Reglas de parches

  • Todos los parches apuntan al mismo documento base sin cambios.

  • Cada parche debe incluir al menos un comentario categorizado.

  • Cada comentario tiene uno y solo un topicId principal.

  • target.oldText debe resolverse a exactamente una ubicación.

  • Use contextBefore y contextAfter cuando el mismo texto aparezca repetidamente.

  • Se rechazan los parches superpuestos y las inserciones múltiples en un límite compartido no seguro.

  • El servidor deriva la propuesta; el agente no envía un segundo manuscrito completo en el flujo de trabajo principal.

Errores de validación típicos:

BASE_HASH_MISMATCH
ANCHOR_NOT_FOUND
ANCHOR_AMBIGUOUS
PATCH_OVERLAP
MISSING_PATCH_COMMENT
UNKNOWN_COMMENT_TOPIC

Revisión centrada en temas

La interfaz muestra pestañas de temas como:

全部主题 12
架构与叙事 4
逻辑与论证 3
证据与引用 2
方法与统计 1
表达与清晰度 2

Seleccionar un tema filtra los comentarios del lado derecho a ese tema. El panel del manuscrito puede:

  • conservar todos los parches y atenuar los no relacionados, o

  • ocultar por completo los parches no relacionados.

J y K navegan solo por los parches relevantes al tema activo.

Respaldo del visor local

Para clientes que no renderizan aplicaciones MCP:

node src/cli.mjs \
  --viewer 4173 \
  --workspace /absolute/path/to/your/writing-workspace

El visor se vincula a 127.0.0.1 e imprime una URL protegida por token aleatorio.

Demostración sintética:

npm run demo

Herramientas principales

Flujo de trabajo orientado al modelo:

article_review_submit_patchset
article_review_open
article_review_get_feedback
article_review_add_comments
article_review_update_patchset
article_review_finalize

Operaciones de revisión solo para la aplicación:

article_review_get_page
article_review_get_document
article_review_set_patch_decision
article_review_bulk_decide
article_review_edit_patch
article_review_add_comment
article_review_reply_comment
article_review_resolve_comment

Alias de compatibilidad obsoletos:

article_review_create
article_review_get_summary
article_review_update_proposal
article_review_set_decision
article_review_edit_hunk

Invariantes de seguridad

  • El documento base se reconstruye byte a byte a partir de segmentos sin procesar.

  • Aplicar cada parche reconstruye la propuesta derivada byte a byte.

  • CRLF, espacios en blanco, Markdown, chino, inglés y LaTeX básico no se normalizan.

  • El texto del manuscrito se renderiza como nodos de texto inertes, nunca mediante innerHTML.

  • Se rechazan rutas absolutas, el recorrido .. y el escape de enlaces simbólicos de directorios.

  • Las mutaciones requieren expectedVersion e idempotencyKey.

  • La sobrescritura de la fuente requiere confirmación explícita, validación SHA-256 de la fuente y una copia de seguridad.

Documentación

Alcance diferido

  • Control de cambios DOCX

  • Edición de PDF

  • Aceptación parcial a nivel de palabra

  • Colaboración multiusuario en tiempo real

  • Sincronización con Google Docs

Install Server
A
license - permissive license
C
quality
B
maintenance

Maintenance

Maintainers
Response time
Release cycle
Releases (12mo)
Commit activity

Resources

Unclaimed servers have limited discoverability.

Looking for Admin?

If you are the server author, to access and configure the admin panel.

Related MCP Servers

  • A
    license
    -
    quality
    B
    maintenance
    A stateful, AST-aware MCP server for structured code review workflows. It enables iterative review sessions with AST-based context localization and provides structured feedback with verdicts and patch suggestions for JavaScript/TypeScript code.
    1
    GPL 3.0
  • A
    license
    -
    quality
    C
    maintenance
    MCP server for searching and retrieving submissions, reviews, meta-reviews, rebuttals, and decisions from OpenReview venues like NeurIPS and ICLR, enabling peer review analysis.
    1
    MIT
  • F
    license
    -
    quality
    D
    maintenance
    MCP server for creating, validating, and reviewing implementation plans in GitHub Copilot Chat, with visual review interface and MongoDB persistence.

View all related MCP servers

Related MCP Connectors

  • Read-only MCP over an agentic SLR workspace with per-claim citation verification

  • Read-only MCP over an agentic SLR workspace with per-claim citation verification

  • Hosted MCP server for structured code review passes on human- and AI-written code. Free tier.

View all MCP Connectors

Latest Blog Posts

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/Biogod2020/article-review-mcp'

If you have feedback or need assistance with the MCP directory API, please join our Discord server