@crypto512/jicon-mcp 1.0.0 → 1.0.2
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.
- package/.jicon.json.safewrite +17 -0
- package/README.md +32 -8
- package/dist/config/types.js +3 -3
- package/dist/config/types.js.map +1 -1
- package/package.json +1 -1
|
@@ -0,0 +1,17 @@
|
|
|
1
|
+
{
|
|
2
|
+
"jira": {
|
|
3
|
+
"url": "https://jira.example.com",
|
|
4
|
+
"username": "your-email@example.com",
|
|
5
|
+
"token": "your-jira-api-token"
|
|
6
|
+
},
|
|
7
|
+
"confluence": {
|
|
8
|
+
"url": "https://confluence.example.com",
|
|
9
|
+
"username": "your-email@example.com",
|
|
10
|
+
"token": "your-confluence-api-token"
|
|
11
|
+
},
|
|
12
|
+
"permissions": {
|
|
13
|
+
"mode": "custom",
|
|
14
|
+
"whitelist": ["jira_read", "confluence_write", "tempo_read"],
|
|
15
|
+
"confluenceWriteHome": true
|
|
16
|
+
}
|
|
17
|
+
}
|
package/README.md
CHANGED
|
@@ -3,7 +3,7 @@
|
|
|
3
3
|
[](https://badge.fury.io/js/%40crypto512%2Fjicon-mcp)
|
|
4
4
|
[](https://opensource.org/licenses/MIT)
|
|
5
5
|
|
|
6
|
-
> Connect
|
|
6
|
+
> Connect your AI assistant to Jira, Confluence, and Tempo. Search issues, create pages, log time - all through natural conversation.
|
|
7
7
|
|
|
8
8
|
## Quick Start
|
|
9
9
|
|
|
@@ -17,7 +17,7 @@ npm install -g @crypto512/jicon-mcp
|
|
|
17
17
|
|
|
18
18
|
## What Can You Do?
|
|
19
19
|
|
|
20
|
-
Once configured, just ask
|
|
20
|
+
Once configured, just ask in natural language:
|
|
21
21
|
|
|
22
22
|
### Jira
|
|
23
23
|
- *"Find all high-priority bugs assigned to me"*
|
|
@@ -144,16 +144,16 @@ Create `.jicon.json` in your project root for project-specific settings:
|
|
|
144
144
|
|
|
145
145
|
### Permission Modes
|
|
146
146
|
|
|
147
|
-
Control what operations are allowed
|
|
147
|
+
Control what operations are allowed. **By default, Jicon runs in read-only mode** - all read tools across Jira, Confluence, and Tempo are available, but no write operations. Safe for exploration without risk of accidental modifications.
|
|
148
148
|
|
|
149
|
-
**
|
|
149
|
+
**Read-Only** (default) - all read tools enabled:
|
|
150
150
|
```json
|
|
151
|
-
{ "permissions": { "mode": "
|
|
151
|
+
{ "permissions": { "mode": "readonly" } }
|
|
152
152
|
```
|
|
153
153
|
|
|
154
|
-
**
|
|
154
|
+
**Full Access** - all operations enabled:
|
|
155
155
|
```json
|
|
156
|
-
{ "permissions": { "mode": "
|
|
156
|
+
{ "permissions": { "mode": "full" } }
|
|
157
157
|
```
|
|
158
158
|
|
|
159
159
|
**Custom** - fine-grained control:
|
|
@@ -166,6 +166,24 @@ Control what operations are allowed:
|
|
|
166
166
|
}
|
|
167
167
|
```
|
|
168
168
|
|
|
169
|
+
**Safe Write** - recommended for controlled write access:
|
|
170
|
+
```json
|
|
171
|
+
{
|
|
172
|
+
"permissions": {
|
|
173
|
+
"mode": "custom",
|
|
174
|
+
"whitelist": ["jira_read", "confluence_write", "tempo_read"],
|
|
175
|
+
"confluenceWriteHome": true
|
|
176
|
+
}
|
|
177
|
+
}
|
|
178
|
+
```
|
|
179
|
+
|
|
180
|
+
This configuration allows:
|
|
181
|
+
- **Jira**: Read-only (search, view issues, sprints, boards)
|
|
182
|
+
- **Confluence**: Write restricted to your personal space only
|
|
183
|
+
- **Tempo**: Read-only (view worklogs, no time logging)
|
|
184
|
+
|
|
185
|
+
The `confluenceWriteHome: true` setting ensures all Confluence write operations (drafts, comments, attachments) can only target your personal space, preventing accidental modifications to shared team spaces.
|
|
186
|
+
|
|
169
187
|
Available virtual actions: `jira_read`, `jira_write`, `jira_all`, `confluence_read`, `confluence_write`, `confluence_all`, `tempo_read`, `tempo_write`, `tempo_all`
|
|
170
188
|
|
|
171
189
|
## Authentication
|
|
@@ -205,7 +223,13 @@ Plus utility tools for content buffering, time calculations, URL generation, and
|
|
|
205
223
|
|
|
206
224
|
### Safe Confluence Editing
|
|
207
225
|
|
|
208
|
-
Confluence
|
|
226
|
+
Confluence write operations use a **draft workflow** for safety:
|
|
227
|
+
|
|
228
|
+
1. **Draft Creation**: When asked to create or edit content, Jicon creates a draft in your personal space
|
|
229
|
+
2. **User Review**: You review the draft content before it goes live
|
|
230
|
+
3. **Manual Publish**: You decide when and where to publish the final content
|
|
231
|
+
|
|
232
|
+
This means the AI assistant **never directly publishes** to shared team spaces - all changes are staged as drafts that require your explicit approval. Combined with `confluenceWriteHome: true`, this ensures complete control over what gets published.
|
|
209
233
|
|
|
210
234
|
### PlantUML Diagrams
|
|
211
235
|
|
package/dist/config/types.js
CHANGED
|
@@ -22,13 +22,13 @@ export const PermissionsConfigSchema = z.object({
|
|
|
22
22
|
confluenceWriteHome: z.boolean().default(false),
|
|
23
23
|
});
|
|
24
24
|
// Main configuration schema
|
|
25
|
-
// Default:
|
|
25
|
+
// Default: readonly mode for safety (no write operations allowed)
|
|
26
26
|
export const ConfigSchema = z.object({
|
|
27
27
|
jira: ServiceConfigSchema.optional(),
|
|
28
28
|
confluence: ServiceConfigSchema.optional(),
|
|
29
29
|
permissions: PermissionsConfigSchema.default({
|
|
30
|
-
mode: "
|
|
31
|
-
whitelist: [
|
|
30
|
+
mode: "readonly",
|
|
31
|
+
whitelist: [],
|
|
32
32
|
blacklist: [],
|
|
33
33
|
}),
|
|
34
34
|
});
|
package/dist/config/types.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"types.js","sourceRoot":"","sources":["../../src/config/types.ts"],"names":[],"mappings":"AAAA;;GAEG;AAEH,OAAO,EAAE,CAAC,EAAE,MAAM,KAAK,CAAC;AAExB,6BAA6B;AAC7B,MAAM,CAAC,MAAM,cAAc,GAAG,CAAC,CAAC,IAAI,CAAC,CAAC,OAAO,EAAE,QAAQ,CAAC,CAAC,CAAC;AAG1D,+BAA+B;AAC/B,MAAM,CAAC,MAAM,mBAAmB,GAAG,CAAC,CAAC,MAAM,CAAC;IAC1C,GAAG,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,GAAG,EAAE;IACrB,QAAQ,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,QAAQ,EAAE;IAC/B,KAAK,EAAE,CAAC,CAAC,MAAM,EAAE;IACjB,QAAQ,EAAE,cAAc,CAAC,QAAQ,EAAE;CACpC,CAAC,CAAC;AAIH,yBAAyB;AACzB,MAAM,CAAC,MAAM,oBAAoB,GAAG,CAAC,CAAC,IAAI,CAAC,CAAC,MAAM,EAAE,UAAU,EAAE,QAAQ,CAAC,CAAC,CAAC;AAG3E,mCAAmC;AACnC,MAAM,CAAC,MAAM,uBAAuB,GAAG,CAAC,CAAC,MAAM,CAAC;IAC9C,IAAI,EAAE,oBAAoB,CAAC,OAAO,CAAC,UAAU,CAAC;IAC9C,SAAS,EAAE,CAAC,CAAC,KAAK,CAAC,CAAC,CAAC,MAAM,EAAE,CAAC,CAAC,OAAO,CAAC,EAAE,CAAC;IAC1C,SAAS,EAAE,CAAC,CAAC,KAAK,CAAC,CAAC,CAAC,MAAM,EAAE,CAAC,CAAC,OAAO,CAAC,EAAE,CAAC;IAC1C,iFAAiF;IACjF,mBAAmB,EAAE,CAAC,CAAC,OAAO,EAAE,CAAC,OAAO,CAAC,KAAK,CAAC;CAChD,CAAC,CAAC;AAIH,4BAA4B;AAC5B,
|
|
1
|
+
{"version":3,"file":"types.js","sourceRoot":"","sources":["../../src/config/types.ts"],"names":[],"mappings":"AAAA;;GAEG;AAEH,OAAO,EAAE,CAAC,EAAE,MAAM,KAAK,CAAC;AAExB,6BAA6B;AAC7B,MAAM,CAAC,MAAM,cAAc,GAAG,CAAC,CAAC,IAAI,CAAC,CAAC,OAAO,EAAE,QAAQ,CAAC,CAAC,CAAC;AAG1D,+BAA+B;AAC/B,MAAM,CAAC,MAAM,mBAAmB,GAAG,CAAC,CAAC,MAAM,CAAC;IAC1C,GAAG,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,GAAG,EAAE;IACrB,QAAQ,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,QAAQ,EAAE;IAC/B,KAAK,EAAE,CAAC,CAAC,MAAM,EAAE;IACjB,QAAQ,EAAE,cAAc,CAAC,QAAQ,EAAE;CACpC,CAAC,CAAC;AAIH,yBAAyB;AACzB,MAAM,CAAC,MAAM,oBAAoB,GAAG,CAAC,CAAC,IAAI,CAAC,CAAC,MAAM,EAAE,UAAU,EAAE,QAAQ,CAAC,CAAC,CAAC;AAG3E,mCAAmC;AACnC,MAAM,CAAC,MAAM,uBAAuB,GAAG,CAAC,CAAC,MAAM,CAAC;IAC9C,IAAI,EAAE,oBAAoB,CAAC,OAAO,CAAC,UAAU,CAAC;IAC9C,SAAS,EAAE,CAAC,CAAC,KAAK,CAAC,CAAC,CAAC,MAAM,EAAE,CAAC,CAAC,OAAO,CAAC,EAAE,CAAC;IAC1C,SAAS,EAAE,CAAC,CAAC,KAAK,CAAC,CAAC,CAAC,MAAM,EAAE,CAAC,CAAC,OAAO,CAAC,EAAE,CAAC;IAC1C,iFAAiF;IACjF,mBAAmB,EAAE,CAAC,CAAC,OAAO,EAAE,CAAC,OAAO,CAAC,KAAK,CAAC;CAChD,CAAC,CAAC;AAIH,4BAA4B;AAC5B,kEAAkE;AAClE,MAAM,CAAC,MAAM,YAAY,GAAG,CAAC,CAAC,MAAM,CAAC;IACnC,IAAI,EAAE,mBAAmB,CAAC,QAAQ,EAAE;IACpC,UAAU,EAAE,mBAAmB,CAAC,QAAQ,EAAE;IAC1C,WAAW,EAAE,uBAAuB,CAAC,OAAO,CAAC;QAC3C,IAAI,EAAE,UAAU;QAChB,SAAS,EAAE,EAAE;QACb,SAAS,EAAE,EAAE;KACd,CAAC;CACH,CAAC,CAAC"}
|