Skip to main content
Glama
Charlielin-Fan

academic-research-plugin

Academic Research Plugin

本仓库是一个可复用的开源参考实现,用于私有/开发者模式的学术研究插件(Academic Research Plugin)。它通过 stdio MCP 服务器和 Codex 技能提供可追踪的学术检索与证据工作流。

这不是公开的 OpenAI 插件目录(Plugin Directory)部署。开发者必须自行创建 OpenAI Platform 隧道、运行时凭据、ChatGPT 开发者模式 MCP 连接以及本地 .app.json 配置。这些值有意不包含在本仓库中。

V0.1.0 状态

已发布的 V0.1.0 插件功能已冻结。该实现保留了设计文档中的提供商契约、模式、检索与排序规则、证据等级、溯源要求、安全边界、MCP 协议行为以及技能工作流。

经运营方批准的 V0.1.0 修订将 ScholarRead 头对头比较改为可选并推迟执行。发布验证仍为非比较性,涵盖单元、提供商契约、集成、安全、确定性回放、MCP 协议以及技能激活/输出,同时包含独立的正确性、标识符、证据、溯源、降级和安全保障。参见 docs/SPEC_AMENDMENT_V0.1.0.md

Related MCP server: Academic Paper MCP HTTP/SSE Server

插件功能

  • 使用确定性请求与融合规则搜索受支持的学术提供商。

  • 保守地规范化和解析学术标识符,不虚构标识符,也不静默进行模糊合并。

  • 检索有界且受支持的全文,并明确报告证据等级以及不可用/不支持的内容。

  • 遍历引文关系,并保留溯源结果。

  • 通过构建后的服务器 dist/src/server.js 暴露已冻结的 MCP 工具。

  • 激活基于证据的文献综述技能,用于可审计的研究工作流。

仓库内容

官方 OpenAI tunnel-client 的源代码和二进制文件未随仓库提供。当你需要私有 MCP 连接时,请从当前的 OpenAI Platform 隧道设置或官方 openai/tunnel-client 仓库获取。

前提条件

  • Git。

  • 按设计固定的 Node.js 24.19.0 和 npm 11.17.0

  • 一个有权访问 ChatGPT 开发者模式并具备相关 Platform 隧道权限(用于私有测试)的 OpenAI 账户。

  • 仅为你打算使用的提供商准备凭据。确定性测试使用夹具,不需要真实的提供商密钥。

  • 官方 tunnel-client 仅用于私有 ChatGPT/Codex MCP 连接;本地单元或契约测试不需要它。

OpenAI 当前文档指出,Secure MCP Tunnel 可保持 MCP 服务器私有,使用出站连接,并支持开发者模式测试,但不支持公开插件提交。Secure MCP Tunnel

全新克隆安装

从干净的克隆开始:

git clone <your-repository-url>
cd academic-research-plugin
npm ci
cp .env.example .env

在 Windows PowerShell 中,请使用 Copy-Item .env.example .env 而不是 cp。将 .env 保留在本地;它会被 Git 忽略。

环境变量

.env.example 仅包含变量名。只设置你启用的提供商和本地集成所需的值:

变量

用途

OPENALEX_API_KEY

可选的 OpenAlex 凭据。

SEMANTIC_SCHOLAR_API_KEY

可选的 Semantic Scholar 凭据。

CROSSREF_MAILTO

用于 Crossref 请求的可选联系地址。

ZOTERO_ENABLED

仅当设计规定的本地 Zotero API 可用时设置为 true;默认为 false

OPENALEX_MAX_CONTENT_REQUESTS_PER_DAY

有界的 OpenAlex 内容请求限制。

CONTROL_PLANE_API_KEY

Secure MCP Tunnel 运行时凭据。请将其保存在 tunnel-client 使用的官方本地密钥/环境机制中;不要将其添加到 .env、受跟踪文件、shell 历史或聊天中。

该应用不需要通用的公共 HTTP 监听器。MCP 服务器仅支持 stdio,隧道客户端将请求转发到确切的构建产物 dist/src/server.js

构建与测试

设计固定了运行时和依赖版本。在仓库根目录运行适用的检查:

npm run verify:env
npm run verify:contracts
npm run build
npm run test:unit
npm run test:contract
npm run test:security
npm run test:integration
npm run verify:plugin

设计所需的构建产物是:

dist/src/server.js

npm run benchmark 是发布后的可选评估。当它需要推迟的 ScholarRead 比较时,不得将其视为 V0.1.0 发布门禁;不要合成比较结果。

创建私有 Secure MCP Tunnel

  1. OpenAI Platform 隧道设置 中,创建或选择一个隧道,并复制其自身的 tunnel_id

  2. 创建或获取 tunnel-client 所需的运行时 API 密钥。通过官方密钥/环境机制将其作为 CONTROL_PLANE_API_KEY 存储在本地。切勿将其粘贴到 issue、聊天、仓库文件、.env.example.app.json 或会被记录到历史中的命令中。

  3. 构建本仓库并确认 dist/src/server.js 存在。

  4. 按照官方 Secure MCP Tunnel 指南下载/构建当前官方 tunnel-client。不要将二进制文件或源代码复制到本仓库中用于发布。

  5. 配置官方命名的 stdio 配置文件。下面的命令和目标遵循设计要求的路径;仅将占位符替换为你机器上创建的值:

export CONTROL_PLANE_API_KEY="<set-locally-through-your-secret-mechanism>"

tunnel-client init \
  --sample sample_mcp_stdio_local \
  --profile academic-research-local \
  --tunnel-id "<YOUR_TUNNEL_ID>" \
  --mcp-command "node /ABSOLUTE/PATH/TO/academic-research-plugin/dist/src/server.js"

tunnel-client doctor --profile academic-research-local --explain
tunnel-client run --profile academic-research-local

在 Windows PowerShell 中,使用可执行文件的 PowerShell 命令行语法和相同的参数。在创建或测试 ChatGPT 连接时保持该配置文件运行。官方指南记录了本地健康检查端点 /healthz/readyz/metrics/ui;在测试前确认 healthy 和 ready 状态。

对于长期部署,请在适合你主机的服务/监督机制下运行此官方配置文件,并保持相同的仅出站边界。不要用临时的公共监听器替代官方隧道流程。

注册你自己的 ChatGPT 开发者模式连接

OpenAI 开发者模式工作流与 Platform 隧道权限是分开的。当前文档记录的流程是:

  1. 在 ChatGPT 中,打开设置 → 安全与登录,如果你的账户/工作区策略允许,请启用开发者模式

  2. 打开 ChatGPT 插件/开发者模式连接界面,然后选择 + 按钮。

  3. 输入你自己的面向用户的名称和描述。

  4. 连接下,选择隧道,然后选择你可用的隧道或输入你自己的 tunnel_id

  5. 创建连接并查看发现的工具和元数据。

这是私有/开发者模式连接,不是向公共插件目录提交。官方连接指南记录了相同的开发者模式和隧道步骤:连接并测试你的插件

设计的打包契约要求连接工作流返回的技术 ID 以 plugin_asdk_app 开头。请复制你自己的连接/打包工作流显示的确切 ID;切勿自行编造。然后创建被忽略的本地配置文件:

cp .app.json.example .app.json

仅将 plugin_asdk_app_REPLACE_WITH_YOUR_REGISTERED_TECHNICAL_ID 替换为你自己注册的技术 ID。在本地验证它,而不要将其暴露在 Git 中:

node scripts/verify-plugin.mjs --expected-app-id "<YOUR_PLUGIN_ASDK_APP_ID>"

公共克隆在没有 .app.json 的情况下以模板模式通过 npm run verify:plugin。提供 --expected-app-id 需要有真实的本地 .app.json.app.json 文件会被忽略,且必须保留在用户本地。

在私有/开发者模式下使用

在隧道报告 healthy/ready 且 ChatGPT 已发现 MCP 工具后,开始新对话,从工具菜单添加私有连接,并运行具有代表性的学术请求。对照设计检查提供商降级、证据等级、溯源、标识符行为、不支持内容报告以及工具结果。

对于本地 Codex 或其他 stdio MCP 客户端,请使用确切的构建命令:

node /ABSOLUTE/PATH/TO/academic-research-plugin/dist/src/server.js

集成测试覆盖 MCP 初始化和已冻结的工具列表。不要将此 stdio 服务器暴露为可独立访问的公共 HTTP 服务。

公开发布边界

本仓库旨在作为开源 GitHub 参考/模板发布。在 GitHub 上发布它并不会发布 OpenAI 应用、注册公共插件、创建隧道或授予任何其他人访问权限。每位开发者都必须创建并保护自己的 OpenAI 资源,并使用私有/开发者模式。

在发布之前,请运行 docs/PUBLIC_SETUP.md 中描述的仓库密钥和历史检查,审查完整的 diff,并确认没有跟踪任何本地 .app.json.env、隧道材料、生成的构建输出或特定于机器的文件。

参考

A
license - permissive license
Not graded
quality - not tested
B
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

  • A
    license
    A
    quality
    A
    maintenance
    Comprehensive MCP server for academic research workflows, enabling paper searching across multiple sources, manuscript processing with citation placeholders, search caching, and citation export.
    11
    MIT
  • A
    license
    Not graded
    quality
    D
    maintenance
    A MCP server for academic literature retrieval, aggregating multiple data sources like arXiv, Crossref, OpenAlex, PubMed, and Semantic Scholar to provide search, details, citations, trends, and recommendations.
    4
    MIT
  • A
    license
    A
    quality
    A
    maintenance
    A FastMCP server for the scholarly citation landscape that enables LLMs to search, cross-reference, and retrieve prior art across papers, patents, books, and standards via multiple APIs.
    22
    2
    MIT
  • A
    license
    A
    quality
    B
    maintenance
    A unified MCP server for academic paper discovery, citation exploration, and research intelligence workflows over multiple scientific knowledge sources.
    7
    1
    MIT

View all related MCP servers

Related MCP Connectors

  • Multi-engine scholarly research server for search, traversal, full text, and reading lists.

  • Auditable MCP server for PubMed, Europe PMC, ClinicalTrials.gov, and bioRxiv/medRxiv queries

  • Read-only MCP over an agentic SLR workspace with per-claim citation verification

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/Charlielin-Fan/academic-research-plugin'

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