Token导航 LogoToken导航TokenDH.com
Emlog MCP Server logo
文档知识未说明官方级别未说明来源级核验

Emlog MCP Server

MCP Server

基于模型上下文协议(MCP)的Emlog博客系统集成服务,允许AI助手通过标准化接口与Emlog博客交互。

工具数

12

提示词数

0

GitHub Stars

2

资源数

0
知识管理JavaScriptClaudeAPI集成Claude DesktopClaude

安装说明

本站只整理中文说明和来源信息,不托管安装包,也不代用户安装。

作者 / 组织

eraincc

提供方

eraincc

最后核验

2026/5/17 20:21

快速接入

先看主来源和安装命令,再打开仓库或文档;下面只保留这个条目的关键接入事实。

详细介绍

Emlog MCP服务器

](https://img.shields.io/github/license/eraincc/emlog-mcp.svg) ![English](README.md) ![简体中文](README-zh.md) ![繁體中文](README-zh_TW.md)

基于模型上下文协议(MCP)的Emlog博客系统集成服务,允许AI助手通过标准化接口与Emlog博客进行交互。

特性

资源

  • 博客文章 (emlog://articles)-获取所有博客文章列表
  • 分类 (emlog://categories)-获取所有类别信息
  • 评论 (emlog://comments)-获取评论列表(基于最新文章)
  • 微型笔记 (emlog://notes)-获取微型笔记列表
  • 条款草案 (emlog://drafts)-获取所有草稿文章列表
  • 用户信息 (emlog://user)-获取当前用户信息

工具

  • 创建_文章 -创建新的博客文章
  • 更新_文章 -更新现有博客文章
  • 获取_文章 -获取特定文章详细信息
  • 搜索_文章 -搜索文章(支持关键字、标签、类别过滤)
  • 喜欢_文章 -喜欢文章
  • 添加注释 -添加评论
  • 获取_注释 -获取特定文章的评论列表
  • create_note -创建微型笔记
  • 上传文件 -上传文件(图像和其他媒体资源)
  • get_user_info -获取用户信息
  • get_draft_list -获取文章草稿列表
  • get_draft_detail -获取具体草稿的详细信息

技术栈

  • TypeScript -类型安全的JavaScript超集
  • Node.js -JavaScript运行时环境
  • MCP-SDK -模型上下文协议TypeScript SDK
  • 阿西奥斯 -HTTP客户端库
  • 萨德 -TypeScript第一个模式验证库
  • 表单数据 -多部分表单数据处理

安装和配置

方法1:直接使用(推荐)

使用 emlog-mcp 直接在Claude Desktop配置中,无需本地安装。跳转到 MCP客户端配置 部分。

方法2:本地开发安装

1.克隆项目

git clone https://github.com/eraincc/emlog-mcp.git
cd emlog-mcp

2.安装依赖项

npm install

3.环境变量配置

复制示例配置文件并编辑:

cp .env.example .env

在中设置以下环境变量 .env 文件:

# Emlog API base URL (required)
EMLOG_API_URL=https://your-emlog-site.com

# Emlog API key (required)
EMLOG_API_KEY=your_api_key_here

正在获取API密钥:

  1. 登录您的Emlog后端管理系统
  2. 转到“设置”→ “API接口”
  3. 启用API功能并生成API密钥
  4. 将生成的密钥复制到 .env 文件

4.建设项目

npm run build

5.运行服务

npm start

或开发模式:

npm run dev

MCP客户端配置

Claude桌面配置

添加到Claude Desktop配置文件(通常位于 ~/Library/Application Support/Claude/claude_desktop_config.json):

{
  "mcpServers": {
    "emlog": {
      "command": "npx",
      "args": ["emlog-mcp"],
      "env": {
        "EMLOG_API_URL": "https://your-emlog-site.com",
        "EMLOG_API_KEY": "your_api_key_here"
      }
    }
  }
}

注: 配置现在直接使用已发布的npm包 emlog-mcp,无需本地安装或编译。 npx 将自动下载并运行最新版本。

该项目还提供了一个示例配置文件 claude-desktop-config.json 以供参考。

其他MCP客户端

对于其他支持MCP的客户端,请参阅其各自的stdio传输配置文档。

API接口文件

此服务构建在Emlog的REST API上,支持以下主要操作:

物品管理

  • GET /api/article_list -获取文章列表
  • GET /api/article_view -获取特定文章详细信息
  • POST /api/article_save -创建/更新文章
  • POST /api/article_like -喜欢文章

草案管理

  • GET /api/draft_list -获取草稿列表
  • GET /api/draft_detail -获取具体的草稿详细信息

品类管理

  • GET /api/sort_list -获取类别列表

评论管理

  • GET /api/comment_list -获取评论列表
  • POST /api/comment_save -发表评论

微型笔记

  • GET /api/note_list -获取微信列表
  • POST /api/note_save -发布微笔记

文件上传

  • POST /api/upload -上传文件

用户管理

  • GET /api/userinfo -获取用户信息

使用示例

创建博客文章

// Through MCP tool call
{
  "name": "create_article",
  "arguments": {
    "title": "My New Article",
    "content": "This is the article content, supporting HTML and Markdown formats.",
    "sort_id": 1,
    "tag": "technology,programming,MCP",
    "is_private": "n",
    "allow_comment": "y"
  }
}

搜索文章

// Search articles containing keywords
{
  "name": "search_articles",
  "arguments": {
    "keyword": "technology",
    "page": 1,
    "count": 10
  }
}

获取文章列表

// Through MCP resource access
{
  "uri": "emlog://articles"
}

获取草稿列表

// Get draft list
{
  "name": "get_draft_list",
  "arguments": {
    "count": 10
  }
}

获取草稿详细信息

// Get detailed information of specific draft
{
  "name": "get_draft_detail",
  "arguments": {
    "id": 123
  }
}

上传文件

// Upload image file
{
  "name": "upload_file",
  "arguments": {
    "file_path": "/path/to/image.jpg"
  }
}

创建微型笔记

// Publish micro note
{
  "name": "create_note",
  "arguments": {
    "content": "This is a micro note",
    "is_private": false
  }
}

错误处理

该服务包括全面的错误处理机制:

  • 网络错误 -自动重试和超时处理
  • API错误 -返回详细错误信息
  • 身份验证错误 -API密钥验证失败提示
  • 参数错误 -输入参数验证和提示

开发与调试

可用脚本

# Build project
npm run build

# Start service
npm start

# Development mode (auto restart)
npm run dev

# Watch mode (auto compile)
npm run watch

# Run tests
npm test

日志输出

该服务将运行时状态信息输出到stderr进行调试:

Emlog MCP server running on stdio

测试服务

该项目包括一个简单的测试脚本 test-server.js 验证服务是否正常工作:

node test-server.js

安全考虑

  1. API密钥保护 -确保API密钥不泄露,使用环境变量进行存储
  2. HTTPS连接 -建议在生产中使用HTTPS连接到Emlog API
  3. 权限控制 -确保API密钥具有适当的权限范围
  4. 输入验证 -所有用户输入都经过验证和消毒

故障排除

常见问题

  1. 连接失败

- 检查是否 EMLOG_API_URL 是正确的 - 确认Emlog站点可访问

  1. 认证失败

- 验证是否 EMLOG_API_KEY 有效 - 检查API密钥权限

  1. 工具调用失败

- 检查错误消息中的具体原因 - 确认参数格式正确

项目结构

emlog-mcp/
├── src/                    # Source code directory
│   ├── index.ts           # MCP service main entry
│   └── emlog-client.ts    # Emlog API client
├── dist/                  # Compiled output directory
├── docs/                  # Documentation directory
│   └── api_doc.md        # Detailed Emlog API documentation
├── .env.example          # Environment variable example file
├── .gitignore            # Git ignore file configuration
├── claude-desktop-config.json  # Claude Desktop configuration example
├── test-server.js        # Test script
├── package.json          # Project configuration and dependencies
├── tsconfig.json         # TypeScript configuration
└── README.md             # Project documentation

贡献

欢迎提交问题和拉取请求以改进此项目。在提交代码之前,请确保:

  1. 代码通过TypeScript编译检查
  2. 遵循项目代码样式
  3. 添加适当的错误处理
  4. 更新相关文档

许可证

MIT许可证

相关链接

目录标签

目录标签

知识管理JavaScriptClaudeAPI集成博客管理本地部署AI集成内容管理RESTAPITypeScript

支持客户端

Claude DesktopClaude

接入字段

传输方式(transport,传输协议)

未说明

鉴权方式(authType,认证方式)

api-key

部署方式(deploymentType,部署类型)

remote-capable

工具数量(toolCount,工具数)

12

资源数量(resourceCount,资源数)

0

提示词数量(promptCount,提示词数)

0

权限和风险

未说明api-keyremote-capable

接入前请确认传输方式、认证方式和部署位置,并根据实际工具能力限制访问范围。

安装前确认

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

仍需确认:installCommand

来源信息

继续浏览同类 MCP