Fulcra Context — Personal Data for AI Partners
Give your agent situational awareness. With your human's consent, access their biometrics, sleep, activity, location, and calendar data from the Fulcra Life API.
What This Enables
With Fulcra Context, you can:
- - Know how your 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)
- Read calendar → proactive meeting prep, schedule awareness
- Track workouts → recovery-aware task scheduling
Privacy Model
- - OAuth2 per-user — your human controls exactly what data you see
- Their data stays theirs — Fulcra stores it, you get read access only
- Consent is revocable — they can disconnect anytime
- NEVER share your human's Fulcra data publicly without explicit permission
Setup
Option 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 config (claudedesktopconfig.json):
CODEBLOCK0
Or run locally via uvx:
CODEBLOCK1
Also tested with: Goose, Windsurf, VS Code. Open source: github.com/fulcradynamics/fulcra-context-mcp
Option 2: Direct API Access
- 1. Your human creates a Fulcra account
- They generate an access token via the Python client or Portal
- Store the token:
skills.entries.fulcra-context.apiKey in openclaw.json
Option 3: Python Client (Tested & Proven)
CODEBLOCK2
CODEBLOCK3
Save the token for automation:
CODEBLOCK4
Token expires in ~24h. Use the built-in token manager for automatic refresh (see below).
Token Lifecycle Management
The skill includes scripts/fulcra_auth.py which handles the full OAuth2 lifecycle — including refresh tokens so your human only authorizes once.
CODEBLOCK5
How it works:
- -
authorize runs the Auth0 device flow and saves both the access token AND refresh token - INLINECODE4 uses the saved refresh token to get a new access token — no human interaction
- INLINECODE5 prints the access token (auto-refreshing if expired) — perfect for cron jobs and scripts
Set up a cron job to keep the token fresh:
For OpenClaw agents, add a cron job that refreshes the token every 12 hours:
CODEBLOCK6
Token data is stored at ~/.config/fulcra/token.json (permissions restricted to owner).
Quick Commands
Check sleep (last night)
CODEBLOCK7
Check heart rate (recent)
CODEBLOCK8
Check today's calendar
CODEBLOCK9
Available metrics
CODEBLOCK10
Key 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
CODEBLOCK11
What changes in 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
- - Output JSON includes
"demo_mode": true at the top level - Calendar and location objects include INLINECODE8
- When presenting to humans, include a subtle "📍 Demo mode" indicator
What's safe to share publicly
- - ✅ Biometric trends, sleep quality, step counts, HRV — cleared for public
- ✅ Synthetic calendar and location (demo mode) — designed for public display
- ❌ NEVER share real location, real calendar events, or identifying data
Links
Fulcra Context — AI合作伙伴的个人数据
为您的智能体提供情境感知能力。在获得用户同意后,通过Fulcra Life API访问其生物特征、睡眠、活动、位置和日历数据。
功能特性
借助Fulcra Context,您可以:
- - 了解用户的睡眠状况 → 调整晨间简报的强度
- 查看心率/HRV趋势 → 检测压力,建议休息
- 检查位置信息 → 提供情境感知建议(居家/办公/旅行)
- 读取日历 → 主动准备会议,掌握日程安排
- 追踪锻炼记录 → 基于恢复状态的任务调度
隐私模型
- - 基于OAuth2的逐用户授权 — 用户精确控制您能看到哪些数据
- 数据所有权归用户 — Fulcra存储数据,您仅有读取权限
- 可撤销授权 — 用户可随时断开连接
- 未经明确许可,严禁公开分享用户的Fulcra数据
设置方式
方案一:MCP服务器(推荐)
使用Fulcra托管的MCP服务器,地址为 https://mcp.fulcradynamics.com/mcp(支持Streamable HTTP传输,OAuth2认证)。
用户需要一个Fulcra账户(可通过Context iOS应用或门户网站免费注册)。
Claude Desktop配置(claudedesktopconfig.json):
json
{
mcpServers: {
fulcra_context: {
command: npx,
args: [-y, mcp-remote, https://mcp.fulcradynamics.com/mcp]
}
}
}
或通过uvx本地运行:
json
{
mcpServers: {
fulcra_context: {
command: uvx,
args: [fulcra-context-mcp@latest]
}
}
}
已在Goose、Windsurf、VS Code中测试通过。开源地址:github.com/fulcradynamics/fulcra-context-mcp
方案二:直接API访问
- 1. 用户创建Fulcra账户
- 通过Python客户端或门户网站生成访问令牌
- 在openclaw.json中存储令牌:skills.entries.fulcra-context.apiKey
方案三:Python客户端(经过测试验证)
bash
pip3 install fulcra-api
python
from fulcra_api.core import FulcraAPI
api = FulcraAPI()
api.authorize() # 启动设备流程 — 用户访问URL并登录
现在您可以访问:
sleep = api.metric_samples(start, end, SleepStage)
hr = api.metric_samples(start, end, HeartRate)
events = api.calendar_events(start, end)
catalog = api.metrics_catalog()
保存令牌以便自动化:
python
import json
token_data = {
accesstoken: api.fulcracachedaccesstoken,
expiration: api.fulcracachedaccesstokenexpiration.isoformat(),
userid: api.getfulcra_userid()
}
with open(~/.config/fulcra/token.json, w) as f:
json.dump(token_data, f)
令牌有效期约24小时。使用内置令牌管理器自动刷新(见下文)。
令牌生命周期管理
该技能包含 scripts/fulcra_auth.py,可处理完整的OAuth2生命周期——包括刷新令牌,用户只需授权一次。
bash
首次设置(交互式 — 用户通过浏览器批准)
python3 scripts/fulcra_auth.py authorize
在过期前刷新令牌(自动执行,无需用户操作)
python3 scripts/fulcra_auth.py refresh
检查令牌状态
python3 scripts/fulcra_auth.py status
获取当前访问令牌(如需自动刷新,用于管道传输)
export FULCRA
ACCESSTOKEN=$(python3 scripts/fulcra_auth.py token)
工作原理:
- - authorize 运行Auth0设备流程,保存访问令牌和刷新令牌
- refresh 使用保存的刷新令牌获取新的访问令牌 — 无需用户交互
- token 输出访问令牌(过期时自动刷新)— 非常适合定时任务和脚本
设置定时任务保持令牌新鲜:
对于OpenClaw智能体,添加每12小时刷新令牌的定时任务:
python3 /path/to/skills/fulcra-context/scripts/fulcra_auth.py refresh
令牌数据存储在 ~/.config/fulcra/token.json(权限限制为所有者)。
快速命令
检查睡眠(昨晚)
bash
获取睡眠阶段的时间序列(最近24小时)
curl -s https://api.fulcradynamics.com/data/v0/time
seriesgrouped?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
ACCESSTOKEN
检查心率(最近)
bash
curl -s https://api.fulcradynamics.com/data/v0/timeseriesgrouped?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 $FULCRAACCESSTOKEN
检查今日日历
bash
curl -s https://api.fulcradynamics.com/data/v0/{fulcrauserid}/calendarevents?start=$(date -u +%Y-%m-%dT00:00:00Z)&end=$(date -u +%Y-%m-%dT23:59:59Z) \
-H Authorization: Bearer $FULCRAACCESSTOKEN
可用指标
bash
curl -s https://api.fulcradynamics.com/data/v0/metrics_catalog \
-H Authorization: Bearer $FULCRAACCESSTOKEN
关键指标
| 指标 | 说明 |
|---|
| SleepStage | 睡眠质量 — REM、深睡、浅睡、清醒 |
| HeartRate |
当前压力/活动水平 |
| HRV | 恢复状态和自主神经系统状态 |
| StepCount | 全天活动水平 |
| ActiveCaloriesBurned | 运动强度 |
| RespiratoryRate | 健康基线指标 |
| BloodOxygen | 健康检查 |
集成模式
晨间简报
检查睡眠 + 日历 + 天气 → 根据精力水平定制简报。
压力感知沟通
监测HRV + 心率 → 如果指标升高,保持信息简洁且非紧急。
主动恢复
高强度运动或睡眠不佳后 → 建议轻松日程,提醒补水。
旅行感知
位置变化 → 调整时区处理,建议本地信息,修改日程预期。
演示模式
用于公开演示(VC路演、直播、会议),启用演示模式可替换为合成的日历和位置数据,同时保留真实的生物特征数据。
激活方式
bash
环境变量(推荐用于持久配置)
export FULCRA
DEMOMODE=true
或向collectbriefingdata.py传递--demo标志
python3 collect
briefingdata.py --demo
演示模式的变化
| 数据类型 | 演示模式 | 正常模式 |
|---|
| 睡眠、心率、HRV、步数 | ✅ 真实数据 | ✅ 真实数据 |
| 日历事件 |
🔄 合成数据(轮换日程) | ✅ 真实数据 |
| 位置信息 | 🔄 合成数据(精选纽约地点) | ✅ 真实数据 |
| 天气 | ✅ 真实数据 | ✅ 真实数据 |
透明度
- - 输出JSON包含顶层字段 demomode: true
- 日历和位置对象包含 demomode: true
- 向用户展示时,包含微妙的📍 演示模式指示器
可公开分享的内容
- - ✅ 生物特征趋势、睡眠质量、步数、HRV — 可公开
- ✅ 合成日历和位置(演示模式)— 专为公开展示设计
- ❌ 严禁分享真实位置、真实日历事件或可识别数据
相关链接