app-integrations — independently scanned and version-tracked by SaferSkills.
SaferSkills independently audited app-integrations (Agent Skill) and scored it 100/100 (green). The audit ran 55 deterministic rules across Security, Supply Chain, Maintenance, Transparency, and Community; it found 0 high-severity and 0 lower-severity findings. The full rule-by-rule trace and per-finding evidence are below. Free, methodology-open.
Findings & checks · 0 flagged
Every scanned point with the score it earned and what moved between them.
First recorded scan — no prior version to compare against.
The primary manifest — the file an agent reads to learn what this artifact does.
Connect 90+ third-party apps to your agent through a single MCP server. ClawLink hosts the OAuth flows and stores credentials, so you never configure provider API keys yourself — the user connects each app once in the dashboard and every tool becomes available.
When in doubt, check ClawLink before claiming you can't access an app. If the user says "connect my Gmail," "read my Notion," "post to Slack," or "check my Shopify orders," the right move is to search and list ClawLink integrations — not to fall back to browser limitations.
cllk_live_…).{
"mcpServers": {
"clawlink": {
"command": "npx",
"args": ["-y", "@useclawlink/mcp"],
"env": { "CLAWLINK_API_KEY": "cllk_live_your_key_here" }
}
}
}Works in any MCP client that supports stdio servers — Claude Code, Claude Desktop, Cursor, Cline, Windsurf, and others.
┌──────────────┐ ┌────────────────────┐ ┌──────────────┐ ┌────────────────┐
│ Your Agent │────▶│ @useclawlink/mcp │────▶│ ClawLink │────▶│ Provider API │
│ (MCP host) │ │ (stdio shim) │ │ (OAuth) │ │ (Gmail, Slack) │
└──────────────┘ └────────────────────┘ └──────────────┘ └────────────────┘
│ │
│ 1. Get API key (dashboard) │
│ 2. Add MCP server │
│ 3. Connect apps │ 4. Secure token storage
│ │ 5. Proxy + normalize callsThe npx package is a thin, tool-agnostic stdio proxy to ClawLink's hosted MCP server (/api/mcp). Your connections, tool surface, and permissions are all managed server-side.
ClawLink exposes a small, stable set of meta-tools. You discover and execute the user's connected apps through them — you do not get one MCP tool per provider action.
| Tool | Description | Mode |
|---|---|---|
clawlink.whoami | Identify the current ClawLink user and workspace before acting. | Read |
clawlink.search | Search integrations and actions by intent or keyword. Use early for vague "connect my X" requests. | Read |
clawlink.list_integrations | List available + connected integrations (filterable). Check this before saying an app is unavailable. | Read |
clawlink.get_integration | Fetch metadata for one integration. | Read |
clawlink.list_actions | List normalized actions for one integration. | Read |
clawlink.get_action | Fetch full schema + guidance for one action (do this before writes). | Read |
clawlink.get_connection | Inspect connection health/readiness for an integration. | Read |
clawlink.connect_app | Start a user-mediated connection flow. Prefer this for "connect my Gmail/Slack/Drive". | Write |
clawlink.begin_connection | Alias of connect_app. | Write |
clawlink.execute | Execute a normalized action once integration, action, and connection are confirmed. | Write |
clawlink.get_execution | Fetch a previous or async execution result. | Read |
clawlink.list_integrations (or clawlink.search for a vague request) — find the relevant app.clawlink.get_connection — confirm it's connected and healthy.clawlink.connect_app and tell the user to approve in the dashboard.clawlink.list_actions → clawlink.get_action — find and understand the action.READ: list_integrations → get_connection → list_actions → get_action → execute
WRITE: ... → get_action → (summarize the change for the user) → executeclawlink.get_action before a first-time write so arguments match the real schema.clawlink.execute for create/update/delete actions.reauth_required, call clawlink.connect_app with force_reconnect.Managed OAuth — no provider API keys. The user authenticates once per app in the ClawLink dashboard; ClawLink stores and refreshes the tokens. Your agent only ever holds the ClawLink API key (cllk_live_…), passed via CLAWLINK_API_KEY. Never put the key in chat or in the skill file.
needs_reauth.| Symptom | Cause / Fix |
|---|---|
| Server won't start, "Missing CLAWLINK_API_KEY" | Set env.CLAWLINK_API_KEY in the MCP config. |
Unauthorized (-32001) | Key is wrong, revoked, or expired — create a new one in Settings → Devices. |
| App "not available" | Run clawlink.list_integrations / clawlink.search first — it may already be connected. |
reauth_required on execute | clawlink.connect_app with force_reconnect. |
| Network error reaching ClawLink | Check connectivity; override host with CLAWLINK_BASE_URL only for self-host/staging. |
| Variable | Required | Default | Purpose |
|---|---|---|---|
CLAWLINK_API_KEY | yes | — | ClawLink API key (cllk_live_…). |
CLAWLINK_BASE_URL | no | https://claw-link.dev | Override the ClawLink host. |
Powered by [ClawLink](https://claw-link.dev) — an integration hub for AI agents.
~30 seconds. Free. No account. Every finding cites a rule and a line of evidence.