MCP 오픈 라이브러리
AI 보조자가 도서 및 저자 정보를 검색할 수 있도록 하는 Open Library API를 위한 MCP(Model Context Protocol) 서버입니다.
개요
이 프로젝트는 AI 비서가 Open Library 와 상호 작용할 수 있는 도구를 제공하는 MCP 서버를 구현합니다. 제목으로 도서 정보를 검색하고, 이름으로 저자를 검색하고, Open Library 키를 사용하여 자세한 저자 정보를 가져오고, Open Library ID(OLID)를 사용하여 저자 사진의 URL을 가져올 수 있습니다. 서버는 도서 및 저자 정보에 대한 구조화된 데이터를 반환합니다.
Related MCP server: searchAPI-mcp
특징
제목으로 도서 검색 : 제목을 사용하여 도서를 검색합니다(
get_book_by_title).이름으로 저자 검색 : 저자 이름을 사용하여 저자를 검색합니다(
get_authors_by_name).저자 세부 정보 가져오기 : Open Library 키(
get_author_info)를 사용하여 특정 저자에 대한 자세한 정보를 검색합니다.저자 사진 가져오기 : Open Library ID(OLID)를 사용하여 저자 사진의 URL을 가져옵니다(
get_author_photo).책 표지 가져오기 : 다양한 식별자(ISBN, OCLC, LCCN, OLID, ID)를 사용하여 책 표지 이미지의 URL을 가져옵니다(
get_book_cover).
설치
Smithery를 통해 설치
Smithery 를 통해 Claude Desktop용 MCP Open Library를 자동으로 설치하려면:
지엑스피1
수동 설치
# Clone the repository
git clone https://github.com/your-username/mcp-open-library.git
cd mcp-open-library
# Install dependencies
npm install
# Build the project
npm run build용법
서버 실행
MCP Inspector를 사용하여 서버를 테스트할 수 있습니다.
npm run inspectorMCP 검사기에 액세스한 다음 도구를 테스트합니다.

MCP 클라이언트와 함께 사용
이 서버는 모델 컨텍스트 프로토콜(Model Context Protocol)을 구현하므로 Claude Desktop 과 같은 모든 MCP 호환 AI 어시스턴트 또는 클라이언트에서 사용할 수 있습니다. 이 서버는 다음과 같은 도구를 제공합니다.
get_book_by_title: 제목으로 책 정보 검색get_authors_by_name: 이름으로 저자 정보 검색get_author_info: Open Library Author Key를 사용하여 특정 저자에 대한 자세한 정보를 가져옵니다.get_author_photo: Open Library Author ID(OLID)를 사용하여 작성자 사진의 URL을 가져옵니다.get_book_cover: 특정 식별자(ISBN, OCLC, LCCN, OLID 또는 ID)를 사용하여 책 표지 이미지의 URL을 가져옵니다.
get_book_by_title
{
"title": "The Hobbit"
}get_book_by_title
[
{
"title": "The Hobbit",
"authors": [
"J. R. R. Tolkien"
],
"first_publish_year": 1937,
"open_library_work_key": "/works/OL45883W",
"edition_count": 120,
"cover_url": "https://covers.openlibrary.org/b/id/10581294-M.jpg"
}
]get_authors_by_name
{
"name": "J.R.R. Tolkien"
}get_authors_by_name
[
{
"key": "OL26320A",
"name": "J. R. R. Tolkien",
"alternate_names": [
"John Ronald Reuel Tolkien"
],
"birth_date": "3 January 1892",
"top_work": "The Hobbit",
"work_count": 648
}
]get_author_info
{
"author_key": "OL26320A"
}get_author_info
{
"name": "J. R. R. Tolkien",
"personal_name": "John Ronald Reuel Tolkien",
"birth_date": "3 January 1892",
"death_date": "2 September 1973",
"bio": "John Ronald Reuel Tolkien (1892-1973) was a major scholar of the English language, specializing in Old and Middle English. He served as the Rawlinson and Bosworth Professor of Anglo-Saxon and later the Merton Professor of English Language and Literature at Oxford University.",
"alternate_names": ["John Ronald Reuel Tolkien"],
"photos": [6791763],
"key": "/authors/OL26320A",
"remote_ids": {
"viaf": "95218067",
"wikidata": "Q892"
},
"revision": 43,
"last_modified": {
"type": "/type/datetime",
"value": "2023-02-12T05:50:22.881"
}
}get_author_photo
{
"olid": "OL26320A"
}get_author_photo
https://covers.openlibrary.org/a/olid/OL26320A-L.jpgget_book_cover
{
"key": "ISBN",
"value": "9780547928227",
"size": "L"
}get_book_cover
https://covers.openlibrary.org/b/isbn/9780547928227-L.jpgget_book_cover 도구는 다음 매개변수를 허용합니다.
key: 식별자 유형(ISBN,OCLC,LCCN,OLID또는ID중 하나)value: 식별자의 값size: 선택 가능한 커버 크기 (S는 소형,M은 중형,L대형, 기본값은L)
이 도구가 Claude Desktop에서 사용되는 예는 여기에서 볼 수 있습니다.
도커
Docker를 사용하여 이 MCP 서버를 테스트할 수 있습니다. 먼저 다음을 실행하세요.
docker build -t mcp-open-library .
docker run -p 8080:8080 mcp-open-library그런 다음 검사기를 통해 Docker 내에서 실행되는 서버를 테스트할 수 있습니다.
pnpm run inspector http://localhost:8080개발
프로젝트 구조
src/index.ts- 메인 서버 구현src/types.ts- TypeScript 유형 정의src/index.test.ts- 테스트 모음
사용 가능한 스크립트
npm run build- TypeScript 코드 빌드npm run watch- 변경 사항을 확인하고 다시 빌드합니다.npm test- 테스트 모음 실행npm run format- Prettier로 코드 포맷하기npm run inspector- 서버에 대해 MCP Inspector 실행
테스트 실행
npm test기여하다
기여를 환영합니다! 풀 리퀘스트를 제출해 주세요.