GPT Harness
GPT Harness
あなたが管理するサーバー上でChatGPT Webがシェルコマンドを実行できるようにする、自己ホスト型のMCPゲートウェイです。
[!WARNING] これは個人的な実験であり、製品ではありません。シェルコマンド全体を言語モデルに渡し、あなたのサーバー上で実行します。実行する前にセキュリティモデルについてをお読みください。
なぜこれが存在するのか
ChatGPT Webはコードについてよく推論します。GitHubコネクタを使えば、リポジトリの読み取りと編集ができます。しかし、何かを実行することはできません。なぜなら、その環境にはネットワークアクセスがないからです。依存関係をインストールしたり、テストスイートを実行したりすることはできません。
Codexは両方できますが、エージェントとしての使用はチャットとは別に課金され、上限があります。チャットははるかに遅く枯渇するか、まったく枯渇しません。
ゲートウェイはそのギャップを埋めます。ChatGPTが何をするかを決定し、あなたのサーバーがそれを実行します。エージェントの許容量ではなく、メッセージの割り当てが制限になります。
@gpt-harness work this ticket
git clone, write code, npm ci, npm test, repeat until green
@gpt-harness review this PR <link>
gh pr checkout, run its tests, report backRelated MCP server: Personal AIVA MCP Bootstrap
公開するもの
4つのツール: bash、bash_output、bash_kill、write_file。ツールリファレンスには、引数、結果、制限が記載されています。
ワークスペースツールもワークスペースの概念もありません。プロジェクトはHARNESS_ROOTの下のディレクトリであり、ChatGPTは他の誰と同じようにlsとmkdirを使用します。
4つのツールのうち3つは、1つの制約のために存在します。単一のツール呼び出しは、npm ciがかかる数分間開いたままにすることはできません。そのため、bashはコマンドが20秒の待機を超えるとハンドルを返し、bash_outputはカーソルから読み取り、bash_killは終了しないコマンドを停止します。
コマンドは対話的ではありません。stdinは即座にファイルの終わりを読み取るため、ChatGPTはnpm ciやgh --yesなどのフラグを渡す必要があります。各コマンドは独自のプロセスグループで実行されるため、1つを停止すると、それが開始したすべてのものが停止します。
要件
systemd、ドメイン、TLSを備えたLinuxサーバー
Node.js 24
Auth0テナント
開発者モードが利用可能なChatGPTアカウント
ローカルで実行する
git clone https://github.com/salman-frs/gpt-harness.git
cd gpt-harness
npm ci
cp .env.example .envHARNESS_ROOTを破棄できるディレクトリに指定し、ChatGPTをゲートウェイに接続するからAuth0の値を入力して、起動します:
npm run dev
curl -fsS localhost:8787/healthz/healthzはトークンを必要としません。/mcpへのすべてのリクエストは、initializeを含め、設定された所有者の有効なトークンを必要とします。
ゲートウェイをローカルで実行しても、制限はありません。ProtectSystem=strictなどはsystemdユニットから来ており、サーバー上でのみ適用されます。
動作を証明する
npm run build && npm run provescripts/prove.mjsは、環境変数だけでdist/main.jsを独自のプロセスとして起動します。ゲートウェイがネットワーク経由で取得する実際のHTTPS JWKSエンドポイントを提供し、実際のRS256トークンを発行し、通常のMCPクライアントで結果を駆動します。プロジェクトを書き込み、レジストリから依存関係をインストールし、テストを実行し、コマンドを強制終了すると、そのコマンドが開始したプロセスも強制終了されることを確認します。
スクリプト内の何もsrc/をインポートしません。
ドキュメント
ChatGPTをゲートウェイに接続するでは、Auth0、メタデータエンドポイント、コネクタについて説明しています。
サーバーにゲートウェイをデプロイするでは、systemdユニット、リバースプロキシ、Git認証情報、更新について説明しています。
ツールリファレンスでは、引数、結果、制限、エラーコードについて説明しています。
セキュリティモデルについてでは、境界と、これを実行することで受け入れることについて説明しています。
ライセンス
MIT
Tool Schema Changelog
Recent tool additions, removals, and schema changes observed during successful MCP inspections. Dates show when Glama detected each change.
No tool schema history has been recorded yet.
This server cannot be installed
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
Hosted MCP server connecting claude.ai, ChatGPT and other AI apps to your own computer
An MCP server that gives your AI access to the source code and docs of all public github repos
Self-hosted MCP gateway: turn any API, database or MCP server into AI connectors — no code.
Remote MCP server for supportsheep: run AI interviews and manage support content for your blog.
Related MCP Servers
- AlicenseNot gradedqualityBmaintenanceA self-hosted MCP server that gives ChatGPT a secure connection to your local machine, enabling it to read, edit, search, and run code in your projects.2,058MIT
- FlicenseNot gradedqualityBmaintenanceA self-hosted MCP server that gives ChatGPT controlled access to a user's Oracle Cloud Ubuntu VM through tools for shell commands, file operations, and personal skills.-
- FlicenseNot gradedqualityCmaintenanceAn unofficial self-hosted MCP server that enables ChatGPT to run commands on your computer through a secure tunnel, manage processes, and work within a specified project directory.1-
- AlicenseNot gradedqualityAmaintenanceAn MCP server that bridges ChatGPT Web Pro to local tools, enabling file read/write, shell command execution, git operations, and search within a specified project directory.21MIT
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/salman-frs/gpt-harness'
If you have feedback or need assistance with the MCP directory API, please join our Discord server