Roo CodeでContext7を使う
Dockerを立てる
- wsl2からDockerfileを読み取り、ビルドする
- Dockerfileを好きなところに置く
FROM node:18-alpine
WORKDIR /app
RUN npm install -g @upstash/context7-mcp@latest
CMD ["context7-mcp"]
- dockerをビルド
- cd /mnt/c/[Dockerfileの親ディレクトリまでのパス]
- docker build -t context7-mcp .
Rooの設定
- rooでcontext7を使う
- roo側でwsl内のdockerを読んでcontext7を実行してくれる
- 3点リーダーを押す→mcpサーバーを押す→グローバルmcpを編集を押すと下記のファイルを編集できる
C:\Users\[Username]\AppData\Roaming\Code\User\globalStorage\rooveterinaryinc.roo-cline\settings\mcp_settings.json
alwaysAllowは自由で
{
"mcpServers": {
"context7": {
"command": "wsl",
"args": [
"bash",
"-c",
"docker run -i --rm context7-mcp"
],
"transportType": "stdio",
"alwaysAllow": [
"resolve-library-id",
"get-library-docs"
],
"disabledTools": []
}
}
}
Rooで使ってみる
uvの使い方 use context7
- をプロンプトとして入力
- context7が使用できていそうな場合は導入完了
もしかしたら、WSLのDNS変えないとだめかも
- context7の外部との通信がDNSによって阻害されるかも
- nameserver 10.255.255.254 だと阻害されるかも
- sudo nano /etc/wsl.conf
[network]
generateResolvConf = false
- sudo nano /etc/resolv.conf
nameserver 8.8.8.8
nameserver 1.1.1.1
- wslの再起動
- exit
- wsl --shutdown
- wsl
未確認
- Roo MarketplaceのMCPからもcontext7を導入できるが、どうやって導入しているのか分からないので触っていない。こちらのほうが簡単そう
参考