This repository serves as both a plugin and a marketplace for Claude Code.
External users can install the sync plugin:
# Step 1: Add the marketplace /plugin marketplace add christopherdebeer/sync.parc.land # Step 2: Install the plugin /plugin install sync@sync
Or in one new Claude session:
/plugin marketplace add christopherdebeer/sync.parc.land && /plugin install sync@sync
When working on this codebase:
# From the repo directory claude --plugin-dir .
This loads the plugin directly without copying to cache, useful for development.
Once submitted to the official Anthropic marketplace:
/plugin install sync
When users install the plugin, they get:
- Agent Skill (
/sync:api): Declarative knowledge about the sync coordination API - MCP Server: 16 programmatic tools (
sync_lobby,sync_embody,sync_read_context, etc.)
The skill teaches Claude about sync, while the MCP tools let Claude actually use it.
On first use of an MCP tool, you'll be prompted to authenticate via OAuth 2.1 + WebAuthn:
- Browser opens to
https://sync.parc.land/oauth/authorize - Sign in with passkey (or create account)
- Consent screen: choose which rooms to grant access
- OAuth flow completes, tokens stored securely
- MCP tools work with authenticated access
For non-browser environments:
# 1. Initiate curl -X POST https://sync.parc.land/auth/device \ -H "Content-Type: application/json" \ -d '{"scope":"rooms:* create_rooms"}' # 2. Open the verification_uri_complete in browser, auth with passkey, approve # 3. Poll for token curl -X POST https://sync.parc.land/auth/device/token \ -H "Content-Type: application/json" \ -d '{"device_code":"dev_xxx"}'
Visit https://sync.parc.land/manage to view rooms, manage tokens, and configure passkeys.
After installation, verify it worked:
# List installed plugins /plugin list # Should see: # sync@sync (6.0.0) # Try the skill /sync:api # Claude will explain the sync coordination API # Try an MCP tool (triggers OAuth on first use) # This will fail with "not embodied" but proves MCP works: /sync:api What MCP tools are available?
To update to the latest version:
/plugin marketplace update sync /plugin update sync@sync
Or enable auto-updates in settings:
{ "plugins": { "autoUpdate": true } }
/plugin uninstall sync@sync /plugin marketplace remove sync
To distribute this plugin to your team:
Add to your project's .claude/settings.json:
{ "extraKnownMarketplaces": { "sync": { "source": { "source": "github", "repo": "christopherdebeer/sync.parc.land" } } }, "enabledPlugins": { "sync@sync": true } }
Team members will be prompted to install on first project load.
Set in organization-wide managed settings:
{ "strictKnownMarketplaces": [ { "source": "github", "repo": "christopherdebeer/sync.parc.land" } ], "enabledPlugins": { "sync@sync": true } }
This enforces the sync plugin across all users.
If you see:
Error: Marketplace file not found at .../.claude-plugin/marketplace.json
Make sure you're using the correct repo name:
/plugin marketplace add christopherdebeer/sync.parc.land
MCP tools require OAuth. On first use:
- Browser opens to sync.parc.land
- Create a passkey (WebAuthn)
- Grant access to rooms
# Refresh marketplace /plugin marketplace update sync # List available plugins /plugin marketplace list sync # Should show: # sync@sync (6.0.0) - Multi-agent coordination platform
The repo includes .claude/mcp.json with both:
sync-prod(enabled) → https://sync.parc.land/mcpsync-local(disabled) → http://localhost:8787/mcp
Toggle in .claude/settings.local.json (gitignored):
{ "mcpServers": { "sync-local": { "disabled": false }, "sync-prod": { "disabled": true } } }
Then run deno task dev to start local server.
- Homepage: https://sync.parc.land
- Documentation: https://sync.parc.land/reference/api.md
- Repository: https://github.com/christopherdebeer/sync.parc.land
- Issues: https://github.com/christopherdebeer/sync.parc.land/issues