内容
- API を公開していない社内 Redmine サーバーから効率的にチケット情報を検索したい
- playwright をバックボーンに実装された fetcher-mcp ツールを修正して、ログインを行ったブラウザを、そのまま表示してチケット検索できるようにした
- 効率的にチケット検索をするために AI Agent の "指示書" を用意した
- このツールを業務で試しており、私に対する質問は、確認する手間を減らして回答できるようになってきている
MCP ツール
fetcher-mcp に2つの修正を与えた。
-
fetch_url/fetch_urls
ツールのスキーマにclosePage
フィールドを追加しました。このフィールドにより、ログインのためにブラウザのページを開いたままにできます。この機能はデバッグモードで動作します -
上記の変更により、各ツール呼び出し後にブラウザが閉じられなくなったため、
close_browser` ツールを追加しました。これで、いつでもブラウザを閉じることができます
指示書
vscode のワーススペースには以下のような指示書:instructions.md
を配置して、"チケット番号" や "wiki" のワードから適当な URL を組み立てさせている。extractMainContent
をデフォルトの true
だと、取得情報の欠損が生じたため、明示的に false
を指示している。チケット一覧の5ページの検索結果をまとめてくれれば、だいぶ助かるため、このようにしている。
# 検索、情報のまとめ方
* GitHub
* PR や Issue のコメントを参照します。
* Acsmine
* Acsmine のチケット検索をつかいます
* ほかには wiki ページを参照します。
* `https://example.com/redmine/projects/<project>/wiki`
# Acsmine のチケット検索
* チケットを参照するには、以下の URL を使用します。
* `https://example.com/redmine/issues/<チケット番号>`
* チケットのキーワード検索には以下の URL を使用します。
* `https://example.com/redmine/projects/<project>/search?issues=1&page=<検索結果のページ>&q=<キーワード>`
* `fetcher_mcp` の `extractMainContent` は `false` に設定してください。
* 1 ページから 5 ページまでの検索結果を取得してください。
用例
質問
-
#fetch_url 307307 のチケット内容をみたい。ログインのためにページを開いて。
-
ログインを行ったので、再度取得して
回答
{
"url": "https://example.com/redmine/issues/307307",
"debug": true,
"waitForNavigation": true,
"extractContent": false,
"closePage": false
}
ログインページが表示されています。ログイン情報を入力してください。
質問
wiki からリリース手順の項目を調べて
回答
Agent の実行時の詳細は記載しないが、closePage = true
として、2回ツールを使った結果、いい感じに wiki ページからリリース手順をまとめてくれた。
素晴らしい!Wikiページの検索でリリース手順に関する専用のWikiページが見つかりました。
fetcher_url (MCP Server)
完璧です!**Prod環境のデプロイフロー(リリース手順)**の詳細なWikiページを見つけました。このページには本格的なリリース手順が記載されています。
📋 Prod環境のデプロイフロー(リリース手順)の概要
🔧 事前準備
開発環境の構築
prodデータベースへの接続
prod AWSアカウント内のIAM
🚀 デプロイ手順
dev環境デプロイ
**** のコミットを先にdev環境で実行
prod自動デプロイ停止
**** から「Disable Auto Deploy」を押下
releaseブランチ整理
試験不十分な機能のrevert処理
***さん(もしくは他の運用メンバー)によるコミット確認
データベースマイグレーション実行とデプロイジョブ開始
ローカルからマイグレーション実行
「ビルド実行」を押下してデプロイ開始
#300947チケットと併せてPMにSlack報告
⚠️ トラブルシューティング
デプロイが長引く場合の連絡ルール
📚 関連リンク
PM確認項目: 運用項目一覧
deployチーム・レビュワー: スケジュール検討
Releaseブランチ整理参考: Release_ブランチの整理
これが探していたリリース手順の詳細な内容です!
気づき
extractMainContent = true
では、以下のように情報欠損がおきるので、false
で運用したほうがよいかもしれない
Prod環境のデプロイフロー: 運用項目一覧
PMによる確認項目の確認が終わったら、Wikiページにまとめる必要があります。その他の詳細は運用フローセクションを参照してください。