ToolBox MCP Server
The ToolBox MCP Server is an AI-powered automation platform that orchestrates modular tools with enterprise-grade capabilities. With this server, you can:
Tool Development & Management: Add custom tools via
src/toolswith AI assistance, hot-reloading for zero-downtime updatesWorkflow Orchestration: Chain multiple tools into serial/parallel workflows with transaction management, retries, and timeouts
File Operations: Manage files (read, write, copy, move, delete), compress/extract (ZIP, TAR, TAR.GZ), and process Excel/CSV files
Data Processing: Perform calculations (mathematical, statistical, financial), database operations (SQLite, Redis), and image processing (compression, resizing)
Remote Interactions: Execute SSH commands and transfer files via SFTP
Task Automation: Schedule one-time or recurring tasks
Integration: Connect with MongoDB, Redis, and SSH servers
Development Support: Debugging via Node.js Inspector, MCP Inspector, and VSCode
Supports automated deployment via GitHub Actions for continuous integration and version releases of tools
Incorporates Mermaid diagrams for visualizing tool workflows and development processes
Provides database integration for storing and retrieving data with MongoDB, supporting enterprise-grade capabilities for automation workflows
Provides runtime environment integration with debugging support via Node.js inspector protocol
Enables caching and data structure operations through Redis integration, supporting high-performance data access for tools and workflows
Click on "Install Server".
Wait a few minutes for the server to deploy. Once ready, it will show a "Started" state.
In the chat, type
@followed by the MCP server name and your instructions, e.g., "@ToolBox MCP Servercreate a workflow to backup my database and send me a summary report"
That's it! The server will respond to your query, and you can continue using it as needed.
Here is a step-by-step guide with screenshots.
ToolBox MCP Server
An AI-powered automation tool development platform, providing:
đ§Š Modular Architecture - Tool hot-reloading via the src/tools directory
đ¤ AI Assistance - AI engine for natural language to tool template conversion
đ Enterprise-Grade Capabilities - Integration of production environment services such as MongoDB/Redis/SSH
đ Real-time Updates - Zero-downtime deployment via buildReload_tool
graph LR
A[Developer] -->|Create| B(Tool Template)
B --> C{AI Verification}
C -->|Pass| D[Automatic Loading]
C -->|Fail| E[Human Review]
D --> F[API Exposure]
F --> G[Client Invocation]
style C fill:#4CAF50,stroke:#333Contributing
Contributing Guidelines (English) Contributing Guidelines (ä¸ć)
Related MCP server: Jachy MCP Server
Features
Tools
View the complete tool specifications and detailed documentation: TOOL.md
Resources
Resources are generated dynamically as a result of tool execution. For example, the create_note tool creates a note resource that can be accessed via its URI.
Workflow Tool
The workflow_tool is a powerful tool for orchestrating complex workflows by chaining together multiple tools. It supports:
Serial and Parallel Execution: Execute tools in a sequential or parallel manner.
Transaction Management: Manage transactions with compensation mechanisms for error handling.
Detailed Reporting: Generate detailed reports on workflow execution, including the status, execution time, and results of each step.
Customizable Output: Specify an output file to save the workflow execution report.
Prompts
summarize_notes: Generates summaries of the notes created using thecreate_notetool.
Development Guide
Adding New Tools
graph TD
A[Create Tool Template] --> B{AI Automatic Verification}
B -->|Schema Validation| C[Generate Test Cases]
B -->|Risk Exists| D[Human Review]
C --> E[Unit Testing]
D -->|Approve| E
E --> F[Security Scanning]
F --> G[Build Integration]
G --> H[Version Release]
style A fill:#f9f,stroke:#333
style H fill:#4CAF50,stroke:#333Detailed Development Process
Template Creation: Create a new tool file in the
src/tools/directoryAI Verification: Automatically check the parameter Schema compliance
Test Generation: Generate test cases based on the function description
Security Review: Static code analysis and dependency checking
Continuous Integration: Automated deployment via GitHub Actions
View the complete development guide: prompt.md Refer to existing implementations: Tool Examples
Development
Install dependencies:
npm installBuild the server:
npm run buildFor development with auto-rebuild:
npm run watchMarketplace Submission
A Seamless Integrated Automation Toolkit for Claude Desktop
Installation
To integrate with the Claude Desktop application, add the following server configuration to:
macOS:
~/Library/Application Support/Claude/claude_desktop_config.jsonWindows:
%APPDATA%/Claude/claude_desktop_config.json
// Cline MCP server configuration file
{
"command": "node",
"args": [
"--inspect=9229",
"/MCP/ToolBox/build/index.js"
],
"env": {
"MONGO_URI": "mongodb://user:password@host:port/db",
"MONGO_INDEX_OPS": "true",
"REDIS_URI": "redis://:password@host:port",
"SSH_server1_URI": "username:password@host:port",
"GEMINI_API_KEY":"GEMINI_API_KEY",
"SSEPORT": "8080" // Optional: If set, the server will use SSE transport on this port. Otherwise, it defaults to Stdio transport.
},
"disabled": false,
"autoApprove": []
}Core Values
đ Enterprise-Grade Automation Leveraging package.json configuration, providing:
Global CLI tool installation (
tbxcommand)Workflow scheduling engine
Multi-platform support (Windows/macOS)
Hybrid cloud deployment capabilities (MongoDB/Redis/SSH)
đ§ Developer-Friendly
Strongly-typed TypeScript implementation
Real-time debugging support (--inspect flag)
VSCode debugging configuration template
Hot-reloading mechanism:
graph LR A[Code Modification] --> B[buildReload_tool] B --> C[Automatic Compilation] C --> D[Security Verification] D --> E[Tool Reloading] style B fill:#4CAF50,stroke:#333Implemented by calling
buildReload_tool:Zero-downtime updates
Automatic dependency tree parsing
Version compatibility check
Sandbox environment testing
Debugging
Debugging MCP servers can be challenging due to their stdio communication. Here are a few approaches:
đ§ Disclaimers
Sensitive Data
DO NOT CONFIGURE CONTAINERS WITH SENSITIVE DATA. This includes API keys, database passwords, etc.
Any sensitive data exchanged with the LLM is inherently compromised, unless the LLM is running on your local machine.
Legal Liability â ď¸
â ď¸ The tool is provided "as-is" under MIT License without warranties
â ď¸ Developer not liable for direct/indirect damages
â ď¸ Users bear all risks from improper container configurations
â ď¸ Any illegal or destructive usage is strictly prohibited
â ď¸ See LICENSE for full terms
Node.js Inspector: Launch the server with the
--inspect=9229flag:
node --inspect=9229 build/index.jsThen, connect to the server using Chrome DevTools by navigating to chrome://inspect.
MCP Inspector: Utilize the MCP Inspector, a dedicated debugging tool accessible via the
inspectornpm script:VSCode Debugging
To debug with VSCode, create a .vscode/launch.json file with the following configuration:
{
"version": "0.2.0",
"configurations": [
{
"type": "node",
"request": "attach",
"name": "ToolBox",
"address": "localhost",
"port": 9229,
"localRoot": "${workspaceFolder}"
}
]
}Then, launch the server with the --inspect=9229 flag and attach the VSCode debugger.
Available Tools
17 toolsbuildReload_toolD
| Name | Required | Description | Default |
|---|---|---|---|
No parameters | |||
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
Tool has no description.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
Tool has no description.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
Tool has no description.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Tool has no description.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
Tool has no description.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
Tool has no description.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
calculator_toolD
| Name | Required | Description | Default |
|---|---|---|---|
| calculation_type | Yes | The type of calculation to perform. | |
| expression | No | The mathematical expression to evaluate (for 'evaluate_expression'). | |
| statistics_operation | No | ||
| data_points | No | ||
| data_set_x | No | ||
| data_set_y | No | ||
| geometry_operation | No | ||
| radius | No | ||
| length | No | ||
| width | No | ||
| side | No | ||
| financial_math_operation | No | ||
| principal | No | ||
| rate | No | Interest rate as a percentage (e.g., 5 for 5%). | |
| time | No | Time in years. | |
| n_compounding_periods | No | ||
| future_value | No | ||
| logic_operation | No | ||
| operand_a | No | ||
| operand_b | No | ||
| number_theory_operation | No | ||
| number_a | No | ||
| number_b | No | ||
| number_theory_modulus | No | ||
| combinatorics_operation | No | ||
| n_value | No | ||
| r_value | No | ||
| probability_operation | No | ||
| probability_a | No | ||
| probability_b | No | ||
| probability_a_given_b | No | ||
| probability_b_given_a | No | ||
| set_theory_operation | No | ||
| set_a | No | ||
| set_b | No | ||
| complex_number_operation | No | ||
| complex_a | No | First complex number (e.g., '3 + 4i'). | |
| complex_b | No | Second complex number (e.g., '1 - 2i'). | |
| precision_level | No |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
Tool has no description.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
Tool has no description.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
Tool has no description.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Tool has no description.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
Tool has no description.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
Tool has no description.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
cli_toolD
| Name | Required | Description | Default |
|---|---|---|---|
| command | No | čŚć§čĄçĺčĄĺ˝äť¤ | |
| commands | No | čŚć§čĄçĺ¤čĄĺ˝äť¤ĺşĺ (ä¸ 'command' äşćĽ) | |
| mode | No | ć§čĄć¨Ąĺź: sync (ĺćĽéťĺĄ), async (ĺźćĽééťĺĄ) | sync |
| timeout | No | ĺ˝äť¤ć§čĄçčś ćśćśé´ďźç§ďź | |
| cwd | No | ĺ˝äť¤ć§čĄç塼ä˝çŽĺ˝ (çťĺŻščˇŻĺž) | |
| platform | No | ĺźşĺśćĺŽć§čĄĺ˝äť¤çćä˝çłťçťçŻĺ˘ | auto |
| safe_mode | No | ćŻĺŚĺŻç¨ĺąéŠĺ˝äť¤čżćť¤ |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
Tool has no description.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
Tool has no description.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
Tool has no description.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Tool has no description.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
Tool has no description.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
Tool has no description.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
compress_toolD
| Name | Required | Description | Default |
|---|---|---|---|
| action | Yes | Action type: compress or extract | |
| sourcePath | Yes | Absolute path to source file/directory | |
| destinationPath | Yes | Absolute path to destination file/directory | |
| format | Yes | Compression format: zip, tar, tar.gz |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
Tool has no description.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
Tool has no description.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
Tool has no description.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Tool has no description.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
Tool has no description.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
Tool has no description.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
create_noteD
| Name | Required | Description | Default |
|---|---|---|---|
| title | Yes | Note title | |
| content | Yes | Note content |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
Tool has no description.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
Tool has no description.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
Tool has no description.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Tool has no description.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
Tool has no description.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
Tool has no description.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
excel_toolD
| Name | Required | Description | Default |
|---|---|---|---|
| action | Yes | Action to perform: read, write, or convert_json_to_xlsx | |
| filePath | Yes | Absolute path to the input file | |
| outputFilePath | No | Absolute path to the output file (required for write and convert actions) | |
| format | Yes | File format: xlsx, csv | |
| data | No | Data to write (required for write action) | |
| options | No | Additional options |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
Tool has no description.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
Tool has no description.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
Tool has no description.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Tool has no description.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
Tool has no description.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
Tool has no description.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
fileSystem_toolD
| Name | Required | Description | Default |
|---|---|---|---|
| operation | Yes | čŚć§čĄçćäťśçłťçťćä˝ (äžĺŚ: read, write, copy) | |
| sourcePath | Yes | ćşćäťśççťĺŻščˇŻĺž | |
| targetPath | No | çŽć ćäťśççťĺŻščˇŻĺž (ç¨äş copy/move ćä˝) | |
| content | No | čŚĺĺ Ľćäťśçĺ 厚 (ç¨äş 'write' ćä˝) | |
| recursive | No | éĺ˝ĺ°ĺŻšçŽĺ˝ĺşç¨ćä˝ | |
| overwrite | No | ĺ¨ copy/move ćä˝ä¸čŚç塲ĺĺ¨çćäťś | |
| showHidden | No | ĺ¨ list/listDetails ä¸ĺ ĺŤéčćäťś/çŽĺ˝ | |
| fileMode | No | ć䝜樥ĺźďźćéďźďźä˝żç¨ĺ Ťčżĺść źĺź (äžĺŚ, 755) | |
| uid | No | ç¨äş chown ćä˝çç¨ćˇ ID | |
| gid | No | ç¨äş chown ćä˝ççť ID |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
Tool has no description.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
Tool has no description.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
Tool has no description.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Tool has no description.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
Tool has no description.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
Tool has no description.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
gemini_image_toolD
| Name | Required | Description | Default |
|---|---|---|---|
| operation | Yes | generate_image: Generate new image, edit_image: Edit existing image | |
| prompt | Yes | Prompt for image generation/editing | |
| inputImage | No | Image path (required for edit_image) | |
| outputDir | Yes | Output directory path | |
| fileName | No | Output file name template | image-${year}_${month}_${day}_${hour}_${minute}_${second}.png |
| temperature | No | Temperature of the model | |
| topP | No | Top P of the model | |
| topK | No | Top K of the model | |
| maxOutputTokens | No | Maximum number of output tokens |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
Tool has no description.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
Tool has no description.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
Tool has no description.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Tool has no description.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
Tool has no description.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
Tool has no description.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
image_toolD
| Name | Required | Description | Default |
|---|---|---|---|
| sourcePath | Yes | Source file or directory path | |
| outputPath | No | Output directory path. Defaults to a new file (e.g., 'source.processed.jpg') or a new directory (e.g., 'source_processed'). | |
| quality | No | Compression quality for JPEG/WebP/AVIF/TIFF (1-100, defaults to 80) | |
| compressionLevel | No | PNG compression level (0-9, defaults to 6) | |
| resize | No | Resize options | |
| format | No | Output format (optional, keeps original if not specified) | |
| recursive | No | Process subdirectories recursively | |
| backupDir | No | Backup directory path (optional) |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
Tool has no description.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
Tool has no description.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
Tool has no description.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Tool has no description.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
Tool has no description.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
Tool has no description.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
log_toolD
| Name | Required | Description | Default |
|---|---|---|---|
| pageSize | No | Logs per page (1-100) | |
| page | No | Page number (>= 1) | |
| toolName | No | Regex to match tool name | |
| status | No | Log status (success or error) | |
| minDuration | No | Minimum duration (ms) | |
| maxDuration | No | Maximum duration (ms) | |
| startTime | No | Start time (ISO8601) | |
| endTime | No | End time (ISO8601) |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
Tool has no description.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
Tool has no description.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
Tool has no description.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Tool has no description.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
Tool has no description.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
Tool has no description.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
mongo_toolD
| Name | Required | Description | Default |
|---|---|---|---|
| dbName | Yes | MongoDB ć°ćŽĺşĺç§° | |
| collectionName | No | MongoDB éĺĺç§° | |
| queryType | No | MongoDB ćĽčŻ˘çąťĺ | |
| operationType | No | ć°ćŽĺşçŽĄçćä˝çąťĺ (ç´˘ĺź/éĺ玥ç) | |
| where | No | ćĽčŻ˘ćĄäťś (BSON/JSON 寚蹥) | |
| data | No | ç¨äşćĺ Ľććżć˘çć°ćŽ (ĺ个寚蹥ć寚蹥ć°çť) | |
| updateOperators | No | ć´ć°ćä˝çŹŚ (äžĺŚ: { $set: { field: 'value' } }) | |
| pipeline | No | čĺ玥ééśćŽľ (寚蹥ć°çť) | |
| field | No | ç¨äş distinct ćä˝çĺ掾ĺ | |
| indexes | No | ç´˘ĺźč§č (äžĺŚ: { field: 1 }) | |
| newName | No | ç¨äş renameCollection çć°ĺç§° | |
| bulkOperations | No | ćšéĺĺ Ľćä˝ć°çť | |
| options | No | ĺ śäťé饚 (äžĺŚ: { sort: { field: -1 }, limit: 10 }) |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
Tool has no description.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
Tool has no description.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
Tool has no description.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Tool has no description.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
Tool has no description.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
Tool has no description.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
redis_toolD
| Name | Required | Description | Default |
|---|---|---|---|
| command | Yes | čŚć§čĄç Redis ĺ˝äť¤ (äžĺŚ, 'GET', 'SET') | |
| args | No | ĺ˝äť¤çĺć°ĺ襨 (äžĺŚ: ["mykey", "myvalue"]) |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
Tool has no description.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
Tool has no description.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
Tool has no description.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Tool has no description.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
Tool has no description.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
Tool has no description.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
schedule_toolD
| Name | Required | Description | Default |
|---|---|---|---|
| action | Yes | Action type (create/cancel/list) | |
| time | No | Absolute execution time (YYYY-MM-DD HH:mm:ss) | |
| delaySeconds | No | Delay execution by N seconds | |
| interval | No | Recurring interval pattern (e.g. 'every@5m') | |
| toolName | No | Tool to execute (e.g. 'time_tool') | |
| toolArgs | No | Parameters for the target tool | |
| id | No | Task ID (required for cancel) |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
Tool has no description.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
Tool has no description.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
Tool has no description.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Tool has no description.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
Tool has no description.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
Tool has no description.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
sftp_toolD
| Name | Required | Description | Default |
|---|---|---|---|
| serverName | Yes | SSH server name | |
| action | Yes | Action: upload or download | |
| localPath | Yes | Local file path (absolute) | |
| remotePath | Yes | Remote file path |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
Tool has no description.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
Tool has no description.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
Tool has no description.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Tool has no description.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
Tool has no description.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
Tool has no description.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
ssh_toolD
| Name | Required | Description | Default |
|---|---|---|---|
| serverName | Yes | SSH server name | |
| command | Yes | Command to execute |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
Tool has no description.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
Tool has no description.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
Tool has no description.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Tool has no description.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
Tool has no description.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
Tool has no description.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
time_toolD
| Name | Required | Description | Default |
|---|---|---|---|
| action | Yes | The operation to perform. | |
| time_str | No | An ISO 8601 time string (e.g., '2025-03-15T10:00:00Z'). Required for 'format_time' and 'to_timestamp'. | |
| timezone | No | The target timezone (e.g., 'UTC', 'America/New_York', 'Asia/Shanghai'). | |
| timestamp | No | Unix timestamp in milliseconds. Required for 'from_timestamp'. | |
| format_options | No | Formatting options for the time string, based on Intl.DateTimeFormat. |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
Tool has no description.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
Tool has no description.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
Tool has no description.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Tool has no description.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
Tool has no description.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
Tool has no description.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
workflow_toolD
| Name | Required | Description | Default |
|---|---|---|---|
| version | No | Workflow definition version (e.g., '1.0.1') | 1.0 |
| parallel | No | If true, executes all steps in parallel. | |
| steps | Yes | List of workflow steps | |
| outputFile | No | Path to output file (optional) |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
Tool has no description.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
Tool has no description.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
Tool has no description.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Tool has no description.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
Tool has no description.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
Tool has no description.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
Tool Schema Changelog
Recent tool additions, removals, and schema changes observed during successful MCP inspections. Dates show when Glama detected each change.
10 tool updates
v1.0.0- Changed
calculator_tool51 fields changed- changed
Input schema / descriptionPrevious value: -"Calculator tool supporting various math operations."New value: +"A powerful universal calculator supporting basic expressions, statistics, geometry, finance, logic, number theory, combinatorics, probability, set theory, and complex numbers." - changed
Input schema / properties / calculation_type / enumPrevious value: -[ - "evaluate_expression", - "calculate_function", - "calculate_statistics", - "perform_geometry", - "perform_financial_math", - "perform_logic_operations", - "perform_number_theory", - "perform_combinatorics", - "calculate_probability", - "perform_set_theory", - "perform_complex_number" -]New value: +[ + "evaluate_expression", + "calculate_statistics", + "perform_geometry", + "perform_financial_math", + "perform_logic_operations", + "perform_number_theory", + "perform_combinatorics", + "calculate_probability", + "perform_set_theory", + "perform_complex_number" +] - removed
Input schema / properties / combinatorics_operation / descriptionRemoved value: -"The type of combinatorics operation." - added
Input schema / properties / complex_aAdded value: +{ + "description": "First complex number (e.g., '3 + 4i').", + "type": "string" +} - removed
Input schema / properties / complex_a_imaginaryRemoved value: -{ - "description": "The imaginary part of the first complex number.", - "type": "number" -} - removed
Input schema / properties / complex_a_realRemoved value: -{ - "description": "The real part of the first complex number.", - "type": "number" -} - added
Input schema / properties / complex_bAdded value: +{ + "description": "Second complex number (e.g., '1 - 2i').", + "type": "string" +} - removed
Input schema / properties / complex_b_imaginaryRemoved value: -{ - "description": "The imaginary part of the second complex number (if needed).", - "type": "number" -} - removed
Input schema / properties / complex_b_realRemoved value: -{ - "description": "The real part of the second complex number (if needed).", - "type": "number" -} - removed
Input schema / properties / complex_number_operation / descriptionRemoved value: -"The type of complex number operation." - removed
Input schema / properties / data_points / descriptionRemoved value: -"The array of data points." - removed
Input schema / properties / data_set_x / descriptionRemoved value: -"The dataset X for bivariate statistics." - removed
Input schema / properties / data_set_y / descriptionRemoved value: -"The dataset Y for bivariate statistics." - changed
Input schema / properties / expression / descriptionPrevious value: -"The mathematical expression to calculate."New value: +"The mathematical expression to evaluate (for 'evaluate_expression')." - removed
Input schema / properties / financial_math_operation / descriptionRemoved value: -"The type of financial math calculation to perform." - removed
Input schema / properties / function_argumentRemoved value: -{ - "description": "The argument value for the function.", - "type": "number" -} - removed
Input schema / properties / function_nameRemoved value: -{ - "description": "The name of the function to calculate.", - "type": "string" -} - added
Input schema / properties / future_valueAdded value: +{ + "type": "number" +} - removed
Input schema / properties / geometry_operation / descriptionRemoved value: -"The type of geometric calculation to perform." - removed
Input schema / properties / heightRemoved value: -{ - "description": "The height.", - "type": "number" -} - removed
Input schema / properties / length / descriptionRemoved value: -"The length." - removed
Input schema / properties / logic_operation / descriptionRemoved value: -"The type of logic operation to perform." - removed
Input schema / properties / n_compounding_periods / descriptionRemoved value: -"The number of compounding periods." - removed
Input schema / properties / n_value / descriptionRemoved value: -"The n value." - removed
Input schema / properties / number_a / descriptionRemoved value: -"The first number." - removed
Input schema / properties / number_b / descriptionRemoved value: -"The second number (if needed)." - removed
Input schema / properties / number_theory_modulus / descriptionRemoved value: -"The modulus for modular exponentiation." - removed
Input schema / properties / number_theory_operation / descriptionRemoved value: -"The type of number theory operation." - removed
Input schema / properties / operand_a / descriptionRemoved value: -"The first operand." - removed
Input schema / properties / operand_b / descriptionRemoved value: -"The second operand." - removed
Input schema / properties / precision_level / descriptionRemoved value: -"Calculation precision level." - removed
Input schema / properties / principal / descriptionRemoved value: -"The principal amount." - removed
Input schema / properties / probability_a / descriptionRemoved value: -"The probability of event A (between 0 and 1)." - removed
Input schema / properties / probability_a_given_b / descriptionRemoved value: -"The conditional probability of A given B (between 0 and 1)." - removed
Input schema / properties / probability_b / descriptionRemoved value: -"The probability of event B (between 0 and 1)." - removed
Input schema / properties / probability_b_given_a / descriptionRemoved value: -"The conditional probability of B given A (between 0 and 1)." - removed
Input schema / properties / probability_operation / descriptionRemoved value: -"The type of probability calculation." - removed
Input schema / properties / r_value / descriptionRemoved value: -"The r value (if needed)." - removed
Input schema / properties / radius / descriptionRemoved value: -"The radius of the circle." - changed
Input schema / properties / rate / descriptionPrevious value: -"The interest rate (percentage)."New value: +"Interest rate as a percentage (e.g., 5 for 5%)." - removed
Input schema / properties / set_a / descriptionRemoved value: -"The first set." - added
Input schema / properties / set_a / items / anyOfAdded value: +[ + { + "type": "number" + }, + { + "type": "string" + } +] - removed
Input schema / properties / set_a / items / typeRemoved value: -"number" - removed
Input schema / properties / set_b / descriptionRemoved value: -"The second set." - added
Input schema / properties / set_b / items / anyOfAdded value: +[ + { + "type": "number" + }, + { + "type": "string" + } +] - removed
Input schema / properties / set_b / items / typeRemoved value: -"number" - removed
Input schema / properties / set_theory_operation / descriptionRemoved value: -"The type of set theory operation." - removed
Input schema / properties / side / descriptionRemoved value: -"The side length of the cube." - removed
Input schema / properties / statistics_operation / descriptionRemoved value: -"The type of statistical calculation to perform." - changed
Input schema / properties / time / descriptionPrevious value: -"The time (in years)."New value: +"Time in years." - removed
Input schema / properties / width / descriptionRemoved value: -"The width."
- Changed
cli_tool9 fields changed- changed
Input schema / descriptionPrevious value: -"CLI executor with sync/async modes and timeout."New value: +"ć§čĄCLIĺ˝äť¤ďźćŻćĺćĽ/ĺźćĽć¨Ąĺźăčś ćśĺĺŽĺ ¨čżćť¤ă" - changed
Input schema / properties / command / descriptionPrevious value: -"Single-line command content"New value: +"čŚć§čĄçĺčĄĺ˝äť¤" - changed
Input schema / properties / commands / descriptionPrevious value: -"Multi-line command sequence (mutually exclusive with 'command')"New value: +"čŚć§čĄçĺ¤čĄĺ˝äť¤ĺşĺ (ä¸ 'command' äşćĽ)" - changed
Input schema / properties / cwd / descriptionPrevious value: -"Working directory (absolute or relative to build/)"New value: +"ĺ˝äť¤ć§čĄç塼ä˝çŽĺ˝ (çťĺŻščˇŻĺž)" - changed
Input schema / properties / mode / descriptionPrevious value: -"Execution mode: sync - synchronous blocking, async - asynchronous non-blocking"New value: +"ć§čĄć¨Ąĺź: sync (ĺćĽéťĺĄ), async (ĺźćĽééťĺĄ)" - changed
Input schema / properties / platform / descriptionPrevious value: -"Force execution context (win32, linux)"New value: +"ĺźşĺśćĺŽć§čĄĺ˝äť¤çćä˝çłťçťçŻĺ˘" - changed
Input schema / properties / safe_mode / descriptionPrevious value: -"Enable dangerous command filtering"New value: +"ćŻĺŚĺŻç¨ĺąéŠĺ˝äť¤čżćť¤" - changed
Input schema / properties / timeout / defaultPrevious value: -30New value: +60 - changed
Input schema / properties / timeout / descriptionPrevious value: -"Command timeout in seconds"New value: +"ĺ˝äť¤ć§čĄçčś ćśćśé´ďźç§ďź"
- Changed
excel_tool7 fields changed- changed
Input schema / descriptionPrevious value: -"Read and write Excel/CSV files"New value: +"Read and write Excel (xlsx) and CSV files, and convert from JSON." - removed
Input schema / properties / chunkSizeRemoved value: -{ - "default": 1000, - "description": "Chunk size (rows) for streaming", - "type": "number" -} - changed
Input schema / properties / filePath / descriptionPrevious value: -"Absolute path to the file"New value: +"Absolute path to the input file" - changed
Input schema / properties / format / descriptionPrevious value: -"File format: xlsx, xls, csv"New value: +"File format: xlsx, csv" - changed
Input schema / properties / format / enumPrevious value: -[ - "xlsx", - "xls", - "csv" -]New value: +[ + "xlsx", + "csv" +] - added
Input schema / properties / outputFilePathAdded value: +{ + "description": "Absolute path to the output file (required for write and convert actions)", + "type": "string" +} - removed
Input schema / properties / streamRemoved value: -{ - "default": false, - "description": "Enable streaming for large files", - "type": "boolean" -}
- Changed
fileSystem_tool12 fields changed- changed
Input schema / descriptionPrevious value: -"Cross-platform file system management tool."New value: +"ä¸ä¸Şĺźşĺ¤§çćäťśçłťçťĺˇĽĺ ˇďźç¨äşć§čĄčŻťăĺăĺ¤ĺśăç§ťĺ¨ăĺ é¤ăĺ襨çćä˝ă" - added
Input schema / properties / contentAdded value: +{ + "description": "čŚĺĺ Ľćäťśçĺ 厚 (ç¨äş 'write' ćä˝)", + "type": "string" +} - changed
Input schema / properties / fileMode / descriptionPrevious value: -"File mode (permissions) in octal format (e.g., 755)"New value: +"ć䝜樥ĺźďźćéďźďźä˝żç¨ĺ Ťčżĺść źĺź (äžĺŚ, 755)" - changed
Input schema / properties / gid / descriptionPrevious value: -"Group ID for chown operation"New value: +"ç¨äş chown ćä˝ççť ID" - changed
Input schema / properties / operation / descriptionPrevious value: -"File system operation (read, write, copy, etc.)"New value: +"čŚć§čĄçćäťśçłťçťćä˝ (äžĺŚ: read, write, copy)" - changed
Input schema / properties / overwrite / descriptionPrevious value: -"Overwrite existing files during copy/move"New value: +"ĺ¨ copy/move ćä˝ä¸čŚç塲ĺĺ¨çćäťś" - removed
Input schema / properties / platformOverrideRemoved value: -{ - "default": "auto", - "description": "Override platform for OS behavior simulation", - "enum": [ - "auto", - "linux", - "win32", - "darwin" - ], - "type": "string" -} - changed
Input schema / properties / recursive / descriptionPrevious value: -"Recursively apply operation to directories"New value: +"éĺ˝ĺ°ĺŻšçŽĺ˝ĺşç¨ćä˝" - changed
Input schema / properties / showHidden / descriptionPrevious value: -"Include hidden files/directories in list/listDetails"New value: +"ĺ¨ list/listDetails ä¸ĺ ĺŤéčćäťś/çŽĺ˝" - changed
Input schema / properties / sourcePath / descriptionPrevious value: -"Absolute path to source"New value: +"ćşćäťśççťĺŻščˇŻĺž" - changed
Input schema / properties / targetPath / descriptionPrevious value: -"Absolute path to target (required for copy/move)"New value: +"çŽć ćäťśççťĺŻščˇŻĺž (ç¨äş copy/move ćä˝)" - changed
Input schema / properties / uid / descriptionPrevious value: -"User ID for chown operation"New value: +"ç¨äş chown ćä˝çç¨ćˇ ID"
- Changed
image_tool8 fields changed- changed
Input schema / descriptionPrevious value: -"Compress images, batch process files/dirs."New value: +"A powerful image processing tool that supports format conversion, resizing, quality compression, and can batch process directories." - changed
Input schema / namePrevious value: -"img_tool"New value: +"image_tool" - added
Input schema / properties / compressionLevelAdded value: +{ + "default": 6, + "description": "PNG compression level (0-9, defaults to 6)", + "maximum": 9, + "minimum": 0, + "type": "number" +} - changed
Input schema / properties / format / descriptionPrevious value: -"Output format"New value: +"Output format (optional, keeps original if not specified)" - removed
Input schema / properties / modeRemoved value: -{ - "default": "sync", - "description": "Execution mode (sync or async)", - "enum": [ - "sync", - "async" - ], - "type": "string" -} - changed
Input schema / properties / outputPath / descriptionPrevious value: -"Output directory path (defaults to source)"New value: +"Output directory path. Defaults to a new file (e.g., 'source.processed.jpg') or a new directory (e.g., 'source_processed')." - changed
Input schema / properties / quality / defaultPrevious value: -75New value: +80 - changed
Input schema / properties / quality / descriptionPrevious value: -"Compression quality (1-100, defaults to 75)"New value: +"Compression quality for JPEG/WebP/AVIF/TIFF (1-100, defaults to 80)"
- Changed
log_tool1 field changed- changed
Input schema / requiredPrevious value: -[ - "pageSize", - "page" -]New value: +[]
- Added
mongo_tool - Added
redis_tool - Changed
time_tool10 fields changed- changed
Input schema / descriptionPrevious value: -"Get current time"New value: +"Get and convert time, supporting timezones, formatting, and timestamp operations." - added
Input schema / properties / actionAdded value: +{ + "description": "The operation to perform.", + "enum": [ + "get_current_time", + "format_time", + "from_timestamp", + "to_timestamp" + ], + "type": "string" +} - removed
Input schema / properties / formatRemoved value: -{ - "description": "Time format (iso, timestamp, local, custom)", - "enum": [ - "iso", - "timestamp", - "local", - "custom" - ], - "type": "string" -} - added
Input schema / properties / format_optionsAdded value: +{ + "description": "Formatting options for the time string, based on Intl.DateTimeFormat.", + "properties": { + "day": { + "enum": [ + "numeric", + "2-digit" + ], + "type": "string" + }, + "hour": { + "enum": [ + "numeric", + "2-digit" + ], + "type": "string" + }, + "minute": { + "enum": [ + "numeric", + "2-digit" + ], + "type": "string" + }, + "month": { + "enum": [ + "numeric", + "2-digit", + "long", + "short", + "narrow" + ], + "type": "string" + }, + "second": { + "enum": [ + "numeric", + "2-digit" + ], + "type": "string" + }, + "timeZoneName": { + "enum": [ + "long", + "short" + ], + "type": "string" + }, + "year": { + "enum": [ + "numeric", + "2-digit" + ], + "type": "string" + } + }, + "type": "object" +} - removed
Input schema / properties / patternRemoved value: -{ - "description": "Custom format pattern (required if format=custom)", - "type": "string" -} - removed
Input schema / properties / targetTimezoneRemoved value: -{ - "description": "Target timezone for timestamp conversion (e.g., America/New_York)", - "type": "string" -} - added
Input schema / properties / time_strAdded value: +{ + "description": "An ISO 8601 time string (e.g., '2025-03-15T10:00:00Z'). Required for 'format_time' and 'to_timestamp'.", + "type": "string" +} - changed
Input schema / properties / timestamp / descriptionPrevious value: -"Timestamp to convert"New value: +"Unix timestamp in milliseconds. Required for 'from_timestamp'." - changed
Input schema / properties / timezone / descriptionPrevious value: -"Timezone (e.g., Asia/Shanghai)"New value: +"The target timezone (e.g., 'UTC', 'America/New_York', 'Asia/Shanghai')." - changed
Input schema / requiredPrevious value: -[]New value: +[ + "action" +]
- Changed
workflow_tool2 fields changed- added
Input schema / properties / parallelAdded value: +{ + "default": false, + "description": "If true, executes all steps in parallel.", + "type": "boolean" +} - removed
Input schema / properties / steps / items / properties / parallelRemoved value: -{ - "default": false, - "description": "Execute in parallel", - "type": "boolean" -}
15 tool updates
- First observed
buildReload_tool - First observed
calculator_tool - First observed
cli_tool - First observed
compress_tool - First observed
create_note - First observed
excel_tool - First observed
fileSystem_tool - First observed
gemini_image_tool - First observed
image_tool - First observed
log_tool - First observed
schedule_tool - First observed
sftp_tool - First observed
ssh_tool - First observed
time_tool - First observed
workflow_tool
TDQS
The tools cover diverse domains (e.g., file operations, databases, utilities), but there is significant ambiguity due to vague naming and lack of descriptions. For example, 'image_tool' and 'gemini_image_tool' likely overlap in image-related tasks, while 'cli_tool', 'ssh_tool', and 'sftp_tool' could all involve command-line or remote operations without clear boundaries. The absence of descriptions exacerbates confusion, making it difficult for an agent to reliably choose the right tool for a specific need.
Naming conventions are inconsistent and chaotic. There is a mix of styles: some tools use snake_case (e.g., 'calculator_tool', 'create_note'), others use camelCase (e.g., 'fileSystem_tool'), and some have hybrid or irregular forms (e.g., 'buildReload_tool'). Verb usage varies widely, from generic terms like 'tool' to specific verbs like 'create', with no predictable pattern. This inconsistency makes the tool set harder to navigate and understand at a glance.
With 17 tools, the count is borderline high but not extreme, falling into the 16-25 range that feels heavy for a server named 'ToolBox MCP Server', which suggests a broad utility scope. While the number is reasonable for covering multiple domains, it risks being overwhelming without clear organization or descriptions. A more focused set might improve usability, but it doesn't reach the extreme mismatch of 50+ tools.
The tool set appears to cover various utility domains (e.g., file systems, databases, scheduling, images), but without descriptions, it's impossible to assess true coverage or identify obvious gaps. The lack of CRUD operations for many domains (e.g., no update/delete for notes or files) and the vague tool names suggest significant gaps in functionality. For instance, 'create_note' might exist, but without tools for reading or managing notes, workflows could hit dead ends, leading to potential agent failures.
Maintenance
Resources
Unclaimed servers have limited discoverability.
Looking for Admin?
If you are the server author, to access and configure the admin panel.
Related MCP Connectors
- mcp-serverOAuthcom.make
Give your AI agents the tools to build, manage, and run automation workflows.
- SkilderOAuthai.skilder
One place to build, share, and govern the skills and tools your AI agents use at work.
- AxiomOAuthcom.axiomide
The marketplace where agents don't just use tools â they build, publish, and compose new ones.
- agentpmtOAuthcom.agentpmt
AI agent marketplace for automated employees, workflows, skills, and tool orchestration.
Related MCP Servers
- AlicenseAqualityFmaintenanceEnables AI models to dynamically create and execute their own custom tools through a meta-function architecture, supporting JavaScript, Python, and Shell runtimes with sandboxed security and human approval flows.510MIT
- FlicenseAqualityDmaintenanceA centralized automation hub that provides a unified interface for AI agents to interact with various services, currently featuring Discord forum post creation. It offers an extensible TypeScript architecture designed for easily adding new tool domains and integrating with platforms like Claude Desktop and Cursor.1-
- FlicenseNot gradedqualityDmaintenanceAll-in-one automation platform for AI agents, providing browser automation, API testing, debugging, and testing tools via the MCP protocol.3-
- AlicenseBqualityDmaintenanceTransforms any prompt into a fully functional, production-ready product with zero human intervention by providing 150+ autonomous tools covering all aspects of software development.331MIT
Latest Blog Posts
- Who's Calling? MCP Hosts Are an Identity Blind Spot (And the Spec Knows It)By Om-Shree-0709 on .mcpAgent IdentityOAuth 2.1
- Your AI Chatbot Just Exposed Your CEO's Salary to an InternBy Om-Shree-0709 on .Agent IdentityMCP SecurityOAuth Delegation
- Why MCP Servers Need Execution Sandboxing (And Why Your Current Stack Isn't Enough)By Om-Shree-0709 on .Agentic AiPrompt InjectionWebAssembly
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/xiaoguomeiyitian/ToolBox'
If you have feedback or need assistance with the MCP directory API, please join our Discord server