MCP เซิร์ฟเวอร์
เพิ่มเครื่องมือ MCP ในพื้นที่และระยะไกล
คุณสามารถเพิ่มเครื่องมือภายนอกให้กับ Vikasit Code ได้โดยใช้ Model Context Protocol หรือ MCP Vikasit Code รองรับทั้งเซิร์ฟเวอร์ภายในและเซิร์ฟเวอร์ระยะไกล
เมื่อเพิ่มแล้ว เครื่องมือ MCP จะพร้อมใช้งานโดยอัตโนมัติสำหรับ LLM ควบคู่ไปกับเครื่องมือในตัว
คำเตือน
เมื่อคุณใช้เซิร์ฟเวอร์ MCP เซิร์ฟเวอร์ดังกล่าวจะเพิ่มบริบท สิ่งนี้สามารถเพิ่มขึ้นได้อย่างรวดเร็วหากคุณมีเครื่องมือมากมาย ดังนั้นเราขอแนะนำให้ระมัดระวังเซิร์ฟเวอร์ MCP ที่คุณใช้
เซิร์ฟเวอร์ MCP บางตัว เช่น เซิร์ฟเวอร์ GitHub MCP มีแนวโน้มที่จะเพิ่มโทเค็นจำนวนมากและอาจเกินขีดจำกัดบริบทได้อย่างง่ายดาย
เปิดใช้งาน
คุณสามารถกำหนดเซิร์ฟเวอร์ MCP ได้ใน Vikasit Code Config ภายใต้ mcp เพิ่ม MCP แต่ละรายการด้วยชื่อที่ไม่ซ้ำใคร คุณสามารถอ้างอิงถึง MCP ด้วยชื่อได้เมื่อแจ้ง LLM
{ "$schema": "https://opencode.ai/config.json", "mcp": { "name-of-mcp-server": { // ... "enabled": true, }, "name-of-other-mcp-server": { // ... }, },}คุณยังสามารถปิดการใช้งานเซิร์ฟเวอร์ได้โดยการตั้งค่า enabled เป็น false สิ่งนี้มีประโยชน์หากคุณต้องการปิดการใช้งานเซิร์ฟเวอร์ชั่วคราวโดยไม่ต้องลบออกจากการกำหนดค่าของคุณ
การเอาชนะค่าเริ่มต้นระยะไกล
องค์กรสามารถจัดเตรียมเซิร์ฟเวอร์ MCP เริ่มต้นผ่านทางจุดสิ้นสุด .well-known/opencode เซิร์ฟเวอร์เหล่านี้อาจถูกปิดใช้งานตามค่าเริ่มต้น ทำให้ผู้ใช้สามารถเลือกใช้เซิร์ฟเวอร์ที่ต้องการได้
หากต้องการเปิดใช้งานเซิร์ฟเวอร์เฉพาะจากการกำหนดค่าระยะไกลขององค์กรของคุณ ให้เพิ่มเซิร์ฟเวอร์ดังกล่าวลงในการกำหนดค่าภายในเครื่องของคุณด้วย enabled: true:
{ "$schema": "https://opencode.ai/config.json", "mcp": { "jira": { "type": "remote", "url": "https://jira.example.com/mcp", "enabled": true } }}ค่าการกำหนดค่าในเครื่องของคุณจะแทนที่ค่าเริ่มต้นระยะไกล ดู config ลำดับความสำคัญ สำหรับรายละเอียดเพิ่มเติม
ท้องถิ่น
เพิ่มเซิร์ฟเวอร์ท้องถิ่น MCP โดยใช้ type ไปยัง "local" ภายในวัตถุ MCP
{ "$schema": "https://opencode.ai/config.json", "mcp": { "my-local-mcp-server": { "type": "local", // Or ["bun", "x", "my-mcp-command"] "command": ["npx", "-y", "my-mcp-command"], "enabled": true, "environment": { "MY_ENV_VAR": "my_env_var_value", }, }, },}คำสั่งคือวิธีที่เซิร์ฟเวอร์ MCP ท้องถิ่นเริ่มทำงาน คุณยังสามารถส่งผ่านรายการตัวแปรสภาพแวดล้อมได้เช่นกัน
ตัวอย่างเช่น นี่คือวิธีที่คุณสามารถเพิ่มการทดสอบเซิร์ฟเวอร์ @modelcontextprotocol/server-everything MCP เซิร์ฟเวอร์
{ "$schema": "https://opencode.ai/config.json", "mcp": { "mcp_everything": { "type": "local", "command": ["npx", "-y", "@modelcontextprotocol/server-everything"], }, },}และหากต้องการใช้งาน ฉันสามารถเพิ่ม use the mcp_everything tool ในข้อความแจ้งของฉันได้
use the mcp_everything tool to add the number 3 and 4ตัวเลือก
นี่คือตัวเลือกทั้งหมดสำหรับการกำหนดค่าเซิร์ฟเวอร์ MCP ภายในเครื่อง
| ตัวเลือก | พิมพ์ | ที่จำเป็น | คำอธิบาย |
|---|---|---|---|
type | สตริง | ย | ประเภทของการเชื่อมต่อเซิร์ฟเวอร์ MCP ต้องเป็น "local" |
command | อาร์เรย์ | ย | คำสั่งและอาร์กิวเมนต์เพื่อรันเซิร์ฟเวอร์ MCP |
environment | วัตถุ | ตัวแปรสภาพแวดล้อมที่จะตั้งค่าเมื่อรันเซิร์ฟเวอร์ | |
enabled | บูลีน | เปิดหรือปิดใช้งานเซิร์ฟเวอร์ MCP เมื่อเริ่มต้นระบบ | |
timeout | ตัวเลข | หมดเวลาเป็น ms สำหรับการดึงเครื่องมือจากเซิร์ฟเวอร์ MCP ค่าเริ่มต้นคือ 5,000 (5 วินาที) |
ระยะไกล
เพิ่มเซิร์ฟเวอร์ระยะไกล MCP โดยตั้งค่า type เป็น "remote"
{ "$schema": "https://opencode.ai/config.json", "mcp": { "my-remote-mcp": { "type": "remote", "url": "https://my-mcp-server.com", "enabled": true, "headers": { "Authorization": "Bearer MY_API_KEY" } } }}url คือ URL ของเซิร์ฟเวอร์ MCP ระยะไกล และด้วยตัวเลือก headers คุณสามารถส่งผ่านรายการส่วนหัวได้
ตัวเลือก
| ตัวเลือก | พิมพ์ | ที่จำเป็น | คำอธิบาย |
|---|---|---|---|
type | สตริง | ย | ประเภทของการเชื่อมต่อเซิร์ฟเวอร์ MCP ต้องเป็น "remote" |
url | สตริง | ย | URL ของเซิร์ฟเวอร์ MCP ระยะไกล |
enabled | บูลีน | เปิดหรือปิดใช้งานเซิร์ฟเวอร์ MCP เมื่อเริ่มต้นระบบ | |
headers | วัตถุ | ส่วนหัวที่จะส่งพร้อมกับคำขอ | |
oauth | วัตถุ | การกำหนดค่าการตรวจสอบสิทธิ์ OAuth ดูส่วน OAuth ด้านล่าง | |
timeout | ตัวเลข | หมดเวลาเป็น ms สำหรับการดึงเครื่องมือจากเซิร์ฟเวอร์ MCP ค่าเริ่มต้นคือ 5,000 (5 วินาที) |
OAuth
Vikasit Code จะจัดการการตรวจสอบสิทธิ์ OAuth สำหรับเซิร์ฟเวอร์ MCP ระยะไกลโดยอัตโนมัติ เมื่อเซิร์ฟเวอร์ต้องการการรับรองความถูกต้อง Vikasit Code จะ:
- ตรวจหาการตอบสนอง 401 และเริ่มโฟลว์ OAuth
- ใช้ การลงทะเบียนไคลเอ็นต์แบบไดนามิก (RFC 7591) หากเซิร์ฟเวอร์รองรับ
- จัดเก็บโทเค็นอย่างปลอดภัยสำหรับคำขอในอนาคต
อัตโนมัติ
สำหรับเซิร์ฟเวอร์ MCP ที่เปิดใช้งาน OAuth ส่วนใหญ่ ไม่จำเป็นต้องมีการกำหนดค่าพิเศษ เพียงกำหนดค่าเซิร์ฟเวอร์ระยะไกล:
{ "$schema": "https://opencode.ai/config.json", "mcp": { "my-oauth-server": { "type": "remote", "url": "https://mcp.example.com/mcp" } }}หากเซิร์ฟเวอร์ต้องมีการตรวจสอบสิทธิ์ Vikasit Code จะแจ้งให้คุณตรวจสอบความถูกต้องเมื่อคุณพยายามใช้งานครั้งแรก หากไม่เป็นเช่นนั้น คุณสามารถทริกเกอร์โฟลว์ด้วยตนเอง ด้วย vikasit mcp auth <server-name>
ลงทะเบียนล่วงหน้า
หากคุณมีข้อมูลประจำตัวไคลเอ็นต์จากผู้ให้บริการเซิร์ฟเวอร์ MCP คุณสามารถกำหนดค่าได้:
{ "$schema": "https://opencode.ai/config.json", "mcp": { "my-oauth-server": { "type": "remote", "url": "https://mcp.example.com/mcp", "oauth": { "clientId": "{env:MY_MCP_CLIENT_ID}", "clientSecret": "{env:MY_MCP_CLIENT_SECRET}", "scope": "tools:read tools:execute" } } }}กำลังตรวจสอบสิทธิ์
คุณสามารถทริกเกอร์การตรวจสอบสิทธิ์หรือจัดการข้อมูลประจำตัวได้ด้วยตนเอง
ตรวจสอบสิทธิ์กับเซิร์ฟเวอร์ MCP เฉพาะ:
vikasit mcp auth my-oauth-serverแสดงรายการเซิร์ฟเวอร์ MCP ทั้งหมดและสถานะการตรวจสอบสิทธิ์:
vikasit mcp listลบข้อมูลรับรองที่เก็บไว้:
vikasit mcp logout my-oauth-serverคำสั่ง mcp auth จะเปิดเบราว์เซอร์ของคุณเพื่อขออนุญาต หลังจากที่คุณอนุญาตแล้ว Vikasit Code จะจัดเก็บโทเค็นอย่างปลอดภัยใน ~/.local/share/opencode/mcp-auth.json
ปิดการใช้งาน OAuth
หากคุณต้องการปิดการใช้งาน OAuth อัตโนมัติสำหรับเซิร์ฟเวอร์ (เช่น สำหรับเซิร์ฟเวอร์ที่ใช้คีย์ API แทน) ให้ตั้งค่า oauth เป็น false:
{ "$schema": "https://opencode.ai/config.json", "mcp": { "my-api-key-server": { "type": "remote", "url": "https://mcp.example.com/mcp", "oauth": false, "headers": { "Authorization": "Bearer {env:MY_API_KEY}" } } }}ตัวเลือก OAuth
| ตัวเลือก | พิมพ์ | คำอธิบาย |
|---|---|---|
oauth | วัตถุ | เท็จ | ออบเจ็กต์การกำหนดค่า OAuth หรือ false เพื่อปิดใช้การตรวจจับอัตโนมัติของ OAuth |
clientId | สตริง | รหัสไคลเอ็นต์ OAuth หากไม่ได้ระบุไว้ จะพยายามลงทะเบียนไคลเอ็นต์แบบไดนามิก |
clientSecret | สตริง | ข้อมูลลับไคลเอ็นต์ OAuth หากเซิร์ฟเวอร์การให้สิทธิ์กำหนดไว้ |
scope | สตริง | ขอบเขต OAuth ที่จะขอระหว่างการให้สิทธิ์ |
การดีบัก
หากเซิร์ฟเวอร์ MCP ระยะไกลไม่สามารถตรวจสอบสิทธิ์ได้ คุณสามารถวินิจฉัยปัญหาด้วย:
# View auth status for all OAuth-capable serversvikasit mcp auth list
# Debug connection and OAuth flow for a specific servervikasit mcp debug my-oauth-serverคำสั่ง mcp debug แสดงสถานะการตรวจสอบสิทธิ์ปัจจุบัน ทดสอบการเชื่อมต่อ HTTP และพยายามใช้ขั้นตอนการค้นหา OAuth
จัดการ
MCP ของคุณพร้อมใช้งานในฐานะเครื่องมือใน Vikasit Code ควบคู่ไปกับเครื่องมือในตัว คุณจึงสามารถจัดการผ่านการกำหนดค่า Vikasit Code ได้เหมือนกับเครื่องมืออื่นๆ
ทั่วโลก
ซึ่งหมายความว่าคุณสามารถเปิดหรือปิดใช้งานได้ทั่วโลก
{ "$schema": "https://opencode.ai/config.json", "mcp": { "my-mcp-foo": { "type": "local", "command": ["bun", "x", "my-mcp-command-foo"] }, "my-mcp-bar": { "type": "local", "command": ["bun", "x", "my-mcp-command-bar"] } }, "tools": { "my-mcp-foo": false }}นอกจากนี้เรายังสามารถใช้รูปแบบ glob เพื่อปิดใช้งาน MCP ที่ตรงกันทั้งหมดได้
{ "$schema": "https://opencode.ai/config.json", "mcp": { "my-mcp-foo": { "type": "local", "command": ["bun", "x", "my-mcp-command-foo"] }, "my-mcp-bar": { "type": "local", "command": ["bun", "x", "my-mcp-command-bar"] } }, "tools": { "my-mcp*": false }}ที่นี่เราใช้รูปแบบ glob my-mcp* เพื่อปิดการใช้งาน MCP ทั้งหมด
ต่อตัวแทน
หากคุณมีเซิร์ฟเวอร์ MCP จำนวนมาก คุณอาจต้องการเปิดใช้งานเซิร์ฟเวอร์เหล่านี้ต่อตัวแทนเท่านั้น และปิดใช้งานเซิร์ฟเวอร์เหล่านั้นทั่วโลก เมื่อต้องการทำสิ่งนี้:
- ปิดการใช้งานเป็นเครื่องมือทั่วโลก
- ใน agent config ให้เปิดใช้งานเซิร์ฟเวอร์ MCP เป็นเครื่องมือ
{ "$schema": "https://opencode.ai/config.json", "mcp": { "my-mcp": { "type": "local", "command": ["bun", "x", "my-mcp-command"], "enabled": true } }, "tools": { "my-mcp*": false }, "agent": { "my-agent": { "tools": { "my-mcp*": true } } }}รูปแบบ Glob
รูปแบบ glob ใช้รูปแบบ globbing regex แบบง่าย:
*ตรงกับอักขระใดๆ ตั้งแต่ศูนย์ขึ้นไป (เช่น"my-mcp*"ตรงกับmy-mcp_search,my-mcp_listฯลฯ)?ตรงกับอักขระหนึ่งตัวเท่านั้น- อักขระอื่นๆ ทั้งหมดตรงกันอย่างแท้จริง
ตัวอย่าง
ด้านล่างนี้เป็นตัวอย่างของเซิร์ฟเวอร์ MCP ทั่วไปบางส่วน คุณสามารถส่ง PR ได้ถ้าคุณต้องการจัดทำเอกสารเซิร์ฟเวอร์อื่น
Sentry
เพิ่ม เซิร์ฟเวอร์ Sentry MCP เพื่อโต้ตอบกับโครงการและปัญหา Sentry ของคุณ
{ "$schema": "https://opencode.ai/config.json", "mcp": { "sentry": { "type": "remote", "url": "https://mcp.sentry.dev/mcp", "oauth": {} } }}หลังจากเพิ่มการกำหนดค่าแล้ว ให้ตรวจสอบสิทธิ์กับ Sentry:
vikasit mcp auth sentryซึ่งจะเป็นการเปิดหน้าต่างเบราว์เซอร์เพื่อดำเนินการโฟลว์ OAuth ให้เสร็จสมบูรณ์ และเชื่อมต่อ Vikasit Code กับบัญชี Sentry ของคุณ
เมื่อตรวจสอบสิทธิ์แล้ว คุณจะใช้เครื่องมือ Sentry ในข้อความแจ้งเพื่อค้นหาปัญหา โปรเจ็กต์ และข้อมูลข้อผิดพลาดได้
Show me the latest unresolved issues in my project. use sentryContext7
เพิ่ม Context7 MCP server เพื่อค้นหาในเอกสาร
{ "$schema": "https://opencode.ai/config.json", "mcp": { "context7": { "type": "remote", "url": "https://mcp.context7.com/mcp" } }}หากคุณได้ลงทะเบียนสำหรับบัญชีฟรี คุณสามารถใช้รหัส API ของคุณและรับขีดจำกัดอัตราที่สูงขึ้น
{ "$schema": "https://opencode.ai/config.json", "mcp": { "context7": { "type": "remote", "url": "https://mcp.context7.com/mcp", "headers": { "CONTEXT7_API_KEY": "{env:CONTEXT7_API_KEY}" } } }}ที่นี่เราสมมติว่าคุณมีชุดตัวแปรสภาพแวดล้อม CONTEXT7_API_KEY
เพิ่ม use context7 ในข้อความแจ้งของคุณเพื่อใช้เซิร์ฟเวอร์ Context7 MCP
Configure a Cloudflare Worker script to cache JSON API responses for five minutes. use context7หรือคุณสามารถเพิ่มสิ่งนี้ลงใน AGENTS.md ของคุณได้
When you need to search docs, use `context7` tools.Grep by Vercel
เพิ่มเซิร์ฟเวอร์ Grep by Vercel MCP เพื่อค้นหาผ่านข้อมูลโค้ดบน GitHub
{ "$schema": "https://opencode.ai/config.json", "mcp": { "gh_grep": { "type": "remote", "url": "https://mcp.grep.app" } }}เนื่องจากเราตั้งชื่อเซิร์ฟเวอร์ MCP gh_grep คุณสามารถเพิ่ม use the gh_grep tool ในข้อความแจ้งของคุณเพื่อให้ตัวแทนใช้งานได้
What's the right way to set a custom domain in an SST Astro component? use the gh_grep toolหรือคุณสามารถเพิ่มสิ่งนี้ลงใน AGENTS.md ของคุณได้
If you are unsure how to do something, use `gh_grep` to search code examples from GitHub.