Class BuiltInTools
Factory for creating and registering built-in tools.
Provides convenient access to commonly needed tools without external dependencies. Tools are organized into eight categories:
- Data: parsing and transformation (JSON, XML, CSV, databases, spreadsheets, etc.).
- Document: PDF manipulation, image preprocessing, text extraction, OCR.
- Text: string operations, diff, regex, templating, encoding, fuzzy matching.
- Numeric: computation, unit conversion, statistics, financial math, expressions.
- Security: hashing, encryption, JWT, validation, password generation, checksums.
- Utility: date/time, cron, URL, color, locale, MIME types, paths, scheduling.
- IO: file system, process execution, compression, clipboard, environment.
- Net: HTTP, FTP, web search, network diagnostics, SMTP, RSS.
The catalog grows continuously. Use GetAll() to enumerate all available tools, or category-specific methods such as GetFileSystemTools(FileSystemToolOptions) to retrieve a subset.
public static class BuiltInTools
- Inheritance
-
BuiltInTools
- Inherited Members
Examples
// Register specific tools your agent needs
registry.Register(BuiltInTools.Calculator);
registry.Register(BuiltInTools.DateTimeNow);
registry.Register(BuiltInTools.Json);
// Register all tools in a category at once
foreach (var tool in BuiltInTools.GetFileSystemTools())
registry.Register(tool);
Properties
- AsciiArtGenerate
Gets a new ASCII Art generate tool instance.
- Base64ImageConvert
Gets a new Base64 Image convert tool instance.
- Base64ImageInfo
Gets a new Base64 Image info tool instance.
- BaseEncode
Gets a new Base encode tool instance.
- BitwiseBits
Gets a new Bitwise bits tool instance.
- BitwiseConvert
Gets a new Bitwise convert tool instance.
- BitwiseLogic
Gets a new Bitwise logic tool instance.
- CalcAggregate
Gets a new Calculator aggregate tool instance.
- CalcArithmetic
Gets a new Calculator arithmetic tool instance.
- CalcLog
Gets a new Calculator log tool instance.
- CalcMath
Gets a new Calculator math tool instance.
- CalcTrig
Gets a new Calculator trig tool instance.
- ChecksumCompute
Gets a new Checksum compute tool instance.
- ClipboardRead
Gets a new Clipboard Read tool instance.
- ClipboardWrite
Gets a new Clipboard Write tool instance.
- ColorInfo
Gets a new Color Info tool instance.
- ColorModify
Gets a new Color Modify tool instance.
- ColorParse
Gets a new Color Parse tool instance.
- CompressAdd
Gets a new Compress Add tool instance.
- CompressCreate
Gets a new Compress Create tool instance.
- CompressExtract
Gets a new Compress Extract tool instance.
- CompressList
Gets a new Compress List tool instance.
- ConvertDocxToMarkdown
Gets a new DOCX to Markdown conversion tool instance.
- ConvertEmlToMarkdown
Gets a new EML to Markdown conversion tool instance.
- ConvertEmlToPdf
Gets a new EML to PDF conversion tool instance.
- ConvertHtmlToMarkdown
Gets a new HTML to Markdown conversion tool instance.
- ConvertMarkdownToDocx
Gets a new Markdown to DOCX conversion tool instance.
- ConvertMarkdownToHtml
Gets a new Markdown to HTML conversion tool instance.
- ConvertMarkdownToPdf
Gets a new Markdown to PDF conversion tool instance.
- ConvertMboxToMarkdown
Gets a new MBOX to Markdown conversion tool instance.
- CountryList
Gets a new Country list tool instance.
- CountryLookup
Gets a new Country lookup tool instance.
- CronNext
Gets a new Cron Next tool instance.
- CronParse
Gets a new Cron Parse tool instance.
- CryptoEncrypt
Gets a new Crypto encrypt tool instance.
- CryptoKeygen
Gets a new Crypto keygen tool instance.
- CsvConvert
Gets a new CSV convert tool instance.
- CsvParse
Gets a new CSV parse tool instance.
- CsvQuery
Gets a new CSV query tool instance.
- CurrencyFormat
Gets a new Currency format tool instance.
- CurrencyList
Gets a new Currency list tool instance.
- CurrencyMath
Gets a new Currency math tool instance.
- DatabaseBackup
Gets a new Database Backup tool instance.
- DatabaseExecute
Gets a new Database Execute tool instance (write SQL).
- DatabaseExport
Gets a new Database Export tool instance (CSV export).
- DatabaseImport
Gets a new Database Import tool instance (CSV import).
- DatabaseQuery
Gets a new Database Query tool instance (read-only SQL).
- DatabaseVacuum
Gets a new Database Vacuum tool instance.
- DateTimeCalc
Gets a new DateTime Calc tool instance.
- DateTimeNow
Gets a new DateTime Now tool instance.
- DiffCompare
Gets a new Diff compare tool instance.
- DiffStats
Gets a new Diff stats tool instance.
- DocumentAttachmentExtract
Gets a new document attachment extraction tool instance.
- DocumentTextExtract
Gets a new Document Text Extract tool instance.
- DocumentTextInfo
Gets a new Document Text Info tool instance.
- DurationCalc
Gets a new Duration Calc tool instance.
- DurationParse
Gets a new Duration Parse tool instance.
- EncodingConvert
Gets a new Encoding convert tool instance.
- EncodingDetect
Gets a new Encoding detect tool instance.
- EncodingList
Gets a new Encoding list tool instance.
- EnvironmentSystem
Gets a new Environment System tool instance.
- EnvironmentVar
Gets a new Environment Var tool instance.
- ExpressionEval
Gets a new Expression eval tool instance.
- ExpressionParse
Gets a new Expression parse tool instance.
- FileSystemCopy
Gets a new FileSystem Copy tool instance.
- FileSystemDelete
Gets a new FileSystem Delete tool instance.
- FileSystemDiff
Gets a new FileSystem Diff tool instance.
- FileSystemHash
Gets a new FileSystem Hash tool instance.
- FileSystemInfo
Gets a new FileSystem Info tool instance.
- FileSystemList
Gets a new FileSystem List tool instance.
- FileSystemMkdir
Gets a new FileSystem Mkdir tool instance.
- FileSystemMove
Gets a new FileSystem Move tool instance.
- FileSystemRead
Gets a new FileSystem Read tool instance.
- FileSystemSearch
Gets a new FileSystem Search tool instance.
- FileSystemTree
Gets a new FileSystem Tree tool instance.
- FileSystemWatchManage
Gets a new FileSystem Watch Manage tool instance.
- FileSystemWatchStart
Gets a new FileSystem Watch Start tool instance.
- FileSystemWrite
Gets a new FileSystem Write tool instance.
- FinancialInvestment
Gets a new Financial investment tool instance.
- FinancialLoan
Gets a new Financial loan tool instance.
- FinancialTimeValue
Gets a new Financial time value tool instance.
- FtpDelete
Gets a new FTP Delete tool instance.
- FtpDownload
Gets a new FTP Download tool instance.
- FtpList
Gets a new FTP List tool instance.
- FtpMkdir
Gets a new FTP Mkdir tool instance.
- FtpRename
Gets a new FTP Rename tool instance.
- FtpRmdir
Gets a new FTP Rmdir tool instance.
- FtpTest
Gets a new FTP Test tool instance.
- FtpUpload
Gets a new FTP Upload tool instance.
- FuzzyDistance
Gets a new Fuzzy distance tool instance.
- FuzzyMatch
Gets a new Fuzzy match tool instance.
- GuidGenerate
Gets a new GUID generate tool instance.
- GuidParse
Gets a new GUID parse tool instance.
- HashCompute
Gets a new Hash compute tool instance.
- HtmlEncode
Gets a new HTML encode tool instance.
- HtmlExtract
Gets a new HTML extract tool instance.
- HtmlSanitize
Gets a new HTML sanitize tool instance.
- HttpDelete
Gets a new HTTP DELETE tool instance.
- HttpDownload
Gets a new HTTP Download tool instance.
- HttpGet
Gets a new HTTP GET tool instance.
- HttpHead
Gets a new HTTP HEAD tool instance.
- HttpPatch
Gets a new HTTP PATCH tool instance.
- HttpPost
Gets a new HTTP POST tool instance.
- HttpPut
Gets a new HTTP PUT tool instance.
- HumanizeNumber
Gets a new Humanize Number tool instance.
- HumanizeText
Gets a new Humanize Text tool instance.
- ImageCrop
Gets a new Image Crop tool instance.
- ImageDeskew
Gets a new Image Deskew tool instance.
- ImageInfo
Gets a new Image Info tool instance.
- ImageMeasureSkew
Gets a new Image Measure Skew tool instance.
- ImageResize
Gets a new Image Resize tool instance.
- ImageResizeBox
Gets a new Image Resize Box tool instance.
- ImageToPdf
Gets a new Image to PDF tool instance.
- IniConvert
Gets a new INI convert tool instance.
- IniRead
Gets a new INI read tool instance.
- IniWrite
Gets a new INI write tool instance.
- IpCalcAdjacent
Gets a new IP Calculator adjacent tool instance.
- IpCalcParse
Gets a new IP Calculator parse tool instance.
- IpCalcSubnet
Gets a new IP Calculator subnet tool instance.
- JsonFormat
Gets a new JSON format tool instance.
- JsonParse
Gets a new JSON parse tool instance.
- JsonQuery
Gets a new JSON query tool instance.
- JwtDecode
Gets a new JWT decode tool instance.
- JwtSign
Gets a new JWT sign tool instance.
- LocaleFormat
Gets a new Locale Format tool instance.
- LocaleInfo
Gets a new Locale Info tool instance.
- MarkdownConvert
Gets a new Markdown convert tool instance.
- MarkdownExtract
Gets a new Markdown extract tool instance.
- MimeInfo
Gets a new MIME Info tool instance.
- MimeLookup
Gets a new MIME Lookup tool instance.
- NetworkConnectivity
Gets a new Network Connectivity tool instance.
- NetworkDns
Gets a new Network DNS tool instance.
- NetworkInterfaces
Gets a new Network Interfaces tool instance.
- NetworkPing
Gets a new Network Ping tool instance.
- NetworkPortCheck
Gets a new Network Port Check tool instance.
- NetworkPortScan
Gets a new Network Port Scan tool instance.
- OcrRecognize
Gets a new OCR Recognize tool instance.
- PasswordAnalyze
Gets a new Password analyze tool instance.
- PasswordGenerate
Gets a new Password generate tool instance.
- PathBuild
Gets a new Path Build tool instance.
- PathParse
Gets a new Path Parse tool instance.
- PathRelative
Gets a new Path Relative tool instance.
- PdfExtract
Gets a new PDF Extract tool instance.
- PdfMerge
Gets a new PDF Merge tool instance.
- PdfMetadata
Gets a new PDF Metadata tool instance.
- PdfPages
Gets a new PDF Pages tool instance.
- PdfSearch
Gets a new PDF Search tool instance.
- PdfSplit
Gets a new PDF Split tool instance.
- PdfToImage
Gets a new PDF to Image tool instance.
- PdfUnlock
Gets a new PDF Unlock tool instance.
- PerfBenchmark
Gets a new Performance Benchmark tool instance.
- PerfMonitor
Gets a new Performance Monitor tool instance.
- PhoneticEncode
Gets a new Phonetic encode tool instance.
- ProcessKill
Gets a new Process Kill tool instance.
- ProcessList
Gets a new Process List tool instance.
- ProcessRun
Gets a new Process Run tool instance.
- ProcessShell
Gets a new Process Shell tool instance.
- QrCodeGenerate
Gets a new QR Code generate tool instance.
- RandomChoice
Gets a new Random choice tool instance.
- RandomNumber
Gets a new Random number tool instance.
- RegexMatch
Gets a new Regex match tool instance with default options.
- RegexReplace
Gets a new Regex replace tool instance with default options.
- RegexValidate
Gets a new Regex validate tool instance with default options.
- RssFetch
Gets a new RSS Fetch tool instance with default options.
- ScheduleNext
Gets a new Schedule Next tool instance.
- ScheduleParse
Gets a new Schedule Parse tool instance.
- SemverParse
Gets a new SemVer Parse tool instance.
- SemverRange
Gets a new SemVer Range tool instance.
- SlugGenerate
Gets a new Slug generate tool instance.
- SpreadsheetCreate
Gets a new Spreadsheet Create tool instance.
- SpreadsheetRead
Gets a new Spreadsheet Read tool instance.
- SpreadsheetWrite
Gets a new Spreadsheet Write tool instance.
- StatsAnalysis
Gets a new Stats analysis tool instance.
- StatsDescriptive
Gets a new Stats descriptive tool instance.
- StatsVisualize
Gets a new Stats visualize tool instance.
- TemplateAnalyze
Gets a new Template analyze tool instance.
- TemplateRender
Gets a new Template render tool instance.
- TextManipulate
Gets a new Text manipulate tool instance.
- TextSearch
Gets a new Text search tool instance.
- TextStats
Gets a new Text stats tool instance.
- TextTransform
Gets a new Text transform tool instance.
- TimeZoneConvert
Gets a new TimeZone Convert tool instance.
- TimeZoneList
Gets a new TimeZone List tool instance.
- UnitConvert
Gets a new Unit convert tool instance.
- UrlBuild
Gets a new URL Build tool instance.
- UrlEncode
Gets a new URL Encode tool instance.
- UrlParse
Gets a new URL Parse tool instance.
- ValidatorData
Gets a new Validator data tool instance.
- ValidatorFormat
Gets a new Validator format tool instance.
- WebSearch
Gets a new Web Search tool instance with default options (DuckDuckGo, no API key required).
- XmlConvert
Gets a new XML convert tool instance.
- XmlParse
Gets a new XML parse tool instance.
- XmlQuery
Gets a new XML query tool instance.
- XmlTransform
Gets a new XML transform tool instance.
- YamlConvert
Gets a new YAML convert tool instance.
- YamlParse
Gets a new YAML parse tool instance.
- YamlQuery
Gets a new YAML query tool instance.
Methods
- CreateClipboardRead(ClipboardToolOptions)
Creates a Clipboard Read tool with custom options.
- CreateClipboardWrite(ClipboardToolOptions)
Creates a Clipboard Write tool with custom options.
- CreateCompressAdd(CompressToolOptions)
Creates a Compress Add tool with custom options.
- CreateCompressCreate(CompressToolOptions)
Creates a Compress Create tool with custom options.
- CreateCompressExtract(CompressToolOptions)
Creates a Compress Extract tool with custom options.
- CreateCompressList(CompressToolOptions)
Creates a Compress List tool with custom options.
- CreateCsvConvert(CsvToolOptions)
Gets a new CSV convert tool instance with custom options.
- CreateCsvParse(CsvToolOptions)
Gets a new CSV parse tool instance with custom options.
- CreateCsvQuery(CsvToolOptions)
Gets a new CSV query tool instance with custom options.
- CreateDatabaseBackup(DatabaseToolOptions)
Creates a Database Backup tool with custom options.
- CreateDatabaseExecute(DatabaseToolOptions)
Creates a Database Execute tool with custom options.
- CreateDatabaseExport(DatabaseToolOptions)
Creates a Database Export tool with custom options.
- CreateDatabaseImport(DatabaseToolOptions)
Creates a Database Import tool with custom options.
- CreateDatabaseQuery(DatabaseToolOptions)
Creates a Database Query tool with custom options.
- CreateDatabaseVacuum(DatabaseToolOptions)
Creates a Database Vacuum tool with custom options.
- CreateEnvironmentSystem(EnvironmentToolOptions)
Creates an Environment System tool with custom options.
- CreateEnvironmentVar(EnvironmentToolOptions)
Creates an Environment Var tool with custom options.
- CreateFileSystemCopy(FileSystemToolOptions)
Creates a FileSystem Copy tool with custom options.
- CreateFileSystemDelete(FileSystemToolOptions)
Creates a FileSystem Delete tool with custom options.
- CreateFileSystemDiff(FileSystemToolOptions)
Creates a FileSystem Diff tool with custom options.
- CreateFileSystemHash(FileSystemToolOptions)
Creates a FileSystem Hash tool with custom options.
- CreateFileSystemInfo(FileSystemToolOptions)
Creates a FileSystem Info tool with custom options.
- CreateFileSystemList(FileSystemToolOptions)
Creates a FileSystem List tool with custom options.
- CreateFileSystemMkdir(FileSystemToolOptions)
Creates a FileSystem Mkdir tool with custom options.
- CreateFileSystemMove(FileSystemToolOptions)
Creates a FileSystem Move tool with custom options.
- CreateFileSystemRead(FileSystemToolOptions)
Creates a FileSystem Read tool with custom options.
- CreateFileSystemSearch(FileSystemToolOptions)
Creates a FileSystem Search tool with custom options.
- CreateFileSystemTree(FileSystemToolOptions)
Creates a FileSystem Tree tool with custom options.
- CreateFileSystemWatchManage(FileSystemWatchToolOptions)
Creates a FileSystem Watch Manage tool with custom options.
- CreateFileSystemWatchStart(FileSystemWatchToolOptions)
Creates a FileSystem Watch Start tool with custom options.
- CreateFileSystemWrite(FileSystemToolOptions)
Creates a FileSystem Write tool with custom options.
- CreateFtpDelete(FtpToolOptions)
Creates an FTP Delete tool with custom options.
- CreateFtpDownload(FtpToolOptions)
Creates an FTP Download tool with custom options.
- CreateFtpList(FtpToolOptions)
Creates an FTP List tool with custom options.
- CreateFtpMkdir(FtpToolOptions)
Creates an FTP Mkdir tool with custom options.
- CreateFtpRename(FtpToolOptions)
Creates an FTP Rename tool with custom options.
- CreateFtpRmdir(FtpToolOptions)
Creates an FTP Rmdir tool with custom options.
- CreateFtpTest(FtpToolOptions)
Creates an FTP Test tool with custom options.
- CreateFtpUpload(FtpToolOptions)
Creates an FTP Upload tool with custom options.
- CreateHttpDelete(HttpToolOptions)
Creates an HTTP DELETE tool with custom options.
- CreateHttpDelete(HttpClient, HttpToolOptions)
Creates an HTTP DELETE tool with an existing HttpClient.
- CreateHttpDownload(HttpToolOptions)
Creates an HTTP Download tool with custom options.
- CreateHttpDownload(HttpClient, HttpToolOptions)
Creates an HTTP Download tool with an existing HttpClient.
- CreateHttpGet(HttpToolOptions)
Creates an HTTP GET tool with custom options.
- CreateHttpGet(HttpClient, HttpToolOptions)
Creates an HTTP GET tool with an existing HttpClient.
- CreateHttpHead(HttpToolOptions)
Creates an HTTP HEAD tool with custom options.
- CreateHttpHead(HttpClient, HttpToolOptions)
Creates an HTTP HEAD tool with an existing HttpClient.
- CreateHttpPatch(HttpToolOptions)
Creates an HTTP PATCH tool with custom options.
- CreateHttpPatch(HttpClient, HttpToolOptions)
Creates an HTTP PATCH tool with an existing HttpClient.
- CreateHttpPost(HttpToolOptions)
Creates an HTTP POST tool with custom options.
- CreateHttpPost(HttpClient, HttpToolOptions)
Creates an HTTP POST tool with an existing HttpClient.
- CreateHttpPut(HttpToolOptions)
Creates an HTTP PUT tool with custom options.
- CreateHttpPut(HttpClient, HttpToolOptions)
Creates an HTTP PUT tool with an existing HttpClient.
- CreateNetworkPing(NetworkToolOptions)
Creates a Network Ping tool with custom options.
- CreateNetworkPortScan(NetworkToolOptions)
Creates a Network Port Scan tool with custom options.
- CreateProcessKill(ProcessToolOptions)
Creates a Process Kill tool with custom options.
- CreateProcessList(ProcessToolOptions)
Creates a Process List tool with custom options.
- CreateProcessRun(ProcessToolOptions)
Creates a Process Run tool with custom options.
- CreateProcessShell(ProcessToolOptions)
Creates a Process Shell tool with custom options.
- CreateRegexMatch(RegexToolOptions)
Creates a new Regex match tool instance with custom options.
- CreateRegexReplace(RegexToolOptions)
Creates a new Regex replace tool instance with custom options.
- CreateRegexValidate(RegexToolOptions)
Creates a new Regex validate tool instance with custom options.
- CreateRssFetch(RssFeedToolOptions)
Gets a new RSS Fetch tool instance with custom options.
- CreateSmtpSend(SmtpToolOptions)
Gets a new SMTP Send tool instance with the specified options.
- CreateSmtpTest(SmtpToolOptions)
Gets a new SMTP Test tool instance with the specified options.
- CreateSpreadsheetCreate(SpreadsheetToolOptions)
Creates a Spreadsheet Create tool with custom options.
- CreateSpreadsheetRead(SpreadsheetToolOptions)
Creates a Spreadsheet Read tool with custom options.
- CreateSpreadsheetWrite(SpreadsheetToolOptions)
Creates a Spreadsheet Write tool with custom options.
- CreateWebSearch(Options)
Gets a new Web Search tool instance with custom options.
- CreateWebSearch(Provider, string)
Gets a new Web Search tool instance with the specified provider.
- CreateXmlQuery(XmlToolOptions)
Gets a new XML query tool instance with custom options.
- CreateXmlTransform(XmlToolOptions)
Gets a new XML transform tool instance with custom options.
- GetAll()
Gets all built-in tools including I/O tools with default options. Note: SMTP tools (SmtpSendTool, SmtpTestTool) are not included as they require explicit configuration.
- GetByCategory(string)
Gets all built-in tools in the specified category.
- GetByMaxRisk(ToolRiskLevel)
Gets all built-in tools filtered by maximum risk level.
- GetClipboardTools(ClipboardToolOptions)
Gets all Clipboard tools with optional shared options.
- GetColorTools()
Gets all Color tools (parse, modify, info).
- GetCompressTools(CompressToolOptions)
Gets all Compress tools with optional shared options.
- GetDatabaseTools(DatabaseToolOptions)
Gets all Database tools with optional shared options.
- GetEnvironmentTools(EnvironmentToolOptions)
Gets all Environment tools with optional shared options.
- GetFileSystemTools(FileSystemToolOptions)
Gets all FileSystem tools with optional shared options.
- GetFileSystemWatchTools(FileSystemWatchToolOptions)
Gets all FileSystem Watch tools with optional shared options.
- GetFtpTools(FtpToolOptions)
Gets all FTP tools with optional shared options.
- GetHttpTools(HttpToolOptions)
Gets all HTTP tools with optional shared options.
- GetNetworkTools(NetworkToolOptions)
Gets all Network tools with optional shared options.
- GetProcessTools(ProcessToolOptions)
Gets all Process tools with optional shared options.
- GetReadOnly()
Gets all built-in tools that are read-only (no state mutation).
- GetSafeTools()
Gets all safe built-in tools (no I/O capabilities).
- GetSmtpTools(SmtpToolOptions)
Gets all SMTP tools with the specified options.
- GetSpreadsheetTools(SpreadsheetToolOptions)
Gets all Spreadsheet tools with optional shared options.
- GetToolInfo()
Gets tool information for all built-in tools.