Supabase
server ทางการของ Supabase ให้ AI สร้างตาราง ถามข้อมูล และดูการตั้งค่าโปรเจกต์ในฐานข้อมูล Supabase ของคุณ
คำอธิบายจากผู้ทำ (ภาษาอังกฤษตามต้นฉบับ)
UN FAOSTAT global food & agriculture statistics over a local SQLite mirror, via MCP.
สามเรื่องนี้ไม่รวมเป็นคะแนนเดียว เพราะความเห็น การวัด และความนิยม เป็นคนละเรื่องกัน
ตัวนี้ยังไม่ได้เรียบเรียงเป็นภาษาไทย ด้านล่างคือข้อเท็จจริงที่เราอ่านจาก registry
เลือกโปรแกรม AI ที่คุณใช้ แล้วคัดลอกค่าตั้งไปวาง
FAOSTAT_DOMAINS, FAOSTAT_MIRROR_PATH, FAOSTAT_BULK_BASE_URL, CANVAS_PROVIDER_TYPE, FAOSTAT_DATAFRAME_DROP_ENABLED, MCP_LOG_LEVELต้องเตรียมก่อน
คุณใช้แอปไหน
เลือกแอปด้านบน เราจำไว้ให้ ครั้งหน้าปุ่มจะขึ้นว่า “ติดตั้งลง …”
ใช้ได้ทั้ง Claude บนเว็บ แอปคอมพิวเตอร์ และมือถือ:
https://faostat.caseyjhand.com/mcpเปิด Claude Desktop → Settings → Developer → Edit Config แล้ววางค่านี้ในไฟล์ claude_desktop_config.json
{
"mcpServers": {
"faostat": {
"command": "npx",
"args": [
"-y",
"@cyanheads/faostat-mcp-server"
],
"env": {
"FAOSTAT_DOMAINS": "ใส่ค่าของคุณ",
"FAOSTAT_MIRROR_PATH": "ใส่ค่าของคุณ",
"FAOSTAT_BULK_BASE_URL": "ใส่ค่าของคุณ",
"CANVAS_PROVIDER_TYPE": "ใส่ค่าของคุณ",
"FAOSTAT_DATAFRAME_DROP_ENABLED": "ใส่ค่าของคุณ",
"MCP_LOG_LEVEL": "ใส่ค่าของคุณ"
}
}
}
}พิมพ์คำสั่งนี้ใน Terminal
claude mcp add --transport http faostat https://faostat.caseyjhand.com/mcpclaude mcp add faostat --env FAOSTAT_DOMAINS='ใส่ค่าของคุณ' --env FAOSTAT_MIRROR_PATH='ใส่ค่าของคุณ' --env FAOSTAT_BULK_BASE_URL='ใส่ค่าของคุณ' --env CANVAS_PROVIDER_TYPE='ใส่ค่าของคุณ' --env FAOSTAT_DATAFRAME_DROP_ENABLED='ใส่ค่าของคุณ' --env MCP_LOG_LEVEL='ใส่ค่าของคุณ' -- npx -y @cyanheads/faostat-mcp-serverเติมค่าที่เว้นว่างไว้ก่อนรัน
วางในไฟล์ .cursor/mcp.json ของโปรเจกต์ หรือ ~/.cursor/mcp.json
{
"mcpServers": {
"faostat": {
"url": "https://faostat.caseyjhand.com/mcp"
}
}
}วางในไฟล์ .cursor/mcp.json ของโปรเจกต์ หรือ ~/.cursor/mcp.json
{
"mcpServers": {
"faostat": {
"command": "npx",
"args": [
"-y",
"@cyanheads/faostat-mcp-server"
],
"env": {
"FAOSTAT_DOMAINS": "ใส่ค่าของคุณ",
"FAOSTAT_MIRROR_PATH": "ใส่ค่าของคุณ",
"FAOSTAT_BULK_BASE_URL": "ใส่ค่าของคุณ",
"CANVAS_PROVIDER_TYPE": "ใส่ค่าของคุณ",
"FAOSTAT_DATAFRAME_DROP_ENABLED": "ใส่ค่าของคุณ",
"MCP_LOG_LEVEL": "ใส่ค่าของคุณ"
}
}
}
}เบราว์เซอร์จะถามก่อนเปิดแอป จากนั้นแอปแสดงค่าตั้งให้ตรวจแล้วกดยืนยัน ช่อง key เว้นว่างไว้ให้คุณใส่เอง
วางในไฟล์ .vscode/mcp.json ของโปรเจกต์
{
"servers": {
"faostat": {
"type": "http",
"url": "https://faostat.caseyjhand.com/mcp"
}
}
}วางในไฟล์ .vscode/mcp.json ของโปรเจกต์
{
"servers": {
"faostat": {
"type": "stdio",
"command": "npx",
"args": [
"-y",
"@cyanheads/faostat-mcp-server"
],
"env": {
"FAOSTAT_DOMAINS": "ใส่ค่าของคุณ",
"FAOSTAT_MIRROR_PATH": "ใส่ค่าของคุณ",
"FAOSTAT_BULK_BASE_URL": "ใส่ค่าของคุณ",
"CANVAS_PROVIDER_TYPE": "ใส่ค่าของคุณ",
"FAOSTAT_DATAFRAME_DROP_ENABLED": "ใส่ค่าของคุณ",
"MCP_LOG_LEVEL": "ใส่ค่าของคุณ"
}
}
}
}เบราว์เซอร์จะถามก่อนเปิดแอป จากนั้นแอปแสดงค่าตั้งให้ตรวจแล้วกดยืนยัน ช่อง key เว้นว่างไว้ให้คุณใส่เอง
ChatGPT ต่อได้เฉพาะ server ที่อยู่บนอินเทอร์เน็ต:
https://faostat.caseyjhand.com/mcpชื่อเมนูอาจต่างกันเล็กน้อยตามแพ็กเกจและรุ่นของแอป
ตัวเลือกเก็บในคุกกี้บนเครื่องนี้ ไม่ต้องมีบัญชี
FAOSTAT_DOMAINS envFAOSTAT_MIRROR_PATH envFAOSTAT_BULK_BASE_URL envCANVAS_PROVIDER_TYPE envFAOSTAT_DATAFRAME_DROP_ENABLED envMCP_LOG_LEVEL envค่าตั้งนี้สร้างจากข้อมูลใน registry ของผู้ทำ ถ้าไม่ตรงกับ README ให้เชื่อ README
ชื่อและคำอธิบายเครื่องมือตามที่ server ตอบมาเมื่อ 6 พ.ย. 2569 ผู้ทำเป็นคนเขียน ไม่ใช่เรา แสดงเป็นข้อความล้วน
faostat_list_domainsDiscover FAOSTAT statistical domains (production, trade, food balances, food security, land use, agri-emissions, prices, value) with their codes, descriptions, last-update date, upstream row count, and local index status. Every query keys on a domain code from here. The `indexed`
faostat_resolve_codesResolve labels to the numeric codes or exact alphanumeric item identities faostat_query_observations needs: areas (countries/regions), items (commodities), and elements (metrics). Use query for full-text matching, name_contains for substring matching, code or code_text for exact
faostat_query_observationsQuery a FAOSTAT domain's data cube by area(s), item(s), element(s), sources, and year range, returning values with units and data-quality flags. Resolve numeric codes or exact alphanumeric item identities with faostat_resolve_codes; element resolution accepts item selectors and r
faostat_commodity_profileAssemble a global profile for one QCL item in a single call: top-producing countries, the annual production trend, and trade flows (top exporters and importers). Supply item_code or item_query; code wins when both are supplied. A query selects a unique normalized exact label, oth
faostat_dataframe_queryRun a single-statement SELECT against canvas tables staged by faostat_query_observations and faostat_commodity_profile (faostat_xxxxxxxx). Use DuckDB joins, aggregates, window functions, and CTEs for rankings and time-series analysis. Item groups can overlap their members even wi
faostat_dataframe_describeList the canvas tables (faostat_xxxxxxxx) staged by faostat_query_observations and faostat_commodity_profile, each with its source tool, the query parameters that produced it, creation/expiry timestamps, row count, and column schema. Call this before faostat_dataframe_query to di
เราตรวจจากข้อมูลที่ใครก็เปิดดูได้ ยังไม่ได้อ่านโค้ด ข้อที่ไม่เกี่ยวกับตัวนี้ไม่นับในตัวหาร · ตรวจเมื่อ 7 พ.ย. 2569
ชื่อใน registry ยืนยันด้วยบัญชี GitHub cyanheads ซึ่งเป็นเจ้าของ repo
ยังไม่ได้อ่านข้อมูล repo จาก GitHub
ยังไม่ได้อ่านข้อมูล repo จาก GitHub
ตอบกลับใน 202 ms (HTTP 200)
ไม่ต้องล็อกอิน
อ่านคำอธิบายเครื่องมือ 6 ตัวแล้ว ไม่พบคำสั่งแอบแฝงถึง AI
เทียบกับทุก server ที่ยังใช้งานในหมวดนี้ทั้งทะเบียน ดาวนับเฉพาะเมื่อผู้ลงทะเบียนเป็นเจ้าของ repo
จากการตรวจเบื้องต้นของเรา ผ่าน 3 จาก 3 ข้อที่ตรวจได้ เรายังไม่ได้อ่านโค้ด ก่อนใส่กุญแจหรือ token ให้ดูว่า server ขอสิทธิ์อะไร และเลือกกุญแจที่ทำได้เท่าที่จำเป็น
registry ไม่ได้ระบุว่าต้องใช้กุญแจ แต่บางตัวจะขอให้ล็อกอินตอนใช้ครั้งแรก
ได้ทั้งสองแบบ จะลงในเครื่องหรือต่อผ่านคลาวด์ก็ได้
repo บน GitHub มีการแก้โค้ดล่าสุด – และส่งรุ่นล่าสุด (0.6.0) เข้า registry 3 วันที่ผ่านมา
โปรแกรมที่รองรับ MCP เช่น Claude Desktop, Claude Code, Cursor และ VS Code ตัวนี้ต่อผ่าน URL จึงใช้กับโปรแกรมที่รับ remote MCP ได้ เช่น ChatGPT ที่เปิดโหมดนักพัฒนา
ในหมวดเดียวกันมี Supabase, MongoDB MCP Server, Elasticsearch MCP Server
server หมวดเดียวกันจากผู้ทำคนอื่น เรียงตามดาว
อ่านการ์ด:★ ดาว GitHubiสามเสา: รีวิว · ผลตรวจ · การใช้งานiอัปเดต = วันที่ส่งรุ่นล่าสุดเข้า registryi
server ทางการของ Supabase ให้ AI สร้างตาราง ถามข้อมูล และดูการตั้งค่าโปรเจกต์ในฐานข้อมูล Supabase ของคุณ
MongoDB Model Context Protocol Server
MCP server for interacting with Elasticsearch
ส่วนนี้คัดจาก repo ของผู้ทำตามต้นฉบับ PopNx MCP ไม่ได้ตรวจหรือรับรองเนื้อหา ตัด HTML รูปภาพ และสคริปต์ออกแล้ว ลิงก์จะพาออกนอกเว็บ
@cyanheads/faostat-mcp-server Global food & agriculture statistics from the UN FAOSTAT bulk-download corpus, served from a local SQLite mirror with a DataCanvas SQL surface, via MCP. STDIO or Streamable HTTP. 7 Tools • 1 Skill Resource • 0 Prompts
Public Hosted Server: https://faostat.caseyjhand.com/mcp
Global food and agriculture statistics from the UN's FAOSTAT: production, trade, food balances, food security, land use, fertilizer, and emissions for 245+ countries and territories since 1961. Resolve commodity and country codes, query the data, and run SQL over large results.
| Tool | Description |
|---|---|
faostat_list_domains | Discover FAOSTAT statistical domains with codes, descriptions, last-update date, upstream row count, and local index status. The entry point — every query keys on a domain code. |
faostat_resolve_codes | Resolve human terms to the codes a query needs (areas, items, elements), flagging each area as a country or an aggregate region. |
faostat_query_observations | Query a domain's cube by area(s), item(s), element(s), and year range. Inline preview for small results; large sets spill to a DataCanvas table. |
faostat_commodity_profile | Workflow: assemble top producers, the production trend, and trade flows for one commodity from the production and trade domains in a single call. |
faostat_dataframe_query | Run a read-only SQL SELECT against the canvas tables staged by the analytical tools. |
faostat_dataframe_describe | List the canvas tables staged this session, each with provenance, row count, and column schema. |
faostat_dataframe_drop | Drop one staged canvas table before its 2-hour TTL. Opt-in — callable only with FAOSTAT_DATAFRAME_DROP_ENABLED=true. |
faostat_list_domains toolcode for an exact domain lookup; topic substring filter over code/name/topic; indexed_only to list only domains queryable from the local mirroroffset + limit (max 200, default 20) page the catalog — response reports totalMatches, truncated, and nextOffsetindexed / index_ready flags, local row count, and last completed syncfaostat_resolve_codes toolquery, substring name_contains, or exact code lookup within a dimension: area, item, or element; code_text looks up alphanumeric itemsdomain's cube; area codes are shared across domainsunits; item_codes or item_codes_text restrict element discovery and units to selected items. Item/element lookups require that domain to be readycountry or aggregate (codes ≥ 5000, plus curated sub-threshold roll-ups such as China=351)aggregate by domain. Classification is incomplete: kind: null does not mean items can safely be summed togetherlimit (max 200, default 50) + offset page the match setunknown_domain, index_not_ready, invalid_text_selector, invalid_item_scope, query_timeoutfaostat_query_observations toolarea_codes / item_codes / item_codes_text / element_codes / source_codes and an inclusive year_start / year_end rangeitem_code_text with item_code: null; numeric items retain their integer codeperiod (e.g. 2000-2002) and use its midpoint as year for filtering. Censored values retain the numeric bound plus value_qualifier (e.g. < with 2.5)source_code and source; omitting source_codes returns all sources, which must be compared separately rather than summedavailable_elements with labels and units for those items; this does not establish coverage for the requested areas, years, or sourcesinclude_aggregates: false); explicit area_codes bypass the exclusionlimit caps the inline page (default 200, max 1000); a match that exceeds it spills in full to a DataCanvas table (50,000-row staging cap) — faostat_dataframe_describe for its columns, then SQL via faostat_dataframe_queryflag (A/E/I/B/M/T/X, others per domain) — never droppeddomain_not_indexed, index_not_ready, canvas_disabled, canvas_not_found, invalid_year_range, conflicting_item_selectors, query_timeoutfaostat_commodity_profile toolitem_code or item_query (code takes precedence), then ranks top producers/exporters/importers and returns an annual production trendmaize or milk, call faostat_resolve_codes with domain: "QCL", dimension: "item", and the query, then pass the selected item_code (e.g. 56 for maize grain)top_n caps each ranked list (max 50); when the merged observation set is too large to inline it spills to a DataCanvas table — faostat_dataframe_describe for its columns, then faostat_dataframe_query for further SQLmissing_item, ambiguous_item, no_match, domain_not_indexed, index_not_ready, invalid_year_range, canvas_not_found, query_timeoutfaostat_dataframe_query toolSELECT over staged faostat_xxxxxxxx tables — joins, aggregates, window functions, and CTEs all workDROP, COPY, PRAGMA, ATTACH, external-file functions, and system catalogs (information_schema, sqlite_master, duckdb_*) are rejectedquery_table, dynamic query() SQL, and file table references are rejected; query() with a single literal read-only SELECT remains supportedrow_limit caps the response (default 1000, max 10000); truncated means more rows exist, with no exact total computed on this pathcanvas_disabled, canvas_not_found, missing_table, system_catalog_access, invalid_sqlfaostat_dataframe_describe toolname describes one table outright; otherwise offset + limit (max 100, default 20) page the listing newest-firstcanvas_disabled, canvas_not_found, missing_tablefaostat_dataframe_drop tooltools/list — unless FAOSTAT_DATAFRAME_DROP_ENABLED=truefaostat_xxxxxxxx table and its provenance from the session canvas, or from the canvas a canvas_id namesdropped: false with a notice and changes nothingcanvas_disabled, canvas_not_foundThe faostat-guide covers reporting periods, censored values, source estimates, country versus regional totals, units, coverage, and complete SQL analysis across staged results. It ships with plugin, npm, Docker, and MCPB installs and is served through the MCP Skills extension as a skill resource.
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.
FAOSTAT-specific:
MirrorService, with FTS5 over the dimension labels driving code resolutionFAOSTAT_DOMAINS) — the indexed set can grow without code changes, and the full catalog stays browsable regardlessGROUP BY, ranking, and time-series analysis over spilled result setsAgent-friendly output:
A/E/I/B/M/T/X, others per domain), never dropped from outputfaostat_commodity_profile returns a production-only profile with a notice, rather than failing, when the trade domain isn't indexedindex_not_ready, domain_not_indexed, canvas_disabled, and others each carry a concrete recovery hintConnect to the hosted instance, no install:
claude mcp add --transport http faostat-mcp-server https://faostat.caseyjhand.com/mcp
Or run it locally after building the mirror:
claude mcp add faostat-mcp-server -- npx -y @cyanheads/faostat-mcp-server
For other clients, add this to the MCP config file:
{
"mcpServers": { "faostat-mcp-server": { "command": "
ตัดมาแค่ช่วงต้น อ่านต่อใน repo