Skip to main content
Glama

Set a project's MCP file path

set_mcp_config_path
Idempotent

Point the project at the repository file that declares its MCP servers, e.g. .cursor/mcp.json or .vscode/mcp.json. null restores the default (.mcp.json). The file is read, never edited. When the repository's ship.yml sets mcp.config, that wins and this call is refused (409); list_mcp_servers reports which one applies as configPathSource. Requires the config:write capability.

Input Schema

NameRequiredDescriptionDefault
projectIdYesProject id, e.g. from list_projects
configPathYesRepository-relative path, or null

Schema Changelog

Changes observed during successful MCP inspections.

  1. First observed

TDQS

A4.7/5.0
Behavior5/5

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

Annotations mark it non-read-only but non-destructive and idempotent; the description adds rich context beyond that: the target file is read and never edited, null has a specific reset behavior, a 409 conflict path exists when ship.yml overrides, and it requires the config:write capability. This governs auth, failure, and side-effect expectations precisely.

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?

Four tight sentences, front-loaded with the primary action, followed by the reset behavior, the read-only-edit constraint, and the override/capability caveats. No filler; every clause carries operational weight.

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?

For a two-parameter setter with no output schema and solid annotations, the description covers the action, the null/default semantics, the refusal path, and the required capability. Nothing an agent needs to call it correctly is missing.

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 both parameters are already documented; the description still adds meaning by naming example configPath values (.cursor/mcp.json, .vscode/mcp.json) and clarifying that null restores the .mcp.json default. That is real semantic enrichment above the baseline 3.

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 and resource ('Point the project at the repository file that declares its MCP servers') with concrete examples of the file. It clearly delimits this from siblings like bind_mcp_server (server binding) and list_mcp_servers (reporting), so an agent can distinguish it without opening the schema.

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 clear operating context: null restores the default, the 409 refusal when ship.yml declares mcp.config, and that list_mcp_servers reveals the effective source via configPathSource. However, it never states when to prefer this over alternatives (e.g., bind_mcp_server) or prerequisites for calling it, so explicit when-not guidance is thinner than a 5.

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

Try in Browser

Glama MCP Gateway

Add one secure layer between your agents and this server.