Skip to main content
Glama

Agent Config Companion MCP Server

Companion MCP runtime for cross-harness host inspection, profile persistence, and execution configuration.

Overview

agent-config is an independent Model Context Protocol (MCP) server that acts as the companion runtime for the agent-config Skill.

Architectural Separation

The system uses a strict two-repository architecture:

skills/agent-config (Skill)
       │  (Reasoning & Policy)
       │  • Task shape assessment (single-pass vs decomposed)
       │  • Work-item difficulty assessment (routine / moderate / demanding / critical)
       │  • Execution tier selection (routine / standard / high / review)
       │  • Execution topology selection (single session / controller-workers)
       ▼
agent-config (Companion MCP Server)
       │  (Runtime & Persistence)
       ├─ inspect_host: Inspect host capabilities & available models
       ├─ get_profile / save_profile: Atomic, host-scoped profile persistence
       ├─ preview_configuration: Generates preview diff & hash
       ├─ apply_configuration: Mutates host configuration via Adapter
       └─ validate_configuration: Confirms applied state matches expected
       ▼
Host Adapters
       ├─ Native (10): Codex, Claude Code, Antigravity / agy, DeepSeek Harness (DSH), OpenCode, ZCode, Cursor, Grok Build, Hermes, Pi
       └─ Generic Adapter (plan-only fallback)

Related MCP server: Agent Tools Runtime

Installation

Clone and install globally:

git clone https://github.com/LightDevCoder/agent-config.git
cd agent-config
npm ci
npm run build
npm install -g .

Verify that the CLI is available and can probe the environment:

agent-config setup --check

(Note: setup --check returns non-zero exit code when the companion is not yet registered or configured for the current workspace. This confirms the CLI is functional.)

Companion MCP Registration

To preview and apply companion MCP registration into your current agent host configuration:

# Preview registration diff (read-only)
agent-config setup --preview

# Apply registration with explicit approval
agent-config setup --apply --yes

# Validate health after registration
agent-config setup --check

Relationship with LightDevCoder/skills

  • Skill (agent-config): Installed from LightDevCoder/skills:

    npx skills add LightDevCoder/skills --skill agent-config
  • Companion MCP Runtime (this repository): Provides optional host inspection, profile persistence, configuration preview/apply, and health verification. Without the companion, the Skill remains fully functional in session-local, plan-only mode.

Core Principles

  1. Cross-Harness by Design: Designed from the start for seamless operation across different agent hosts (Codex, OpenCode, Claude Code, Cursor, generic).

  2. Single-Model as a First-Class Citizen: Single-model mode is NOT a degraded fallback; it is a primary operating mode with full topology, concurrency, thread dispatch, and effort controls.

  3. Strict Separation of Evidence and Tier Mappings:

    • Host inspection reports factual model availability and supported discrete effort values.

    • Capability tiers (routine, standard, high, review) are exclusively mapped by the user during setup.

    • No model intelligence guessing: The runtime forbids static ranking fields (routing_rank) or heuristic guessing based on model names.

  4. Abstract Effort Policies vs. Host Discrete Values:

    • Profiles and plans can specify abstract policies (e.g. highest-supported, default, lowest-supported).

    • Adapters resolve policies into the concrete discrete string values actually supported by the host (e.g. high).

  5. Safe Mutation Gate: Configuration changes always require explicit preview generation before application (preview_configurationapply_configuration), followed by post-mutation validation (validate_configuration).

Standard MCP Tool Surface

Tool

Purpose

get_setup_status

Returns whether the current host/workspace has a configured profile, its version, and stale status.

inspect_host

Queries the active Host Adapter for available models, supported effort values, and concurrency/subagent capabilities.

get_profile

Retrieves the stored, user-confirmed profile for the current host and workspace scope.

save_profile

Validates against schema and host inventory, then atomically persists the profile.

preview_configuration

Previews configuration changes and produces a verifiable preview hash/ID.

apply_configuration

Applies a previously previewed configuration via the corresponding Host Adapter.

validate_configuration

Compares host state with a canonical expected_config or a known workspace/host-bound preview_id; rejects missing or invalid baselines.

reset_profile

Clears stored profile configuration for the current host and workspace.

Canonical Schemas

Schemas are defined under schemas/ and canonical contracts under src/contracts/:

  • schemas/profile.schema.json: User-confirmed profile schema (host+workspace scoped, single/multi modes, tier mapping, abstract effort policies).

  • schemas/host-capabilities.schema.json: Host capability evidence schema (models inventory, discrete effort values, concurrency, subagents/threads).

  • schemas/execution-config.schema.json: Resolved execution configuration schema (topology, controller/worker models and resolved discrete effort values).

  • schemas/preview.schema.json: Canonical configuration preview schema (preview_id, preview_hash, diff, expires_at, target, baseline_hash).

  • schemas/apply.schema.json: Canonical apply mutation result schema (preview_id, applied_targets, target, baseline_hash, message).

  • schemas/validation.schema.json: Canonical post-apply host validation schema (valid, workspace, message, details).

  • schemas/companion-contract.schema.json: Canonical companion MCP contract specification covering protocol version 1, all 8 tools, request/response schemas, and error format.

Harness Support Matrix

Harness

Tier

Scope

Configuration Path

MCP Registration

Codex CLI

Native

Project / User

.codex/config.toml (or $CODEX_HOME/config.toml)

.codex/config.toml ([mcp_servers.agent-config])

Claude Code

Native

Project / User

.mcp.json / ~/.claude.json

.mcp.json (project) / ~/.claude.json (user)

Antigravity / agy

Native

Project / User

.gemini/config.json

.gemini/config.json

DeepSeek Harness (DSH)

Native

Project / User

cordis.patch.yml / $DSH_HOME/profiles/<name>/cordis.patch.yml

@deepseek-ai/dsh-mcp-client in cordis.patch.yml

OpenCode

Native

Project / User

opencode.json / opencode.jsonc

opencode.json / opencode.jsonc

ZCode

Native

Project / User

<workspace>/.zcode/config.json / ~/.zcode/cli/config.json

.zcode/config.json (mcp.servers["agent-config"])

Cursor

Native

Project / User

.cursor/settings.json

.cursor/mcp.json

Grok Build

Native

Project / User

.grok/config.toml

.grok/config.toml

Hermes

Native

User / Project

~/.hermes/config.json

~/.hermes/config.json

Pi Coding Agent

Native settings; MCP extension required

Project / User

.pi/settings.json / ~/.pi/agent/settings.json

.pi/mcp.json (project) / ~/.pi/agent/mcp.json (user)

Generic / Fallback

Fallback

Plan-only

N/A (read-only execution plan)

Manual export

Pi MCP registration requires an installed and enabled npm:pi-mcp-adapter package and a Pi restart/reload. Project settings additionally require Pi project trust. The adapter verifies model/provider pairs and model-specific thinking evidence; extension dispatch capabilities remain unknown until evidenced. See Pi adapter.

Setup CLI & Companion Health Verification

The companion provides a standalone CLI runner for safe host registration and health verification:

  • agent-config setup --check: Executes a live MCP protocol and contract probe.

    • Exit semantics: Exits with code 0 only when the Companion is healthy and ready; exits non-zero (1) if unregistered, unreachable, or unhealthy.

    • Strict state separation: Distinguishes Registered, Configured, Reachable, and Healthy (registration != reachability != health).

    • Canonical health definition: Requires syntactically valid registration, live process reachability, compatible MCP transport protocol, exact Agent Config Companion contract version match (protocol_version === 1), and all 8 canonical tools with compatible input and output schemas.

  • agent-config setup --preview: Read-only inspection generating a unified diff and mutation ownership block.

  • agent-config setup --apply --yes: Atomically applies host configuration mutations. Requires explicit approval (--yes). Full setup completion requires post-mutation health probe verification; registration mutation success alone does not mean setup completion.

Development

# Install dependencies
npm install

# Type-check
npm run check:types

# Build TypeScript to dist/
npm run build

# Run test suite
npm test

License

MIT License. See LICENSE for details.

Available Tools

8 tools
apply_configurationA

Apply a previously previewed configuration using a valid preview ID.

ParametersJSON Schema
NameRequiredDescriptionDefault
workspaceNoWorkspace directory path (defaults to current working directory)
preview_idYesThe preview ID generated by preview_configuration

Output Schema

ParametersJSON Schema
NameRequiredDescription
targetNoPrimary target file path
messageYesApply result message
successYesWhether apply operation succeeded
preview_idYesPreview ID applied
baseline_hashNoBaseline hash
applied_targetsYesPaths of files modified

TDQS

A3.7/5.0
Behavior2/5

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

No annotations are provided, so the description carries the full burden of behavioral disclosure. It signals a mutation ('apply') but does not mention side effects, reversibility, required permissions, or what happens on failure. For a state-changing operation, this is a notable 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?

A single, front-loaded sentence with no filler. It states the action, the object, and the key prerequisite efficiently.

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?

The tool is simple, both parameters are documented, and an output schema exists, so return-value details are not required. However, for a mutating tool with no annotations, the lack of any behavioral or consequence information makes the description slightly incomplete.

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 both parameters. The description adds little beyond restating that preview_id must be valid and generated from a prior preview, which earns the 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?

The description uses a specific verb—'apply'—with a clear object ('configuration') and a precise prerequisite (a previously previewed configuration with a valid preview ID). This clearly distinguishes it from sibling tools like preview_configuration and validate_configuration.

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?

It explicitly establishes when to use the tool: after previewing a configuration and using its preview ID. It does not explicitly name alternatives or exclusions, but the prerequisite is clear enough to guide the agent toward correct usage.

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

get_profileB

Retrieve the stored, user-confirmed Agent Config profile for the specified host and workspace.

ParametersJSON Schema
NameRequiredDescriptionDefault
scopeNoConfiguration scope ('project' or 'global', defaults to 'project')
host_idNoHost identifier (optional, auto-detected from adapter if omitted)
workspaceNoWorkspace directory path (defaults to current working directory)

Output Schema

ParametersJSON Schema
NameRequiredDescription
foundYesWhether stored profile was found
messageNoInformational message
profileNoStored profile if found

TDQS

B3.4/5.0
Behavior3/5

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

With no annotations, the description carries the full behavioral disclosure burden. 'Retrieve' implies a read-only operation, and 'stored, user-confirmed' adds a qualifier about which profiles are returned, but the description does not disclose what happens when no profile exists, whether any side effects occur, or what response is expected beyond what the output schema provides.

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 a single sentence with no filler. It front-loads the action, resource, and scoping qualifiers efficiently, making it easy for an agent to parse the core purpose quickly.

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 presence of an output schema means return values do not need to be explained. For a simple read-only getter with fully documented schema parameters, this description is reasonably complete, though it could have noted the scope parameter or provided guidance on sibling tools.

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 all parameters are already documented with defaults and meanings. The description adds a minor semantic link by naming host and workspace as selectors, but it does not provide meaningful information beyond the schema.

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 states a clear verb ('Retrieve') and a specific resource ('stored, user-confirmed Agent Config profile'), scoped by host and workspace. It is distinct from siblings like get_setup_status or inspect_host because it targets the Agent Config profile, though it does not explicitly name those 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?

The description gives no guidance on when to use get_profile versus siblings like get_setup_status, inspect_host, or save_profile. There are no exclusions, prerequisites, or conditions that would help an agent choose this tool over alternatives; usage must be inferred solely from the verb.

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

get_setup_statusC

Query setup and configuration readiness status for the current host and workspace.

ParametersJSON Schema
NameRequiredDescriptionDefault
scopeNoConfiguration scope ('project' or 'global', defaults to 'project')
host_idNoHost identifier (optional, auto-detected from adapter if omitted)
workspaceNoWorkspace directory path (defaults to current working directory)

Output Schema

ParametersJSON Schema
NameRequiredDescription
scopeNoConfiguration scope
staleYesWhether stored configuration is stale
host_idYesTarget harness host ID
adapter_idNoUnderlying host adapter ID
configuredYesWhether configuration exists and is valid
stale_reasonsYesReasons why configuration is stale
profile_versionNoStored profile version
protocol_versionYesAgent Config companion protocol version
companion_registeredNoWhether companion is registered

TDQS

C2.9/5.0
Behavior2/5

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

No annotations are provided, so the description carries the full burden of behavioral disclosure. It implies a read-only operation via 'Query', but does not disclose what readiness status contains, whether it triggers any side effects, how host detection works, or what kinds of output/errors to expect beyond the output schema.

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?

The description is a single efficient sentence with no filler. It is front-loaded with the key verb and resource, though it could have used the available space to add sibling differentiation or usage guidance without becoming overly long.

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?

The tool is simple, all parameters are documented in the schema, and an output schema exists, so return-value details are not required in the description. However, given the sibling tools, some usage guidance or clarification of what 'setup and configuration readiness status' means relative to inspect_host or validate_configuration would make the definition more complete.

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 parameter-specific meaning beyond what the schema already provides, but because the schema fully documents scope, host_id, and workspace, this gap is acceptable.

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 identifies the verb ('Query') and resource ('setup and configuration readiness status') for the current host and workspace. It is not a tautology and gives a reasonably distinct purpose, though it does not explicitly differentiate itself from siblings like inspect_host or validate_configuration.

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 gives context that this queries status for the current host and workspace, but provides no guidance on when to prefer this tool over alternatives such as validate_configuration, inspect_host, or preview_configuration. There are no explicit exclusions or conditional usage instructions.

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

inspect_hostA

Inspect host runtime capabilities, available models, supported effort values, and execution topology.

ParametersJSON Schema
NameRequiredDescriptionDefault
host_idNoHost identifier (optional, auto-detected if omitted)
workspaceNoWorkspace directory path (defaults to current working directory)

Output Schema

ParametersJSON Schema
NameRequiredDescription
host_idYesTarget host ID
platformNoOperating system platform
workspaceNoWorkspace path
adapter_idYesAdapter ID
observed_atYesISO timestamp of observation
capabilitiesYesHost capability flags
available_modelsYesAvailable model capabilities
default_effort_valueNoDefault reasoning effort value
supported_effort_valuesYesSupported reasoning effort values

TDQS

A3.8/5.0
Behavior3/5

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

The verb 'Inspect' strongly implies a read-only, non-destructive operation, which is useful behavioral context. However, with no annotations provided, the description carries the full burden and does not disclose details such as whether the inspection is local or remote, potential latency, failure modes, or implications of host auto-detection.

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 a single, well-structured sentence that front-loads the action and resource, then lists the specific inspection areas. There is no redundant wording or repetition of schema 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 read-only inspection tool with optional, well-documented parameters and an output schema available, the description is largely complete. It lacks explicit usage boundaries relative to siblings, but the purpose and scope are clear enough for an agent to invoke it 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%, and both parameters already have clear descriptions: host_id is optional and auto-detected, workspace defaults to the current directory. The tool description itself adds no extra parameter-level meaning, so the baseline 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 uses a specific verb ('Inspect') and a clear resource ('host') with enumerated focus areas: runtime capabilities, available models, supported effort values, and execution topology. This is immediately distinguishable from sibling tools like get_setup_status, get_profile, and configuration-related tools without requiring schema inspection.

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 when to use the tool: when you need host runtime capabilities, models, effort values, or topology. However, it does not explicitly state when not to use it or mention alternatives, such as get_setup_status or get_profile, so the guidance is left to inference.

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

preview_configurationA

Generate a configuration preview (diff and mutation targets) before applying any changes.

ParametersJSON Schema
NameRequiredDescriptionDefault
configYesCanonical ExecutionConfig object conforming to execution-config.schema.json
host_idNoHost identifier (optional, auto-detected from adapter if omitted)
workspaceNoWorkspace directory path (defaults to current working directory)

Output Schema

ParametersJSON Schema
NameRequiredDescription
diffYesHuman-readable configuration diff
targetYesTarget configuration file path
expires_atYesISO expiration timestamp
preview_idYesUnique preview identifier
preview_hashYesSHA-256 hash of proposed changes
baseline_hashNoHash of baseline content
mutation_targetsYesList of target paths to mutate

TDQS

A3.5/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 behavioral transparency burden. It communicates that the tool generates a preview rather than applying changes, but it does not explicitly confirm that no side effects occur, whether it performs validation, or what conditions might cause failure.

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 a single sentence with no filler. It front-loads the primary action ('Generate a configuration preview') and then adds clarifying detail about what the preview includes.

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?

The description provides sufficient context for a preview tool, especially given the output schema exists, so return details need not be in the description. However, it lacks explicit non-mutation guarantees or distinctions from the validate_configuration sibling, leaving some ambiguity about when this tool is the correct choice.

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 no parameter-specific meaning beyond referring to the configuration generally, which meets the baseline for high schema coverage.

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's purpose: generating a configuration preview with diff and mutation targets. It is distinct from sibling tools like apply_configuration and validate_configuration, though it does not explicitly name them.

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 phrase 'before applying any changes' implies the tool should be used before apply_configuration, but it does not explicitly describe when to choose this tool over validate_configuration or other siblings, nor does it state when not to use it.

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

reset_profileA

Safely clear and remove the host-scoped profile for the specified workspace.

ParametersJSON Schema
NameRequiredDescriptionDefault
scopeNoConfiguration scope ('project' or 'global', defaults to 'project')
host_idNoHost identifier (optional, auto-detected from adapter if omitted)
workspaceNoWorkspace directory path (defaults to current working directory)

Output Schema

ParametersJSON Schema
NameRequiredDescription
resetYesWhether reset state is confirmed
scopeYesScope reset
clearedYesWhether profile file was cleared
host_idYesHost identifier
messageYesReset outcome message
successYesWhether profile reset succeeded

TDQS

A3.5/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 clearly communicates that the profile is removed, which implies destructiveness and irreversibility, but it does not elaborate on side effects, whether configuration reverts to defaults, or what 'safely' guarantees. The word 'safely' adds a reassuring tone but no concrete detail.

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 a single, front-loaded sentence with no redundant phrasing. It conveys the action, scope, and a safety framing without wasting words, making it easy for an agent to parse quickly.

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?

Although an output schema exists and parameters are fully documented, the description is thin for a destructive operation. It does not mention whether the reset triggers any re-initialization, whether it can be undone, or how it interacts with saved profiles. These gaps could leave an agent uncertain about consequences beyond the literal removal.

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 provides descriptions for all three parameters, achieving 100% coverage. The description does not add parameter-specific meaning beyond the schema, so the baseline of 3 applies; it briefly references workspace and host scope, but these are already covered 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 uses specific verbs ('clear and remove') with a clear resource ('host-scoped profile') and scope ('for the specified workspace'), making the action unambiguous. It also distinguishes itself from siblings like get_profile and save_profile by focusing on deletion rather than retrieval or persistence.

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 state when to use this tool versus alternatives, nor does it mention any prerequisites or conditions that would make resetting appropriate. While the verb implies a reset scenario, there is no explicit routing guidance relative to sibling tools such as apply_configuration or preview_configuration.

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

save_profileB

Atomically validate and save a user-confirmed Agent Config profile.

ParametersJSON Schema
NameRequiredDescriptionDefault
profileYesComplete Agent Config profile document to save
workspaceNoOptional workspace path override (defaults to profile.scope.workspace)

Output Schema

ParametersJSON Schema
NameRequiredDescription
messageYesSave result message
profileYesSaved profile document
successYesWhether save operation succeeded

TDQS

B3.4/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 does add meaningful behavior: the operation is atomic and includes validation. However, it does not disclose whether an existing profile is overwritten, what happens on validation failure, or what side effects persist beyond saving.

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 one tight, front-loaded sentence with no filler. It efficiently communicates the core action, resource, and two key behavioral traits (atomicity and user-confirmation).

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?

Although an output schema exists and parameter coverage is complete, the description lacks enough context for an agent to reliably choose this tool over closely related siblings. It does not explain how 'saving' differs from 'applying' or 'validating', nor does it clarify overwrite or confirmation workflow expectations.

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 input schema already documents both parameters. The description adds no parameter-specific semantics beyond the schema, which is acceptable per the baseline when coverage is high.

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 uses a specific verb ('save') and resource ('Agent Config profile'), and adds behavioral qualifiers ('atomically validate', 'user-confirmed'). It is clear about what the tool does, though it does not explicitly distinguish it from siblings like apply_configuration or validate_configuration.

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 phrase 'user-confirmed' implies this tool should be used after user approval, giving some contextual signal. However, there is no explicit guidance about when to choose save_profile over siblings such as apply_configuration, validate_configuration, or reset_profile.

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

validate_configurationB

Verify that actual host configuration matches expected configuration after apply.

ParametersJSON Schema
NameRequiredDescriptionDefault
host_idNoHost identifier (optional, auto-detected from adapter if omitted)
workspaceNoWorkspace directory path (defaults to current working directory)
preview_idNoPreview ID to extract expected configuration from if omitted
expected_configNoExpected configuration object to validate against actual host state

Output Schema

ParametersJSON Schema
NameRequiredDescription
validYesWhether configuration is valid
detailsNoValidation details
messageYesValidation outcome message
workspaceYesWorkspace path validated

TDQS

B3.3/5.0
Behavior2/5

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

No annotations are provided, so the description carries the full burden of behavioral disclosure. The verb 'verify' suggests a read-only operation, but the description does not explicitly state that no changes are made, whether a mismatch causes an error or returns a report, or any prerequisites beyond 'after apply'.

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, front-loaded with the action verb, no filler or redundant detail. It communicates the essential purpose in minimal words.

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?

The presence of an output schema and fully documented parameters reduces the burden on the description. However, with no annotations, the description omits side-effect and error-handling behavior, which an agent would need for confident invocation in a mutation-related workflow.

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 input schema already documents all four parameters clearly. The tool description adds no additional parameter meaning, which matches the baseline of 3 for full coverage.

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?

Description uses a specific verb ('Verify') and resource ('actual host configuration'), and clarifies the goal is comparing against expected configuration. The phrase 'after apply' distinguishes it from preview/apply siblings, though it does not name them explicitly.

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 temporal condition 'after apply' gives implied usage context — this is the post-apply validation step. However, it does not explicitly mention alternatives, when not to use it, or how it relates to preview_configuration or inspect_host.

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. 8 tool updatesv0.1.0
    • First observedapply_configuration
    • First observedget_profile
    • First observedget_setup_status
    • First observedinspect_host
    • First observedpreview_configuration
    • First observedreset_profile
    • First observedsave_profile
    • First observedvalidate_configuration

TDQS

A3.7/5.0
Disambiguation4/5

Most tools map cleanly to distinct actions (profile CRUD vs configuration preview/apply/validate), but get_setup_status and validate_configuration both touch configuration state, which could cause minor confusion. Overall, descriptions are clear enough to guide correct selection.

Naming Consistency5/5

All tool names follow a consistent verb_noun snake_case pattern with specific verbs like get, save, reset, preview, apply, validate, and inspect. The naming style is uniform and predictable.

Tool Count5/5

Eight tools is well-scoped for an agent configuration server. Each tool serves a clear purpose without redundancy, covering status discovery, host inspection, profile management, and configuration lifecycle actions.

Completeness5/5

The tool set supports the full configuration workflow: check readiness, inspect the host, retrieve/save/reset profiles, preview changes, apply changes, and validate results. No critical operations appear to be missing for the stated purpose.

Maintenance

ActivityMaintained
ResponsivenessNo issues

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
    A
    maintenance
    Enables management of Proxmox VE infrastructure via its REST API and execution of commands inside LXC containers via SSH, with built-in trust layers for planning, audit, undo, and diagnosis.
    7
    43
    Apache 2.0
  • A
    license
    Not graded
    quality
    C
    maintenance
    Enables secure SSH-based operations on Oracle Linux 8+ hosts through a curated, YAML-defined capability catalog, with typed parameters, two-phase confirmations for mutations, and full audit logging.
    Apache 2.0
  • A
    license
    Not graded
    quality
    B
    maintenance
    Enables MCP clients to list hosts, run commands, and orchestrate fleet automation over SSH, with per-host opt-in and approval-gated actions while keeping credentials secure.
    3
    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/LightDevCoder/agent-config'

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