chouseisan-mcp
by soyalumno
README.md
# chouseisan-mcp
調整さん(chouseisan.com)をAIエージェントやCLIから読み書きする、ローカルMCPサーバーです。
## できること
| MCPツール | 用途 |
|---|---|
| `chouseisan_create_event` | イベントを作成 |
| `chouseisan_get_event` | イベントと出欠表を取得 |
| `chouseisan_add_response` | 新しい回答を登録 |
| `chouseisan_update_response` | 名前が完全一致する回答を更新 |
| `chouseisan_delete_response` | 名前が完全一致する回答を削除 |
## 注意事項
調整さんには公式APIがないため、このツールはWebサイトで使われている非公式HTTPプロトコルを直接利用します。調整さん側のHTMLや通信仕様が変わると動作しなくなる可能性があります。イベント作成・回答登録・回答更新・回答削除は実データに影響するため、実行対象を確認してから使用してください。
## セットアップ
Node.js 18以降が必要です。
```bash
git clone https://github.com/soyalumno/chouseisan-mcp.git
cd chouseisan-mcp
npm install
```
### Claude Code
グローバル設定(`~/.claude.json`)の `mcpServers` に追加すると、全プロジェクトで使えます。
```json
{
"mcpServers": {
"chouseisan": {
"type": "stdio",
"command": "npx",
"args": ["tsx", "/absolute/path/to/chouseisan-mcp/src/mcp_server.ts"],
"env": {}
}
}
}
```
特定プロジェクトだけで使う場合は、そのプロジェクトの `.mcp.json` に同じ内容を書きます。
設定後、新しいClaude Codeセッションを開始すると `chouseisan_*` ツールが利用可能になります。
### Codex
`~/.codex/config.toml` の `[mcp]` セクションに追加します。
```toml
[mcp.chouseisan]
type = "stdio"
command = "npx"
args = ["tsx", "/absolute/path/to/chouseisan-mcp/src/mcp_server.ts"]
```
## CLI
```bash
# イベント作成
npx tsx src/cli.ts create --title "懇親会" --memo "候補日を選んでください" --dates "7/25(土) 19:00〜,7/26(日) 19:00〜"
# イベント取得(テキスト表)
npx tsx src/cli.ts get "https://chouseisan.com/s?h=<hash>"
# イベント取得(JSON)
npx tsx src/cli.ts get "<hash>" --json
# 回答登録
npx tsx src/cli.ts respond "<hash>" --name "山田" --marks "○,×" --comment "25日希望です"
# 回答更新(省略した項目は既存値を維持)
npx tsx src/cli.ts update "<hash>" --name "山田" --marks "△,○"
npx tsx src/cli.ts update "<hash>" --name "山田" --comment "予定が変わりました"
# 回答削除
npx tsx src/cli.ts delete "<hash>" --name "山田"
```
入力できる出欠記号は `○`(`◯` / `o` / `O` / `1`)、`△`(`2`)、`×`(`x` / `X` / `3`)、`-`(`0` / 空文字)です。
This server cannot be deployed
Maintenance
ActivityStale
ResponsivenessNo issues