数据接口 · 查询与调用
底层是开源软件 Datasette(Apache-2.0)只读直挂 SQLite;上面一层是本引擎自带的 REST + OpenAPI + MCP。全部 GET、CORS 全开、每分钟 120 次限流、30 秒缓存。
一、REST 接口(机器调用,带 OpenAPI 契约)
| 接口 | 说明 |
|---|---|
/edukb/api/stats | 各表条数与分面(学校 203,431 / 高校 5,065 / 排名 2,000 / 专业 839) |
/edukb/api/schools | qprovincecitycountylevellimitoffset |
/edukb/api/schools/{code} | 按 10 位学校代码取单条 |
/edukb/api/cities | 省市县区索引(带学校数),传 province 时同时返回该省的市与县区 |
/edukb/api/universities | qcountry,中英文名都能搜 |
/edukb/api/rankings | countryrank_minrank_max |
/edukb/api/majors | qdiscipline |
/edukb/api/export.csv | 按当前筛选导出 CSV(table=schools/universities/rankings/majors) |
/edukb/api/openapi.json | OpenAPI 3.1 契约,可直接喂给 Swagger / 代码生成器 |
curl "https://e.aixgn.cn/edukb/api/schools?city=福州市&level=高中&limit=5" curl "https://e.aixgn.cn/edukb/api/cities?province=福建" curl "https://e.aixgn.cn/edukb/api/universities?q=中国科学院大学"
二、Datasette:任意 SQL 与表格 JSON / CSV
| 用法 | 返回 |
|---|---|
/edukb/data/edukb/schools.json?city=福州市&_size=20 | 单表 JSON(带行) |
/edukb/data/edukb/schools.csv?city=福州市 | 单表 CSV |
/edukb/data/edukb.json?sql=…&_shape=array | 任意只读 SQL 的结果(数组) |
/edukb/data/edukb/search_schools?q=实验小学 | 预置查询:搜学校(≈搜高校 / 搜专业) |
/edukb/data/edukb | 浏览器界面:分面筛选、翻页、导出 |
curl -G --data-urlencode "sql=select city,count(*) n from schools where province='福建' and city is not null group by city order by n desc" \
--data "_shape=array" "https://e.aixgn.cn/edukb/data/edukb.json"
注:curl 传中文查询必须 -G --data-urlencode,否则服务端会把裸字节判为非法请求。
三、MCP(智能体直接调用)
同一份数据的 8 个工具,JSON-RPC 2.0,端点 POST /edukb/mcp:
edu_search_schools · edu_get_school · edu_search_universities · edu_ranking edu_university_detail · edu_coverage · edu_region_grid · edu_rank_bands
curl -X POST https://e.aixgn.cn/edukb/mcp -H 'Content-Type: application/json' \
-d '{"jsonrpc":"2.0","id":1,"method":"tools/list"}'
数据口径
学校 203,431(31 省,教育部公开名录口径);高校 5,065(CWUR 2,000 + 教育部 3,196),中国高校均有中文名;CWUR 2026 排名 2,000 条(中国 360);本科专业 839 个 / 90 专业类(官方 845,差额 6 个属军事学门类未公开)。city 覆盖 88.2%、county 78.8%,按校名中的行政区划建制名回填,未含区划词者留空不猜。