Skip to content

Using Jig in Claude.ai

What you’ll learn: How to connect Jig’s hosted MCP to Claude.ai, which tools are available, and how to work conversationally to create specs, decompose them into tasks, and review execution results.

Prerequisites: A Jig account at usejig.dev with at least one project. For terminal execution, also follow Using Jig with Claude Code.


Connect the MCP

In Claude.ai, open Settings > Integrations and add a new MCP server:

https://mcp.usejig.dev/sse

Claude will prompt you to authorize with your Jig account via GitHub OAuth. After authorizing, the Jig tools appear in Claude’s tool list.

Confirm it’s working:

You: What projects do I have?

Claude: [calls list_projects]

You have 1 project:

  • my-app — 6 specs, health: good

Switch projects

If you have multiple projects, Claude selects the active one automatically when there’s only one. Otherwise, ask it to switch:

You: Switch to the landing-page project.

Claude: [calls switch_project] Switched to landing-page. I’ll use this project for the rest of our conversation.

See your spec architecture

You: Show me what specs we have.
Claude: [calls list_specs]
Platform
└── database decomposed (3 tasks)
Services
├── auth in-progress (2/4 tasks done)
└── email-service new
Surface
├── sign-in-ui decomposed (4 tasks)
└── dashboard new

Create a spec in conversation

Describe the feature and Claude drafts the spec:

You: I want to add a dark mode toggle that persists the user’s preference.

Claude: Let me check the current architecture first.

[calls list_specs]

This looks like a Surface-layer enhancement — it touches UI components and likely needs a user preference stored somewhere. I’d create it as a sub-spec under the dashboard spec since that’s where the toggle will live.

Want me to go ahead with that placement?

You: Yes, do it.

Claude: [calls create_spec with parent: "dashboard", layer: "surface"] [calls update_spec with full markdown]

Created dark-mode under dashboard. Here’s the spec:

## Intent
Add a dark mode toggle to the dashboard header. The user's preference is saved to localStorage and applied on page load.
## Acceptance Criteria
- [ ] Toggle button in dashboard header switches theme
- [ ] Preference persists across page refresh
- [ ] System preference is respected on first visit

Want me to break this into tasks?

Decompose in conversation

You: Yes, decompose it.

Claude analyzes the spec and proposes tasks directly — it does not call the decompose tool. It calls create_task once per task:

Claude: [calls create_task for theme-provider] [calls create_task for toggle-component] [calls create_task for preference-persistence]

Created 3 tasks:

  1. theme-provider — Wire CSS custom properties for light/dark tokens (simple)
  2. toggle-component — DashboardHeader toggle button with click handler (simple)
  3. preference-persistence — Read/write from localStorage, apply on load (simple)

All three are independent — they can run in parallel. Ready to go.

File a bug from conversation

If you notice something broken while reviewing:

You: The sign-in button is broken on mobile — it doesn’t respond to tap.

Claude: [calls file_bug with content: “Sign-in button unresponsive to tap on mobile”, context: “Reported during conversation, likely touch event or z-index issue”]

Filed bug #B-047. Triage is running in the background — I’ll match it to the most relevant spec. You can check it later with list_findings.

Review run results

After your terminal runs jig run dark-mode theme-provider, come back to Claude.ai to review:

You: Check the theme-provider run.

Claude: [calls list_runs for dark-mode] [calls show_run with the latest run ID]

Run succeeded in 18.3s. Claude Code added CSS custom properties for --color-bg, --color-text, and --color-accent in src/styles/tokens.css. Tests pass.

Want me to mark this task passed and move to the next one?

You: Yes, mark it passed.

Claude: [calls update_task with status: "passed" and completion_notes]

Marked passed. The next ready task is toggle-component.

Track overall progress

You: How's dark-mode looking overall?
Claude: [calls show_status with spec: "dark-mode"]
dark-mode (3 tasks)
theme-provider passed
toggle-component new <- ready
preference-persistence new <- ready (can run in parallel)

Key tools reference

ToolWhen to use
list_projects / switch_projectStart of conversation, multi-project setups
list_specsArchitecture overview, placement decisions
create_spec / update_specNew features, spec refinement
create_taskIn-conversation decomposition
show_task / update_taskReview details, mark status, add notes
list_runs / show_runReview what Claude Code actually did
file_bug / file_ideaCapture findings without losing context
show_statusProgress tracking
next_tasksWhat to run next

The role split: Claude.ai architects and reviews. Claude Code executes. You decide.