作りたいものから選ぶ
| 作りたいもの | 方法 | 完成するもの |
| AIとの成果物・作業メモを残して再開 | 作業をまとめて保存・更新 | URLなしメモ、資料・動画・フォルダーのボタンと翌日の追記 |
| URLやPC操作のボタン | +Auto・AIボタン取り込み | 確認して保存するボタンの下書き |
| WebサイトやNotesの「LinkJumkeyに追加」 | 追加リンク | クリックで取り込みプレビューを開く実装。キー不要 |
| 顧客検索、CSV生成などの業務ツール | 外部スクリプトとDB | 入力を受け、データを処理し、結果を出す動くプログラム |
| 同じPCのツールから結果URLを保存 | ローカルAPI | タイトル・URL・保存先を指定して保存する処理 |
| AIに現在のライブラリを読ませる | MCP | AIアプリとの接続設定 |
たとえば「顧客番号でSQLiteを調べ、結果CSVを作る」は外部ツール開発です。ボタンのJSONだけを作っても、DBを検索するプログラムは完成しません。
入力・処理・出力・保存先を決める
- 入力: 検索語入力欄の文字を1つの値として受け取ります。PowerShellは
$env:LINKJUMKEY_INPUT、AppleScriptは on run argv の第1引数です。
- 処理: 対象DB、検索する列、0件やエラー時の動きを決めます。検索語をSQLやコマンドへ直接連結しません。
- 出力: CSVの保存先、HTMLの表示先、利用者へ伝える件数とエラーを決めます。
- LinkJumkeyへの保存: タイトル、完成済みURL、保存先プロジェクトを別々の項目として渡します。検索語をURLとして代用しません。
PCコードでは「検索語入力欄の内容をコードに渡す」をONにします。JSONの下書きでは passInput: true。前後の空白を除いた1つの文字列が届き、内側の改行は保持されます。空文字も扱い、8192文字超とNULは拒否します。
引数の受け取り方と例 · 入力契約の全文
完成例:顧客DB検索からCSV・レポートへ
Windows PowerShellから、同じPCのPythonプログラムへ検索語を渡します。Python標準のSQLiteで架空8顧客を検索し、PowerShellがCSVとHTMLを作ります。追加Pythonパッケージは不要です。
検索語 → PowerShell → ローカル顧客API → SQLite → CSV / HTML → 任意でLinkJumkeyへ保存
完成例をまとめてダウンロード(ZIP) 必要環境・実行手順・期待結果を読む
全ファイルを同じフォルダーに保存し、先にデモAPIを起動します。サクラ で2件、ガラス で1件。引用符、内部改行、SQLの記号も検索値として扱います。CSVはUTF-8 BOM付きで、数式として解釈される値をエスケープします。
結果URLは同じPCでデモAPIが動く間だけ開けます。スマホや別PCへ共有するURLではありません。業務DBへ置き換える時は、企業の認証・権限・項目・保存期間に合わせて作り直します。
接続先とキーを確認する
- Desktop 1.8.24以降で「≡(プロジェクト管理)→ ⚙設定 → MCP / AI連携 → ローカルAPI(開発者向け)」を開きます。
- 「接続先」をコピーします。通常は
http://127.0.0.1:9634。表示された値を優先します。
- 同画面の「ローカルAPIキーをコピー」を使います。初回起動時に自動作成されるキーで、MCP設定やペアコードとは別です。
- GET
/status で接続、認証付きGET /api/projects で保存先を確認します。
キーをAIチャットや配布コードへ貼りません。ツールのローカル設定や伏せ字の入力欄で利用者から受け取ります。公開Webサイトの追加ボタンなら、キーが不要な追加リンクを使います。
| パス | 用途 | 変更 |
| GET /status | 接続確認・認証不要 | なし |
| GET /api/projects | 保存先一覧・Bearer認証 | なし |
| POST /api/quick-add | HTTP/HTTPSの結果URLを保存・Bearer認証 | プレビューなしで直接保存 |
Base URLの後ろへ表のパスをそのまま付けます。末尾のスラッシュやクエリは足しません。既存の /library・/library/apply も利用できます。これらへ勝手に /api を足さないでください。
保存先の名前と成功応答を確認する
GET /api/projects の projects はオブジェクト配列です。名前は object.name(projects[i].name)から取り出します。オブジェクト全体を文字列化すると、正しいプロジェクト名になりません。
{"ok":true,"projects":[{"id":"prj_example","name":"顧客調査","rootId":"root_example"}],"projectNames":["顧客調査"]}
タイトル・URL・保存先を指定してPOSTします。名前は厳密一致です。半角/全角カナ、大小文字、空白を勝手に変えません。未知の名前はエラーになり、新規作成したい場合だけ createProject: true を明示します。projectId を使う時は project と併用しません。
{"title":"顧客検索結果","url":"https://crm.example/reports/123","project":"顧客調査","requestId":"customer-report-123"}
{"ok":true,"created":true,"replayed":false,"project":{"id":"prj_example","name":"顧客調査","rootId":"root_example"},"folderId":"root_example","button":{"id":"item_example","title":"顧客検索結果","url":"https://crm.example/reports/123","typeMode":"fixed"},"requestId":"customer-report-123","snapshot":"snapshot_example.json"}
成功時は ok: true と button.id、button.url、project.id/name を確認します。同じ操作を再送する時は同じrequestIdを使うと、直近256件の範囲で同じボタンが返ります。別内容へ同じキーを使うと409になります。
PowerShell 5.1では、日本語のある .ps1 / .psm1 をUTF-8 BOM付きで保存し、JSONは [Text.Encoding]::UTF8.GetBytes($json) と application/json; charset=utf-8 で送ります。1.8.24以降のAPI応答にもUTF-8が明示されます。
フィールド上限、folderId、再送、エラー応答の詳細 · OpenAPI(機械可読仕様)
同じPCで動くものとクラウドで動くもの
PowerShell、Python、AppleScriptなど、利用者のPCで動くツールはローカルAPIへ接続できます。Google Apps Scriptやクラウド版Power Automateの127.0.0.1はクラウド側の実行環境を指し、利用者のPCへ届きません。
クラウド側は利用者が開く追加リンクを作るか、PC側のツールがクラウドの結果を取得する構成にします。公開WebページからローカルAPIを直接呼ぶ方法はCORSで許可されません。
簡易API /api/quick-add が受け付けるのはHTTP/HTTPSです。Notesは追加リンクの確認画面を使います。Desktop 1.8.25以降でメモやローカルファイルをまとめて残す場合は、作業の一括保存を使い、ファイルを含む依頼をDesktopで確認して登録します。
よく使われる製品へ広げる候補
以下は次の実装候補です。この完成例で、これらの実サービスや実データへの接続を確認したものではありません。
| 候補 | 考えられる処理 | LinkJumkeyへ渡す方法 |
| Excel / VBA | 顧客番号を第1引数で受け、専用ブック内を検索 | Excelマクロの入力引数。編集可能なライセンスと対象ブックが必要 |
| Access・Excel + Power Automate for desktop | PC内の表やDBを処理し、PowerShellで結果URLを渡す | 同じPCのローカルAPI。Access操作・PowerShell実行の公式資料を基に設計する |
| Google Sheets + Apps Script | シートの値からレポートやURLを作る | 利用者が開く追加リンク、またはPC側ツールが結果を取得。Google公式のSheets連携入門を参照。クラウドからPCの127.0.0.1には接続しない |
AIへ渡す依頼文
Windowsで動く外部ツールを作ってください。
LinkJumkeyの検索語を受け取り、架空の顧客DBを検索してCSVとHTMLを出力します。
必要環境と配置手順も示し、検索語をSQLやコマンドへ直接連結しないでください。
結果URLを保存する場合は、プロジェクト一覧から名前を表示してidを選びます。
実キーや個人パスをコードへ固定しないでください。
空入力・0件・日本語・半角カナ・引用符・再送を試し、未実行の部分も報告してください。
仕様: https://linkjumkey.matsumotojoho.com/developers/external-tools.md
完成例: https://linkjumkey.matsumotojoho.com/examples/customer-search/README.md
MacならOSと実行言語を置き換えます。Excel/VBAには編集できるライセンスと対象ブックが必要です。作ったコードを渡す段階、実環境で動かした段階、LinkJumkeyから押した段階を分けて確認します。