Skip to content

Sync GitHub Issues to Linear

Push every new GitHub issue into a Linear team as a task. Edits flow in both directions.

  • GitHub personal access token with repo scope
  • Linear API key (Settings → API)
  • WCP running
Terminal window
# GitHub
curl -X POST http://localhost:8000/api/connections \
-H "Content-Type: application/json" \
-d '{
"name": "github",
"command": "npx",
"args": ["-y", "@anthropic/mcp-server-github"],
"env": { "GITHUB_TOKEN": "ghp_..." }
}'
# Linear
curl -X POST http://localhost:8000/api/connections \
-H "Content-Type: application/json" \
-d '{
"name": "linear",
"command": "npx",
"args": ["-y", "@anthropic/mcp-server-linear"],
"env": { "LINEAR_API_KEY": "lin_api_..." }
}'
Terminal window
# Discover capabilities
curl -X POST http://localhost:8000/api/capabilities/scan
# Verify they share a capability (e.g., "issues" or "tasks")
curl http://localhost:8000/api/capabilities/syncable-pairs
# Run sync
curl -X POST http://localhost:8000/api/sync/run/await

Set up a cron job or GitHub webhook to trigger syncs:

Terminal window
# Every 10 minutes
*/10 * * * * curl -s -X POST http://localhost:8000/api/sync/run

For issue trackers, source_wins with GitHub as the source usually works best — edits originate in GitHub and flow to Linear.

Terminal window
curl -X PUT http://localhost:8000/api/conflicts/strategy \
-H "Content-Type: application/json" \
-d '{"strategy": "source_wins"}'