使用说明
Developer.events MCP服务器🎯
单二进制MCP服务器,零依赖!
使用Go构建的本地MCP(模型上下文协议)服务器,提供从以下位置访问开发人员会议CFP的权限 开发者事件.
🚀 快速开始
立即尝试-公共实例
无需安装! 连接到公共托管实例:
Claude桌面配置 (~/Library/Application Support/Claude/claude_desktop_config.json):
{
"mcpServers": {
"developer-events": {
"url": "https://developer-events-mcp-54127830651.europe-west2.run.app"
}
}
}
重新启动Claude Desktop并开始询问CFP!
此服务器可以在中运行 两种模式:
模式1:本地(stdio)-适用于克劳德桌面
- 配置Claude桌面
添加到您的Claude Desktop配置中:
macOS: ~/Library/Application Support/Claude/claude_desktop_config.json
窗户: %APPDATA%\Claude\claude_desktop_config.json
{
"mcpServers": {
"developer-events": {
"command": "/full/path/to/mcp-server"
}
}
}
-
重新启动克劳德桌面
-
开始使用!
尝试以下查询:
- “哪些CFP将在未来7天内关闭?”
- “向我展示具有开放式CFP的Java相关会议”
- “查找法国会议的CFP”
- “列出本周闭幕的人工智能会议CFP”
模式2:HTTP服务器-用于云部署
部署为任何人都可以连接的web服务,而无需安装任何东西!
部署到Google Cloud Run
- 构建并推送容器:
# Set your GCP project
gcloud config set project YOUR_PROJECT_ID
# Build and deploy in one command
gcloud run deploy developer-events-mcp \
--source . \
--platform managed \
--region us-central1 \
--allow-unauthenticated \
--memory 256Mi
- 获取您的服务URL:
gcloud run services describe developer-events-mcp --region us-central1 --format 'value(status.url)'
- 从克劳德桌面连接:
更新配置以使用部署的端点(或使用此README顶部的公共实例):
{
"mcpServers": {
"developer-events": {
"url": "https://your-service-url.run.app"
}
}
}
本地HTTP模式
以HTTP服务器的身份在本地运行以进行测试:
MODE=http PORT=8080 ./mcp-server
# Or let Cloud Run set PORT automatically
PORT=8080 ./mcp-server
Docker构建
docker build -t developer-events-mcp .
docker run -p 8080:8080 developer-events-mcp
其他云平台
Docker镜像可以在任何支持容器的平台上运行:
- AWS ECS/Fargate:部署容器
- Azure容器应用:
az containerapp create - Fly.io:
fly launch - 铁路:连接GitHub仓库
⚡ 为什么?
- ✅ 真正的原生二进制文件 -无需运行时!
- ✅ 即时启动 -毫秒,而不是秒
- ✅ 内存占用空间小 -~10-20MB
- ✅ 单文件分发 -只需下载并运行
- ✅ 跨平台 -Linux、macOS(英特尔和苹果硅)、Windows
📦 下载并在本地运行
二进制安装
从下载最新版本 发布.
Linux(x86_64):
curl -L https://github.com/shelajev/developer-events-mcp/releases/latest/download/developer-events-mcp_Linux_x86_64.tar.gz | tar xz
./developer-events-mcp
macOS(苹果硅):
curl -L https://github.com/shelajev/developer-events-mcp/releases/latest/download/developer-events-mcp_Darwin_arm64.tar.gz | tar xz
./developer-events-mcp
macOS(英特尔):
curl -L https://github.com/shelajev/developer-events-mcp/releases/latest/download/developer-events-mcp_Darwin_x86_64.tar.gz | tar xz
./developer-events-mcp
窗户:
下载 developer-events-mcp_Windows_x86_64.zip 从 发布 并提取。
🔧 可用工具
1. list_open_cfps
列出所有当前开放的开发者会议论文征集。
参数:
limit(可选,默认值:20):最大结果数
例子:
显示下一个10个打开的CFP
2. search_cfps_by_keyword
通过会议名称和CFP链接中的关键字搜索开放的CFP。非常适合查找与技术相关的会议(例如“java”、“python”、“kubernetes”)或会议系列名称。
参数:
keywords(必填):在会议名称和链接中搜索的关键字列表limit(可选,默认值:20):最大结果数
示例:
查找名称中包含“Java”或“JVM”的打开的CFP
向我展示标题中包含“AI”或“机器学习”的会议
搜索与Kubernetes相关的CFP
3. find_closing_cfps
查找在指定天数内即将关闭的CFP,可选择按关键字筛选。
参数:
daysAhead(可选,默认值:7):展望未来的天数keywords(可选):按会议名称中的关键字筛选
示例:
哪些CFP将在未来7天内关闭?
显示未来14天内关闭的Java相关CFP
查找本周闭幕的人工智能会议CFP
4. search_cfps_by_location
按地点/国家搜索开放的CFP。
参数:
location(必填):要搜索的位置(例如,“法国”、“美国”、“柏林”、“在线”)limit(可选,默认值:20):最大结果数
示例:
查找法国会议的CFP
向我展示具有开放式CFP的在线会议
柏林的哪些会议有开放的CFP?
🛠️ 从源头构建
先决条件
- 转到1.21或更高版本
为当前平台构建
go build -ldflags="-s -w" -o developer-events-mcp main.go
为所有平台构建
./build-all.sh
这将在中创建二进制文件 bin/ 用于:
- Linux(x86_64,ARM64)
- macOS(英特尔、苹果硅)
- Windows(x86_64)
📊 演出
| 度量 | 值 |
|---|---|
| 二进制大小 | ~7MB |
| 启动时间 | <10ms |
| 内存使用量 | ~10-20MB |
| 运行时依赖关系 | 无 |
🏗️ 建筑
- 语言: 转到1.24
- MCP-SDK: github/modelcontextprotocol/go-sdk v1.2.0
- 运输: 双模
- 用于本地Claude Desktop的stdio(标准输入/输出)
- 用于云部署的HTTP流(流式HTTP)
- 缓存: 内存中(1小时TTL)
- HTTP客户端: 本地Go net/http
- 集装箱: 多阶段Docker构建(~15MB最终镜像)
📡 数据源
- APIhttps://developers.events/all-cfps.json
- 社区驱动,定期更新
- 目前共有约2785个CFP,约305个开放
- 缓存1小时以减少API负载
🔒 安全
- 除了Go标准库和MCP SDK之外,没有外部依赖关系
- 仅限HTTPS的API调用
- 没有持久存储的数据
- 在用户空间中运行(不需要提升权限)
- 静态编译的二进制文件
🐛 故障排除
二进制文件无法执行(macOS)
macOS可能会隔离下载的二进制文件。删除隔离属性:
xattr -d com.apple.quarantine mcp-server
权限被拒绝(Linux/macOS)
使二进制文件可执行:
chmod +x mcp-server
Claude Desktop看不到服务器
- 验证您是否正在使用 完全绝对路径 在配置中
- 配置更改后重新启动Claude Desktop
- 检查克劳德桌面日志:
- macOS:
~/Library/Logs/Claude/ - 窗户:
%APPDATA%\Claude\logs\
- macOS:
服务器在第一次请求时似乎很慢
第一个请求从开发者.events API获取并缓存数据。后续请求将是即时的(从1小时缓存中提供)。
📝 用例
每日提醒代理
制定每日例行检查CFP:
早上好!查看未来10天内关闭的Java、Kubernetes或云相关CFP
扬声器配置文件匹配
设置与您的演讲配置文件相匹配的主题过滤器:
查找以下CFP:kubernetes、docker、云、devops、terraform
基于位置的规划
计划会议演讲之旅:
向我展示欧洲所有开放的CFP
查找2026年第二季度在美国举行的会议的CFP
最后一分钟的机会
寻找紧急机会:
哪些CFP将在未来三天内关闭?
🌍 支持的平台
预构建的二进制文件可用于:
- ✅ Linux x86_64
- ✅ Linux ARM64(Raspberry Pi、AWS Graviton等)
- ✅ macOS x86_64(英特尔)
- ✅ macOS ARM64(苹果硅M1/M2/M3)
- ✅ Windows x86_64
📚 响应格式
每个CFP结果包括:
{
"conference": "Conference Name",
"location": "City (Country)",
"cfpDeadline": "MMM-DD-YYYY",
"daysRemaining": 30,
"conferenceDate": "YYYY-MM-DD",
"cfpLink": "https://...",
"conferenceWebsite": "https://...",
"status": "open"
}
🤝 贡献
欢迎投稿!拜托:
- 克隆该仓库
- 创建要素分支
- 进行更改
- 提交拉取请求
📄 许可证
麻省理工学院
🙏 学分
- MCP协议: Anthropic
- Go SDK: 模型上下文协议团队和谷歌
- API数据: developers.events社区
- 内置: Go,官方MCP SDK
内置于❤️ 使用Go和官方的模型上下文协议SDK
需要帮助?打开问题或查看上面的故障排除部分。