MCP server intelligence profile

agent-tool MCP Server

Encoding-aware, indentation-smart file tools for AI coding agents. 20+ tools including read/edit with automatic encoding detection, smart indentation conversion, SSH, SFTP, process management, and system utilities

Local Onlyknewstimek
Awaiting current scanGithub Release · v0.9.5+sha256.8d66dcd247b1

The selected current version does not yet have completed public verification. Unknown does not mean clean or vulnerable.

1Distribution channel
11Independently observed tools
0Linked remote endpoints
AvailableVersion intelligence

Detailed security scan evidence is not public for this MCP yet. Public identity, registry metadata, and independently observed protocol inventory remain available.

Install and connect

Installation and connection instructions are shown only when supported by retained package, repository, or endpoint evidence.

No verified installation or connection method is available in the retained evidence yet.

Identity

Canonical slugagent-tool-d06ceb83DeploymentLocal Only
Canonical packageRepositoryknewstimek/agent-tool
First publishedLatest release
Last security verificationClassification confidence35%
PublicationDraftOfficial distributionNot verified

Distributions

ChannelIdentifierCurrent versionVersionsSource
github_releaseknewstimek/agent-toolv0.9.5+sha256.8d66dcd247b11Repository

Current release

PackageVersionPublished / observedInventorySecurity scan
github_releaseknewstimek/agent-toolv0.9.5+sha256.8d66dcd247b1CurrentAug 31, 202611 toolsSucceeded · 0 resources · 0 promptsEvidence restricted
Enterprise protection

Continuously monitor this MCP for security risk

Independently scan the exact version your agents use, receive alerts when its risk changes, and investigate every finding with retained version evidence.

  • Independent exact-version security scans
  • Continuous release and vulnerability monitoring
  • Risk-change alerts with capability context
  • Historical evidence and API exports
Custom pricingContact salesTailored to your organization, integrations, data needs, and support requirements.

Current version evidence

No public current-version evidence is available yet.

Current protocol inventory

2025-06-18Negotiated protocol
agent-toolServer-reported name
2Capability groups
Aug 31, 2026Observed

Tools 11

ToolCategoryAnnotationsRisk
agent_tool_helpReturns usage guide for agent-tool. Call this when you encounter encoding warnings, garbled text, or need to understand agent-tool features. Topics: overview, encoding, indentation, tools, debug, analyze, troubleshooting.
Input schema
{
  "type": "object",
  "properties": {
    "topic": {
      "type": "string",
      "description": "Help topic. Available: overview, encoding, indentation, tools, debug, analyze, memtool, wintool, codegraph, ipc, troubleshooting. Empty = overview"
    }
  },
  "additionalProperties": false
}
editReplaces old_string with new_string in the specified file. Smart indentation: auto-converts between tabs and spaces to match the file's style. Encoding-aware: preserves original file encoding (UTF-8, EUC-KR, Shift-JIS, UTF-8 BOM, etc.). Line-ending aware: matches old_string regardless of CRLF/LF, and inserted lines follow the newline style of the region being edited (mixed-newline files stay intact). Reads .editorconfig for indentation settings. Use dry_run=true to preview changes without modifying the file.
Input schema
{
  "type": "object",
  "properties": {
    "file_path": {
      "type": "string",
      "description": "File to edit. Relative paths use the configured workspace or MCP client root"
    },
    "path": {
      "type": "string",
      "description": "Alias for file_path"
    },
    "old_string": {
      "type": "string",
      "description": "Exact text to find in the file"
    },
    "new_string": {
      "type": "string",
      "description": "Replacement text (must differ from old_string)"
    },
    "old_content": {
      "type": "string",
      "description": "Alias for old_string"
    },
    "new_content": {
      "type": "string",
      "description": "Alias for new_string"
    },
    "replace_all": {
      "type": "boolean",
      "description": "Replace all occurrences instead of just the first: true or false. Default: false"
    },
    "dry_run": {
      "type": "boolean",
      "description": "Preview changes without modifying the file: true or false. Default: false"
    },
    "indent_style": {
      "type": "string",
      "description": "Override indentation style. Values: tabs or spaces-N (e.g. spaces-4). Empty = auto-detect (default)"
    },
    "expected_hash": {
      "type": "string",
      "description": "Optional SHA-256 hash of the file. If provided and mismatched, edit is rejected (optimistic concurrency)."
    }
  },
  "additionalProperties": false
}
globFinds files matching a glob pattern. Supports ** recursive matching and sorts results by modification time (newest first). Defaults to 200 workspace-relative paths and 32768 characters per page. Skips hidden and common generated/vendor directories unless explicitly included. Returns total/has_more/truncated metadata and an opaque next_cursor.
Input schema
{
  "type": "object",
  "properties": {
    "pattern": {
      "type": "string",
      "description": "Glob pattern to match files (e.g. **/*.go or src/**/*.ts)"
    },
    "path": {
      "type": "string",
      "description": "Directory to search. Defaults to configured workspace, MCP client root, or current directory"
    },
    "relative_paths": {
      "type": [
        "null",
        "boolean"
      ],
      "description": "Return paths relative to the search directory. Default: true"
    },
    "limit": {
      "type": "integer",
      "description": "Maximum paths returned per page. Default: 200, Max: 5000"
    },
    "max_output_chars": {
      "type": "integer",
      "description": "Maximum returned text characters. Default: 32768, Max: 131072"
    },
    "cursor": {
      "type": "string",
      "description": "Opaque continuation cursor returned by a previous glob call"
    },
    "include_hidden": {
      "type": "boolean",
      "description": "Traverse hidden directories. Explicit hidden roots are always searched. Default: false"
    },
    "include_ignored": {
      "type": "boolean",
      "description": "Traverse generated/vendor directories such as node_modules, vendor, target, build, and dist. Default: false"
    }
  },
  "required": [
    "pattern"
  ],
  "additionalProperties": false
}
grepSearches file contents for a regex pattern. Encoding-aware: auto-detects file encoding. Can search a single file or recursively search a directory. Output modes: content (default), files_with_matches, count. Compact content groups matches under one file header by default; use output_format=classic for path:line:text. A CRLF ending is a terminator, not content: "^foo$" matches in a CRLF file and returned lines carry no stray CR. A lone CR is not a line break (same as read), so a CR-only file is one line. Context: use before/after/context to include surrounding lines (like grep -B/-A/-C). Large result sets stay usable: max_results supports up to 100000, while max_line_chars and max_output_chars bound the text returned to the agent. has_more and a visible continuation hint report when additional grep output exists. Directory search skips binary files (extension list + NUL-byte sniff); pass a binary file directly as path to search it anyway.
Input schema
{
  "type": "object",
  "properties": {
    "pattern": {
      "type": "string",
      "description": "Regular expression pattern to search for"
    },
    "path": {
      "type": "string",
      "description": "File or directory to search. Defaults to configured workspace, MCP client root, or current directory"
    },
    "file_path": {
      "type": "string",
      "description": "Alias for path"
    },
    "glob": {
      "type": "string",
      "description": "Glob pattern to filter files (e.g. *.go). Only used when path is a directory"
    },
    "ignore_case": {
      "type": "boolean",
      "description": "Case-insensitive search. Default: false"
    },
    "recursive": {
      "type": [
        "null",
        "boolean"
      ],
      "description": "Recurse into subdirectories. Default: true"
    },
    "max_results": {
      "type": "integer",
      "description": "Maximum matching lines/files per page. Default: 100, Max: 100000"
    },
    "output_mode": {
      "type": "string",
      "description": "Output mode: content (default), files_with_matches, or count"
    },
    "output_format": {
      "type": "string",
      "description": "Content layout: compact (group matches by file, default) or classic (path:line:text on every line)"
    },
    "context": {
      "type": "integer",
      "description": "Lines before and after each match (like grep -C). Default: 0, Max: 1000"
    },
    "before": {
      "type": "integer",
      "description": "Lines before each match. Overrides context. Default: 0, Max: 1000"
    },
    "after": {
      "type": "integer",
      "description": "Lines after each match. Overrides context. Default: 0, Max: 1000"
    },
    "max_line_chars": {
      "type": "integer",
      "description": "Maximum characters per matching/context line. Default: 4000, Max: 32768"
    },
    "max_output_chars": {
      "type": "integer",
      "description": "Maximum total result characters. Default: 32768, Max: 131072"
    },
    "relative_paths": {
      "type": [
        "null",
        "boolean"
      ],
      "description": "Return paths relative to the search root. Default: true for directory searches"
    },
    "include_hidden": {
      "type": "boolean",
      "description": "Search hidden directories. Explicitly provided hidden roots are always searched. Default: false"
    },
    "include_ignored": {
      "type": "boolean",
      "description": "Search common generated/vendor directories instead of skipping them. Default: false"
    },
    "cursor": {
      "type": "string",
      "description": "Opaque continuation cursor returned by a previous grep call. Not supported with context lines"
    }
  },
  "required": [
    "pattern"
  ],
  "additionalProperties": false
}
listdirLists directory contents with bounded, pageable output. Default: flat listing, max_depth=3, max_entries=500. When has_more=true, pass next_cursor as cursor to fetch the next page. Filter by type with directories_only or files_only, and by entry-name glob with name_pattern (single) or include (multiple OR patterns, e.g. ["A*", "*.go"]). Use counts_only=true for counts without names, flat=false for a visual tree, and relative_paths=true to save tokens. Skips hidden entries and common build/vendor directories during recursion.
Input schema
{
  "type": "object",
  "properties": {
    "path": {
      "type": "string",
      "description": "Directory to list. Relative paths use the configured workspace or MCP client root"
    },
    "file_path": {
      "type": "string",
      "description": "Alias for path"
    },
    "max_depth": {
      "type": "integer",
      "description": "Maximum depth for traversal. Default: 3"
    },
    "max_entries": {
      "type": "integer",
      "description": "Maximum entries to return per page. Default: 500, maximum: 10000"
    },
    "cursor": {
      "type": "string",
      "description": "Opaque continuation cursor returned by a previous listdir call"
    },
    "relative_paths": {
      "type": "boolean",
      "description": "Show paths relative to the root. Saves tokens: true or false. Default: false"
    },
    "flat": {
      "type": [
        "null",
        "boolean"
      ],
      "description": "Flat listing without tree connectors (one path per line). Default: true"
    },
    "directories_only": {
      "type": "boolean",
      "description": "Return directories only while still traversing them: true or false. Default: false"
    },
    "files_only": {
      "type": "boolean",
      "description": "Return files only: true or false. Default: false"
    },
    "name_pattern": {
      "type": "string",
      "description": "Glob matched against each entry name, for example A* or *.go"
    },
    "include": {
      "type": [
        "null",
        "array"
      ],
      "items": {
        "type": "string"
      },
      "description": "Additional entry-name glob patterns. An entry is included when any pattern matches"
    },
    "counts_only": {
      "type": "boolean",
      "description": "Return matching directory/file counts without listing names: true or false. Default: false"
    }
  },
  "additionalProperties": false
}
multieditApplies multiple old_string -> new_string replacements to a single file in one call. Edits are applied sequentially in order; each edit sees the result of the previous one. Atomic: if any edit fails, the file is not modified at all. Encoding-aware: preserves original file encoding (UTF-8, EUC-KR, Shift-JIS, etc.). Line-ending aware: old_string matches whether the file uses CRLF or LF, and inserted newlines follow the region being edited (mixed-newline files stay intact). Accepts "path" as alias for "file_path". Use dry_run=true to preview all changes without modifying the file.
Input schema
{
  "type": "object",
  "properties": {
    "file_path": {
      "type": "string",
      "description": "File to edit. Relative paths use the configured workspace or MCP client root"
    },
    "path": {
      "type": "string",
      "description": "Alias for file_path"
    },
    "edits": {
      "type": [
        "null",
        "array"
      ],
      "items": {
        "type": "object",
        "properties": {
          "old_string": {
            "type": "string",
            "description": "Exact text to find"
          },
          "new_string": {
            "type": "string",
            "description": "Replacement text"
          },
          "replace_all": {
            "description": "Replace all occurrences instead of just the first: true or false. Default: false"
          }
        },
        "required": [
          "old_string",
          "new_string"
        ],
        "additionalProperties": false
      },
      "description": "Ordered list of replacements to apply sequentially"
    },
    "dry_run": {
      "type": "boolean",
      "description": "Preview changes without modifying the file: true or false. Default: false"
    }
  },
  "required": [
    "edits"
  ],
  "additionalProperties": false
}
multireadReads multiple files in a single call to reduce API round-trips. Encoding-aware: auto-detects file encoding for each file. Supports offset/limit for reading specific line ranges. Defaults to 200 lines per file and 32768 characters total across the call. Returns visible per-file and overall truncation metadata with continuation positions. Use file_paths or paths (string array) with global offset/limit, or files (object array) for per-file offset/limit. If a file fails, the error is included in output and remaining files continue. Maximum 50 files per request.
Input schema
{
  "type": "object",
  "properties": {
    "file_paths": {
      "type": [
        "null",
        "array"
      ],
      "items": {
        "type": "string"
      },
      "description": "File paths to read. All files use the global offset/limit. Use files for per-file ranges"
    },
    "paths": {
      "type": [
        "null",
        "array"
      ],
      "items": {
        "type": "string"
      },
      "description": "Compatibility alias for file_paths; prefer file_paths"
    },
    "offset": {
      "type": [
        "null",
        "integer"
      ],
      "description": "Line number to start from (1-based, negative = from end). Default: 1"
    },
    "limit": {
      "type": [
        "null",
        "integer"
      ],
      "description": "Maximum lines per file. Default: 200. Set 0 or all=true to remove the line limit"
    },
    "all": {
      "type": "boolean",
      "description": "Remove the default per-file line limit. The total character budget still applies. Default: false"
    },
    "max_output_chars": {
      "type": "integer",
      "description": "Maximum total returned text characters across all files. Default: 32768, Max: 131072"
    },
    "max_line_chars": {
      "type": "integer",
      "description": "Maximum characters returned from one line. Default: 4000, Max: 32768"
    },
    "include_hash": {
      "type": "boolean",
      "description": "Include per-file SHA-256 hashes. Default: false"
    },
    "files": {
      "type": [
        "null",
        "array"
      ],
      "items": {
        "type": "object",
        "properties": {
          "path": {
            "type": "string",
            "description": "Absolute or workspace-relative file path"
          },
          "offset": {
            "type": [
              "null",
              "integer"
            ],
            "description": "Line offset (1-based, negative = from end). Default: 1"
          },
          "limit": {
            "type": [
              "null",
              "integer"
            ],
            "description": "Max lines to read. Default: 200. Set 0 to remove the line limit"
          }
        },
        "required": [
          "path"
        ],
        "additionalProperties": false
      },
      "description": "Per-file read ranges. Each entry has path, offset, limit. Takes priority over file_paths"
    }
  },
  "additionalProperties": false
}
patchApplies a unified diff patch to a file. Parses @@ hunk headers, verifies context lines, and applies changes. Encoding-aware: preserves original file encoding. Line-ending aware: each line keeps its own ending (a mixed CRLF/LF file is not rewritten) and a file without a trailing newline does not gain one. Use dry_run=true to preview without modifying the file.
Input schema
{
  "type": "object",
  "properties": {
    "file_path": {
      "type": "string",
      "description": "File to patch. Relative paths use the configured workspace or MCP client root"
    },
    "path": {
      "type": "string",
      "description": "Alias for file_path"
    },
    "patch": {
      "type": "string",
      "description": "Unified diff text (output of the diff tool)"
    },
    "dry_run": {
      "type": "boolean",
      "description": "Preview patch result without modifying the file: true or false. Default: false"
    }
  },
  "required": [
    "patch"
  ],
  "additionalProperties": false
}
readReads a file and returns its contents with line numbers. Encoding-aware: auto-detects file encoding (UTF-8, EUC-KR, Shift-JIS, etc.). Image files (PNG, JPG, GIF, BMP, WebP, TIFF, ICO) are returned as ImageContent (base64). SVG files are returned as text. Supports offset/limit for reading specific line ranges. Text defaults to 400 lines and 32768 characters; use offset/limit to continue. Every text result ends with total line count, truncation state, and next_offset when more is available. Negative offset reads from end (e.g. offset=-5 reads last 5 lines). Offset accepts integer, string range "100-200", or [start, end] array. Accepts "path" as alias for "file_path". Relative paths use the configured workspace, MCP client root, or server CWD in that order.
Input schema
{
  "type": "object",
  "properties": {
    "file_path": {
      "type": "string",
      "description": "Absolute or workspace-relative path to the file to read"
    },
    "path": {
      "type": "string",
      "description": "Compatibility alias for file_path; prefer file_path"
    },
    "offset": {
      "description": "Line offset. Integer (1-based, negative=from end), string range 'start-end', or [start,end] array. Default: 1"
    },
    "limit": {
      "type": [
        "null",
        "integer"
      ],
      "description": "Maximum lines to return. Default: 400. Set 0 or all=true to remove the line limit; the character budget still applies"
    },
    "start_line": {
      "type": [
        "null",
        "integer"
      ],
      "description": "Compatibility alias for offset; prefer offset"
    },
    "end_line": {
      "type": [
        "null",
        "integer"
      ],
      "description": "Inclusive end line used with start_line"
    },
    "all": {
      "type": "boolean",
      "description": "Remove the default line limit. The max_output_chars safety budget still applies. Default: false"
    },
    "max_output_chars": {
      "type": "integer",
      "description": "Maximum returned text characters. Default: 32768, Max: 131072"
    },
    "max_line_chars": {
      "type": "integer",
      "description": "Maximum characters returned from one line. Default: 4000, Max: 32768"
    },
    "include_hash": {
      "type": [
        "null",
        "boolean"
      ],
      "description": "Include SHA-256 for optimistic edit concurrency. Default: true"
    }
  },
  "additionalProperties": false
}
toolboxDiscover and call any AgentTool capability without loading every tool schema into the model context. Use operation=describe with tool=<name> to fetch one tool's instructions and input schema, then operation=call with tool=<name> and arguments={...} to invoke it. This gateway works even when the MCP client ignores tools/list_changed. Use operation=output with output_id=<raw_output_id> to retrieve bounded raw command output preserved after diagnostic compaction. Large records report next_offset for paging and expire after 30 minutes. Use operation=list to see active and available tools. enable/disable/profile also expose direct tool bindings on clients that refresh dynamically. Profiles: core (compact file/search tools), coding, remote, analysis, full.
Input schema
{
  "type": "object",
  "properties": {
    "operation": {
      "type": "string",
      "description": "Operation: list (default), describe, call, output, enable, disable, profile. Prefer describe/call because they work even when the MCP client ignores dynamic tool-list changes"
    },
    "tools": {
      "type": [
        "null",
        "array"
      ],
      "items": {
        "type": "string"
      },
      "description": "Individual tool names to enable or disable"
    },
    "groups": {
      "type": [
        "null",
        "array"
      ],
      "items": {
        "type": "string"
      },
      "description": "Tool groups to enable or disable: core, file, coding, system, remote, data, analysis, windows"
    },
    "profile": {
      "type": "string",
      "description": "Profile for operation=profile: core, coding, remote, analysis, full"
    },
    "tool": {
      "type": "string",
      "description": "Single tool name for operation=describe or call"
    },
    "arguments": {
      "type": "object",
      "description": "Target tool arguments for operation=call. Use operation=describe first when the schema is unknown",
      "additionalProperties": true
    },
    "output_id": {
      "type": "string",
      "description": "Preserved raw command output ID for operation=output"
    },
    "output_offset": {
      "type": "integer",
      "description": "Character offset for operation=output paging. Default: 0"
    },
    "output_max_chars": {
      "type": "integer",
      "description": "Maximum raw-output characters returned by operation=output. Default: 32768, Max: 130048"
    }
  },
  "additionalProperties": false
}
writeCreates or overwrites a file with the given content. Encoding-aware: preserves original encoding for existing files, uses .editorconfig hints for new files. Auto-creates parent directories if they don't exist.
Input schema
{
  "type": "object",
  "properties": {
    "file_path": {
      "type": "string",
      "description": "File to write. Relative paths use the configured workspace or MCP client root"
    },
    "path": {
      "type": "string",
      "description": "Alias for file_path"
    },
    "content": {
      "type": "string",
      "description": "Content to write to the file"
    }
  },
  "required": [
    "content"
  ],
  "additionalProperties": false
}

Resources 0

  • None observed.

Resource templates 0

  • None observed.

Prompts 0

  • None observed.

Remote endpoints

EndpointTransportAuthenticationHealthObserved
No verified remote endpoint is linked.

agent-tool MCP Server questions

How do I install agent-tool MCP Server?

No verified package installation command is available in the retained catalog evidence.

What tools does agent-tool MCP Server provide?

agent-tool MCP Server exposed 11 tools during independent protocol observation, including agent_tool_help, edit, glob, grep, listdir, multiedit, multiread, patch, and others.

Is agent-tool MCP Server secure?

The selected current version does not yet have completed public verification. Unknown does not mean clean or vulnerable.

Explore related MCP server guides

Curated product and capability guides containing this catalog record.

Developer Tool MCP ServersOfficial vs Community MCP Servers

Let’s talk about MCP security.

Share your details and our security team will contact you.