Skip to main content
Glama

Agent Knowledge MCP

demo_file_unification.py8.18 kB
#!/usr/bin/env python3 """ Demo: So sánh cách sử dụng tools file trước và sau khi hợp nhất """ def demo_old_way(): """Minh họa cách sử dụng tools file trước đây (10 tools riêng lẻ)""" print("🔴 CÁCH CŨ - 10 Tools Riêng Lẻ:") print("=" * 50) # Trước đây phải nhớ và sử dụng 10 tools khác nhau print("1. Đọc file:") print(" read_file(file_path='/path/file.txt', encoding='utf-8')") print() print("2. Ghi file:") print(" write_file(file_path='/path/file.txt', content='data', encoding='utf-8', create_dirs=True)") print() print("3. Thêm nội dung:") print(" append_file(file_path='/path/file.txt', content='more data', encoding='utf-8')") print() print("4. Xóa file:") print(" delete_file(file_path='/path/file.txt')") print() print("5. Di chuyển file:") print(" move_file(source_path='/path/old.txt', destination_path='/path/new.txt', create_dirs=True)") print() print("6. Sao chép file:") print(" copy_file(source_path='/path/file.txt', destination_path='/path/copy.txt', create_dirs=True)") print() print("7. Thông tin file:") print(" file_info(path='/path/file.txt')") print() print("8. Liệt kê thư mục:") print(" list_directory(directory_path='/path', include_hidden=False, recursive=False)") print() print("9. Tạo thư mục:") print(" create_directory(directory_path='/path/newdir', parents=True)") print() print("10. Xóa thư mục:") print(" delete_directory(directory_path='/path/dir', recursive=False)") print() print("❌ Nhược điểm:") print(" • Phải nhớ 10 tên tools khác nhau") print(" • Tên parameters không nhất quán (file_path vs directory_path vs path)") print(" • Khó sử dụng cho người mới") print(" • Code phức tạp khi cần nhiều thao tác") print() def demo_new_way(): """Minh họa cách sử dụng tool unified edit_file""" print("🟢 CÁCH MỚI - 1 Tool Thống Nhất:") print("=" * 50) # Giờ chỉ cần nhớ 1 tool với parameter operation print("1. Đọc file:") print(" edit_file(operation='read', path='/path/file.txt', encoding='utf-8')") print() print("2. Ghi file:") print(" edit_file(operation='write', path='/path/file.txt', content='data', encoding='utf-8', create_dirs=True)") print() print("3. Thêm nội dung:") print(" edit_file(operation='append', path='/path/file.txt', content='more data', encoding='utf-8')") print() print("4. Xóa file:") print(" edit_file(operation='delete', path='/path/file.txt')") print() print("5. Di chuyển file:") print(" edit_file(operation='move', path='/path/old.txt', destination='/path/new.txt', create_dirs=True)") print() print("6. Sao chép file:") print(" edit_file(operation='copy', path='/path/file.txt', destination='/path/copy.txt', create_dirs=True)") print() print("7. Thông tin file:") print(" edit_file(operation='info', path='/path/file.txt')") print() print("8. Liệt kê thư mục:") print(" edit_file(operation='list', path='/path', include_hidden=False, recursive=False)") print() print("9. Tạo thư mục:") print(" edit_file(operation='mkdir', path='/path/newdir', create_dirs=True)") print() print("10. Xóa thư mục:") print(" edit_file(operation='rmdir', path='/path/dir', recursive=False)") print() print("✅ Ưu điểm:") print(" • Chỉ cần nhớ 1 tool duy nhất: edit_file") print(" • Parameter names nhất quán (luôn là 'path')") print(" • Dễ học và sử dụng") print(" • Code gọn gàng và rõ ràng") print(" • IntelliSense tốt hơn trong IDE") print() def demo_workflow_comparison(): """So sánh workflow thực tế""" print("🔄 SO SÁNH WORKFLOW THỰC TẾ:") print("=" * 50) print("📋 Task: Tạo file config, backup, và cleanup") print() print("🔴 Cách cũ (10 tool calls):") print(""" # 1. Tạo thư mục create_directory(directory_path='/app/config', parents=True) # 2. Tạo file config write_file( file_path='/app/config/settings.json', content='{"debug": true}', create_dirs=True ) # 3. Backup file copy_file( source_path='/app/config/settings.json', destination_path='/app/config/settings.backup.json', create_dirs=True ) # 4. Kiểm tra file info file_info(path='/app/config/settings.json') # 5. Liệt kê để verify list_directory(directory_path='/app/config', include_hidden=False) # 6. Cleanup: xóa backup delete_file(file_path='/app/config/settings.backup.json') """) print("🟢 Cách mới (6 tool calls với cùng 1 tool):") print(""" # 1. Tạo thư mục edit_file(operation='mkdir', path='/app/config', create_dirs=True) # 2. Tạo file config edit_file( operation='write', path='/app/config/settings.json', content='{"debug": true}', create_dirs=True ) # 3. Backup file edit_file( operation='copy', path='/app/config/settings.json', destination='/app/config/settings.backup.json', create_dirs=True ) # 4. Kiểm tra file info edit_file(operation='info', path='/app/config/settings.json') # 5. Liệt kê để verify edit_file(operation='list', path='/app/config', include_hidden=False) # 6. Cleanup: xóa backup edit_file(operation='delete', path='/app/config/settings.backup.json') """) print("💡 Nhận xét:") print(" • Cùng số lượng thao tác nhưng interface nhất quán") print(" • Dễ đọc và hiểu code hơn") print(" • IntelliSense chỉ cần gợi ý 1 tool") print(" • Error messages thống nhất") print() def demo_parameter_consistency(): """So sánh tính nhất quán của parameters""" print("🎯 TÍNH NHẤT QUÁN CỦA PARAMETERS:") print("=" * 50) print("🔴 Cách cũ - Parameters không nhất quán:") print(""" read_file(file_path='/path') # file_path write_file(file_path='/path') # file_path list_directory(directory_path='/path') # directory_path file_info(path='/path') # path create_directory(directory_path='/path', parents=True) # directory_path + parents move_file(source_path='/a', destination_path='/b') # source_path + destination_path """) print("🟢 Cách mới - Parameters hoàn toàn nhất quán:") print(""" edit_file(operation='read', path='/path') edit_file(operation='write', path='/path') edit_file(operation='list', path='/path') edit_file(operation='info', path='/path') edit_file(operation='mkdir', path='/path', create_dirs=True) edit_file(operation='move', path='/a', destination='/b') """) print("✅ Lợi ích:") print(" • Luôn luôn là 'path' cho đường dẫn chính") print(" • 'destination' cho đường dẫn đích (nếu có)") print(" • Các optional parameters có tên nhất quán") print(" • Không cần nhớ file_path vs directory_path vs path") print() if __name__ == "__main__": print("🎪 DEMO: File Tools Unification") print("=" * 60) print() demo_old_way() print() demo_new_way() print() demo_workflow_comparison() print() demo_parameter_consistency() print("🎉 Kết luận:") print(" Tool edit_file thống nhất đã đơn giản hóa đáng kể") print(" việc làm việc với files từ 10 tools → 1 tool duy nhất!") print(" Dễ sử dụng hơn, nhất quán hơn, và maintainable hơn.") print()

MCP directory API

We provide all the information about MCP servers via our MCP API.

curl -X GET 'https://glama.ai/api/mcp/v1/servers/itshare4u/AgentKnowledgeMCP'

If you have feedback or need assistance with the MCP directory API, please join our Discord server