内容
[](https://mseep.ai/app/sbmagar13-hashnode-mcp-server)
# Hashnode MCP 服务器
用于与 Hashnode API 交互的模型上下文协议(MCP)服务器。该服务器提供用于以编程方式访问和搜索 Hashnode 内容的工具。

## 演示
- 创建文章

- 更新文章

## 功能
- 创建和发布新文章
- 更新现有文章
- 按关键词搜索文章
- 获取文章详情
- 获取用户信息
- 从出版物中获取最新文章
## 安装
1. 克隆仓库:
```bash
git clone https://github.com/sbmagar13/hashnode-mcp-server.git
cd hashnode-mcp-server
```
2. 创建虚拟环境并激活它:
```bash
python -m venv .venv
source .venv/bin/activate # 在 Windows 上,使用:.venv\Scripts\activate
```
3. 安装依赖项:
```bash
pip install -r requirements.txt
```
4. 在根目录中创建 `.env` 文件,并包含您的 Hashnode API 凭证:
```
HASHNODE_PERSONAL_ACCESS_TOKEN=您的个人访问令牌
HASHNODE_API_URL=https://gql.hashnode.com
```
## 使用
### 启动服务器
您有两种运行服务器的选项:
#### 选项 1:手动运行服务器
```bash
python run_server.py
```
或直接使用根文件:
```bash
python mcp_server.py
```
服务器将启动并监听 AI 助手的连接。默认情况下,它在 `localhost:8000` 上使用服务器发送事件(SSE)传输协议运行。
#### 选项 2:让 MCP 集成自动处理
在 Claude Desktop 或 Cline VSCode 扩展中正确配置后,MCP 集成将自动启动和管理服务器进程。
### 关于文件结构的重要说明
在 Claude Desktop 或 Cline VSCode 扩展中配置 MCP 服务器时,您应该直接使用根目录下的 `mcp_server.py` 文件,而不是 `hashnode_mcp` 目录中的文件。`hashnode_mcp` 目录主要用于打包目的。
### 可用工具
服务器提供以下工具:
- `test_api_connection()`:测试与 Hashnode API 的连接
- `create_article(title, body_markdown, tags="", published=False)`:在 Hashnode 上创建和发布新文章
- `update_article(article_id, title=None, body_markdown=None, tags=None, published=None)`:更新 Hashnode 上的现有文章
- `get_latest_articles(hostname, limit=10)`:获取 Hashnode 出版物的最新文章,限 `limit` 篇
- `search_articles(query, page=1)`:在 Hashnode 上搜索文章
- `get_article_details(article_id)`:获取特定文章的详细信息
- `get_user_info(username)`:获取 Hashnode 用户的信息
### 使用 MCP 服务器
启动服务器后,您可以使用支持模型上下文协议(MCP)的 AI 助手(如 Claude)。助手将能够使用服务器提供的工具与 Hashnode API 交互。
这些工具可用于:
- 测试 API 连接
- 创建和发布新文章
- 更新现有文章
- 获取出版物的最新文章
- 搜索文章
- 获取特定文章的详细信息
- 获取用户信息
## 在 Claude Desktop 和 Cline VSCode 扩展中配置 MCP
### Cline VSCode 扩展
1. 导航到 Cline MCP 设置文件:
- Windows: `%APPDATA%\Code\User\globalStorage\saoudrizwan.claude-dev\settings\cline_mcp_settings.json`
- macOS: `~/Library/Application Support/Code/User/globalStorage/saoudrizwan.claude-dev/settings\cline_mcp_settings.json`
- Linux:`遗憾的是,Claude Desktop 目前不支持 Linux` (您可以使用 Cline 扩展代替)
2. 添加您的 Hashnode MCP 服务器配置:
```json
{
"mcpServers": {
"hashnode": {
"command": "/path/to/your/venv/bin/python",
"args": [
"/path/to/your/hashnode-mcp-server/mcp_server.py"
],
"env": {
"HASHNODE_PERSONAL_ACCESS_TOKEN": "您的个人访问令牌"
}
}
}
}
```
### Claude Desktop
1. 导航到配置文件:
- Windows: `%APPDATA%\Claude\claude_desktop_config.json`
- macOS: `~/Library/Application Support/Claude/claude_desktop_config.json`
2. 使用与上述相同的格式添加您的 Hashnode MCP 服务器配置。
### 排查连接问题
如果您遇到连接问题:
- 验证服务器是否正在运行
- 检查配置文件中的路径
- 确保环境变量正确设置
- 检查服务器日志中的错误消息
- 尝试重启 MCP 服务器和 Claude 应用程序
## 环境变量
- `HASHNODE_PERSONAL_ACCESS_TOKEN`:您的 Hashnode 个人访问令牌
- `HASHNODE_API_URL`:Hashnode GraphQL API URL(默认:https://gql.hashnode.com)
## 贡献
欢迎贡献!请随时提交拉取请求。
1. 分叉仓库
2. 创建功能分支(`git checkout -b feature/amazing-feature`)
3. 提交更改(`git commit -m 'Add some amazing feature'`)
4. 推送到分支(`git push origin feature/amazing-feature`)
5. 打开拉取请求
## 许可证
该项目使用 MIT 许可证 - 有关详细信息,请参见 [LICENSE](LICENSE) 文件。
## GitHub 仓库
该项目的源代码可在 GitHub 上找到:
https://github.com/sbmagar13/hashnode-mcp-server
## 技术架构
该项目采用干净的模块化结构组织:
- `mcp_server.py`:可以直接运行的根服务器实现
- `hashnode_mcp/`:包含模块化功能的内核包
- `mcp_server.py`:包版本的服务器实现
- `utils.py`:用于格式化响应和 GraphQL 查询的实用函数
- `run_server.py`:使用包版本运行服务器的入口点
服务器使用 Python 的 `asyncio` 和 `httpx` 库进行高效的 API 通信。GraphQL 查询和变异被定义为常量,使其易于维护和更新。
## 未来增强
计划中的未来开发包括:
- 额外的 Hashnode 功能(评论、系列、新闻通讯)
- 分析集成
- 内容优化
- 多用户支持
- Webhook 支持
## 致谢
- [Hashnode](https://hashnode.com/) 提供了 API
- [模型上下文协议(MCP)](https://github.com/modelcontextprotocol/mcp) 提供了服务器框架
- 该服务器由 [MCP 审查](https://mcpreview.com/mcp-servers/sbmagar13/hashnode-mcp-server) 认证
连接信息
猜你喜欢
MarkItDown
将文件和办公文档转换为Markdown的Python工具。
Whisper 语音识别
OpenAI Whisper MCP Server - 基于本地 Whisper CLI 的离线语音识别与翻译,无需 API Key,支持...
claude-flow
Claude-Flow v2.7.0 是一个企业级AI编排平台。
ai-native-pm-os
产品经理掌握Claude的终极指南。从零开始构建你的AI原生产品经理操作系统 —...
NX_MCP
适用于西门子NX(UG)的MCP服务器 — AI代理通过 47+ 个工具控制NX GUI
sp500-mcp-server
sp500-mcp-server