自プロセスの stdin から 1 行取得 (server 用)
mcp_stdin_read_line var, buflen
var : 結果を格納する文字列変数 buflen : バッファサイズ
(プラグイン / モジュール : hspmcp.dll)
自プロセス (HSP3CL) の stdin から改行区切りで 1 行読み取ります。 HSP3CL を MCP server として動かす際、親プロセス (Claude Desktop 等) から JSON-RPC リクエストを受け取るために使います。 ブロッキング読み: stdin に入力が来るまで戻ってきません。 戻り値: >=0 : 読めたバイト数 -1 : EOF または error
| mcp_stdout_write | 自プロセスの stdout に書き込む (server 用) | (hspmcp.dll) |
| プラグイン / モジュール | hspmcp.dll |
| バージョン | 1.0 |
| 作成日 | 2026-04-14 |
| 著作者 | IronHSP / hspmcp |
| URL | https://github.com/inovia/IronHSP |
| 備考 | hspmcp.dll は HSP からは扱いづらい以下の処理を C++ で隠蔽します:
* CreateProcess + 匿名 pipe で子プロセスを spawn * 子プロセス stdin/stdout を行単位で読み書き * バックグラウンド reader thread + 内部 line buffer * 自プロセスの stdin/stdout (HSP3CL を MCP server として動かすとき) 主に Anthropic Model Context Protocol (MCP) の stdio transport 実装に使うために作りましたが、汎用の "process pipe wrapper" として 他の用途にも使えます (子プロセス起動 + パイプ通信が必要な任意の場面)。 HSP からは package/win32/common/iron_mcp_client.hsp と iron_mcp_server.hsp を include して使うのが推奨です。 |
| タイプ | 拡張命令 |
| グループ | hspmcp ― server side stdin/stdout |
| 対応環境 |
|
| hs ファイル | hsphelp\hspmcp.hs |