Lintsure
Compliance readiness checks for code: EU AI Act, GDPR, SOC 2, ISO 27001. Local. Not legal advice.
คำอธิบายจากผู้ทำ (ภาษาอังกฤษตามต้นฉบับ)
Search CERN Open Data, fetch records, files, analysis environments, CMS good-run lists, HLT paths.
สามเรื่องนี้ไม่รวมเป็นคะแนนเดียว เพราะความเห็น การวัด และความนิยม เป็นคนละเรื่องกัน
ตัวนี้ยังไม่ได้เรียบเรียงเป็นภาษาไทย ด้านล่างคือข้อเท็จจริงที่เราอ่านจาก registry
เลือกโปรแกรม AI ที่คุณใช้ แล้วคัดลอกค่าตั้งไปวาง
MCP_LOG_LEVELต้องเตรียมก่อน
คุณใช้แอปไหน
เลือกแอปด้านบน เราจำไว้ให้ ครั้งหน้าปุ่มจะขึ้นว่า “ติดตั้งลง …”
ใช้ได้ทั้ง Claude บนเว็บ แอปคอมพิวเตอร์ และมือถือ:
https://cern-opendata.caseyjhand.com/mcpเปิด Claude Desktop → Settings → Developer → Edit Config แล้ววางค่านี้ในไฟล์ claude_desktop_config.json
{
"mcpServers": {
"cern-opendata": {
"command": "npx",
"args": [
"-y",
"@cyanheads/cern-opendata-mcp-server"
],
"env": {
"MCP_LOG_LEVEL": "ใส่ค่าของคุณ"
}
}
}
}พิมพ์คำสั่งนี้ใน Terminal
claude mcp add --transport http cern-opendata https://cern-opendata.caseyjhand.com/mcpclaude mcp add cern-opendata --env MCP_LOG_LEVEL='ใส่ค่าของคุณ' -- npx -y @cyanheads/cern-opendata-mcp-serverเติมค่าที่เว้นว่างไว้ก่อนรัน
วางในไฟล์ .cursor/mcp.json ของโปรเจกต์ หรือ ~/.cursor/mcp.json
{
"mcpServers": {
"cern-opendata": {
"url": "https://cern-opendata.caseyjhand.com/mcp"
}
}
}วางในไฟล์ .cursor/mcp.json ของโปรเจกต์ หรือ ~/.cursor/mcp.json
{
"mcpServers": {
"cern-opendata": {
"command": "npx",
"args": [
"-y",
"@cyanheads/cern-opendata-mcp-server"
],
"env": {
"MCP_LOG_LEVEL": "ใส่ค่าของคุณ"
}
}
}
}เบราว์เซอร์จะถามก่อนเปิดแอป จากนั้นแอปแสดงค่าตั้งให้ตรวจแล้วกดยืนยัน ช่อง key เว้นว่างไว้ให้คุณใส่เอง
วางในไฟล์ .vscode/mcp.json ของโปรเจกต์
{
"servers": {
"cern-opendata": {
"type": "http",
"url": "https://cern-opendata.caseyjhand.com/mcp"
}
}
}วางในไฟล์ .vscode/mcp.json ของโปรเจกต์
{
"servers": {
"cern-opendata": {
"type": "stdio",
"command": "npx",
"args": [
"-y",
"@cyanheads/cern-opendata-mcp-server"
],
"env": {
"MCP_LOG_LEVEL": "ใส่ค่าของคุณ"
}
}
}
}เบราว์เซอร์จะถามก่อนเปิดแอป จากนั้นแอปแสดงค่าตั้งให้ตรวจแล้วกดยืนยัน ช่อง key เว้นว่างไว้ให้คุณใส่เอง
ChatGPT ต่อได้เฉพาะ server ที่อยู่บนอินเทอร์เน็ต:
https://cern-opendata.caseyjhand.com/mcpชื่อเมนูอาจต่างกันเล็กน้อยตามแพ็กเกจและรุ่นของแอป
ตัวเลือกเก็บในคุกกี้บนเครื่องนี้ ไม่ต้องมีบัญชี
MCP_LOG_LEVEL envค่าตั้งนี้สร้างจากข้อมูลใน registry ของผู้ทำ ถ้าไม่ตรงกับ README ให้เชื่อ README
ชื่อและคำอธิบายเครื่องมือตามที่ server ตอบมาเมื่อ 7 พ.ย. 2569 ผู้ทำเป็นคนเขียน ไม่ใช่เรา แสดงเป็นข้อความล้วน
cern_opendata_search_recordsSearch the CERN Open Data Portal's datasets, software, environments, documentation and supplementary records with exact-vocabulary filters and an optional full-text query. The filters are experiment, record type, physics category, keyword, collision energy and type, file format,
cern_opendata_get_recordsFetch full metadata for 1-20 records in one call, by recid, DOI, CMS dataset path (/Primary/Era/TIER) or documentation slug. Returns the description, run periods, collision and distribution details, related records, a software-environment summary, the license and a ready citation
cern_opendata_list_filesList one record's files: its file indexes (groups of up to ~1,500 files) with their XRootD URI-list URLs, and per file the XRootD URI, HTTPS download URL, size, adler32 checksum and availability. Without index, returns the record's indexes and its regular files; with index, reads
cern_opendata_get_analysis_envAssemble what is needed to analyse a record: its container images, CMSSW release and global tag; the condition-data, VM and validated-run records for its run periods; example software that declares it works with the record; and quoted sections of the guides the record links (the
cern_opendata_get_validated_runsGet a CMS validated-run (good-run) list, which certifies the luminosity sections that are good for physics in each run. Select it by a CMS collision dataset recid, a validated-run list recid, or a run period such as Run2012B (give exactly one of recid and run_period). Choose the
cern_opendata_search_trigger_pathsLook up CMS High-Level Trigger paths by exact name (HLT_IsoMu24) or prefix pattern (HLT_IsoMu*), optionally for one data-taking year. Paths outside the HLT_ family, such as AlCa_EcalPi0, DST_ and DQM_ paths, output modules and HLTriggerFinalPath, are found by their own names, in
cern_opendata_list_referenceDecode the vocabulary the other cern_opendata tools accept: experiments, record types, collision energies and types, file formats and data tiers, availability states, physics categories, LHCb magnet polarities and stripping streams and versions, identifier forms, query syntax, li
เราตรวจจากข้อมูลที่ใครก็เปิดดูได้ ยังไม่ได้อ่านโค้ด ข้อที่ไม่เกี่ยวกับตัวนี้ไม่นับในตัวหาร · ตรวจเมื่อ 8 พ.ย. 2569
ชื่อใน registry ยืนยันด้วยบัญชี GitHub cyanheads ซึ่งเป็นเจ้าของ repo
ยังไม่ได้อ่านข้อมูล repo จาก GitHub
ยังไม่ได้อ่านข้อมูล repo จาก GitHub
ตอบกลับใน 55 ms (HTTP 200)
ไม่ต้องล็อกอิน
อ่านคำอธิบายเครื่องมือ 7 ตัวแล้ว ไม่พบคำสั่งแอบแฝงถึง AI
เทียบกับทุก server ที่ยังใช้งานในหมวดนี้ทั้งทะเบียน ดาวนับเฉพาะเมื่อผู้ลงทะเบียนเป็นเจ้าของ repo
จากการตรวจเบื้องต้นของเรา ผ่าน 3 จาก 3 ข้อที่ตรวจได้ เรายังไม่ได้อ่านโค้ด ก่อนใส่กุญแจหรือ token ให้ดูว่า server ขอสิทธิ์อะไร และเลือกกุญแจที่ทำได้เท่าที่จำเป็น
registry ไม่ได้ระบุว่าต้องใช้กุญแจ แต่บางตัวจะขอให้ล็อกอินตอนใช้ครั้งแรก
ได้ทั้งสองแบบ จะลงในเครื่องหรือต่อผ่านคลาวด์ก็ได้
repo บน GitHub มีการแก้โค้ดล่าสุด – และส่งรุ่นล่าสุด (0.3.0) เข้า registry 8 วันที่ผ่านมา
โปรแกรมที่รองรับ MCP เช่น Claude Desktop, Claude Code, Cursor และ VS Code ตัวนี้ต่อผ่าน URL จึงใช้กับโปรแกรมที่รับ remote MCP ได้ เช่น ChatGPT ที่เปิดโหมดนักพัฒนา
ในหมวดเดียวกันมี Lintsure, INDEC Argentina (no oficial), EcuDataMCP
server หมวดเดียวกันจากผู้ทำคนอื่น เรียงตามดาว
อ่านการ์ด:★ ดาว GitHubiสามเสา: รีวิว · ผลตรวจ · การใช้งานiอัปเดต = วันที่ส่งรุ่นล่าสุดเข้า registryi
Compliance readiness checks for code: EU AI Act, GDPR, SOC 2, ISO 27001. Local. Not legal advice.
Argentina's official statistics (INDEC): inflation, wages, poverty, trade, population. No signup.
Ecuador's open government data for AI assistants: CKAN, SRI, BCE, INEC, Supercias, SERCOP and more.
ส่วนนี้คัดจาก repo ของผู้ทำตามต้นฉบับ PopNx MCP ไม่ได้ตรวจหรือรับรองเนื้อหา ตัด HTML รูปภาพ และสคริปต์ออกแล้ว ลิงก์จะพาออกนอกเว็บ
@cyanheads/cern-opendata-mcp-server Search CERN Open Data, fetch records, files, analysis environments, CMS good-run lists, HLT paths via MCP. STDIO or Streamable HTTP. 7 Tools • 1 Record Resource • 1 Agent Skill
Public Hosted Server: https://cern-opendata.caseyjhand.com/mcp
Particle-physics data from the CERN Open Data Portal: collision and simulated datasets, analysis software, and documentation from ALICE, ATLAS, CMS, LHCb, and more. Search with live facet counts, open records with license and citation, list data files, assemble a record's analysis environment, and look up CMS good-run lists and trigger paths. Runs as a stdio process, a local Streamable HTTP server, or the public hosted endpoint above.
| Tool | Description |
|---|---|
cern_opendata_search_records | Search datasets, software, environments, documentation and supplementary records with exact-vocabulary filters and live facet counts |
cern_opendata_get_records | Fetch full metadata for up to 20 records a call by recid, DOI, CMS dataset path or documentation slug, with license and citation |
cern_opendata_list_files | Page through a record's file indexes and files: XRootD URIs, HTTPS URLs, sizes, checksums, tape availability |
cern_opendata_get_analysis_env | Assemble a record's analysis environment: container images, CMSSW release, global tag, linked environment and software records, guide sections |
cern_opendata_get_validated_runs | Get a CMS validated-run (good-run) list for a dataset, a list or a run period, with luminosity-section ranges |
cern_opendata_search_trigger_paths | Look up CMS High-Level Trigger paths by name or prefix, parsed into run ranges, versions and L1 seeds |
cern_opendata_list_reference | Decode the vocabulary the other tools accept: experiments, record types, energies, formats, physics categories, LHCb stripping, identifiers, query syntax, licensing, run periods |
| Resource | Description |
|---|---|
cern-opendata://record/{recid} | One record's metadata, license and citation, in the cern_opendata_get_records record shape |
Tool-only clients get the same data from cern_opendata_get_records.
cern-opendata-guide connects dataset discovery, file indexes, analysis environments, CMS certification and trigger evidence. It covers identifier sources and checks to make before treating a result as complete. The guide ships with plugin installs, npm, Docker and the Claude Desktop bundle. MCP clients can discover it through the Skills extension and its SDK-generated skill resources, alongside the record resource above. No prompts are registered.
cern_opendata_search_records toolquery (an OpenSearch query_string, up to 500 characters) plus OR-list filters type, experiment, category (physics category, Higgs Physics::Standard Model), keywords, collision_energy, collision_type, file_type, availability, collection, and the LHCb magnet_polarity, stripping_stream and stripping_version, each an array of values; year_from/year_to and min_events/max_events bound the data-taking year and event countsort (bestmatch, mostrecent for newest date_published first, title, title_desc), limit 1–50 (default 10; a larger value, up to 10,000, is served at 50 with a notice) and page from 1, counting pages of the limit applied; page × limit past 10,000 fails as page_window_exceededhits with recids, plus thirteen live facets that each ignore their own filter (type and category with up to 10 secondary values each, and subtypes_other_count or subcategories_other_count when the portal cuts that list); applied_filters echoes what ran, and values outside the verified vocabulary appear under unrecognized_valuescern_opendata_get_records toolids: up to 100 recids, DOIs, CMS dataset paths (/Primary/Era/TIER) or documentation slugs, mixed in one array; the first 20 distinct are looked up and the rest returned in deferredlicense with its basis (record, cern_terms_default, not_stated) and, when it has a DOI, a ready citationbody_offset with that one id reads on from the body_next_offset the last slice returneddeferred, ahead of any ids past the first 20, to pass back as idsvariables dictionary (name, type, unit, description), a physics category, pile-up (pileup_html, with the pile-up datasets under links), keywords, and the LHCb magnet_polarity and stripping stream and versionmissing with interpreted_as and guidance instead of failing the call; file lists come from cern_opendata_list_filescern_opendata_list_files toolrecid required; without index, returns the record's file indexes and regular files, and with an index key, that index's files, read without the rest of the recordlimit 1–500 (default 50; a larger value, up to 10,000, is served at 500 with a notice), continued with next_cursor; each file carries xrootd_uri, size_in_bytes, checksum and availability, an https_url when one can be built from its key or EOS path, and key or filename as the portal states them, and each index a uri_list_url listing every XRootD URI in iton demand sit on tape and must be requested on the record's portal page first; an umbrella record with no files of its own returns its child recids under childrencern_opendata_get_analysis_env toolrecid required; software carries the record's own container images, CMSSW release, global tag and environment recidenvironment_records (condition, VM, validation) for the record's run periods and example_software that declares it works with the record, up to 50 between them; guides quotes the linked section of the first two portal guides, each capped at 12,000 characters, with the [label]: url reference definitions the quote links through from elsewhere in the guide, and a cut names the cern_opendata_get_records body_offset that reads on from itseparately_licensed: true; linked records or guides that can't be read leave a notice instead of failing the callcern_opendata_get_validated_runs toolrecid (a CMS collision dataset or a validated-run list) or run_period (Run2012B; 2012B also matches); variant full or muons_only; run_min/run_max; limit 1–2000 (default 200; a larger value, up to 10,000, is served at 2000 with a notice)recid bounds the runs to the dataset's first and last listed run, echoed in run_bounds; when several lists match, matched_lists names them and no runs are readlumi_sections and lumi_ranges; list.https_url downloads the whole list file. CMS only: other records fail as no_validated_runscern_opendata_search_trigger_paths toolpath: an exact name (HLT_IsoMu24, AlCa_EcalPi0) or a prefix with one trailing * (HLT_IsoMu*); a name without the HLT_ prefix is matched against record path names in the case given and also searched with HLT_ added, and a _v version suffix is dropped; optional year, limit 1–50 (default 10; a larger value, up to 10,000, is served at 50 with a notice) and pagedatasets its title names, first_seen, last_seen, per-version run ranges with their l1_seed, and HLT menu record links; parsed: false marks a record to read from its abstract_htmlcern_opendata_list_reference tooltopic: experiments, record_types, collision_energies, collision_types, file_types, availability, categories, lhcb, identifiers, query_syntax, licensing or run_periods; omit it for every tablecategories, lhcb and run_periods are dated snapshots, while the search facets and cern_opendata_get_validated_runs read the live portalcern-opendata://record/{recid} resourcerecid (6004, or a prefixed recid such as atlas-160006; leading zeros ignored) as application/json, in the cern_opendata_get_records record shape: metadata (variable dictionary, physics category, pile-up and LHCb run conditions included), license and citation, without file listsrecid comes from cern_opendata_search_records; reads carry a 15-minute public cache hintBuilt on @cyanheads/mcp-ts-core: stdio and Streamable HTTP transports, pluggable auth (none / jwt / oauth), swappable storage (in-memory, filesystem, Supabase, Cloudflare KV/R2/D1), structured logging with optional OpenTelemetry tracing.
CERN Open Data-specific:
13 tev → 13TeV, lhcb → LHCb, Pb-Pb → PbPb, dataset/collision → Dataset::Collision); unknown values are sent as given and flaggedondemand) records are included in every search and lookup, where the portal otheตัดมาแค่ช่วงต้น อ่านต่อใน repo