@luffysolution/omnischolar-pi 0.2.0 → 0.3.0
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/README.en.md +1 -1
- package/README.md +1 -1
- package/README.zh-CN.md +4 -2
- package/docs/INSTALLATION.en.md +1 -1
- package/docs/INSTALLATION.md +1 -1
- package/docs/RESEARCH.en.md +8 -0
- package/docs/RESEARCH.md +8 -0
- package/docs/TOOLS.en.md +3 -0
- package/docs/TOOLS.md +3 -0
- package/host-configs/README.md +1 -1
- package/host-configs/hermes.yaml +1 -1
- package/host-configs/opencode.jsonc +1 -1
- package/host-configs/workbuddy.json +1 -1
- package/package.json +1 -1
- package/pi-extension/dist/index.js +1 -1
- package/skills/academic-citation/SKILL.md +0 -1
- package/skills/chemical-data/SKILL.md +0 -1
- package/skills/literature-reading/SKILL.md +7 -6
- package/skills/literature-retrieval/SKILL.md +34 -0
- package/skills/materials-project/SKILL.md +0 -1
- package/skills/omnischolar/SKILL.md +1 -0
- package/skills/paper-reading/SKILL.md +0 -1
- package/skills/zotero-research/SKILL.md +0 -1
package/README.en.md
CHANGED
|
@@ -20,7 +20,7 @@ It can search public indexes, combine online records with your Zotero notes, sen
|
|
|
20
20
|
- Generate or edit scientific illustrations with configured image services
|
|
21
21
|
- Preserve local Markdown edits and place incoming conflict versions in `.conflicts/`
|
|
22
22
|
|
|
23
|
-
OmniScholar exposes
|
|
23
|
+
OmniScholar exposes 43 tools. See the [tool list](docs/TOOLS.en.md).
|
|
24
24
|
|
|
25
25
|
<details>
|
|
26
26
|
<summary>Install and connect an agent</summary>
|
package/README.md
CHANGED
|
@@ -25,7 +25,7 @@ OmniScholar 通过本地 Python MCP 服务,为 Codex、Claude Code、Cursor、
|
|
|
25
25
|
- 调用已配置的图片服务生成或编辑科研示意图
|
|
26
26
|
- 保留手工修改过的 Markdown,把待合并版本放入 `.conflicts/`
|
|
27
27
|
|
|
28
|
-
OmniScholar 共提供
|
|
28
|
+
OmniScholar 共提供 43 个工具,完整列表见[工具目录](docs/TOOLS.md)。
|
|
29
29
|
|
|
30
30
|
<details>
|
|
31
31
|
<summary>安装与部署</summary>
|
package/README.zh-CN.md
CHANGED
|
@@ -18,7 +18,7 @@ OmniScholar 通过本地 Python MCP 服务,为 Codex、Claude Code、Cursor、
|
|
|
18
18
|
- 调用已配置的图片服务生成或编辑科研示意图
|
|
19
19
|
- 保留手工修改过的 Markdown,把待合并版本放入 `.conflicts/`
|
|
20
20
|
|
|
21
|
-
OmniScholar 共提供
|
|
21
|
+
OmniScholar 共提供 43 个工具,完整列表见[工具目录](docs/TOOLS.md)。
|
|
22
22
|
|
|
23
23
|
## 安装
|
|
24
24
|
|
|
@@ -67,7 +67,7 @@ codex plugin add omnischolar@omnischolar
|
|
|
67
67
|
|
|
68
68
|
在 ChatGPT 桌面应用中重启应用,打开 **Plugins**,选择 **OmniScholar** Marketplace,然后安装或启用 **OmniScholar**。在 Codex CLI 中可运行 `/plugins` 浏览同一 Marketplace。
|
|
69
69
|
|
|
70
|
-
插件会同时安装
|
|
70
|
+
插件会同时安装 10 个 Skills,并从 PyPI 最新版本启动本地 MCP:
|
|
71
71
|
|
|
72
72
|
```sh
|
|
73
73
|
uvx --from luffysolution-omnischolar@latest omnischolar mcp
|
|
@@ -197,6 +197,8 @@ OpenAlex、PubMed、arXiv 和 Crossref 无需 API key。其他服务按需启用
|
|
|
197
197
|
| `scholar-search` | 文献、专利、作者、引用网络、期刊和数据集 |
|
|
198
198
|
| `zotero-research` | 本地 Zotero 匹配、笔记、批注和附件 |
|
|
199
199
|
| `paper-reading` | MinerU 解析,以及正文、公式、表格和图片精读 |
|
|
200
|
+
| `literature-reading` | 全文、图表、公式、段落、比较和综述解读 |
|
|
201
|
+
| `literature-retrieval` | 聚焦检索、段落定位和有界阅读上下文 |
|
|
200
202
|
| `academic-citation` | 证据核对、引用候选、格式化和参考文献 |
|
|
201
203
|
| `scientific-figure` | 科研图片生成、编辑、检查和标注 |
|
|
202
204
|
| `materials-project` | 材料筛选、性质、计算来源、相数据和导出 |
|
package/docs/INSTALLATION.en.md
CHANGED
|
@@ -112,7 +112,7 @@ claude plugin install omnischolar@omnischolar --scope user
|
|
|
112
112
|
|
|
113
113
|
Choose `--scope project` to share the enabled plugin through repository settings, or `--scope local` to enable it only for yourself in the current repository. If Claude reports `Run /reload-plugins to activate`, run that command before using the plugin.
|
|
114
114
|
|
|
115
|
-
Claude Code copies the repository-root plugin into its versioned cache, discovers the
|
|
115
|
+
Claude Code copies the repository-root plugin into its versioned cache, discovers the ten folders under `skills/`, and starts `.mcp.json` automatically when the plugin is enabled. The MCP command uses the latest PyPI package:
|
|
116
116
|
|
|
117
117
|
```sh
|
|
118
118
|
uvx --refresh-package luffysolution-omnischolar --from luffysolution-omnischolar@latest omnischolar mcp
|
package/docs/INSTALLATION.md
CHANGED
|
@@ -112,7 +112,7 @@ claude plugin install omnischolar@omnischolar --scope user
|
|
|
112
112
|
|
|
113
113
|
使用 `--scope project` 可通过仓库设置与协作者共享启用状态;使用 `--scope local` 则只在当前仓库为自己启用。如果 Claude 提示 `Run /reload-plugins to activate`,请先运行该命令。
|
|
114
114
|
|
|
115
|
-
Claude Code 会把仓库根插件复制到版本化缓存,发现 `skills/` 下的
|
|
115
|
+
Claude Code 会把仓库根插件复制到版本化缓存,发现 `skills/` 下的 10 个 Skills,并在插件启用时自动启动 `.mcp.json`。MCP 命令使用 PyPI 最新包:
|
|
116
116
|
|
|
117
117
|
```sh
|
|
118
118
|
uvx --refresh-package luffysolution-omnischolar --from luffysolution-omnischolar@latest omnischolar mcp
|
package/docs/RESEARCH.en.md
CHANGED
|
@@ -48,6 +48,14 @@ The combined view can include metadata, notes, annotations, attachment details,
|
|
|
48
48
|
|
|
49
49
|
`zotero_item` defaults to metadata-only output; request `mode=aggregate` when notes, annotations, attachments, indexed text, or PDF selection are needed. After parsing, use `omnischolar_read` for cursor-based full-text reading or bounded figure, formula, paragraph, comparison, and review evidence. The complete Markdown remains in the output directory and is not returned to the agent by default.
|
|
50
50
|
|
|
51
|
+
### Focused retrieval and reading contexts
|
|
52
|
+
|
|
53
|
+
Use `omnischolar_focus` over parsed local publications for bounded BM25 + TF-IDF vector evidence retrieval. It returns matching paragraphs, headings, character ranges, and `paper.md#Lx-Ly` line locators rather than a complete Markdown document. Restrict it with `keys`, `section`, `topK`, and `maxPerDocument`. The local backend explicitly reports `strategy=hybrid-bm25-tfidf`, `vectorBackend=tfidf-local`, and `semantic=false`, so term-vector similarity is not presented as dense semantic embedding retrieval.
|
|
54
|
+
|
|
55
|
+
Use `omnischolar_locate` for exact paragraph location in one paper, with phrase or all-term matching and Zotero key, title, section, and stable anchors. Use `omnischolar_read` with `mode=figures` for image paths, table Markdown, captions, and bounded figure/table context. The agent must still distinguish visual observation, caption text, author claims, and interpretation.
|
|
56
|
+
|
|
57
|
+
For multi-turn reading, call `omnischolar_context` with `open`, then pass its `contextId` to `omnischolar_focus`, `omnischolar_locate`, or `omnischolar_read`. The cache stores selected evidence only; `get` is paginated and bounded, so it does not automatically re-inject a complete paper into the agent. `compare` and `review` can add per-paper evidence to the same context.
|
|
58
|
+
|
|
51
59
|
Notes and annotations are personal reading context, not evidence from the publication. Check the paper itself before citing a claim.
|
|
52
60
|
|
|
53
61
|
## MinerU parsing
|
package/docs/RESEARCH.md
CHANGED
|
@@ -48,6 +48,14 @@ http://127.0.0.1:23119/api
|
|
|
48
48
|
|
|
49
49
|
`zotero_item` 默认返回元数据;需要笔记、批注或 PDF 选择时再显式使用 `mode=aggregate`。已解析文献使用 `omnischolar_read` 按全文游标、图表、公式、段落、对比或综述模式分段读取,完整 Markdown 仍保存在输出目录,不会默认一次返回给 Agent。
|
|
50
50
|
|
|
51
|
+
### 聚焦检索与阅读上下文
|
|
52
|
+
|
|
53
|
+
已解析的本地文献可以用 `omnischolar_focus` 做有界的 BM25 + TF-IDF 向量混合证据检索。它返回匹配段落、章节、字符范围和 `paper.md#Lx-Ly` 行定位,不返回整篇 Markdown;可用 `keys`、`section`、`topK` 和 `maxPerDocument` 限定范围。当前本地后端会明确返回 `strategy=hybrid-bm25-tfidf`、`vectorBackend=tfidf-local` 和 `semantic=false`,因此不会把词项向量相似度误称为真正的语义 embedding 检索。
|
|
54
|
+
|
|
55
|
+
需要单篇精确定位时使用 `omnischolar_locate`,按短语或全部词项匹配段落,并保留 Zotero key、标题、章节和定位锚点。图表读取使用 `omnischolar_read` 的 `figures` 模式,返回图片路径、表格 Markdown、标题以及受限的图表上下文;Agent 仍需区分图像观察、图注、作者结论和自己的解释。
|
|
56
|
+
|
|
57
|
+
多轮阅读可以先用 `omnischolar_context` 的 `open` 创建上下文,再把 `contextId` 传给 `omnischolar_focus`、`omnischolar_locate` 或 `omnischolar_read`。缓存只保存选中的证据片段,`get` 仍然分页并受字符上限约束,不会自动把整篇论文再次注入 Agent。`compare` 和 `review` 模式也可以把每篇文献的有界证据加入同一个上下文。
|
|
58
|
+
|
|
51
59
|
Zotero 笔记和批注属于个人阅读记录,不应当作论文原文证据。需要引用论文结论时,仍要核对原文。
|
|
52
60
|
|
|
53
61
|
## MinerU 解析
|
package/docs/TOOLS.en.md
CHANGED
|
@@ -19,6 +19,9 @@ Tool and capability names match the values returned to agents.
|
|
|
19
19
|
| `zotero_search` | zotero | `zotero.search` | none | yes | none | free |
|
|
20
20
|
| `zotero_item` | zotero | `zotero.item`, `zotero.aggregate` | none | yes | none | free |
|
|
21
21
|
| `omnischolar_read` | literature | `literature.read`, `literature.fulltext`, `literature.figures`, `literature.formulas` | none | no | none | free |
|
|
22
|
+
| `omnischolar_focus` | literature | `literature.focus`, `literature.retrieval`, `literature.evidence` | none | no | none | free |
|
|
23
|
+
| `omnischolar_locate` | literature | `literature.locate`, `literature.paragraphs`, `literature.evidence` | none | no | none | free |
|
|
24
|
+
| `omnischolar_context` | literature | `literature.context.open`, `literature.context.append`, `literature.context.read` | filesystem | no | none | free |
|
|
22
25
|
| `omnischolar_parse` | parsing | `pdf.parse`, `sync.publish` | external-upload | yes | mineru | metered |
|
|
23
26
|
| `omnischolar_sync` | parsing | `sync.plan`, `sync.apply`, `sync.recovery` | filesystem | yes | none | free |
|
|
24
27
|
| `ai4scholar_search` | ai4scholar | `ai4scholar.search` | paid | yes | ai4scholar | paid |
|
package/docs/TOOLS.md
CHANGED
|
@@ -19,6 +19,9 @@
|
|
|
19
19
|
| `zotero_search` | zotero | `zotero.search` | none | yes | none | free |
|
|
20
20
|
| `zotero_item` | zotero | `zotero.item`, `zotero.aggregate` | none | yes | none | free |
|
|
21
21
|
| `omnischolar_read` | literature | `literature.read`, `literature.fulltext`, `literature.figures`, `literature.formulas` | none | no | none | free |
|
|
22
|
+
| `omnischolar_focus` | literature | `literature.focus`, `literature.retrieval`, `literature.evidence` | none | no | none | free |
|
|
23
|
+
| `omnischolar_locate` | literature | `literature.locate`, `literature.paragraphs`, `literature.evidence` | none | no | none | free |
|
|
24
|
+
| `omnischolar_context` | literature | `literature.context.open`, `literature.context.append`, `literature.context.read` | filesystem | no | none | free |
|
|
22
25
|
| `omnischolar_parse` | parsing | `pdf.parse`, `sync.publish` | external-upload | yes | mineru | metered |
|
|
23
26
|
| `omnischolar_sync` | parsing | `sync.plan`, `sync.apply`, `sync.recovery` | filesystem | yes | none | free |
|
|
24
27
|
| `ai4scholar_search` | ai4scholar | `ai4scholar.search` | paid | yes | ai4scholar | paid |
|
package/host-configs/README.md
CHANGED
|
@@ -8,4 +8,4 @@
|
|
|
8
8
|
- Pi: see `pi.md`; the npm Extension bridges the local MCP server
|
|
9
9
|
- WorkBuddy/CodeBuddy: merge `workbuddy.json` into `~/.codebuddy/.mcp.json` or project `.mcp.json`
|
|
10
10
|
|
|
11
|
-
All supported MCP entries start the latest PyPI package with `uvx --from luffysolution-omnischolar@latest omnischolar mcp`. These files contain no provider credentials.
|
|
11
|
+
All supported MCP entries start the latest PyPI package with `uvx --refresh-package luffysolution-omnischolar --from luffysolution-omnischolar@latest omnischolar mcp`. These files contain no provider credentials.
|
package/host-configs/hermes.yaml
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
mcp_servers:
|
|
2
2
|
omnischolar:
|
|
3
3
|
command: "uvx"
|
|
4
|
-
args: ["--from", "luffysolution-omnischolar@latest", "omnischolar", "mcp"]
|
|
4
|
+
args: ["--refresh-package", "luffysolution-omnischolar", "--from", "luffysolution-omnischolar@latest", "omnischolar", "mcp"]
|
|
5
5
|
# Optional: restrict exposure with tools.include or tools.exclude.
|
|
6
6
|
# Inherit OMNISCHOLAR_* and provider environment variables from Hermes.
|
|
@@ -3,7 +3,7 @@
|
|
|
3
3
|
"mcp": {
|
|
4
4
|
"omnischolar": {
|
|
5
5
|
"type": "local",
|
|
6
|
-
"command": ["uvx", "--from", "luffysolution-omnischolar@latest", "omnischolar", "mcp"],
|
|
6
|
+
"command": ["uvx", "--refresh-package", "luffysolution-omnischolar", "--from", "luffysolution-omnischolar@latest", "omnischolar", "mcp"],
|
|
7
7
|
"enabled": true,
|
|
8
8
|
"timeout": 10000
|
|
9
9
|
}
|
|
@@ -3,7 +3,7 @@
|
|
|
3
3
|
"omnischolar": {
|
|
4
4
|
"type": "stdio",
|
|
5
5
|
"command": "uvx",
|
|
6
|
-
"args": ["--from", "luffysolution-omnischolar@latest", "omnischolar", "mcp"],
|
|
6
|
+
"args": ["--refresh-package", "luffysolution-omnischolar", "--from", "luffysolution-omnischolar@latest", "omnischolar", "mcp"],
|
|
7
7
|
"description": "OmniScholar research tools"
|
|
8
8
|
}
|
|
9
9
|
}
|
package/package.json
CHANGED
|
@@ -1,7 +1,7 @@
|
|
|
1
1
|
import { Client } from "@modelcontextprotocol/sdk/client/index.js";
|
|
2
2
|
import { StdioClientTransport } from "@modelcontextprotocol/sdk/client/stdio.js";
|
|
3
3
|
import { Type } from "typebox";
|
|
4
|
-
const CLIENT_INFO = { name: "omnischolar-pi", version: "0.
|
|
4
|
+
const CLIENT_INFO = { name: "omnischolar-pi", version: "0.3.0" };
|
|
5
5
|
export function resultText(result) {
|
|
6
6
|
return result.content
|
|
7
7
|
.map((item) => {
|
|
@@ -2,7 +2,6 @@
|
|
|
2
2
|
name: academic-citation
|
|
3
3
|
description: Verify, format, and insert scholarly citations with OmniScholar. Use for APA, IEEE, GB/T 7714 and other styles, citation-network evidence, bibliography generation, candidate discovery, or verified citation insertion.
|
|
4
4
|
license: MIT
|
|
5
|
-
compatibility: Requires OmniScholar. Online verification needs an enabled literature provider; Ai4Scholar formatting and candidate operations require configured credentials.
|
|
6
5
|
---
|
|
7
6
|
|
|
8
7
|
# Academic citation
|
|
@@ -2,7 +2,6 @@
|
|
|
2
2
|
name: chemical-data
|
|
3
3
|
description: Inspect CAS Common Chemistry contract status and query substance records only when a provider-issued API contract is configured. Use for chemical names, CAS Registry Numbers, structures, and basic compound information; not literature, reaction, or materials-property discovery.
|
|
4
4
|
license: MIT
|
|
5
|
-
compatibility: Requires OmniScholar. CAS search and detail remain contract-blocked unless the user supplies an authorized provider-issued endpoint/request/response contract.
|
|
6
5
|
---
|
|
7
6
|
|
|
8
7
|
# Chemical substance data
|
|
@@ -10,11 +10,11 @@ Follow the user's language. Keep the original paper and generated Markdown on di
|
|
|
10
10
|
|
|
11
11
|
## Select a mode
|
|
12
12
|
|
|
13
|
-
- `full`: read the entire paper progressively with `omnischolar_read`, following `nextCursor` until `hasMore` is false. Summarize each section before moving on.
|
|
14
|
-
- `figures`: retrieve figure/table asset paths, captions, and section context. Inspect the referenced local assets when the host supports image input; distinguish visual observations from captions and author claims.
|
|
13
|
+
- `full`: use `omnischolar_focus` first to identify relevant sections, then read the entire paper progressively with `omnischolar_read`, following `nextCursor` until `hasMore` is false. Summarize each section before moving on.
|
|
14
|
+
- `figures`: retrieve figure/table asset paths, captions, bounded analysis context, and section context. Inspect the referenced local assets when the host supports image input; distinguish visual observations from captions and author claims.
|
|
15
15
|
- `formulas`: retrieve bounded displayed formulas with their section headings. Explain symbols and assumptions only when supported by nearby text.
|
|
16
|
-
- `paragraphs`: use `query` and optionally `section`
|
|
17
|
-
- `compare`: pass multiple Zotero keys and retrieve compact, comparable metadata, abstracts, headings, and requested evidence.
|
|
16
|
+
- `paragraphs`: use `omnischolar_locate` for stable line/character anchors, or `query` and optionally `section` with `omnischolar_read` for bounded matching paragraphs.
|
|
17
|
+
- `compare`: pass multiple Zotero keys and retrieve compact, comparable metadata, abstracts, headings, and requested evidence. Add `contextId` when later questions should reuse only the selected evidence.
|
|
18
18
|
- `review`: pass multiple Zotero keys and build a literature-review evidence matrix. Preserve differences in methods, population/materials, outcomes, limitations, and confidence; do not merge claims merely because titles are similar.
|
|
19
19
|
|
|
20
20
|
## Workflow
|
|
@@ -23,8 +23,9 @@ Follow the user's language. Keep the original paper and generated Markdown on di
|
|
|
23
23
|
2. Use `zotero_item` with `mode=item` for metadata and `mode=aggregate` only when notes, annotations, or attachment selection are needed.
|
|
24
24
|
3. Confirm the selected PDF and run `omnischolar_sync` with `action=plan` before parsing.
|
|
25
25
|
4. Parse only when structured content is necessary and external upload is authorized. `omnischolar_parse` returns a local publication path and parse metadata, not the full Markdown body.
|
|
26
|
-
5. Use `omnischolar_read` for bounded
|
|
27
|
-
6.
|
|
26
|
+
5. Use `omnischolar_focus` for cross-paper evidence retrieval, `omnischolar_locate` for exact paragraph anchors, and `omnischolar_read` for bounded mode-specific reading. Record Zotero key, Markdown path, heading, figure/table/formula identifier, line locator, and cursor where relevant.
|
|
27
|
+
6. Open an `omnischolar_context` for multi-turn work and append only selected evidence. Context reads are paginated; they are not a substitute for the original paper.
|
|
28
|
+
7. State OCR, layout, formula, table, and missing-text limitations. Never treat Zotero notes or annotations as independent evidence without labeling them.
|
|
28
29
|
|
|
29
30
|
Full-text mode is intentionally paginated. Never bypass pagination by requesting an oversized result. If a retrieved excerpt is truncated, continue with its cursor rather than guessing the missing text.
|
|
30
31
|
|
|
@@ -0,0 +1,34 @@
|
|
|
1
|
+
---
|
|
2
|
+
name: literature-retrieval
|
|
3
|
+
description: Find focused evidence in parsed local papers, locate paragraphs, compare selected papers, and maintain a bounded reading context without loading whole documents.
|
|
4
|
+
license: MIT
|
|
5
|
+
---
|
|
6
|
+
|
|
7
|
+
# Focused literature retrieval
|
|
8
|
+
|
|
9
|
+
Use this workflow when the task is to find where a paper discusses a concept, method, result, limitation, or comparison dimension. Retrieval is evidence selection; it is not itself a scientific conclusion.
|
|
10
|
+
|
|
11
|
+
## Workflow
|
|
12
|
+
|
|
13
|
+
1. Match the Zotero parent by DOI first, then normalized title/year/author. If the match or PDF attachment is ambiguous, stop and report the choices.
|
|
14
|
+
2. Use `zotero_item` with `mode=item` for identity. Use `mode=aggregate` only when attachment selection or annotations are needed.
|
|
15
|
+
3. Confirm local parsed output with `omnischolar_sync` and `action=plan`. Parse only when structured content is needed and an external upload is authorized.
|
|
16
|
+
4. Call `omnischolar_focus` with a short research concept, optional `keys`, `section`, `topK`, and `includeContext`. Treat returned `excerpt`, heading, paragraph ID, and line locator as the evidence packet.
|
|
17
|
+
5. Call `omnischolar_locate` when the user needs exact paragraphs in one paper. Prefer `matchMode=phrase` for a quoted phrase and `allTerms` for a concept.
|
|
18
|
+
6. Use `omnischolar_context` with `action=open` before a long multi-turn task. Pass its `contextId` to focus, locate, and `omnischolar_read`; retrieve the cache later with a bounded `get` call.
|
|
19
|
+
7. For several papers, use `omnischolar_read` with `mode=compare` or `mode=review`, pass `contextId` when continuity is needed, and preserve per-paper provenance.
|
|
20
|
+
|
|
21
|
+
## Retrieval policy
|
|
22
|
+
|
|
23
|
+
- The current local retriever uses bounded BM25-style lexical retrieval plus a transparent TF-IDF vector score. It does not claim dense semantic embedding support; `semantic` remains `false` until a real embedding backend is configured.
|
|
24
|
+
- Exact identifiers, formulas, material names, gene/protein names, numbers, and quoted phrases should be verified with `omnischolar_locate` or a section read even when focused search returns a hit.
|
|
25
|
+
- `markdownPath` is a local provenance field. Do not expose unrelated local files, credentials, or Zotero private data.
|
|
26
|
+
- A cache stores selected excerpts only. Never add an entire paper or an unbounded tool response to a context.
|
|
27
|
+
- Distinguish extracted text, caption/table content, visual observations, author claims, interpretation, and uncertainty in the final answer.
|
|
28
|
+
|
|
29
|
+
## Handoff to reading modes
|
|
30
|
+
|
|
31
|
+
- `full`: follow `nextCursor` with `omnischolar_read`; never request an oversized page.
|
|
32
|
+
- `figures`: use `omnischolar_read` with `mode=figures`; inspect the referenced asset when the host supports images, then separate caption, visual observation, and claim.
|
|
33
|
+
- `formulas`: use `mode=formulas` and explain symbols only with nearby evidence.
|
|
34
|
+
- `compare`/`review`: use bounded per-paper evidence and an evidence matrix; do not merge similar claims without checking methods and populations/materials.
|
|
@@ -2,7 +2,6 @@
|
|
|
2
2
|
name: materials-project
|
|
3
3
|
description: Query Materials Project records, inspect structures and phase data, and export sourced results with OmniScholar. Use for materials screening, property retrieval, phase analysis, XRD capability checks, or JSON/CSV/Markdown/CIF export.
|
|
4
4
|
license: MIT
|
|
5
|
-
compatibility: Requires OmniScholar and a Materials Project API key. Simulated XRD additionally requires the optional local backend reported by the runtime.
|
|
6
5
|
---
|
|
7
6
|
|
|
8
7
|
# Materials Project
|
|
@@ -13,6 +13,7 @@ Choose the smallest workflow that answers the request. Follow the user's languag
|
|
|
13
13
|
- Literature, patents, authors, citation graphs, recommendations, journals, snippets, or datasets: follow `scholar-search`.
|
|
14
14
|
- Local collections, metadata, notes, annotations, attachments, or PDF selection: follow `zotero-research`.
|
|
15
15
|
- Structured PDF text, equations, tables, figures, or close reading: follow `paper-reading`.
|
|
16
|
+
- Focused retrieval, paragraph location, evidence caching, or retrieval-first paper work: follow `literature-retrieval`.
|
|
16
17
|
- Interpreting parsed papers, full-text reading, figure/formula analysis, comparisons, or literature reviews: follow `literature-reading`.
|
|
17
18
|
- Citation evidence, candidates, formatting, or insertion: follow `academic-citation`.
|
|
18
19
|
- Generated or edited illustrations: follow `scientific-figure`.
|
|
@@ -2,7 +2,6 @@
|
|
|
2
2
|
name: paper-reading
|
|
3
3
|
description: Parse and analyze a selected local PDF with OmniScholar and MinerU. Use when the task needs structured full text, equations, tables, figures, captions, or close reading beyond metadata and Zotero notes.
|
|
4
4
|
license: MIT
|
|
5
|
-
compatibility: Requires OmniScholar; Zotero-based reading needs local Zotero, and external parsing needs configured MinerU access.
|
|
6
5
|
---
|
|
7
6
|
|
|
8
7
|
# PDF parsing and close reading
|
|
@@ -2,7 +2,6 @@
|
|
|
2
2
|
name: zotero-research
|
|
3
3
|
description: Search and inspect the user's local Zotero library with OmniScholar. Use for collections, bibliographic metadata, notes, annotations, attachments, indexed text, local-paper matching, or selecting a PDF without modifying Zotero.
|
|
4
4
|
license: MIT
|
|
5
|
-
compatibility: Requires OmniScholar and a running Zotero desktop instance with local application access enabled.
|
|
6
5
|
---
|
|
7
6
|
|
|
8
7
|
# Read-only Zotero research
|