ต้นแบบ · รุ่นทดลอง: มีทุก server ในทะเบียนทางการ อัปเดตทุก 30 นาที เข้าสู่ระบบด้วย Google เพื่อเขียนรีวิวได้แล้วต้นแบบ · อัปเดตทุก 30 นาที
PopNx MCPที่รวม MCP สำหรับคนใช้ AI · วิธีติดตั้งภาษาไทยทุกตัว

Cyanheads MCP Server

โดย cyanheadsรุ่น 0.5.0i★ 1iบนเครื่องหรือคลาวด์
ชื่อใน registryio.github.cyanheads/cyanheads-mcp-server

วิธีติดตั้ง

ใช้ทำอะไรได้

ยังไม่มีคำอธิบายภาษาไทย ดูข้อเท็จจริงด้านล่าง หรือเปิดคำอธิบายต้นฉบับจากผู้ทำ

  • ต่อแบบ คลาวด์หรือติดตั้งในเครื่อง
  • บัญชีหรือคีย์ ไม่ต้องใส่คีย์
  • หมวด ค้นข้อมูลและความจำของ AI
คำอธิบายต้นฉบับจากผู้ทำ (อังกฤษ)
Fleet discovery for the cyanheads MCP ecosystem — semantic search + install snippets.

ติดตั้ง

เลือกโปรแกรม AI ที่คุณใช้ แล้วคัดลอกค่าตั้งไปวาง

ผลตรวจผ่าน 5/5 · สิ่งที่คุณถามผ่านเซิร์ฟเวอร์ของผู้ทำ (cyanheads.caseyjhand.com) · ✓ ตรวจคำสั่งแล้ว 14 พ.ย. 2569

ขั้นแรก: คุณใช้ AI ตัวไหน

เลือกแอปที่คุณใช้ ขั้นตอนจะขึ้นด้านล่าง

ต่อกับ Claude ได้ · ประมาณ 2 นาที

ไม่ต้องใช้คีย์ ไม่ต้องลงโปรแกรม · ตั้งครั้งเดียวที่ claude.ai หรือแอปบนคอม แล้วใช้ในแชตได้ · บัญชีฟรีเพิ่มได้ 1 ตัว · แผน Team/Enterprise ให้เจ้าของ (Owner) เป็นคนเพิ่ม

  1. เปิดหน้า Connectors ของ Claude

    CustomizeConnectors

    CustomizeConnectors1Add2https://…3Add4
  2. กด “Add” → “Custom” → “Web” แล้วกรอก 2 ช่องนี้

    คัดลอกจากที่นี่ไปวางในช่องชื่อเดียวกันบนหน้าจอของ Claude แล้วกด Continue

    Name · ชื่อCyanheads MCP Server
    Remote MCP server URL · ที่อยู่https://cyanheads.caseyjhand.com/mcp

    กด Continue ผ่านหน้าตรวจการล็อกอินที่ Claude ตรวจเจอ · หัวข้อ Authentication เลือกตามที่ผู้ทำบอก (Sign in now, Sign in when needed หรือ No sign in) แล้วกด Add

  3. เปิดใช้ในแชต

    +ConnectorsCyanheads MCP Server

  4. ลองเลย

    ใช้ Cyanheads MCP Server บอกหน่อยว่าทำอะไรให้ฉันได้บ้าง แล้วลองทำให้ดูหนึ่งอย่าง

    ✓ ถ้า Claude บอกว่ากำลังใช้ Cyanheads MCP Server หรือมีชื่อเครื่องมือของ Cyanheads MCP Server ขึ้นในคำตอบ แปลว่าต่อสำเร็จ

ชื่อเมนูตรวจกับหน้าช่วยเหลือของ Anthropic เมื่อ 11 พ.ย. 2569 · หน้าจอของคุณอาจต่างเล็กน้อยตามรุ่นของแอป

ต่อกับ ChatGPT ได้ ขึ้นกับแผน

MCP แบบเต็ม: ChatGPT Business, Enterprise หรือ Edu บนเว็บ · Pro: ต่อได้ด้วยสิทธิ์อ่านและดึงข้อมูล เครื่องมือที่แก้ข้อมูลอาจใช้ไม่ได้ · Plus: เอกสารยังไม่ยืนยัน ถ้าเห็นเมนูเพิ่ม MCP แบบกำหนดเองในหน้าปลั๊กอิน ลองตามขั้นตอนได้ · ใช้บนเว็บเท่านั้น

  1. เปิดหน้าเพิ่ม MCP ของ ChatGPT บนเว็บ

    Plugins+Add custom MCP server

    ChatGPTPlugins1+2https://…3Create4
  2. กรอกชื่อและที่อยู่

    ใส่ชื่อ แล้ววางที่อยู่ใต้ Connection ติ๊กยอมรับคำเตือน แล้วกด Create as a plugin

    Name · ชื่อCyanheads MCP Server
    Connection · ที่อยู่https://cyanheads.caseyjhand.com/mcp
  3. เลือก Cyanheads MCP Server ในแชต

    เปิดแชตใหม่แล้วเลือก Cyanheads MCP Server จากรายการปลั๊กอินก่อนพิมพ์

  4. ลองเลย

    ใช้ Cyanheads MCP Server บอกหน่อยว่าทำอะไรให้ฉันได้บ้าง แล้วลองทำให้ดูหนึ่งอย่าง

    ✓ ถ้า ChatGPT บอกว่ากำลังใช้ Cyanheads MCP Server หรือมีชื่อเครื่องมือของ Cyanheads MCP Server ขึ้นในคำตอบ แปลว่าต่อสำเร็จ

ชื่อเมนูตรวจกับหน้าช่วยเหลือของ OpenAI เมื่อ 11 พ.ย. 2569 · หน้าจอของคุณอาจต่างเล็กน้อยตามรุ่นของแอป

ต่อกับ Claude Code ได้ · ประมาณ 2 นาที

ไม่ต้องใช้คีย์ ไม่ต้องลงโปรแกรม

  1. เปิด Terminal

    Mac: กด Command+Space พิมพ์ Terminal · Windows: เปิด PowerShell

  2. วางคำสั่งนี้แล้วกด Enter

    claude mcp add --transport http --scope user cyanheads https://cyanheads.caseyjhand.com/mcp
  3. พิมพ์ /mcp ใน Claude Code

    ต้องเห็น Cyanheads MCP Server ในรายการและขึ้นว่าเชื่อมต่อแล้ว

  4. ลองเลย

    ใช้ Cyanheads MCP Server บอกหน่อยว่าทำอะไรให้ฉันได้บ้าง แล้วลองทำให้ดูหนึ่งอย่าง

    ✓ ถ้า Claude Code บอกว่ากำลังใช้ Cyanheads MCP Server หรือมีชื่อเครื่องมือของ Cyanheads MCP Server ขึ้นในคำตอบ แปลว่าต่อสำเร็จ

ชื่อเมนูตรวจกับหน้าช่วยเหลือของ Anthropic เมื่อ 11 พ.ย. 2569 · หน้าจอของคุณอาจต่างเล็กน้อยตามรุ่นของแอป

ต่อกับ Cursor ได้ · ประมาณ 2 นาที

ไม่ต้องใช้คีย์ ไม่ต้องลงโปรแกรม

  1. กดปุ่มนี้เพื่อเปิด Cursor

    เปิดใน Cursor

    Cursor จะถามยืนยันการติดตั้ง ให้กด Install

  2. เปิดแชตของ AI ใน Cursor โหมด Agent

  3. ลองเลย

    ใช้ Cyanheads MCP Server บอกหน่อยว่าทำอะไรให้ฉันได้บ้าง แล้วลองทำให้ดูหนึ่งอย่าง

    ✓ ถ้า Cursor บอกว่ากำลังใช้ Cyanheads MCP Server หรือมีชื่อเครื่องมือของ Cyanheads MCP Server ขึ้นในคำตอบ แปลว่าต่อสำเร็จ

ชื่อเมนูตรวจกับหน้าช่วยเหลือของ Cursor เมื่อ 11 พ.ย. 2569 · หน้าจอของคุณอาจต่างเล็กน้อยตามรุ่นของแอป

ต่อกับ VS Code ได้ · ประมาณ 2 นาที

ไม่ต้องใช้คีย์ ไม่ต้องลงโปรแกรม

  1. กดปุ่มนี้เพื่อเปิด VS Code

    เปิดใน VS Code

    VS Code จะถามยืนยันการติดตั้ง ให้กด Install

  2. เปิดแชตของ AI ใน VS Code โหมด Agent

  3. ลองเลย

    ใช้ Cyanheads MCP Server บอกหน่อยว่าทำอะไรให้ฉันได้บ้าง แล้วลองทำให้ดูหนึ่งอย่าง

    ✓ ถ้า VS Code บอกว่ากำลังใช้ Cyanheads MCP Server หรือมีชื่อเครื่องมือของ Cyanheads MCP Server ขึ้นในคำตอบ แปลว่าต่อสำเร็จ

ชื่อเมนูตรวจกับหน้าช่วยเหลือของ VS Code เมื่อ 11 พ.ย. 2569 · หน้าจอของคุณอาจต่างเล็กน้อยตามรุ่นของแอป

โปรแกรมอื่นที่ใช้ MCP ได้ เช่น Windsurf, Zed หรือ Gemini CLI มีวิธีเพิ่มต่างกัน ดูวิธีของแต่ละตัวในหน้ารวมโปรแกรม

ดูโปรแกรมที่ใช้ MCP ทั้งหมด →

ที่อยู่สำหรับโปรแกรมที่ต่อผ่านเว็บ

ที่อยู่https://cyanheads.caseyjhand.com/mcp

ค่าตั้งแบบไฟล์ JSON อยู่ในหัวข้อ “สำหรับคนเขียนโค้ด” ด้านล่าง

ติดตรงไหน? ถามคนที่ใช้ Cyanheads MCP Server อยู่💬 พูดคุย →
สำหรับคนเขียนโค้ด: คำสั่ง Terminal และค่าตั้ง JSON

ต่อผ่านเว็บ

Claude Code

claude mcp add --transport http --scope user cyanheads https://cyanheads.caseyjhand.com/mcp

Cursor (~/.cursor/mcp.json)

{
  "mcpServers": {
    "cyanheads": {
      "url": "https://cyanheads.caseyjhand.com/mcp"
    }
  }
}

VS Code (mcp.json)

{
  "servers": {
    "cyanheads": {
      "type": "http",
      "url": "https://cyanheads.caseyjhand.com/mcp"
    }
  }
}

ติดตั้งในเครื่อง

Claude Code

claude mcp add --scope user cyanheads -- npx -y @cyanheads/cyanheads-mcp-server

Claude Desktop (claude_desktop_config.json)

{
  "mcpServers": {
    "cyanheads": {
      "command": "npx",
      "args": [
        "-y",
        "@cyanheads/cyanheads-mcp-server"
      ]
    }
  }
}

Cursor (~/.cursor/mcp.json)

{
  "mcpServers": {
    "cyanheads": {
      "command": "npx",
      "args": [
        "-y",
        "@cyanheads/cyanheads-mcp-server"
      ]
    }
  }
}

VS Code (mcp.json)

{
  "servers": {
    "cyanheads": {
      "type": "stdio",
      "command": "npx",
      "args": [
        "-y",
        "@cyanheads/cyanheads-mcp-server"
      ]
    }
  }
}

ค่าที่ต้องใส่เอง

  • MCP_LOG_LEVEL env
    Minimum log level: debug, info, notice, warning, error.
  • CATALOG_URL env
    Remote fleet.json endpoint (schema v2 with baked embeddings).
  • CATALOG_FETCH_TIMEOUT_MS env
    Per-request timeout for fleet.json fetches: integer milliseconds from 1 to 2147483647.
  • CATALOG_REFRESH_SECONDS env
    Background poll interval for fleet.json refreshes in seconds. 0 disables refresh; positive values up to 2147483.647 use the runtime's millisecond timer resolution.
  • EMBEDDING_MODEL_ID env
    Hugging Face model id for query embedding. Must match fleet.json.embeddingModel.
  • SIMILARITY_FLOOR env
    Cosine similarity cutoff for cyanheads_search_catalog results. Must be within [0, 1].

คำอธิบายยังเป็นภาษาอังกฤษตามต้นฉบับ

ค่าตั้งนี้สร้างจากข้อมูลใน registry ของผู้ทำ ถ้าไม่ตรงกับ README ให้เชื่อ README

สรุป

ดาวน์โหลดต่อสัปดาห์i
192/สัปดาห์
licensei
Apache-2.0
การเชื่อมต่อ
บนเครื่องหรือคลาวด์
รุ่นล่าสุดi
0.5.0
ส่งเข้า registryi
29 ต.ค. 2569
แก้โค้ดล่าสุดi
29 ต.ค. 2569
ผู้ทำ
cyanheads
แพ็กเกจ
npm: @cyanheads/cyanheads-mcp-server
npm: @cyanheads/cyanheads-mcp-server
สถานะใน registry
ใช้งานอยู่

ใช้กับโปรแกรมไหนได้

ดูจากแบบการต่อของ server ตัวนี้ และเอกสารของผู้ทำโปรแกรมแต่ละตัว ตรวจเมื่อ 10 พ.ย. 2569

ต่อผ่านคลาวด์ได้ใน

ClaudeChatGPTGooseLM StudioMsty StudioCherry StudioCursorVS Code + GitHub CopilotVisual StudioWindsurf (Devin Desktop)ZedKiroClineContinueJetBrains AI AssistantClaude CodeCodex CLIGemini CLIOpenCodenodecodeWarpLibreChatOpen WebUIRaycast

ติดตั้งบนเครื่องได้ใน

ClaudeGooseLM StudioMsty StudioCherry StudioCursorVS Code + GitHub CopilotVisual StudioWindsurf (Devin Desktop)ZedKiroClineContinueJetBrains AI AssistantClaude CodeCodex CLIGemini CLIOpenCodenodecodeWarpLibreChatRaycast

ดูโปรแกรมทั้งหมดพร้อมข้อดีข้อเสีย →

คู่มือที่เกี่ยวข้อง

ทำอะไรได้บ้าง

ชื่อและคำอธิบายเครื่องมือตามที่ server ตอบมาเมื่อ 12 พ.ย. 2569 ผู้ทำเป็นคนเขียน ไม่ใช่เรา แสดงเป็นข้อความล้วน

  • cyanheads_search_catalog

    Search fleet tools and servers by natural-language description. Returns ranked matches with brief summaries and the server each tool belongs to. Use scope "servers" to find which server handles a workflow; use the default scope "tools" to find specific tools.

  • cyanheads_describe_entry

    Return the description and install snippets for a named tool or server. For tools: the description, owning server, and connection metadata. For either kind: local (stdio, via npx) install snippets for every published server, plus remote (HTTP) connection snippets when a hosted en

ผลตรวจเบื้องต้นi

เราตรวจจากข้อมูลที่ใครก็เปิดดูได้ ยังไม่ได้อ่านโค้ด ข้อที่ไม่เกี่ยวกับตัวนี้ไม่นับในตัวหาร · ตรวจเมื่อ 15 พ.ย. 2569

  • ✓ ผ่าน

    ตัวตนผู้ทำตรงกับ repo

    ชื่อใน registry ยืนยันด้วยบัญชี GitHub cyanheads ซึ่งเป็นเจ้าของ repo

  • ✓ ผ่าน

    ยังมีคนดูแล

    มีการแก้โค้ดล่าสุด 17 วันที่ผ่านมา

  • ✓ ผ่าน

    มีสัญญาอนุญาต (license)

    ใช้ Apache-2.0

  • ✓ ผ่าน

    endpoint ตอบ

    ตอบกลับใน 213 ms (HTTP 200)

  • – ไม่เกี่ยว

    ล็อกอินแบบ OAuth

    ไม่ต้องล็อกอิน

  • ✓ ผ่าน

    คำอธิบายเครื่องมือไม่มีคำสั่งแอบแฝง

    อ่านคำอธิบายเครื่องมือ 2 ตัวแล้ว ไม่พบคำสั่งแอบแฝงถึง AI

ช่องโหว่ที่เปิดเผยแล้ว (OSV.dev)

ไม่พบรายการใน OSV.dev สำหรับ @cyanheads/cyanheads-mcp-server@0.5.0

ตรวจเฉพาะตัวแพ็กเกจรุ่นนี้ ไม่ใช่ทุก dependency · ตรวจเมื่อ 15 พ.ย. 2569

เราตรวจอะไรบ้าง → · JSON

ผู้ทำ: ขอให้ตรวจใหม่ หรือแจ้งข้อมูลผิด

พูดคุย

ถาม แชร์เคล็ดลับ หรือแจ้งว่าใช้ไม่ได้ เรียงตามที่คนกดว่ามีประโยชน์

ยังไม่มีใครโพสต์ ถามหรือแชร์เป็นคนแรกได้เลย

ข้อความในส่วนนี้เขียนโดยผู้ใช้ ไม่ใช่ทีม PopNx

เข้าสู่ระบบเพื่อโพสต์

รีวิวจากผู้ใช้

ยังไม่มีรีวิว

เข้าสู่ระบบเพื่อเขียนรีวิว

เทียบกับตัวอื่นในหมวด ค้นข้อมูลและความจำของ AIi

  • ดาวมากกว่า 76% ของอีก 6156 ตัวในหมวดนี้
  • ส่งรุ่นใหม่เข้า registry ล่าสุดกว่า 69% ของอีก 6156 ตัวในหมวดนี้
  • ผลตรวจเบื้องต้นดีกว่าหรือเท่ากับ 100% ของอีก 6156 ตัวในหมวดนี้

เทียบกับทุก server ที่ยังใช้งานในหมวดนี้ทั้งทะเบียน ดาวนับเฉพาะเมื่อผู้ลงทะเบียนเป็นเจ้าของ repo

คำถามที่พบบ่อย

Cyanheads MCP Server ปลอดภัยไหม?

จากการตรวจเบื้องต้นของเรา ผ่าน 5 จาก 5 ข้อที่ตรวจได้ เรายังไม่ได้อ่านโค้ด ก่อนใส่กุญแจหรือ token ให้ดูว่า server ขอสิทธิ์อะไร และเลือกกุญแจที่ทำได้เท่าที่จำเป็น

ต้องใช้กุญแจหรือรหัสอะไรบ้าง?

registry ไม่ได้ระบุว่าต้องใช้กุญแจ แต่บางตัวจะขอให้ล็อกอินตอนใช้ครั้งแรก

ตัวนี้รันบนเครื่องหรือบนคลาวด์?

ได้ทั้งสองแบบ จะลงในเครื่องหรือต่อผ่านคลาวด์ก็ได้

ยังมีคนดูแลอยู่ไหม?

repo บน GitHub มีการแก้โค้ดล่าสุด 17 วันที่ผ่านมา และส่งรุ่นล่าสุด (0.5.0) เข้า registry 17 วันที่ผ่านมา

ใช้กับโปรแกรมไหนได้บ้าง?

โปรแกรมที่รองรับ MCP เช่น Claude Desktop, Claude Code, Cursor และ VS Code ตัวนี้ต่อผ่าน URL จึงใช้กับโปรแกรมที่รับ remote MCP ได้ เช่น ChatGPT บนเว็บ (แบบเต็มในแผน Business ขึ้นไป · Pro แบบอ่านอย่างเดียว)

มีตัวไหนใช้แทนได้บ้าง?

ในหมวดเดียวกันมี OpenSEO, Exa, Mockserver, Microsoft Learn MCP, Docs

ตัวอื่นที่ทำงานคล้ายกัน

หมวดเดียวกันจากผู้ทำคนอื่น ผ่านตัวตรวจคำสั่งแล้ว ตัวทางการขึ้นก่อน แล้วเรียงตามดาว

อ่านการ์ด:↓ ดาวน์โหลดต่อสัปดาห์i★ ดาว GitHubiสามเสา: รีวิว · ผลตรวจ · การใช้งานiอัปเดต = วันที่ส่งรุ่นล่าสุดเข้า registryi

OpenSEO

Keyword research, site audits, rank tracking and AI visibility for your AI agent.

โดย every-appใช้กันมาก★ 27.7Kอัปเดต เมื่อวาน

รันบนคลาวด์✓ everyapp.com

Exa

Connect AI agents to Exa for web search, content fetching, and multi-step research.

โดย exa-labsใช้กันมาก★ 5.2Kอัปเดต 2 เดือนที่ผ่านมา

รันบนคลาวด์✓ เจ้าของบริการ · exa.aiทีม PopNx ลองใช้จริงแล้ว

Mockserver

Mock, record/replay, verify and chaos-test any HTTP, REST, gRPC or LLM dependency over MCP.

โดย mock-serverกำลังโต★ 5Kอัปเดต 19 วันที่ผ่านมา

รันบนเครื่อง✓ เจ้าของบริการ · mock-server.com

Microsoft Learn MCP

Official Microsoft Learn MCP Server – real-time, trusted docs & code samples for AI and LLMs.

โดย MicrosoftDocsใช้กันมาก★ 2Kอัปเดต 12 เดือนที่ผ่านมา

รันบนคลาวด์✓ เจ้าของบริการ · microsoft.comทีม PopNx ลองใช้จริงแล้ว

Docs

Search and read Empryo's documentation. Read-only, no auth, no local access.

โดย proxysoulกำลังโต★ 1.6Kอัปเดต 2 เดือนที่ผ่านมา

รันบนคลาวด์✓ empryo.com
  • OpenSEO — ใช้บนคลาวด์ ไม่ต้องลงเครื่อง · ไม่ต้องใช้คีย์
  • Exa — ใช้บนคลาวด์ ไม่ต้องลงเครื่อง · ไม่ต้องใช้คีย์ · อยู่ในคลังของ Claude
  • Mockserver — ต้องลงในเครื่อง · ไม่ต้องใช้คีย์
  • Microsoft Learn MCP — ใช้บนคลาวด์ ไม่ต้องลงเครื่อง · ไม่ต้องใช้คีย์ · อยู่ในคลังของ Claude
  • Docs — ใช้บนคลาวด์ ไม่ต้องลงเครื่อง · ไม่ต้องใช้คีย์

README จากผู้ทำ

เปิดอ่าน README

ส่วนนี้คัดจาก repo ของผู้ทำตามต้นฉบับ PopNx MCP ไม่ได้ตรวจหรือรับรองเนื้อหา ตัด HTML รูปภาพ และสคริปต์ออกแล้ว ลิงก์จะพาออกนอกเว็บ

@cyanheads/cyanheads-mcp-server Fleet discovery for the cyanheads MCP ecosystem — semantic search + install snippets. 2 Tools • 0 Resources • 0 Prompts

Public Hosted Server: https://cyanheads.caseyjhand.com/mcp


Overview

Find the right MCP tool for the job across the cyanheads fleet. Describe a task in plain language to search every tool and server, then get a description, connection URL, and install snippet for your client.

Tools
ToolDescription
cyanheads_search_catalogSearch fleet tools and servers by natural-language query. Returns ranked matches with brief summaries and the owning server.
cyanheads_describe_entryReturn the description, connection URL, and per-client install snippet for a named tool or server.
Skills
SkillDescription
cyanheads-guideFind a fleet server for a task and hand over a working install: telling real matches from near misses, the category filter, hosted vs local installs, and env vars the snippets leave out. Served over MCP as skill://cyanheads-guide/SKILL.md and loaded by Claude Code and Codex plugin installs.

Capability reference

cyanheads_search_catalog tool
  • query 1–500 raw characters, with non-whitespace text required; surrounding whitespace is trimmed before embedding and echo. scope selects tools (default) or servers; optional category: research, government, public-data, utility; limit 1–1000 (default 5), served at most 20 per call: when a larger limit leaves matches past the page, the response adds truncated, shown, cap, and a notice naming the offset to continue from.
  • Results carry cosine-similarity score ([0, 1], comparable within one response). Tool searches include a servers roll-up with ten entries per page and serversTotal; an unloaded catalog returns retryable catalog_empty.
  • Page results with offset and the tools-scope roll-up independently with serversOffset (both default to 0). Reuse the same query, scope, category, and limit with nextOffset / nextServersOffset; null means exhausted. Each call uses the current catalog, so a refresh between pages can change ordering. Servers scope requires serversOffset: 0 and omits roll-up fields.
  • SIMILARITY_FLOOR (default 0.3) filters matches before the limit applies.
  • An empty category string is treated as omitted; other unknown category values are rejected. Categories are catalog labels, not publisher types, and a wrong one drops the matching server without a notice unless nothing else matches.

cyanheads_describe_entry tool
  • name 1–64 characters accepts a tool or server name, auto-detected or pinned via kind. Exact names win, then unique case-insensitive names; output uses canonical names. client optionally selects claude-code, cline, codex, cursor, gemini, streamable-http (generic mcpServers JSON), or curl.
  • server (optional, 1–64 characters) names the owning server: a search result's name + server describes exactly that row, in either scope. It is required when more than one server owns the tool name; with a server name, it must name the same server.
  • Empty kind, client, and server strings are treated as omitted. Other unknown kind or client values are rejected.
  • Both kinds return connection metadata and install snippets; server results also include the full tool inventory. Published servers get local snippets; hosted servers also get HTTP snippets. For local-only entries, client: "curl" returns successful metadata with an installNotice naming a stdio client to try. Required environment variables remain visible even without snippets; they list what the server's manifest marks required, so a key it leaves optional is absent.
  • Descriptions are catalog text; obtain tool schemas from the connected server's tools/list.
  • Failures return not_found, ambiguous_kind (set kind), ambiguous_owner (set server; the error lists the owners), or retryable catalog_empty.

Features

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.

Catalog-specific:

  • Hourly background catalog refresh (CATALOG_REFRESH_SECONDS, default 3600) with an atomic index swap when generatedAt changes — no restart needed
  • Empty catalogs, conflicting duplicate identities, and vectors that can't be normalized (wrong dimension, all zeros, or a non-finite component) fail before index replacement; refresh retains the last valid catalog. Identical duplicates collapse before indexing, with a bounded load-time warning; servers with no tools remain valid.
  • Query embeddings are computed at request time via @huggingface/transformers; document embeddings are pre-computed, L2-normalized, and Matryoshka-truncated, shipped inside fleet.json. The server normalizes each document vector again at load, so scores stay cosine similarities even when a catalog's vectors drift from unit length, and a bounded warning names vectors more than 1e-4 off.
  • The embedding model is warmed up during startup, before OpenTelemetry's HTTP instrumentation patches fetch — avoids a cold-cache model-load failure under OTEL
  • Self-describing: cyanheads_describe_entry resolves this server's own name and tools from a static fallback record, consulted only when the remote catalog doesn't carry an entry for it
  • CATALOG_URL can point at any endpoint serving the same schema, to front a custom fleet

Agent-friendly output:

  • Search responses echo the effective query, report the total match count before the limit, include broadening guidance when nothing matches, and name the offset to continue from when a limit above 20 is cut to the per-call cap
  • Discriminated result.kind (tool | server) on cyanheads_describe_entry lets callers branch on data, not string parsing
  • Every search result carries a score field for trust calibration, plus a servers roll-up so agents can see which servers matched without a second call

Getting started

Connect to the hosted instance, no install:

claude mcp add --transport http cyanheads-mcp-server https://cyanheads.caseyjhand.com/mcp

Or run it locally:

claude mcp add cyanheads-mcp-server -- npx -y @cyanheads/cyanheads-mcp-server

For other clients, add this to the MCP config file:

{

"mcpServers": { "cyanheads-mcp-server": { "command": "npx", "args": ["-y", "@cyanheads/cyanheads-mcp-server"] } } }

The Claude Desktop bundle (the install badge above) runs the embedding model on ONNX WebAssembly, so it needs no platform-specific native libraries; npm and Docker installs use native CPU inference. Either way, the first start downloads the embedding model and later starts reuse the model cache. For Docker or a source build, see Running the server.

Configuration

All configuration is validated at startup via Zod schemas in src/config/server-config.ts. Every variable has a sensible default — out of the box, the server points at the canonical cyanheads fleet.

VariableDescriptionDefault
MCP_TRANSPORT_TYPETransport: stdio or httpstdio
MCP_HTTP_PORTHTTP server port3010
MCP_HTTP_HOSTHTTP server bind host127.0.0.1
MCP_HTTP_ENDPOINT_PATHHTTP endpoint path where the MCP server is mounted/mcp
MCP_AUTH_MODEAuthentication: none, jwt, or oauthnone
MCP_SESSION_MODEHTTP session posture: auto, stateful, or stateless. src/index.ts declares stateless; set this only to override it.stateless
MCP_LOG_LEVELLog level (debug, info, warning, error, etc.)info
CATALOG_URLRemote fleet.json endpoint (schema v2 with baked embeddings). Must be an absolute URL. Override to front your own fleet.https://caseyjhand.com/fleet.json
CATALOG_FETCH_TIMEOUT_MSPer-request timeout for fleet.json fetches: integer milliseconds, 1–2147483647.10000
CATALOG_REFRESH_SECONDSBackground poll interval for fleet.json refresh. 0 disables; positive values up to 2147483.647 seconds use the runtime's millisecond timer resolution.3600
EMBEDDING_MODEL_IDHugging Face model id for query embedding. Must match fleet.json.embeddingModel.Snowflake/snowflake-arctic-embed-m-v1.5
SIMILARITY_FLOORCosine similarity cutoff for cyanheads_search_catalog results. Must be within [0, 1].0.3
OTEL_ENABLEDEnable OpenTelemetryfalse
OTEL_EXPORTER_OTLP_ENDPOINTOTLP base URL for traces and metricsUnset
OTEL_EXPORTER_OTLP_LOGS_ENDPOINTExplicit OTLP logs URL; requires the OTel log peers included in the default Docker buildUnset
LOG_TOOL_FAILURE_PAYLOADSLog failed arguments and results, redacted by key name. Secrets inside free-form values are not redacted.false
LOG_TOOL_FAILURE_PAYLOAD_MAX_BYTESUTF-8 byte cap for each logged failure payload16384

See .env.example for the full list of optional overrides.

Running the server

Local development

Requires Bun v1.4.0 or higher (or Node.js v24+).

  • Clone and install:
  git clone https://github.com/cyanheads/cyanheads-mcp-server.git

cd cyanheads-mcp-server && bun install cp .env.example .env # every variable has a default; override as needed

  • Build and run the production version:
  # One-time build

bun run rebuild

Run the built server

bun run start:http

or

bun run start:

ตัดมาแค่ช่วงต้น อ่านต่อใน repo