Skip to main content
Glama

vscode-mcp

An MCP (Model Context Protocol) server that gives Claude IDE capabilities inside VS Code and Cursor. Claude can read, write, edit, search, and run commands in your workspace — directly from the chat.

Tools

Tool

Description

read_file

Read file contents, with optional line range

write_file

Write or overwrite a file (creates parent dirs)

edit_file

Replace an exact string in a file

list_directory

List files and dirs (optionally recursive)

create_directory

Create a directory tree

delete_path

Delete a file or directory

move_path

Move or rename a file/directory

search_files

Grep-style regex search across files

find_files

Find files by glob pattern (e.g. *.ts)

run_command

Execute any shell command, capture output

get_workspace_info

Platform, Node version, git branch & status

get_file_info

File metadata (size, modified time, type)

Related MCP server: code-context

Installation

npm install
npm run build

Using with Cursor

Cursor reads MCP server configuration from:

  • Global: ~/.cursor/mcp.json

  • Project: .cursor/mcp.json (in your project root)

Option A — run via node (after build)

Add to your Cursor MCP config:

{
  "mcpServers": {
    "vscode-mcp": {
      "command": "node",
      "args": ["/absolute/path/to/vscode-mcp/dist/index.js"]
    }
  }
}

Option B — run via npx (no manual build needed)

{
  "mcpServers": {
    "vscode-mcp": {
      "command": "npx",
      "args": ["--yes", "vscode-mcp"]
    }
  }
}

After editing the config, open Cursor Settings → Features → MCP and click Refresh (or restart Cursor).

Using with VS Code + Copilot Chat (MCP support)

Add to your VS Code settings.json:

"mcp": {
  "servers": {
    "vscode-mcp": {
      "type": "stdio",
      "command": "node",
      "args": ["/absolute/path/to/vscode-mcp/dist/index.js"]
    }
  }
}

Development

npm run dev    # watch mode (recompiles on save)
npm start      # run the built server

Tips

  • All paths can be absolute or relative to the workspace root.

  • Pass workspace_root to any tool to anchor relative paths to a specific directory.

  • run_command accepts any shell command — use it for git, npm, linters, compilers, etc.

  • search_files skips node_modules, dist, and hidden folders automatically.

Available Tools

12 tools
create_directoryA

Create a directory (and all parent directories).

ParametersJSON Schema
NameRequiredDescriptionDefault
pathYesDirectory path to create
workspace_rootNoWorkspace root directory (optional)

TDQS

A3.5/5.0
Behavior3/5

Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?

The description discloses the mkdir -p behavior (creating parent directories), which is helpful, but omits other behaviors like error handling when directory already exists or permission requirements. With no annotations, more detail would be beneficial.

Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.

Conciseness5/5

Is the description appropriately sized, front-loaded, and free of redundancy?

Single sentence with no extraneous information. The key behavior is front-loaded and clearly stated.

Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.

Completeness3/5

Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?

For a simple tool, the description covers the main purpose but lacks details about success/failure outcomes (e.g., behavior if directory exists). Without an output schema, the agent may lack complete context.

Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.

Parameters3/5

Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?

The input schema describes both parameters with 100% coverage, and the description adds no additional meaning beyond what the schema already provides.

Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.

Purpose5/5

Does the description clearly state what the tool does and how it differs from similar tools?

The description clearly states the action (Create) and the resource (directory), and explicitly mentions creating parent directories, which distinguishes it from sibling tools like delete_path or list_directory.

Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.

Usage Guidelines2/5

Does the description explain when to use this tool, when not to, or what alternatives exist?

No guidance on when to use this tool vs alternatives, nor any prerequisites or conditions. It simply describes what the tool does without context for selection.

Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.

delete_pathB

Delete a file or directory.

ParametersJSON Schema
NameRequiredDescriptionDefault
pathYesFile or directory path to delete
recursiveNoRequired true to delete non-empty directories
workspace_rootNoWorkspace root directory (optional)

TDQS

B3/5.0
Behavior2/5

Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?

With no annotations, the description carries full burden. It implies destruction but does not disclose that deleting a non-empty directory requires the recursive flag, potential irreversibility, or permission requirements.

Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.

Conciseness3/5

Is the description appropriately sized, front-loaded, and free of redundancy?

A single sentence makes it concise, but the lack of detail makes it minimally viable. It could include more behavioral context without being verbose.

Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.

Completeness2/5

Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?

Does not explain return values, error handling, or behavior differences between files and directories. Missing crucial context for a destructive operation with three parameters and no output schema.

Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.

Parameters3/5

Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?

Input schema has 100% coverage with parameter descriptions. The description adds no additional meaning beyond what schema already provides, so baseline score applies.

Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.

Purpose5/5

Does the description clearly state what the tool does and how it differs from similar tools?

The description clearly states the verb (Delete) and the resource (file or directory), differentiating it from sibling tools like create_directory, edit_file, or move_path.

Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.

Usage Guidelines2/5

Does the description explain when to use this tool, when not to, or what alternatives exist?

No guidance on when to use delete_path versus alternatives like move_path or write_file. The description does not specify prerequisites or context for safe usage.

Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.

edit_fileC

Replace an exact string in a file. The old_string must appear exactly once.

ParametersJSON Schema
NameRequiredDescriptionDefault
pathYesFile path
old_stringYesExact text to find and replace
new_stringYesText to replace it with
workspace_rootNoWorkspace root directory (optional)

TDQS

C2.9/5.0
Behavior2/5

Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?

No annotations provided. The description mentions one behavioral trait (exact match uniqueness) but omits crucial details: what happens if string not found? Is it destructive? Does it create backups? No safety or error behavior described.

Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.

Conciseness5/5

Is the description appropriately sized, front-loaded, and free of redundancy?

Two sentences with no fluff. Front-loaded with action. Every word earns its place.

Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.

Completeness2/5

Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?

No output schema, no error handling, no edge cases (e.g., binary files, large files). For a file editing tool, more context is needed for safe use.

Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.

Parameters3/5

Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?

Schema description coverage is 100%. The description adds the uniqueness constraint and reinforces purpose, but schema already describes each parameter adequately.

Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.

Purpose4/5

Does the description clearly state what the tool does and how it differs from similar tools?

The description clearly states the action ('replace') and the resource ('string in a file'), and adds a specific constraint (must appear exactly once). It distinguishes from siblings like write_file (full overwrite) and read_file. However, it does not explicitly name alternatives.

Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.

Usage Guidelines2/5

Does the description explain when to use this tool, when not to, or what alternatives exist?

No guidance on when to use this tool vs alternatives. The constraint about exact match is implicit but not developed into usage advice.

Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.

find_filesB

Find files by name glob pattern (e.g. '.ts', 'index.').

ParametersJSON Schema
NameRequiredDescriptionDefault
directoryYesDirectory to search in
patternYesGlob pattern for filename (e.g. '*.ts')
max_resultsNoMax results to return (default 200)
workspace_rootNoWorkspace root directory (optional)

TDQS

B3.4/5.0
Behavior2/5

Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?

No annotations exist, and the description does not disclose behavioral traits such as recursion, case sensitivity, or performance characteristics. It only states the basic operation without deeper context.

Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.

Conciseness5/5

Is the description appropriately sized, front-loaded, and free of redundancy?

A single, front-loaded sentence with no unnecessary words. Every part serves to convey the core function efficiently.

Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.

Completeness2/5

Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?

Despite having 4 parameters and no output schema, the description omits crucial details like recursion behavior, return format, default max_results, and error handling, making it incomplete for effective agent use.

Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.

Parameters3/5

Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?

Schema coverage is 100% with descriptions for all parameters. The description adds a useful example for the pattern parameter but no additional meaning for other parameters.

Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.

Purpose5/5

Does the description clearly state what the tool does and how it differs from similar tools?

The description clearly states the tool finds files by name glob pattern with concrete examples, distinguishing it from siblings like search_files (content search) and list_directory (no pattern).

Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.

Usage Guidelines3/5

Does the description explain when to use this tool, when not to, or what alternatives exist?

The description implies usage through the glob pattern example but provides no explicit guidance on when to use this tool versus alternatives like search_files or list_directory.

Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.

get_file_infoB

Get metadata about a file or directory (size, modification time, type).

ParametersJSON Schema
NameRequiredDescriptionDefault
pathYesFile or directory path
workspace_rootNoWorkspace root directory (optional)

TDQS

B3.3/5.0
Behavior2/5

Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?

Lacks details on behavior such as error handling for nonexistent paths, symlink resolution, permissions, or return structure. With no annotations, the description should cover these traits but only lists example metadata fields.

Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.

Conciseness5/5

Is the description appropriately sized, front-loaded, and free of redundancy?

One concise sentence that front-loads the core purpose without extraneous words. Efficiently communicates the tool's function.

Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.

Completeness3/5

Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?

Lacks details on output format, error responses, or behavior differences for files vs directories. While the tool is simple, a complete description would mention return type or common error cases.

Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.

Parameters3/5

Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?

Schema description coverage is 100%, so the schema already documents parameters. The description adds no extra meaning beyond the schema's explanations of 'path' and 'workspace_root'. Baseline score of 3 is appropriate.

Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.

Purpose5/5

Does the description clearly state what the tool does and how it differs from similar tools?

The description clearly states the tool retrieves metadata (size, modification time, type) for a file or directory, using specific verbs and resource. It distinguishes from sibling tools like read_file or list_directory by focusing on metadata rather than content or listing.

Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.

Usage Guidelines2/5

Does the description explain when to use this tool, when not to, or what alternatives exist?

No guidance on when to use this tool versus alternatives (e.g., list_directory for summaries, find_files for searching). The description fails to specify prerequisites, edge cases, or exclusions.

Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.

get_workspace_infoA

Get information about the current workspace: root directory, platform, Node version, git status summary.

ParametersJSON Schema
NameRequiredDescriptionDefault
workspace_rootNoWorkspace root directory (optional)

TDQS

A3.9/5.0
Behavior3/5

Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?

No annotations provided. The description lists what information is returned but does not disclose any behavioral traits like read-only nature, side effects, or prerequisites. It provides some transparency via the listed fields.

Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.

Conciseness5/5

Is the description appropriately sized, front-loaded, and free of redundancy?

Single sentence of 12 words, no fluff, efficiently conveys the tool's purpose.

Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.

Completeness5/5

Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?

Given the low complexity (one optional parameter, no output schema), the description adequately lists the return items. It is complete enough for an agent to understand what the tool provides.

Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.

Parameters3/5

Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?

Schema description coverage is 100%, and the description adds no extra meaning beyond the schema's parameter description. It mentions the parameter is optional, but that is already clear from zero required params.

Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.

Purpose5/5

Does the description clearly state what the tool does and how it differs from similar tools?

The description uses a specific verb 'Get' and resource 'information about the current workspace', listing exact items (root directory, platform, Node version, git status summary). It clearly distinguishes from sibling tools which are file and command operations.

Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.

Usage Guidelines3/5

Does the description explain when to use this tool, when not to, or what alternatives exist?

No explicit when-to-use or when-not-to-use guidance. Usage is implied for retrieving workspace info, but no alternatives or exclusions are mentioned, even though siblings exist.

Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.

list_directoryB

List files and directories at a given path.

ParametersJSON Schema
NameRequiredDescriptionDefault
pathYesDirectory path
recursiveNoWhether to list recursively (default false)
workspace_rootNoWorkspace root directory (optional)

TDQS

B3.2/5.0
Behavior2/5

Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?

No annotations provided, and the description does not disclose behavioral traits such as read-only nature, potential errors (e.g., path not found), or performance implications of recursive listing.

Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.

Conciseness5/5

Is the description appropriately sized, front-loaded, and free of redundancy?

Single sentence that is perfectly front-loaded and contains no fluff. Every word is necessary and sufficient to convey the core function.

Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.

Completeness2/5

Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?

Given the lack of output schema and annotations, the description should explain what the response looks like, behavior for invalid paths, or the effect of recursive and workspace_root. It does not, leaving gaps for an AI agent.

Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.

Parameters3/5

Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?

Schema description coverage is 100%, so the baseline is 3. The description adds no extra meaning beyond what the schema already provides for path, recursive, and workspace_root.

Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.

Purpose5/5

Does the description clearly state what the tool does and how it differs from similar tools?

The description clearly states the action (list) and resource (files and directories at a given path), with a specific verb and scope that distinguishes it from sibling tools like find_files or search_files.

Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.

Usage Guidelines2/5

Does the description explain when to use this tool, when not to, or what alternatives exist?

No guidance on when to use or avoid this tool compared to siblings. For example, it does not note that find_files might be better for filtering or that recursive listing is a toggle.

Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.

move_pathB

Move or rename a file or directory.

ParametersJSON Schema
NameRequiredDescriptionDefault
sourceYesSource path
destinationYesDestination path
workspace_rootNoWorkspace root directory (optional)

TDQS

B3/5.0
Behavior2/5

Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?

The description only states the basic action without disclosing behavioral traits. It fails to mention whether the operation overwrites existing destinations, what happens on partial failure, atomicity, or permission requirements. Since no annotations exist, the description carries the full burden but provides almost no behavioral context.

Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.

Conciseness3/5

Is the description appropriately sized, front-loaded, and free of redundancy?

The description is extremely concise (one sentence) and front-loaded, but it sacrifices necessary detail. While there is no fluff, the brevity reduces its value. It could have included key behavioral notes without becoming verbose.

Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.

Completeness2/5

Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?

Given the complexity of a move/rename operation (including potential overwrite, cross-workspace moves, and error handling), the description is incomplete. No output schema is provided, and annotations are absent, so the description should compensate but fails to address conflict resolution or operation boundaries.

Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.

Parameters3/5

Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?

The input schema has 100% description coverage, with each parameter having a brief description (e.g., 'Source path'). The tool description adds no additional meaning beyond what the schema already provides, so the baseline score of 3 is appropriate.

Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.

Purpose5/5

Does the description clearly state what the tool does and how it differs from similar tools?

The description explicitly states 'Move or rename a file or directory', which clearly identifies the action and resource type. It distinguishes the tool from siblings like create_directory, delete_path, and edit_file, as no other sibling handles move/rename.

Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.

Usage Guidelines2/5

Does the description explain when to use this tool, when not to, or what alternatives exist?

No guidance is provided on when to use this tool vs alternatives. There is no mention of prerequisites, restrictions, or situations where another tool (e.g., copy then delete, or using write_file) might be more appropriate.

Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.

read_fileB

Read the contents of a file. Optionally specify a line range.

ParametersJSON Schema
NameRequiredDescriptionDefault
pathYesFile path (absolute or relative to workspace root)
start_lineNoFirst line to read (1-indexed, inclusive)
end_lineNoLast line to read (1-indexed, inclusive)
workspace_rootNoWorkspace root directory (optional)

TDQS

B3.1/5.0
Behavior2/5

Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?

With no annotations, description should disclose behavioral traits. Does not state that it does not modify files, what happens on missing file, or that it returns raw content. Only mentions line range option.

Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.

Conciseness4/5

Is the description appropriately sized, front-loaded, and free of redundancy?

Single sentence with no fluff. Front-loaded information. Could be slightly more informative but still efficient.

Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.

Completeness2/5

Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?

No output schema, so description should mention return value (file contents as string). Does not specify behavior for line range or what happens if path is invalid.

Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.

Parameters3/5

Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?

Schema has 100% description coverage for all parameters. Description adds no additional semantics beyond the schema, achieving baseline score.

Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.

Purpose5/5

Does the description clearly state what the tool does and how it differs from similar tools?

Clearly states the verb 'Read' and the resource 'contents of a file'. Distinguishes from siblings like write_file, edit_file, and delete_path which have different actions.

Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.

Usage Guidelines2/5

Does the description explain when to use this tool, when not to, or what alternatives exist?

No guidance on when to use this tool versus alternatives (e.g., search_files for content search, get_file_info for metadata). Does not mention that it is read-only or safe.

Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.

run_commandA

Execute a shell command in the given working directory. Returns stdout, stderr, and exit code.

ParametersJSON Schema
NameRequiredDescriptionDefault
commandYesCommand to run
cwdNoWorking directory (defaults to workspace root or cwd)
timeout_msNoTimeout in milliseconds (default 30000)

TDQS

A3.6/5.0
Behavior2/5

Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?

With no annotations, the description carries full burden but only mentions output format. It fails to disclose security implications, sandboxing, environment, or side effects, which are critical for a command execution tool.

Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.

Conciseness5/5

Is the description appropriately sized, front-loaded, and free of redundancy?

Two sentences, concise and front-loaded. Every word adds value with no redundancy.

Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.

Completeness4/5

Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?

For a simple command execution tool, the description covers what is returned. Missing details on blocking behavior or environment, but acceptable given no output schema exists.

Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.

Parameters3/5

Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?

Schema coverage is 100%, so baseline is 3. The description adds no new info beyond the schema; the schema already describes all parameters adequately.

Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.

Purpose5/5

Does the description clearly state what the tool does and how it differs from similar tools?

The description clearly states the verb 'execute', the resource 'shell command', and the return values (stdout, stderr, exit code). It distinguishes from sibling tools that are file/directory operations.

Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.

Usage Guidelines3/5

Does the description explain when to use this tool, when not to, or what alternatives exist?

The description implies this is for running arbitrary commands, but does not explicitly state when to use or alternatives. No exclusions or conditions provided.

Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.

search_filesB

Search for a regex pattern inside files. Returns matching lines with file and line number.

ParametersJSON Schema
NameRequiredDescriptionDefault
directoryYesDirectory to search in
patternYesRegex pattern to search for
file_globNoGlob to filter files (e.g. '*.ts')
ignore_caseNoCase-insensitive search
max_resultsNoMax results to return (default 100)
workspace_rootNoWorkspace root directory (optional)

TDQS

B3.3/5.0
Behavior3/5

Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?

With no annotations provided, the description carries the full burden of behavioral disclosure. It accurately describes the read-only search behavior and return format, but omits details like recursive search, case sensitivity behavior (only covered by schema), or performance limits beyond max_results.

Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.

Conciseness5/5

Is the description appropriately sized, front-loaded, and free of redundancy?

Two sentences, no fluff. Every word is necessary and informative. Efficiently communicates core purpose and output.

Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.

Completeness3/5

Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?

Given the tool's complexity (regex, glob, case-insensitive, max_results) and no output schema, the description is partially complete. It covers the basic search behavior but lacks details on recursion, glob semantics, and error handling.

Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.

Parameters3/5

Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?

Schema coverage is 100%, so the description adds minimal extra meaning. It confirms the regex nature and output format, but does not explain nuances like default values for max_results or workspace_root usage.

Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.

Purpose4/5

Does the description clearly state what the tool does and how it differs from similar tools?

The description clearly states the tool searches for regex patterns inside files and returns matching lines with file and line number, providing a specific verb+resource. However, it does not differentiate from the sibling 'find_files', which likely searches filenames, reducing clarity for an agent deciding between them.

Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.

Usage Guidelines2/5

Does the description explain when to use this tool, when not to, or what alternatives exist?

The description provides no guidance on when to use this tool versus alternatives like 'find_files' or other file tools. It does not mention context, prerequisites, or exclusions, leaving the agent to infer usage.

Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.

write_fileA

Write or overwrite a file with new content. Creates parent directories automatically.

ParametersJSON Schema
NameRequiredDescriptionDefault
pathYesFile path
contentYesContent to write
workspace_rootNoWorkspace root directory (optional)

TDQS

A3.6/5.0
Behavior3/5

Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?

With no annotations, the description must bear the full burden of behavioral disclosure. It mentions that parent directories are created automatically, which is a key side effect. However, it does not disclose other traits such as whether existing content is truncated, permission requirements, or any failure modes (e.g., if file is locked).

Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.

Conciseness5/5

Is the description appropriately sized, front-loaded, and free of redundancy?

The description is concise, consisting of two sentences with no redundant words. It is front-loaded with the primary action and immediately follows with a key behavioral detail.

Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.

Completeness4/5

Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?

The tool is simple with three parameters and no output schema. The description covers the core action (write/overwrite) and an important side effect (auto-create directories). However, given the presence of siblings like edit_file, a brief usage note would improve completeness.

Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.

Parameters3/5

Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?

All three parameters are described in the input schema with 100% coverage, so the baseline is 3. The tool description adds no additional semantic value beyond the schema descriptions, such as the format or constraints on content or path.

Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.

Purpose5/5

Does the description clearly state what the tool does and how it differs from similar tools?

The description clearly states the verb 'Write or overwrite' and the resource 'file', and it adds the detail 'Creates parent directories automatically', which distinguishes it from sibling tools like create_directory that might not handle directory creation automatically.

Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.

Usage Guidelines2/5

Does the description explain when to use this tool, when not to, or what alternatives exist?

The description does not provide any guidance on when to use this tool versus alternatives such as edit_file or create_directory. There is no explicit 'when-not' or mention of prerequisites, leaving the agent without contextual decision support.

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.

  1. 12 tool updatesv1.0.0
    • First observedcreate_directory
    • First observeddelete_path
    • First observededit_file
    • First observedfind_files
    • First observedget_file_info
    • First observedget_workspace_info
    • First observedlist_directory
    • First observedmove_path
    • First observedread_file
    • First observedrun_command
    • First observedsearch_files
    • First observedwrite_file

TDQS

A3.6/5.0
Disambiguation5/5

Each tool targets a distinct file or workspace operation: create, delete, edit, find, get info, list, move, read, run, search, write. No two tools have overlapping purposes.

Naming Consistency5/5

All tool names follow a consistent verb_noun pattern in snake_case (e.g., create_directory, read_file, write_file). No deviations or mixed conventions.

Tool Count5/5

12 tools is well-scoped for a file system and workspace utility server, covering essential operations without being overwhelming or too sparse.

Completeness4/5

The tool set covers fundamental file/directory operations and workspace info. Minor gaps exist such as no copy tool (can be done via read+write) and no line-based editing, but core workflows are supported.

Maintenance

ActivityInactive
ResponsivenessSyncing

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

Related MCP Servers

  • A
    license
    A
    quality
    B
    maintenance
    An MCP server that implements Claude Code-like functionality, allowing the AI to analyze codebases, modify files, execute commands, and manage projects through direct file system interactions.
    15
    303
    MIT
  • A
    license
    A
    quality
    C
    maintenance
    An MCP server that provides dynamic codebase context to Claude Code through tools like hybrid search, recent changes, and symbol definitions, enhancing AI-assisted coding with local RAG.
    8
    MIT
  • A
    license
    Not graded
    quality
    F
    maintenance
    MCP server that integrates with VS Code to enable file operations, git diffs, and line highlighting via MCP clients like Claude.
    41
    MIT

Latest Blog Posts

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/KloutDevs/vscode-mcp'

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