Token导航 LogoToken导航

MCP Server · 文档知识

Astro Blog MCP Server

Astro Blog MCP Server 是一个自动化博客文章创建的服务,支持通过REST API自动发布文章到Astro博客,并集成GitHub和Vercel部署。

stdio官方级别未说明来源级核验工具 0
知识管理TypeScriptAPI集成GitHub

快速开始

作者 / 组织
amilcar-laniakea
提供方
amilcar-laniakea
运行时
Docker

工具数量

0

来源目录标注

资源数量

0

来源目录标注

提示词数量

0

来源目录标注

GitHub Star

0

仓库热度

收录来源

2 个

MCP World

选型结论

Astro Blog MCP Server 属于文档知识类 MCP Server,公开资料标注 0 个工具,通过stdio 本地进程接入,客户端适配情况以官方文档为准,有可以直接复制的安装命令;接入前要先准备 API Key。

分类

文档知识

传输方式

stdio

认证方式

API Key

部署方式

支持远程部署

安装与配置

安装命令

docker run -p 3000:3000 --env-file .env astro-blog-mcp

客户端配置示例

{
  "mcpServers": {
    "mcp-auto-post-astro": {
      "command": "docker",
      "args": [
        "run",
        "-p",
        "3000:3000",
        "--env-file",
        ".env",
        "astro-blog-mcp"
      ]
    }
  }
}

按公开安装命令拼出来的示例,字段名和参数以仓库 README 为准;带 YOUR_API_KEY 这类占位符的位置记得换成自己的值。

上手步骤

  1. 1

    准备运行环境

    stdio 服务在本地起进程,需要先装好 Docker,再按安装命令拉取依赖。

  2. 2

    安装服务

    复制下面的安装命令执行;命令里带占位符的位置换成自己的密钥或路径。

  3. 3

    写入客户端配置

    在客户端的 MCP 配置里填启动命令和参数,保存后完全退出客户端再打开,让新配置生效。

  4. 4

    验证是否可用

    连接成功后客户端会列出 0 个工具,随便调一个只读工具确认能返回结果。

接入前确认

不要直接授予不必要的文件、网络或账号权限;先核对安装命令和配置内容。

详细介绍

Astro Blog MCP Server

MCP (Model Context Protocol) Server para automatizar la creación de posts en un blog Astro desplegado en Vercel.

🚀 Características

  • ✅ Creación automática de posts vía API REST
  • ✅ Integración directa con GitHub
  • ✅ Validación y sanitización de inputs
  • ✅ Seguridad con API Keys
  • ✅ Rate limiting
  • ✅ Trigger automático de deployments en Vercel
  • ✅ Compatible con n8n y otras herramientas de automatización

📦 Instalación

1. Clona el repositorio

git clone 
cd astro-blog-mcp

2. Instala dependencias

pnpm install

3. Configura variables de entorno

Copia .env.example a .env y completa los valores:

cp .env.example .env

Variables requeridas:

  • GITHUB_TOKEN: Personal Access Token de GitHub con permisos de repo
  • GITHUB_OWNER: Tu usuario de GitHub
  • GITHUB_REPO: Nombre del repositorio de tu blog
  • GITHUB_BRANCH: Branch a usar (default: main)
  • API_SECRET_KEY: Una clave secreta aleatoria de al menos 32 caracteres
  • MCP_PORT: Puerto del servidor (default: 3000)
  • DEPLOY_HOOK: (Opcional) Deploy Hook de Vercel

4. Compila el proyecto

pnpm build

🎯 Uso

Iniciar el servidor

Modo desarrollo:

pnpm dev

Modo producción:

pnpm start

Probar la API

pnpm test

🔑 Configuración de GitHub Token

  1. Ve a GitHub Settings → Developer settings → Personal access tokens → Tokens (classic)
  2. Genera un nuevo token con estos permisos:

- repo (acceso completo)

  1. Copia el token y agrégalo a tu .env

🔗 Configuración de Vercel Deploy Hook

  1. En tu proyecto de Vercel, ve a Settings → Git
  2. En la sección "Deploy Hooks", crea un nuevo hook
  3. Copia la URL y agrégala a DEPLOY_HOOK en tu .env

📡 API Endpoints

Health Check

GET /health

Validar configuración

GET /api/validate
Headers: x-api-key: YOUR_API_KEY

Crear un post

POST /api/posts
Headers:
  Content-Type: application/json
  x-api-key: YOUR_API_KEY

Body:
{
  "title": "Mi Nuevo Post",
  "description": "Descripción del post",
  "tags": ["astro", "blog"],
  "category": "Tutorial",
  "draft": false,
  "content": "# Contenido del post\n\nTexto aquí..."
}

Actualizar un post

PUT /api/posts/:fileName
Headers:
  Content-Type: application/json
  x-api-key: YOUR_API_KEY

Body: (mismo formato que crear)

🔌 Integración con n8n

Paso 1: Añadir Credentials

En n8n:

  1. Ve a Credentials → New
  2. Selecciona Header Auth
  3. Configura:

- Name: Astro Blog MCP - Header Name: x-api-key - Value: Tu API_SECRET_KEY

Paso 2: Crear Workflow

  1. Añade un nodo HTTP Request
  2. Configura:

- Method: POST - URL: http://tu-servidor:3000/api/posts - Authentication: Selecciona las credentials creadas - Body Content Type: JSON - Body:

   {
     "title": "{{ $json.title }}",
     "description": "{{ $json.description }}",
     "tags": {{ $json.tags }},
     "category": "{{ $json.category }}",
     "content": "{{ $json.content }}"
   }

Ejemplo de Workflow n8n

{
  "nodes": [
    {
      "parameters": {
        "method": "POST",
        "url": "http://localhost:3000/api/posts",
        "authentication": "predefinedCredentialType",
        "nodeCredentialType": "headerAuth",
        "sendBody": true,
        "bodyParameters": {
          "parameters": [
            {
              "name": "title",
              "value": "Nuevo Post desde n8n"
            },
            {
              "name": "description",
              "value": "Post creado automáticamente"
            },
            {
              "name": "tags",
              "value": ["automation", "n8n"]
            },
            {
              "name": "category",
              "value": "Automation"
            },
            {
              "name": "content",
              "value": "# Hola Mundo\n\nEste post fue creado por n8n"
            }
          ]
        }
      },
      "name": "Create Blog Post",
      "type": "n8n-nodes-base.httpRequest",
      "position": [250, 300]
    }
  ]
}

🐳 Deploy con Docker

docker build -t astro-blog-mcp .
docker run -p 3000:3000 --env-file .env astro-blog-mcp

🔒 Seguridad

  • ✅ Autenticación con API Key
  • ✅ Rate limiting (20 req/min)
  • ✅ Validación de nombres de archivo (previene path traversal)
  • ✅ Sanitización de inputs con Zod
  • ✅ Timing-safe comparison para API keys
  • ✅ CORS configurado

🧪 Testing

El proyecto incluye un script de prueba completo:

pnpm test

Esto probará:

  1. Health check
  2. Validación de acceso a GitHub
  3. Creación de un post de prueba

📝 Formato de Posts

Los posts se crean con este front-matter:

---
title: Título del Post
published: 2025-10-25
description: "Descripción corta"
image: ""
tags: ["tag1", "tag2"]
category: "Categoría"
draft: false
---
Contenido del post aquí...

🛠️ Troubleshooting

Error: "Failed to validate GitHub access"

  • Verifica que tu GITHUB_TOKEN sea válido
  • Confirma que el token tenga permisos de repo
  • Verifica que GITHUB_OWNER y GITHUB_REPO sean correctos

Error: "File already exists"

  • El archivo ya existe en el repositorio
  • Usa un nombre diferente o el endpoint PUT para actualizar

Error: "API key is required"

  • Asegúrate de incluir el header x-api-key en tus requests
  • Verifica que la API key coincida con API_SECRET_KEY

📚 Recursos

📄 Licencia

MIT

工具与能力

工具数量

0

资源数量

0

提示词数量

0

能力标签

博客自动化TypeScript本地部署RESTAPIGitHub集成Vercel部署内容管理

数量来自来源目录的标注,具体工具清单以官方文档为准。

典型使用场景

读长文档提问

把 PDF、Markdown 和笔记交给模型,按章节追问细节。

整理知识库

把零散资料归档、打标签,检索时更容易命中。

批量出摘要

提取要点,输出能直接引用的段落。

选择建议

值得选的地方

  • 只提供 0 个工具,职责集中,接入后不容易误操作。
  • 有现成的安装命令,不用自己找入口,照着跑就能起服务。
  • 公开说明写得比较完整,接入前能看清能力边界。

先想清楚的地方

  • stdio 方式要求本地装好 Docker,换机器要重新装一遍。
  • 需要自备API Key,没有凭据没法直接试。
  • 第三方目录整理,版本更新和行为细节以官方仓库为准。

更适合

  • 需要在文档知识场景里让模型直接调用外部能力的人。
  • 想先快速试一下、能接受在本地跑服务的人。

不太适合

  • 完全不想在本地装环境的人。
  • 暂时拿不到API Key的人。
  • 需要厂商级 SLA 和技术支持的生产环境。

同类对比

5 个同类
MCP Server工具数传输方式安装命令收录来源最后核验
Astro Blog MCP Server

MCP World · 本页

0stdio有2 个2026-05-17
Cherry Studio

MCP World

0未说明未标注1 个2026-05-17
Pdf Math Translate

MCP World

0stdio有1 个2026-05-17
report generation

MCP World

0stdio有1 个2026-05-17
Anything To Notebooklm

MCP World

0stdio有1 个2026-05-17

按同分类和工具数量挑出最接近的几条,字段以各自详情页为准。

常见问题

5 条

Astro Blog MCP Server 怎么安装?

公开资料给出的安装命令是 docker run -p 3000:3000 --env-file .env astro-blog-mcp,运行环境为 Docker。装完后按客户端要求写进 MCP 配置,重启客户端生效。

Astro Blog MCP Server 怎么在 Claude Desktop、Cursor 里配置?

它是stdio 本地进程,客户端配置里要写启动命令和参数,运行环境是 Docker;保存后完全退出客户端再打开,配置才会生效。

Astro Blog MCP Server 收费吗?

本站只整理公开资料,不代收费用,也没有标注具体价格。是否收费取决于服务本身和背后的接口额度,正式使用前按官方说明确认。

Astro Blog MCP Server 需要 API Key 吗?

公开资料标注的认证方式是API Key,也就是要先拿到凭据才能连上;凭据只填在自己本地的配置里,不要写进公开仓库。

Astro Blog MCP Server 支持哪些客户端?

公开资料没有标注具体客户端;能配置本地 MCP 命令的客户端都能接,配置方式参照官方文档。

来源信息

继续浏览同类 MCP