Connpass MCP服务器
Connpass MCP Serverconnpass 使用API获取IT学习会和事件信息的Model Context Protocol(MCP)服务器。
机能
- get_user_attended_events -获取用户参与事件
- get_group_events -获取组事件列表
- list_available_groups -可用组浏览
- 搜索事件位置 -使用地区关键字搜索事件
- 搜索_事件_关键字_或 -在“或”条件下搜索关键字
- 列表_可用_特性 - 検索可能な都道府県一覧表示
安装,安装
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 # 環境変数(要作成)有关详细的体系结构 建筑.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()使用解码器注册新函数
详情 建筑.md 来修改标记元素的显示属性。
许可证
该项目在MIT许可证下发布。
貢献
欢迎错误报告、功能请求和拉式请求。
重要限制和注意事项
API访问限制
- 汇率限制:每秒最多1个请求(超访问导致HTTP 429错误)
- 认证必须:所有API端点都需要API密钥
- 测试时连续运行多个API会受到限制,所以请空出间隔运行
常见错误和处理方法
未找到HTTP 404
エラー: HTTP 404: {"detail": "Not Found"}- 原因:如果指定了不存在的用户名
- 対処:验证并重新运行正确的connpass用户昵称
HTTP 429请求太多
エラー: HTTP 429: {"detail": "Too many requests."}- 原因:每秒发送多次API请求
- 対処:请空出1秒以上的间隔再执行
HTTP 401未经授权
- 原因:无效的API密钥或未设置
- 対処:
.env请确认文件的API密钥
安全性
- 注意安全管理API密钥,不要将其提交给公共存储库
- 本项目不是connpass的官方项目
附录
项目创建命令
uv init commpass_mcp_server --python python3.13
source .venv/bin/activate
uv add "mcp[cli]>=1.13.1" httpx python-dotenv