Skip to main content
Glama

cnblogs MCP-Dienst

MCP Server Python License

Durch das MCP (Model Context Protocol) werden die Open APIs von cnblogs als KI-aufrufbare Werkzeuge gekapselt. Dies ermöglicht es dir, in jedem beliebigen MCP-Client (QwenPaw, Claude Desktop, Cline usw.) Blogbeiträge für cnblogs direkt in natürlicher Sprache zu veröffentlichen.


Funktionen

  • create_post — Veröffentlichen von Markdown-Blogbeiträgen auf cnblogs

  • ✅ Token-Verwaltung über .env, kein Hardcoding

  • ✅ Unterstützung für die Anbindung an jeden MCP-Client


Related MCP server: feishu-markdown-mcp

Inhaltsverzeichnis


Schnellstart

1. Projekt klonen / herunterladen

git clone https://github.com/你的用户名/cnblogs-mcp.git
cd cnblogs-mcp

2. Virtuelle Umgebung erstellen

python -m venv .venv
source .venv/bin/activate      # macOS / Linux
# .venv\Scripts\activate       # Windows

3. Abhängigkeiten installieren

pip install -r requirements.txt

4. Token konfigurieren

cp .env.example .env

Bearbeite die .env-Datei und trage deinen Personal Access Token von cnblogs ein:

CNBLOGS_TOKEN=your_token_here

5. Test ausführen

# 验证 MCP 服务能正常启动
printf '{"jsonrpc":"2.0","id":1,"method":"initialize","params":{"protocolVersion":"2024-11-05","capabilities":{},"clientInfo":{"name":"test","version":"1.0"}}}\n{"jsonrpc":"2.0","id":2,"method":"tools/list","params":{}}\n' \
  | python cnblogs_mcp.py 2>/dev/null | grep '"name"'

Normale Ausgabe:

{"jsonrpc":"2.0","id":2,"result":{"tools":[{"name":"create_post",...}]}}

Token abrufen

  1. Melde dich bei cnblogs an.

  2. Gehe zu Persönliche Einstellungen → Sicherheitseinstellungen → Personal Access Token.

  3. Klicke auf „Token erstellen“, gib einen Namen ein und wähle die Berechtigungen (die Berechtigung „Beiträge veröffentlichen“ ist erforderlich).

  4. Kopiere den generierten Token und füge ihn in die .env-Datei ein.

⚠️ Der Token wird nur einmal angezeigt, bitte bewahre ihn sicher auf.


Client-Anbindung

1. QwenPaw

Suche im Arbeitsverzeichnis von QwenPaw nach agent.json und füge den MCP-Client hinzu:

{
  "mcp": {
    "clients": {
      "cnblogs": {
        "name": "cnblogs",
        "description": "博客园博文发布",
        "enabled": true,
        "transport": "stdio",
        "command": "/absolute/path/to/cnblogs-mcp/.venv/bin/python",
        "args": ["/absolute/path/to/cnblogs-mcp/cnblogs_mcp.py"],
        "env": {
          "DOTENV_PATH": "/absolute/path/to/cnblogs-mcp/.env"
        }
      }
    }
  }
}

Starte QwenPaw neu:

qwenpaw daemon restart

2. Claude Desktop

Füge Folgendes in ~/Library/Application Support/Claude/claude_desktop_config.json hinzu:

{
  "mcpServers": {
    "cnblogs": {
      "command": "/absolute/path/to/cnblogs-mcp/.venv/bin/python",
      "args": ["/absolute/path/to/cnblogs-mcp/cnblogs_mcp.py"],
      "env": {
        "DOTENV_PATH": "/absolute/path/to/cnblogs-mcp/.env"
      }
    }
  }
}

Starte Claude Desktop neu.

3. Cline / Roo Code

Suche in den VS Code-Einstellungen nach „MCP“, finde MCP Servers und füge Folgendes hinzu:

{
  "cnblogs": {
    "command": "/absolute/path/to/cnblogs-mcp/.venv/bin/python",
    "args": ["/absolute/path/to/cnblogs-mcp/cnblogs_mcp.py"],
    "env": {
      "DOTENV_PATH": "/absolute/path/to/cnblogs-mcp/.env"
    }
  }
}

4. Andere MCP-Clients

Allgemeine Konfigurationsvorlage:

Parameter

Wert

command

.venv/bin/python (Python der virtuellen Umgebung im Projekt)

args

["./cnblogs_mcp.py"]

env.DOTENV_PATH

Absoluter Pfad zur .env-Datei

💡 Wenn der MCP-Client DOTENV_PATH nicht unterstützt, kann der Token auch direkt über env.CNBLOGS_TOKEN übergeben werden.


Manuelle Tests

cd cnblogs-mcp

# 测试 1:初始化 + 工具列表
printf '...' | python cnblogs_mcp.py

# 测试 2:发布一篇博文
printf '{"jsonrpc":"2.0","id":1,"method":"initialize","params":{"protocolVersion":"2024-11-05","capabilities":{},"clientInfo":{"name":"test","version":"1.0"}}}\n{"jsonrpc":"2.0","id":2,"method":"tools/call","params":{"name":"create_post","arguments":{"title":"测试","body":"## 你好\n\n这是一篇测试文章。"}}}\n' | python cnblogs_mcp.py 2>/dev/null

Normale Rückgabe:

{"success": true, "postId": 12345678, "postUrl": "https://www.cnblogs.com/你的博客名/p/12345678"}

Fehlerbehebung

Fehlermeldung

Ursache

Lösung

未配置 CNBLOGS_TOKEN

.env nicht konfiguriert oder Pfad falsch

Überprüfe, ob die .env-Datei existiert und DOTENV_PATH korrekt ist

API 错误: 401

Token ungültig oder abgelaufen

Erstelle einen neuen Token auf cnblogs

API 错误: 403

Token-Berechtigungen unzureichend

Stelle sicher, dass beim Erstellen des Tokens „Beiträge veröffentlichen“ ausgewählt wurde

API 错误: 400

Anfrageformat fehlerhaft

Überprüfe, ob Titel und Textkörper leer sind

请求超时

Netzwerkproblem

Überprüfe die Netzwerkverbindung und versuche es erneut

MCP-Toolliste nach Verbindung leer

show_banner-Problem

Stelle sicher, dass mcp.run(show_banner=False) verwendet wird


API-Referenz

Werkzeug: create_post

Parameter:

Parameter

Typ

Erforderlich

Beschreibung

title

string

Titel des Blogbeitrags

body

string

Textkörper des Blogbeitrags (Markdown-Format)

Rückgabewert:

{
  "success": true,
  "postId": 19246558,
  "postUrl": "https://www.cnblogs.com/你的博客名/p/19246558"
}

Oder bei einem Fehler:

{
  "success": false,
  "error": "错误描述"
}

Entwicklung

Projektstruktur

cnblogs-mcp/
├── cnblogs_mcp.py     # MCP 服务主文件
├── requirements.txt   # Python 依赖
├── .env.example       # 环境变量模板(不含真实 Token)
├── .env               # 你的本地配置(已在 .gitignore 中)
├── .gitignore
├── README.md
└── LICENSE

Abhängigkeiten

fastmcp>=3.0.0
python-dotenv>=1.0.0
requests>=2.31.0

Lizenz

MIT — Über Sterne, Forks und PRs freuen wir uns!

F
license - not found
Not graded
quality - not tested
D
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

View all related MCP servers

Related MCP Connectors

  • Create, update, and publish changelog entries on your Patchlog changelog from any MCP client.

  • MCP-native collaborative markdown editor with real-time AI document editing

  • Publish AI-generated HTML & Markdown to a hosted, shareable URL via MCP.

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/mintonzhang/cnblogs-mcp'

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