Kintone MCPをCursorで触ってみる
以下のような記事を見かけたので、早速自分でもやってみる。
kintone MCPサーバー触ってみた|倉林 一範
記事ではClaude Desktopで検証されているけれど、こっちではCursorで。
前提条件
- Node.jsがインストールされていること
- Cursorエディタが使用可能であること
- Kintoneアカウントへのアクセス権限があること
インストール手順
1. MCPサーバーのインストール
公式ドキュメント(GitHub - kintone/mcp-server: kintone official MCP server)に従い、Kintone MCPサーバーをグローバルにインストールする。
npm install -g @kintone/mcp-server
2. Cursorの設定ファイルの編集
Cursorの設定ファイル(settings.json)に以下の設定を追加。
※変数は各自の環境に合わせていただきたい
{ "mcpServers": { "kintone": { "type": "Stdio", "command": "kintone-mcp-server", "args": [ "--base-url", "https://yourdomain.cybozu.com/", "--username", "yourname", "--password", "yourpassword", "--basic-auth-username", "basic-auth-username", "--basic-auth-password", "basic-auth-password" ], "cwd": "${cwd}", } } }
3. 設定項目の説明
| 項目 | 説明 | 例 |
|---|---|---|
base-url |
KintoneのドメインURL | https://yourdomain.cybozu.com/ |
username |
Kintoneのユーザー名 | yourname |
password |
Kintoneのパスワード | yourpassword |
basic-auth-username |
ベーシック認証のユーザー名(必要な場合) | basic-auth-username |
basic-auth-password |
ベーシック認証のパスワード(必要な場合) | basic-auth-password |
動作確認
CursorのAIパネルから以下のように動作確認してみる:
Kintoneに接続し、「〇〇」アプリのIDを取得して
正常に動作すれば、Kintoneアプリの情報が取得できるはず。
例えば以下のように。

お、できた出来た……と思いつつ、さて何に使おう。思い当たるところではやっぱりデータの分析あたりかな。
セキュリティに関する注意事項
参考リンク
大量のPDFファイルのパスワードを一括解除するメモ
同一のパスワードで保護された大量のPDFファイルを見る……という必要が生じ、いちいち開いてパスワード入力して、というのもだるいのでどうにか省力化できないか、ということを調べていたらQPDFというツールがあることを知ったのでメモ。
1.準備
まずは公式からバイナリを落としてきいてインストールする。
GitHub - qpdf/qpdf: qpdf: A content-preserving PDF document transformer
2.PATHを通す
Powershellで使うため、PATHを通す。
$ENV:Path=";C:\Program Files\qpdf 11.9.1\bin"
※当然だが、インストール先によって変更する必要がある。
3.スクリプト
以下スクリプトを流して一気にパスワードを解除する。
※パスワードが解除された状態で末尾に”_output”が付与されたPDFファイルが作成される。
Get-ChildItem "(PDF保存元フォルダへのPATH)" -Filter *.pdf -Recurse |ForEach-Object {qpdf --decrypt --password=(パスワード) $_ "$_-output.pdf"}
プログラマだったらここでPythonなりでコード書いて……とやるのかもしれないのだけど、個人的にはこっちのほうが手っ取り早いので。。
IX2215でフレッツ光クロス・v6プラス接続
ようやく我が家もフレッツ光クロスのサービスエリアとなり、折角だからと乗り換えてみることにした。
これまでもフレッツ光ネクスト・v6プラス接続(固定IP契約なし)で使っていたのだけど、ルータ側の設定を微妙に変える必要があるとのことで、メモ。
以下の記事を参考にした(といっても、ほぼ設定ガイドのconfigをコピペしただけなのだが…)
NEC IX2215を使ってフレッツ光クロスでIPoE+固定IP接続 #IPoE - Qiita
v6プラス(MAP-E方式)設定ガイド : UNIVERGE IXシリーズ | NEC
フレッツ光クロスでは、ひかり電話の契約が無くてもDHCPv6-PD接続である必要がある。そのため、設定ガイドの「設定例3」を参考にする。
ネットワークは非常に単純なもので、以下のような感じ。

configは以下を流しこむ。
まずはIX2215からIPv4,v6双方にpingが通ればOK。
# ping6 google.co.jp
Looking up ipv6 address for "google.co.jp" ...Success
PING 240b:251:e260:5700:260:b9ff:fef9:6dc1 > 2404:6800:400a:813::2003 56 data bytes
64 bytes from 2404:6800:400a:813::2003 icmp_seq=0 hlim=119 time=9.817 ms
64 bytes from 2404:6800:400a:813::2003 icmp_seq=1 hlim=119 time=7.064 ms
Looking up ipv4 address for "google.co.jp" ...Success
PING 14.11.226.96 > 142.250.206.195 56 data bytes
64 bytes from 142.250.206.195: icmp_seq=0 ttl=121 time=9.070 ms
64 bytes from 142.250.206.195: icmp_seq=1 ttl=121 time=9.715 ms
速度測定してみると以下のような感じ。
※もちろんLAN側が10Gに対応していないので、今のところあまり恩恵は感じないのだが。。。

bashでログイン時に色々だそう
「何を今更」かもしれないが、はじめに確認しておこう。
大雑把にいってしまうとLinuxにログインした際、一般には以下の順序で設定が読み出される。
① /etc/profile(全てのユーザに適用される)
② ~/.bash_profile(ログインユーザに適用される)
③(②がなければ)~/.bash_login(ログインユーザに適用される)
④(②も③もなければ)~/.profile(ログインユーザに適用される)
というわけで、ログインユーザ別に環境変数なりを設定したい場合、~/.bash_profileに色々と書いていくのが常道だろう。
ところで.bash_profileはシェルスクリプトでもある。ということは、ログイン時にコンソールへ色々と出力することも可能、ということだ。
というわけで、検証機(Alma Linux)の~/.bash_profileをこんな風に書いてみた。
ほら、ログイン時にホストが正しいか、とか見えたほうがいいじゃないですか。人間って間違える生き物だし。
# .bash_profile
# Get the aliases and functions
if [ -f ~/.bashrc ]; then
. ~/.bashrc
fi# User specific environment and startup programs
echo -e "\e[33m------------------------------------------------------------------- \e[m"
echo [hostname]:`hostname`
echo -e "\e[33m------------------------------------------------------------------- \e[m"
echo "[IP/mask(enp03s)] `ip a show dev enp0s3 2>/dev/null|grep inet |cut -d " " -f 6`"
echo -e "\e[33m------------------------------------------------------------------- \e[m"
echo "[Filesystem]"
df -h |egrep --color=never '^/|Filesystem'
echo -e "\e[33m------------------------------------------------------------------- \e[m"
echo "[User and Processes]"
w
echo -e "\e[33m------------------------------------------------------------------- \e[m"echo "あなたはシステム管理者から通常の講習を受けたはずです。
これは通常、以下の3点に要約されます:#1) 他人のプライバシーを尊重すること。
#2) タイプする前に考えること。
#3) 大いなる力には大いなる責任が伴うこと。"
echo -e "\e[33m------------------------------------------------------------------- \e[m"PATH=$PATH:$HOME/bin
export PATH
実際、ログインした際は以下のように表示される。

.bash_profileに色々書くべきではない、という流派もあるは存じあげているけれど、これはこれでちょっと楽しい。
Alma-LinuxでLAMP環境を構築
最近、仕事の関係でAlma Linuxの構築を行うことがあったので手順メモ。
前提条件
・AlmaLinux-8.4-x86_64-minimalを利用する。
・DBはMariaDB利用とする。
・PHPは7.4系を利用とする。
・OSインストール~NW接続までは割愛
Apacheインストール
DBインストール
#dns intall maria
PHPインストール
#dnf module list php(インストールが可能なPHPバージョンの確認)
※デフォルトでは以下のよう7.2がデフォルトとなっているはず。
AlmaLinux 8 - AppStream
Name Stream Profiles Summary
php 7.2 [d] common [d], devel, minimal PHP scripting language
php 7.3 common [d], devel, minimal PHP scripting language
php 7.4 common [d], devel, minimal PHP scripting language
#dnf module reset php(モジュールの選択を一端初期化)
#dnf module enable php php:7.4(php7.4を利用可能とする)
#dnf module list php(設定が変更されたことのの確認)
AlmaLinux 8 - AppStream
Name Stream Profiles Summary
php 7.2 [d] common [d], devel, minimal PHP scripting language
php 7.3 common [d], devel, minimal PHP scripting language
php 7.4 [e] common [d], devel, minimal PHP scripting language
※上記の通り、OSインストール直後でも7.2~7.4系が利用できるのはありがたい。8系を利用したい場合は別途remiリポジトリを導入する必要があるが。
#dnf install php(PHPをインストールする)
PHP 7.4.6 (cli) (built: May 12 2020 08:09:15) ( NTS )
Copyright (c) The PHP Group
Zend Engine v3.4.0, Copyright (c) Zend Technologies
with Zend OPcache v7.4.6, Copyright (c), by Zend Technologies
phpMyAdminインストール
※これは好みに応じて
#dnf -y install https://rpms.remirepo.net/enterprise/remi-release-8.rpm
(標準ではphpMyAdminはリポジトリに含まれていないため、remiを導入)
#vi /etc/yum.repos.d/remi.repo
(標準ではenabled=0となっていると思われるが念の為確認、リポジトリが有効となっている場合は無効にしておこう)
#dnf --enablerepo=remi install phpmyadmin(phpMyAdminインストール)
Windows7でOffice365を利用していると「ライセンス状態の確認で問題が発生しました」などと言われる
はじめに身も蓋もないことをいってしまえば、これはバッドノウハウであるし「サポートはとっくの昔に切れているのだからWindows10に移行しろ早く!」という話である。とはいえそうもいかないことだってある。
Windows7でOffice365を利用していると、ある日こんなメッセージが表示されるようになることがある。


表示にしたがって「サインイン」なり「再試行」を行うと今度は「申し訳ございませんが、アカウントに接続できません。」なんて表示される。おかしい、ネットワークはちゃんとつながっているしProxyだってちゃんと通しているはずなのに。
お察しの通り、これはOffice365(もうMicrosoft365と言わねばならないか)側がTLS1.2での接続を必須としたことが一つの――たいていの場合主要な――原因である。
ならば、とKBをあててみたりインターネットオプションを見直したりしてみても解決しない。おかしい。TLS1.2は有効になっているはずなのに……
と、色々調べてようやく「レジストリを編集せねばならない」ということに気がついた。Windowsのこういうところが本当に嫌い。設定項目は全部見えるところに置いてほしい。
今回は上記を参考に、以下のレジストリキーをGPOで追加することとした。
・パス:KEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Windows\CurrentVersion\Internet Settings\WinHttp
・キー名(DWORD):DefaultSecureProtocols
・値:0x00000a00
※TLS1.1、1.2の両方を有効にした。正直、TLS1.2のみにした場合の影響がまだ見えないのだ……残念なことながら。
レジストリキーが追記されたことを確認したら、再起動しExcel(でもWordでもなんでもいいのだが)を立ち上げると、無事表示が消えたことを確認できる。
※再度ログイン操作をしなくてもいいのは助かる。
結論としては「さっさとWindows10にしろ!」である。いやまったく、仰る通り。
PCデスクを改造してみよう
今現在自宅で利用しているPCデスクはまだ学生時分に勝ったもので、下手をするとそろそろ15年以上経過する、という代物である。
デスクというものは構造な単純なだけに滅多に壊れるものでもない。よほどのことがなければ買い替えるということもない。
横幅1100(mm)、奥行き600(mm)となかなかの大きさがあるので気に入ってはいたのだが、高さが天板の高さが700(mm)と個人的には少し気に入らない。
買い替える、という手段もなくはないが今回は思い切って「DIYで改造する」という手段をとってみることにした。
・使っていたデスク
型番も品名も忘れてしまったが、通販で購入したものだ。おおよそ画像のようなデザインである。

・構想
①引き出し式のテーブルを設置しキーボード台とする。
②折角だから足元に棚でも作って収容を増やしたい。
これを満たすために次のようなプランを考えた。
・現在のデスクの両サイドに板を貼る。
・両サイドに張った板を土台として、棚板を置く。
・設計
各所の寸法を測って設計(というか検討)を行っていく。
最近はDIY用のCADソフトなんてものもある。便利に使わせていただいた。

・作成
検討が済んだところで、近所のホームセンターへ材料等を買いに行こう。
ホームセンターで実際の木材をみつつ、費用や手間もかんがみて当初想定から少し変更することにした。*1
寸法を測っているときに懸念となったのが、天板を支えている桁をフレームに止めているねじの頭だ。わずか数mm出ているために干渉してしまい板をフラットに貼れない。

どうしたものか考えていたのだが、結局電動ドライバのビットの一種として木工用ヤスリというものを発見。こいつで干渉する部分を削ることにした。電動ドライバ本体は、数年前にカインズホームで購入したもの。

あとは粛々とねじ止めしていく。
・完成


奥行き350(mm)×幅910(mm)という中々の大きさのスライドテーブルができた。フルで引き出すと揺れがひどいので、半分程度まで引き出して使う、というのが安定しそうだ。

デスク下の棚はL2スイッチがぴったり収まる。
必要とした材料は1800×350×18の桐集成材を2枚と910×350×18の桐集成材が1枚。
材料費だけで言えば5000円程度である。
DIYで自分好みに作っていくというのは、なんというか純粋に面白いし快楽がある。
*1:デスク両サイドに張る板は当初「サイド全面に張る」つもりだったが「天板から350(mm)の高さ」にサイズを変更した。
USBデバイスをBluetooth化してみよう
最近マウスをBluetooth接続のものに変えてみたのだが、これが非常に便利だった。
なんとなく無線接続というものを信用していなかったのだけど、これは認識を改めなければいけない。
こうなってくるとキーボードも無線化して机の上のケーブルを少なくしてみたい。
とはいえ今のキーボードは10年近く愛用しているものであるしそう簡単に変えられない。さてどうしよう、USBデバイスをBluetooth接続に変換するようなコンバータ的ものはなかろうか、と調べていたらやはり世の中同じようなことを考える人はいるもので

あった。
Amzonで\6,900と、なんとなくキーボード本体にこの金額足せばBloutooth接続のキーボードを新しく買っても変わらないのではないか、という気がしなくものない値段ではあるのだがそもそも大量生産しているものでもないらしく仕方ない。
接続してみるとこんな感じ。

キーボードはFILCOの黒軸を愛用している。打鍵感が個人的に好みだ。
お察しの通り、こいつはUSB給電しないといけないので結局ケーブルが削減されることはなく、何か本末転倒な感じもする。
モバイルバッテリーでも動くようなので、細身のものを調達してキーボードに本体と一緒に張り付ける、といったことを考えた方がいいかもしれない。そういった「自分の使い勝手がいいように工作する」ということに苦がないユーザ向けのデバイスだともいえる。
この手のデバイスに手を出すような層であれば接続方法やペアリングについて悩むこともないだろう。組み立て済みの製品なので開封してからほぼノータイムで利用できる。
手元の環境では検証していないが、最大3台までペアリングできるそうな。
というわけで気になった方はいかがだろうか。
BIT TRADE ONE USB HID Bluetooth変換アダプタキット USB2BT 組立済み ADU2B02P
- 発売日: 2018/06/15
- メディア: Personal Computers
「通信のモニタリング」に関するお話
今日のネット(というかtwitter界隈)で以下のような話がちょっと話題になった。
これを踏まえて、「違法である」とか「有線電気通信法の通信の秘密」といった話題も出てきたので(加えてこの話題にいっちょ噛みしてしまったので)、改めて調べつつ覚書程度に残しておきたい。
なお、私は法学の徒ではないし法律を専門に勉強したこともない。一介の素人である。この文章の記述を参考にして損害を受けたとか言われても、そのなんというか、困る。*1
まずは「有線電気通信法」について。
「有線電気通信法」(以下「同法」)では第二条でその定義が示される。
第二条
この法律において「有線電気通信」とは、送信の場所と受信の場所との間の線条その他の導体を利用して、電磁的方式により、符号、音響又は影像を送り、伝え、又は受けることをいう。
2 この法律において「有線電気通信設備」とは、有線電気通信を行うための機械、器具、線路その他の電気的設備(無線通信用の有線連絡線を含む。)をいう。
この条文からして社内ネットワーク(私設LAN)は「有線電気通信設備」と言えそうだ。「送信の場所と受信の場所との間の線条その他の導体を利用して、電磁的方式により、符号、音響又は影像を送り、伝え、又は受け」ているのだし。
ちなみに同法では第三条で「有線電気通信設備を設置しようとする者は(中略)総務大臣に届け出なければならない。」と規定される。なんだかここだけ読むと「LANを敷設するときも届け出がいるのか?」と思ってしまいそうだが、同条4項にはこう続く。
4 前三項の規定は、次の有線電気通信設備については、適用しない。
(中略)
三 設備の一の部分の設置の場所が他の部分の設置の場所と同一の構内(これに準ずる区域内を含む。以下同じ。)又は同一の建物内であるもの(第二項各号に掲げるもの(同項の総務省令で定めるものを除く。)を除く。)
ここで「第二項」には「二人以上の者が共同して設置するもの」とか「他人の設置した有線通信設備と相互接続」とか「他人の通信の用に供するもの」とあるので、なんだか私設のLANについては「届け出が不要な有線通信設備」と捉えてよさそうだ。
さて、そして同法第九条には次のように記述される。
有線電気通信(電気通信事業法第四条第一項又は第百六十四条第三項の通信たるものを除く。)の秘密は、侵してはならない
というわけで「LANとはいえ有線電気通信である。有線電気通信である以上その通信の秘密を侵してはならない。法律にもそう書いてある。Q.E.D」で話は終わりそうなものだが、そんな簡単かつ平和に終わらないのが世の常である。
少し古いが、そしてweb閲覧ではなく電子メールのやり取りにかかわる部分だが、二つの判例を引いておきたい。一つは「電子メール・プライバシー事件」と呼ばれる事件の判例(2001年12月03日)である。
ここで裁判所は以下のような判断を行っている。
従業員が社内ネットワークシステムを用いて電子メールを私的に使用する場合に期待し得るプライバシーの保護の範囲は、通常の電話装置における場合よりも相当程度低減されることを甘受すべきであり、職務上従業員の電子メールの私的使用を監視するような責任ある立場にない者が監視した場合、あるいは、責任ある立場にある者でも、これを監視する職務上の合理的必要性が全くないのに専ら個人的な好奇心等から監視した場合あるいは社内の管理部署その他の社内の第三者に対して監視の事実を秘匿したまま個人の恣意に基づく手段方法により監視した場合など、監視の目的、手段及びその態様等を総合考慮し、監視される側に生じた不利益とを比較衡量の上、社会通念上相当な範囲を逸脱した監視がなされた場合に限り、プライバシー権の侵害となると解するのが相当である。
(太字部引用者)
「社会通念上相当な範囲を逸脱」というのがなかなか厄介である。なんだか相応の立場にあるものによる監視であれば許容されるようなニュアンスにも読める。
もう一つは「日経クイック情報(電子メール)事件」と呼ばれるものだ。
ここでは裁判所は以下のような一般論を述べる。
(企業が労働者に対して懲戒処分を行うための)調査や命令も、それが企業の円滑な運営上必要かつ合理的なものであること、その方法態様が労働者の人格や自由に対する行きすぎた支配や拘束ではないことを要し、調査等の必要性を欠いたり、調査の態様等が社会的に許容しうる限界を超えていると認められる場合には労働者の精神的自由を侵害した違法な行為として不法行為を構成することがある。
これを踏まえて「社内における私用メール利用の調査について違法性はなかった」という判断が続くのであるが「社会的に許容しうる限界」という語がここでもでてきた。なんだかなんとでも解釈できる気がしてきた。
5-4 私の会社 では、社員が送受信したメールを上司がチェックしているようです。こういうことは許されるのですか。また、家族のメールを勝手にのぞき見るのはいけないことなのでしょうか。
○ 会社内のネットワークにおいては、電気通信事業法上の通信の秘密の保護が及ぶものではありませんが、有線電気通信法の適用の有無が問題となる可能性があります。
なにがなんだかわからなくなってきた。
今の時代、大部分の会社ではproxyなりを入れているのだろうしその気になれば「誰が何を」見ているかなんていくらでも追跡できる。社内(組織内)のネットワーク/システム管理者の立場的には「できれば業務と関係ないネットの閲覧やメールのやり取りはやめてよね(セキュリティ的なリスクもあるんだし)」、というのが本心ではないかと思う。
実際の運用としては就業規則に記述したり社内教育をしたり、つまるところは個人の「良識」に委ねているところも多いだろう。
とはいえ、職業倫理――なんて大仰なものではなく、人としてという感覚かもしれないが――として「なにかことが起こるまではログを取っているだけ」、という管理者が多いのではないだろうか。「なにかことが起こる」なんて来ないことを祈りつつ。
Magicmouse2をwindows10で使おう
先日、「OSが起動しなくなってしまった」というiMac(2013 Late)の27インチモデルを手に入れた。リカバリーまで試してみたがどうにもダメだという。
とはいえ、インターネット復元から起動することはできたのでディスク故障では?ということで物は試しと一度分解し、SSDに換装してみたところ使えるようになった。

利用したSSDは安定のcrucialだ。
いずれメモリも増設したい。
モデルがモデルだけにBig Surは対応していないが実用上は問題なさそうである。というわけで現在我が家はwindowsマシン(10年近く前に組んだ自作機)とiMac、という2台体勢である。あとThinkpadもいるか。
とはいえ使い分けをしているわけではない。もはや自己満足の世界だ。
MacといえばMagicmouseである。iPhoneの延長にあるかのような操作感はやはり感動する。どうせならこのマウスをWindowsでも使えると楽しい、ということで使えるようにしてみる。
・取り急ぎ使えるようにする
言ってもBluetoothのマウスなんだからペアリングできるでしょ、とWindows10の設定画面からBluetooth機器の探索を行ってみる、が見つからないと言われる。
というわけでBoot Camp用のドライバをインストールする。
※以下の記事も参考にした。
無事、ペアリングすることができた。

とはいえこのままでは「クリックはできるがスクロールができない」という半端な状態になる。昔の二つボタンマウスがBluetooth接続になっただけ、というのは少し困る。
・スクロールまでできるようにしよう
同じようなことをしている先人というのはいるもので、以下の記事のやり方でスクロール機能まで使えるようになった。
上記記事でも紹介されているbrigadier.exe、「オプションで指定した特定モデルのドライバをAppleのサイトから落としてくる」というダウンローダ的動きをするらしくネット接続環境は必須である点、注意が必要だろう。
あと、スクロールは使えるがいわゆるMagicmouseならではのジェスチャー機能は(当然?)使えない。それでも十分ではあるのだけど。


