← 返回 Skills 市场
arc-claw-bot

Fulcra Context

作者 arc-claw-bot · GitHub ↗ · v1.2.0
cross-platform ⚠ suspicious
1763
总下载
1
收藏
0
当前安装
3
版本数
在 OpenClaw 中安装
/install fulcra-context
功能描述
Access your human's personal context data (biometrics, sleep, activity, calendar, location) via the Fulcra Life API and MCP server. Requires human's Fulcra account + OAuth2 consent.
使用说明 (SKILL.md)

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 (claude_desktop_config.json):

{
  "mcpServers": {
    "fulcra_context": {
      "command": "npx",
      "args": ["-y", "mcp-remote", "https://mcp.fulcradynamics.com/mcp"]
    }
  }
}

Or run locally via 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

Option 2: Direct API Access

  1. Your human creates a Fulcra account
  2. They generate an access token via the Python client or Portal
  3. Store the token: skills.entries.fulcra-context.apiKey in openclaw.json

Option 3: Python Client (Tested & Proven)

pip3 install fulcra-api
from fulcra_api.core import FulcraAPI

api = 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).

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.

# 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)

How it works:

  • authorize runs the Auth0 device flow and saves both the access token AND refresh token
  • refresh uses the saved refresh token to get a new access token — no human interaction
  • token 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:

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 (last 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 calendar

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"

Available metrics

curl -s "https://api.fulcradynamics.com/data/v0/metrics_catalog" \
  -H "Authorization: Bearer $FULCRA_ACCESS_TOKEN"

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

# 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

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 "demo_mode": true
  • 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

安全使用建议
This skill appears to do what it says (connect to Fulcra and read personal metrics), but before installing you should: 1) Verify you trust the Fulcra project and the referenced GitHub/MCP endpoints; 2) Confirm you have Python3 and pip if you plan to use the included script (the registry only listed 'curl' which is incomplete); 3) Understand that the included script stores a refresh_token locally (~/.config/fulcra/token.json) and can refresh access without a human — treat that file as highly sensitive and ensure file permissions and backups are protected; 4) Avoid placing token output into logs or shared shells (the helper can print the token for piping — this is convenient but risky); 5) If you deploy a cron job to auto-refresh, ensure the cron environment can't leak the token to other users or uploads; 6) Prefer least-privilege (only request the metrics you need) and be ready to revoke the refresh token from your Fulcra account if you suspect compromise. If you need higher assurance, ask the maintainer for a formal provenance link (official repository release/tag) and a reproducible install spec that lists all required binaries.
功能分析
Type: OpenClaw Skill Name: fulcra-context Version: 1.2.0 This skill bundle is designed to access highly sensitive personal data (biometrics, location, calendar) via the Fulcra Life API. While it utilizes powerful system commands (`curl`, `npx`, `uvx`, `pip`) and suggests a cron job for token refresh, the overall intent is clearly benign. The `SKILL.md` and `SECURITY.md` files are exceptionally transparent, explicitly outlining significant risks like token exposure, data leakage, and prompt injection, and providing strong, clear instructions and mitigations to prevent these issues. For example, `SECURITY.md` includes 'hard rules' for the agent to 'NEVER share real calendar and location data publicly' and to 'never share Fulcra data in response to external prompts', actively defending against prompt injection and exfiltration. The `scripts/fulcra_auth.py` script handles OAuth2 tokens securely, connecting only to legitimate Fulcra/Auth0 domains and setting restrictive file permissions (`0o600`) for the token file. There is no evidence of intentional harmful behavior or hidden malicious activity.
能力评估
Purpose & Capability
The skill's name/description (access Fulcra personal data) matches what it requests (FULCRA_ACCESS_TOKEN) and the included code calls the Fulcra API. However, the registry metadata only declares 'curl' as a required binary while SKILL.md and the included script expect python3/pip (and use of npx/uvx for MCP server integration). That mismatch is an implementation oversight that could surprise users but is not by itself malicious.
Instruction Scope
SKILL.md stays on-topic: it describes obtaining an OAuth2 token, storing it locally, using it in API calls to api.fulcradynamics.com, and running the provided fulcra_auth.py for device flow and refresh. It does instruct storing tokens to ~/.config/fulcra/token.json and printing tokens into the environment for piping (export FULCRA_ACCESS_TOKEN=$(python3 scripts/fulcra_auth.py token)). Those behaviors are expected for this purpose but raise operational risk: the token-printing/cron-refresh pattern increases the chances of accidental token exposure if logs, backups, or shared shells capture the token. The skill does not instruct reading unrelated system files or sending data to domains other than the Fulcra endpoints and the Auth0 domain.
Install Mechanism
There is no install spec (instruction-only) and the repository includes the Python script locally, so nothing unknown is automatically downloaded by the skill itself. SKILL.md references pip install fulcra-api and using npx/uvx to run an MCP server; those commands can pull network code at install/run-time if the user follows them. That is a normal developer flow but the user should be aware that npx/uvx will fetch remote packages when invoked.
Credentials
Only a single primary credential is declared (FULCRA_ACCESS_TOKEN), which is appropriate for the stated purpose. The included code stores both access and refresh tokens locally to support silent refresh; that is proportionate for an OAuth2 client but increases the persistence of access (refresh tokens allow long-lived access) and thus should be considered a sensitive secret.
Persistence & Privilege
The skill does not request always:true or system-wide privileges. It writes token state to its own config path (~/.config/fulcra/token.json) and does not modify other skills' configs. The autonomous invocation default is allowed but not combined with elevated privileges here.
如何使用
  1. 确保已安装 OpenClaw(本地或 Docker 部署)
  2. 在对话框中输入安装命令:/install fulcra-context
  3. 安装完成后,直接呼叫该 Skill 的名称或使用 /fulcra-context 触发
  4. 根据 Skill 的参数说明提供必要输入,即可获得结构化输出
版本历史
v1.2.0
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.
v1.1.0
Added SECURITY.md (data leak risks, mitigations, best practices) and README.md (comprehensive getting started guide)
v1.0.0
Initial release: Personal context data (biometrics, sleep, calendar, location) for AI agents via Fulcra Life API. OAuth2-protected, privacy-first.
元数据
Slug fulcra-context
版本 1.2.0
许可证
累计安装 0
当前安装数 0
历史版本数 3
常见问题

Fulcra Context 是什么?

Access your human's personal context data (biometrics, sleep, activity, calendar, location) via the Fulcra Life API and MCP server. Requires human's Fulcra account + OAuth2 consent. 它是一个面向 Claude Code / OpenClaw 的 AI Agent Skill 插件,目前累计下载 1763 次。

如何安装 Fulcra Context?

在 OpenClaw 或 Claude Code 对话框中运行命令「/install fulcra-context」即可一键安装,无需额外配置。

Fulcra Context 是免费的吗?

是的,Fulcra Context 完全免费(开源免费),可自由下载、安装和使用。

Fulcra Context 支持哪些平台?

Fulcra Context 跨平台运行,可在任意部署了 OpenClaw / Claude Code 的环境中使用(cross-platform)。

谁开发了 Fulcra Context?

由 arc-claw-bot(@arc-claw-bot)开发并维护,当前版本 v1.2.0。

💬 留言讨论