local-datasource — independently scanned and version-tracked by SaferSkills.
SaferSkills independently audited local-datasource (Agent Skill) and scored it 100/100 (green). The audit ran 55 deterministic rules across Security, Supply Chain, Maintenance, Transparency, and Community; it found 0 high-severity and 0 lower-severity findings. The full rule-by-rule trace and per-finding evidence are below. Free, methodology-open.
Findings & checks · 0 flagged
Every scanned point with the score it earned and what moved between them.
First recorded scan — no prior version to compare against.
The primary manifest — the file an agent reads to learn what this artifact does.
本 skill 通过本地 MCP server 提供 16 个数据查询 tool。Agent 的核心职责是: 理解用户意图 → 选择合适工具 → 构造参数 → 解释返回结果。 数据的实际获取与 CSV 落盘由 MCP server 完成。项目介绍、架构、安装、配置、调用示例见 README.md。
不触发:分析本地已有文件(CSV/Excel/PDF);明确要求付费 API(Wind/Bloomberg)且未授权本地替代。
| 用户需求 | 选用工具 | 说明 |
|---|---|---|
| A 股 / 港股 / 美股 行情 | query_stock | 日线(A/HK/US)+ A股分钟;支持前/后复权 |
| 美股 / ETF / 海外指数 快速查 | query_yfinance | 默认 akshare;可回退 yfinance |
| 世界银行宏观指标 | query_worldbank | 指标代码 + 国家代码 |
| arXiv 论文 | query_arxiv | 关键词、排序、max_results |
| 国债收益率曲线 / 信用债发行信息 / 交易所行情 | query_bond | kind 分流;issue_info 支持 bond_code 或 bond_issue |
| 可转债一览 / 条款 / 历史K线 / 发行人财务 | query_convertible_bond | kind 分流;issuer_finance 支持正股代码直查 |
| 股票名称(简称/全称)→ 代码候选 | resolve_stock_code | 新浪 suggest API(支持全称),降级 akshare 全表简称;多候选择一再调 query_stock |
| 多资产归一化对比 | 组合调用上述工具 → Agent 用 pandas/matplotlib | 见工作流 5 |
| 国内期货(单合约/主连,日线/分钟,合约清单) | query_futures | kind 分流;主连日线全历史(自上市日或 2005-01-04 起);分钟约 4 交易日 |
| 国内指数(沪深/中证系列,日线/分钟) | query_index | 000/399 走新浪;930xxx 走中证官网(慢约 10 秒,无分钟) |
| A股场内 ETF(日线/分钟) | query_etf | 日线自约 2012 年,无复权;分钟约 8 交易日 |
| 期权(ETF/股指期权:月份/清单/日线) | query_options | 先 months/contracts 找代码再 hist 查日线;仅日线 |
| 全球利率与波动率(美债收益率/美联储 EFFR/美元指数/VIX) | query_global_rates | kind 分流;us_treasury 选 tenure,短端仅近 1000 交易日 |
| 汇率(中间价/中行牌价/离岸 USDCNH/交叉盘) | query_fx | kind 分流;mid 单位 100 外币;bochina 起止日期必填且较慢 |
| 商品现货(上金所贵金属/生意社大宗含基差) | query_spot | kind 分流;sge 品种必填;sy 起止必填且单次最长 1 年 |
| 多份行情 CSV 对齐合并成宽表 | align_series | 纯本地不联网;outer/inner、前向填充、周月重采样 |
| 交易规则参数(印花税/涨跌幅/保证金/T+1…按 as_of 生效区间) | query_trading_rules | 8 类市场;commodity_futures 返回引导;不传 as_of=现行值 |
用户给金融标的时,可能贴代码、简称、全称或发行人名。Agent 调用 tool 前先按下表归一化输入,不要把原始输入直接塞参数。
| 品种 | 用户输入 | Agent 动作 |
|---|---|---|
| 股票 | 公司简称(如茅台) | resolve_stock_code(keyword=简称) → 候选 → 选代码 → query_stock |
| 股票 | 公司全称(如贵州茅台酒股份有限公司) | resolve_stock_code(keyword=全称) → 新浪从关联字段提取代码;空则提示用户提供简称 |
| 股票 | 已是代码(如 600519) | 直接 query_stock |
| 可转债 | 某公司转债 | query_convertible_bond(kind=overview, keyword=正股简称) → 该公司转债 |
| 可转债 | 转债代码 | 直接 query_convertible_bond(kind=history, symbol=...) |
| 标债 | 发行人名(如成都东方广益) | query_bond(kind=issue_info, bond_issue=发行人) → 最新一只债代码 → 继续查 |
| 标债 | 具体债代码/简称(如 2180495.IB) | query_bond(kind=issue_info, bond_code=...) |
| 发行人财务 | 任意债代码/发行人名 | 先归一化到代码 → query_convertible_bond(kind=issuer_finance, ...) |
| 期货 | 合约/主连(如 IM2612/IM0/IM主连) | 直接 query_futures,大小写与"主连"自动归一 |
| 期货 | 品种名(如 IM、螺纹钢) | 品种代码 query_futures(kind=contracts, symbol=IM) 查挂牌合约 |
| 指数 | 代码(如 000852/930050/sh000300) | 直接 query_index;930/95 开头自动走中证官网源 |
| ETF | 代码(如 510300/159915) | 直接 query_etf,前缀自动补 |
| 期权 | 标的名(如 IO、50ETF 期权) | query_options(kind=months/contracts, underlying=...) → 合约代码 → kind=hist |
关键边界:
issuer_finance 返回引导性提示(免费层无财务)。调用示例(JSON)见 README.md § 调用数据案例。query_stock — A/HK/US 股票ticker(A 股 600519 / 港股 00700 / 美股 AAPL)、market(a/hk/us)、start_date、end_date(YYYY-MM-DD)、file_pathadjust(qfq 默认 / hfq / none,仅日线)、period(daily 默认 / min,min 仅 A 股)、freq(分钟粒度 1/5/15/30/60,默认 1).SH/.SZ/.HK 后缀,程序自动补齐。A 股日线含 turnover(换手率,小数,0.0036 即 0.36%)、outstanding_share(流通股本)、amount(成交额),筹码分布等衍生计算可直接使用。分钟约 8 个交易日深度,请求更早区间会明确报错并提示从 Wind/终端导出补数。query_futures — 国内期货symbol(合约 IM2612 / 主连 IM0 / 品种 IM(kind=contracts))、file_pathkind(hist 默认 / contracts)、period(daily 默认 / min)、freq、start_date/end_date(min 必填)、trade_date(contracts,默认今天)query_index — 国内指数symbol(000852/sh000300/930050)、file_pathperiod(daily 默认 / min)、freq、start_date/end_date(min 必填)93xxxx/95xxxx 中证系列走中证官网(慢约 10 秒,无分钟数据)。分钟约 8 个交易日,超覆盖报错。query_etf — A股场内 ETFsymbol(510300/sh510300)、file_pathperiod(daily 默认 / min)、freq、start_date/end_date(min 必填)query_options — 期权kind(months/contracts/hist)、file_path;months/contracts 需 underlying(50ETF/300ETF/500ETF/科创50ETF/IO/HO/MO);hist 需 symbol(如 10003889/IO2706-P-5600)start_date/end_date(hist)、trade_date(contracts/CFFEX)IO2706-P-5600 = io2706p5600)。query_yfinance — 美股/全球资产ticker(AAPL/SPY/GLD)、file_pathperiod(1d/1mo/1y/max 等)、start_date/end_date(与 period 二选一)、use_yfinance(默认 false 用 akshare)use_yfinance=true。query_worldbank — 世界银行宏观指标indicator(如 NY.GDP.MKTP.CD)、country(CHN/CHN,USA/all)、start_year、end_year、file_pathquery_arxiv — 学术论文query、file_pathmax_results(默认 10)、sort_by(relevance 默认 / submitted / last_updated)query_bond — 中国境内债券kind(yield_curve/issue_info/credit_daily)、file_pathstart_date/end_date(yield_curve/credit_daily 必填)、bond_code(issue_info 必填之一,如 2180495.IB/2180495,精确匹配单只)、bond_issue(issue_info 必填之一,发行人名如 成都东方广益,与 bond_code 互斥,返回最新一只债)、symbol(credit_daily 必填,如 sh019623)issue_info 的 bond_code 与 bond_issue 互斥;给发行人名时按发行日期降序返回最新一只债代码。2180495.IB 已做精确过滤,不误命中同号段存单。query_convertible_bond — 可转债kind(overview/terms/history/issuer_finance)、file_pathsymbol(history 必填,如 sz128039,支持纯数字补前缀)、start_date/end_date(history 必填)、period(daily/min,默认 daily)、bond_code/stock_code(issuer_finance 二选一)、report_type(资产负债表/利润表/现金流量表,默认资产负债表)、keyword(overview 可选,字面过滤非正则)terms 合并集思录强赎与剩余期限。城投/非上市发行人 issuer_finance 返回引导性提示而非报错。bond_code,返回非上市提示;给转债代码 → 走 bond_code,自动解析正股返回报表;给正股代码(如 sh603938)→ 走 stock_code 直查(最快);给发行人名 → 先 query_bond(bond_issue=...) 归一化到债代码再判定。resolve_stock_code — 股票名称→代码keyword(股票简称或全称,如 茅台/贵州茅台酒股份有限公司)、file_pathstock_zh_a_spot_em() 全表简称 contains(仅简称有效)。城投/非上市发行人返回空候选(正常),提示用户改用简称或直接给代码。多候选时择一再调 query_stock。query_global_rates — 全球利率与波动率kind(us_treasury/fed_rate/dxy/vix)、file_pathstart_date/end_date(YYYY-MM-DD)、tenure(仅 us_treasury:all 默认 / 长端 2y/5y/10y/30y / 短端 1m/3m/4m/6m/1y/7y/20y)query_fx — 汇率kind(mid/bochina/usdcnh/cross)、file_path;bochina 另需 symbol(币种中文名如 美元,注意是"港币"非"港元")与起止日期;cross 需 pair(如 EUR/USD)currency(mid 过滤币种,如 usd,eur,缺省全部 25 币种)、start_date/end_datequery_spot — 商品现货kind(sge/sy)、file_path;sge 另需 symbol(如 Au99.99/Ag99.99/Au(T+D));sy 另需 symbols(如 ["CU","RB"])与起止日期dom_basis/dom_basis_rate)。align_series — 多序列对齐合并file_paths(≥2 份本库产出的 CSV,首列为 date/datetime/日期)、file_path(输出路径)columns(逐文件取值列,与 file_paths 等长,默认各取 close)、names(输出列名,默认文件名)、align(outer 默认并集 / inner 交集)、fill(none/ffill 前向填充)、resample(none/week/month)resample 每期保留最后一个实际交易日(非合成的期末标签),回测日期真实可成交;inner 交集为空时报错并列出各序列日期范围。query_trading_rules — 交易规则参数表market(a/etf/cffex/treasury_futures/margin/option/hk_connect/commodity_futures)、file_pathas_of(YYYY-MM-DD,缺省=今天→现行值)、parameter(子串过滤,如 印花税/涨跌幅,不分大小写只匹配参数名列)value、effective_from/effective_to 生效区间、source、confidence 等),confidence 四级含义:official=官方文号/公告、media=权威媒体或学术来源、to_verify=存疑待核、market_estimate=市场化参数时代参考值。market=commodity_futures 返回引导性提示行(商品期货参数随交易所每日结算调整,建议查交易所官网当日结算参数),不是报错。query_stock 给日期范围 → 读 CSV 预览展示统计 → 按需绘图。GLD/SPY)→ query_yfinance 选 period → 返回预览。NY.GDP.MKTP.CD / CPI FP.CPI.TOTL)→ query_worldbank → 返回表格。query_arxiv → 整理标题/作者/PDF 链接展示。query_stock/query_yfinance 落盘各 CSV → Agent 用 pandas 对齐日期、以首日收盘价为 100 计算归一化 → matplotlib 绘图保存 → 展示汇总表+图。可复用 demos/mcp_query_demo.py。当 tool 返回错误(Error calling ... 开头)时:
YYYY-MM-DD?market 对?代码是否带多余后缀?query_yfinance 限流/空 → 缩短 period 或 use_yfinance=true;query_stock 无数据 → 核对代码或换市场。~30 seconds. Free. No account. Every finding cites a rule and a line of evidence.