io.github.FreyaBit/shanghai-library-open-data-mcp
PYPI · SHANGHAI-LIBRARY-OPEN-DATA-MCP · SCANNED AUG 16
上海图书馆开放数据检索 MCP:纪年/家谱/建筑/红色事件/99 个 webapi + 搜韵诗词,支持 stdio 与 HTTP。
Available components
How this component scores in each security and reliability category. Every signal is checked automatically from public evidence about the published package, including repeated runs of it in an isolated sandbox, and we only credit what we can confirm. How we score →
Supply Chain Security100
- No malware found by supply-chain analysis.Pass
- No known CVEs affecting this package version or its production dependencies.Pass
- Runs hatchling.build at install time, a recognised native-build step with no shell scripting around it. View diagnostics → Pass
- No production dependencies, so there is no dependency health to assess. View diagnostics → Pass
Provenance & Transparency45
- Source repository is publicly reachable at the declared URL. View diagnostics → Pass
- Provenance check failed: no build-provenance attestation is published. See how to fix → View diagnostics → Fail
- Clear OSI-approved license (MIT).Pass
- Actively maintained (last published 8 days ago).Pass
- Disclosure check failed: no security disclosure policy was found in the source repository. See how to fix → Fail
Schema Quality & AI Usability74
- AI-judged instruction clarity (excellent).Pass
- Context-footprint check failed: tool/resource definitions use about 1581 tokens (~131/item across 12 items; 12 tools + 0 resources), over budget; trim descriptions and params. See how to fix → Fail
- Usage-examples check failed: none of the tools include examples. See how to fix → Fail
Stability & Change Management27
- Stability observed for 8 of 30 days with no destabilising changes; credit accrues until the full window elapses.Partial
Tool Coverage100
- 100% of tools have a non-trivial description (not blank, and not just the tool's name).Pass
- 100% of tool parameters carry a description.Pass
- Structured output schemas are declared (100% of tools); any adoption earns full credit.Pass
Capabilities100
- Implements a supported MCP spec version (2025-11-25); the latest is 2026-07-28.Pass
Add this component to your MCP client. Where a client-specific snippet is available, pick your client below and copy it straight into your config; otherwise use the connection detail shown.
pypi · shanghai-library-open-data-mcp
claude mcp add freyabit-shanghai-library-open-data-mcp -- uvx shanghai-library-open-data-mcp
codex mcp add freyabit-shanghai-library-open-data-mcp -- uvx shanghai-library-open-data-mcp
{
"$schema": "https://opencode.ai/config.json",
"mcp": {
"freyabit-shanghai-library-open-data-mcp": {
"type": "local",
"command": [
"uvx",
"shanghai-library-open-data-mcp"
],
"enabled": true
}
}
} openclaw mcp add freyabit-shanghai-library-open-data-mcp --command uvx --arg shanghai-library-open-data-mcp
mcp_servers:
freyabit-shanghai-library-open-data-mcp:
command: "uvx"
args: ["shanghai-library-open-data-mcp"] {
"mcpServers": {
"freyabit-shanghai-library-open-data-mcp": {
"command": "uvx",
"args": [
"shanghai-library-open-data-mcp"
]
}
}
} Every change we have recorded for this component, newest first. Security-relevant changes are always shown. ▲ marks a change for the better, ▼ a change for the worse; unmarked changes are neutral.
- 16 Aug 26 +1
No change was recorded against any check on this day. Stability & Change Management went from 23 to 27. That category is still filling its 30-day observation window: 7 days of observed history at the previous scan, 8 at this one. The score rises as the window fills, whether or not the server changes.
- 15 Aug 26 +3
- Stability: unverified → 0.23 ▲ functional
- 13 Aug 26 +15
- Malware scan: unverified → pass ▲ security
- 12 Aug 26 −15
- Malware scan: pass → unverified ▼ security
- Security disclosure: unverified → fail ▼ functional
- 11 Aug 26 +1
- We updated how we score, so this day's move reflects our rubric, not a change to the server See what changed → functional
- 8 Aug 26 68
First indexed and scored.
Diagnostic detail from the automated scan of this channel: what the scanner observed at each step, so you can see exactly where a check passed or failed. It is informational only and never changes the trust score.
Captured 16 Aug 2026 · Analysed pypi/shanghai-library-open-data-mcp@1.3.2
Provenance No attestation
The registry publishes no build provenance for this version, so there is nothing to verify.
| Result | No attestation |
|---|---|
| Ecosystem | pypi |
Install scripts 1 script
| Hook | Tier | Command |
|---|---|---|
| build_backend | allowlisted | hatchling.build |
Dependencies 0 packages
| Packages resolved | 0 |
|---|---|
| Tree resolution | Complete |
The tools this component advertises to a client, with an estimated token cost for each. Expand a tool to see its parameters and schema. The per-tool counts are indicative and are not scored directly; the schema's total context footprint is one signal in Schema Quality & AI Usability.
slc_api ~219
通用分发器:调用 api_2025 注册的全部 webapi 接口(家谱/古籍/盛档/人名库/碑帖/电影/期刊/舆图/书目/地名志/武康路 等 99 个)。endpoint 填接口 id;params 填查询参数(JSON);path_args 填路径占位 {0}{1};key 填你自己的上海图书馆开放数据 APIKey(必填)。先用 slc_endpoints 查 id。
| Name | Type | Req | Description |
|---|---|---|---|
| endpoint | string | yes | 接口 id 或 家族名(取该家族首个接口),如 work_data / 武康路历史 |
| key | string | – | 上海图书馆开放数据 APIKey(必填) |
| params | object | – | 查询参数(JSON 对象),如 {'freetext':'江南','pageNum':1} |
| path_args | array | – | 路径占位 {0}{1} 的取值列表 |
| Name | Type | Req | Description |
|---|---|---|---|
| data | object | – | 接口返回的 JSON 数据,具体结构随接口而异 |
| status | integer | – | HTTP/业务状态码(200 表示成功) |
| text | string | – | 非 JSON 响应时的原始文本(已截断) |
No examples provided.
slc_building ~72
武康路历史建筑检索(已验证可用):按路名/建筑关键词检索。需传入 key。
| Name | Type | Req | Description |
|---|---|---|---|
| key | string | – | 上海图书馆开放数据 APIKey(必填) |
| keyword | string | yes | 路名/建筑关键词,如 武康路 |
| Name | Type | Req | Description |
|---|---|---|---|
| data | object | – | 接口返回的 JSON 数据,具体结构随接口而异 |
| status | integer | – | HTTP/业务状态码(200 表示成功) |
| text | string | – | 非 JSON 响应时的原始文本(已截断) |
No examples provided.
slc_datasets ~52
数据集与第三方机构总览:上海图书馆核心平台、搜韵诗词、韬奋纪念馆、Artlib、CBDB、全国报刊索引等。
Input schema present but exposes no named parameters.
| Name | Type | Req | Description |
|---|---|---|---|
| 主题 | string | – | – |
| 方向 | array | – | – |
| 核心平台(需Key) | object | – | – |
| 离线包 | string | – | – |
| 第三方机构(部分) | object | – | – |
No examples provided.
slc_endpoints ~64
列出全部可用 webapi 接口(id/家族/路径/参数),可按 family 过滤。用于发现能力。
| Name | Type | Req | Description |
|---|---|---|---|
| family | string | – | 可选:按家族过滤,如 古籍循证 / 武康路历史 |
| Name | Type | Req | Description |
|---|---|---|---|
| count | integer | – | 可用接口数量 |
| endpoints | array | – | – |
No examples provided.
slc_era ~110
中国历史纪年表:输入朝代/年号返回公元年范围,或反之。例:明 -> 1368~1644。需传入 key(你自己的上海图书馆开放数据 APIKey)。
| Name | Type | Req | Description |
|---|---|---|---|
| key | string | – | 上海图书馆开放数据 APIKey(必填,也可走环境变量 SLC_API_KEY) |
| term | string | yes | 朝代/年号/公元年,如 明、洪武、1369 |
| Name | Type | Req | Description |
|---|---|---|---|
| data | object | – | 接口返回的 JSON 数据,具体结构随接口而异 |
| status | integer | – | HTTP/业务状态码(200 表示成功) |
| text | string | – | 非 JSON 响应时的原始文本(已截断) |
No examples provided.
slc_jiapu ~87
家谱谱目检索(data1 平台):可按谱名或姓氏检索家谱。需传入 key。
| Name | Type | Req | Description |
|---|---|---|---|
| familyname | string | – | 姓氏,如 王 |
| key | string | – | 上海图书馆开放数据 APIKey(必填) |
| title | string | – | 谱名关键词,如 王氏家谱 |
| Name | Type | Req | Description |
|---|---|---|---|
| data | object | – | 接口返回的 JSON 数据,具体结构随接口而异 |
| status | integer | – | HTTP/业务状态码(200 表示成功) |
| text | string | – | 非 JSON 响应时的原始文本(已截断) |
No examples provided.
slc_raw ~108
任意 data1.library.sh.cn 路径的 GET 兜底调用:当专属工具或 slc_api 不满足时使用。需传入 key。
| Name | Type | Req | Description |
|---|---|---|---|
| key | string | – | 上海图书馆开放数据 APIKey(必填) |
| params | object | – | 查询参数(JSON 对象),如 {'freetext':'兰亭','pageNum':1} |
| path | string | yes | 接口路径,如 /webapi/beitie/search |
| Name | Type | Req | Description |
|---|---|---|---|
| data | object | – | 接口返回的 JSON 数据,具体结构随接口而异 |
| status | integer | – | HTTP/业务状态码(200 表示成功) |
| text | string | – | 非 JSON 响应时的原始文本(已截断) |
No examples provided.
slc_red_event ~84
红色旅游/历史事件检索:按关键词或年份检索。需传入 key。
| Name | Type | Req | Description |
|---|---|---|---|
| date | string | – | 年份,如 1940(与 keyword 二选一) |
| key | string | – | 上海图书馆开放数据 APIKey(必填) |
| keyword | string | – | 事件关键词,如 中共一大会址 |
| Name | Type | Req | Description |
|---|---|---|---|
| data | object | – | 接口返回的 JSON 数据,具体结构随接口而异 |
| status | integer | – | HTTP/业务状态码(200 表示成功) |
| text | string | – | 非 JSON 响应时的原始文本(已截断) |
No examples provided.
slc_sparql ~42
SPARQL 图查询说明:该平台 Key 仅网页端可用,本工具返回友好提示与替代方案而非报错。
Input schema present but exposes no named parameters.
| Name | Type | Req | Description |
|---|---|---|---|
| note | string | – | 说明与替代调用建议 |
| status | string | – | 固定为 blocked |
No examples provided.
souyun_couplet ~58
搜韵对仗词汇(免 token):返回与输入字/词对仗的词汇,用于写对仗句。
| Name | Type | Req | Description |
|---|---|---|---|
| word | string | yes | 字或词,如 人间 / 月 |
| Name | Type | Req | Description |
|---|---|---|---|
| data | object | – | 接口返回的 JSON 数据,具体结构随接口而异 |
| status | integer | – | HTTP/业务状态码(200 表示成功) |
| text | string | – | 非 JSON 响应时的原始文本(已截断) |
No examples provided.
souyun_poem ~160
搜韵诗词检索(免 token):按作者/标题/诗句/朝代/体裁/韵部查诗词,服务于 AIGC 歌词与创作。
| Name | Type | Req | Description |
|---|---|---|---|
| dynasty | string | – | 朝代,如 Tang / Song |
| keyword | string | yes | 关键词或诗 ID,如 王之涣 / 登鹳雀楼 / 7734 |
| pageno | integer | – | 页码,从 1 开始 |
| rhyme | string | – | 韵部,如 江 / 尤 |
| scope | string | – | 检索范围:All / Author / Title / Sentence |
| type | string | – | 体裁,如 QiLv / WuJue |
| Name | Type | Req | Description |
|---|---|---|---|
| data | object | – | 接口返回的 JSON 数据,具体结构随接口而异 |
| status | integer | – | HTTP/业务状态码(200 表示成功) |
| text | string | – | 非 JSON 响应时的原始文本(已截断) |
No examples provided.
souyun_rhyme ~91
搜韵韵典(免 token):查字所属韵部、词末/词首典故、句末诗例。
| Name | Type | Req | Description |
|---|---|---|---|
| char | string | yes | 韵字,如 天 / 月 |
| qtype | integer | – | 0全部 1韵目 2词末典故 3词首 4词末 5句末诗例 |
| Name | Type | Req | Description |
|---|---|---|---|
| data | object | – | 接口返回的 JSON 数据,具体结构随接口而异 |
| status | integer | – | HTTP/业务状态码(200 表示成功) |
| text | string | – | 非 JSON 响应时的原始文本(已截断) |
No examples provided.