Click on "Install Server".
Wait a few minutes for the server to deploy. Once ready, it will show a "Started" state.
In the chat, type
@followed by the MCP server name and your instructions, e.g., "@Connpass MCP Serversearch for upcoming Python events in Tokyo"
That's it! The server will respond to your query, and you can continue using it as needed.
Here is a step-by-step guide with screenshots.
Connpass MCP Server
Connpass MCP Server は、connpass API を使用してIT勉強会やイベント情報を取得する Model Context Protocol (MCP) サーバーです。
機能
get_user_attended_events - ユーザーの参加イベント取得
get_group_events - グループのイベント一覧取得
list_available_groups - 利用可能なグループ一覧表示
search_events_by_location - 地域・キーワードでのイベント検索
search_events_by_keyword_or - OR条件でのキーワード検索
list_available_prefectures - 検索可能な都道府県一覧表示
セットアップ
1. 環境構築
git clone https://github.com/tyukei/commpass_mcp_server.git
uv venv --python python3.12
source .venv/bin/activate
uv sync2. 環境変数の設定
.env.example ファイルをコピーして .env ファイルを作成し、Connpass API キーを設定:
CONNPASS_API=your_connpass_api_key_here注意: Connpass API キーの取得方法については、Connpass API ドキュメントを参照してください。
3. サーバーの起動
python src/main.py使用例
ユーザーの参加イベント取得
await get_user_attended_events("nickname", start=1, count=10)グループのイベント取得
await get_group_events("LLMCraft", start=1, count=10)地域でのイベント検索
await search_events_by_location(prefecture="沖縄", start=1, count=10)キーワードでのイベント検索
await search_events_by_keyword_or("LLM", start=1, count=10)テスト
テストスクリプトを実行してAPIの動作を確認できます:
# ユーザー関連のテスト
uv run python tests/test_user.py
# 場所検索のテスト
uv run python tests/test_location.py
# レート制限のテスト
uv run python tests/test_rate_limit.py注意: レート制限テストは実際のAPIを使用するため、完了まで数秒かかります。
MCP クライアントでの使用
このサーバーは MCP(Model Context Protocol)に対応しているため、MCP クライアント(Claude Desktop など)から利用できます。
Claude Desktop での設定例
{
"mcpServers": {
"connpass": {
"command": "python",
"args": ["/path/to/commpass_mcp_server/src/main.py"],
"env": {
"CONNPASS_API": "your_api_key_here"
}
}
}
}ファイル構成
commpass_mcp_server/
├── src/
│ ├── __init__.py # パッケージ初期化
│ ├── main.py # MCPサーバーエントリポイント
│ ├── config.py # 設定・定数管理
│ ├── errors.py # エラーハンドリング
│ ├── api_client.py # Connpass API クライアント
│ └── tools.py # MCPツール実装
├── tests/
│ ├── __init__.py
│ ├── test_user.py # ユーザー関連テスト
│ └── test_location.py # 場所検索テスト
├── pyproject.toml # プロジェクト設定
├── README.md # このファイル
├── ARCHITECTURE.md # アーキテクチャドキュメント
└── .env # 環境変数(要作成)詳細なアーキテクチャについては ARCHITECTURE.md を参照してください。
開発
新しいグループの追加
src/config.py の GROUP_MAPPING 辞書に新しいグループを追加:
GROUP_MAPPING = {
"LLMCraft": 16032,
"新しいグループ名": グループID
}※ グループIDはconnpassのグループページのURLから取得可能です。
新しい機能の追加
src/api_client.pyに新しいAPIエンドポイントのメソッドを追加(必要な場合)src/tools.pyに新しいツールのロジックを追加src/main.pyで@mcp.tool()デコレータを使用して新しい関数を登録
詳細は ARCHITECTURE.md を参照してください。
ライセンス
このプロジェクトは MIT ライセンスの下で公開されています。
貢献
バグ報告や機能リクエスト、プルリクエストを歓迎します。
重要な制限事項と注意点
APIアクセス制限
レート制限: 1秒間に1リクエストまで(過剰アクセスでHTTP 429エラー発生)
認証必須: すべてのAPIエンドポイントでAPIキーが必要
テスト時は複数のAPIを連続実行すると制限に引っかかるため、間隔を空けて実行してください
よくあるエラーと対処法
HTTP 404 Not Found
エラー: HTTP 404: {"detail": "Not Found"}原因: 存在しないユーザー名を指定した場合
対処: 正確なconnpassユーザーのニックネームを確認して再実行
HTTP 429 Too Many Requests
エラー: HTTP 429: {"detail": "Too many requests."}原因: 1秒間に複数回のAPIリクエストを送信
対処: 1秒以上の間隔を空けてから再実行してください
HTTP 401 Unauthorized
原因: 無効なAPIキーまたは未設定
対処:
.envファイルのAPIキーを確認してください
セキュリティ
APIキーは安全に管理し、公開リポジトリにコミットしないよう注意してください
本プロジェクトはconnpassの公式プロジェクトではありません
Appendix
プロジェクト作成コマンド
uv init commpass_mcp_server --python python3.13
source .venv/bin/activate
uv add "mcp[cli]>=1.13.1" httpx python-dotenvThis server cannot be installed
Resources
Unclaimed servers have limited discoverability.
Looking for Admin?
If you are the server author, to access and configure the admin panel.