Ref MCP Server
ทางการเอกสารอัปเดตล่าสุดสำหรับเอเจนต์การเขียนโค้ดของคุณ ครอบคลุม repos และไซต์สาธารณะหลายพันแห่ง สร้างโดย ref.tools
เอกสาร
Ref MCP
เซิร์ฟเวอร์ ModelContextProtocol ที่ช่วยให้เครื่องมือหรือเอเจนต์เขียนโค้ด AI ของคุณเข้าถึงเอกสารประกอบสำหรับ API, บริการ, ไลบรารี ฯลฯ เป็นจุดเดียวที่ช่วยให้เอเจนต์ของคุณอัปเดตเอกสารได้อย่างรวดเร็วและประหยัดโทเค็น
ดูข้อมูลเพิ่มเติมได้ที่ ref.tools
การค้นหาแบบเอเจนต์เพื่อบริบทที่ตรงประเด็น
เครื่องมือของ Ref ถูกออกแบบมาให้สอดคล้องกับวิธีที่โมเดลค้นหา โดยใช้บริบทให้น้อยที่สุดเพื่อลด context rot เป้าหมายคือการค้นหาบริบทที่เอเจนต์เขียนโค้ดของคุณต้องการเพื่อให้ทำงานสำเร็จ โดยใช้โทเค็นน้อยที่สุด
ขึ้นอยู่กับความซับซ้อนของพรอมต์ เอเจนต์เขียนโค้ด LLM อย่าง Claude Code มักจะทำการค้นหาหนึ่งครั้งหรือมากกว่า แล้วเลือกทรัพยากรบางส่วนมาอ่านในเชิงลึก
สำหรับคำถามง่ายๆ เกี่ยวกับ Figma's Comment REST API มันจะเรียกใช้สองสามครั้งเพื่อให้ได้สิ่งที่ต้องการ:
SEARCH 'Figma API post comment endpoint documentation' (54 tokens)
READ https://www.figma.com/developers/api#post-comments-endpoint (385 tokens)
สำหรับสถานการณ์ที่ซับซ้อนมากขึ้น LLM จะพยายามปรับแต่งพรอมต์ขณะอ่านผลลัพธ์ ตัวอย่างเช่น:
SEARCH 'n8n merge node vs Code node multiple inputs best practices' (126)
READ https://docs.n8n.io/integrations/builtin/core-nodes/n8n-nodes-base.merge/#merge (4961)
READ https://docs.n8n.io/flow-logic/merging/#merge-data-from-multiple-node-executions (138)
SEARCH 'n8n Code node multiple inputs best practices when to use' (107)
READ https://docs.n8n.io/code/code-node/#usage (80)
SEARCH 'n8n Code node access multiple inputs from different nodes' (370)
SEARCH 'n8n Code node $input access multiple node inputs' (372)
READ https://docs.n8n.io/code/builtin/output-other-nodes/#output-of-other-nodes (2310)
Ref ใช้ประโยชน์จากเซสชัน MCP เพื่อติดตามเส้นทางการค้นหาและลดการใช้บริบท มีแนวคิดอีกมากมายที่กำลังพัฒนา แต่นี่คือสิ่งที่เราได้นำมาใช้แล้ว
1. การกรองผลการค้นหา
สำหรับการค้นหาซ้ำๆ ที่คล้ายกันในเซสชัน Ref จะไม่ส่งคืนผลลัพธ์ที่ซ้ำอีก โดยปกติแล้ว คุณจะเจาะลึกผลการค้นหาโดยการเลื่อนไปยังหน้าถัดไป แต่วิธีนี้ช่วยให้เอเจนต์สามารถเลื่อนหน้าและปรับพรอมต์ไปพร้อมๆ กันได้
2. การดึงเฉพาะส่วนของหน้าที่สำคัญ
เมื่ออ่านหน้าเอกสาร Ref จะใช้ประวัติการค้นหาในเซสชันของเอเจนต์เพื่อตัดส่วนที่เกี่ยวข้องน้อยกว่าออก และส่งคืนโทเค็นที่เกี่ยวข้องมากที่สุด 5,000 โทเค็น ซึ่งช่วยให้ Ref หลีกเลี่ยงปัญหาใหญ่ของการขูดเว็บ fetch() แบบมาตรฐาน ซึ่งเมื่อเจอหน้าเอกสารขนาดใหญ่ คุณอาจดึงโทเค็นเข้ามาในบริบทมากกว่า 20,000 โทเค็น ซึ่งส่วนใหญ่ไม่เกี่ยวข้อง
ทำไมการลดโทเค็นจากบริบทเอกสารจึงสำคัญ?
1. บริบทที่มากขึ้นทำให้โมเดลฉลาดน้อยลง
มีเอกสารยืนยันชัดเจนว่า ณ เดือนกรกฎาคม 2025 โมเดลจะฉลาดน้อยลงเมื่อคุณใส่โทเค็นมากขึ้น คุณอาจเคยได้ยินว่าโมเดลเก่งเรื่องบริบทยาวๆ แล้ว ซึ่งก็จริงส่วนหนึ่งแต่ไม่ใช่ทั้งหมด สำหรับข้อมูลเบื้องต้นเกี่ยวกับงานวิจัย ลองดูวิดีโอนี้จากทีม Chroma
2. โทเค็นมีค่าใช้จ่าย $$$
ลองนึกภาพว่าคุณใช้ Claude Opus เป็นเอเจนต์เบื้องหลัง และคุณเริ่มด้วยการให้เอเจนต์ดึงบริบทเอกสารเข้ามา สมมติว่ามันดึงบริบทเข้ามา 10,000 โทเค็น โดย 4,000 โทเค็นเกี่ยวข้อง และ 6,000 โทเค็นเป็นสัญญาณรบกวนเพิ่มเติม ในราคา API โทเค็น 6,000 โทเค็นนั้นมีค่าใช้จ่ายประมาณ $0.09 ต่อขั้นตอน หากหนึ่งพรอมต์ใช้ 11 ขั้นตอนกับ Opus คุณจะเสียเงิน $1 โดยไม่มีเหตุผล
การตั้งค่า
มีสองตัวเลือกในการตั้งค่า Ref เป็นเซิร์ฟเวอร์ MCP คือผ่านเซิร์ฟเวอร์ streamable-http (แนะนำ) หรือเซิร์ฟเวอร์ stdio ในเครื่อง (รุ่นเก่า)
รีโพนี้มีเซิร์ฟเวอร์ stdio รุ่นเก่า
Streamable HTTP (แนะนำ)
"Ref": {
"type": "http",
"url": "https://api.ref.tools/mcp?apiKey=YOUR_API_KEY"
}
stdio
"Ref": {
"command": "npx",
"args": ["ref-tools-mcp@latest"],
"env": {
"REF_API_KEY": <sign up to get an api key>
}
}
เครื่องมือ
เซิร์ฟเวอร์ Ref MCP มีเครื่องมือที่เกี่ยวข้องกับเอกสารทั้งหมดสำหรับความต้องการของเอเจนต์ของคุณ
ref_search_documentation
เครื่องมือค้นหาที่ทรงพลังสำหรับตรวจสอบเอกสารทางเทคนิค เหมาะสำหรับการค้นหาข้อเท็จจริงหรือตัวอย่างโค้ด สามารถใช้ค้นหาเอกสารสาธารณะบนเว็บหรือ GitHub รวมถึงทรัพยากรส่วนตัวเช่นรีโพและ PDF
พารามิเตอร์:
query(จำเป็น): คำค้นหาเพื่อค้นหาเอกสารที่เกี่ยวข้อง ควรเป็นประโยคหรือคำถามที่สมบูรณ์
ref_read_url
เครื่องมือที่ดึงเนื้อหาจาก URL และแปลงเป็น Markdown เพื่อให้อ่านง่ายด้วย Ref มีประสิทธิภาพเมื่อใช้ร่วมกับเครื่องมือ ref_search_documentation ที่ส่งคืน URL ของเนื้อหาที่เกี่ยวข้อง
พารามิเตอร์:
url(จำเป็น): URL ของหน้าเว็บที่จะอ่าน
การสนับสนุนการวิจัยเชิงลึกของ OpenAI
Ref สามารถใช้เป็นแหล่งข้อมูลสำหรับการวิจัยเชิงลึกได้ OpenAI ต้องการคำจำกัดความของเครื่องมือที่เฉพาะเจาะจง ดังนั้นเมื่อใช้กับไคลเอนต์ OpenAI Ref จะให้เครื่องมือเดียวกันโดยมีชื่อแตกต่างกันเล็กน้อย
ref_search_documentation(query) -> search(query)
ref_read_url(url) -> fetch(id)
การพัฒนา
npm install
npm run dev
การรันด้วย Inspector
สำหรับการพัฒนาและการดีบัก คุณสามารถใช้เครื่องมือ MCP Inspector ได้ Inspector มีอินเทอร์เฟซแบบภาพสำหรับการทดสอบและตรวจสอบการโต้ตอบของเซิร์ฟเวอร์ MCP
ดู เอกสารประกอบ Inspector สำหรับคำแนะนำการตั้งค่าโดยละเอียด
การทดสอบในเครื่องด้วย Inspector:
npm run inspect
หรือรันทั้ง watcher และ inspector:
npm run dev
การพัฒนาในเครื่อง
- โคลนรีโพสิทอรี
- ติดตั้ง dependencies:
npm install
- สร้างโปรเจกต์:
npm run build
- สำหรับการพัฒนาพร้อมการสร้างใหม่โดยอัตโนมัติ:
npm run watch
ใบอนุญาต
MIT
