Context7
ส่งคู่มือการใช้ไลบรารีและเฟรมเวิร์กรุ่นล่าสุดให้ AI อ่านก่อนตอบ ช่วยให้โค้ดที่ AI เขียนไม่ใช้คำสั่งเก่าที่เลิกใช้แล้ว
คำอธิบายจากผู้ทำ (ภาษาอังกฤษตามต้นฉบับ)
Search inside scanned US newspapers and browse the Library of Congress catalogue. No API key.
สามเรื่องนี้ไม่รวมเป็นคะแนนเดียว เพราะความเห็น การวัด และความนิยม เป็นคนละเรื่องกัน
ตัวนี้ยังไม่ได้เรียบเรียงเป็นภาษาไทย ด้านล่างคือข้อเท็จจริงที่เราอ่านจาก registry
เลือกโปรแกรม AI ที่คุณใช้ แล้วคัดลอกค่าตั้งไปวาง
LOC_USER_AGENT, LOC_MIN_INTERVAL_MS, LOC_TIMEOUT_MS, LOC_NEWSPAPER_TIMEOUT_MS, LOC_LOG_LEVELต้องเตรียมก่อน
คุณใช้แอปไหน
เลือกแอปด้านบน เราจำไว้ให้ ครั้งหน้าปุ่มจะขึ้นว่า “ติดตั้งลง …”
ลิงก์ไปที่ไฟล์ของผู้ทำเอง เราไม่ได้เก็บหรือแพ็กใหม่ เปิดไฟล์แล้ว Claude Desktop จะติดตั้งให้
พิมพ์คำสั่งนี้ใน Terminal
claude mcp add libraryofcongress --env LOC_USER_AGENT='ใส่ค่าของคุณ' --env LOC_MIN_INTERVAL_MS='ใส่ค่าของคุณ' --env LOC_TIMEOUT_MS='ใส่ค่าของคุณ' --env LOC_NEWSPAPER_TIMEOUT_MS='ใส่ค่าของคุณ' --env LOC_LOG_LEVEL='ใส่ค่าของคุณ' -- npx -y mcp-libraryofcongressเติมค่าที่เว้นว่างไว้ก่อนรัน
วางในไฟล์ .cursor/mcp.json ของโปรเจกต์ หรือ ~/.cursor/mcp.json
{
"mcpServers": {
"libraryofcongress": {
"command": "npx",
"args": [
"-y",
"mcp-libraryofcongress"
],
"env": {
"LOC_USER_AGENT": "ใส่ค่าของคุณ",
"LOC_MIN_INTERVAL_MS": "ใส่ค่าของคุณ",
"LOC_TIMEOUT_MS": "ใส่ค่าของคุณ",
"LOC_NEWSPAPER_TIMEOUT_MS": "ใส่ค่าของคุณ",
"LOC_LOG_LEVEL": "ใส่ค่าของคุณ"
}
}
}
}เบราว์เซอร์จะถามก่อนเปิดแอป จากนั้นแอปแสดงค่าตั้งให้ตรวจแล้วกดยืนยัน ช่อง key เว้นว่างไว้ให้คุณใส่เอง
วางในไฟล์ .vscode/mcp.json ของโปรเจกต์
{
"servers": {
"libraryofcongress": {
"type": "stdio",
"command": "npx",
"args": [
"-y",
"mcp-libraryofcongress"
],
"env": {
"LOC_USER_AGENT": "ใส่ค่าของคุณ",
"LOC_MIN_INTERVAL_MS": "ใส่ค่าของคุณ",
"LOC_TIMEOUT_MS": "ใส่ค่าของคุณ",
"LOC_NEWSPAPER_TIMEOUT_MS": "ใส่ค่าของคุณ",
"LOC_LOG_LEVEL": "ใส่ค่าของคุณ"
}
}
}
}เบราว์เซอร์จะถามก่อนเปิดแอป จากนั้นแอปแสดงค่าตั้งให้ตรวจแล้วกดยืนยัน ช่อง key เว้นว่างไว้ให้คุณใส่เอง
ตัวนี้รันในเครื่องคุณ แต่ ChatGPT ต่อได้เฉพาะ server บนอินเทอร์เน็ต ลองเลือกแอปอื่น
ตัวเลือกเก็บในคุกกี้บนเครื่องนี้ ไม่ต้องมีบัญชี
LOC_USER_AGENT envLOC_MIN_INTERVAL_MS envLOC_TIMEOUT_MS envLOC_NEWSPAPER_TIMEOUT_MS envLOC_LOG_LEVEL envค่าตั้งนี้สร้างจากข้อมูลใน registry ของผู้ทำ ถ้าไม่ตรงกับ README ให้เชื่อ README
รันในเครื่องคุณ รายการเครื่องมือจะขึ้นในแอป AI หลังติดตั้ง
เราตรวจจากข้อมูลที่ใครก็เปิดดูได้ ยังไม่ได้อ่านโค้ด ข้อที่ไม่เกี่ยวกับตัวนี้ไม่นับในตัวหาร · ตรวจเมื่อ 8 พ.ย. 2569
ชื่อใน registry ยืนยันด้วยบัญชี GitHub smeet666 ซึ่งเป็นเจ้าของ repo
ยังไม่ได้อ่านข้อมูล repo จาก GitHub
ยังไม่ได้อ่านข้อมูล repo จาก GitHub
ตัวนี้รันบนเครื่องคุณ ไม่มี endpoint บนอินเทอร์เน็ต
ตัวนี้รันบนเครื่อง ใช้ค่าที่ตั้งในเครื่องแทน
รันในเครื่องคุณ เราอ่านรายการเครื่องมือได้เฉพาะตัวที่มี endpoint บนอินเทอร์เน็ต
เทียบกับทุก server ที่ยังใช้งานในหมวดนี้ทั้งทะเบียน ดาวนับเฉพาะเมื่อผู้ลงทะเบียนเป็นเจ้าของ repo
จากการตรวจเบื้องต้นของเรา ผ่าน 1 จาก 1 ข้อที่ตรวจได้ เรายังไม่ได้อ่านโค้ด ก่อนใส่กุญแจหรือ token ให้ดูว่า server ขอสิทธิ์อะไร และเลือกกุญแจที่ทำได้เท่าที่จำเป็น
registry ไม่ได้ระบุว่าต้องใช้กุญแจ แต่บางตัวจะขอให้ล็อกอินตอนใช้ครั้งแรก
รันบนเครื่องของคุณ โปรแกรม AI จะเปิด server ขึ้นมาเองเมื่อใช้ ข้อมูลไม่ต้องผ่านเซิร์ฟเวอร์ของผู้ทำ (ยกเว้นตัวที่ไปเรียกบริการออนไลน์ต่อ)
repo บน GitHub มีการแก้โค้ดล่าสุด – และส่งรุ่นล่าสุด (3.1.0) เข้า registry 9 วันที่ผ่านมา
โปรแกรมที่รองรับ MCP เช่น Claude Desktop, Claude Code, Cursor และ VS Code ตัวนี้ต้องมี Node.js, MCPB ในเครื่องด้วย
ในหมวดเดียวกันมี Context7, Codebase Memory, Exa
server หมวดเดียวกันจากผู้ทำคนอื่น เรียงตามดาว
อ่านการ์ด:★ ดาว GitHubiสามเสา: รีวิว · ผลตรวจ · การใช้งานiอัปเดต = วันที่ส่งรุ่นล่าสุดเข้า registryi
ส่งคู่มือการใช้ไลบรารีและเฟรมเวิร์กรุ่นล่าสุดให้ AI อ่านก่อนตอบ ช่วยให้โค้ดที่ AI เขียนไม่ใช้คำสั่งเก่าที่เลิกใช้แล้ว
Codebase knowledge graph for AI agents — 162 languages, sub-ms queries, 99% fewer tokens.
Connect AI agents to Exa for web search, content fetching, and multi-step research.
ส่วนนี้คัดจาก repo ของผู้ทำตามต้นฉบับ PopNx MCP ไม่ได้ตรวจหรือรับรองเนื้อหา ตัด HTML รูปภาพ และสคริปต์ออกแล้ว ลิงก์จะพาออกนอกเว็บ
The Library of Congress is the national library of the United States, and it publishes a large part of its holdings online: books, photographs, maps, sound recordings, manuscripts, and the pages of American newspapers going back to the eighteenth century. The newspaper pages have been scanned and run through optical character recognition, so the words printed on them can be searched. Curators also gather material into digital collections, each described and published as a body of its own.
This server connects a chat client to that library. You can search the words printed inside the newspapers, search the catalogue by title, creator, subject, place or language, read one record with its rights statement and where the original is held, and list the digital collections. It needs no API key and no account.
_Version française_
One-click install
Claude Code
claude mcp add libraryofcongress -- npx -y mcp-libraryofcongress
Claude Desktop, Cursor, and any client using the standard config format
{
"mcpServers": { "libraryofcongress": { "command": "npx", "args": ["-y", "mcp-libraryofcongress"] } } }
Node 24 or later is required, and no environment variable has to be set.
{
"mcpServers": { "libraryofcongress": { "command": "docker", "args": ["run", "-i", "--rm", "ghcr.io/smeet666/mcp-libraryofcongress:3.1.0"] } } }
-i keeps stdin open, which is where the protocol travels, and -t is left out because a TTY rewrites the stream. The container needs outbound HTTPS to www.loc.gov and chroniclingamerica.loc.gov, and nothing else: no volume, no port, no credential.
Download mcp-libraryofcongress-3.1.0.mcpb from the latest release and open it. A client that supports MCP bundles installs it on its own, with no npm and no configuration file to edit. The bundle carries its dependencies, so nothing is fetched at install time.
The ordinary path runs from a search to a record: a row carries an identifier, and get_item reads it.
| Tool | What it does |
|---|---|
search_newspapers | Searches the words printed inside scanned newspaper pages. |
search_items | Searches the catalogue by title, creator, subject, place or language. |
get_item | Reads one record, its rights and where the original is held. |
list_collections | Lists the digital collections curators published. |
search_newspapersSearches the text of scanned newspaper pages, which came off the page through optical character recognition.
| Argument | Type | Required | What it does |
|---|---|---|---|
query | string, 1 to 300 characters | yes | The words to look for on the pages. |
location | string, up to 120 characters | no | A place the paper was published in. |
publication | string, up to 200 characters | no | One newspaper. |
year_from | integer, 1000 to 9999 | no | Earliest year, inclusive. |
year_to | integer, 1000 to 9999 | no | Latest year, inclusive. |
limit | integer, 1 to 25, default 10 | no | Matches to serve. |
page | integer, 1 to 100, default 1 | no | Which page of matches. |
max_excerpt_chars | integer, 80 to 1200, default 300 | no | How much of a passage to serve. |
max_excerpts_per_match | integer, 1 to 10, default 3 | no | Passages served per matching page. |
In return: hits, each carrying identifier, which get_item takes; title; creator, which is the library that contributed the scan; year; page_number, the leaf within the issue; published_on; publication with the years the paper ran; state; excerpts; and excerpt_kind.
`excerpt_kind` decides what an excerpt is worth. A passage is the text around the words that matched, centred on them. A page_opening is the start of the leaf, sent because the text the Library returned with the row stops before those words appear: it does not carry the match, so quoting it quotes something else, and source_url opens the leaf with the query applied. `total` counts newspaper leaves, and it pages: it is never a count of how many times the words occur.
search_itemsSearches the catalogue, one kind of thing at a time.
| Argument | Type | Required | What it does |
|---|---|---|---|
query | string, 1 to 300 characters | yes | Words to look for. |
media_type | books, photos, maps, audio, manuscripts or newspapers | no | The catalogue to read. |
year_from | integer, 1000 to 9999 | no | Earliest year, inclusive. |
year_to | integer, 1000 to 9999 | no | Latest year, inclusive. |
subject | string, up to 120 characters | no | A subject heading. |
location | string, up to 120 characters | no | A place. |
language | string, up to 120 characters | no | A language, written in English. |
collection | string, up to 160 characters | no | One collection, as list_collections names it. |
online_only | boolean, default true | no | Keep the records available online. |
sort | relevance, newest, oldest or title, default relevance | no | How the rows are ordered. |
limit | integer, 1 to 50, default 10 | no | Rows to serve. |
page | integer, 1 to 100, default 1 | no | Which page of rows. |
In return: items, each carrying identifier, title, creator, year, date as published, which is often a range, is_collection and source_url. The Library keeps one catalogue per kind of thing, so a search without media_type reads the general one, and total counts the records matching there.
get_itemReads one record. The heavier parts are asked for rather than served by default, and a long description paginates.
| Argument | Type | Required | What it does |
|---|---|---|---|
identifier | string, 1 to 300 characters | yes | The identifier a row carries. |
sections | array of basic, citations, resources, full_metadata, default ["basic"] | no | Which parts to return. |
offset | integer, 0 or more, default 0 | no | Where to resume the description. |
max_description_chars | integer, 200 to 20000, default 2000 | no | How much of the description to serve. |
In return: the record with its title, creator, year, date, format and source_url, plus description, subjects, location, language, part_of for the collections and divisions it sits in, repository naming where the original is held, call_number and rights. A field the record leaves empty is null. next_offset continues a long description and is null at the end. An identifier can carry slashes: a single newspaper issue is named by its paper, its date and its edition together.
list_collectionsLists the digital collections, bodies of material a curator chose, described and published together.
| Argument | Type | Required | What it does |
|---|
| limit | integer, 1 to 50, default 20 | n
ตัดมาแค่ช่วงต้น อ่านต่อใน repo