@luffysolution/omnischolar-pi 0.1.1 → 0.1.2

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/docs/MATERIALS.md CHANGED
@@ -1,45 +1,45 @@
1
- # 材料与化学数据
2
-
3
- [English](MATERIALS.en.md)
4
-
5
- ## Materials Project
6
-
7
- Materials Project 使用以下工具:
8
-
9
- | 工具 | 用途 |
10
- |---|---|
11
- | `materials_capabilities` | 查看当前支持的数据类型、字段和筛选条件,不联网 |
12
- | `materials_search` | 按化学式、元素、化学体系、稳定性等条件筛选材料概览 |
13
- | `materials_route_search` | 查询 thermo 等专用数据集合 |
14
- | `materials_get` | 按材料 ID 和指定数据类型获取单条记录 |
15
- | `materials_advanced` | 获取相图数据;配置本地后端后可计算 XRD |
16
- | `materials_export` | 将已有结果保存为 JSON、CSV、Markdown 或 CIF |
17
-
18
- 配置示例:
19
-
20
- ```json
21
- {
22
- "schemaVersion": 1,
23
- "data": {
24
- "materialsProject": {
25
- "enabled": true,
26
- "apiKeyEnv": "OMNISCHOLAR_MATERIALS_PROJECT_API_KEY",
27
- "maxPages": 5
28
- }
29
- }
30
- }
31
- ```
32
-
33
- 查询时要分清化学式、元素集合、化学体系、material ID 和 task ID。不同数据集合支持的筛选字段并不相同,可先调用 `materials_capabilities`。
34
-
35
- CIF 导出只使用返回记录中的晶格和位点数据,并检查数值、占位率和坐标。导出的 P1 结构用于数据交换,不代表已经完成对称性分析。数据库计算得到的稳定性也不等同于实验可合成性。
36
-
37
- XRD 需要额外的本地计算后端。未安装时,`materials_advanced` 会返回 `local_backend_required`,不会生成一条看似真实的衍射曲线。
38
-
39
- ## CAS Common Chemistry
40
-
41
- 当前版本只有在配置中提供服务商正式给出的接口地址和请求/响应说明文件后,才会启用 CAS 查询。仅有 API key 或网页登录权限不够。
42
-
43
- 未提供这些信息时,`chemical_sources` 会显示 `contract_blocked`,`chemical_search` 和 `chemical_get` 不会猜测接口地址。
44
-
45
- CAS 数据仍受 CAS 的许可条款约束,其中可能包含非商业使用限制。
1
+ # 材料与化学数据
2
+
3
+ [English](MATERIALS.en.md)
4
+
5
+ ## Materials Project
6
+
7
+ Materials Project 使用以下工具:
8
+
9
+ | 工具 | 用途 |
10
+ |---|---|
11
+ | `materials_capabilities` | 查看当前支持的数据类型、字段和筛选条件,不联网 |
12
+ | `materials_search` | 按化学式、元素、化学体系、稳定性等条件筛选材料概览 |
13
+ | `materials_route_search` | 查询 thermo 等专用数据集合 |
14
+ | `materials_get` | 按材料 ID 和指定数据类型获取单条记录 |
15
+ | `materials_advanced` | 获取相图数据;配置本地后端后可计算 XRD |
16
+ | `materials_export` | 将已有结果保存为 JSON、CSV、Markdown 或 CIF |
17
+
18
+ 配置示例:
19
+
20
+ ```json
21
+ {
22
+ "schemaVersion": 1,
23
+ "data": {
24
+ "materialsProject": {
25
+ "enabled": true,
26
+ "apiKeyEnv": "OMNISCHOLAR_MATERIALS_PROJECT_API_KEY",
27
+ "maxPages": 5
28
+ }
29
+ }
30
+ }
31
+ ```
32
+
33
+ 查询时要分清化学式、元素集合、化学体系、material ID 和 task ID。不同数据集合支持的筛选字段并不相同,可先调用 `materials_capabilities`。
34
+
35
+ CIF 导出只使用返回记录中的晶格和位点数据,并检查数值、占位率和坐标。导出的 P1 结构用于数据交换,不代表已经完成对称性分析。数据库计算得到的稳定性也不等同于实验可合成性。
36
+
37
+ XRD 需要额外的本地计算后端。未安装时,`materials_advanced` 会返回 `local_backend_required`,不会生成一条看似真实的衍射曲线。
38
+
39
+ ## CAS Common Chemistry
40
+
41
+ 当前版本只有在配置中提供服务商正式给出的接口地址和请求/响应说明文件后,才会启用 CAS 查询。仅有 API key 或网页登录权限不够。
42
+
43
+ 未提供这些信息时,`chemical_sources` 会显示 `contract_blocked`,`chemical_search` 和 `chemical_get` 不会猜测接口地址。
44
+
45
+ CAS 数据仍受 CAS 的许可条款约束,其中可能包含非商业使用限制。
@@ -1,83 +1,83 @@
1
- # Literature, Zotero, and PDFs
2
-
3
- [简体中文](RESEARCH.md)
4
-
5
- ## Literature search
6
-
7
- | Tool | Use |
8
- |---|---|
9
- | `research_sources` | Show enabled sources and available operations |
10
- | `literature_search` | Search papers by year, type, or open-access status |
11
- | `literature_get` | Retrieve details by DOI, PMID/PMCID, arXiv ID, or source ID |
12
- | `literature_graph` | Find references, citations, or recommendations |
13
- | `journal_metrics` | Retrieve supported journal metrics |
14
- | `literature_fulltext` | Find lawful full-text locations or save an accessible file under the output directory |
15
-
16
- The sources serve different purposes:
17
-
18
- - Semantic Scholar and OpenAlex cover broad literature and citation relationships.
19
- - PubMed/PMC focuses on biomedical records; PMC also supplies licensed open full text.
20
- - arXiv preserves preprint identifiers and versions.
21
- - Crossref is useful for checking DOI registration metadata.
22
- - Unpaywall finds open-access copies without bypassing subscriptions or access controls.
23
- - easyScholar supplies journal metrics supported by its current interface.
24
- - Ai4Scholar also covers Google Scholar, Google Patents, authors, datasets, and journals. Some calls use account credit.
25
-
26
- Start with a small `limit`. Deduplicate by DOI when possible; otherwise compare normalized title, year, and first author. Title similarity can shortlist a paper but cannot establish that it supports a claim.
27
-
28
- On HTTP 429, OmniScholar returns a rate-limit result. Wait for the provider's backoff period or choose another source that supports the same operation. Do not submit the same request in a tight loop.
29
-
30
- ## Zotero
31
-
32
- OmniScholar connects only to the local Zotero API:
33
-
34
- ```text
35
- http://127.0.0.1:23119/api
36
- ```
37
-
38
- Enable “Allow other applications on this computer to communicate with Zotero” and keep Zotero Desktop running.
39
-
40
- | Tool | Content |
41
- |---|---|
42
- | `zotero_collections` | Collections and collection items |
43
- | `zotero_search` | Bibliographic items, notes, annotations, and attachments |
44
- | `zotero_item` | A raw item or a combined paper view |
45
-
46
- The combined view can include metadata, notes, annotations, attachment details, indexed text, and a local PDF path. OmniScholar never creates, updates, moves, tags, or deletes Zotero data.
47
-
48
- Notes and annotations are personal reading context, not evidence from the publication. Check the paper itself before citing a claim.
49
-
50
- ## MinerU parsing
51
-
52
- `omnischolar_parse` validates the PDF, computes SHA-256, and asks MinerU to return text, formulas, tables, and figures. Results are cached; the same file and parser settings can return a cache hit.
53
-
54
- Upload requires both approvals:
55
-
56
- 1. `mineru.allowExternalUpload` is `true` in the config;
57
- 2. `allowExternalUpload` is `true` in the individual `omnischolar_parse` call.
58
-
59
- OmniScholar does not upload a Zotero attachment automatically. Confirm the exact item and file, then approve that upload separately. `force` creates a new parse and upload, so it needs fresh approval.
60
-
61
- Before extraction, MinerU archives are checked for unsafe paths, symlinks, excessive entries, and excessive expansion. Failed archives are not published.
62
-
63
- ## Citations
64
-
65
- Citation work has two steps: establish that a source supports the claim, then format its bibliographic record.
66
-
67
- 1. Find sources with `literature_search` and `literature_get`.
68
- 2. Check DOI, PMID, arXiv ID, title, authors, and year.
69
- 3. Read the passage relevant to the claim.
70
- 4. If paid use is approved, `ai4scholar_citation_candidates` can suggest more candidates.
71
- 5. Use `ai4scholar_cite` only for records you have accepted.
72
-
73
- A correctly formatted reference does not prove the claim. Ai4Scholar's Google Scholar citation formatter may lack a result ID required by the upstream interface; if it reports `blocked`, do not invent an ID.
74
-
75
- ## Markdown and Obsidian output
76
-
77
- `omnischolar_sync` shows a plan before writing under `output.rootDirectory`. The directory can be a regular folder or part of an Obsidian vault.
78
-
79
- Sync distinguishes new content, no change, metadata changes, parse changes, render changes, missing files, conflicts, exclusions, and interrupted recovery. Metadata repair, rerendering, and transaction recovery do not upload a PDF.
80
-
81
- If managed Markdown was edited by hand, the default policy keeps it and writes the incoming version under `.conflicts/`. Review both files before merging.
82
-
83
- Before using a real vault, point `output.rootDirectory` at a temporary directory and inspect the folder names, Markdown, and image links.
1
+ # Literature, Zotero, and PDFs
2
+
3
+ [简体中文](RESEARCH.md)
4
+
5
+ ## Literature search
6
+
7
+ | Tool | Use |
8
+ |---|---|
9
+ | `research_sources` | Show enabled sources and available operations |
10
+ | `literature_search` | Search papers by year, type, or open-access status |
11
+ | `literature_get` | Retrieve details by DOI, PMID/PMCID, arXiv ID, or source ID |
12
+ | `literature_graph` | Find references, citations, or recommendations |
13
+ | `journal_metrics` | Retrieve supported journal metrics |
14
+ | `literature_fulltext` | Find lawful full-text locations or save an accessible file under the output directory |
15
+
16
+ The sources serve different purposes:
17
+
18
+ - Semantic Scholar and OpenAlex cover broad literature and citation relationships.
19
+ - PubMed/PMC focuses on biomedical records; PMC also supplies licensed open full text.
20
+ - arXiv preserves preprint identifiers and versions.
21
+ - Crossref is useful for checking DOI registration metadata.
22
+ - Unpaywall finds open-access copies without bypassing subscriptions or access controls.
23
+ - easyScholar supplies journal metrics supported by its current interface.
24
+ - Ai4Scholar also covers Google Scholar, Google Patents, authors, datasets, and journals. Some calls use account credit.
25
+
26
+ Start with a small `limit`. Deduplicate by DOI when possible; otherwise compare normalized title, year, and first author. Title similarity can shortlist a paper but cannot establish that it supports a claim.
27
+
28
+ On HTTP 429, OmniScholar returns a rate-limit result. Wait for the provider's backoff period or choose another source that supports the same operation. Do not submit the same request in a tight loop.
29
+
30
+ ## Zotero
31
+
32
+ OmniScholar connects only to the local Zotero API:
33
+
34
+ ```text
35
+ http://127.0.0.1:23119/api
36
+ ```
37
+
38
+ Enable “Allow other applications on this computer to communicate with Zotero” and keep Zotero Desktop running.
39
+
40
+ | Tool | Content |
41
+ |---|---|
42
+ | `zotero_collections` | Collections and collection items |
43
+ | `zotero_search` | Bibliographic items, notes, annotations, and attachments |
44
+ | `zotero_item` | A raw item or a combined paper view |
45
+
46
+ The combined view can include metadata, notes, annotations, attachment details, indexed text, and a local PDF path. OmniScholar never creates, updates, moves, tags, or deletes Zotero data.
47
+
48
+ Notes and annotations are personal reading context, not evidence from the publication. Check the paper itself before citing a claim.
49
+
50
+ ## MinerU parsing
51
+
52
+ `omnischolar_parse` validates the PDF, computes SHA-256, and asks MinerU to return text, formulas, tables, and figures. Results are cached; the same file and parser settings can return a cache hit.
53
+
54
+ Upload requires both approvals:
55
+
56
+ 1. `mineru.allowExternalUpload` is `true` in the config;
57
+ 2. `allowExternalUpload` is `true` in the individual `omnischolar_parse` call.
58
+
59
+ OmniScholar does not upload a Zotero attachment automatically. Confirm the exact item and file, then approve that upload separately. `force` creates a new parse and upload, so it needs fresh approval.
60
+
61
+ Before extraction, MinerU archives are checked for unsafe paths, symlinks, excessive entries, and excessive expansion. Failed archives are not published.
62
+
63
+ ## Citations
64
+
65
+ Citation work has two steps: establish that a source supports the claim, then format its bibliographic record.
66
+
67
+ 1. Find sources with `literature_search` and `literature_get`.
68
+ 2. Check DOI, PMID, arXiv ID, title, authors, and year.
69
+ 3. Read the passage relevant to the claim.
70
+ 4. If paid use is approved, `ai4scholar_citation_candidates` can suggest more candidates.
71
+ 5. Use `ai4scholar_cite` only for records you have accepted.
72
+
73
+ A correctly formatted reference does not prove the claim. Ai4Scholar's Google Scholar citation formatter may lack a result ID required by the upstream interface; if it reports `blocked`, do not invent an ID.
74
+
75
+ ## Markdown and Obsidian output
76
+
77
+ `omnischolar_sync` shows a plan before writing under `output.rootDirectory`. The directory can be a regular folder or part of an Obsidian vault.
78
+
79
+ Sync distinguishes new content, no change, metadata changes, parse changes, render changes, missing files, conflicts, exclusions, and interrupted recovery. Metadata repair, rerendering, and transaction recovery do not upload a PDF.
80
+
81
+ If managed Markdown was edited by hand, the default policy keeps it and writes the incoming version under `.conflicts/`. Review both files before merging.
82
+
83
+ Before using a real vault, point `output.rootDirectory` at a temporary directory and inspect the folder names, Markdown, and image links.
package/docs/RESEARCH.md CHANGED
@@ -1,83 +1,83 @@
1
- # 文献、Zotero 与 PDF
2
-
3
- [English](RESEARCH.en.md)
4
-
5
- ## 文献检索
6
-
7
- | 工具 | 用途 |
8
- |---|---|
9
- | `research_sources` | 查看已启用的数据源和可用功能 |
10
- | `literature_search` | 检索论文,可限制年份、类型和开放获取状态 |
11
- | `literature_get` | 按 DOI、PMID/PMCID、arXiv ID 或数据源 ID 获取详情 |
12
- | `literature_graph` | 查询参考文献、施引文献或推荐论文 |
13
- | `journal_metrics` | 查询已支持的期刊指标 |
14
- | `literature_fulltext` | 查找合法全文地址,或将允许访问的文件保存到输出目录 |
15
-
16
- 各数据源侧重点不同:
17
-
18
- - Semantic Scholar 和 OpenAlex 适合跨学科检索与引用关系。
19
- - PubMed/PMC 适合生物医学文献,PMC 还能提供带许可信息的开放全文。
20
- - arXiv 保留预印本标识符和版本信息。
21
- - Crossref 适合核对 DOI 注册元数据。
22
- - Unpaywall 用于查找开放获取版本,不绕过订阅或访问控制。
23
- - easyScholar 提供当前接口支持的期刊指标。
24
- - Ai4Scholar 还可查询 Google Scholar、Google Patents、作者、数据集和期刊信息,部分调用会消耗额度。
25
-
26
- 检索时先用较小的 `limit`。优先按 DOI 去重;没有 DOI 时,再比较标题、年份和第一作者。标题相似只能用于筛选,不能代替正文证据。
27
-
28
- 遇到 HTTP 429 时,OmniScholar 会返回限流信息。等待服务商给出的时间后再试,或改用支持同一查询的数据源。不要连续提交相同请求。
29
-
30
- ## Zotero
31
-
32
- OmniScholar 只连接本机 Zotero API:
33
-
34
- ```text
35
- http://127.0.0.1:23119/api
36
- ```
37
-
38
- 需要在 Zotero 中开启“允许其他应用程序与 Zotero 通信”,并保持 Zotero Desktop 运行。
39
-
40
- | 工具 | 可读取内容 |
41
- |---|---|
42
- | `zotero_collections` | 收藏夹及其条目 |
43
- | `zotero_search` | 文献条目、笔记、批注和附件 |
44
- | `zotero_item` | 单个条目或聚合后的论文视图 |
45
-
46
- 聚合视图可包含书目信息、笔记、批注、附件信息、索引文本和本地 PDF 路径。OmniScholar 不会创建、修改、移动、加标签或删除 Zotero 数据。
47
-
48
- Zotero 笔记和批注属于个人阅读记录,不应当作论文原文证据。需要引用论文结论时,仍要核对原文。
49
-
50
- ## MinerU 解析
51
-
52
- `omnischolar_parse` 检查 PDF 文件、计算 SHA-256,并使用 MinerU 返回正文、公式、表格和图片。解析结果会缓存;同一文件和解析设置再次调用时可直接命中缓存。
53
-
54
- 上传必须同时得到两次确认:
55
-
56
- 1. 配置中的 `mineru.allowExternalUpload` 为 `true`;
57
- 2. 本次 `omnischolar_parse` 调用中的 `allowExternalUpload` 为 `true`。
58
-
59
- OmniScholar 不会自动把 Zotero 附件上传到 MinerU。应先确认具体条目和文件,再单独批准上传。`force` 会重新解析并产生一次新上传,因此也需要新的授权。
60
-
61
- 下载的 MinerU 压缩包会在解压前检查路径、符号链接、文件数量和展开大小。检查失败时不写入输出目录。
62
-
63
- ## 引用
64
-
65
- 引用工作分为两步:先确认来源是否支持论点,再格式化书目信息。
66
-
67
- 1. 用 `literature_search` 和 `literature_get` 查找来源。
68
- 2. 核对 DOI、PMID、arXiv ID、标题、作者和年份。
69
- 3. 阅读与论点相关的正文段落。
70
- 4. 使用 `ai4scholar_citation_candidates` 补充候选时,先确认付费调用。
71
- 5. 只对已核对的记录使用 `ai4scholar_cite`。
72
-
73
- 格式正确的参考文献不代表论点已经得到支持。Ai4Scholar 的 Google Scholar 引用格式化目前可能缺少接口要求的结果 ID;遇到 `blocked` 时,不要自行拼接 ID。
74
-
75
- ## 保存到 Markdown 或 Obsidian
76
-
77
- `omnischolar_sync` 会先给出计划,再写入 `output.rootDirectory`。该目录可以是普通文件夹,也可以位于 Obsidian Vault 中。
78
-
79
- 同步会区分新建、无需更新、元数据变化、解析变化、渲染变化、文件缺失、冲突、排除和中断恢复。仅修复元数据、渲染或中断事务时不会上传 PDF。
80
-
81
- 若已生成的 Markdown 被手工修改,默认策略会保留现有文件,并把新版本写入 `.conflicts/`。检查两份内容后再决定如何合并。
82
-
83
- 首次写入真实 Vault 前,可先把 `output.rootDirectory` 指向临时目录,确认目录名、Markdown 和图片路径符合预期。
1
+ # 文献、Zotero 与 PDF
2
+
3
+ [English](RESEARCH.en.md)
4
+
5
+ ## 文献检索
6
+
7
+ | 工具 | 用途 |
8
+ |---|---|
9
+ | `research_sources` | 查看已启用的数据源和可用功能 |
10
+ | `literature_search` | 检索论文,可限制年份、类型和开放获取状态 |
11
+ | `literature_get` | 按 DOI、PMID/PMCID、arXiv ID 或数据源 ID 获取详情 |
12
+ | `literature_graph` | 查询参考文献、施引文献或推荐论文 |
13
+ | `journal_metrics` | 查询已支持的期刊指标 |
14
+ | `literature_fulltext` | 查找合法全文地址,或将允许访问的文件保存到输出目录 |
15
+
16
+ 各数据源侧重点不同:
17
+
18
+ - Semantic Scholar 和 OpenAlex 适合跨学科检索与引用关系。
19
+ - PubMed/PMC 适合生物医学文献,PMC 还能提供带许可信息的开放全文。
20
+ - arXiv 保留预印本标识符和版本信息。
21
+ - Crossref 适合核对 DOI 注册元数据。
22
+ - Unpaywall 用于查找开放获取版本,不绕过订阅或访问控制。
23
+ - easyScholar 提供当前接口支持的期刊指标。
24
+ - Ai4Scholar 还可查询 Google Scholar、Google Patents、作者、数据集和期刊信息,部分调用会消耗额度。
25
+
26
+ 检索时先用较小的 `limit`。优先按 DOI 去重;没有 DOI 时,再比较标题、年份和第一作者。标题相似只能用于筛选,不能代替正文证据。
27
+
28
+ 遇到 HTTP 429 时,OmniScholar 会返回限流信息。等待服务商给出的时间后再试,或改用支持同一查询的数据源。不要连续提交相同请求。
29
+
30
+ ## Zotero
31
+
32
+ OmniScholar 只连接本机 Zotero API:
33
+
34
+ ```text
35
+ http://127.0.0.1:23119/api
36
+ ```
37
+
38
+ 需要在 Zotero 中开启“允许其他应用程序与 Zotero 通信”,并保持 Zotero Desktop 运行。
39
+
40
+ | 工具 | 可读取内容 |
41
+ |---|---|
42
+ | `zotero_collections` | 收藏夹及其条目 |
43
+ | `zotero_search` | 文献条目、笔记、批注和附件 |
44
+ | `zotero_item` | 单个条目或聚合后的论文视图 |
45
+
46
+ 聚合视图可包含书目信息、笔记、批注、附件信息、索引文本和本地 PDF 路径。OmniScholar 不会创建、修改、移动、加标签或删除 Zotero 数据。
47
+
48
+ Zotero 笔记和批注属于个人阅读记录,不应当作论文原文证据。需要引用论文结论时,仍要核对原文。
49
+
50
+ ## MinerU 解析
51
+
52
+ `omnischolar_parse` 检查 PDF 文件、计算 SHA-256,并使用 MinerU 返回正文、公式、表格和图片。解析结果会缓存;同一文件和解析设置再次调用时可直接命中缓存。
53
+
54
+ 上传必须同时得到两次确认:
55
+
56
+ 1. 配置中的 `mineru.allowExternalUpload` 为 `true`;
57
+ 2. 本次 `omnischolar_parse` 调用中的 `allowExternalUpload` 为 `true`。
58
+
59
+ OmniScholar 不会自动把 Zotero 附件上传到 MinerU。应先确认具体条目和文件,再单独批准上传。`force` 会重新解析并产生一次新上传,因此也需要新的授权。
60
+
61
+ 下载的 MinerU 压缩包会在解压前检查路径、符号链接、文件数量和展开大小。检查失败时不写入输出目录。
62
+
63
+ ## 引用
64
+
65
+ 引用工作分为两步:先确认来源是否支持论点,再格式化书目信息。
66
+
67
+ 1. 用 `literature_search` 和 `literature_get` 查找来源。
68
+ 2. 核对 DOI、PMID、arXiv ID、标题、作者和年份。
69
+ 3. 阅读与论点相关的正文段落。
70
+ 4. 使用 `ai4scholar_citation_candidates` 补充候选时,先确认付费调用。
71
+ 5. 只对已核对的记录使用 `ai4scholar_cite`。
72
+
73
+ 格式正确的参考文献不代表论点已经得到支持。Ai4Scholar 的 Google Scholar 引用格式化目前可能缺少接口要求的结果 ID;遇到 `blocked` 时,不要自行拼接 ID。
74
+
75
+ ## 保存到 Markdown 或 Obsidian
76
+
77
+ `omnischolar_sync` 会先给出计划,再写入 `output.rootDirectory`。该目录可以是普通文件夹,也可以位于 Obsidian Vault 中。
78
+
79
+ 同步会区分新建、无需更新、元数据变化、解析变化、渲染变化、文件缺失、冲突、排除和中断恢复。仅修复元数据、渲染或中断事务时不会上传 PDF。
80
+
81
+ 若已生成的 Markdown 被手工修改,默认策略会保留现有文件,并把新版本写入 `.conflicts/`。检查两份内容后再决定如何合并。
82
+
83
+ 首次写入真实 Vault 前,可先把 `output.rootDirectory` 指向临时目录,确认目录名、Markdown 和图片路径符合预期。
package/docs/TOOLS.en.md CHANGED
@@ -1,49 +1,49 @@
1
- # Tool list
2
-
3
- [简体中文](TOOLS.md)
4
-
5
- Tool and capability names match the values returned to agents.
6
-
7
- | Tool | Group | Capabilities | Side effects | Network | Credentials | Cost |
8
- |---|---|---|---|---:|---|---|
9
- | `omnischolar_status` | runtime | `runtime.status` | none | no | none | free |
10
- | `omnischolar_capabilities` | runtime | `runtime.capabilities` | none | no | none | free |
11
- | `research_sources` | literature | `literature.sources` | none | no | none | free |
12
- | `literature_search` | literature | `literature.search` | none | yes | none | free |
13
- | `literature_get` | literature | `literature.lookup` | none | yes | none | free |
14
- | `literature_graph` | literature | `literature.references`, `literature.citations`, `literature.recommendations` | none | yes | none | free |
15
- | `journal_metrics` | literature | `journal.metrics` | none | yes | none | free |
16
- | `literature_fulltext` | literature | `fulltext.resolve`, `fulltext.fetch` | filesystem | yes | none | free |
17
- | `zotero_collections` | zotero | `zotero.collections` | none | yes | none | free |
18
- | `zotero_search` | zotero | `zotero.search` | none | yes | none | free |
19
- | `zotero_item` | zotero | `zotero.item`, `zotero.aggregate` | none | yes | none | free |
20
- | `omnischolar_parse` | parsing | `pdf.parse`, `sync.publish` | external-upload | yes | mineru | metered |
21
- | `omnischolar_sync` | parsing | `sync.plan`, `sync.apply`, `sync.recovery` | filesystem | yes | none | free |
22
- | `ai4scholar_search` | ai4scholar | `ai4scholar.search` | paid | yes | ai4scholar | paid |
23
- | `ai4scholar_paper` | ai4scholar | `ai4scholar.paper` | paid | yes | ai4scholar | paid |
24
- | `ai4scholar_author` | ai4scholar | `ai4scholar.author` | paid | yes | ai4scholar | paid |
25
- | `ai4scholar_batch` | ai4scholar | `ai4scholar.batch` | paid | yes | ai4scholar | paid |
26
- | `ai4scholar_recommend` | ai4scholar | `ai4scholar.recommend` | paid | yes | ai4scholar | paid |
27
- | `ai4scholar_cite` | citation | `citation.format` | paid | yes | ai4scholar | paid |
28
- | `ai4scholar_snippets` | ai4scholar | `ai4scholar.snippets` | paid | yes | ai4scholar | paid |
29
- | `ai4scholar_credits` | ai4scholar | `ai4scholar.credits` | none | yes | ai4scholar | free |
30
- | `ai4scholar_dataset` | ai4scholar | `ai4scholar.dataset` | paid | yes | ai4scholar | paid |
31
- | `ai4scholar_journal` | ai4scholar | `ai4scholar.journal` | paid | yes | ai4scholar | paid |
32
- | `ai4scholar_citation_candidates` | citation | `citation.candidates` | paid | yes | ai4scholar | paid |
33
- | `ai4scholar_figure` | media | `media.generate`, `media.edit`, `media.vectorize` | paid | yes | ai4scholar | paid |
34
- | `materials_capabilities` | materials | `materials.capabilities` | none | no | materials-project | free |
35
- | `materials_search` | materials | `materials.search` | none | yes | materials-project | free |
36
- | `materials_route_search` | materials | `materials.route-search` | none | yes | materials-project | free |
37
- | `materials_get` | materials | `materials.lookup` | none | yes | materials-project | free |
38
- | `materials_advanced` | materials | `materials.phase-diagram`, `materials.xrd` | none | yes | materials-project | free |
39
- | `materials_export` | materials | `materials.export` | filesystem | no | none | free |
40
- | `chemical_sources` | chemistry | `chemistry.sources` | none | no | none | free |
41
- | `chemical_search` | chemistry | `chemistry.search` | none | yes | cas | free |
42
- | `chemical_get` | chemistry | `chemistry.lookup` | none | yes | cas | free |
43
- | `omnischolar_image_models` | media | `media.models` | none | yes | none | free |
44
- | `omnischolar_image_generate` | media | `text-to-image`, `image-to-image`, `multi-reference` | paid | yes | none | paid |
45
- | `omnischolar_image_edit` | media | `media.edit`, `multi-reference` | paid | yes | none | paid |
46
- | `omnischolar_image_service` | media | `media.service` | none | yes | none | free |
47
-
48
- Arguments not declared in a tool's input schema are rejected.
49
- Paid or upload-capable tools require both configuration and per-call authorization.
1
+ # Tool list
2
+
3
+ [简体中文](TOOLS.md)
4
+
5
+ Tool and capability names match the values returned to agents.
6
+
7
+ | Tool | Group | Capabilities | Side effects | Network | Credentials | Cost |
8
+ |---|---|---|---|---:|---|---|
9
+ | `omnischolar_status` | runtime | `runtime.status` | none | no | none | free |
10
+ | `omnischolar_capabilities` | runtime | `runtime.capabilities` | none | no | none | free |
11
+ | `research_sources` | literature | `literature.sources` | none | no | none | free |
12
+ | `literature_search` | literature | `literature.search` | none | yes | none | free |
13
+ | `literature_get` | literature | `literature.lookup` | none | yes | none | free |
14
+ | `literature_graph` | literature | `literature.references`, `literature.citations`, `literature.recommendations` | none | yes | none | free |
15
+ | `journal_metrics` | literature | `journal.metrics` | none | yes | none | free |
16
+ | `literature_fulltext` | literature | `fulltext.resolve`, `fulltext.fetch` | filesystem | yes | none | free |
17
+ | `zotero_collections` | zotero | `zotero.collections` | none | yes | none | free |
18
+ | `zotero_search` | zotero | `zotero.search` | none | yes | none | free |
19
+ | `zotero_item` | zotero | `zotero.item`, `zotero.aggregate` | none | yes | none | free |
20
+ | `omnischolar_parse` | parsing | `pdf.parse`, `sync.publish` | external-upload | yes | mineru | metered |
21
+ | `omnischolar_sync` | parsing | `sync.plan`, `sync.apply`, `sync.recovery` | filesystem | yes | none | free |
22
+ | `ai4scholar_search` | ai4scholar | `ai4scholar.search` | paid | yes | ai4scholar | paid |
23
+ | `ai4scholar_paper` | ai4scholar | `ai4scholar.paper` | paid | yes | ai4scholar | paid |
24
+ | `ai4scholar_author` | ai4scholar | `ai4scholar.author` | paid | yes | ai4scholar | paid |
25
+ | `ai4scholar_batch` | ai4scholar | `ai4scholar.batch` | paid | yes | ai4scholar | paid |
26
+ | `ai4scholar_recommend` | ai4scholar | `ai4scholar.recommend` | paid | yes | ai4scholar | paid |
27
+ | `ai4scholar_cite` | citation | `citation.format` | paid | yes | ai4scholar | paid |
28
+ | `ai4scholar_snippets` | ai4scholar | `ai4scholar.snippets` | paid | yes | ai4scholar | paid |
29
+ | `ai4scholar_credits` | ai4scholar | `ai4scholar.credits` | none | yes | ai4scholar | free |
30
+ | `ai4scholar_dataset` | ai4scholar | `ai4scholar.dataset` | paid | yes | ai4scholar | paid |
31
+ | `ai4scholar_journal` | ai4scholar | `ai4scholar.journal` | paid | yes | ai4scholar | paid |
32
+ | `ai4scholar_citation_candidates` | citation | `citation.candidates` | paid | yes | ai4scholar | paid |
33
+ | `ai4scholar_figure` | media | `media.generate`, `media.edit`, `media.vectorize` | paid | yes | ai4scholar | paid |
34
+ | `materials_capabilities` | materials | `materials.capabilities` | none | no | materials-project | free |
35
+ | `materials_search` | materials | `materials.search` | none | yes | materials-project | free |
36
+ | `materials_route_search` | materials | `materials.route-search` | none | yes | materials-project | free |
37
+ | `materials_get` | materials | `materials.lookup` | none | yes | materials-project | free |
38
+ | `materials_advanced` | materials | `materials.phase-diagram`, `materials.xrd` | none | yes | materials-project | free |
39
+ | `materials_export` | materials | `materials.export` | filesystem | no | none | free |
40
+ | `chemical_sources` | chemistry | `chemistry.sources` | none | no | none | free |
41
+ | `chemical_search` | chemistry | `chemistry.search` | none | yes | cas | free |
42
+ | `chemical_get` | chemistry | `chemistry.lookup` | none | yes | cas | free |
43
+ | `omnischolar_image_models` | media | `media.models` | none | yes | none | free |
44
+ | `omnischolar_image_generate` | media | `text-to-image`, `image-to-image`, `multi-reference` | paid | yes | none | paid |
45
+ | `omnischolar_image_edit` | media | `media.edit`, `multi-reference` | paid | yes | none | paid |
46
+ | `omnischolar_image_service` | media | `media.service` | none | yes | none | free |
47
+
48
+ Arguments not declared in a tool's input schema are rejected.
49
+ Paid or upload-capable tools require both configuration and per-call authorization.
package/docs/TOOLS.md CHANGED
@@ -1,49 +1,49 @@
1
- # 工具目录
2
-
3
- [English](TOOLS.en.md)
4
-
5
- 工具名和功能标识保留英文,便于与 Agent 返回结果对照。
6
-
7
- | 工具 | 分组 | 功能 | 可能产生的操作 | 联网 | 所需凭据 | 费用类型 |
8
- |---|---|---|---|---:|---|---|
9
- | `omnischolar_status` | runtime | `runtime.status` | none | no | none | free |
10
- | `omnischolar_capabilities` | runtime | `runtime.capabilities` | none | no | none | free |
11
- | `research_sources` | literature | `literature.sources` | none | no | none | free |
12
- | `literature_search` | literature | `literature.search` | none | yes | none | free |
13
- | `literature_get` | literature | `literature.lookup` | none | yes | none | free |
14
- | `literature_graph` | literature | `literature.references`, `literature.citations`, `literature.recommendations` | none | yes | none | free |
15
- | `journal_metrics` | literature | `journal.metrics` | none | yes | none | free |
16
- | `literature_fulltext` | literature | `fulltext.resolve`, `fulltext.fetch` | filesystem | yes | none | free |
17
- | `zotero_collections` | zotero | `zotero.collections` | none | yes | none | free |
18
- | `zotero_search` | zotero | `zotero.search` | none | yes | none | free |
19
- | `zotero_item` | zotero | `zotero.item`, `zotero.aggregate` | none | yes | none | free |
20
- | `omnischolar_parse` | parsing | `pdf.parse`, `sync.publish` | external-upload | yes | mineru | metered |
21
- | `omnischolar_sync` | parsing | `sync.plan`, `sync.apply`, `sync.recovery` | filesystem | yes | none | free |
22
- | `ai4scholar_search` | ai4scholar | `ai4scholar.search` | paid | yes | ai4scholar | paid |
23
- | `ai4scholar_paper` | ai4scholar | `ai4scholar.paper` | paid | yes | ai4scholar | paid |
24
- | `ai4scholar_author` | ai4scholar | `ai4scholar.author` | paid | yes | ai4scholar | paid |
25
- | `ai4scholar_batch` | ai4scholar | `ai4scholar.batch` | paid | yes | ai4scholar | paid |
26
- | `ai4scholar_recommend` | ai4scholar | `ai4scholar.recommend` | paid | yes | ai4scholar | paid |
27
- | `ai4scholar_cite` | citation | `citation.format` | paid | yes | ai4scholar | paid |
28
- | `ai4scholar_snippets` | ai4scholar | `ai4scholar.snippets` | paid | yes | ai4scholar | paid |
29
- | `ai4scholar_credits` | ai4scholar | `ai4scholar.credits` | none | yes | ai4scholar | free |
30
- | `ai4scholar_dataset` | ai4scholar | `ai4scholar.dataset` | paid | yes | ai4scholar | paid |
31
- | `ai4scholar_journal` | ai4scholar | `ai4scholar.journal` | paid | yes | ai4scholar | paid |
32
- | `ai4scholar_citation_candidates` | citation | `citation.candidates` | paid | yes | ai4scholar | paid |
33
- | `ai4scholar_figure` | media | `media.generate`, `media.edit`, `media.vectorize` | paid | yes | ai4scholar | paid |
34
- | `materials_capabilities` | materials | `materials.capabilities` | none | no | materials-project | free |
35
- | `materials_search` | materials | `materials.search` | none | yes | materials-project | free |
36
- | `materials_route_search` | materials | `materials.route-search` | none | yes | materials-project | free |
37
- | `materials_get` | materials | `materials.lookup` | none | yes | materials-project | free |
38
- | `materials_advanced` | materials | `materials.phase-diagram`, `materials.xrd` | none | yes | materials-project | free |
39
- | `materials_export` | materials | `materials.export` | filesystem | no | none | free |
40
- | `chemical_sources` | chemistry | `chemistry.sources` | none | no | none | free |
41
- | `chemical_search` | chemistry | `chemistry.search` | none | yes | cas | free |
42
- | `chemical_get` | chemistry | `chemistry.lookup` | none | yes | cas | free |
43
- | `omnischolar_image_models` | media | `media.models` | none | yes | none | free |
44
- | `omnischolar_image_generate` | media | `text-to-image`, `image-to-image`, `multi-reference` | paid | yes | none | paid |
45
- | `omnischolar_image_edit` | media | `media.edit`, `multi-reference` | paid | yes | none | paid |
46
- | `omnischolar_image_service` | media | `media.service` | none | yes | none | free |
47
-
48
- 未在输入 schema 中声明的参数会被拒绝。
49
- 付费或上传工具必须同时通过配置开关和本次调用的显式授权。
1
+ # 工具目录
2
+
3
+ [English](TOOLS.en.md)
4
+
5
+ 工具名和功能标识保留英文,便于与 Agent 返回结果对照。
6
+
7
+ | 工具 | 分组 | 功能 | 可能产生的操作 | 联网 | 所需凭据 | 费用类型 |
8
+ |---|---|---|---|---:|---|---|
9
+ | `omnischolar_status` | runtime | `runtime.status` | none | no | none | free |
10
+ | `omnischolar_capabilities` | runtime | `runtime.capabilities` | none | no | none | free |
11
+ | `research_sources` | literature | `literature.sources` | none | no | none | free |
12
+ | `literature_search` | literature | `literature.search` | none | yes | none | free |
13
+ | `literature_get` | literature | `literature.lookup` | none | yes | none | free |
14
+ | `literature_graph` | literature | `literature.references`, `literature.citations`, `literature.recommendations` | none | yes | none | free |
15
+ | `journal_metrics` | literature | `journal.metrics` | none | yes | none | free |
16
+ | `literature_fulltext` | literature | `fulltext.resolve`, `fulltext.fetch` | filesystem | yes | none | free |
17
+ | `zotero_collections` | zotero | `zotero.collections` | none | yes | none | free |
18
+ | `zotero_search` | zotero | `zotero.search` | none | yes | none | free |
19
+ | `zotero_item` | zotero | `zotero.item`, `zotero.aggregate` | none | yes | none | free |
20
+ | `omnischolar_parse` | parsing | `pdf.parse`, `sync.publish` | external-upload | yes | mineru | metered |
21
+ | `omnischolar_sync` | parsing | `sync.plan`, `sync.apply`, `sync.recovery` | filesystem | yes | none | free |
22
+ | `ai4scholar_search` | ai4scholar | `ai4scholar.search` | paid | yes | ai4scholar | paid |
23
+ | `ai4scholar_paper` | ai4scholar | `ai4scholar.paper` | paid | yes | ai4scholar | paid |
24
+ | `ai4scholar_author` | ai4scholar | `ai4scholar.author` | paid | yes | ai4scholar | paid |
25
+ | `ai4scholar_batch` | ai4scholar | `ai4scholar.batch` | paid | yes | ai4scholar | paid |
26
+ | `ai4scholar_recommend` | ai4scholar | `ai4scholar.recommend` | paid | yes | ai4scholar | paid |
27
+ | `ai4scholar_cite` | citation | `citation.format` | paid | yes | ai4scholar | paid |
28
+ | `ai4scholar_snippets` | ai4scholar | `ai4scholar.snippets` | paid | yes | ai4scholar | paid |
29
+ | `ai4scholar_credits` | ai4scholar | `ai4scholar.credits` | none | yes | ai4scholar | free |
30
+ | `ai4scholar_dataset` | ai4scholar | `ai4scholar.dataset` | paid | yes | ai4scholar | paid |
31
+ | `ai4scholar_journal` | ai4scholar | `ai4scholar.journal` | paid | yes | ai4scholar | paid |
32
+ | `ai4scholar_citation_candidates` | citation | `citation.candidates` | paid | yes | ai4scholar | paid |
33
+ | `ai4scholar_figure` | media | `media.generate`, `media.edit`, `media.vectorize` | paid | yes | ai4scholar | paid |
34
+ | `materials_capabilities` | materials | `materials.capabilities` | none | no | materials-project | free |
35
+ | `materials_search` | materials | `materials.search` | none | yes | materials-project | free |
36
+ | `materials_route_search` | materials | `materials.route-search` | none | yes | materials-project | free |
37
+ | `materials_get` | materials | `materials.lookup` | none | yes | materials-project | free |
38
+ | `materials_advanced` | materials | `materials.phase-diagram`, `materials.xrd` | none | yes | materials-project | free |
39
+ | `materials_export` | materials | `materials.export` | filesystem | no | none | free |
40
+ | `chemical_sources` | chemistry | `chemistry.sources` | none | no | none | free |
41
+ | `chemical_search` | chemistry | `chemistry.search` | none | yes | cas | free |
42
+ | `chemical_get` | chemistry | `chemistry.lookup` | none | yes | cas | free |
43
+ | `omnischolar_image_models` | media | `media.models` | none | yes | none | free |
44
+ | `omnischolar_image_generate` | media | `text-to-image`, `image-to-image`, `multi-reference` | paid | yes | none | paid |
45
+ | `omnischolar_image_edit` | media | `media.edit`, `multi-reference` | paid | yes | none | paid |
46
+ | `omnischolar_image_service` | media | `media.service` | none | yes | none | free |
47
+
48
+ 未在输入 schema 中声明的参数会被拒绝。
49
+ 付费或上传工具必须同时通过配置开关和本次调用的显式授权。