linear-mcp-fast 0.2.2__tar.gz → 0.2.4__tar.gz

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (45) hide show
  1. {linear_mcp_fast-0.2.2 → linear_mcp_fast-0.2.4}/PKG-INFO +64 -55
  2. linear_mcp_fast-0.2.4/README.md +148 -0
  3. {linear_mcp_fast-0.2.2 → linear_mcp_fast-0.2.4}/pyproject.toml +1 -1
  4. {linear_mcp_fast-0.2.2 → linear_mcp_fast-0.2.4}/src/linear_mcp_fast.egg-info/PKG-INFO +64 -55
  5. linear_mcp_fast-0.2.2/README.md +0 -139
  6. {linear_mcp_fast-0.2.2 → linear_mcp_fast-0.2.4}/setup.cfg +0 -0
  7. {linear_mcp_fast-0.2.2 → linear_mcp_fast-0.2.4}/src/linear_mcp_fast/__init__.py +0 -0
  8. {linear_mcp_fast-0.2.2 → linear_mcp_fast-0.2.4}/src/linear_mcp_fast/__main__.py +0 -0
  9. {linear_mcp_fast-0.2.2 → linear_mcp_fast-0.2.4}/src/linear_mcp_fast/reader.py +0 -0
  10. {linear_mcp_fast-0.2.2 → linear_mcp_fast-0.2.4}/src/linear_mcp_fast/server.py +0 -0
  11. {linear_mcp_fast-0.2.2 → linear_mcp_fast-0.2.4}/src/linear_mcp_fast/store_detector.py +0 -0
  12. {linear_mcp_fast-0.2.2 → linear_mcp_fast-0.2.4}/src/linear_mcp_fast.egg-info/SOURCES.txt +0 -0
  13. {linear_mcp_fast-0.2.2 → linear_mcp_fast-0.2.4}/src/linear_mcp_fast.egg-info/dependency_links.txt +0 -0
  14. {linear_mcp_fast-0.2.2 → linear_mcp_fast-0.2.4}/src/linear_mcp_fast.egg-info/entry_points.txt +0 -0
  15. {linear_mcp_fast-0.2.2 → linear_mcp_fast-0.2.4}/src/linear_mcp_fast.egg-info/requires.txt +0 -0
  16. {linear_mcp_fast-0.2.2 → linear_mcp_fast-0.2.4}/src/linear_mcp_fast.egg-info/top_level.txt +0 -0
  17. {linear_mcp_fast-0.2.2 → linear_mcp_fast-0.2.4}/vendor/ccl_chromium_reader/ccl_chromium_reader/__init__.py +0 -0
  18. {linear_mcp_fast-0.2.2 → linear_mcp_fast-0.2.4}/vendor/ccl_chromium_reader/ccl_chromium_reader/ccl_chromium_cache.py +0 -0
  19. {linear_mcp_fast-0.2.2 → linear_mcp_fast-0.2.4}/vendor/ccl_chromium_reader/ccl_chromium_reader/ccl_chromium_filesystem.py +0 -0
  20. {linear_mcp_fast-0.2.2 → linear_mcp_fast-0.2.4}/vendor/ccl_chromium_reader/ccl_chromium_reader/ccl_chromium_history.py +0 -0
  21. {linear_mcp_fast-0.2.2 → linear_mcp_fast-0.2.4}/vendor/ccl_chromium_reader/ccl_chromium_reader/ccl_chromium_indexeddb.py +0 -0
  22. {linear_mcp_fast-0.2.2 → linear_mcp_fast-0.2.4}/vendor/ccl_chromium_reader/ccl_chromium_reader/ccl_chromium_localstorage.py +0 -0
  23. {linear_mcp_fast-0.2.2 → linear_mcp_fast-0.2.4}/vendor/ccl_chromium_reader/ccl_chromium_reader/ccl_chromium_notifications.py +0 -0
  24. {linear_mcp_fast-0.2.2 → linear_mcp_fast-0.2.4}/vendor/ccl_chromium_reader/ccl_chromium_reader/ccl_chromium_profile_folder.py +0 -0
  25. {linear_mcp_fast-0.2.2 → linear_mcp_fast-0.2.4}/vendor/ccl_chromium_reader/ccl_chromium_reader/ccl_chromium_sessionstorage.py +0 -0
  26. {linear_mcp_fast-0.2.2 → linear_mcp_fast-0.2.4}/vendor/ccl_chromium_reader/ccl_chromium_reader/ccl_chromium_snss2.py +0 -0
  27. {linear_mcp_fast-0.2.2 → linear_mcp_fast-0.2.4}/vendor/ccl_chromium_reader/ccl_chromium_reader/ccl_shared_proto_db_downloads.py +0 -0
  28. {linear_mcp_fast-0.2.2 → linear_mcp_fast-0.2.4}/vendor/ccl_chromium_reader/ccl_chromium_reader/common.py +0 -0
  29. {linear_mcp_fast-0.2.2 → linear_mcp_fast-0.2.4}/vendor/ccl_chromium_reader/ccl_chromium_reader/download_common.py +0 -0
  30. {linear_mcp_fast-0.2.2 → linear_mcp_fast-0.2.4}/vendor/ccl_chromium_reader/ccl_chromium_reader/profile_folder_protocols.py +0 -0
  31. {linear_mcp_fast-0.2.2 → linear_mcp_fast-0.2.4}/vendor/ccl_chromium_reader/ccl_chromium_reader/serialization_formats/__init__.py +0 -0
  32. {linear_mcp_fast-0.2.2 → linear_mcp_fast-0.2.4}/vendor/ccl_chromium_reader/ccl_chromium_reader/serialization_formats/ccl_blink_value_deserializer.py +0 -0
  33. {linear_mcp_fast-0.2.2 → linear_mcp_fast-0.2.4}/vendor/ccl_chromium_reader/ccl_chromium_reader/serialization_formats/ccl_easy_chromium_pickle.py +0 -0
  34. {linear_mcp_fast-0.2.2 → linear_mcp_fast-0.2.4}/vendor/ccl_chromium_reader/ccl_chromium_reader/serialization_formats/ccl_protobuff.py +0 -0
  35. {linear_mcp_fast-0.2.2 → linear_mcp_fast-0.2.4}/vendor/ccl_chromium_reader/ccl_chromium_reader/serialization_formats/ccl_v8_value_deserializer.py +0 -0
  36. {linear_mcp_fast-0.2.2 → linear_mcp_fast-0.2.4}/vendor/ccl_chromium_reader/ccl_chromium_reader/storage_formats/__init__.py +0 -0
  37. {linear_mcp_fast-0.2.2 → linear_mcp_fast-0.2.4}/vendor/ccl_chromium_reader/ccl_chromium_reader/storage_formats/ccl_leveldb.py +0 -0
  38. {linear_mcp_fast-0.2.2 → linear_mcp_fast-0.2.4}/vendor/ccl_chromium_reader/tools_and_utilities/Chromium_dump_local_storage.py +0 -0
  39. {linear_mcp_fast-0.2.2 → linear_mcp_fast-0.2.4}/vendor/ccl_chromium_reader/tools_and_utilities/Chromium_dump_session_storage.py +0 -0
  40. {linear_mcp_fast-0.2.2 → linear_mcp_fast-0.2.4}/vendor/ccl_chromium_reader/tools_and_utilities/benchmark.py +0 -0
  41. {linear_mcp_fast-0.2.2 → linear_mcp_fast-0.2.4}/vendor/ccl_chromium_reader/tools_and_utilities/ccl_chrome_audit.py +0 -0
  42. {linear_mcp_fast-0.2.2 → linear_mcp_fast-0.2.4}/vendor/ccl_chromium_reader/tools_and_utilities/dump_indexeddb_details.py +0 -0
  43. {linear_mcp_fast-0.2.2 → linear_mcp_fast-0.2.4}/vendor/ccl_chromium_reader/tools_and_utilities/dump_leveldb.py +0 -0
  44. {linear_mcp_fast-0.2.2 → linear_mcp_fast-0.2.4}/vendor/ccl_simplesnappy/ccl_simplesnappy/__init__.py +0 -0
  45. {linear_mcp_fast-0.2.2 → linear_mcp_fast-0.2.4}/vendor/ccl_simplesnappy/ccl_simplesnappy/ccl_simplesnappy.py +0 -0
@@ -1,6 +1,6 @@
1
1
  Metadata-Version: 2.4
2
2
  Name: linear-mcp-fast
3
- Version: 0.2.2
3
+ Version: 0.2.4
4
4
  Summary: Fast MCP server for Linear - reads from Linear.app's local cache on macOS
5
5
  Author: everything-chalna
6
6
  License-Expression: MIT
@@ -26,36 +26,45 @@ Requires-Dist: brotli>=1.0.0
26
26
 
27
27
  Fast, read-only MCP server for Linear that reads from Linear.app's local cache on macOS.
28
28
 
29
- **Why?**
30
- - **Instant**: No API calls, reads directly from local IndexedDB cache
31
- - **Offline**: Works without internet
32
- - **Lower context**: Smaller responses for AI assistants
29
+ ## Why I Built This
33
30
 
34
- **Use with**: Official Linear MCP for write operations (comments, updates).
31
+ While using the official Linear MCP with Claude Code, I noticed that **read operations consumed too much context**. Every issue query returned verbose responses with metadata I didn't need, eating into the AI's context window.
35
32
 
36
- ## Installation
33
+ The problem:
34
+ - Official Linear MCP makes API calls for every read
35
+ - Responses include excessive metadata (full user objects, workflow states, etc.)
36
+ - Context window fills up quickly when exploring issues
37
+ - Slower response times due to network latency
37
38
 
38
- ```bash
39
- pip install linear-mcp-fast
40
- # or
41
- uv pip install linear-mcp-fast
42
- ```
39
+ My solution: **Read directly from Linear.app's local cache.**
40
+
41
+ Linear.app (Electron) syncs all your data to a local IndexedDB. This MCP server reads from that cache, giving you:
42
+
43
+ - **Zero API calls** - Instant reads from disk
44
+ - **Smaller responses** - Only the fields you need
45
+ - **Offline access** - Works without internet
46
+ - **Faster iteration** - No rate limits, no latency
47
+
48
+ ## Requirements
49
+
50
+ - **macOS only** - Linear.app stores its cache at `~/Library/Application Support/Linear/`
51
+ - **Linear.app** installed and opened at least once (to populate the cache)
43
52
 
44
53
  ## Setup
45
54
 
55
+ Use `linear-fast` for reads and the official Linear MCP for writes.
56
+
46
57
  ### Claude Code
47
58
 
48
59
  ```bash
49
- # 1. Add linear-mcp-fast (reads from local cache)
60
+ # Fast reads (this package)
50
61
  claude mcp add linear-fast -- uvx linear-mcp-fast
51
62
 
52
- # 2. Add official Linear MCP (for writes)
63
+ # Writes via official Linear MCP
53
64
  claude mcp add --transport http linear https://mcp.linear.app/mcp
54
65
  ```
55
66
 
56
- Now you have:
57
- - `linear-fast` → Fast reads from local cache
58
- - `linear` → Writes (comments, updates)
67
+ Run `/mcp` to authenticate with Linear.
59
68
 
60
69
  ### Claude Desktop
61
70
 
@@ -76,7 +85,22 @@ Add to `~/Library/Application Support/Claude/claude_desktop_config.json`:
76
85
  }
77
86
  ```
78
87
 
79
- ### Cursor / VS Code
88
+ ### Cursor
89
+
90
+ Install Linear MCP from [Cursor's MCP tools page](https://cursor.com/mcp), then add linear-fast:
91
+
92
+ ```json
93
+ {
94
+ "mcpServers": {
95
+ "linear-fast": {
96
+ "command": "uvx",
97
+ "args": ["linear-mcp-fast"]
98
+ }
99
+ }
100
+ }
101
+ ```
102
+
103
+ ### VS Code / Windsurf / Others
80
104
 
81
105
  ```json
82
106
  {
@@ -93,24 +117,16 @@ Add to `~/Library/Application Support/Claude/claude_desktop_config.json`:
93
117
  }
94
118
  ```
95
119
 
96
- ---
97
-
98
- ## Prerequisites
99
-
100
- - **macOS** (Linear.app stores cache in `~/Library/Application Support/Linear/`)
101
- - **Linear.app** installed and opened at least once
102
-
103
- ---
120
+ See [Linear MCP docs](https://developers.linear.app/docs/ai/mcp-server) for Zed, Codex, v0, and other clients.
104
121
 
105
122
  ## Available Tools
106
123
 
107
- ### Reading (linear-fast)
124
+ Tools mirror the official Linear MCP for easy switching:
108
125
 
109
126
  | Tool | Description |
110
127
  |------|-------------|
111
- | `list_issues` | List issues with filters (assignee, team, state, priority) |
112
- | `get_issue` | Get issue details with comments |
113
- | `list_my_issues` | List issues assigned to a user |
128
+ | `list_issues` | List issues with filters (team, state, assignee, priority) |
129
+ | `get_issue` | Get issue details by identifier (e.g., `UK-123`) |
114
130
  | `list_teams` | List all teams |
115
131
  | `get_team` | Get team details |
116
132
  | `list_projects` | List all projects |
@@ -119,44 +135,37 @@ Add to `~/Library/Application Support/Claude/claude_desktop_config.json`:
119
135
  | `get_user` | Get user details |
120
136
  | `list_issue_statuses` | List workflow states for a team |
121
137
 
122
- ### Writing (official Linear MCP)
138
+ For writes (create issue, add comment, update status), use the official Linear MCP.
123
139
 
124
- Use the official Linear MCP (`linear`) for:
125
- - Creating/updating issues
126
- - Adding comments
127
- - Changing status
140
+ ## How It Works
128
141
 
129
- ---
142
+ ```
143
+ Linear.app (Electron)
144
+ ↓ syncs data to local cache
145
+ IndexedDB (LevelDB)
146
+ ~/Library/Application Support/Linear/IndexedDB/...
147
+ ↓ read by
148
+ linear-mcp-fast
149
+
150
+ Fast, offline access to issues, teams, users, projects
151
+ ```
130
152
 
131
153
  ## Troubleshooting
132
154
 
133
- ### "Linear database not found"
155
+ **"Linear database not found"**
134
156
 
135
- Linear.app needs to be installed and opened at least once:
157
+ Linear.app must be installed and opened at least once:
136
158
  ```bash
137
159
  ls ~/Library/Application\ Support/Linear/IndexedDB/
138
160
  ```
139
161
 
140
- ### Data seems stale
162
+ **Data seems stale**
141
163
 
142
- Local cache is updated when Linear.app syncs. Open Linear.app to refresh.
164
+ The local cache updates when Linear.app syncs. Open Linear.app to refresh.
143
165
 
144
- ---
145
-
146
- ## How It Works
147
-
148
- ```
149
- Linear.app (Electron)
150
- ↓ syncs to
151
- IndexedDB (LevelDB format)
152
- ~/Library/Application Support/Linear/IndexedDB/...
153
- ↓ read by
154
- linear-mcp-fast
155
- ↓ provides
156
- Fast read-only access to issues, users, teams, comments
157
- ```
166
+ **Returns 0 issues**
158
167
 
159
- ---
168
+ Multiple IndexedDB databases may exist. Version 0.2.2+ automatically finds the correct one.
160
169
 
161
170
  ## License
162
171
 
@@ -0,0 +1,148 @@
1
+ # linear-mcp-fast
2
+
3
+ Fast, read-only MCP server for Linear that reads from Linear.app's local cache on macOS.
4
+
5
+ ## Why I Built This
6
+
7
+ While using the official Linear MCP with Claude Code, I noticed that **read operations consumed too much context**. Every issue query returned verbose responses with metadata I didn't need, eating into the AI's context window.
8
+
9
+ The problem:
10
+ - Official Linear MCP makes API calls for every read
11
+ - Responses include excessive metadata (full user objects, workflow states, etc.)
12
+ - Context window fills up quickly when exploring issues
13
+ - Slower response times due to network latency
14
+
15
+ My solution: **Read directly from Linear.app's local cache.**
16
+
17
+ Linear.app (Electron) syncs all your data to a local IndexedDB. This MCP server reads from that cache, giving you:
18
+
19
+ - **Zero API calls** - Instant reads from disk
20
+ - **Smaller responses** - Only the fields you need
21
+ - **Offline access** - Works without internet
22
+ - **Faster iteration** - No rate limits, no latency
23
+
24
+ ## Requirements
25
+
26
+ - **macOS only** - Linear.app stores its cache at `~/Library/Application Support/Linear/`
27
+ - **Linear.app** installed and opened at least once (to populate the cache)
28
+
29
+ ## Setup
30
+
31
+ Use `linear-fast` for reads and the official Linear MCP for writes.
32
+
33
+ ### Claude Code
34
+
35
+ ```bash
36
+ # Fast reads (this package)
37
+ claude mcp add linear-fast -- uvx linear-mcp-fast
38
+
39
+ # Writes via official Linear MCP
40
+ claude mcp add --transport http linear https://mcp.linear.app/mcp
41
+ ```
42
+
43
+ Run `/mcp` to authenticate with Linear.
44
+
45
+ ### Claude Desktop
46
+
47
+ Add to `~/Library/Application Support/Claude/claude_desktop_config.json`:
48
+
49
+ ```json
50
+ {
51
+ "mcpServers": {
52
+ "linear-fast": {
53
+ "command": "uvx",
54
+ "args": ["linear-mcp-fast"]
55
+ },
56
+ "linear": {
57
+ "command": "npx",
58
+ "args": ["-y", "mcp-remote", "https://mcp.linear.app/mcp"]
59
+ }
60
+ }
61
+ }
62
+ ```
63
+
64
+ ### Cursor
65
+
66
+ Install Linear MCP from [Cursor's MCP tools page](https://cursor.com/mcp), then add linear-fast:
67
+
68
+ ```json
69
+ {
70
+ "mcpServers": {
71
+ "linear-fast": {
72
+ "command": "uvx",
73
+ "args": ["linear-mcp-fast"]
74
+ }
75
+ }
76
+ }
77
+ ```
78
+
79
+ ### VS Code / Windsurf / Others
80
+
81
+ ```json
82
+ {
83
+ "mcpServers": {
84
+ "linear-fast": {
85
+ "command": "uvx",
86
+ "args": ["linear-mcp-fast"]
87
+ },
88
+ "linear": {
89
+ "command": "npx",
90
+ "args": ["-y", "mcp-remote", "https://mcp.linear.app/mcp"]
91
+ }
92
+ }
93
+ }
94
+ ```
95
+
96
+ See [Linear MCP docs](https://developers.linear.app/docs/ai/mcp-server) for Zed, Codex, v0, and other clients.
97
+
98
+ ## Available Tools
99
+
100
+ Tools mirror the official Linear MCP for easy switching:
101
+
102
+ | Tool | Description |
103
+ |------|-------------|
104
+ | `list_issues` | List issues with filters (team, state, assignee, priority) |
105
+ | `get_issue` | Get issue details by identifier (e.g., `UK-123`) |
106
+ | `list_teams` | List all teams |
107
+ | `get_team` | Get team details |
108
+ | `list_projects` | List all projects |
109
+ | `get_project` | Get project details |
110
+ | `list_users` | List all users |
111
+ | `get_user` | Get user details |
112
+ | `list_issue_statuses` | List workflow states for a team |
113
+
114
+ For writes (create issue, add comment, update status), use the official Linear MCP.
115
+
116
+ ## How It Works
117
+
118
+ ```
119
+ Linear.app (Electron)
120
+ ↓ syncs data to local cache
121
+ IndexedDB (LevelDB)
122
+ ~/Library/Application Support/Linear/IndexedDB/...
123
+ ↓ read by
124
+ linear-mcp-fast
125
+
126
+ Fast, offline access to issues, teams, users, projects
127
+ ```
128
+
129
+ ## Troubleshooting
130
+
131
+ **"Linear database not found"**
132
+
133
+ Linear.app must be installed and opened at least once:
134
+ ```bash
135
+ ls ~/Library/Application\ Support/Linear/IndexedDB/
136
+ ```
137
+
138
+ **Data seems stale**
139
+
140
+ The local cache updates when Linear.app syncs. Open Linear.app to refresh.
141
+
142
+ **Returns 0 issues**
143
+
144
+ Multiple IndexedDB databases may exist. Version 0.2.2+ automatically finds the correct one.
145
+
146
+ ## License
147
+
148
+ MIT
@@ -4,7 +4,7 @@ build-backend = "setuptools.build_meta"
4
4
 
5
5
  [project]
6
6
  name = "linear-mcp-fast"
7
- version = "0.2.2"
7
+ version = "0.2.4"
8
8
  description = "Fast MCP server for Linear - reads from Linear.app's local cache on macOS"
9
9
  readme = "README.md"
10
10
  license = "MIT"
@@ -1,6 +1,6 @@
1
1
  Metadata-Version: 2.4
2
2
  Name: linear-mcp-fast
3
- Version: 0.2.2
3
+ Version: 0.2.4
4
4
  Summary: Fast MCP server for Linear - reads from Linear.app's local cache on macOS
5
5
  Author: everything-chalna
6
6
  License-Expression: MIT
@@ -26,36 +26,45 @@ Requires-Dist: brotli>=1.0.0
26
26
 
27
27
  Fast, read-only MCP server for Linear that reads from Linear.app's local cache on macOS.
28
28
 
29
- **Why?**
30
- - **Instant**: No API calls, reads directly from local IndexedDB cache
31
- - **Offline**: Works without internet
32
- - **Lower context**: Smaller responses for AI assistants
29
+ ## Why I Built This
33
30
 
34
- **Use with**: Official Linear MCP for write operations (comments, updates).
31
+ While using the official Linear MCP with Claude Code, I noticed that **read operations consumed too much context**. Every issue query returned verbose responses with metadata I didn't need, eating into the AI's context window.
35
32
 
36
- ## Installation
33
+ The problem:
34
+ - Official Linear MCP makes API calls for every read
35
+ - Responses include excessive metadata (full user objects, workflow states, etc.)
36
+ - Context window fills up quickly when exploring issues
37
+ - Slower response times due to network latency
37
38
 
38
- ```bash
39
- pip install linear-mcp-fast
40
- # or
41
- uv pip install linear-mcp-fast
42
- ```
39
+ My solution: **Read directly from Linear.app's local cache.**
40
+
41
+ Linear.app (Electron) syncs all your data to a local IndexedDB. This MCP server reads from that cache, giving you:
42
+
43
+ - **Zero API calls** - Instant reads from disk
44
+ - **Smaller responses** - Only the fields you need
45
+ - **Offline access** - Works without internet
46
+ - **Faster iteration** - No rate limits, no latency
47
+
48
+ ## Requirements
49
+
50
+ - **macOS only** - Linear.app stores its cache at `~/Library/Application Support/Linear/`
51
+ - **Linear.app** installed and opened at least once (to populate the cache)
43
52
 
44
53
  ## Setup
45
54
 
55
+ Use `linear-fast` for reads and the official Linear MCP for writes.
56
+
46
57
  ### Claude Code
47
58
 
48
59
  ```bash
49
- # 1. Add linear-mcp-fast (reads from local cache)
60
+ # Fast reads (this package)
50
61
  claude mcp add linear-fast -- uvx linear-mcp-fast
51
62
 
52
- # 2. Add official Linear MCP (for writes)
63
+ # Writes via official Linear MCP
53
64
  claude mcp add --transport http linear https://mcp.linear.app/mcp
54
65
  ```
55
66
 
56
- Now you have:
57
- - `linear-fast` → Fast reads from local cache
58
- - `linear` → Writes (comments, updates)
67
+ Run `/mcp` to authenticate with Linear.
59
68
 
60
69
  ### Claude Desktop
61
70
 
@@ -76,7 +85,22 @@ Add to `~/Library/Application Support/Claude/claude_desktop_config.json`:
76
85
  }
77
86
  ```
78
87
 
79
- ### Cursor / VS Code
88
+ ### Cursor
89
+
90
+ Install Linear MCP from [Cursor's MCP tools page](https://cursor.com/mcp), then add linear-fast:
91
+
92
+ ```json
93
+ {
94
+ "mcpServers": {
95
+ "linear-fast": {
96
+ "command": "uvx",
97
+ "args": ["linear-mcp-fast"]
98
+ }
99
+ }
100
+ }
101
+ ```
102
+
103
+ ### VS Code / Windsurf / Others
80
104
 
81
105
  ```json
82
106
  {
@@ -93,24 +117,16 @@ Add to `~/Library/Application Support/Claude/claude_desktop_config.json`:
93
117
  }
94
118
  ```
95
119
 
96
- ---
97
-
98
- ## Prerequisites
99
-
100
- - **macOS** (Linear.app stores cache in `~/Library/Application Support/Linear/`)
101
- - **Linear.app** installed and opened at least once
102
-
103
- ---
120
+ See [Linear MCP docs](https://developers.linear.app/docs/ai/mcp-server) for Zed, Codex, v0, and other clients.
104
121
 
105
122
  ## Available Tools
106
123
 
107
- ### Reading (linear-fast)
124
+ Tools mirror the official Linear MCP for easy switching:
108
125
 
109
126
  | Tool | Description |
110
127
  |------|-------------|
111
- | `list_issues` | List issues with filters (assignee, team, state, priority) |
112
- | `get_issue` | Get issue details with comments |
113
- | `list_my_issues` | List issues assigned to a user |
128
+ | `list_issues` | List issues with filters (team, state, assignee, priority) |
129
+ | `get_issue` | Get issue details by identifier (e.g., `UK-123`) |
114
130
  | `list_teams` | List all teams |
115
131
  | `get_team` | Get team details |
116
132
  | `list_projects` | List all projects |
@@ -119,44 +135,37 @@ Add to `~/Library/Application Support/Claude/claude_desktop_config.json`:
119
135
  | `get_user` | Get user details |
120
136
  | `list_issue_statuses` | List workflow states for a team |
121
137
 
122
- ### Writing (official Linear MCP)
138
+ For writes (create issue, add comment, update status), use the official Linear MCP.
123
139
 
124
- Use the official Linear MCP (`linear`) for:
125
- - Creating/updating issues
126
- - Adding comments
127
- - Changing status
140
+ ## How It Works
128
141
 
129
- ---
142
+ ```
143
+ Linear.app (Electron)
144
+ ↓ syncs data to local cache
145
+ IndexedDB (LevelDB)
146
+ ~/Library/Application Support/Linear/IndexedDB/...
147
+ ↓ read by
148
+ linear-mcp-fast
149
+
150
+ Fast, offline access to issues, teams, users, projects
151
+ ```
130
152
 
131
153
  ## Troubleshooting
132
154
 
133
- ### "Linear database not found"
155
+ **"Linear database not found"**
134
156
 
135
- Linear.app needs to be installed and opened at least once:
157
+ Linear.app must be installed and opened at least once:
136
158
  ```bash
137
159
  ls ~/Library/Application\ Support/Linear/IndexedDB/
138
160
  ```
139
161
 
140
- ### Data seems stale
162
+ **Data seems stale**
141
163
 
142
- Local cache is updated when Linear.app syncs. Open Linear.app to refresh.
164
+ The local cache updates when Linear.app syncs. Open Linear.app to refresh.
143
165
 
144
- ---
145
-
146
- ## How It Works
147
-
148
- ```
149
- Linear.app (Electron)
150
- ↓ syncs to
151
- IndexedDB (LevelDB format)
152
- ~/Library/Application Support/Linear/IndexedDB/...
153
- ↓ read by
154
- linear-mcp-fast
155
- ↓ provides
156
- Fast read-only access to issues, users, teams, comments
157
- ```
166
+ **Returns 0 issues**
158
167
 
159
- ---
168
+ Multiple IndexedDB databases may exist. Version 0.2.2+ automatically finds the correct one.
160
169
 
161
170
  ## License
162
171
 
@@ -1,139 +0,0 @@
1
- # linear-mcp-fast
2
-
3
- Fast, read-only MCP server for Linear that reads from Linear.app's local cache on macOS.
4
-
5
- **Why?**
6
- - **Instant**: No API calls, reads directly from local IndexedDB cache
7
- - **Offline**: Works without internet
8
- - **Lower context**: Smaller responses for AI assistants
9
-
10
- **Use with**: Official Linear MCP for write operations (comments, updates).
11
-
12
- ## Installation
13
-
14
- ```bash
15
- pip install linear-mcp-fast
16
- # or
17
- uv pip install linear-mcp-fast
18
- ```
19
-
20
- ## Setup
21
-
22
- ### Claude Code
23
-
24
- ```bash
25
- # 1. Add linear-mcp-fast (reads from local cache)
26
- claude mcp add linear-fast -- uvx linear-mcp-fast
27
-
28
- # 2. Add official Linear MCP (for writes)
29
- claude mcp add --transport http linear https://mcp.linear.app/mcp
30
- ```
31
-
32
- Now you have:
33
- - `linear-fast` → Fast reads from local cache
34
- - `linear` → Writes (comments, updates)
35
-
36
- ### Claude Desktop
37
-
38
- Add to `~/Library/Application Support/Claude/claude_desktop_config.json`:
39
-
40
- ```json
41
- {
42
- "mcpServers": {
43
- "linear-fast": {
44
- "command": "uvx",
45
- "args": ["linear-mcp-fast"]
46
- },
47
- "linear": {
48
- "command": "npx",
49
- "args": ["-y", "mcp-remote", "https://mcp.linear.app/mcp"]
50
- }
51
- }
52
- }
53
- ```
54
-
55
- ### Cursor / VS Code
56
-
57
- ```json
58
- {
59
- "mcpServers": {
60
- "linear-fast": {
61
- "command": "uvx",
62
- "args": ["linear-mcp-fast"]
63
- },
64
- "linear": {
65
- "command": "npx",
66
- "args": ["-y", "mcp-remote", "https://mcp.linear.app/mcp"]
67
- }
68
- }
69
- }
70
- ```
71
-
72
- ---
73
-
74
- ## Prerequisites
75
-
76
- - **macOS** (Linear.app stores cache in `~/Library/Application Support/Linear/`)
77
- - **Linear.app** installed and opened at least once
78
-
79
- ---
80
-
81
- ## Available Tools
82
-
83
- ### Reading (linear-fast)
84
-
85
- | Tool | Description |
86
- |------|-------------|
87
- | `list_issues` | List issues with filters (assignee, team, state, priority) |
88
- | `get_issue` | Get issue details with comments |
89
- | `list_my_issues` | List issues assigned to a user |
90
- | `list_teams` | List all teams |
91
- | `get_team` | Get team details |
92
- | `list_projects` | List all projects |
93
- | `get_project` | Get project details |
94
- | `list_users` | List all users |
95
- | `get_user` | Get user details |
96
- | `list_issue_statuses` | List workflow states for a team |
97
-
98
- ### Writing (official Linear MCP)
99
-
100
- Use the official Linear MCP (`linear`) for:
101
- - Creating/updating issues
102
- - Adding comments
103
- - Changing status
104
-
105
- ---
106
-
107
- ## Troubleshooting
108
-
109
- ### "Linear database not found"
110
-
111
- Linear.app needs to be installed and opened at least once:
112
- ```bash
113
- ls ~/Library/Application\ Support/Linear/IndexedDB/
114
- ```
115
-
116
- ### Data seems stale
117
-
118
- Local cache is updated when Linear.app syncs. Open Linear.app to refresh.
119
-
120
- ---
121
-
122
- ## How It Works
123
-
124
- ```
125
- Linear.app (Electron)
126
- ↓ syncs to
127
- IndexedDB (LevelDB format)
128
- ~/Library/Application Support/Linear/IndexedDB/...
129
- ↓ read by
130
- linear-mcp-fast
131
- ↓ provides
132
- Fast read-only access to issues, users, teams, comments
133
- ```
134
-
135
- ---
136
-
137
- ## License
138
-
139
- MIT