📢 Webサイト閉鎖と移転のお知らせ
このWebサイトは2026年9月に閉鎖いたします。
新しい記事は移転先で追加しております。(旧サイトでは記事を追加しておりません)

 
(同じ利用者による、間の3版が非表示)
129行目: 129行目:
<br>
<br>
package.jsonファイルを編集して、ES Modulesを有効化する。<br>
package.jsonファイルを編集して、ES Modulesを有効化する。<br>
* typeキー
*: typeキーを省略する場合は、commonjs (CommonJS形式) となる。
** moduleを指定する場合
*: ES Modules形式 (import/export構文) を使用する場合に設定する。
**: この場合、.jsファイルがESM形式として扱われ、importやexport文を使用できる。
** commonjsを指定する場合
**: CommonJS形式 (require() / module.exports構文) を使用する場合に設定する。
**: Node.jsの従来の方式である。
<br>
  <syntaxhighlight lang="json">
  <syntaxhighlight lang="json">
  {
  {
   "name": "<任意の名前  例 : mcp-server>",
   "name": "<任意の名前  例 : mcp-server>",
   "version": "1.0.0",
   "version": "<任意のバージョン  例 : 1.0.0>",
   "type": "module",
   "type": "module",
   "scripts": {
   "scripts": {
145行目: 154行目:
  </syntaxhighlight>
  </syntaxhighlight>
<br>
<br>
==== Python + FastMCPを使用する場合 ====
==== Python + FastMCPを使用する場合 ====
Pythonと仮想環境をインストールする。<br>
Pythonと仮想環境をインストールする。<br>
198行目: 208行目:
  # 方法 2 (a) : Bash / Zsh
  # 方法 2 (a) : Bash / Zsh
   
   
  function cd()
  function check_venv()
  {
  {
    builtin cd "$@"
    # 新しいディレクトリに仮想環境が存在するか確認
     if [ -d "venv" ]; then
     if [ -d "venv" ]; then
      # 既に仮想環境がアクティブでない場合のみアクティベート
       if [ -z "$VIRTUAL_ENV" ]; then
       if [ -z "$VIRTUAL_ENV" ]; then
           source venv/bin/activate
           source venv/bin/activate
      # 異なる仮想環境に切り替える場合
       elif [ "$VIRTUAL_ENV" != "$PWD/venv" ]; then
       elif [ "$VIRTUAL_ENV" != "$PWD/venv" ]; then
           deactivate
           deactivate
           source venv/bin/activate
           source venv/bin/activate
       fi
       fi
    # venvディレクトリが存在しない場合、アクティブな仮想環境があれば無効化
     elif [ -n "$VIRTUAL_ENV" ]; then
     elif [ -n "$VIRTUAL_ENV" ]; then
       deactivate
       deactivate
     fi
     fi
  }
  }
function cd()
{
    builtin cd "$@"
    check_venv
}
# プロンプト表示前に毎回チェック
PROMPT_COMMAND="check_venv${PROMPT_COMMAND:+;$PROMPT_COMMAND}"
# シェル起動時にもチェック
check_venv
  </syntaxhighlight>
  </syntaxhighlight>
<br>
<br>
* プロジェクトディレクトリに入った時のみ自動的にアクティベートする方法
* プロジェクトディレクトリに入った時のみ自動的にアクティベートする方法
*: ~/.config/fish/config.fishファイルに記述する。
*: Fishを使用している場合は、以下に示す2つのファイルに設定を追加する。
*: ~/.config/fish/config.fish
*: ~/.config/fish/functions/check_venv.fish
  <syntaxhighlight lang="fish">
  <syntaxhighlight lang="fish">
  # 方法 2 (b) : Fish
  # 方法 2 (b) : Fish
   
   
  function cd
  # ~/.config/fish/config.fishファイル
    # 現在アクティブな仮想環境のパスを記録
  check_venv
    set -l prev_venv "$VIRTUAL_ENV"
   
    builtin cd $argv
   
   
    # 新しいディレクトリに仮想環境が存在するか確認
# ~/.config/fish/functions/check_venv.fishファイル
function check_venv --on-variable PWD --on-event fish_prompt
     if test -d "venv"
     if test -d "venv"
      # 既に仮想環境がアクティブでない場合のみアクティベート
       if test -z "$VIRTUAL_ENV"
       if test -z "$VIRTUAL_ENV"
           source venv/bin/activate.fish
           source venv/bin/activate.fish
      # 異なる仮想環境に切り替える場合
       else if test "$VIRTUAL_ENV" != "$PWD/venv"
       else if test "$VIRTUAL_ENV" != "$PWD/venv"
           deactivate
           deactivate
           source venv/bin/activate.fish
           source venv/bin/activate.fish
       end
       end
    # venvディレクトリが存在しない場合、アクティブな仮想環境があれば無効化
     else if test -n "$VIRTUAL_ENV"
     else if test -n "$VIRTUAL_ENV"
       deactivate
       deactivate
     end
     end
end
function cd
    builtin cd $argv
  end
  end
  </syntaxhighlight>
  </syntaxhighlight>
518行目: 535行目:


== クライアント接続設定 ==
== クライアント接続設定 ==
==== Claude Desktopからの接続 (STDIO) ====
MCPサーバの設定ファイルの保存場所は、以下の通りである。<br>
Claude Desktopの設定ファイルを編集する。<br>
<br>
<br>
* MacOS / Linuxの場合
* MacOS / Linuxの場合
526行目: 542行目:
* Windowsの場合
* Windowsの場合
*: %APPDATA%\Claude\claude_desktop_config.json
*: %APPDATA%\Claude\claude_desktop_config.json
<br>
==== Claude Desktopからの接続 (STDIO) ====
Claude Desktopの設定ファイルを編集する。<br>
<br>
<br>
設定ファイルの内容を編集する。<br>
設定ファイルの内容を編集する。<br>
583行目: 602行目:
  </syntaxhighlight>
  </syntaxhighlight>
<br>
<br>
SSH鍵認証を設定しておくことが推奨される。<br>
また、以下に示すように、公開鍵認証を設定しておくことが推奨される。<br>
ssh-keygen -t ed25519 -C "mcp-client"
# まず、ローカルPC上でRSA形式のSSH鍵ペアを生成する。<br>現在推奨されるRSA鍵の長さは4096ビットである。
ssh-copy-id username@remote-server-ip
#: <pre>ssh-keygen -t rsa -b 4096 -C "mcp-client"</pre>
# 次に、公開鍵をリモートPCに転送する。<br><code>ssh-copy-id</code> コマンドを実行することにより、簡単に設定することができる。
#: このコマンドは、リモートPCのパスワード認証を使用して接続し、公開鍵を自動的に ~/.ssh/authorized_keys ファイルに追加するものである。
#: <pre>ssh-copy-id -i ~/.ssh/id_rsa_mcp.pub <ユーザ名>@<IPアドレス または ホスト名></pre>
<br>
環境によっては、<code>ssh-copy-id</code> コマンドが利用できない場合がある。<br>
その場合は、以下に示すコマンドで手動で公開鍵を転送することができる。<br>
cat ~/.ssh/id_rsa_mcp.pub | ssh <ユーザ名>@<IPアドレス または ホスト名> "mkdir -p ~/.ssh && cat >> ~/.ssh/authorized_keys"
<br>
更に、リモートPC側で権限を設定する必要がある。<br>
ssh <ユーザ名>@<IPアドレス または ホスト名> "chmod 700 ~/.ssh && chmod 600 ~/.ssh/authorized_keys"
<br><br>
<br><br>