codex-agy-bridge
Click on "Install Server".
Wait a few minutes for the server to deploy. Once ready, it will show a "Started" state.
In the chat, type
@followed by the MCP server name and your instructions, e.g., "@codex-agy-bridgestart an agent run in /Users/me/myproject to fix bugs"
That's it! The server will respond to your query, and you can continue using it as needed.
Here is a step-by-step guide with screenshots.
codex-agy-bridge
Run Antigravity from an agent harness as durable, parallel, human-operable
agy sessions over MCP.
codex-agy-bridge wraps the official Antigravity CLI with a resumable MCP
control plane. Agent harnesses like Codex, Claude Desktop, or your own
GPT/Claude-powered MCP client can start agy runs, wait on sparse events,
attach a real terminal, send guarded input, cancel safely, continue exact
conversations, and collect final results later by run_id.
Quick Install
Prerequisites:
Codex CLI for the command below, or another local stdio MCP-capable harness
The official Antigravity CLI (
agy), already authenticated locallyuv/uvxtmuxon macOS:
brew install tmuxCheck the required commands:
codex --version
agy --version
agy models
uvx --version
tmux -VDay 0 Authentication
agy --version only proves the binary exists. Before adding the MCP server,
run agy models; if Antigravity asks you to sign in or reports that you are
not logged in, start a visible session and complete the browser/login flow:
agy --prompt-interactive "Authenticate Antigravity and then exit."
agy modelsAfter agy models succeeds, install or restart the MCP server. If a bridge run
still hits auth, agy_run_start returns status="auth_required" and opens a
visible agy authentication session by default. Complete sign-in there, then
start a fresh run. You can also use agy_run_observe(view="terminal") or
agy_admin(action="doctor") to inspect the auth-required status.
Install from PyPI with the Codex CLI:
codex mcp add codex-agy-bridge \
--env AGY_CMD="$(command -v agy)" \
-- "$(command -v uvx)" codex-agy-bridge@latestRestart the harness, then verify in Codex if you used the command above:
codex mcp get codex-agy-bridge
codex mcp listRemove it with:
codex mcp remove codex-agy-bridgeFor Claude Desktop or a custom MCP client, use the same stdio command shape:
uvx codex-agy-bridge@latest with AGY_CMD set to the authenticated agy
executable.
Related MCP server: agent-intern
What Makes It Different
Parallel Antigravity sessions: launch multiple independent
agyruns, each with its own durable state, logs, transcript projection, and result.Human-operable terminals: foreground runs live in persistent
tmuxsessions, so Terminal.app can attach without killing the agent.Resumable MCP control: MCP calls can time out, the harness can restart, and the run can still be observed later by
run_id.Goal orchestration: create a goal, start named targets with bounded parallelism, and inspect the whole batch as one coordinated effort.
Sparse wake events:
agy_run_waitshort-polls lifecycle, attention, progress, and terminal events without transcript-polling spam.Guarded input:
agy_run_inputcan reject stale writes when event or transcript cursors changed after the caller observed the run.Trajectory-aware observability: bounded transcript summaries and terminal evidence are exposed without private model reasoning.
Operational hygiene: duplicate active starts are deduplicated, process groups are cancelled safely, and completed result artifacts are preserved.
Install Details
If You Are An Agent Reading This
Help the user install it; do not silently mutate their machine.
Verify prerequisites first:
command -v codex
command -v agy
command -v uvx
command -v tmux
agy --version
agy modelsIf anything is missing, ask before installing it.
If
agy modelsreports an auth error, help the user complete the Day 0 authentication flow above before adding the MCP server.Then run:
codex mcp add codex-agy-bridge \
--env AGY_CMD="$(command -v agy)" \
-- "$(command -v uvx)" codex-agy-bridge@latestVerify:
codex mcp get codex-agy-bridge
codex mcp listTell the user to restart their agent harness so the new MCP tools load.
PyPI
The Quick Install command stores an stdio MCP server definition. When the agent
harness starts the server, uvx resolves codex-agy-bridge@latest from PyPI,
installs it into an isolated cached environment, and runs the
codex-agy-bridge console script. AGY_CMD pins the bridge to the user's
already-installed and authenticated agy executable.
Do not replace $ or $(...) manually in the command. In POSIX shells,
$(command -v agy) and $(command -v uvx) expand to absolute executable
paths.
GitHub
Use this when you want the repository version directly:
codex mcp add codex-agy-bridge \
--env AGY_CMD="$(command -v agy)" \
-- uvx --from git+https://github.com/varadfromeast/codex-agy-bridge \
codex-agy-bridgeLocal Development
git clone https://github.com/varadfromeast/codex-agy-bridge.git
cd codex-agy-bridge
uv sync --extra dev
codex mcp add codex-agy-bridge \
--env AGY_CMD="$(command -v agy)" \
-- uv --directory "$PWD" run codex-agy-bridgeHow It Works
flowchart LR
H["Agent harness<br/>(Codex, Claude, custom MCP client)"]
M["codex-agy-bridge<br/>MCP stdio server"]
S["Durable control plane<br/>runs, goals, events, results"]
W["Detached run supervisor"]
A["Antigravity CLI<br/>agy"]
T["Persistent tmux session<br/>human attach/input"]
L["Local Antigravity<br/>trajectory files"]
H <-->|"MCP tools"| M
M <--> S
S --> W
W --> A
W <--> T
A --> L
W -->|"bounded transcript projection"| S
T -->|"terminal logs and attention prompts"| SThe bridge keeps the MCP server responsive while detached supervisors own the
long-running agy processes. State and events are persisted locally, so a run
can continue after the original MCP call returns. For the deeper process model,
see docs/ARCHITECTURE.md. For the MCP control-loop
vision, see docs/MCP_VISION.md.
MCP Tools
Tool | Purpose |
| Start, continue, or open an interactive foreground run |
| Short-poll until selected runs emit sparse wake events |
| Read full, status, transcript, or raw terminal views |
| Send input with optional event/transcript preconditions |
| Cancel one active run |
| Read final result metadata or bounded result chunks |
| Create goals, start targets, and read aggregate status |
| Read diagnostics, models, plugins, validation, and changelog |
Typical flow:
agy_run_start -> agy_run_wait -> agy_run_observe -> agy_run_resultIn Codex MCP, tools may be exposed with the server prefix, for example
codex_agy_bridge_agy_run_wait. Run responses include exact wait_call
arguments; note that agy_run_wait always takes run_ids: ["..."], even for a
single run. Supported wait conditions are any_attention, any_terminal,
all_terminal, any_event, and aliases attention, terminal, finished,
finish, complete, completed, result, all_finished, all_complete, and
all_completed.
Use agy_goal when the harness should split work into named targets with a
shared objective and bounded parallelism.
Configuration
Variable | Default | Purpose |
|
| Exact Antigravity executable |
|
| Durable run and goal state |
|
| Antigravity conversations and trajectories |
|
| Global concurrent-run limit |
|
| Time a final marker must remain stable |
|
| Max seconds a single |
Run state survives MCP server restarts under
~/.local/state/codex-agy-bridge/.
Status And Risk
This project is experimental. It currently targets Python 3.11+, macOS,
tmux, and Antigravity CLI 1.0.8-compatible commands and trajectory files.
Antigravity is an agentic CLI. It can read and write files, execute commands, and access the network with the current user's privileges. This bridge is not a sandbox or security boundary.
The bridge always enables Antigravity's dangerous permission-skip policy so
unattended runs do not stall on CLI approval prompts. Any
dangerously_skip_permissions=false input is rejected; the only allowed value
is true. sandbox=true and additional_directories are CLI policy hints,
not filesystem containment.
The bridge does not read or copy Antigravity OAuth credentials. It invokes the
installed agy binary and reads ordinary local conversation metadata and
trajectory files.
Development
git clone https://github.com/varadfromeast/codex-agy-bridge.git
cd codex-agy-bridge
uv sync --extra dev
uv run pytest
uv run ruff check .
uv buildRun the server directly:
uv run codex-agy-bridgeThe server uses stdio transport. Do not print diagnostic text to stdout; it would corrupt MCP framing.
Publishing
A pushed version tag runs .github/workflows/publish.yml, which verifies
versions, runs checks, builds distributions, publishes to PyPI through GitHub
OIDC, creates a GitHub release, and publishes server.json to the MCP
Registry.
Compatibility
The current reader expects Antigravity trajectory JSONL under:
~/.gemini/antigravity-cli/brain/<conversation-id>/
.system_generated/logs/transcript.jsonlIf Antigravity moves to SQLite or a local daemon API, a new adapter can replace this reader without changing the MCP tool contract.
License
Available Tools
13 toolsagy_adminC
Run bounded diagnostics and metadata actions for the bridge and agy CLI.
| Name | Required | Description | Default |
|---|---|---|---|
| path | No | ||
| action | Yes | ||
| run_id | No | ||
| refresh | No | ||
| workspace | No |
Output Schema
| Name | Required | Description |
|---|---|---|
No output parameters | ||
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
No annotations are provided, and the description fails to disclose behavioral traits such as whether actions are destructive, require authentication, or have side effects on the system. For an admin tool, this lack of transparency is a significant gap.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
The description is a single sentence, making it concise but lacking structure. It front-loades the core purpose but omits any breakdown of actions, parameters, or usage examples, which would improve usability.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
Given the tool's complexity (5 parameters, no schema descriptions, no annotations, output schema exists but not described), the description is far too minimal. It does not cover essential aspects like available actions, parameter roles, or return value, leaving the agent underinformed.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
The input schema has 0% description coverage, and the description does not explain any of the five parameters (action, run_id, refresh, path, workspace). The agent gets no additional meaning beyond the parameter names and types.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description clearly states the tool is for running diagnostics and metadata actions on the bridge and agy CLI, which distinguishes it from sibling tools focused on other operations like goals, login, and review. However, 'bounded diagnostics' is somewhat vague, preventing a 5.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
No explicit guidance on when to use this tool versus alternatives like agy_run_start or agy_review_commit. The description only notes the scope (bridge and agy CLI), leaving the agent to infer usage context without clear exclusion criteria.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
agy_goalC
Manage bridge scheduler goals with actions create, start_target, status.
dangerously_skip_permissions must be true when supplied.
| Name | Required | Description | Default |
|---|---|---|---|
| model | No | Gemini 3.5 Flash (Medium) | |
| action | Yes | ||
| prompt | No | ||
| goal_id | No | ||
| sandbox | No | ||
| objective | No | ||
| workspace | No | ||
| target_name | No | ||
| max_parallel | No | ||
| timeout_seconds | No | ||
| additional_directories | No | ||
| dangerously_skip_permissions | No |
Output Schema
| Name | Required | Description |
|---|---|---|
No output parameters | ||
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
With no annotations, the description carries full burden. It reveals that 'dangerously_skip_permissions must be true when supplied' but doesn't disclose side effects, destructive potential, or behavior of each action. The term 'Manage' is vague.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
Very short (2 sentences), but the first sentence is functional and the second provides a constraint. However, it sacrifices necessary detail for brevity, making it insufficiently informative.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
Given 12 parameters and no parameter descriptions, the description is incomplete. It does not cover return values, per-action behavior, or default behaviors beyond the dangerous_permissions note.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Schema description coverage is 0%, and the description adds no meaning to the 12 parameters except a note about one parameter. It fails to explain what each parameter does or how they relate to the actions.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
States it manages bridge scheduler goals and lists specific actions (create, start_target, status), which clearly identifies the tool's purpose and distinguishes it from sibling tools like agy_run_start and agy_review_branch.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
No guidance on when to use this tool versus alternatives. The only usage hint is about 'dangerously_skip_permissions', but it doesn't explain when to choose agy_goal over agy_run_* or agy_review_* tools.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
agy_loginC
Refresh Antigravity auth state and optionally open one login session.
| Name | Required | Description | Default |
|---|---|---|---|
| refresh | No | ||
| force_new | No | ||
| workspace | No | ||
| open_terminal | No |
Output Schema
| Name | Required | Description |
|---|---|---|
No output parameters | ||
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
With no annotations, the description must disclose behavior. It only mentions refresh and opening a login session without explaining side effects, prerequisites, or whether it's interactive.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
The description is a single concise sentence, but it lacks sufficient detail. While front-loaded, it sacrifices completeness for brevity.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
Given the tool has 4 optional parameters, no schema descriptions, and no annotations, the one-line description is grossly inadequate for an agent to use it correctly.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Schema description coverage is 0%, and the description does not explain any of the four parameters. The parameter names give hints, but the tool definition adds no explicit meaning.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description clearly states the tool refreshes auth state and optionally opens a login session, using specific verbs and resources. It distinguishes from sibling tools which focus on reviews, runs, and admin tasks.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
No guidance is provided on when to use this tool versus alternatives, such as when a login session is needed or how it relates to other auth-related tools.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
agy_review_branchA
Start a typed review Run for branch and working-tree changes.
Keep issue focused and use narrow scope_paths when possible. Wait for completion with agy_run_wait, then prefer agy_review_result. Avoid frequent agy_run_observe(include_terminal_tail=True) calls unless debugging the bridge.
| Name | Required | Description | Default |
|---|---|---|---|
| issue | Yes | ||
| model | No | Gemini 3.5 Flash (Medium) | |
| sandbox | No | ||
| base_ref | No | ||
| workspace | Yes | ||
| output_file | No | ||
| scope_paths | No | ||
| conversation_id | No | ||
| timeout_seconds | No | ||
| include_untracked | No | ||
| additional_directories | No | ||
| dangerously_skip_permissions | No |
Output Schema
| Name | Required | Description |
|---|---|---|
No output parameters | ||
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
No annotations are provided, so the description must convey behavioral traits. It implies the tool is asynchronous by advising to wait for completion, and suggests not polling excessively. However, it does not explicitly state whether the tool is read-only or destructive, missing an opportunity to add transparency.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
The description is concise: a single clear sentence for purpose followed by three instructional sentences. It is well-structured and front-loaded, though a more organized format could improve readability.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
Given the tool's complexity (12 parameters, async, multiple siblings), the description lacks completeness. It provides workflow guidance but omits parameter explanations and does not clarify the meaning of 'typed review Run.' With an output schema present, return values are covered, but parameter semantics are entirely missing.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Schema description coverage is 0%, meaning no parameter descriptions in the input schema. The description does not explain any of the 12 parameters, including the required 'issue' and 'workspace,' nor does it define 'scope_paths' despite mentioning it. With low coverage, the description should compensate, but it fails to do so.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description clearly states 'Start a typed review Run for branch and working-tree changes,' specifying the verb (start), resource (review run), and context (branch and working-tree changes). This effectively distinguishes it from sibling tools like agy_review_commit and agy_review_result.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
The description provides explicit guidance: 'Keep issue focused and use narrow scope_paths when possible,' and outlines the workflow: 'Wait for completion with agy_run_wait, then prefer agy_review_result.' It also advises against frequent agy_run_observe calls, offering clear when-to-use and alternatives.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
agy_review_commitA
Start a typed review Run for one commit and return immediately.
Keep issue focused and use narrow scope_paths when possible. After the run completes, prefer agy_review_result over manually polling raw artifacts.
| Name | Required | Description | Default |
|---|---|---|---|
| issue | Yes | ||
| model | No | Gemini 3.5 Flash (Medium) | |
| commit | Yes | ||
| sandbox | No | ||
| workspace | Yes | ||
| output_file | No | ||
| scope_paths | No | ||
| conversation_id | No | ||
| timeout_seconds | No | ||
| additional_directories | No | ||
| dangerously_skip_permissions | No |
Output Schema
| Name | Required | Description |
|---|---|---|
No output parameters | ||
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
No annotations exist, so description carries the burden. It discloses async behavior ('return immediately') and hints at no manual polling, but omits side effects (e.g., file creation) or authorization needs. Adequate but not thorough.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
Three sentences, each with a distinct purpose: action, guidance, post-run instruction. No redundancy, tightly packed with useful information.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
Despite an output schema (context signal), the description fails to address the complexity of 11 parameters. Missing prerequisites, return behavior beyond 'return immediately', and relationship to siblings like agy_login for auth. Incomplete for effective use.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Schema coverage is 0% and the description explains none of the 11 parameters. Only 'scope_paths' is hinted at. With zero parameter elaboration, the agent cannot understand inputs beyond names.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description clearly states the action: 'Start a typed review Run for one commit and return immediately.' It specifies the resource (review run for a commit) and distinguishes from siblings like agy_review_branch (branch) and agy_review_result (result retrieval).
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
Explicit guidance: 'Keep issue focused and use narrow scope_paths when possible' advises on tool usage; 'prefer agy_review_result over manually polling raw artifacts' directs to a sibling for downstream actions. Clear when-to-use and what-not-to-do.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
agy_review_resultB
Validate and summarize the artifact from a typed review Run.
Preferred way to consume completed agy_review_commit/agy_review_branch runs.
| Name | Required | Description | Default |
|---|---|---|---|
| run_id | Yes |
Output Schema
| Name | Required | Description |
|---|---|---|
No output parameters | ||
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
No annotations are provided, so the description should disclose behavioral traits. It mentions 'Validate and summarize,' which indicates read-like operations, but it doesn't clarify if the tool is idempotent, requires specific permissions, or what happens on invalid input. The output schema exists but doesn't cover behavior beyond return values.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
The description is two sentences long and front-loads purpose. It is concise and avoids extraneous information, though it could include more behavioral details without losing conciseness.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
Given the output schema exists, return values are covered elsewhere. The description states what the tool does and when to use it, but lacks details on prerequisites, safety, and error handling. For a tool with one parameter and no annotations, it is minimally complete but has gaps.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
With 0% schema description coverage, the description must add meaning for the single parameter 'run_id.' However, the description does not explain how to obtain the run_id, its format, or any constraints beyond the schema's type and requirement. No additional semantic value is provided.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description clearly states the tool validates and summarizes an artifact from a typed review run. It differentiates from siblings like agy_run_result by specifying it's for 'typed review Run' and mentions agy_review_commit/agy_review_branch as preferred inputs.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
The description explicitly says it is the 'Preferred way to consume completed agy_review_commit/agy_review_branch runs,' providing clear context on when to use this tool. It implies not to use for other run types, though it doesn't explicitly state alternatives.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
agy_run_cancelC
Cancel one active Run and terminate its Antigravity process group.
| Name | Required | Description | Default |
|---|---|---|---|
| run_id | Yes |
Output Schema
| Name | Required | Description |
|---|---|---|
No output parameters | ||
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
No annotations provided. The description indicates a destructive action (cancel, terminate) but lacks details on permissions, reversibility, side effects, or what happens to the process group.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
A single concise sentence, but it omits necessary details about usage and behavior. More information could be added without losing conciseness.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
For a simple tool with one parameter and no nested objects, the description is incomplete: it lacks explanation of the parameter, expected state of the run (must be active), and the nature of the response despite an output schema existing.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Only one parameter (run_id) with 0% schema description coverage. The description does not explain what run_id is, its format, or how to obtain it, relying solely on the parameter name.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description clearly states the tool cancels an active Run and terminates its Antigravity process group, using specific verb and resource. It distinguishes from siblings like agy_run_start or agy_run_wait.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
No guidance on when to use cancel versus other run operations (e.g., agy_run_wait, agy_run_observe). No prerequisites or conditions mentioned.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
agy_run_inputB
Send input to a live foreground Run with optional stale-write guards.
| Name | Required | Description | Default |
|---|---|---|---|
| text | Yes | ||
| enter | No | ||
| run_id | Yes | ||
| expected_event_key | No | ||
| expected_transcript_step | No |
Output Schema
| Name | Required | Description |
|---|---|---|
No output parameters | ||
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
With no annotations provided, the description carries the burden of disclosing behavior. It mentions 'stale-write guards' but does not explain what they do when triggered (e.g., error handling, idempotency). No mention of side effects or prerequisites like authentication.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
The description is a single, well-structured sentence that front-loads the main action and key feature. No wasted words.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
Despite an output schema existing, the tool has 5 parameters with 0% schema coverage in the description. The description omits details about parameter types, constraints, and the stale-write guard mechanism, making it incomplete for an agent to use correctly without additional knowledge.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Schema description coverage is 0%, so the description must compensate. It only mentions the core action and 'stale-write guards' vaguely. Parameters like expected_event_key and expected_transcript_step are not explained, leaving ambiguity about their purpose and format.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description clearly states the action ('Send input'), the target resource ('a live foreground Run'), and a specific feature ('optional stale-write guards'). It distinguishes from sibling tools like agy_run_cancel or agy_run_observe by focusing on input delivery.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
The phrase 'live foreground Run' implies it should be used only when a run is active, but there is no explicit guidance on when to use this tool versus alternatives like agy_run_start or agy_run_result. The description lacks explicit when-to-use and when-not-to-use instructions.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
agy_run_observeA
Inspect Run state through one lean observation surface.
view="full" returns merged observable state for all run_ids. view="status", "transcript", or "terminal" requires exactly one run_id and returns the corresponding focused view.
| Name | Required | Description | Default |
|---|---|---|---|
| view | No | full | |
| after | No | ||
| limit | No | ||
| compact | No | ||
| run_ids | Yes | ||
| max_chars | No | ||
| after_step | No | ||
| include_content | No | ||
| timeout_seconds | No | ||
| max_content_chars | No | ||
| include_terminal_tail | No |
Output Schema
| Name | Required | Description |
|---|---|---|
No output parameters | ||
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
With no annotations, the description bears full burden. It implies read-only through 'inspect' and 'observation', but does not explicitly state non-destructiveness or any side effects. Adequate but not thorough.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
Three sentences, front-loaded with purpose, then parameter details. No redundancy or fluff. Highly efficient.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
Despite having an output schema, the description lacks coverage for most parameters (9 out of 11). The tool is complex with many configuration options, but only the view parameter is well explained. Incomplete guidance for effective use.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Schema description coverage is 0%, so description must compensate. It explains 'run_ids' cardinality and all 'view' values, but leaves 9 other parameters (like 'after', 'limit', 'compact') completely unexplained. Only 2 of 11 parameters are addressed.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description clearly states it is for inspecting run state, with specific view options. It distinguishes from sibling tools that perform actions like cancel, start, or wait, by focusing on observation.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
The description provides clear guidance on when to use different views: 'full' for multiple run_ids, others for exactly one. However, it does not explicitly compare to sibling tools or state when to choose this over them.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
agy_run_resultB
Read final result metadata, or a bounded chunk when offset_bytes is set.
| Name | Required | Description | Default |
|---|---|---|---|
| run_id | Yes | ||
| max_bytes | No | ||
| offset_bytes | No |
Output Schema
| Name | Required | Description |
|---|---|---|
No output parameters | ||
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
With no annotations, the description must carry the burden. It discloses the main behavioral trait: offset_bytes enables bounded chunk reading. However, it does not state whether the operation is idempotent, what happens if the run is incomplete, or any rate limits or size constraints.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
The description is a single, well-structured sentence that is front-loaded with the core purpose. Every word is necessary; there is no redundancy or verbosity.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
Given the presence of an output schema (no need to explain return values), the description adequately covers the two operation modes. However, it lacks lifecycle context (e.g., that it should only be called after a run completes) and does not mention the relationship to other run-related tools.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Schema description coverage is 0%, so the description should explain parameters. It only mentions offset_bytes's role (bounded chunk) but does not clarify run_id (required identifier) or max_bytes (default chunk size). The description adds limited value beyond the schema structure.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description clearly states the tool reads final result metadata and distinguishes two modes: full read or chunked read when offset_bytes is set. The verb 'Read' and resource 'final result metadata' are specific, and it differentiates from sibling tools like agy_run_input or agy_run_observe.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
The description provides no explicit guidance on when to use this tool versus alternatives. It does not mention prerequisites (e.g., that the run must be completed), nor does it contrast with similar siblings like agy_run_observe or agy_review_result.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
agy_run_startA
Start or continue one foreground Antigravity Run.
mode="task" starts a normal bridge-owned task. mode="interactive" starts a persistent conversation session that should be used sparingly. Supplying conversation_id continues that exact Antigravity conversation. dangerously_skip_permissions must be true; the bridge always forwards --dangerously-skip-permissions to Antigravity.
| Name | Required | Description | Default |
|---|---|---|---|
| mode | No | task | |
| model | No | Gemini 3.5 Flash (Medium) | |
| prompt | Yes | ||
| sandbox | No | ||
| workspace | Yes | ||
| conversation_id | No | ||
| timeout_seconds | No | ||
| additional_directories | No | ||
| dangerously_skip_permissions | No |
Output Schema
| Name | Required | Description |
|---|---|---|
No output parameters | ||
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
No annotations are provided, so the description bears full responsibility for behavioral disclosure. It reveals that the tool runs in the foreground, supports two modes, and requires dangerously_skip_permissions. However, it lacks details on side effects, resource creation, blocking behavior, or what happens after invocation (e.g., whether it returns immediately or waits).
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
The description is a single paragraph with three sentences, no wasted words. It front-loads the main purpose and then details key parameters. It is concise but could benefit from bullet points or clearer separation of mode behavior.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
Given the tool has 9 parameters (2 required), no schema descriptions, and an output schema, the description is not fully complete. It covers key concepts but omits important context like whether the run is synchronous, how to handle timeouts, and the meaning of optional parameters like sandbox. The output schema exists but the description does not hint at the return shape.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
The input schema has 0% description coverage, so the description must compensate. It explains 'mode', 'conversation_id', and 'dangerously_skip_permissions' but leaves 'prompt', 'workspace', 'timeout_seconds', 'model', 'sandbox', and 'additional_directories' unexplained. This partial coverage is adequate but incomplete.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description clearly states the tool starts or continues a foreground Antigravity Run, with verbs 'start' and 'continue'. It distinguishes between modes ('task' vs. 'interactive') and mentions continuing via conversation_id. The purpose is unambiguous and distinguishable from sibling tools like agy_run_cancel or agy_run_wait.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
The description provides specific guidance on when to use each mode: 'task' for normal tasks and 'interactive' for persistent conversations 'sparingly'. It also notes that dangerously_skip_permissions must be true. However, it does not explicitly state when not to use this tool versus other run-related siblings.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
agy_run_waitB
Wait for sparse Run events instead of repeatedly polling status.
run_ids is always a list, even for one Run. Supported condition values: any_attention, any_terminal, all_terminal, any_event, plus aliases attention, terminal, finished, finish, complete, completed, result, all_finished, all_complete, and all_completed.
| Name | Required | Description | Default |
|---|---|---|---|
| after | No | ||
| run_ids | Yes | ||
| condition | No | any_attention | |
| timeout_seconds | No |
Output Schema
| Name | Required | Description |
|---|---|---|
No output parameters | ||
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
No annotations are provided, so the description must fully disclose behavior. It mentions event waiting and condition values but does not explain blocking behavior, timeout handling, error scenarios, or whether it is destructive. This is insufficient for a waiting tool.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
The description is concise: two sentences. The first sentence clearly states the purpose, and the second provides key details about run_ids and conditions. No unnecessary text, though more structure could improve readability.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
Given the output schema exists, the description does not need to detail return values. However, it lacks sufficient context to fully differentiate from siblings like agy_run_observe or agy_run_result. The condition aliases are helpful but overall completeness is moderate.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Schema coverage is 0%, so the description must compensate. It explains run_ids (always a list) and lists condition values, but does not describe the 'after' parameter or timeout_seconds beyond default. Only partial parameter guidance is provided.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description clearly states the tool's purpose: 'Wait for sparse Run events instead of repeatedly polling status.' It differentiates from polling tools and siblings like agy_run_cancel or agy_run_result by focusing on event-driven waiting.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
The description suggests using this tool to avoid polling but does not provide explicit when-to-use or when-not-to-use guidance. It lists condition aliases, which helps, but no mention of alternatives like agy_run_observe.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
agy_start_with_expected_fileC
Start one task Run that cannot complete until expected_file is non-empty.
| Name | Required | Description | Default |
|---|---|---|---|
| model | No | Gemini 3.5 Flash (Medium) | |
| prompt | Yes | ||
| sandbox | No | ||
| workspace | Yes | ||
| expected_file | Yes | ||
| conversation_id | No | ||
| timeout_seconds | No | ||
| additional_directories | No | ||
| dangerously_skip_permissions | No |
Output Schema
| Name | Required | Description |
|---|---|---|
No output parameters | ||
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
Description reveals one key behavior (waits for file non-empty) but lacks details on async behavior, return, side effects, or permissions. With no annotations, this is insufficient.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
Single sentence, no wasted words, front-loaded with action and condition. Highly concise.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
Lacks explanation of return values (output schema exists but not described), prerequisites, or behaviors beyond the file condition. Inadequate for a multi-parameter tool.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Schema coverage is 0% and description adds no meaning to any of the 9 parameters. Agent must infer from parameter names only.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
Description clearly states the tool starts a run that blocks until a file is non-empty. The verb 'start' and resource 'run' are specific, and the condition distinguishes it from sibling tools like agy_run_start, though not explicitly.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
No guidance on when to use this tool versus alternatives such as agy_run_start or agy_goal. The description only defines behavior, not usage context.
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 tool update
v0.1.7- Changed
agy_run_wait1 field changed- added
Input schema / properties / condition / enumAdded value: +[ + "any_event", + "any_attention", + "any_terminal", + "all_terminal", + "event", + "attention", + "terminal", + "finished", + "finish", + "complete", + "completed", + "result", + "all_finished", + "all_complete", + "all_completed" +]
30 tool updates
v0.1.6- Added
agy_admin - Removed
agy_cancel - Removed
agy_changelog - Removed
agy_continue - Removed
agy_doctor - Added
agy_goal - Removed
agy_goal_create - Removed
agy_goal_status - Removed
agy_goal_target_start - Removed
agy_interactive_start - Added
agy_login - Removed
agy_models - Removed
agy_plugin_validate - Removed
agy_plugins - Removed
agy_result - Added
agy_review_branch - Added
agy_review_commit - Added
agy_review_result - Added
agy_run_cancel - Added
agy_run_input - Added
agy_run_observe - Added
agy_run_result - Added
agy_run_start - Added
agy_run_wait - Removed
agy_start - Added
agy_start_with_expected_file - Removed
agy_status - Removed
agy_target_open_terminal - Removed
agy_target_send_text - Removed
agy_transcript
11 tool updates
v0.1.2- Added
agy_changelog - Changed
agy_continue3 fields changed- added
Input schema / properties / additional_directoriesAdded value: +{ + "anyOf": [ + { + "items": { + "type": "string" + }, + "type": "array" + }, + { + "type": "null" + } + ], + "default": null, + "title": "Additional Directories" +} - added
Input schema / properties / sandboxAdded value: +{ + "default": false, + "title": "Sandbox", + "type": "boolean" +} - removed
Input schema / properties / visible_terminalRemoved value: -{ - "default": true, - "title": "Visible Terminal", - "type": "boolean" -}
- Added
agy_doctor - Changed
agy_goal_create3 fields changed- added
Input schema / properties / additional_directoriesAdded value: +{ + "anyOf": [ + { + "items": { + "type": "string" + }, + "type": "array" + }, + { + "type": "null" + } + ], + "default": null, + "title": "Additional Directories" +} - added
Input schema / properties / dangerously_skip_permissionsAdded value: +{ + "default": true, + "title": "Dangerously Skip Permissions", + "type": "boolean" +} - added
Input schema / properties / sandboxAdded value: +{ + "default": false, + "title": "Sandbox", + "type": "boolean" +}
- Changed
agy_goal_target_start6 fields changed- added
Input schema / properties / additional_directoriesAdded value: +{ + "anyOf": [ + { + "items": { + "type": "string" + }, + "type": "array" + }, + { + "type": "null" + } + ], + "default": null, + "title": "Additional Directories" +} - added
Input schema / properties / dangerously_skip_permissions / anyOfAdded value: +[ + { + "type": "boolean" + }, + { + "type": "null" + } +] - changed
Input schema / properties / dangerously_skip_permissions / defaultPrevious value: -trueNew value: +null - removed
Input schema / properties / dangerously_skip_permissions / typeRemoved value: -"boolean" - added
Input schema / properties / sandboxAdded value: +{ + "anyOf": [ + { + "type": "boolean" + }, + { + "type": "null" + } + ], + "default": null, + "title": "Sandbox" +} - removed
Input schema / properties / visible_terminalRemoved value: -{ - "default": true, - "title": "Visible Terminal", - "type": "boolean" -}
- Added
agy_interactive_start - Added
agy_models - Added
agy_plugin_validate - Added
agy_plugins - Changed
agy_start3 fields changed- added
Input schema / properties / additional_directoriesAdded value: +{ + "anyOf": [ + { + "items": { + "type": "string" + }, + "type": "array" + }, + { + "type": "null" + } + ], + "default": null, + "title": "Additional Directories" +} - added
Input schema / properties / sandboxAdded value: +{ + "default": false, + "title": "Sandbox", + "type": "boolean" +} - removed
Input schema / properties / visible_terminalRemoved value: -{ - "default": true, - "title": "Visible Terminal", - "type": "boolean" -}
- Added
agy_target_send_text
10 tool updates
v0.1.0- First observed
agy_cancel - First observed
agy_continue - First observed
agy_goal_create - First observed
agy_goal_status - First observed
agy_goal_target_start - First observed
agy_result - First observed
agy_start - First observed
agy_status - First observed
agy_target_open_terminal - First observed
agy_transcript
TDQS
Each tool targets a distinct operation or resource: admin actions, authentication, reviews on branches and commits, and run lifecycle management. Overlaps (e.g., review_branch vs review_commit) are clearly scoped.
All tools share the prefix 'agy_' , and most follow a noun_verb pattern (e.g., agy_review_branch, agy_run_start). However, agy_start_with_expected_file breaks the pattern, and there is slight inconsistency between agy_review_commit and agy_start_ variants.
13 tools cover the core domains (runs, reviews, goals, admin, login) without being overwhelming. Each tool serves a distinct purpose, and the count feels well-scoped for the bridge's functionality.
The run and review lifecycle is well-covered, but goal management lacks update/delete operations and listing tools. Additionally, there is no tool to list existing runs or reviews, which may force agents to rely on observe or wait with limited context.
Maintenance
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
A paid remote MCP for OpenAI Codex agent coordination MCP, built to return verdicts, receipts, usage
Nifty's MCP server — exposes tasks, projects, messages, and files as tools for AI agents.
- DazbenchOAuthapp.dazbench
Task management your AI agents can actually run. One line becomes a context-ready task over MCP.
Your org's AI agents, tasks, runs, search, and brain files as MCP tools and resources.
Related MCP Servers
- AlicenseBqualityAmaintenanceA lightweight MCP bridge that lets Claude Code delegate heavy tasks to the Antigravity CLI - saving context window and tokens for what matters.112MIT
- AlicenseAqualityAmaintenanceAn MCP server that bridges Claude Code with Antigravity CLI using a Swarm Agent architecture to optimize local development workflows and minimize LLM token costs. Includes a web UI for monitoring agent workflows.2122MIT
- AlicenseAqualityBmaintenanceLocal MCP server that exposes delegation tools for Codex, Claude, and Antigravity CLI, enabling an orchestrator agent to assign tasks to these sub-agents via non-interactive CLI commands.3MIT
- AlicenseAqualityBmaintenanceA project-local MCP bridge that allows Codex Desktop to plan tasks and OpenCode to execute them within the current project directory, with session reuse and native OpenCode background subagents.41MIT
Latest Blog Posts
- Who's Calling? MCP Hosts Are an Identity Blind Spot (And the Spec Knows It)By Om-Shree-0709 on .mcpAgent IdentityOAuth 2.1
- Your AI Chatbot Just Exposed Your CEO's Salary to an InternBy Om-Shree-0709 on .Agent IdentityMCP SecurityOAuth Delegation
- Why MCP Servers Need Execution Sandboxing (And Why Your Current Stack Isn't Enough)By Om-Shree-0709 on .Agentic AiPrompt InjectionWebAssembly
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/varadfromeast/codex-agy-bridge'
If you have feedback or need assistance with the MCP directory API, please join our Discord server