OpenAlex API代理服务

一个基于Node.js的MCP服务器,使用Express和Axios代理查询OpenAlex API。

  • by hbiaou
  • JavaScript
  • 本地部署
  • 16 星标
  • 更新于
在 GitHub 查看 hbiaou/openalex-mcp

使用说明

OpenAlex MCP服务器

Node.js MCP服务器使用Express和Axios将查询代理到OpenAlex API。

作者 萨马多里·比奥 hbiaou@gmail.com

许可证: MIT许可证

先决条件

  • Node.js(>=14)
  • npm

安装

npm install

配置

创建一个 .env 项目根目录中的文件,内容如下:

PORT=3000
OPENALEX_BASE_URL=https://api.openalex.org
MAILTO=your-email@example.com
NEW_RELIC_LICENSE_KEY=your_new_relic_license_key_here

运行服务器

npm start

服务器正在监听http://localhost:<港口>

API

获取/搜索

查询参数:

  • q:搜索词

例子:

GET http://localhost:3000/search?q=machine%20learning

生产部署

码头工人

提供了一个用于生产部署的Dockerfile。

  • 构建Docker镜像:
    docker build -t openalex-mcp .
    
  • 运行容器:
    docker run -p 3000:3000 -d openalex-mcp
    

环境配置

确保生产环境变量(例如PORT和OPENALEX_BASE_URL)设置正确。对于敏感数据,考虑使用机密管理器。

缩放和监控

  • 缩放比例: 使用Docker Swarm或Kubernetes等容器编排器根据负载水平扩展。
  • 监控: 集成监控解决方案(例如New Relic、Prometheus或Grafana)以跟踪服务器运行状况和性能。

备份程序

为关键数据和配置文件实施自动化备份解决方案。如果适用,定期备份容器卷和数据库。

测试和CI/CD

使用GitHub Actions配置CI管道,以对每个推送和拉取请求运行单元和集成测试。