返回 Skill 列表
extension
分类: 开发与工程无需 API Key

columbia-clio

通过Blacklight JSON API搜索哥伦比亚大学图书馆的CLIO目录,查找书籍、期刊、手稿和其他馆藏。当用户想要查找哥伦比亚大学图书馆中的项目、检查书籍在哥伦比亚大学的可用性、按标题/作者/主题进行搜索,并通过格式/语言/位置进行分面过滤,或者检索包括索书号和馆藏数据在内的详细目录记录时,请使用此技能。提到哥伦比亚大学收藏或常春藤联盟图书馆馆藏时触发。

person作者: jakexiaohubgithub

Columbia CLIO Catalog Skill

Search Columbia University Libraries' catalog of books, journals, manuscripts, and more.

Critical: Things Claude Won't Know Without This Skill

CLIO has an undocumented but fully functional JSON API

CLIO runs on Blacklight (Solr-based). Append .json to catalog URLs for JSON responses. No API key required.

Search:  https://clio.columbia.edu/catalog.json?q=hamlet&per_page=10
Record:  https://clio.columbia.edu/catalog/{id}.json

Field-specific search uses search_field parameter

All fields: ?q=hamlet
Title only: ?q=hamlet&search_field=title
Author:     ?q=shakespeare&search_field=author

Facets use array bracket syntax

?f[format][]=Book
?f[language_facet][]=Chinese&f[format][]=Book

Available facets: format, language_facet, location_facet, subject_topic_facet, subject_geo_facet, subject_era_facet, subject_form_facet, pub_date_sort.

This is undocumented — be a good citizen

No rate limits are documented, but this is an unofficial API. Keep requests to 1/second max. The official bulk data is at https://lito.cul.columbia.edu/extracts/ColumbiaLibraryCatalog/full/ (MARCXML, CC0).

Key Search Parameters

| Param | Description | Example | |-------|-------------|---------| | q | Search query | q=dream+of+the+red+chamber | | search_field | Limit to field: title, author, or all | search_field=title | | per_page | Results per page (default ~10) | per_page=25 | | page | Page number | page=2 | | sort | Sort: pub_date_sort+desc, pub_date_sort+asc | sort=pub_date_sort+desc | | f[facet][] | Filter by facet value | f[format][]=Book |

Response Structure

{
  "response": {
    "docs": [
      {
        "id": "12345678",
        "title_display": "Hamlet",
        "author_display": "Shakespeare, William, 1564-1616",
        "format": ["Book"],
        "pub_year_display": ["2003"],
        "pub_name_display": ["Cambridge University Press"],
        "language_facet": ["English"],
        "isbn_display": ["9780521532525"],
        "location_call_number_id_display": ["Butler Stacks PR2807 .A2 T48 2003 "]
      }
    ],
    "facets": [ ... ],
    "pages": {
      "current_page": 1,
      "total_pages": 5330,
      "total_count": 10659,
      "next_page": 2
    }
  }
}

Key Document Fields

| Field | Description | |-------|-------------| | id | Catalog record ID | | title_display | Title | | author_display | Primary author | | author_facet | All authors (array) | | format | Format (Book, Online, Music, etc.) | | pub_year_display | Publication year(s) | | pub_name_display | Publisher | | pub_place_display | Place of publication | | language_facet | Language(s) | | isbn_display | ISBN(s) | | oclc_display | OCLC number(s) | | lccn_display | LCCN(s) | | subject_topic_facet | Subject terms | | location_call_number_id_display | Location + call number | | physical_description_display | Physical description |

Python Script

from scripts.clio_api import ColumbiaClioAPI
clio = ColumbiaClioAPI()

# Search
results = clio.search("hamlet", search_field="title", per_page=10)

# With facets
results = clio.search("chinese poetry", facets={"format": "Book", "language_facet": "Chinese"})

# Get single record
record = clio.get_record("12345678")

# Summarize
for r in results:
    print(clio.summarize(r))

Related Skills

  • harvard-library-catalog: Compare holdings across Harvard and Columbia
  • hathitrust-catalog: Use ISBNs/OCLCs from CLIO to check HathiTrust for digital versions
  • wikidata-search: Link OCLC numbers to Wikidata entities

Resources

  • references/api_reference.md — Complete field and facet reference
  • scripts/clio_api.py — Python client with search, record lookup, and faceted filtering