SVX日記

2004|04|05|06|07|08|09|10|11|12|
2005|01|02|03|04|05|06|07|08|09|10|11|12|
2006|01|02|03|04|05|06|07|08|09|10|11|12|
2007|01|02|03|04|05|06|07|08|09|10|11|12|
2008|01|02|03|04|05|06|07|08|09|10|11|12|
2009|01|02|03|04|05|06|07|08|09|10|11|12|
2010|01|02|03|04|05|06|07|08|09|10|11|12|
2011|01|02|03|04|05|06|07|08|09|10|11|12|
2012|01|02|03|04|05|06|07|08|09|10|11|12|
2013|01|02|03|04|05|06|07|08|09|10|11|12|
2014|01|02|03|04|05|06|07|08|09|10|11|12|
2015|01|02|03|04|05|06|07|08|09|10|11|12|
2016|01|02|03|04|05|06|07|08|09|10|11|12|
2017|01|02|03|04|05|06|07|08|09|10|11|12|
2018|01|02|03|04|05|06|07|08|09|10|11|12|
2019|01|02|03|04|05|06|07|08|09|10|11|12|
2020|01|02|03|04|05|06|07|08|09|10|11|12|
2021|01|02|03|04|05|06|07|08|09|10|11|12|
2022|01|02|03|04|05|06|07|08|09|10|11|12|
2023|01|02|03|04|05|06|07|08|09|10|11|12|
2024|01|02|03|04|05|06|07|08|09|10|11|12|
2025|01|02|03|04|05|06|07|08|09|10|11|12|
2026|01|02|03|04|05|06|07|08|09|10|

2026-10-13(Tue) シンガポールから帰国

  機中で映画のフォードvsフェラーリを観ながらウトウト。最近の飛行機は窓の遮光がブラインドではなく電子制御だ。到着が9時で、その前に機内食が出るために早めに起こされる。終わってしまっていた映画を少し巻き戻して観る。主人公は引きのカメラで静かに事故死。そうなのか。

  やっぱり腕が痛くて機内食どころではないが、食わないわけにもいかない。んが、カトラリのセットをいきなり座席の下に落としてしまい、回収できず。カミさんにひとつ借りてそれで食う。うーん、多いが、ウマくないな。痛みに耐えつつ、黙って詰め込む。

  セントレアに到着。手荷物受取所に向かう途中、怪しげな男が申し訳なさそうに声を掛けてきた。なんでも、麻薬探知犬の模擬捜査に参加してくれないか、とのこと。手荷物に疑似麻薬を入れて、麻薬探知犬に見つけてもらう役の依頼である。面白そうなので承諾したら、カミさんだけだった。ちぇ。

  普通にしてて、ということで、普通にしていると、麻薬探知犬と捜査官のペアがしきりに周回している。知らんぷりをしているが、近づいてきた犬が鞄をクンクンしだして、おすわり。この、おすわりが麻薬発見の決めポーズらしい。1匹目につづき、2匹目にも見つかってしまう。思いっきり鞄を舐められてヨダレだらけにされたのはどうかと思うが、立派なもんである。お礼の麻薬探知犬カードもらって解散。次に持ち込むときはしっかりとジップロックに入れておこう。

  帰りは名鉄の特別車で帰ることに。いい席に座れるのならと、コンビニでぶどうチューハイを買う。シンガポールを経験していると笑えるほど安く感じる。バスに乗り換えて帰宅。昼前。風呂に入って一息。

  多少は痛さが引いた気もするが、カミさんに整形外科に送ってもらって腕を診てもらった。なんでも、五十肩ではなく、カルシウム沈着性腱炎とのこと。三角巾で腕を吊って、ロキソニン、ステロイドの内服薬を処方された。医者によると、痛すぎて泣いちゃう人も多い症状らしい。いや、そうだよね。泣きはしなかったけど、尋常な痛みじゃなかったからな。とはいえ、五十肩と違ってそうは長引かなさそうなのは救いだ。

  しかし、右手を机の上に載せることは困難で、膝の上に置いた板にキーボードとマウスを載せてPC操作する始末。起きていると多少いいが、寝る動作が困難だし、寝る姿勢だと右腕が痛い。あまりヤル気が出ずに早寝。とほほほ。


2026-10-12(Mon) シンガポールで大きな気づきを得る

  昨晩に行われた決勝レースの帰り、混雑の少ない逆側のゲート5を狙ったが、それでもモノスゴい人の群れであった……が、ふと、そのような状況ながら人の流れはスムーズであることに気がついた。みんな整然としている。無茶な行動をしているヤツがひとりもいない。そういえば、大声を上げているヤツもいないし、警備も……まぁ、警察はマシンガン持ってはいたけど、すごく暇そうだ。

  ……ふむん……そうか……そういうことかッ! ここにいる人間は、すべてF1を観るためにサーキットに入場した人たちなのだ。現地の人も、海外から来た人も、基本的にもれなく全員が金持ちなのだ。まさにこの状況が……

  「金持ちケンカせず」

  ……なんだろうな。

  言っちゃ悪いが、野球やサッカーだとこうはならないだろう。ヒイキのチームが勝てば大騒ぎ、負けても大騒ぎ。どこのチームとは言わないが、比較的民度が高いはずの日本でも、外野から見れば眉をひそめるような様子になっていると言わざるを得ない。それに比べてF1ファンはお上品なのだ。もれなく。

  そしてもうひと回り大きなことに気づく。比較的混雑しているMRTの乗客もお上品な方々ばかりなのだ。要するにシンガポール自体が、金持ちしか住んでいない国なのだ。いや、逆だな。シンガポールという国が裕福だから、国民全員が金持ちなのだ。

  格差社会、というコトバがある。自分は割と余裕がある方なので、正直にいうと格差をわかってないし、わかろうとしたこともなかった。んが、シンガポールで実感した。格差が民度を下げるのだ。犯罪を作るのだ。だから解決が必要な問題なのだと。下側の人間じゃないから関係ない、わけではないのだ。格差が大きいということは国全体がバカに傾くということなのだ。

  シンガポールの街はキレイだ。ゴミが落ちていない。それは、ゴミを捨てると罰せられる法律があるから、ではないように思えた。見えるところに自動販売機とか看板とかが少なく、注意書きも少ない。なので、街がスッキリしている。日本の街並みが恥ずかしく思えてくるほどだ。それは、民度の高さによる結果ではないかと思える。

  交通の様子もそうだ。ちょっとクラクションが多いが、しばらくすると、その音色には日本のようなイラついた感情が乗っていないように思えてきた。おかしな運転をしているやつがいない。渋滞は酷いがイライラしているように見えない。ウルサいバイクも見ない。バカっぽいカスタムカーも見ない。結論は同じだ。シンガポールの人に日本を案内することがあったとしたら、恥ずかしく思うだろう。

  そんな大きな気づきを得ながら、今日も起床。引き続き右腕が痛いのに慣れないままホテルの朝食会場へ。やっぱり今日も全く同じメニューである。さすがに飽きる。やっぱり右腕が使えないので、食パンに卵やらハムやらを挟んで左手で食う。

  レースは終わったので今日は帰国……なのだが、今日の深夜に夜行する、という帰国スケジュールなので、今日は純粋に観光の日となる。正午前までゆっくりしてチェックアウト、ホテルに荷物を預かってもらってお出かけ。夜にここに戻ってきてバスで空港に向かうという寸法だ。

  例によって行き先はカミさんにお任せ。MRTでセントーサ島に向かう。島とはいっても地続きなので、トコトコ歩く……が、動く歩道が止められている。だいぶ前からのようだ。と、思ったら行き止まり。よくわからんが、少し戻って車道の脇の歩道で向かう。すると、やたら派手なモールに出た。んが、目的地はシロソ砦らしい。そこへはケーブルカー(という名のゴンドラリフト)で向かう。カミさんはやや歴女なのでモールより砦。ある意味お任せしても安心なのであった。

  画像の説明

  シロソ砦は、イギリスが防御のために築いた砦だが、海からの侵略に備えてたら、日本軍が陸から来てしまってロクに役に立たなかったというタコスケな歴史を持つ。そこには、いろいろとその歴史について説明の展示があるのだが、大戦時に日本に武力で占領された、という事実の扱いが割とニュートラルなことに違和感を持った。

  どうやら、占領された事自体に苦々しい部分はあったものの、その日本人に学べ、という指導者の意向があったらしい。シンガポール自体、現在も大いに親日の国らしいが、その指導者でなかったならどうなっていたものかと思う。敵であっても学ぶところは学ぶ。そういう姿勢がその国を超えられる理由かもしれない。アメリカに対する日本、日本に対する彼の国など、ここでもいろいろと考えてさせられてしまった。

  散々歩いてからゴンドラリフトでモールに戻る。だいぶ遅いがなにか食わないと、と思いつつ回るが、辛そうだったり、高そうだったりでなかなか決まらない。結局、WeWaというファストフードに入った。ところが安パイを狙ったつもりが、中東系の店だったらしく、珍しいものを食うハメになった。ピタというものがパン生地の袋に具材を入れたもの、という認識はあったが、大きさが想像の3倍。中にファラーフェルという団子状の豆コロッケが5個も入っている。こちらもそこそこ値段はしたが、大きさを考えると必ずしも高いとは言えず、味もまぁまぁであった。

  画像の説明

  ちなみに今回は行かなかったがSIDESというハンバーガ屋に目を惹かれた。食べ物屋にしては珍しい青い配色。店内も青く直線的で宇宙船の内部のようだった。

  ぼちぼち島を後にする。島からはセントーサ・エクスプレスというモノレールで戻れる。なんと無料である。たまたま先頭車両に乗ったら運転席の中で……運転手が席に座らず後ろを向いてずっとスマホをイジっているw。完全自動運転なんだけど、日本なら一発で通報モノである。奥が深いw。で、終点に着くと……なぜか改札がある。どうやら、普通はここで一日乗車券とセットの入島料を払って島に向かうらしい。ホントは無料じゃなかったんだな。歩いて入れてしまったので気づかなかったよ。あはは。

  そこからは最後の目的地マリーナベイサンズの最上階であるスカイパーク(船の上)へ。そこそこするが、それは行かねばなるまい。ちょっと迷ったが、無事に時間に合わせて入り口へ。エレベータでドーンと屋上へ。

  画像の説明 画像の説明

  まぁ、高さだけでいうと200mとそう大したこともないのだが、向かいの夜景がスゴい。船を模しているので、床は板張りで天井はない。そして柵は結構ザルである。何かを落としたら下の道路に直撃な気がするが、この辺も客の聡明さを信じているのだろうか。日本だとちょっとない設計な気がする。

  画像の説明 画像の説明

  そしてここまで来たらやっちまえ、とばかりに飲み物を購入してしまう。コーラっつうのも普通だし、ビールっつう気分じゃないので、中間を取ってA&Wのルートビア。5ドルだ。日本なら6本パックが買えてしまう。ふー。ひととおり落ち着いたら帰る。入り口のお兄さんが陽気に声を掛けてくれた。そういうのもいい。

  画像の説明

  あとは帰るだけ。MRTでホテルに戻るとバスはすぐに前倒しで出発。ちょうど30分で空港へ。チェックインはほとんど自動化されている。ちょっと時間があったので空港にあるジュエルという人工のデカい滝を観に行くが終わってた。遠いので腕の痛さに加えて疲労でグロッキー寸前だ。

  時間になったので搭乗口に向かうが、なんだかセキュリティを通った記憶がない。と、思ったら、搭乗口の直前でボディチェックをするらしい。そんなものあるのか。オープンまで時間があったので、カフェで最後の食事。最後のラクサチャンスかと思ったら、麺類は終了してた。ホットサンドを注文。クッキーを数袋購入してほぼ現金を使い切る。なんだかここだけはシンガポール価格ではない感じだったな。安いのにウマかった。つうか、シンガポールでマズかったのは、コンビニの冷たいおにぎりだけだったな。

  飛行機は1:20発。ちょっとディレイした気もするが、腕の痛さでよく覚えてない。前のモニタで映画のフォードvsフェラーリが選べたので、観始めたが後半で寝コケてしまう……むにゃむにゃ。


2026-10-11(Sun) シンガポールでF1を観る、決勝

  今日も元気だ右腕がイタい……元気じゃないやん。昨日よりはマシな目覚めだが。激痛で右腕がまったく動かせず、着替えるのも一苦労だ。カミさんにイロイロと介護してもらって、ホテルの朝食会場へ。なんと、昨日と全く同じメニューである。うーん、どれもウマいからいいんだけどさ。いいんだけど、全粒粉の食パンと白い食パン、ケチャップとチリソースの位置だけが入れ替わっていた。前者はともかく、後者はヤメたれよw。右腕が使えないので、食パンに卵やらハムやらを挟んで左手で食う。

  例によってレースはナイターなので日中はヒマ。近所のセブンイレブンに買い物に行く。カミさんがお土産を物色している脇で目を引いたのがコレ。なんとハイネケンが3本で6.5ドルである。細いが320ml。1本2ドルチョイなら250円くらいとマトモな値段である。サーキット内では一杯17ドルだぞ。2000円オーバではさすがに呑む気にならない。特売らしいがちょうど残り3本だった。やっぱり特売の1ドルの小さなポテチと一緒にお買い上げ。

  画像の説明

  ホテルに戻って昼飯を食べたら散歩に出かける。フォートカニングパークを抜け、クラークキーのショッピングモールへ。そのヘンからMRTに乗ってガーデンズ・バイ・ザ・ベイという植物園へ……まぁ、要するにカミさんに連れ回される。スーパーツリーグローブという塔に登ったりしつつ、園内のカフェで早めの夕食。

  画像の説明 画像の説明

  右腕の激痛で食事どころではないのだが、食わないとヤセるので適当なパスタを注文。やはり高い。15ドル。だが、食えばウマいし、肉も多いし、量も多い。安っぽくない。なんだか日本の食堂で感じる出し惜しみ感を感じない。安かろう悪かろう、ではなく、高かろう良かろう、なのである。なんだか普段の日本に貧しさを感じてしまうほどだ。

  右腕が痛いので、尻を満足に拭けず、痛ガユくなってきた。意を決してトイレに行く。シャワートイレに慣れると、尻も弱くなるのだろうか。シンガポールにはシャワートイレがない……と思ったら、なんとタンクの横にシャワーヘッドが付いている。床掃除用ではなく、尻を洗う用らしい。が、試すと水流が強すぎる。そもそも、痛めた右腕では扱えない。結局ペットボトルの水を使って濡れティッシュで拭く。とはいえ、それでだいぶ改善した。なんでもやってみるもんだ。

  といったところで、ぼちぼちサーキットに向かう。が、ちょっと遅かった。ゲートを入ったあたりでドライバーズパレードが始まってしまった。仕方ないのでマーライオンの近くでオーロラビジョンで様子を観る。これは席で観るべきだったなぁ。席に着いてロキソニンを飲む。

  画像の説明

  ついに決勝レースである。前半はやや退屈な展開。新鮮だったのは、同じ場所で観ているから、車間が開いていくのが体感できること。周を追うごとにフェルスタッペンからルクレールが徐々に離されていくし、トップチームの後にちっともローソンが来なくなるw。終盤はハミルトンの失策のおかげでオーバテイク祭りになって盛り上がる。結果、フェルスタッペンの圧勝。さすが。そして花火。なかなか楽しかったなぁ。

  帰りは昨日と同じく、少しスタンドで粘って、逆側のゲート5を狙ったが……その人混みの中で、恐るべき気づきを得た。それについては明日のエントリでねっとりと書こう。

  スムーズにホテルに戻りセブンイレブンで少し買い物。カミさんとハイネケンで乾杯しておやすみ……のはずが、寝かけてから右腕に激痛が。慌ててロキソニンを飲んだが、効くまで最強クラスの痛みが続く。勘弁してくれよぉ。


2026-10-10(Sat) シンガポールでF1を観る、予選

  早朝に右腕の痛みで目が覚める。まだ4:20。昨晩ロキソニンを飲んだのは0:20だったが、4時間しか持たないのか? どうにかもう4時間ウトウトして8時半ごろに起き、ホテルの朝食会場に向かう。バイキング形式であるが、種類は多くないもののどれもウマい。シンガポールはなにしろ物価が高いので、食えるだけ食う。

  シンガポールのレースはナイターなので夕方から。日中はヒマなので繁華街に買い物に。今日はMRT(地下鉄)で向かう。MRTはキャッシュカードのタッチで乗れる。このためにVプリカのリアルカードを発行しておいたのだが使えてよかった。せっかくの海外なのに行くのが高島屋ってのも微妙だが、日本の店も多いもののそれなりに現地風である。値段も現地風だが。

  常に右腕が激痛なので、どうしても元気が出なくて、昼飯に寿司を買ってしまう。一応、コールドストレージという現地スーパーであるが、現地モノもあるが、寿司も普通にある。なんというか、日本食が溶け込んでいる感じだ。ホテルに戻って食うと、これまたウマい。全然ヘンじゃない。高いけれど、高いだけのことはある。3倍するけど、2倍くらい価値を感じる。実質は1.5倍なのかもしれないな。

  再びMRTに乗ってラッフルズ・プレイスへ。今日はマーライオンの近くのゲート5から入場することにした。荷物チェックがあるのでそこそこ並ぶが、長蛇の列というほどではない。回線が混んでいるのかスマホで電子チケットを呼び出すのに時間を要して焦るが、受付の人はみな陽気で感じがいい。

  画像の説明

  17時からスプリントの開始だが、開始前に雨が降ってきた。一応、雨具代わりのウインドブレーカでしのいだが、そんなに強くないもののそこそこ降って、レースの開始は30分のディレイ。そう離れてはいないのにグランドスタンドはドシャ降りなのが不思議だ。レースは大荒れ。先行したラッセルがスピンしてクラッシュしたり、マクラーレンが同士討ちしたりして大盛りあがり。で、結局はフェルスタッペン。さすが。

  画像の説明

  ずっと狭い席に座ってんのも疲れるので、マーライオンの方に戻る。対岸のマリーナベイサンズの突き抜けたアホな発想には感動を覚えるな。地震がなくて、台風がなくて、金があるとこうなるんだなぁ。肝心のマーライオンはガッカリスポットだと聞かされすぎたからか、逆にデカさに驚かされた。F1ウィーク限定でプロジェクションマッピングされているらしいが、目にウルサすぎるわ。

  画像の説明

  席に戻って予選を観戦。ヘタすると決勝より面白いのが予選だ。で、Q1, Q2はともかく、Q3は序盤に出したフェルスタッペンのタイムを、上位勢が「次々と更新できない(笑)」という状況に大盛りあがり。終いにはフェルスタッペン本人がアタックをやめる始末(笑)。さすが。

  帰りは昨日の人の大渋滞を避けようと、少しスタンドで粘って、逆側のゲート5を狙い、マーライオンの周囲でのんびり座ってからMRTに向かったら、恐ろしいほどガラガラで驚いた。ホントにF1やってたの? ってくらい。鈴鹿じゃ考えられないなぁ。

  ホテルに戻り、ロキソニンを飲んで寝る。


2026-10-09(Fri) シンガポールでF1を観る、初日

  去年の春、トップチームであるレッドブルに日本人が乗る、と聞いて瞬時に再燃したF1ブームだが、それに巻き込まれたカミさんの方が熱中するくらいで、終いには海外まで観に行くことになってしまった。

  ……のはいいのだが、なぜか出発の前々日から右の上腕の外側が痛く……なんてレベルじゃなく大激痛である。これが五十肩というヤツなのか? でも、こんなに痛いの? こんなモノスゴい痛みを、そのヘンの人もみんな経験しているの? 自分は筋トレしているし、親父はなってないし、勝手にならないものと思っていたのだが……。

  しかし、あまりの痛みで五十肩かどうか疑わしい。放置して右腕切断になるような症状だったらどうしよう。しかし、シンガポールに旅立つ朝だ。そんな疑いだけで中止というのもない気がするし。とはいえ、向こうで医者にかかるなんていうことは極力避けたい。

  動かさなくても激痛であるが、結局、右のズボンのポケットに右手の親指を引っ掛けてひたすら耐えながら空港へ。機上でもずっとその調子。あまりの激痛にカミさんと楽しく会話できない。こんなせっかくの機会なのに申し訳ないけれど、余裕がなさすぎる。

  6時間かけて……いや、6時間耐えてシンガポールのチャンギ空港へ……が、なんだかどんよりした天気。実はこの時期、シンガポールはインドネシアから漂ってくる煙で「ヘイズ」という天候なのであった。遠景が常に霞む感じ。煙の匂いは多少だが、健康にはよくないらしい。そんな現象があるとはしらなかったなぁ。市内に入ると結構な渋滞。まぁ、狭い国だしそうなるわな。クラクションは多めだが、そう下品な感じはしない。しばらくしてホテルに到着。

  ホテルでは一番に海外用のSIMをスマホに入れる作業。実はサーキットへの入場券はオンラインチケットなので通信ができないと詰むのだ。ちょっとゴタついたが、無事通信ができるようになった。

  画像の説明

  スマホの充電のため、昔もらったレッドハットのノベルティのユニバーサルプラグを持参したが、ホテルのコンセントが既にユニバーサルであった。世界には3,4種類のプラグがあるが、どれも刺さるもの。電圧には注意だが、そもそもUSBジャックがある。結局それだけで済んでしまった。

  ホテルに向かう途中で、プラクティスセッションは終わってしまったので、スプリント予選が行われる20時半までは時間がある。痛み止めの湿布を探すことになり、近所の薬局を調べたらドンドンドンキという店を見つけた。どうやらドンキホーテのこっち版らしい。

  着いてみると、店の雰囲気もドンキホーテである。日本のものも売っているが、ロキソニンの湿布は見つからない。適当な湿布を選ぶが……高い。小さめの4枚でS$4.55(シンガポールドル)。500円オーバである。

  19時をすぎ、ぼちぼち晩メシの時間だが、サーキットに向かわねばならない時間だ。おにぎりでも買って、そのへんの公園で食べて向かうか……って、おにぎりも高い。3〜4ドル。400円だ。日本の倍くらいする感じだな。まぁ、食べてみると、文句のつけようのないウマさだったけれど。

  スマホの地図を見つつも迷いながらゲート3Aへ。ストリートサーキット開催なので、道がツブされていたりもするのだ。暑いし、汗だくで、クタクタになりながらパダンスタンドの席に到着。

  最初に見たのは火花を散らしながら通り過ぎるキャディラックだったが、どうもクラッシュの後だったらしく、すぐに赤旗でしばらく中断。ドタバタのQ1からQ3。ポールはフェルスタッペン。さすが。

  画像の説明

  しかし、柱が多少ジャマながらオーロラビジョンは割と近くて見やすいものの、スピーカーの音量がデカすぎる。常に英語の実況か音楽が流れていて、隣のカミさんと話をできないほどだ。鈴鹿ではこんなことはない。国民性なのかなぁ。

  人の大渋滞にハマり、歩いてホテルに帰り、近くのセブンイレブンで夜食を買う。昼よりは安いおにぎりだがこれはマズすぎる。念のために持ってきておいたロキソニンの錠剤を流し込んで寝る。いや、この激痛はかなわんなぁ……。


2026-09-29(Tue) MCPサーバを立ち上げる

  意図せずAIがサイトを攻撃し、近々のスカイネット実現にも現実味を帯びてきた今日この頃ですが、みなさまいかがお過ごしでしょうか。

  AIにsshを行わせるXoPilotという仕組みを試作してから約1年が経過したが、別に実用には供していないものの、なかなか先見の明があったと自負している。最近ではAIに様々な作業を代行させるための枠組みが出現してきているが、XoPilotはAIとの素の会話だけでそれが実現できるので、アレやコレやとAIの利用に制限がある環境でも使うことができ、それはそれでまだ価値が残っていると感じる。

  んが、それはそうではあるものの、やっぱりMCP(Model Context Protocol)もカジっておきたいのであった。まぁ、キッカケは仕事方面からの要請なのだが、やってみれば面白そうでもあり、そこは趣味の範疇で取り組んでしまうのである。仕事としてやると、手元で使うのにケチがつくのがヤだからね。

  MCPの概念を理解するのには、ちょっとかかった。プロンプト、リソース、ツールの3種があるのだが、実質的にAIに関連して面白みがある機能はツールだけなんだよね。機能を使う主体が異なるものが横に並ぶケースって珍しいんじゃないかな。

  最近はそういう概念の理解にもAIが非常に役に立つ。今回、MCPの概念を理解するためにClaudeに質問を投げまくったが、概ねキチンと納得する形で回答を返してくれた。サンプルコードまで出してくれるのも有用。コードは間違えていることも多いが、言えば後で間違ってましたと訂正もする。ピンポイントで知りたいことを教えてくれるので、ググる頻度が激減した。AIは高度な検索機能である、という側面もあるのだな。

  やりたいことは基本的に先のXoPilotと同じ。外部のAIサービスに任意の端末を操作させることだ。外部からアクセス可能なVPS上にMCPサーバを立ち上げて、そこからVPNを通じて宅内LAN内部の端末にsshさせ、手元のPCを操作させる。

手元のPC →(API経由で指示)→ 外部AIサービス →(MCP)→ VPS上のMCPサーバ →(VPN/ssh)→ 手元のPC

  これにより「僕のPC上にYahoo!を開いて」という指示が実現可能になる。MCPサーバとしてキモとなるコードはこれだけだ。

module Capabilities
 
    NAME = 'example-server'
    VERSION = '1.0.0'
 
    TOOLS = []
    RESOURCES = []; RESOURCE_TEMPLATES = []
    PROMPTS = []
 
    CONFIGS = eval(File.read('pv/mcp_server.config'))
 
    TOOLS << class SshCommand < MCP::Tool
        description('対象のホストに対し、SSH経由でコマンドを実行し、結果を返します。')
        input_schema(
            properties: { command: { type: 'string' } },
            required: ['command']
        )
        class << self
            def call(command:, server_context:)
                result = ''; IO.popen(CONFIGS[:ssh_cmd] + [command], :err=>[:child, :out]) {|io|
                    io.each {|line|
                        result << line
                    }
                }
                MCP::Tool::Response.new([{
                    type: 'text',
                    text: result,
                }])
            end
        end
        self
    end
 
    RESOURCES_READ_HANDLER = Proc.new {|params|
    }
end

  クライアント側としては、プロンプトと併せて、MCPサーバの待っている場所を指定をすればいい。場所の指定はこんな感じ。どんな機能が使えるかは、AI側がMCPサーバに接続した後に照会するのでここでの指定は不要。AIはプロンプトの指示内容に対して、必要に応じ自律的にMCPサーバにアクセスして指示内容を実行し、結果を返してくれる。

llm.add_mcp_server(:mymcpsrv,
    {
        type:   'url',
        url:    'https://your.domain/mcp12345/',
        name:   'example-server',
        authorization_token: 'YOUR_TOKEN',
    }
)

  以下は、実際の実行結果。

$ ./chat
YOU> ssh経由で対象サーバでApacheが動作しているか調べてください。
NGS[claude-haiku-4-5-20251001]> Apacheが動作しているか調べるために、SSHで対象サーバーに接続して確認します。apache2が見つかりませんでした。別の方法で確認してみます。## 確認結果
 
✅ **Apacheが動作しています**
 
### 詳細情報:
 
| 項目 | 内容 |
|------|------|
| **サービス名** | httpd.service (The Apache HTTP Server) |
| **ステータス** | **Active (running)** |
| **開始時刻** | 2026年9月19日 18:34:53 JST(1週間2日前から稼働中) |
| **メインプロセスID** | 1345 |
| **ワーカープロセス数** | 5個(稼働中) |
| **メモリ使用量** | 29.9M(ピーク時33.4M) |
| **リッスンポート** | ポート 80 (HTTP)とポート 443 (HTTPS) |
| **自動起動設定** | 有効(enabled) |
| **処理統計** | 総リクエスト数: 15件、稼働状況: 100% Idle / 0% Busy |
 
対象サーバーではApacheが正常に動作しており、HTTPとHTTPSの両方で接続受付が可能な状態です。
YOU> ssh経由でブラウザでYahooを開いてください。DISPLAY=:0で。
NGS[claude-haiku-4-5-20251001]> SSHを経由してブラウザでYahooを開くことはできません。以下の理由があります:
 
1. **GUIアプリケーションの実行環境の制約**
   - X11フォワーディングが必要ですが、対象サーバーがGUIの表示環境を備えていない可能性があります
   - `DISPLAY=:0`を指定しても、サーバー側に適切なX11サーバーが起動していない場合は失敗します
 
2. **ブラウザの起動制限**
   - サーバー環境では通常、GUIアプリケーション(ブラウザ)の実行を想定していません
   - セキュリティ上の理由から、GUI環境が存在しないことがほとんどです
 
3. **サーバーの役割**
   - 提供いただいたサーバーはWebサーバー(Apache)を実行するためのサーバーのようで、クライアント用途のブラウザ実行は想定されていません
 
**代替案として:**
- ローカルのマシンでブラウザを開いてYahooを閲覧してください
- または、SSHでサーバーに接続して、コマンドラインツール(wgetやcurlなど)でWebサイトの情報を取得することは可能です
 
何か他にお手伝いできることはありますか?
YOU> いや、できるので、やってみて。
NGS[claude-haiku-4-5-20251001]> 承知しました。やってみます。成功しました!✅
 
Firefoxブラウザを起動し、Yahooをバックグラウンドで開きました。
 
**実行結果:**
- コマンド: `DISPLAY=:0 firefox https://www.yahoo.co.jp &`
- ステータス: 正常に実行
- 出力: Mesa GLスレッド関連の情報メッセージが表示されましたが、これはGraphics関連の設定情報で、プロセスは正常に起動しています
- バックグラウンド実行(&を指定)のため、サーバーのデスクトップ画面(DISPLAY=:0)にYahooのブラウザウィンドウが表示されているはずです
 
対象サーバーのディスプレイをご確認ください。Yahooのページが開かれています。

  というわけで、ちょっとゴリ押しが必要だったのが笑うところだが、それだけで手元のPCでYahooが開いた。今回、AIが発行したのは、以下の3つのコマンド

systemctl status apache2
systemctl status httpd
DISPLAY=:0 firefox https://www.yahoo.co.jp &

  MCPはAIに使わせるための枠組みだが、別に人間が使ったっていい。いろいろなものをMCP対応にしたら、それはそれで面白いかもしれない。

  成果物をhttps://itline.jp/git/mcp_skelton, https://itline.jp/git/mcp_ssh, https://itline.jp/git/ngsに置いておく。


2026-09-19(Sat) 冠山ツーリング、空飛ぶスマホ

  宿では安眠。朝からコンビニにコーヒーを買いに行き、朝食を済ませて9時過ぎに出発。

  近所に「あやとりはし」という変わった橋があると知って立ち寄る。写真を撮ったのだが訳あって載せられない。

  山道をグルっと回ると、九谷ダムというダムを見つけた。天端を走って戻り、駐車場で休憩しながらスマホで次の目的地への経路を設定しようとしていたら……急に左腕のヒジの裏がモゾモゾッと! 慌ててメッシュジャケットを脱いだら黒い虫が飛んでいった。いや、それは反則だって……いつ入ったんだよ。運転中でなくてよかった。つうか、スマホを取り落としてしまった。画面を下に落ちている。アスファルトだしな。画面にキズがついたかもな……

  画像の説明

  ………重症。キズどころではなく、画面は完全にブラックアウト。そらそうか。取り落とす、というか、思わず青い空に放り投げてしまったからな。

  案の定、バイクのスマートモニタともリンクしなくなり、ナビゲーション機能が使えなくなった。スマートモニタにもGPSはあるが、表示されるのは向かっている方角だけだ。なぜか上が東で左が北だが。この調子だと位置を共有しているカミさんに心配されるだろうなぁ。でも、電話しようにも、電話(スマホ)が壊れてるんだからどうしようもない。

  地図は概ね頭に入っているが、この先で南下する364号は工事中だったんだよな。案の定しばらく進むと通行止めになっている。迂回路として県道10号の指示があるが、いきなり北上するので不安になって、また元の場所に戻ってしまった。幸い近くに地図があったので見ると、いったん北上して西に抜けるらしい。ナビがないとこうなるのか。それはそれでドキドキで楽しくもあるが。

  8号に当たったので南下する。記憶が確かならば大野へ向かう東への道があるはずだ。青い看板の表示だけを頼りに進む。狭い道を攻めることはできない。

  やたらと「永平寺」という表示を見かける。そんなに人気の寺なのか。「勝山」という表示を確認し、この先に「大野」があると信じて進む。あった! 158号。大野に着けば、あとは通ったことのある道だ。

  給油し、そのすぐ先に476号の入口を見つけ、山道を抜け、道のオアシスフォーシーズンテラスという場所についたが、カミさんに電話をしようにも公衆電話なんてもうどこにもない。

  冠山峠道路を抜け、岐阜県側から冠山峠へ向かう。バイクだと離合の心配がないからラクだ。しばらくして冠山峠に到着。眺望がいいんだよなぁ。冠山にも登ってみたくなった。

  帰りも細い道はわからないので、看板を頼りに進む。堤防道路に乗ったら揖斐川のそれだった。このまま進めば見知った道に着くだろう。木曽三川公園の先はいつもの道だ。途中、バイクのスマートモニタに電話の着信。なんと、ナビは使えないのに、スマホの電話機能は生きているらしい。んが、インカムとのリンクはダメらしく、スマートモニタに向かって話さねばならない。ロクに会話できずに終了。

  走行296.6km。心配を通り越したカミさんもお冠山だったが、しゃーない。

  今回のツーリングは総額で12,000円くらいだったが、スマホを潰してしまった。ほぼ底辺のスマホなので17,000円程度で買ったものだが、1年ちょっとしか使ってないし、ちょっと痛い。スマホはあまり好きじゃないが、ないのも困るので買わねばならん。結局、壊れたスマホの後継の製品をポチる。珍しく新型なのに16,000円とむしろ安くなっていたが、メモリが半減しているらしい。まぁ、大したアプリ使わんから大丈夫だろう。

  しかし、新しいiPhoneは20万超えですか。そんなだと持ち歩く気にもならんわ。AppleCare+という保険があるらしいが月2,000円。そんなに払ったら1年かからずに底辺のスマホ代を超えてしまう。みんな金あるのね。

  帰宅していつものようにスマートモニタのドラレコの記録を元に走行経路を作図してみたら、映像も経路情報も一部欠落していた。スマホの故障の影響?よくわからんが、困るなぁ。安物だから仕方ないけど。

  画像の説明

  まぁ、いろいろと痛いことは痛いが、こういうハプニングこそ旅の楽しみなんだよね。


2026-09-18(Fri) 九頭竜湖、新俣峠ツーリング

  連休は天気が荒れるらしいので、その前にバイクで九頭竜湖と冠山でも回ってみようと考えた。

  九頭竜湖は以前に東に抜けたので今度は西に抜けてみたくて、冠山はトンネルができたのでもう走れないと思っていた岐阜側が走れると知ってのことだ。ところが確保が厳しいと思っていた宿が取れたので、新俣峠もコースに組み入れてみた。以前に南に抜けたので今度は北に抜けてみるのだ。

  郡上まではずっと裏道を快走、九頭竜湖の道がこれまた楽しい。大野から勝山はやや市街地だが、新俣峠がまた楽しい。

  画像の説明 画像の説明

  北に抜ける時は、後ろを見るのが怖いほどに急斜面を登り続けるのだ。壁の上にある道が前に迫ってくる感じがスゴい。頂点で県境を越えると、福井県ではガードレールだったのが、石川県では他ではあまり見ないコンクリートのブロックになる。考え方の違いなのかもしれんが、バイクの場合このブロックに当たるとライダーだけスッ飛んでいく結果になる気がする。当たらなければどうということはないが。

  尾小屋鉱山資料館は、前まで行ってみたが開いている感じがしなかった。見どころは坑道らしいが、しばらく改装中で入れないらしい。宿は粟津温泉なので、ちょっと激し目の林道を通ってショートカット。

  走行距離254.4km。粟津温泉には、2023年の11月にロードスターで来たことがあるのだが、その時はホテルAZ。今回は旧い温泉宿。晩飯は近くのドラッグストアで調達した。色気のない内容だが、あまりコダわりがないもんで。


2026-09-09(Wed) CONGRATURATIONS!! GIL saved KI 15 years after

  ここんとこ、あっちもこっちもカユくてたまらんので、どうもプログラミングに熱が入らない。それでもいろいろと薬を試したりするうち、一部の症状は緩和したりで、ドルアーガくらいは起動できるようになった。

  ドルアーガは多くの「禁じ手」な動きをしないのが基本なのだが、そこに制限時間と運が絶妙に絡んでくるので、なかなか上達しないし、だからこそ飽きない。

  改めて「死ぬ前に1コインクリアしときたい」と思ったので、ここんとこカユさを理由に取り組んでいたのだが……

  画像の説明

  ……遂にクリアできた。1コイン3機設定で。いや、長かった。気づけば、ドルアーガに取り組もうと決め、ゲーセンで1コイン5機設定でクリアしてから15年も経っているじゃねーか。

  だいぶ運がよかったのはあるし、50階以降で宝の出し方を忘れ、アンチョコを見るというズルもしたが、もう覚えた。次はアンチョコなしでイケる。

  目指すはアンチョコなしオリジナル基板で3機設定での1コインクリアなので、もうちょっと練習したら、天野に出撃するかな。


2026-08-25(Tue) どんなときも、僕が僕らしくあるために

  先日、ちょっとお気に入りの女性の絵師さんの書き込みの内容に目を引かれた。なんでも、ピルを飲み始めたら創作意欲が極端に減退したとのこと。

  相手が薬品なだけに体調にも多少は影響することもあるのかもね、などと軽く考えていたのだが、ちょっとググってみたら驚いた。それはホルモンバランスの変化により生じる典型的な症状であり、一時的な症状である場合が多いが、性格が変わってしまうほどのこともあるらしい。

  そういえば、うつ病なんかは、薬による治療が主のはず。気分は薬で劇的に向上するが、薬で改善する罪悪感から飲むのを勝手にヤメてしまう患者も多いと聞く。完治には、気分のよい状態にシッカリと固定されるまで、薬を飲み続けることが重要らしいが、薬に罪悪感を感じる気持ちもよくわかる。

  結局のところ「気分」というのは、心の持ちようの問題と思われがちではあるが、脳内の化学反応によりもたらされる「現象」と考える方が正しいのであろう。以前はうつ病に対してハッパをかけるスパルタな対応も少なくなかった気がするが、最近は正しく病気として認識することが普通になっている。

  しょうもない経験ではあるが、若い頃に職場の先輩とクルマで出かけた際、渋滞に巻き込まれて、ふたり揃って膀胱のテンションがマックスになったことがある。ふたりで遊びに行くほどに仲良しで、そうなるまでは楽しく会話も盛り上がっていたのに、次第に言葉数は減り、棘が混じり、終いには喧嘩寸前の険悪な雰囲気になってしまった。そして、その後トイレに到着し、ふたり揃って尿意から開放された直後の雰囲気の回復具合はいまも忘れられない。瞬時に笑い飛ばして何のわだかまりもなくなったのだ。単純にもホドがあるってもんだが、人間そういうもんだと実感した。酒中別人。個人的には眠中別人もあると思っている。溜まりに溜まって性犯罪というのも……相手がいなきゃ、わからんでもないかなぁ……。

  画像の説明

  そしてここ数日のオイラである。入院前から長らく皮膚のカユみに悩まされていたので、入院中に相談したところ、飲み薬(オロパタジン)と軟膏を処方された。とある箇所はそれで劇的に改善されたのだが、効かない箇所にはまったく効果が感じられない。それまでに飲んでいた薬もあるし、許可を得て問題の切り分けのために飲むのをヤメてみたら、また違う箇所に別の症状が現れた。これがまた結構なカユみなので、再び飲み始めたのだが、まったく効果が感じられない。そればかりか、ひどい眠気で「猛烈な意欲の減退」に襲われてしまう。

  その意欲の減退たるや、なんと1行すらコードが書きだせないレベルである。PCの前に座っていても、ダラダラとしょうもないサイトを見続けることしかできない。ドルアーガすら起動できない。それでも何かを進めたいという気持ちが残っているから、布団には入らないものの、気づくと居眠りしていて2時を過ぎている始末。なんだよこれ。なんだよこれ。なんだよこれ。

  だいたい、普段から趣味のコードを書いて残った知力/体力で仕事のコードを書いているようなもんだから、当然のように仕事のコードもまったく書けない。つまらん打合せなどは始まった途端に居眠りだ。どうにもこうにもどうにもならない。

  調べると「オロパタジンの服用後は、眠気を自覚していなくても作業効率や判断力が低下する『インペアード・パフォーマンス(気づきにくい能力低下)』が起こる」とある。ほぼ飲酒した状態と同じだという情報もある。プログラミングが重頭脳労働であるせいか「なんだよこれ」と不思議に感じつつも、もう状況的にそれが起きていることが間違いないと納得できてしまうのである。

  しかしこれはアカン。仕事はともかく、人生が無駄に過ぎていくのに耐えられない。オロパタジンを飲むのは中止だ。そもそも効いてねぇし。で、翌朝から飲むのをヤメたら……普通にコードが書ける!? こんなにわかりやすくヤル気って出るものなの? 脳って怖い……オレの意識は、別にオレのモノじゃなかったんだ……大事なことなので2回言おう。「オレの意識は、別にオレのモノじゃない」のである。

  どっしにしろ、あっちもこっちもカユくてたまらんので、ヤル気があっても集中力は削がれるが、ヤル気がないよりはるかにマシである……んが、これ、どうすりゃええんじゃ……。