quickcall-integrations 0.3.9__tar.gz → 0.5.0__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 (53) hide show
  1. {quickcall_integrations-0.3.9 → quickcall_integrations-0.5.0}/.gitignore +2 -0
  2. {quickcall_integrations-0.3.9 → quickcall_integrations-0.5.0}/PKG-INFO +46 -2
  3. {quickcall_integrations-0.3.9 → quickcall_integrations-0.5.0}/README.md +45 -1
  4. quickcall_integrations-0.5.0/mcp_server/api_clients/github_client.py +2603 -0
  5. quickcall_integrations-0.5.0/mcp_server/resources/github_resources.py +240 -0
  6. {quickcall_integrations-0.3.9 → quickcall_integrations-0.5.0}/mcp_server/tools/github_tools.py +635 -1
  7. {quickcall_integrations-0.3.9 → quickcall_integrations-0.5.0}/plugins/quickcall/.claude-plugin/plugin.json +1 -1
  8. quickcall_integrations-0.5.0/plugins/quickcall/commands/pr-summary.md +51 -0
  9. quickcall_integrations-0.5.0/plugins/quickcall/commands/projects.md +90 -0
  10. {quickcall_integrations-0.3.9 → quickcall_integrations-0.5.0}/pyproject.toml +1 -1
  11. quickcall_integrations-0.5.0/tests/test_pr_integration.py +354 -0
  12. quickcall_integrations-0.5.0/tests/test_project_integration.py +283 -0
  13. quickcall_integrations-0.5.0/tests/test_project_tools.py +767 -0
  14. {quickcall_integrations-0.3.9 → quickcall_integrations-0.5.0}/uv.lock +1 -1
  15. quickcall_integrations-0.3.9/mcp_server/api_clients/github_client.py +0 -1157
  16. quickcall_integrations-0.3.9/mcp_server/resources/github_resources.py +0 -116
  17. {quickcall_integrations-0.3.9 → quickcall_integrations-0.5.0}/.claude-plugin/marketplace.json +0 -0
  18. {quickcall_integrations-0.3.9 → quickcall_integrations-0.5.0}/.github/ISSUE_TEMPLATE/bug_report.yml +0 -0
  19. {quickcall_integrations-0.3.9 → quickcall_integrations-0.5.0}/.github/ISSUE_TEMPLATE/feature_request.yml +0 -0
  20. {quickcall_integrations-0.3.9 → quickcall_integrations-0.5.0}/.github/ISSUE_TEMPLATE/task.yml +0 -0
  21. {quickcall_integrations-0.3.9 → quickcall_integrations-0.5.0}/.github/workflows/publish-pypi.yml +0 -0
  22. {quickcall_integrations-0.3.9 → quickcall_integrations-0.5.0}/.pre-commit-config.yaml +0 -0
  23. {quickcall_integrations-0.3.9 → quickcall_integrations-0.5.0}/.quickcall-issue-template.yaml +0 -0
  24. {quickcall_integrations-0.3.9 → quickcall_integrations-0.5.0}/Dockerfile +0 -0
  25. {quickcall_integrations-0.3.9 → quickcall_integrations-0.5.0}/assets/logo.png +0 -0
  26. {quickcall_integrations-0.3.9 → quickcall_integrations-0.5.0}/mcp_server/__init__.py +0 -0
  27. {quickcall_integrations-0.3.9 → quickcall_integrations-0.5.0}/mcp_server/api_clients/__init__.py +0 -0
  28. {quickcall_integrations-0.3.9 → quickcall_integrations-0.5.0}/mcp_server/api_clients/slack_client.py +0 -0
  29. {quickcall_integrations-0.3.9 → quickcall_integrations-0.5.0}/mcp_server/auth/__init__.py +0 -0
  30. {quickcall_integrations-0.3.9 → quickcall_integrations-0.5.0}/mcp_server/auth/credentials.py +0 -0
  31. {quickcall_integrations-0.3.9 → quickcall_integrations-0.5.0}/mcp_server/auth/device_flow.py +0 -0
  32. {quickcall_integrations-0.3.9 → quickcall_integrations-0.5.0}/mcp_server/resources/__init__.py +0 -0
  33. {quickcall_integrations-0.3.9 → quickcall_integrations-0.5.0}/mcp_server/resources/slack_resources.py +0 -0
  34. {quickcall_integrations-0.3.9 → quickcall_integrations-0.5.0}/mcp_server/server.py +0 -0
  35. {quickcall_integrations-0.3.9 → quickcall_integrations-0.5.0}/mcp_server/tools/__init__.py +0 -0
  36. {quickcall_integrations-0.3.9 → quickcall_integrations-0.5.0}/mcp_server/tools/auth_tools.py +0 -0
  37. {quickcall_integrations-0.3.9 → quickcall_integrations-0.5.0}/mcp_server/tools/git_tools.py +0 -0
  38. {quickcall_integrations-0.3.9 → quickcall_integrations-0.5.0}/mcp_server/tools/slack_tools.py +0 -0
  39. {quickcall_integrations-0.3.9 → quickcall_integrations-0.5.0}/mcp_server/tools/utility_tools.py +0 -0
  40. {quickcall_integrations-0.3.9 → quickcall_integrations-0.5.0}/plugins/quickcall/commands/appraisal.md +0 -0
  41. {quickcall_integrations-0.3.9 → quickcall_integrations-0.5.0}/plugins/quickcall/commands/connect-github-pat.md +0 -0
  42. {quickcall_integrations-0.3.9 → quickcall_integrations-0.5.0}/plugins/quickcall/commands/connect.md +0 -0
  43. {quickcall_integrations-0.3.9 → quickcall_integrations-0.5.0}/plugins/quickcall/commands/slack-summary.md +0 -0
  44. {quickcall_integrations-0.3.9 → quickcall_integrations-0.5.0}/plugins/quickcall/commands/status.md +0 -0
  45. {quickcall_integrations-0.3.9 → quickcall_integrations-0.5.0}/plugins/quickcall/commands/updates.md +0 -0
  46. {quickcall_integrations-0.3.9 → quickcall_integrations-0.5.0}/requirements.txt +0 -0
  47. {quickcall_integrations-0.3.9 → quickcall_integrations-0.5.0}/tests/README.md +0 -0
  48. {quickcall_integrations-0.3.9 → quickcall_integrations-0.5.0}/tests/appraisal/__init__.py +0 -0
  49. {quickcall_integrations-0.3.9 → quickcall_integrations-0.5.0}/tests/appraisal/setup_test_data.py +0 -0
  50. {quickcall_integrations-0.3.9 → quickcall_integrations-0.5.0}/tests/test_appraisal_integration.py +0 -0
  51. {quickcall_integrations-0.3.9 → quickcall_integrations-0.5.0}/tests/test_appraisal_tools.py +0 -0
  52. {quickcall_integrations-0.3.9 → quickcall_integrations-0.5.0}/tests/test_integrations.py +0 -0
  53. {quickcall_integrations-0.3.9 → quickcall_integrations-0.5.0}/tests/test_tools.py +0 -0
@@ -108,3 +108,5 @@ dmypy.json
108
108
  .DS_Store
109
109
  Thumbs.db
110
110
  .githooks/
111
+ .specstory/.gitignore
112
+ .cursorindexingignore
@@ -1,6 +1,6 @@
1
1
  Metadata-Version: 2.4
2
2
  Name: quickcall-integrations
3
- Version: 0.3.9
3
+ Version: 0.5.0
4
4
  Summary: MCP server with developer integrations for Claude Code and Cursor
5
5
  Requires-Python: >=3.10
6
6
  Requires-Dist: fastmcp>=2.13.0
@@ -90,7 +90,7 @@ Add to MCP config (`~/.cursor/mcp.json` or `.cursor/mcp.json`):
90
90
  | **Slack** | Read/send messages, threads, channels | Yes |
91
91
 
92
92
  <details>
93
- <summary><strong>Available Tools (24)</strong></summary>
93
+ <summary><strong>Available Tools (26)</strong></summary>
94
94
 
95
95
  ### Git
96
96
  | Tool | Description |
@@ -107,6 +107,8 @@ Add to MCP config (`~/.cursor/mcp.json` or `.cursor/mcp.json`):
107
107
  | `get_commit` | Get commit details (message, stats, files) |
108
108
  | `list_branches` | List repository branches |
109
109
  | `manage_issues` | List, view, create, update, close, reopen, comment on issues + sub-issues |
110
+ | `manage_prs` | Full PR lifecycle: create, update, merge, close, review, comment, labels, assignees |
111
+ | `manage_projects` | GitHub Projects V2: add issues, update fields (Status, Priority, etc.) |
110
112
  | `check_github_connection` | Verify GitHub connection |
111
113
 
112
114
  ### Slack
@@ -193,6 +195,8 @@ GITHUB_USERNAME=your-username # Optional: for better UX
193
195
  | `/quickcall:status` | Show connection status |
194
196
  | `/quickcall:updates` | Get git updates (default: 1 day) |
195
197
  | `/quickcall:updates 7d` | Get updates for last 7 days |
198
+ | `/quickcall:pr-summary` | List open PRs for a repo |
199
+ | `/quickcall:pr-summary owner/repo` | List PRs for specific repo |
196
200
  | `/quickcall:slack-summary` | Summarize Slack messages (default: 1 day) |
197
201
  | `/quickcall:slack-summary 7d` | Summarize last 7 days |
198
202
 
@@ -327,6 +331,46 @@ Create a bug report issue titled "Login fails on Safari"
327
331
  Create issue with feature_request template
328
332
  ```
329
333
 
334
+ ## PR Management
335
+
336
+ The `manage_prs` tool provides full pull request lifecycle management:
337
+
338
+ ### Actions
339
+
340
+ | Action | Description |
341
+ |--------|-------------|
342
+ | `list` | List PRs with state filter |
343
+ | `view` | View PR details |
344
+ | `create` | Create PR (auto-assigns to self) |
345
+ | `update` | Update title, body, base branch |
346
+ | `merge` | Merge PR (merge/squash/rebase) |
347
+ | `close` | Close PR without merging |
348
+ | `reopen` | Reopen closed PR |
349
+ | `comment` | Add comment to PR |
350
+ | `request_reviewers` | Request user/team reviewers |
351
+ | `review` | Submit review (APPROVE, REQUEST_CHANGES, COMMENT) |
352
+ | `to_draft` | Convert PR to draft |
353
+ | `ready_for_review` | Mark draft as ready |
354
+ | `add_labels` | Add labels to PR |
355
+ | `remove_labels` | Remove labels from PR |
356
+ | `add_assignees` | Add assignees |
357
+ | `remove_assignees` | Remove assignees |
358
+
359
+ ### Examples
360
+
361
+ ```
362
+ List open PRs on my-repo
363
+ Create a PR from feature-branch to main titled "Add new feature"
364
+ Merge PR #42 with squash
365
+ Request review from @alice on PR #42
366
+ Approve PR #42 with comment "LGTM!"
367
+ Add labels bug and urgent to PR #42
368
+ ```
369
+
370
+ ### Auto-assign
371
+
372
+ When creating a PR, it automatically assigns to the current user unless `assignees` is explicitly provided.
373
+
330
374
  ## Troubleshooting
331
375
 
332
376
  ### Clean Reinstall
@@ -77,7 +77,7 @@ Add to MCP config (`~/.cursor/mcp.json` or `.cursor/mcp.json`):
77
77
  | **Slack** | Read/send messages, threads, channels | Yes |
78
78
 
79
79
  <details>
80
- <summary><strong>Available Tools (24)</strong></summary>
80
+ <summary><strong>Available Tools (26)</strong></summary>
81
81
 
82
82
  ### Git
83
83
  | Tool | Description |
@@ -94,6 +94,8 @@ Add to MCP config (`~/.cursor/mcp.json` or `.cursor/mcp.json`):
94
94
  | `get_commit` | Get commit details (message, stats, files) |
95
95
  | `list_branches` | List repository branches |
96
96
  | `manage_issues` | List, view, create, update, close, reopen, comment on issues + sub-issues |
97
+ | `manage_prs` | Full PR lifecycle: create, update, merge, close, review, comment, labels, assignees |
98
+ | `manage_projects` | GitHub Projects V2: add issues, update fields (Status, Priority, etc.) |
97
99
  | `check_github_connection` | Verify GitHub connection |
98
100
 
99
101
  ### Slack
@@ -180,6 +182,8 @@ GITHUB_USERNAME=your-username # Optional: for better UX
180
182
  | `/quickcall:status` | Show connection status |
181
183
  | `/quickcall:updates` | Get git updates (default: 1 day) |
182
184
  | `/quickcall:updates 7d` | Get updates for last 7 days |
185
+ | `/quickcall:pr-summary` | List open PRs for a repo |
186
+ | `/quickcall:pr-summary owner/repo` | List PRs for specific repo |
183
187
  | `/quickcall:slack-summary` | Summarize Slack messages (default: 1 day) |
184
188
  | `/quickcall:slack-summary 7d` | Summarize last 7 days |
185
189
 
@@ -314,6 +318,46 @@ Create a bug report issue titled "Login fails on Safari"
314
318
  Create issue with feature_request template
315
319
  ```
316
320
 
321
+ ## PR Management
322
+
323
+ The `manage_prs` tool provides full pull request lifecycle management:
324
+
325
+ ### Actions
326
+
327
+ | Action | Description |
328
+ |--------|-------------|
329
+ | `list` | List PRs with state filter |
330
+ | `view` | View PR details |
331
+ | `create` | Create PR (auto-assigns to self) |
332
+ | `update` | Update title, body, base branch |
333
+ | `merge` | Merge PR (merge/squash/rebase) |
334
+ | `close` | Close PR without merging |
335
+ | `reopen` | Reopen closed PR |
336
+ | `comment` | Add comment to PR |
337
+ | `request_reviewers` | Request user/team reviewers |
338
+ | `review` | Submit review (APPROVE, REQUEST_CHANGES, COMMENT) |
339
+ | `to_draft` | Convert PR to draft |
340
+ | `ready_for_review` | Mark draft as ready |
341
+ | `add_labels` | Add labels to PR |
342
+ | `remove_labels` | Remove labels from PR |
343
+ | `add_assignees` | Add assignees |
344
+ | `remove_assignees` | Remove assignees |
345
+
346
+ ### Examples
347
+
348
+ ```
349
+ List open PRs on my-repo
350
+ Create a PR from feature-branch to main titled "Add new feature"
351
+ Merge PR #42 with squash
352
+ Request review from @alice on PR #42
353
+ Approve PR #42 with comment "LGTM!"
354
+ Add labels bug and urgent to PR #42
355
+ ```
356
+
357
+ ### Auto-assign
358
+
359
+ When creating a PR, it automatically assigns to the current user unless `assignees` is explicitly provided.
360
+
317
361
  ## Troubleshooting
318
362
 
319
363
  ### Clean Reinstall