comp3900_server
カスタムMCPサーバーをテストするためのリポジトリです
COMP3900プロジェクトインストーラーサーバー
comp3900_server.pyは、https://github.com/arctic-cheetah/COMP3900-Project のプロジェクト専用のMCPサーバーです。次のことができます:
MCPサーバーが実行されているマシンに固定リポジトリをクローンする;
プロジェクトのREADMEと、プロジェクトファイルの範囲指定された読み取りをLLMに公開する;
PlaywrightのChromiumが使用可能かどうかを含む前提条件を確認する;
バックエンド、Playwright Chromium、フロントエンドをローカルにインストールする;
ドキュメント化されたDocker Composeスタックをビルド/起動する;または
オプションで
cloudflaredクライアントをインストールする(下記参照)。
ダウンロード先はデフォルトで./COMP3900-Projectです。別の場所を使用するには、COMP3900_PROJECT_DIRに明示的なプロジェクトディレクトリを設定します。
まずこのMCPサーバーの依存関係をインストールします:
python3 -m pip install -r requirements.txtstdioで実行します:
mcp run comp3900_server.py:mcpまたは直接起動します:
python3 comp3900_server.pyMCPクライアントでは、ガイド付きワークフローのためにinstall_comp3900プロンプトを選択するか、setup_projectを直接呼び出します。ローカルインストールの引数の例:
{
"method": "local",
"install_browser": true,
"install_browser_system_dependencies": true,
"start_services": false,
"install_cloudflare_tunnel_client": false
}Dockerの場合は"method": "docker"を使用します。ビルド後にスタックをバックグラウンドで実行するには"start_services": trueを設定します。
Playwright
URL検出器のHTMLフェッチエンジンはPlaywright上で動作するため、これは実際の要件です:backend/pyproject.tomlにはplaywrightがリストされ、backend/Dockerfileとoperational-install-manual.mdの両方がplaywright install --with-deps chromiumを実行します。
install_browser_system_dependenciesは、そのドキュメント化された手順に合わせてデフォルトでtrueになりました。これはChromiumの共有ライブラリのためにプラットフォームのパッケージマネージャーにシェルアウトするため、サーバーがすでにrootとして実行されていないホストでは権限昇格のプロンプトが表示されることがあります。それらのライブラリを自分でインストールしたい場合は、falseに設定します。check_prerequisitesはurl_detector_readyを報告します。これは、PlaywrightモジュールとそのChromiumブラウザの両方が解決された場合にのみtrueになります。
cloudflared
install_cloudflaredは、公式リリースバイナリを<checkout>/.tools/cloudflaredにダウンロードし、そのsha256を報告します。これはinstall_projectとsetup_projectではデフォルトでオフになっています。含めるには"install_cloudflare_tunnel_client": trueを渡します。
知っておくべき2つの注意点:
CloudflareはCOMP3900プロジェクトの依存関係ではありません。README、インストールマニュアル、またはマニフェストのどこにも登場しません。リポジトリ内での出現は、
backend/ml/data/の下のMLトレーニングCSV内のcdnjs.cloudflare.comなどのドメイン文字列のみです。サーバーはクライアントのみをインストールします。Cloudflareへの認証は決して行わず、トンネルも開始しません。トンネルを実行するとローカルサービスがパブリックインターネットに公開されるためです。これは意図的に人間の手順として残されています。
チェックアウトにインストールすることで、操作は非特権のままになります:システムパッケージマネージャーは実行されず、プロジェクトディレクトリの外には何も書き込まれません。
Related MCP server: homelab-mcp
手順
プロジェクトディレクトリから、対話型MCP Inspectorを起動します:
mcp dev server.pyコマンドはローカルのInspector URLを出力します。それを開き、接続し、addツールを選択して、以下を指定します:
{
"a": 1,
"b": 2
}結果は3になるはずです。
MCPクライアント用の通常のstdio MCPサーバーとして実行するには:
mcp run server.py:mcp現在、server.pyをpythonで実行すると、ファイルがサーバーを定義するだけなので即座に終了します。そのコマンドをサポートするには、以下を追加します:
if __name__ == "__main__":
mcp.run()次に実行します
python3 server.py別のマシンにMCPがインストールされていない場合:
python3 -m pip install "mcp[cli]"次に
mcp dev server.pyデプロイメント:
これはコードブロックの変更内容の説明です:既存のコンテンツの後に、接続ガイド(STDIOおよびHTTPオプション)をREADME.mdに追加します。
これは提案されたコード変更を表すコードブロックです:
ChatGPT Desktopへの接続
オプション1:STDIO経由で接続(推奨)
サーバーは現在WSL内で実行されているため、デスクトップフォームに次のように入力します:
名前:
MCP_testタイプ: STDIO
起動コマンド:
wsl.exe引数: 各項目を個別に、この順序で追加します:
--cd /home/khalifa/MCP-server --exec /home/khalifa/pythonPackages/bin/mcp run server.py:mcp環境変数: 空のままにします
作業ディレクトリ: 空のままにします
誤ったWSLディストリビューションが選択されている場合は、最初にこれらの引数を挿入します:
--distribution
UbuntuUbuntuを、以下が報告する名前に置き換えます:
wsl.exe --list --verboseつまり、実質的には次のようになります:
引数: 各項目を個別に、この順序で追加します:
--distribution kali-linux --cd /home/khalifa/MCP-server --exec /home/khalifa/pythonPackages/bin/mcp run server.py:mcp
サーバーを保存し、デスクトップアプリを再起動します。チャットで次を入力します:
/mcpMCP_testとそのaddツールが表示されるはずです。試してみてください:
Use the MCP_test add tool to add 17 and 25.OpenAIの公式ドキュメントによると、デスクトップアプリはローカルのSTDIOプロセスとStreamable HTTPサーバーの両方をサポートしています。また、設定を保存した後に再起動が必要です。OpenAI MCPドキュメント
オプション2:HTTP経由でサーバーを実行
mcp devを停止してから、次を実行します:
cd /home/khalifa/MCP-server
mcp run server.py:mcp --transport streamable-httpデフォルトのMCPエンドポイントは次のとおりです:
http://127.0.0.1:8000/mcpデスクトップフォームで:
名前:
MCP_test_httpタイプ: Streamable HTTP
URL:
http://127.0.0.1:8000/mcp
このモードには起動コマンドや引数はありません。HTTPサーバーはすでに実行されている必要があります。
ポート8000が使用中の場合は、これをserver.pyに追加します:
if __name__ == "__main__":
mcp.run(
transport="streamable-http",
host="127.0.0.1",
port=8001,
)次に実行します:
python3 server.pyこのデスクトップURLを使用します:
http://127.0.0.1:8001/mcpHTTPリクエストでの呼び出し
MCPはJSON-RPCであり、従来のREST APIではありません。したがって、ブラウザのアドレスバーで/mcpを開いてもaddは呼び出されません。MCPセッションを初期化してからツールを呼び出す必要があります。
初期化:
curl.exe -i -N http://127.0.0.1:8000/mcp \
-H "Content-Type: application/json" \
-H "Accept: application/json, text/event-stream" \
--data "{\"jsonrpc\":\"2.0\",\"id\":1,\"method\":\"initialize\",\"params\":{\"protocolVersion\":\"2025-11-25\",\"capabilities\":{},\"clientInfo\":{\"name\":\"curl\",\"version\":\"1.0\"}}}"Mcp-Session-Idレスポンスヘッダーの値をコピーします。次にaddを呼び出します:
curl.exe -N http://127.0.0.1:8000/mcp \
-H "Content-Type: application/json" \
-H "Accept: application/json, text/event-stream" \
-H "Mcp-Session-Id: PASTE_SESSION_ID_HERE" \
--data "{\"jsonrpc\":\"2.0\",\"id\":2,\"method\":\"tools/call\",\"params\":{\"name\":\"add\",\"arguments\":{\"a\":17,\"b\":25}}}"ブラウザベースの対話型テストには、JSON-RPCセッションを手動で管理するよりも、すでにあるInspectorの方が簡単です。HTTPエンドポイントは主にChatGPT Desktop、Codex、InspectorなどのMCPクライアントを対象としており、ブラウザでの直接ナビゲーションを対象としていません。
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 Servers
- AlicenseBqualityDmaintenanceEnables execution of terminal commands, git operations, and automated setup of React, Vue, and Next.js projects with VSCode integration.744MIT
- AlicenseNot gradedqualityCmaintenanceEnables management of homelab infrastructure, including Docker/Podman containers, Ollama AI models, Pi-hole DNS, Unifi networks, and Ansible inventory, with built-in security checks and automated pre-push validation.1MIT
- AlicenseBqualityDmaintenanceAutomates setup of local development environments for Python, Node.js, Flutter, Android, and more on macOS and Linux. Can be used as a standalone CLI or as an MCP server for AI assistant integration.10MIT
- FlicenseNot gradedqualityDmaintenanceEnables high-level GitHub workflows such as cloning, branching, committing, pushing, creating pull requests and issues, all verified step-by-step via git and gh CLI.
Related MCP Connectors
Manage Appwrite projects, databases, auth, storage, functions, and messaging; search Appwrite docs
Generate SBOMs, scan vulnerabilities, and analyze dependencies from local projects or Git repos.
Connect AI assistants to GitHub - manage repos, issues, PRs, and workflows through natural language.
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/arctic-cheetah/MCP-server'
If you have feedback or need assistance with the MCP directory API, please join our Discord server