哈希节点MCP服务器
模型上下文协议(MCP)服务器,用于与哈希节点API交互。此服务器提供用于以编程方式访问和搜索Hashnode内容的工具。
演示
- 创建文章
- 更新文章
特性
- 创建和发布新文章
- 更新现有文章
- 按关键字搜索文章
- 正在检索文章详细信息
- 获取用户信息
- 从出版物中获取最新文章
安装
- 克隆存储库:
git clone https://github.com/sbmagar13/hashnode-mcp-server.git
cd hashnode-mcp-server- 创建虚拟环境并激活它:
python -m venv .venv
source .venv/bin/activate # On Windows, use: .venv\Scripts\activate- 安装依赖项:
pip install -r requirements.txt- 创建一个
.env根目录中带有您的Hashnode API凭据的文件:
HASHNODE_PERSONAL_ACCESS_TOKEN=your_personal_access_token
HASHNODE_API_URL=https://gql.hashnode.com用法
启动服务器
您有两个运行服务器的选项:
选项1:手动运行服务器
python run_server.py或者直接使用根文件:
python mcp_server.py服务器将启动并监听来自AI助手的连接。默认情况下,它运行在 localhost:8000 使用服务器发送事件(SSE)传输协议。
选项2:让MCP集成自动处理
在Claude Desktop或Cline VSCode扩展中正确配置后,MCP集成将自动启动并为您管理服务器进程。
关于文件结构的重要说明
在Claude Desktop或Cline VSCode扩展中配置MCP服务器时,您应该使用root 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发布中获取最新文章search_articles(query, page=1):搜索关于Hashnode的文章get_article_details(article_id):获取特定文章的详细信息get_user_info(username):获取有关Hashnode用户的信息
使用MCP服务器
服务器运行后,您可以将其与支持模型上下文协议(MCP)的AI助手(如Claude)一起使用。助手将能够使用服务器提供的工具与Hashnode API进行交互。
这些工具可用于:
- 测试API连接
- 创建和发布新文章
- 更新现有文章
- 从出版物获取最新文章
- 搜索文章
- 获取特定文章的详细信息
- 获取用户信息
在Claude桌面上配置MCP和Cline VSCode扩展
临床VSCode扩展
- 导航到Cline MCP设置文件:
- 窗户: %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: Unfortunately, Claude Desktop is not available for Linux as of now (您可以使用Cline扩展)
- 添加您的Hashnode MCP服务器配置:
{
"mcpServers": {
"hashnode": {
"command": "/path/to/your/venv/bin/python",
"args": [
"/path/to/your/hashnode-mcp-server/mcp_server.py"
],
"env": {
"HASHNODE_PERSONAL_ACCESS_TOKEN": "your-personal-access-token"
}
}
}
}克劳德桌面
- 导航到配置文件:
- 窗户: %APPDATA%\Claude\claude_desktop_config.json - macOS: ~/Library/Application Support/Claude/claude_desktop_config.json
- 使用与上述相同的格式添加您的Hashnode MCP服务器配置。
连接问题疑难解答
如果您遇到连接问题:
- 验证服务器是否正在运行
- 检查配置中的路径
- 确保您的环境变量设置正确
- 检查服务器日志中是否有任何错误消息
- 尝试重新启动MCP服务器和Claude应用程序
环境变量
HASHNODE_PERSONAL_ACCESS_TOKEN:您的Hashnode个人访问令牌HASHNODE_API_URL:Hashnode GraphQL API URL(默认值:https://gql.hashnode.com)
贡献
欢迎投稿!请随时提交拉取请求。
- 分叉存储库
- 创建功能分支(
git checkout -b feature/amazing-feature) - 提交您的更改(
git commit -m 'Add some amazing feature') - 推到分支(
git push origin feature/amazing-feature) - 打开拉取请求
许可证
此项目根据MIT许可证获得许可-请参阅 许可证 文件以获取详细信息。
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支持
致谢
- 哈希节点 用于提供API
- 模型上下文协议(MCP) 对于服务器框架
- 这是由以下机构认证的 MCP审查
