Skip to main content
Glama
EtienneBBeaulac

Multi-Workspace MCP Server

Server Quality Checklist

67%
Profile completionA complete profile improves this server's visibility in search results.
  • Latest release: v1.0.1

  • Disambiguation5/5

    Each tool maps to a distinct filesystem operation: read, write, edit, list, search, and run. Even the two mutation tools are clearly separated by whole-file overwrite versus targeted search-and-replace.

    Naming Consistency5/5

    All six tool names follow the same `verb_crossproject` pattern with snake_case throughout. The naming makes the domain and operation immediately predictable.

    Tool Count5/5

    Six tools is well-scoped for a companion-repo file and command operations server. Each tool covers a distinct need without bloat or redundancy.

    Completeness4/5

    The set covers list, read, write, edit, search, and arbitrary command execution, which is strong for the stated purpose. A direct delete or rename tool is missing, though `run_crossproject` can compensate via shell commands.

  • Average 4.3/5 across 6 of 6 tools scored.

    See the Tool Scores section below for per-tool breakdowns.

    • No community issues in the last 6 months
    • 0 commits in the last 12 weeks
    • Last stable release on
    • No critical vulnerability alerts
    • No high-severity vulnerability alerts
    • No code scanning findings
    • CI is failing
  • This repository is licensed under MIT License.

  • This repository includes a README.md file.

  • No tool usage detected in the last 30 days. Usage tracking helps demonstrate server value.

    Tip: use the "Try in Browser" feature on the server page to seed initial usage.

  • Add a glama.json file to provide metadata about your server.

  • If you are the author, simply .

    If the server belongs to an organization, first add glama.json to the root of your repository:

    {
      "$schema": "https://glama.ai/mcp/schemas/server.json",
      "maintainers": [
        "your-github-username"
      ]
    }

    Then . Browse examples.

  • Add related servers to improve discoverability.

How to sync the server with GitHub?

Servers are automatically synced at least once per day, but you can also sync manually at any time to instantly update the server profile.

To manually sync the server, click the "Sync Server" button in the MCP server admin interface.

How is the quality score calculated?

The overall quality score combines two components: Tool Definition Quality (70%) and Server Coherence (30%).

Tool Definition Quality measures how well each tool describes itself to AI agents. Every tool is scored 1–5 across six dimensions: Purpose Clarity (25%), Usage Guidelines (20%), Behavioral Transparency (20%), Parameter Semantics (15%), Conciseness & Structure (10%), and Contextual Completeness (10%). The server-level definition quality score is calculated as 60% mean TDQS + 40% minimum TDQS, so a single poorly described tool pulls the score down.

Server Coherence evaluates how well the tools work together as a set, scoring four dimensions equally: Disambiguation (can agents tell tools apart?), Naming Consistency, Tool Count Appropriateness, and Completeness (are there gaps in the tool surface?).

Tiers are derived from the overall score: A (≥3.5), B (≥3.0), C (≥2.0), D (≥1.0), F (<1.0). B and above is considered passing.

Tool Scores

  • Behavior4/5

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

    With no annotations provided, the description carries the full behavioral burden. It clearly discloses that the tool returns metadata (type, size, modified date) and supports recursive tree listing, which are the key behavioral traits for a listing tool. It stops short of describing failure modes or config requirements, but the schema already notes the workspace configuration gap.

    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 two focused sentences with no redundancy. It front-loads the primary purpose and immediately adds distinguishing context and return-value details.

    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 list operation with four parameters fully described in the schema, the description is mostly complete: it covers the resource, the scope, the metadata returned, and the recursive option. It omits explicit error conditions or workspace-config behavior, but the schema already hints at the missing workspace configuration.

    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 path, maxDepth, recursive, and workspace. The description adds general context about workspace roots and recursive listing but does not materially enhance the parameter-level meaning beyond the schema.

    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 files and directories in a configured workspace root, with return metadata and recursive listing. It also differentiates this from the current project workspace and from sibling read/write/edit/search/run tools by specifying listing behavior.

    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 gives useful context that this targets external or companion repos rather than the current project workspace, implying when it is appropriate. However, it does not explicitly state when to prefer it over siblings like read_crossproject or search_crossproject, nor does it mention any exclusions.

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

  • Behavior3/5

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

    With no annotations, the description carries the full burden of behavior disclosure. It adds useful behavioral detail: supports pipes/redirects/chained commands and returns stdout, stderr, and exit code. However, it does not warn that shell commands can be destructive or have side effects outside the workspace, which is relevant 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?

    The description is three sentences with no filler. It front-loads the primary purpose, then covers capabilities and typical use cases, each sentence earning its place.

    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 description covers what the command returns, where it runs, what shell features are supported, and when to use it. It does not discuss environment variables, shell profile, or destructive potential, but the schema covers the parameters and the description is sufficiently complete for an agent to call the tool correctly.

    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 and the description need not repeat parameter details. The description adds tool-level context about the workspace root, but it does not materially improve on the schema's per-parameter descriptions such as timeout, maxBuffer, or the workspace configuration caveat.

    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 opens with a specific verb and resource: 'Run a shell command in a configured workspace root.' It also clarifies scope by noting the workspace is 'typically a companion repo outside the current project workspace,' which immediately distinguishes this from the read/write/edit/list/search sibling tools.

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

    Usage Guidelines4/5

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

    The description gives explicit use cases: 'Use for build tools, codegen, git operations, or any command that needs to run in the workspace directory.' It does not state when not to use it or name alternative tools, but the sibling tools are clearly file operations rather than command execution, so the context is strong even without formal exclusions.

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

  • Behavior4/5

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

    Even though no annotations are provided, the description discloses overwrite semantics, the writeAllowlist restriction, and that all writes are logged. This covers the most important behavioral traits for a write operation.

    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?

    Three focused sentences deliver the core action, scope, usage guidance, constraints, and logging behavior. Every sentence earns its place, with the primary purpose front-loaded.

    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 description sufficiently covers what the tool does, where it applies, when not to use it, write restrictions, and side effects. Return/error details are not specified, but they are less critical for a straightforward write tool without an 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?

    Schema description coverage is 100%, so the schema already documents all three parameters. The description adds context about the configured workspace root but does not add meaning beyond the schema for individual 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 opens with 'Create or overwrite a file in a configured workspace root,' giving a clear verb, object, and scope. It further distinguishes the tool from current-project tools and from sibling read/search/list/run operations.

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

    Usage Guidelines4/5

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

    The description explicitly tells the agent to prefer built-in IDE editing/refactoring tools for current-workspace files, providing an exclusion condition. It also clarifies the intended use case—another repo exposed via MCP. It does not explicitly direct modification of existing cross-project files to edit_crossproject, but the core guidance is present.

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

  • Behavior4/5

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

    With no annotations provided, the description carries the full behavioral burden and does it well: it discloses that the same find/replace runs on all specified files, that oldString must be unique unless replaceAll is true, that writeAllowlist can restrict editable paths, and that useRegex enables backreferences. It stops short of describing failure behavior or reversibility, but it covers the most operationally important traits.

    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 five concise sentences with no filler. It front-loads the core purpose, then adds usage preference, matching rules, allowlist constraints, and regex behavior in a logical order. Every sentence contributes operational information.

    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 mutation tool with no annotations and no output schema, the description covers a broad set of needed context: purpose, workspace scope, tool-selection guidance, uniqueness rules, write restrictions, and regex semantics. The main omissions are expected return values and behavior on partial multi-file failure, but the tool remains confidently invocable.

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

    Parameters4/5

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

    The schema already covers 100% of parameters, so the baseline is 3. The description adds valuable cross-parameter meaning by clarifying that the replacement is applied uniformly across all paths, that per-file uniqueness is required unless replaceAll is set, and that writeAllowlist can further constrain path editability. This is meaningful value beyond the schema fields.

    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 first sentence specifies a precise action ('Apply search-and-replace edits') and a concrete resource ('one or more files in a configured workspace root'). It also clarifies that the tool is typically for companion repos outside the current project workspace, which distinguishes it from sibling read/write/list/search/run tools.

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

    Usage Guidelines4/5

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

    The description explicitly advises preferring built-in IDE refactoring/editing tools for typed changes in the current workspace, giving a clear when-not-to-use alternative. It also establishes the intended context: companion repos outside the current project workspace. It does not enumerate each sibling distinction, but the guidance is sufficient for typical selection.

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

  • Behavior4/5

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

    With no annotations provided, the description carries the full burden and delivers: discloses the ripgrep backend, output modes, context lines, case-insensitive matching, pagination, and the contextBefore/contextAfter array shape when contextLines is used. Minor gaps remain on default behaviors and error conditions, but for an unannotated tool this is substantial disclosure.

    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?

    Three information-dense sentences with zero filler: purpose/scope first, usage guidance second, behavioral details third. Each sentence adds distinct value and the most decision-relevant info (what it searches, where) is front-loaded.

    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 9-parameter tool with no annotations and no output schema, the description is nearly complete: it covers return shape, scoping, and when to avoid the tool. Remaining gaps are low-stakes for a read-only search — no mention of error handling (e.g., unconfigured workspace) or performance limits, though the schema's workspace enum hints at the configuration issue.

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

    Parameters4/5

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

    Schema coverage is 100%, so baseline is 3, but the description adds cross-parameter meaning beyond the schema: it ties pagination (limit/offset), outputMode semantics, and the contextLines return-structure together, and explains what 'workspace' means operationally (configured companion repo).

    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?

    States a specific verb+resource: 'Search text or regex in a configured workspace root, usually a companion repo outside the current project workspace.' The scope qualifier ('outside the current project workspace') sharply differentiates it from the sibling tools (read/write/edit/list/run_crossproject) and from built-in code navigation.

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

    Usage Guidelines4/5

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

    Gives explicit routing guidance: 'Prefer built-in code navigation/LSP tools in the current workspace when they apply.' This tells the agent when NOT to use the tool, though it names a tool category rather than specific sibling tools or concrete conditions for choosing this one.

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

  • Behavior4/5

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

    With no annotations, the description carries the behavioral burden, and it discloses useful operational details: default 500-line cap, line numbers, metadata keys (totalLines, range, truncated), and pagination via offset/limit. It does not explicitly warn that limit/offset returns plain text, but that detail is present in the schema, so the description adds substantial value without contradiction.

    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 three tight sentences with no filler. The core purpose is front-loaded, usage guidance comes second, and the return-behavior detail closes it out efficiently.

    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 no output schema and no annotations, the description supplies the key context an agent needs: what the tool reads, when to prefer alternatives, default output limits, metadata shape, and pagination approach. The schema covers the remaining parameter-level details like 1-indexed offsets and plain-text returns.

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

    Parameters4/5

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

    Schema coverage is 100%, so the baseline is 3, but the description adds meaning by framing workspace as a 'configured workspace root' and explaining that offset/limit operate together for pagination. This goes beyond the individual parameter descriptions in the schema.

    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 opens with a specific verb and resource: 'Read a file from a configured workspace root.' It clarifies this is for companion repos outside the current project workspace, which distinguishes it from current-workspace tools and from sibling write/edit/list/search/run_crossproject operations.

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

    Usage Guidelines5/5

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

    The description explicitly advises using IDE built-in read/navigation tools for files in the current workspace, while reserving this tool for configured external workspace roots. This gives clear when-to-use and when-not-to-use guidance, even naming the preferred alternative.

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

GitHub Badge

Glama performs regular codebase and documentation scans to:

  • Confirm that the MCP server is working as expected.
  • Confirm that there are no obvious security issues.
  • Evaluate tool definition quality.

Our badge communicates server capabilities, safety, and installation instructions.

Card Badge

Multi-Workspace MCP Server MCP server – quality and maintenance score on Glama

Copy to your README.md:

Score Badge

Multi-Workspace MCP Server MCP server – quality and maintenance score on Glama

Copy to your README.md: