Klever VM MCP Server
ทางการMCP server for [Klever](https://klever.org) blockchain smart contract development, on-chain data exploration, and VM interaction. Public remote server available at `https://mcp.klever.org/mcp`.
เอกสาร
Klever MCP Server
เซิร์ฟเวอร์ Model Context Protocol (MCP) ที่ออกแบบมาเฉพาะสำหรับการพัฒนาสมาร์ทคอนแทร็กต์บนบล็อกเชน Klever เซิร์ฟเวอร์นี้เก็บรักษาและให้บริการความรู้เชิงบริบท รวมถึงรูปแบบโค้ด แนวปฏิบัติที่ดีที่สุด และพฤติกรรมรันไทม์สำหรับนักพัฒนาที่ทำงานกับ Klever VM SDK
คุณสมบัติ
- 🚀 การทำงานสามโหมด: รันเป็นเซิร์ฟเวอร์ HTTP API, เซิร์ฟเวอร์ MCP stdio หรือเซิร์ฟเวอร์ MCP สาธารณะที่โฮสต์ไว้
- 💾 พื้นที่จัดเก็บที่ยืดหยุ่น: รองรับแบ็กเอนด์แบบในหน่วยความจำหรือ Redis
- 🔍 การเรียกค้นบริบทอัจฉริยะ: ค้นหาตามประเภท แท็ก หรือประเภทคอนแทร็กต์
- 📝 การสกัดรูปแบบอัตโนมัติ: แยกวิเคราะห์คอนแทร็กต์ Klever เพื่อสกัดตัวอย่างและรูปแบบ
- 🎯 การจัดอันดับความเกี่ยวข้อง: การให้คะแนนและจัดอันดับบริบทอย่างชาญฉลาด
- 🔄 อัปเดตแบบสด: เพิ่มและอัปเดตบริบทแบบเรียลไทม์
- 🛡️ ความปลอดภัยของประเภท: TypeScript เต็มรูปแบบพร้อมการตรวจสอบด้วย Zod
- 📚 ฐานความรู้ที่ครอบคลุม: โหลดไว้ล่วงหน้าด้วยรูปแบบ แนวปฏิบัติที่ดีที่สุด และตัวอย่างของ Klever VM
- 🔧 การตรวจสอบคอนแทร็กต์: ตรวจจับปัญหาทั่วไปและรูปแบบที่ไม่พึงประสงค์โดยอัตโนมัติ
- 🚀 สคริปต์การปรับใช้: สคริปต์พร้อมใช้งานสำหรับการปรับใช้ อัปเกรด และสอบถามคอนแทร็กต์
เริ่มต้นอย่างรวดเร็ว
ติดตั้งและรันทันทีผ่าน npx — ไม่ต้องโคลน:
npx -y @klever/mcp-server
หรือเชื่อมต่อกับเซิร์ฟเวอร์สาธารณะที่โฮสต์ไว้:
claude mcp add -t http klever-vm https://mcp.klever.org/mcp
ดู การรวม MCP Client สำหรับการกำหนดค่าเฉพาะของไคลเอนต์
สถาปัตยกรรม
mcp-klever-vm/
├── src/
│ ├── api/ # HTTP API routes with validation
│ ├── context/ # Context management service layer
│ ├── mcp/ # MCP protocol server implementation
│ ├── parsers/ # Klever contract parser and validator
│ ├── storage/ # Storage backends (memory/Redis)
│ │ ├── memory.ts # In-memory storage with size limits
│ │ └── redis.ts # Redis storage with optimized queries
│ ├── types/ # TypeScript type definitions
│ ├── utils/ # Utilities and ingestion tools
│ └── knowledge/ # Modular knowledge base (95+ entries)
│ ├── core/ # Core concepts and imports
│ ├── storage/ # Storage patterns and mappers
│ ├── events/ # Event handling and rules
│ ├── tokens/ # Token operations and decimals
│ ├── modules/ # Built-in modules (admin, pause)
│ ├── tools/ # CLI tools (koperator, ksc)
│ ├── scripts/ # Helper scripts
│ ├── examples/ # Complete contract examples
│ ├── errors/ # Error patterns
│ ├── best-practices/ # Optimization and validation
│ └── documentation/ # API reference
├── tests/ # Test files
└── docs/ # Documentation
การปรับปรุงหลักที่ทำ
-
เลเยอร์พื้นที่จัดเก็บ
- เพิ่มขีดจำกัดหน่วยความจำเพื่อป้องกัน OOM ใน InMemoryStorage
- ปรับแต่งคิวรี Redis เพื่อหลีกเลี่ยงคำสั่ง KEYS แบบ O(N)
- เพิ่มธุรกรรมแบบอะตอมมิกสำหรับการดำเนินการ Redis
- ปรับปรุงการจัดการข้อผิดพลาดและการตรวจสอบ
-
ความปลอดภัยของ API
- เพิ่มการตรวจสอบอินพุตสำหรับทุกเอนด์พอยต์
- จำกัดขนาดการดำเนินการแบบกลุ่ม
- ตอบกลับข้อผิดพลาดอย่างเหมาะสมโดยไม่เปิดเผยข้อมูลภายใน
- ข้อความแสดงข้อผิดพลาดที่คำนึงถึงสภาพแวดล้อม
-
ความปลอดภัยของประเภท
- การตรวจสอบสคีมาแบบรวมศูนย์
- อินเทอร์เฟซ TypeScript ที่เหมาะสมสำหรับตัวเลือก
- การตรวจสอบข้อมูลที่จัดเก็บ ณ รันไทม์
-
ประสิทธิภาพ
- การดำเนินการแบบกลุ่มโดยใช้ Redis MGET
- คิวรีตามดัชนีแทนการสแกนทั้งหมด
- ปรับแต่งการดำเนินการนับ
การติดตั้ง
- โคลนที่เก็บ:
git clone https://github.com/klever-io/mcp-klever-vm.git
cd mcp-klever-vm
- ติดตั้งการพึ่งพา:
pnpm install
- คัดลอกการกำหนดค่าสภาพแวดล้อม:
cp .env.example .env
- ติดตั้งเครื่องมือ Klever SDK (จำเป็นสำหรับธุรกรรม):
chmod +x scripts/install-sdk.sh && ./scripts/install-sdk.sh
- สร้างโปรเจกต์:
pnpm run build
การกำหนดค่า
แก้ไขไฟล์ .env เพื่อกำหนดค่าเซิร์ฟเวอร์:
# Server Mode (http, mcp, or public)
MODE=http
# HTTP Server Port (only for http mode)
PORT=3000
# Storage Backend (memory or redis)
STORAGE_TYPE=memory
# Maximum contexts for in-memory storage (default: 10000)
MEMORY_MAX_SIZE=10000
# Redis URL (only if STORAGE_TYPE=redis)
REDIS_URL=redis://localhost:6379
# Node environment (development or production)
NODE_ENV=development
การรวม MCP Client
Claude Code
# Add via npx (recommended)
claude mcp add klever-vm -- npx -y @klever/mcp-server
# Or connect to the public hosted server
claude mcp add -t http klever-vm https://mcp.klever.org/mcp
Claude Desktop
เพิ่มลงใน claude_desktop_config.json ของคุณ:
{
"mcpServers": {
"klever-vm": {
"command": "npx",
"args": ["-y", "@klever/mcp-server"]
}
}
}
สำหรับการตั้งค่าโดยละเอียด ดู คู่มือการติดตั้ง Claude Desktop
Cursor
เพิ่มลงในการตั้งค่า Cursor MCP ของคุณ (.cursor/mcp.json):
{
"mcpServers": {
"klever-vm": {
"command": "npx",
"args": ["-y", "@klever/mcp-server"]
}
}
}
VS Code (GitHub Copilot)
เพิ่มลงใน .vscode/mcp.json ในโปรเจกต์ของคุณ:
{
"servers": {
"klever-vm": {
"type": "stdio",
"command": "npx",
"args": ["-y", "@klever/mcp-server"]
}
}
}
สำหรับการตั้งค่าโดยละเอียด ดู คู่มือการติดตั้ง VS Code
เซิร์ฟเวอร์ MCP สาธารณะ
Klever MCP Server สามารถโฮสต์เป็นบริการสาธารณะที่ใช้ร่วมกันได้ ทำให้นักพัฒนาทุกคนสามารถเชื่อมต่อได้โดยไม่ต้องรันในเครื่อง
การเชื่อมต่อกับเซิร์ฟเวอร์สาธารณะ
# Add permanently (user-level)
claude mcp add -t http klever-vm https://mcp.klever.org/mcp
# Add for current project only
claude mcp add -t http -s project klever-vm https://mcp.klever.org/mcp
เครื่องมือที่พร้อมใช้งาน (โหมดสาธารณะ)
เซิร์ฟเวอร์สาธารณะเปิดเผยชุดเครื่องมือย่อยแบบอ่านอย่างเดียวเพื่อความปลอดภัย:
| เครื่องมือ | คำอธิบาย |
|---|---|
query_context | ค้นหาฐานความรู้ Klever VM |
get_context | เรียกค้นบริบทเฉพาะตาม ID |
find_similar | ค้นหาบริบทที่คล้ายกับบริบทที่กำหนด |
get_knowledge_stats | รับสถิติฐานความรู้ |
enhance_with_context | ปรับปรุงคิวรีด้วยบริบท Klever VM ที่เกี่ยวข้อง |
การดำเนินการเขียน (add_context) และเครื่องมือที่ใช้เชลล์ (init_klever_project, add_helper_scripts) ถูกปิดใช้งานในโหมดสาธารณะ
การโฮสต์ด้วยตนเองด้วย Docker
# Build and run
docker build -t mcp-klever-vm .
docker run -p 3000:3000 mcp-klever-vm
# Or using docker compose
docker compose up -d
จากนั้นเชื่อมต่อ:
claude mcp add -t http klever-vm-local http://localhost:3000/mcp
การโฮสต์ด้วยตนเองโดยไม่ใช้ Docker
pnpm install
pnpm run build
pnpm run start:public
ตัวแปรสภาพแวดล้อม (โหมดสาธารณะ)
| ตัวแปร | ค่าเริ่มต้น | คำอธิบาย |
|---|---|---|
MODE | http | ตั้งเป็น public สำหรับโหมดโฮสต์ |
PORT | 3000 | พอร์ตเซิร์ฟเวอร์ |
CORS_ORIGINS | (ไม่ได้ตั้งค่า) | ต้นทางที่อนุญาตคั่นด้วยจุลภาค ไม่ได้ตั้งค่าหรือ * อนุญาตทุกต้นทาง |
RATE_LIMIT_MCP | 60 | คำขอต่อนาทีของเอนด์พอยต์ MCP ต่อ IP |
RATE_LIMIT_API | 30 | คำขอต่อนาทีของเอนด์พอยต์ API ต่อ IP |
BODY_SIZE_LIMIT | 1mb | ขนาดเนื้อหาคำขอสูงสุด |
หมายเหตุการปรับใช้
สำหรับการใช้งานจริงที่ mcp.klever.org:
- ปรับใช้คอนเทนเนอร์ Docker หลังพร็อกซีย้อนกลับ (nginx/Caddy/cloud LB) สำหรับการสิ้นสุด TLS
- ตรวจสอบให้แน่ใจว่าพร็อกซีส่งส่วนหัว
mcp-session-idและรองรับ SSE (ปิดการบัฟเฟอร์การตอบสนอง) - อินสแตนซ์เดียวเพียงพอเนื่องจากเซิร์ฟเวอร์เป็นแบบอ่านอย่างเดียวพร้อมฐานความรู้ในหน่วยความจำ
- พิจารณาใช้ Cloudflare สำหรับการป้องกัน DDoS (รองรับ SSE)
การใช้งาน
การโหลดฐานความรู้
เซิร์ฟเวอร์โหลดฐานความรู้ Klever โดยอัตโนมัติตามประเภทพื้นที่จัดเก็บของคุณ:
พื้นที่จัดเก็บแบบหน่วยความจำ (ค่าเริ่มต้น)
- ความรู้ถูก โหลดโดยอัตโนมัติ เมื่อเซิร์ฟเวอร์เริ่มทำงาน
- ไม่จำเป็นต้องรัน
pnpm run ingestแยกต่างหาก - ข้อมูลมีอยู่เฉพาะขณะที่เซิร์ฟเวอร์กำลังทำงาน
- เหมาะที่สุดสำหรับการพัฒนาและการทดสอบ
พื้นที่จัดเก็บแบบ Redis
# First, ingest the knowledge base (one time)
pnpm run ingest
# Then start the server
pnpm run dev
- ความรู้คงอยู่ในฐานข้อมูล Redis
- อยู่รอดจากการรีสตาร์ทเซิร์ฟเวอร์
- เหมาะที่สุดสำหรับการใช้งานจริง
สิ่งนี้จะโหลด:
- เทมเพลตและตัวอย่างสมาร์ทคอนแทร็กต์
- กฎคำอธิบายประกอบและแนวปฏิบัติที่ดีที่สุด
- รูปแบบและเปรียบเทียบตัวแมปพื้นที่จัดเก็บ
- สคริปต์การปรับใช้และสอบถาม
- ข้อผิดพลาดทั่วไปและวิธีแก้ไข
- รูปแบบการทดสอบ
- เอกสารอ้างอิง API
การรันเป็นเซิร์ฟเวอร์ HTTP
# Development mode
pnpm run dev
# Production mode
pnpm run build && pnpm start
HTTP API จะพร้อมใช้งานที่ http://localhost:3000/api
การรันเป็นเซิร์ฟเวอร์ MCP
MODE=mcp pnpm start
ใช้กับไคลเอนต์ที่เข้ากันได้กับ MCP ใดๆ
เอนด์พอยต์ API
POST /api/context
นำเข้าบริบทใหม่เข้าสู่ระบบ
{
"type": "code_example",
"content": "contract code here",
"metadata": {
"title": "Token Contract Example",
"description": "ERC20-like token implementation",
"tags": ["token", "fungible"],
"contractType": "token"
}
}
GET /api/context/:id
เรียกค้นบริบทเฉพาะตาม ID
POST /api/context/query
สอบถามบริบทด้วยตัวกรอง
{
"query": "transfer",
"types": ["code_example", "best_practice"],
"tags": ["token"],
"contractType": "token",
"limit": 10,
"offset": 0
}
PUT /api/context/:id
อัปเดตบริบทที่มีอยู่
DELETE /api/context/:id
ลบบริบท
GET /api/context/:id/similar
ค้นหาบริบทที่คล้ายกัน
POST /api/context/batch
นำเข้าหลายบริบทแบบกลุ่ม
เครื่องมือ MCP
เมื่อรันเป็นเซิร์ฟเวอร์ MCP เครื่องมือต่อไปนี้จะพร้อมใช้งาน:
query_context: ค้นหาบริบทการพัฒนา Klever ที่เกี่ยวข้องadd_context: เพิ่มบริบทใหม่ลงในฐานความรู้get_context: เรียกค้นบริบทเฉพาะตาม IDfind_similar: ค้นหาบริบทที่คล้ายกับบริบทที่กำหนดget_knowledge_stats: รับสถิติเกี่ยวกับฐานความรู้init_klever_project: เริ่มต้นโปรเจกต์สมาร์ทคอนแทร็กต์ Klever ใหม่พร้อมสคริปต์ช่วยเหลือenhance_with_context: ปรับปรุงคิวรีโดยอัตโนมัติด้วยบริบท Klever VM ที่เกี่ยวข้อง
ประเภทบริบท
code_example: ส่วนย่อยโค้ดและตัวอย่างที่ใช้งานได้ (โค้ดสมาร์ทคอนแทร็กต์ Rust)best_practice: รูปแบบและแนวปฏิบัติที่แนะนำsecurity_tip: ข้อควรพิจารณาด้านความปลอดภัยและคำเตือนoptimization: เทคนิคการเพิ่มประสิทธิภาพdocumentation: เอกสารและคำแนะนำทั่วไปerror_pattern: ข้อผิดพลาดทั่วไปและวิธีแก้ไขdeployment_tool: สคริปต์การปรับใช้และยูทิลิตี้ (สคริปต์ bash, เครื่องมือ)runtime_behavior: คำอธิบายพฤติกรรมรันไทม์
ฐานความรู้ที่โหลดไว้ล่วงหน้า
เซิร์ฟเวอร์ MCP รวมฐานความรู้ที่ครอบคลุมพร้อมรายการมากกว่า 95 รายการ จัดเป็น 11 หมวดหมู่:
รูปแบบที่สำคัญ
- การจัดการการชำระเงินและการดำเนินการโทเค็น
- การแปลงทศนิยมและการคำนวณ
- การปล่อยอีเวนต์และกฎพารามิเตอร์
- การใช้เครื่องมือ CLI และแนวปฏิบัติที่ดีที่สุด
รูปแบบและตัวอย่างคอนแทร็กต์
- เทมเพลตโครงสร้างคอนแทร็กต์พื้นฐาน
- การใช้งานเกมลอตเตอรีที่สมบูรณ์
- คอนแทร็กต์การวางเดิมพันพร้อมรางวัล
- รูปแบบการสื่อสารข้ามคอนแทร็กต์
- รูปแบบการเข้าถึงพื้นที่จัดเก็บระยะไกล
- โมดูลตัวช่วยตัวแมปโทเค็น
เครื่องมือพัฒนา
- Koperator: การอ้างอิง CLI ที่สมบูรณ์พร้อมการเข้ารหัสอาร์กิวเมนต์
- KSC: คำสั่งสร้างและการตั้งค่าโปรเจกต์
- สคริปต์การปรับใช้ อัปเกรด และสอบถาม
- เครื่องมือจัดการคอนแทร็กต์แบบโต้ตอบ
- ไลบรารียูทิลิตี้ทั่วไป (bech32, การจัดการเครือข่าย)
พื้นที่จัดเก็บและการเพิ่มประสิทธิภาพ
- คู่มือการเลือกตัวแมปพื้นที่จัดเก็บพร้อมการเปรียบเทียบประสิทธิภาพ
- รูปแบบการจัดระเบียบเนมสเปซ
- เอนด์พอยต์ View สำหรับคิวรีที่มีประสิทธิภาพ
- เทคนิคการเพิ่มประสิทธิภาพแก๊ส
- รูปแบบ OptionalValue vs Option
แนวปฏิบัติที่ดีที่สุดและความปลอดภัย
- รูปแบบการตรวจสอบอินพุต
- กลยุทธ์การจัดการข้อผิดพลาด
- การใช้งานโมดูลผู้ดูแลระบบและการหยุดชั่วคราว
- รูปแบบการควบคุมการเข้าถึง
- ข้อผิดพลาดทั่วไปและวิธีแก้ไข
การนำเข้าคอนแทร็กต์
ใช้ยูทิลิตี้การนำเข้าในตัวเพื่อแยกวิเคราะห์และนำเข้าคอนแทร็กต์ Klever:
import { StorageFactory } from './storage/index.js';
import { ContextService } from './context/service.js';
import { ContractIngester } from './utils/ingest.js';
const storage = StorageFactory.create('memory');
const contextService = new ContextService(storage);
const ingester = new ContractIngester(contextService);
// Ingest a single contract
await ingester.ingestContract('./path/to/contract.rs', 'AuthorName');
// Ingest entire directory
await ingester.ingestDirectory('./contracts', 'AuthorName');
// Add common patterns
await ingester.ingestCommonPatterns();
การพัฒนา
# Run tests
pnpm test
# Lint code
pnpm run lint
# Format code
pnpm run format
# Watch mode
pnpm run dev
# Ingest/update knowledge base
pnpm run ingest
การตรวจสอบคอนแทร็กต์
เซิร์ฟเวอร์สามารถตรวจสอบคอนแทร็กต์ Klever และตรวจจับปัญหาโดยอัตโนมัติ:
import { KleverValidator } from './parsers/validators.js';
const issues = KleverValidator.validateContract(contractCode);
// Returns array of detected issues with suggestions
การตรวจสอบรวมถึง:
- รูปแบบคำอธิบายประกอบอีเวนต์ (เครื่องหมายคำพูดคู่, camelCase)
- พารามิเตอร์ API ประเภทที่มีการจัดการ
- การตรวจสอบที่อยู่ศูนย์ในการโอน
- การเลือกตัวแมปพื้นที่จัดเก็บที่เหมาะสมที่สุด
- ข้อตกลงการตั้งชื่อโมดูล
ตัวอย่างกรณีการใช้งาน
1. ผู้ช่วยพัฒนาสมาร์ทคอนแทร็กต์
รวมเข้ากับ IDE ของคุณเพื่อให้คำแนะนำที่คำนึงถึงบริบทสำหรับการพัฒนาคอนแทร็กต์ Klever
2. เครื่องมือตรวจสอบโค้ด
ตรวจสอบคอนแทร็กต์โดยอัตโนมัติเทียบกับแนวปฏิบัติที่ดีที่สุดและรูปแบบความปลอดภัย
3. แพลตฟอร์มการเรียนรู้
ให้ตัวอย่างและคำอธิบายสำหรับนักพัฒนาที่เรียนรู้การพัฒนา Klever
4. ตัวสร้างเอกสาร
สกัดและจัดระเบียบเอกสารคอนแทร็กต์โดยอัตโนมัติ
ข้อกำหนดและตัวอย่างโปรเจกต์
สำหรับตัวอย่างและข้อกำหนดการใช้งานโปรเจกต์ที่สมบูรณ์ ดู:
- เทมเพลตข้อกำหนดโปรเจกต์ - เทมเพลตสำหรับระบุโปรเจกต์สมาร์ทคอนแทร็กต์ Klever แนะนำผู้ช่วย AI ผ่านการค้นพบความรู้ MCP การติดตามงาน และการดำเนินการตามเฟส รวมถึงตัวอย่าง KleverDice
การเริ่มต้นโปรเจกต์
เซิร์ฟเวอร์ MCP รวมเครื่องมือเริ่มต้นโปรเจกต์ที่มีประสิทธิภาพซึ่งสร้างโปรเจกต์สมาร์ทคอนแทร็กต์ Klever ใหม่พร้อมสคริปต์ช่วยเหลือที่จำเป็นทั้งหมด
การใช้เครื่องมือ init_klever_project
เมื่อเชื่อมต่อผ่าน MCP ใช้เครื่องมือ init_klever_project:
{
"name": "my-token-contract",
"template": "empty",
"noMove": false
}
พารามิเตอร์:
name(จำเป็น): ชื่อคอนแทร็กต์ของคุณtemplate(ไม่บังคับ): เทมเพลตที่จะใช้ (ค่าเริ่มต้น: "empty")noMove(ไม่บังคับ): หากเป็น true เก็บโปรเจกต์ไว้ในไดเรกทอรีย่อย (ค่าเริ่มต้น: false)
สคริปต์ช่วยเหลือที่สร้างขึ้น
เครื่องมือสร้างสคริปต์ต่อไปนี้ในไดเรกทอรี scripts/:
- build.sh: สร้างสมาร์ทคอนแทร็กต์
- deploy.sh: ปรับใช้กับ Klever testnet พร้อมการตรวจจับอาร์ติแฟกต์คอนแทร็กต์อัตโนมัติ
- upgrade.sh: อัปเกรดคอนแทร็กต์ที่มีอยู่ (ตรวจจับอัตโนมัติจาก history.json)
- query.sh: สอบถามเอนด์พอยต์คอนแทร็กต์ด้วยการเข้ารหัส/ถอดรหัสที่เหมาะสม
- test.sh: รันการทดสอบคอนแทร็กต์
- interact.sh: แสดงตัวอย่างการใช้งานและคำสั่งที่พร้อมใช้งาน
ตัวอย่างเวิร์กโฟลว์
-
เริ่มต้นโปรเจกต์:
# Via MCP tool init_klever_project({"name": "my-contract"}) -
สร้างคอนแทร็กต์:
./scripts/build.sh -
ปรับใช้กับ testnet:
./scripts/deploy.sh -
สอบถามคอนแทร็กต์:
./scripts/query.sh --endpoint getSum ./scripts/query.sh --endpoint getValue --arg myKey -
อัปเกรดคอนแทร็กต์:
./scripts/upgrade.sh
ประวัติการปรับใช้ทั้งหมดถูกติดตามใน output/history.json เพื่อการอ้างอิงที่ง่าย
การปรับปรุงบริบทอัตโนมัติ
เซิร์ฟเวอร์ MCP สามารถปรับปรุงคิวรีด้วยบริบท Klever VM ที่เกี่ยวข้องโดยอัตโนมัติ สิ่งนี้ทำให้แน่ใจว่าไคลเอนต์ MCP ของคุณสามารถเข้าถึงข้อมูลที่เกี่ยวข้องมากที่สุดเสมอ
การใช้การปรับปรุงบริบท
ใช้เครื่องมือ enhance_with_context เพื่อเพิ่มบริบทที่เกี่ยวข้องลงในคิวรีใดๆ โดยอัตโนมัติ:
{
"tool": "enhance_with_context",
"arguments": {
"query": "How do I create a storage mapper?",
"autoInclude": true
}
}
สิ่งนี้จะ:
- สกัดคำสำคัญที่เกี่ยวข้องจากคิวรี
- ค้นหาฐานความรู้สำหรับบริบทที่ตรงกัน
- ส่งคืนคิวรีที่ปรับปรุงแล้วพร้อมบริบทที่รวมอยู่
- ให้ข้อมูลเมตาเกี่ยวกับสิ่งที่พบ
รูปแบบการรวม
สำหรับไคลเอนต์ MCP ที่ต้องการตรวจสอบบริบท Klever ก่อนเสมอ:
// Always enhance Klever-related queries
if (query.match(/klever|kvm|smart contract|endpoint/i)) {
const enhanced = await callTool('enhance_with_context', { query });
// Use enhanced.enhancedQuery for processing
}
คุณสมบัติการปรับปรุงบริบทเพิ่มพูนคิวรีด้วยความรู้ Klever VM ที่เกี่ยวข้องจากฐานความรู้ที่ครอบคลุมโดยอัตโนมัติ
ตัวอย่างการรวม
ส่วนขยาย VS Code
// Query for token transfer examples
const response = await fetch('http://localhost:3000/api/context/query', {
method: 'POST',
headers: { 'Content-Type': 'application/json' },
body: JSON.stringify({
query: 'transfer',
types: ['code_example'],
contractType: 'token'
})
});
เครื่องมือ CLI
# Using curl to add context
curl -X POST http://localhost:3000/api/context \
-H "Content-Type: application/json" \
-d '{
"type": "security_tip",
"content": "Always check for zero address",
"metadata": {
"title": "Zero Address Check",
"tags": ["security", "validation"]
}
}'
การมีส่วนร่วม
ยินดีต้อนรับการมีส่วนร่วม! โปรดดำเนินการดังนี้:
- Fork repository
- สร้าง feature branch
- ทำการเปลี่ยนแปลงของคุณ
- เพิ่มการทดสอบ
- ส่ง pull request
ใบอนุญาต
MIT License - ดูรายละเอียดในไฟล์ LICENSE
กิตติกรรมประกาศ
- ได้รับแรงบันดาลใจจาก Context7 by Upstash
- สร้างขึ้นสำหรับ Klever Blockchain
- ใช้ Klever VM SDK (Rust)