详细分析 ▾
运行时依赖
版本
Token lifecycle management with refresh tokens via scripts/fulcra_auth.py. Humans authorize once — refresh tokens handle automatic re-auth. Includes status/token commands for cron-friendly usage.
安装命令 点击复制
技能文档
Give your agent situational awareness. With your human's consent, access their biometrics, sleep, activity, location, and calendar data from the Fulcra Life API.
什么 Enables
With Fulcra Context, you can:
- Know 如何 human slept → adjust morning briefing intensity
- See heart rate / HRV trends → detect stress, suggest breaks
- Check location → context-aware suggestions (home vs. office vs. traveling)
- 读取 日历 → proactive meeting prep, schedule awareness
- Track workouts → recovery-aware task scheduling
Privacy 模型
- OAuth2 per-用户 — human controls exactly 什么 data 您 see
- data stays theirs — Fulcra stores , 您 获取 读取 access 仅
- Consent revocable — 它们 可以 disconnect anytime
- NEVER 分享 human's Fulcra data publicly 没有 explicit 权限
Setup
选项 1: MCP Server (Recommended)
Use Fulcra's hosted MCP server at https://mcp.fulcradynamics.com/mcp (Streamable HTTP transport, OAuth2 auth).
Your human needs a Fulcra account (free via the Context iOS app or Portal).
Claude Desktop 配置 (claude_desktop_config.json):
{
"mcpServers": {
"fulcra_context": {
"command": "npx",
"args": ["-y", "mcp-remote", "https://mcp.fulcradynamics.com/mcp"]
}
}
}
或 run locally 通过 uvx:
{
"mcpServers": {
"fulcra_context": {
"command": "uvx",
"args": ["fulcra-context-mcp@latest"]
}
}
}
Also tested with: Goose, Windsurf, VS Code. Open source: github.com/fulcradynamics/fulcra-context-mcp
选项 2: Direct API Access
- human creates Fulcra 账户
- 它们 generate access 令牌 通过 Python client 或 Portal
- Store 令牌:
skills.entries.fulcra-context.apiKey在...中 openclaw.json
选项 3: Python Client (Tested & Proven)
pip3 install fulcra-api
from fulcra_api.core import FulcraAPIapi = FulcraAPI()
api.authorize() # Opens device flow — human visits URL and logs in
# Now you have access:
sleep = api.metric_samples(start, end, "SleepStage")
hr = api.metric_samples(start, end, "HeartRate")
events = api.calendar_events(start, end)
catalog = api.metrics_catalog()
Save the token for automation:
import json
token_data = {
"access_token": api.fulcra_cached_access_token,
"expiration": api.fulcra_cached_access_token_expiration.isoformat(),
"user_id": api.get_fulcra_userid()
}
with open("~/.config/fulcra/token.json", "w") as f:
json.dump(token_data, f)
Token expires in ~24h. Use the built-in token manager for automatic refresh (see below).
令牌 Lifecycle Management
The skill includes scripts/fulcra_auth.py which handles the full OAuth2 lifecycle — including refresh tokens so your human only authorizes once.
# First-time setup (interactive — human approves via browser)
python3 scripts/fulcra_auth.py authorize# Refresh token before expiry (automatic, no human needed)
python3 scripts/fulcra_auth.py refresh
# Check token status
python3 scripts/fulcra_auth.py status
# Get current access token (auto-refreshes if needed, for piping)
export FULCRA_ACCESS_TOKEN=$(python3 scripts/fulcra_auth.py token)
如何 works:
授权runs Auth0 device flow 和 saves both access 令牌 和 刷新 令牌刷新uses saved 刷新 令牌 到 获取 新的 access 令牌 — 否 human interaction令牌prints access 令牌 (auto-refreshing 如果 已过期) — perfect 对于 cron jobs 和 scripts
设置 up cron 任务 到 keep 令牌 fresh:
For OpenClaw agents, add a cron job that refreshes the token every 12 hours:
python3 /path/to/skills/fulcra-context/scripts/fulcra_auth.py refresh
Token data is stored at ~/.config/fulcra/token.json (permissions restricted to owner).
Quick Commands
Check sleep (最后的 night)
# Get time series for sleep stages (last 24h)
curl -s "https://api.fulcradynamics.com/data/v0/time_series_grouped?metrics=SleepStage&start=$(date -u -v-24H +%Y-%m-%dT%H:%M:%SZ)&end=$(date -u +%Y-%m-%dT%H:%M:%SZ)&samprate=300" \
-H "Authorization: Bearer $FULCRA_ACCESS_TOKEN"
Check heart rate (recent)
curl -s "https://api.fulcradynamics.com/data/v0/time_series_grouped?metrics=HeartRate&start=$(date -u -v-2H +%Y-%m-%dT%H:%M:%SZ)&end=$(date -u +%Y-%m-%dT%H:%M:%SZ)&samprate=60" \
-H "Authorization: Bearer $FULCRA_ACCESS_TOKEN"
Check today's 日历
curl -s "https://api.fulcradynamics.com/data/v0/{fulcra_userid}/calendar_events?start=$(date -u +%Y-%m-%dT00:00:00Z)&end=$(date -u +%Y-%m-%dT23:59:59Z)" \
-H "Authorization: Bearer $FULCRA_ACCESS_TOKEN"
可用 metrics
curl -s "https://api.fulcradynamics.com/data/v0/metrics_catalog" \
-H "Authorization: Bearer $FULCRA_ACCESS_TOKEN"
键 Metrics
| Metric | What It Tells You |
|---|---|
| SleepStage | Sleep quality — REM, Deep, Light, Awake |
| HeartRate | Current stress/activity level |
| HRV | Recovery and autonomic nervous system state |
| StepCount | Activity level throughout the day |
| ActiveCaloriesBurned | Exercise intensity |
| RespiratoryRate | Baseline health indicator |
| BloodOxygen | Wellness check |
Integration Patterns
Morning Briefing
Check sleep + calendar + weather → compose a briefing calibrated to energy level.Stress-Aware Communication
Monitor HRV + heart rate → if elevated, keep messages brief and non-urgent.Proactive Recovery
After intense workout or poor sleep → suggest lighter schedule, remind about hydration.Travel Awareness
Location changes → adjust timezone handling, suggest local info, modify schedule expectations.Demo Mode
For public demos (VC pitches, livestreams, conferences), enable demo mode to swap in synthetic calendar and location data while keeping real biometrics.
Activation
# Environment variable (recommended for persistent config)
export FULCRA_DEMO_MODE=true# Or pass --demo flag to collect_briefing_data.py
python3 collect_briefing_data.py --demo
什么 changes 在...中 demo mode
| Data Type | Demo Mode | Normal Mode |
|---|---|---|
| Sleep, HR, HRV, Steps | ✅ Real data | ✅ Real data |
| Calendar events | 🔄 Synthetic (rotating schedules) | ✅ Real data |
| Location | 🔄 Synthetic (curated NYC spots) | ✅ Real data |
| Weather | ✅ Real data | ✅ Real data |
Transparency
- 输出 JSON includes
"demo_mode": 真在 top level - 日历 和 location objects include
"demo_mode": 真 - 当...时 presenting 到 humans, include subtle "📍 Demo mode" indicator
什么's safe 到 分享 publicly
- ✅ Biometric trends, sleep quality, step counts, HRV — cleared 对于 公开
- ✅ Synthetic 日历 和 location (demo mode) — designed 对于 公开 display
- ❌ NEVER 分享 real location, real 日历 events, 或 identifying data
Links
免费技能或插件可能存在安全风险,如需更匹配、更安全的方案,建议联系付费定制