Context7
ส่งคู่มือการใช้ไลบรารีและเฟรมเวิร์กรุ่นล่าสุดให้ AI อ่านก่อนตอบ ช่วยให้โค้ดที่ AI เขียนไม่ใช้คำสั่งเก่าที่เลิกใช้แล้ว
คำอธิบายจากผู้ทำ (ภาษาอังกฤษตามต้นฉบับ)
Search and query 1,500+ OECD statistical datasets via SDMX. Keyless.
สามเรื่องนี้ไม่รวมเป็นคะแนนเดียว เพราะความเห็น การวัด และความนิยม เป็นคนละเรื่องกัน
ตัวนี้ยังไม่ได้เรียบเรียงเป็นภาษาไทย ด้านล่างคือข้อเท็จจริงที่เราอ่านจาก registry
เลือกโปรแกรม AI ที่คุณใช้ แล้วคัดลอกค่าตั้งไปวาง
MCP_LOG_LEVEL, OECD_DATAFRAME_DROP_ENABLEDต้องเตรียมก่อน
คุณใช้แอปไหน
เลือกแอปด้านบน เราจำไว้ให้ ครั้งหน้าปุ่มจะขึ้นว่า “ติดตั้งลง …”
ใช้ได้ทั้ง Claude บนเว็บ แอปคอมพิวเตอร์ และมือถือ:
https://oecd.caseyjhand.com/mcpเปิด Claude Desktop → Settings → Developer → Edit Config แล้ววางค่านี้ในไฟล์ claude_desktop_config.json
{
"mcpServers": {
"oecd": {
"command": "npx",
"args": [
"-y",
"@cyanheads/oecd-mcp-server"
],
"env": {
"MCP_LOG_LEVEL": "ใส่ค่าของคุณ",
"OECD_DATAFRAME_DROP_ENABLED": "ใส่ค่าของคุณ"
}
}
}
}พิมพ์คำสั่งนี้ใน Terminal
claude mcp add --transport http oecd https://oecd.caseyjhand.com/mcpclaude mcp add oecd --env MCP_LOG_LEVEL='ใส่ค่าของคุณ' --env OECD_DATAFRAME_DROP_ENABLED='ใส่ค่าของคุณ' -- npx -y @cyanheads/oecd-mcp-serverเติมค่าที่เว้นว่างไว้ก่อนรัน
วางในไฟล์ .cursor/mcp.json ของโปรเจกต์ หรือ ~/.cursor/mcp.json
{
"mcpServers": {
"oecd": {
"url": "https://oecd.caseyjhand.com/mcp"
}
}
}วางในไฟล์ .cursor/mcp.json ของโปรเจกต์ หรือ ~/.cursor/mcp.json
{
"mcpServers": {
"oecd": {
"command": "npx",
"args": [
"-y",
"@cyanheads/oecd-mcp-server"
],
"env": {
"MCP_LOG_LEVEL": "ใส่ค่าของคุณ",
"OECD_DATAFRAME_DROP_ENABLED": "ใส่ค่าของคุณ"
}
}
}
}เบราว์เซอร์จะถามก่อนเปิดแอป จากนั้นแอปแสดงค่าตั้งให้ตรวจแล้วกดยืนยัน ช่อง key เว้นว่างไว้ให้คุณใส่เอง
วางในไฟล์ .vscode/mcp.json ของโปรเจกต์
{
"servers": {
"oecd": {
"type": "http",
"url": "https://oecd.caseyjhand.com/mcp"
}
}
}วางในไฟล์ .vscode/mcp.json ของโปรเจกต์
{
"servers": {
"oecd": {
"type": "stdio",
"command": "npx",
"args": [
"-y",
"@cyanheads/oecd-mcp-server"
],
"env": {
"MCP_LOG_LEVEL": "ใส่ค่าของคุณ",
"OECD_DATAFRAME_DROP_ENABLED": "ใส่ค่าของคุณ"
}
}
}
}เบราว์เซอร์จะถามก่อนเปิดแอป จากนั้นแอปแสดงค่าตั้งให้ตรวจแล้วกดยืนยัน ช่อง key เว้นว่างไว้ให้คุณใส่เอง
ChatGPT ต่อได้เฉพาะ server ที่อยู่บนอินเทอร์เน็ต:
https://oecd.caseyjhand.com/mcpชื่อเมนูอาจต่างกันเล็กน้อยตามแพ็กเกจและรุ่นของแอป
ตัวเลือกเก็บในคุกกี้บนเครื่องนี้ ไม่ต้องมีบัญชี
MCP_LOG_LEVEL envOECD_DATAFRAME_DROP_ENABLED envค่าตั้งนี้สร้างจากข้อมูลใน registry ของผู้ทำ ถ้าไม่ตรงกับ README ให้เชื่อ README
ชื่อและคำอธิบายเครื่องมือตามที่ server ตอบมาเมื่อ 6 พ.ย. 2569 ผู้ทำเป็นคนเขียน ไม่ใช่เรา แสดงเป็นข้อความล้วน
oecd_list_agenciesList OECD SDMX agencies, the directorate each belongs to, and the number of dataflows each publishes. Use to discover agency IDs before filtering oecd_search_datasets by department.
oecd_search_datasetsSearch OECD dataflows by keyword or theme, matching against dataflow names and descriptions. Returns flow_ref identifiers, names, and agency IDs for use with oecd_get_dataset_info.
oecd_get_dataset_infoFetch a dataflow's dimensions, their order, and how to construct a query key. Returns per-dimension names, codelist references, and position in the dot-delimited key. Required before calling oecd_query_dataset to understand key structure.
oecd_get_dimension_valuesFetch the valid codes and labels for one dimension of a dataflow. Use to resolve human-readable names (countries, measures) to SDMX codes before querying with oecd_query_dataset. Pass query to match a code or label by substring — codelists run to a thousand-plus entries, and the
oecd_query_datasetFetch observations from an OECD dataflow filtered by a dimension key and optional time range. Returns decoded rows (one per observation) with dimension and attribute labels, and values already scaled by the observation unit multiplier. Large multi-country time-series spill to a D
oecd_dataframe_describeList tables and columns staged on a DataCanvas by a prior oecd_query_dataset spill. Call this before oecd_dataframe_query to discover exact table and column names for SQL. Unavailable when the server runs with DataCanvas disabled.
oecd_dataframe_queryRun a read-only SQL SELECT against OECD observation tables staged on a DataCanvas by oecd_query_dataset. Call oecd_dataframe_describe first to discover exact table and column names, then use this tool for aggregation, filtering, GROUP BY, JOIN, and window functions. Returns up to
เราตรวจจากข้อมูลที่ใครก็เปิดดูได้ ยังไม่ได้อ่านโค้ด ข้อที่ไม่เกี่ยวกับตัวนี้ไม่นับในตัวหาร · ตรวจเมื่อ 7 พ.ย. 2569
ชื่อใน registry ยืนยันด้วยบัญชี GitHub cyanheads ซึ่งเป็นเจ้าของ repo
ยังไม่ได้อ่านข้อมูล repo จาก GitHub
ยังไม่ได้อ่านข้อมูล repo จาก GitHub
ตอบกลับใน 547 ms (HTTP 200)
ไม่ต้องล็อกอิน
อ่านคำอธิบายเครื่องมือ 7 ตัวแล้ว ไม่พบคำสั่งแอบแฝงถึง AI
เทียบกับทุก server ที่ยังใช้งานในหมวดนี้ทั้งทะเบียน ดาวนับเฉพาะเมื่อผู้ลงทะเบียนเป็นเจ้าของ repo
จากการตรวจเบื้องต้นของเรา ผ่าน 3 จาก 3 ข้อที่ตรวจได้ เรายังไม่ได้อ่านโค้ด ก่อนใส่กุญแจหรือ token ให้ดูว่า server ขอสิทธิ์อะไร และเลือกกุญแจที่ทำได้เท่าที่จำเป็น
registry ไม่ได้ระบุว่าต้องใช้กุญแจ แต่บางตัวจะขอให้ล็อกอินตอนใช้ครั้งแรก
ได้ทั้งสองแบบ จะลงในเครื่องหรือต่อผ่านคลาวด์ก็ได้
repo บน GitHub มีการแก้โค้ดล่าสุด – และส่งรุ่นล่าสุด (0.6.1) เข้า registry 4 วันที่ผ่านมา
โปรแกรมที่รองรับ MCP เช่น Claude Desktop, Claude Code, Cursor และ VS Code ตัวนี้ต่อผ่าน URL จึงใช้กับโปรแกรมที่รับ remote MCP ได้ เช่น ChatGPT ที่เปิดโหมดนักพัฒนา
ในหมวดเดียวกันมี 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 รูปภาพ และสคริปต์ออกแล้ว ลิงก์จะพาออกนอกเว็บ
@cyanheads/oecd-mcp-server Search, explore, and query 1,500+ OECD statistical datasets (national accounts, employment, trade, education, health) from the OECD SDMX API via MCP. STDIO or Streamable HTTP. 8 Tools • 1 Resource • 1 Skill
Public Hosted Server: https://oecd.caseyjhand.com/mcp
OECD statistics across 1,500+ datasets on national accounts, employment, trade, education, and health. Search datasets, inspect their dimensions, query observations, and run SQL over large multi-country time series. No API key required.
Five discovery and data tools plus three DataCanvas tools for large query results:
| Tool | Description |
|---|---|
oecd_list_agencies | List OECD SDMX agencies with their directorate and the number of dataflows each publishes |
oecd_search_datasets | Search 1,500+ OECD dataflows by keyword or theme |
oecd_get_dataset_info | Fetch a dataflow's dimensions, key order, and codelist references |
oecd_get_dimension_values | Fetch valid codes and labels for one dimension (countries, measures, frequencies) |
oecd_query_dataset | Fetch observations filtered by dimension key and time range; spills large results to DataCanvas |
oecd_dataframe_describe | List DataCanvas tables and columns staged by a prior oecd_query_dataset spill |
oecd_dataframe_query | Run a read-only SQL SELECT against DataCanvas tables |
oecd_dataframe_drop | Drop a staged DataCanvas table or view once the analysis is done — opt-in via OECD_DATAFRAME_DROP_ENABLED=true |
| Resource | Description |
|---|---|
oecd://dataflow/{agency_id}/{flow_id} | Dimension metadata for a single OECD dataflow — same content as oecd_get_dataset_info |
All resource data is also reachable via tools. Use oecd_get_dataset_info for the same content.
| Skill | Description |
|---|---|
oecd-guide | Building SDMX keys, confirming which series a dataflow carries, and reading results without mixing breakdowns, units, or country aggregates. Served over MCP at skill://oecd-guide/SKILL.md |
oecd_list_agencies toolOECD.SDD.NAD) with its directorate name and dataflow count, sorted by countESTAT, IAEG-SDGs) carry no directorateoecd_search_datasets toolquery token-matched across dataflow names and descriptions; optional agency_id scope; limit (1–100) and offset paging with total_matchesflow_ref — the identifier every other tool takes — and matched_in (name, description, or both)oecd_get_dataset_info toolflow_ref; returns every dimension in key order with its concept name and codelist reference, plus a key_example for oecd_query_datasetinvalid_flow_ref for a string that is not a flow reference and dataflow_not_found for one OECD does not publishoecd_get_dimension_values toolflow_ref and dimension_id; optional query substring-matches both code and labellimit (1–500, default 50) and offset page the matches, with the full match count when more remainoecd_query_dataset toolflow_ref plus a dot-delimited key (+ for multiple values, empty segments as wildcards) and optional start_period / end_periodvalue is pre-multiplied by value_scaletruncated: true, canvas_id, and table_name; without a canvas every row stays in structuredContent and only the rendered table is capped (content_table_capped)notice naming the canvas and table: inspect columns with oecd_dataframe_describe, then use oecd_dataframe_query for SQL over the full result. Fitting results allocate no new canvas; an explicit canvas_id is checked before the download, so a stale one fails as canvas_not_found without spending an OECD request.oecd_dataframe_describe toolcanvas_id oecd_query_dataset returned; lists each staged table and view with its row count and column names and typesoecd_dataframe_query toolcanvas_id plus one read-only SQL SELECT; writes, DDL, and system-catalog access are rejectedlimit (default 100) returns up to 1,000 rows per call, within 1 MiB of row data; a limit from 1,001 to 10,000 is served at 1,000 with a noticetruncated: true marks a result with more rows than it returned, and its notice names how to reach the rest; row_count counts the rows returnedquery_timeoutoecd_dataframe_drop toolcanvas_id plus a table_name as oecd_dataframe_describe lists it; returns the dropped object's kind and the remaining_tablesOECD_DATAFRAME_DROP_ENABLED=trueoecd://dataflow/{agency_id}/{flow_id} resourceoecd_get_dataset_info, as application/json{flow_id} is {dsd_id}@{df_id} with @ encoded as %40 (e.g. oecd://dataflow/OECD.SDD.NAD/DSD_NAAG%40DF_NAAG_I), or the bare {df_id}Built 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.
OECD-specific:
AllDimensions observation mode — one-pass SDMX-JSON decoding into flat row objects, no nested series key reconstructionoecd_query_dataset materializes large observation sets (multi-country time-series) on a DuckDB DataCanvas for in-conversation SQL analytics; the oecd_dataframe_* tools work on it; DataCanvas is on by default and CANVAS_PROVIDER_TYPE=none disables itAgent-friendly output:
flow_ref from search flows directly into info, values, and query tools without reconstructiontruncated: true + canvas_id tells the agent to switch to SQL instead of parsing a truncated inline list{ REF_AREA: "United States", MEASURE: "Gross domestic product", UNIT_MULT: "Billions", value: 26054614000000, value_scale: 1000000000 }, not raw index arraysConnect to the hosted instance, no install:
claude mcp add --transport http oecd-mcp-server https://oecd.caseyjhand.com/mcp
Or run it locally:
claude mcp add oecd-mcp-server -- npx -y @cyanheads/oecd-mcp-server
For other clients, add this to the MCP config file:
{
"mcpServers": { "oecd-mcp-server": { "command": "npx", "args": ["-y", "@cyanheads/oecd-mcp-server"] } } }
No API key is needed — OECD SDMX is a free, public API. DataCanvas SQL analytics over large query results is on by default; set CANVAS_PROVIDER_TYPE=none to get capped inline previews instead. For Docker or a source build, see Running the server.
All configuration is validated at startup via Zod schemas in src/config/server-config.ts. Key environment variables:
| Variable | Description | Default |
|---|---|---|
OECD_BASE_URL | OECD SDMX REST API base URL. Must be an https origin that answers directly — no redirect is followed, so a plaintext http:// origin fails instead of being upgraded to https. | https://sdmx.oecd.org/public/rest |
OECD_TIMEOUT_MS | Per-request timeout in milliseconds. | 30000 |
CANVAS_PROVIDER_TYPE | Canvas engine. With duckdb, a large oecd_query_dataset result spills to a queryable table instead of just capping the rendered preview; with none, every row still comes back in structuredContent and only the rendered table is capped. | duckdb |
OECD_DATAFRAME_DROP_ENABLED | Set to true to register oecd_dataframe_drop. Off, the tool is listed as disabled and clients cannot call it. | false |
MCP_TRANSPORT_TYPE | Transport: stdio or http. | stdio |
MCP_HTTP_PORT | Port for HTTP server. | 3010 |
MCP_SESSION_MODE | HTTP session posture: stateful, stateless, or auto. The server declares stateless in source — it keeps no per-session state, and a DataCanvas handle is keyed by canvas_id — so set this only to override that. | stateless |
MCP_AUTH_MODE | Auth mode: none, jwt, or oauth. | none |
MCP_LOG_LEVEL | Log level (RFC 5424). | info |
LOGS_DIR | Directory for log files (Node.js only). | /logs |
LOG_TOOL_FAILURE_PAYLOADS | Log each failed tool call's arguments and result, redacted by key name and capped at LOG_TOOL_FAILURE_PAYLOAD_MAX_BYTES (default 16384). A secret inside a free-form value is not redacted. | false |
OTEL_ENABLED | Enable OpenTelemetry instrumentation. | false |
See .env.example for the full list of optional
ตัดมาแค่ช่วงต้น อ่านต่อใน repo