chatgpt-web-agent
chatgpt-web-agent
ChatGPT Web版がOpenAI Secure MCP Tunnelを通じてローカルツールを使用するためのローカルMCPグルー層。
これは実行可能なリファレンス実装であり、ワンクリックでインストールできる完成品を目指すものではありません。主に実際に検証済みの接続アプローチを共有するためのもので、利用者はエージェントを利用して自身のローカル環境に素早く適応できます。
プロジェクト自身のMCPインターフェースは安定しており、実際のツールは交換可能なLocalToolBackendによって提供されます。最初のバックエンドはOpenClaw Plugin SDKを直接再利用し、OpenClawのソースコードを変更せず、ファイル、シェル、パッチ、バックグラウンドプロセスツールを再実装しません。
現在のステータス
P0は4つのOpenClawツールを提供します:
readexecprocessapply_patch
オプションでGoogle Driveファイル交換ツールを有効化:
drive_listdrive_searchdrive_statdrive_uploaddrive_downloaddrive_exportdrive_mkdir
デフォルトで2つの読み取り専用OpenClaw Skillsツールを有効化:
skills_list(query?, limit?)skill_read(name)
skills_list()は現在のeligible + model-visible Skillのコンパクトな名前ディレクトリを返します。自然言語のqueryがある場合は、独立したQMDコレクションを介して少数の候補名と説明を返します。skill_readはSkill名/キーのみを受け付け、正規のSKILL.mdパスは常にリアルタイムのOpenClaw skills.statusによって解決され、クライアント提供のファイルパスは受け付けません。MCP initialize instructionsでは、クライアントに対して、タスクが明らかにローカルツール、サービス、ワークフロー、または操作規範に依存する可能性が高く、現在のコンテキストが不足している場合にのみ能動的にSkillを発見するよう促します。通常の自己完結型タスクではSkillを照会しません。
デフォルトでは、ファイルツールとパッチツールは設定されたworkspaceにのみアクセスを許可します。exec.workdirもworkspace内に存在する必要があります。OpenClaw内部のhost/security/ask/node/elevatedパラメータはMCPクライアントに公開されません。
信頼できるChatGPT workspaceにのみ認可された独立したConnectorの場合、CHATGPT_WEB_AGENT_WORKSPACE_ONLY=falseを設定できます。この場合、workspaceは相対パスとデフォルトcwdの基点となり、read/apply_patch/exec.workdirは外部の絶対パスにアクセスできます。このモードはセキュリティサンドボックスではありません。
exec.workdirの境界はコマンドサンドボックスではありません。exec権限を得たクライアントは、コマンドテキスト内でシステムの他の場所にアクセスする可能性があります。Tunnelは信頼できるChatGPT workspaceにのみ認可し、必要に応じてOpenClawのallowlist/approvalポリシーを使用してください。
Related MCP server: agent-mcp-gateway
開発
Node.js 22.22.3または互換性のあるOpenClaw Nodeバージョン、およびpnpmが必要です。
pnpm install
pnpm check
pnpm smoke実行
export CHATGPT_WEB_AGENT_WORKSPACE=/path/to/workspace
# 可信独立 Connector 如需把 workspace 仅作为默认工作目录:
# export CHATGPT_WEB_AGENT_WORKSPACE_ONLY=false
pnpm build
node dist/cli.jsサービスはMCP stdioを使用し、標準出力はMCPプロトコルのみを伝送します。
設定
.env.exampleをコピーして利用可能な環境変数を確認してください。デフォルトのツールホワイトリストは以下の通りです:
read,exec,process,apply_patchexecはデフォルトでallowlist + on-missを使用します。明示的に上書きできます:
export CHATGPT_WEB_AGENT_EXEC_SECURITY=allowlist
export CHATGPT_WEB_AGENT_EXEC_ASK=on-missローカルで信頼された初回smokeテストを行う場合、一時的に次のように使用できます:
export CHATGPT_WEB_AGENT_EXEC_SECURITY=full
export CHATGPT_WEB_AGENT_EXEC_ASK=offアーキテクチャ
ChatGPT Web
→ OpenAI Secure MCP Tunnel
→ chatgpt-web-agent MCP Server
→ LocalToolBackend
→ OpenClawBackend
→ SkillsBackend → OpenClaw Gateway (live status)
→ QMD MCP (optional semantic discovery)
→ NativeBackend / other backend(后续按需)Skills backendはcapability discovery/readのみを行います。QMDは候補検索のアクセラレーターに過ぎず、リアルタイムのOpenClaw inventoryが常にeligibility、model visibility、正規のSkillパスの事実上の情報源です。
Skills semantic discovery
semantic catalogは共有memory indexではなく、独立したQMD named indexに配置することを推奨します。QMD 2.5.3のvector ANNはまずインデックス全体から候補を取得し、その後コレクションフィルターを適用します。数十件のSkillを数万件のmemoryドキュメントに混ぜると、小さなコレクションが全ライブラリの候補に埋もれてしまいます。
現在のデプロイメントでは以下を使用しています:
local catalog: <workspace>/skills-catalog/
M4 mirror: ~/qmd-data/skills-chatgpt-web-agent/
QMD index: skills-chatgpt-web-agent
collection: skills-chatgpt-web-agent
MCP endpoint: http://192.168.0.96:8182/mcp検索にはQwen3-Embedding-0.6B、vector-only、rerank=falseを使用し、query expansion / HyDEは行いません。QMDのヒットは単なる候補です。返却前にライブのskills.statusと共通部分を取ります。catalog schema/inventoryはcatalogHashで世代の無効化を行い、QMDが利用不可またはcatalogが古い場合は自動的にライブのnames-only catalogにフォールバックします。
Google Drive
Driveはオプションのデータチャネルであり、バックグラウンド同期、ディスクマウント、ディスク全体のミラーリングは行いません。実装はGoogle Drive API v3を直接使用し、MCPは小さく安定したファイル操作プリミティブのみを公開します。
デフォルトでは、Driveのローカルアップロード/ダウンロード/エクスポートパスは次の場所のみに制限されます:
<CHATGPT_WEB_AGENT_WORKSPACE>/exchangeこの制限はCHATGPT_WEB_AGENT_WORKSPACE_ONLYとは独立しており、Driveツールが任意のローカルデータの外部転送チャネルとして誤用されるリスクを低減します。必要に応じて、デプロイ担当者がCHATGPT_WEB_AGENT_DRIVE_LOCAL_ROOTとCHATGPT_WEB_AGENT_DRIVE_LOCAL_ROOT_ONLYで調整できます。
ワンタイムOAuth設定
Google CloudでDrive APIを有効にし、Desktop OAuthクライアントを作成します。
ダウンロードしたOAuth JSONを次の場所に保存します:
<workspace>/.credentials/google-drive/credentials.jsonまたは、
CHATGPT_WEB_AGENT_DRIVE_CREDENTIALSを設定して他のローカルのプライベートパスを指定します。次のコマンドを実行します:
CHATGPT_WEB_AGENT_WORKSPACE=/path/to/workspace pnpm drive:authブラウザでの認可が完了すると、権限が
0600のauthorized-user tokenが生成されます。OAuth client secretとrefresh tokenはGitにコミットせず、MCP経由で返されることもありません。サービス起動時に次のように設定します:
export CHATGPT_WEB_AGENT_DRIVE_ENABLED=true
DriveツールのfolderId / fileIdはDrive API IDを直接使用します。通常のバイナリファイルはdrive_downloadを使用します。Google Docs/Sheets/Slidesはdrive_exportを使用して指定されたMIMEタイプにエクスポートします。
Available Tools
6 toolsapply_patchapply_patchC
Apply a patch to one or more files using the apply_patch format. The input should include *** Begin Patch and *** End Patch markers.
| Name | Required | Description | Default |
|---|---|---|---|
| input | Yes | Patch content using the *** Begin Patch/End Patch format. |
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 states the tool applies patches and uses markers, but it does not mention side effects like file modification, potential for partially applied patches, rollback capability, or whether it creates files that don't exist. Key behavioral traits are missing.
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 brief and front-loaded with the core purpose. It uses two sentences effectively, but the repeated mention of 'apply_patch format' is slightly redundant.
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 modifies files, it lacks details on safety, rollback, or how partial patches are handled. With no output schema and no annotations, the description should cover failure modes and post-conditions, which it omits.
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 100%, and the description adds minor context about the format markers beyond the schema's generic 'Patch content' description. However, it does not explain the patch syntax (e.g., unified diff), allowed operations, or error handling if format is invalid.
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 applies a patch to files and specifies the patch format with markers. However, it does not distinguish itself from siblings like 'exec' or 'process', which might also apply changes.
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 vs alternatives like 'read' or 'exec'. The description lacks context on prerequisites, such as whether files must exist or be writable, and does not mention that 'apply_patch' is specifically for applying patch diffs versus directly editing files.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
execexecA
Execute shell commands with background continuation for work that starts now. Use yieldMs/background to continue later via process tool. For long-running work started now, rely on automatic completion wake when it is enabled and the command emits output or fails; otherwise use process to confirm completion. Use process whenever you need logs, status, input, or intervention. Use pty=true for TTY-required commands (terminal UIs, coding agents).
| Name | Required | Description | Default |
|---|---|---|---|
| env | No | ||
| pty | No | Run in a pseudo-terminal (PTY) when available (TTY-required CLIs, coding agents) | |
| command | Yes | Shell command to execute | |
| timeout | No | Timeout in seconds (optional, kills process on expiry) | |
| workdir | No | Working directory. Blank/whitespace values are invalid; omit to use the default cwd. | |
| yieldMs | No | Milliseconds to wait before backgrounding (default 10000) | |
| background | No | Run in background immediately |
TDQS
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 explains backgrounding behavior, automatic completion wake, and the necessity of using 'process' for interaction. However, it does not detail security restrictions, output handling, or timeout effects beyond what is in the schema.
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 four sentences, front-loaded with the core purpose, followed by concise usage rules. Every sentence contributes unique information with no redundancy or filler.
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?
The tool has no output schema, so the description should clarify return values. It does not mention what the initial call returns (e.g., immediate output or a handle). However, it covers the backgrounding workflow, including the role of 'process' for logs and status, making the overall completeness high despite the ambiguity about immediate response.
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 high (86%), so baseline is 3. The description adds usage context for 'yieldMs', 'background', and 'pty', but does not significantly elaborate on parameter meaning beyond what the schema already provides. It ties parameters to scenarios but does not introduce new semantic information.
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 'Execute shell commands' and elaborates on background continuation, distinguishing itself from sibling tools like 'process' which handles logs/status. It provides a specific verb-resource combination and explicitly differentiates usage.
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 gives explicit guidance on when to use alternative tool 'process' (for logs, status, input, intervention) and when to enable 'pty=true' (TTY-required commands). It also explains the 'yieldMs/background' mechanism for continuing work later, leaving no ambiguity about context.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
processprocessA
Manage running exec sessions for commands already started: list, poll, log, write, send-keys, submit, paste, kill. Use poll/log when you need status, logs, quiet-success confirmation, or completion confirmation when automatic completion wake is unavailable. Use poll/log also for input-wait hints. Use write/send-keys/submit/paste/kill for input or intervention.
| Name | Required | Description | Default |
|---|---|---|---|
| eof | No | Close stdin after write | |
| hex | No | Hex bytes to send for send-keys | |
| data | No | Data to write for write | |
| keys | No | Key tokens to send for send-keys | |
| text | No | Text to paste for paste | |
| limit | No | Log length | |
| action | Yes | Process action (list|poll|log|write|send-keys|submit|paste|kill|clear|remove) | |
| offset | No | Log offset | |
| literal | No | Literal string for send-keys | |
| timeout | No | For poll: wait up to this many milliseconds before returning; max 30000 ms, higher values are clamped to 30000 | |
| bracketed | No | Wrap paste in bracketed mode | |
| sessionId | No | Session id for actions other than list |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
With no annotations, the description carries full burden. It discloses that the tool manages running sessions and that poll can wait up to 30000 ms (clamped). However, it doesn't mention that actions modify session state (e.g., writing data, killing), which is reasonably inferred. It also doesn't state that list returns session IDs needed for other actions, though the schema makes that somewhat clear. Very good but not exhaustive.
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 tight 4-sentence paragraph. The first sentence front-loads all actions and the tool's purpose. The next two sentences give precise when-to-use guidance. The last sentence covers the remaining actions. Every sentence earns its place; no filler.
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, 100% schema coverage, and no output schema, the description fills the behavioral gap well. It explains when to use each action type. The only missing element is a brief note that some actions (e.g., kill) are destructive or irreversible, which would have pushed completeness to 5. Still strong and sufficient for an agent.
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 100%, so baseline is 3. The description does not add meaning beyond schema property descriptions – it simply names the action groups. The schema already describes each property's purpose (e.g., 'Hex bytes to send for send-keys'). The description adds no new parameter details or usage patterns, so it stays at baseline.
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 lists all eight supported actions (list, poll, log, write, send-keys, submit, paste, kill) and clearly states the tool manages running exec sessions. It even details specific use cases like confirming completion or getting input-wait hints. This fully distinguishes it from siblings like exec (which starts sessions) and read/apple_patch (which operate on files).
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?
It explicitly tells the agent when to use poll/log for status, logs, or input-wait hints, and when to use write/send-keys/submit/paste/kill for input/intervention. It also mentions the fallback when automatic completion wake is unavailable, giving actionable guidance to select among the tool's own actions. No sibling-level exclusions are needed because the tool manages already-started sessions – distinct from siblings.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
readreadA
Read the contents of a file. Supports text files and images (jpg, png, gif, webp, bmp). Images are sent as attachments. For text files, output is truncated to 2000 lines or 50KB (whichever is hit first). Use offset/limit for large files. When you need the full file, continue with offset until complete.
| Name | Required | Description | Default |
|---|---|---|---|
| path | Yes | Path to the file to read (relative or absolute) | |
| limit | No | Maximum number of lines to read | |
| offset | No | Line number to start reading from (1-indexed) |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
With no annotations provided, the description fully discloses behavioral traits: truncation to 2000 lines or 50KB, offset/limit pagination, and image handling as attachments. This goes well beyond the input schema's parameter descriptions, providing critical operational details.
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 three sentences long, front-loaded with the purpose, and every sentence provides essential information. No unnecessary words or repetition, making it highly efficient for an AI agent to parse.
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 simplicity (3 parameters, no output schema), the description covers purpose, supported file types, truncation limits, and pagination strategy. It does not explicitly describe the return format for text files, but the information provided is sufficient for most use cases. A minor gap for completeness.
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 100%, so the baseline is 3. The description adds value by explaining the intended use of offset/limit for pagination ('Use offset/limit for large files') and clarifying that offset is 1-indexed, which is implicit in the schema but reinforced here.
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 specific verb 'read' and resource 'file', and lists supported file types (text and images). It distinguishes from sibling tools like 'exec' (command execution) and 'skill_read' (reading skills) by focusing on general file reading.
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 the tool (for reading text and image files) and how to handle large files via offset/limit pagination ('use offset/limit for large files'). It lacks explicit exclusions (e.g., binary files other than images) but the context is sufficient for correct usage.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
skill_readA
Read one currently eligible/model-visible OpenClaw Skill by its name or skillKey. Use after skills_list identifies a likely match. This tool does not accept filesystem paths.
| Name | Required | Description | Default |
|---|---|---|---|
| name | Yes |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
With no annotations, the description carries full burden. It mentions 'currently eligible/model-visible' but does not specify behavior on missing skills, read-only guarantee, or potential errors. The description is minimal regarding side effects or failure conditions.
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?
Two concise sentences, no redundant wording. Every clause adds value—purpose, usage timing, and a key constraint.
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 no output schema, the description could clarify what is returned (e.g., skill content, metadata). It does not mention output details, but the tool's purpose is clear enough for selection. Slightly incomplete in describing the full interaction.
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 only parameter 'name' is clarified to accept either the skill name or skillKey, and explicitly excludes filesystem paths. This adds significant meaning beyond the bare string type, compensating for the lack of schema-level description.
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 a skill by name or skillKey, distinguishing it from sibling tools like skills_list (which lists) and read/apply_patch/exec/process (which operate on files or processes). It is specific and unambiguous.
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?
Explicitly instructs to use after skills_list identifies a likely match, and provides a clear constraint (does not accept filesystem paths). This fully guides when and how to use the tool.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
skills_listA
Discover local OpenClaw Skills available to ChatGPT Web. Pass a natural-language task description in query to get a small semantic top-k with descriptions. Without query, returns the compact names-only live catalog. Only currently eligible and model-visible Skills are surfaced.
| Name | Required | Description | Default |
|---|---|---|---|
| limit | No | Maximum semantic candidates; defaults to 8. | |
| query | No | Natural-language task or capability to discover. |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
No annotations present, so description carries full burden. It explains the tool surfaces only 'currently eligible and model-visible Skills' and describes two distinct outputs. This is adequate for a read-operation.
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?
Two sentences pack purpose, dual behavior, and constraints with zero waste. Every sentence contributes meaning.
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 simplicity (2 optional params, no output schema, no annotations), the description covers core functionality, parameter options, and eligibility. It could mention the return format, but is largely complete.
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 100%, so baseline is 3. Description adds value by explaining that 'query' triggers semantic top-k search with descriptions, while omitting it yields a names-only catalog. This clarifies the parameter's effect beyond the schema.
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 that the tool discovers local OpenClaw Skills for ChatGPT Web. It distinguishes between query and no-query modes, but doesn't explicitly differentiate from sibling tool 'skill_read'.
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?
Provides clear context on when to pass a query vs. not, but does not mention alternatives or when to avoid using this tool.
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.
6 tool updates
v0.1.0- First observed
apply_patch - First observed
exec - First observed
process - First observed
read - First observed
skill_read - First observed
skills_list
TDQS
Scored across 6 tools
Each tool has a distinct purpose: file reading, patch application, command execution, process management, and skills listing/reading. Descriptions clearly differentiate them.
Most tools use verb-like names with a mix of underscore and no-underscore styles (e.g., 'read' vs 'skills_list'). The convention is not fully uniform but remains understandable.
Six tools is appropriate for a coding-agent server, covering core operations without being excessive or sparse.
The suite covers file access, modifications, command execution, background process management, and skill discovery, leaving no obvious gaps for common agent workflows.
Maintenance
Related MCP Connectors
Use your Mac, Windows or Linux computer from ChatGPT, Claude or Codex: files, commands, documents.
Search your AI chat history (ChatGPT, Claude, Codex) from any MCP client. Remote, private, read-only
MCP connector that lets ChatGPT list, search, and run your Apple Shortcuts via a local Mac agent
MCP server for OpenAI API (chat completions, image generation, embeddings) via AceDataCloud
Related MCP Servers
- AlicenseAqualityCmaintenanceEnables ChatGPT web to interact with local Windows/WSL shell and code workspaces via an MCP server, providing file access, shell execution, and snapshot-based workspace management with per-command authorization.18MIT
- FlicenseNot gradedqualityBmaintenanceEnables ChatGPT Web to securely access local files and run commands via MCP, with optional OpenCode agent mode for autonomous tasks.-
- FlicenseBqualityAmaintenanceEnables ChatGPT Web to securely control a trusted local computer through an OpenAI Secure MCP Tunnel, letting it perform file, process, Git, and other system operations on Windows, macOS, and Linux.62-
- AlicenseNot gradedqualityCmaintenanceTurns ChatGPT web into a local coding agent, enabling file edits, shell commands, Git operations, patches, and process management through 40+ MCP tools.MIT