Skip to main content
Glama

agent-config-bridge

An MCP server that moves your coding-agent setup between Claude Code, Codex CLI, Cursor and Gemini CLI: instruction files (CLAUDE.md, AGENTS.md, .cursor/rules/*.mdc, .cursorrules, GEMINI.md) and MCP server configs (mcpServers JSON ⇄ Codex config.toml ⇄ Gemini settings.json).

Runs locally over stdio. No network calls, no telemetry. It writes files only when you call migrate_project with write: true.

Prefer a web UI? Use the same converter in your browser at getaicodingagent.com.

Tools

Tool

What it does

convert_rules

Instruction text from one tool → files and paths for the others. Can also share one AGENTS.md through a symlink or an @AGENTS.md import

convert_mcp_config

MCP servers: Claude Code / Claude Desktop / Cursor JSON ⇄ Codex [mcp_servers.*] TOML ⇄ Gemini httpUrl/url

detect_agent_configs

Scans a project read-only for every agent config file and skills folder, and lists which tools have no config yet

migrate_project

Generates the missing configs from the existing ones. Dry run by default. Existing files are skipped unless overwrite: true; .gemini/settings.json is merged

compat_matrix

Where each tool reads its config, with official doc links and a verified date. Anything the official docs don't state is returned as unknown

Related MCP server: session-convert

Install

You need Node.js 18 or later and npm 10 or later (npm 9.2 fails to run GitHub packages through npx). The package is not on npm. Run it straight from GitHub (dist/ is committed, so there's no build step):

npx -y github:onehumanbeing/agent-config-bridge

Claude Code

claude mcp add agent-config-bridge -- npx -y github:onehumanbeing/agent-config-bridge

Codex CLI

codex mcp add agent-config-bridge -- npx -y github:onehumanbeing/agent-config-bridge

or add this to ~/.codex/config.toml:

[mcp_servers.agent-config-bridge]
command = "npx"
args = ["-y", "github:onehumanbeing/agent-config-bridge"]

Cursor: .cursor/mcp.json (project) or ~/.cursor/mcp.json (global). Gemini CLI: .gemini/settings.json or ~/.gemini/settings.json:

{ "mcpServers": { "agent-config-bridge": { "command": "npx", "args": ["-y", "github:onehumanbeing/agent-config-bridge"] } } }

MCPB bundle: download agent-config-bridge-0.1.0.mcpb from the v0.1.0 release and open it in an MCPB-compatible client (for example, double-click it to install in Claude Desktop). Dependencies are bundled.

From a clone

git clone https://github.com/onehumanbeing/agent-config-bridge && cd agent-config-bridge
claude mcp add agent-config-bridge -- node "$PWD/dist/index.js"

MCP Registry name: io.github.onehumanbeing/agent-config-bridge

Example prompts

  • "Detect the agent configs in this repo and migrate them to Codex and Cursor (dry run first)."

  • "Convert this Claude Desktop config to Codex TOML."

  • "Where does Gemini CLI read its MCP config? Use compat_matrix."

Develop

npm install && npm test   # builds, then runs unit tests plus an MCP client smoke test

MIT © onehumanbeing

Available Tools

5 tools
compat_matrixConfig compatibility matrixA
Read-only

Where Claude Code, Codex CLI, Cursor and Gemini CLI read instructions, MCP config and skills, with official doc links and the date each was verified. 'unknown' means not stated in the official docs.

NameRequiredDescriptionDefault

No parameters

TDQS

A3.8/5.0
Behavior4/5

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

Annotations already declare readOnlyHint=true, so safety is covered; the description adds genuinely useful data-quality context beyond that — that entries carry official doc links, a per-entry verification date, and that 'unknown' explicitly means the official docs are silent. This tells the agent how much to trust a given cell, which is the kind of disclosure annotations cannot carry.

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?

Two tight sentences with no filler, and the coverage list is front-loaded before the 'unknown' caveat. Minor deduction because it opens with a dependent clause ('Where ... read ...') instead of a subject, making the first read slightly less immediately scannable.

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 zero-parameter lookup with no output schema, the description does the necessary work: it enumerates the agents and config categories covered and hints at the record shape (doc link + verified date) plus the 'unknown' sentinel. A small gap remains around whether it returns a flat table vs. per-agent nesting, but nothing blocking 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?

The tool takes zero parameters, so the baseline is 4 and there is nothing for the description to disambiguate. It does not need to explain argument behavior at all.

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 names the exact resource — a cross-agent matrix of where Claude Code, Codex CLI, Cursor and Gemini CLI read instructions, MCP config and skills — which is concrete enough to distinguish it from convert_* and detect_agent_configs. It lacks an explicit verb ('Look up...'), so the agent must infer this is a read-only reference rather than an action.

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?

Usage is implied rather than stated: the content (doc links, verification dates) signals a static reference to consult before writing or converting config. Nothing says when to prefer this over sibling tools like detect_agent_configs (which presumably probes the local machine) or convert_mcp_config, leaving the agent to reason about the boundary itself.

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

convert_mcp_configConvert MCP server configA

Convert MCP server definitions between Claude Code/Claude Desktop/Cursor JSON (mcpServers), Gemini CLI settings.json (httpUrl/url) and Codex config.toml [mcp_servers.*]. Returns target files; writes nothing.

NameRequiredDescriptionDefault
textYesmcpServers JSON or Codex TOML
formatNoauto
targetsNo

TDQS

A4.2/5.0
Behavior4/5

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

With no annotations, the description carries the full burden and does supply the critical trait: 'Returns target files; writes nothing' — a genuine non-destructive guarantee an agent cannot infer from schema. It stops short of describing failure behavior for malformed input or how 'auto' detection resolves ambiguity.

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 filler; the conversion scope comes first and the non-writing guarantee is placed as a trailing, high-salience clause. Every phrase carries 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 3-parameter, no-output-schema tool the description covers input forms, output behavior, and target set — enough to invoke correctly. Gaps remain around the 'auto' format resolution and validation errors, but nothing essential 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 only 33% (only 'text' is documented), so the description must compensate — and it does, mapping 'mcpServers JSON or Codex TOML' to `text`/`format` and naming Claude Code/Desktop, Cursor, Gemini CLI, and Codex as the `targets` values. It does not explain the 'auto' enum value or the default-all-targets behavior, keeping it below 5.

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 ('Convert') and resource ('MCP server definitions') and enumerates the exact source/target format pairs (mcpServers JSON, Gemini httpUrl/url, Codex [mcp_servers.*]). An agent can tell this apart from convert_rules or migrate_project without opening a schema.

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 format-pair enumeration implies when the tool applies, and 'writes nothing' implicitly distinguishes it from a migration tool. However, there is no explicit when-to-use/when-not statement or named alternative among the siblings (convert_rules, detect_agent_configs, migrate_project).

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

convert_rulesConvert instruction filesA

Convert agent instructions (CLAUDE.md, AGENTS.md, .cursor/rules/*.mdc, .cursorrules, GEMINI.md) into the files Claude Code, Codex CLI, Cursor and Gemini CLI read. Returns file paths + contents and a shell command; writes nothing.

NameRequiredDescriptionDefault
linkNoShare one AGENTS.md: symlink CLAUDE.md -> AGENTS.md, or CLAUDE.md with @AGENTS.md importnone
textYesContents of the source instruction file
sourceNoSource tool/format (codex = AGENTS.md, cursor = .mdc rule)auto
targetsNo

TDQS

A4/5.0
Behavior4/5

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

With no annotations, the description carries the burden and does well: it discloses the return shape ('file paths + contents and a shell command') and, importantly, that it 'writes nothing' — a non-destructive, preview-style operation. It doesn't clarify whether the generated shell command is what actually performs the symlink/import side effect, which is the one residual ambiguity.

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 dense sentences, front-loaded with the conversion scope and closed with the output/write behavior. Every clause carries information; nothing is wasted.

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?

No output schema exists, and the description compensates by describing the return payload and the no-write guarantee. A reader can call it correctly; only the interaction between the link parameter and the returned shell command is left to inference.

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 75%, with descriptions on text, source, and link, and an enum that makes targets self-evident. The description adds nothing parameter-level (no explanation of when to pick link=symlink vs import, and no description for targets); baseline 3 is appropriate given the schema does the heavy lifting.

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 ('Convert') and resource ('agent instructions') and enumerates the concrete source file formats (CLAUDE.md, AGENTS.md, .mdc rules, .cursorrules, GEMINI.md) and target tools. This clearly separates it from convert_mcp_config (config, not instruction files) and from detect_agent_configs.

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?

Usage is only implied: the enumeration of source formats makes it obvious when the tool applies, but there is no explicit 'use this when / don't use this when' and no mention of the sibling tools (e.g. detect_agent_configs to find the files first). The 'writes nothing' clause hints at a dry-run workflow but doesn't state it as guidance.

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

detect_agent_configsDetect agent configs in a projectA
Read-only

Scan a project directory (read-only) for CLAUDE.md, AGENTS.md, GEMINI.md, .cursor/rules, .cursorrules, .mcp.json, .cursor/mcp.json, .gemini/settings.json, .codex/config.toml and skills folders.

NameRequiredDescriptionDefault
dirYesAbsolute path of the project root

TDQS

A3.5/5.0
Behavior3/5

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

The readOnlyHint annotation already declares the safe read-only behavior, and the description reinforces that while adding the scan scope. However, it does not disclose recursion behavior, handling of missing directories, symlink behavior, or whether all matches are returned, so the added behavioral context is limited.

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 definition is a single front-loaded sentence with no wasted words. The list of target files is dense but directly supports the tool's purpose.

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 one-parameter read-only detection tool, the description is sufficient to call the tool, but it does not explain the return shape or whether scanning is recursive. Since there is no output schema, return semantics remain ambiguous.

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 single parameter is documented as the absolute path of the project root. The description adds no parameter-level detail beyond the schema, so the baseline 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 names a specific verb, "Scan," and a specific resource, a project directory, plus enumerates the exact config files and folders it detects. An agent can distinguish this discovery operation from conversion, migration, and compatibility siblings.

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?

It states that the scan is read-only and what it looks for, but gives no explicit guidance on when to use it versus convert_rules, convert_mcp_config, migrate_project, or compat_matrix. It does not mention prerequisites, exclusions, or recommended sequencing such as scanning before migration.

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

migrate_projectMigrate a project's agent configA
Destructive

Generate target-tool config files from the project's existing instructions and MCP config. DRY RUN by default: returns the plan. Files are written only when write=true; existing files are skipped unless overwrite=true (Gemini settings.json is merged).

NameRequiredDescriptionDefault
dirYesAbsolute path of the project root
fromNoWhich tool's config to use as the sourceauto
linkNonone
writeNo
targetsYes
overwriteNo

TDQS

A4/5.0
Behavior5/5

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

Goes well beyond the destructiveHint annotation by disclosing that the default is a dry run returning a plan, that files are only touched when write=true, that existing files are skipped unless overwrite=true, and that Gemini settings.json is merged rather than replaced. That is exactly the behavioral context an agent needs before a potentially destructive call.

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, front-loaded with the action and immediately followed by the safety-critical default. Every clause carries information; nothing is padded.

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 destructive-by-annotation mutation tool with no output schema, the description covers the essential safety contract and the merge edge case. Remaining gaps are the unexplained link/source semantics and no signal about what the returned plan looks like.

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 only 33%, yet the description explains write and overwrite thoroughly and flags the merge exception. However, the 'link' parameter (none/symlink/import) and 'from' source selection get no explanation in either schema or description, leaving real gaps.

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?

States a specific verb and resource: generate target-tool config files from the project's existing instructions and MCP config. That is clearly a whole-project migration, distinct from the narrower feel of convert_rules or convert_mcp_config, but the description never names those siblings to confirm the boundary.

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?

Usage is implied by the dry-run-by-default framing (call it to preview a migration), but there is no explicit when-to-use-this-vs-alternatives guidance despite three plausible sibling tools. The write/overwrite conditions describe safe invocation rather than tool selection.

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.

  1. 5 tool updatesv0.1.0
    • First observedcompat_matrix
    • First observedconvert_mcp_config
    • First observedconvert_rules
    • First observeddetect_agent_configs
    • First observedmigrate_project

TDQS

A3.9/5.0

Scored across 5 tools

Disambiguation4/5

convert_rules and convert_mcp_config target clearly different artifacts (instruction files vs MCP server definitions), and detect_agent_configs is unambiguously read-only discovery. migrate_project partially overlaps with the two convert_* tools since it composes them into a write-capable plan, but its description makes the distinction (orchestration + optional writes) explicit.

Naming Consistency4/5

Four of five tools follow a verb_noun snake_case pattern (convert_rules, convert_mcp_config, detect_agent_configs, migrate_project). compat_matrix breaks the pattern as a noun phrase, but the convention is otherwise predictable and readable.

Tool Count5/5

Five tools is well-scoped for a config-bridge server: discovery, two artifact-specific conversions, an orchestration/write path, and a reference lookup. Each tool occupies a distinct role with no filler.

Completeness4/5

The surface covers discovery, conversion, migration and a reference matrix for instructions and MCP config across four agents, which is strong lifecycle coverage. Minor gap: skills are detected and documented in compat_matrix but there is no dedicated skills conversion/write path, leaving that artifact half-covered.

Maintenance

ActivityMaintained
ResponsivenessNo issues

Related MCP Connectors

Related MCP Servers

  • A
    license
    A
    quality
    B
    maintenance
    Enables conversion of coding agent sessions between Claude Code, Codex CLI, and OpenCode, including full support for OpenCode's SQLite storage.
    4
    1
    MIT
  • A
    license
    B
    quality
    C
    maintenance
    MCP server connecting Claude/Cursor to Codex CLI, enabling code analysis via @ file references, multi-turn conversations, sandboxed edits, and structured change mode.
    13
    81 npm
    24
    MIT