backplane-mcp 0.1.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 (59) hide show
  1. backplane_mcp-0.1.0/.gitignore +102 -0
  2. backplane_mcp-0.1.0/CLAUDE.md +23 -0
  3. backplane_mcp-0.1.0/LICENSE +661 -0
  4. backplane_mcp-0.1.0/PKG-INFO +109 -0
  5. backplane_mcp-0.1.0/README.md +85 -0
  6. backplane_mcp-0.1.0/claude_desktop_config.example.json +36 -0
  7. backplane_mcp-0.1.0/envs/local.env +2 -0
  8. backplane_mcp-0.1.0/envs/prod.env +2 -0
  9. backplane_mcp-0.1.0/envs/prod.env.example +2 -0
  10. backplane_mcp-0.1.0/pyproject.toml +55 -0
  11. backplane_mcp-0.1.0/run.sh +2 -0
  12. backplane_mcp-0.1.0/src/valaris_mcp/__init__.py +0 -0
  13. backplane_mcp-0.1.0/src/valaris_mcp/allowlist.py +84 -0
  14. backplane_mcp-0.1.0/src/valaris_mcp/client.py +110 -0
  15. backplane_mcp-0.1.0/src/valaris_mcp/config.py +19 -0
  16. backplane_mcp-0.1.0/src/valaris_mcp/errors.py +50 -0
  17. backplane_mcp-0.1.0/src/valaris_mcp/prompts.py +954 -0
  18. backplane_mcp-0.1.0/src/valaris_mcp/resources.py +33 -0
  19. backplane_mcp-0.1.0/src/valaris_mcp/server.py +183 -0
  20. backplane_mcp-0.1.0/src/valaris_mcp/tools/__init__.py +0 -0
  21. backplane_mcp-0.1.0/src/valaris_mcp/tools/activity.py +54 -0
  22. backplane_mcp-0.1.0/src/valaris_mcp/tools/agents.py +378 -0
  23. backplane_mcp-0.1.0/src/valaris_mcp/tools/approvals.py +140 -0
  24. backplane_mcp-0.1.0/src/valaris_mcp/tools/assignments.py +85 -0
  25. backplane_mcp-0.1.0/src/valaris_mcp/tools/boards.py +238 -0
  26. backplane_mcp-0.1.0/src/valaris_mcp/tools/bulk.py +39 -0
  27. backplane_mcp-0.1.0/src/valaris_mcp/tools/card_dependencies.py +281 -0
  28. backplane_mcp-0.1.0/src/valaris_mcp/tools/cards.py +366 -0
  29. backplane_mcp-0.1.0/src/valaris_mcp/tools/channels.py +125 -0
  30. backplane_mcp-0.1.0/src/valaris_mcp/tools/columns.py +136 -0
  31. backplane_mcp-0.1.0/src/valaris_mcp/tools/context.py +107 -0
  32. backplane_mcp-0.1.0/src/valaris_mcp/tools/definitions.py +134 -0
  33. backplane_mcp-0.1.0/src/valaris_mcp/tools/git_repos.py +163 -0
  34. backplane_mcp-0.1.0/src/valaris_mcp/tools/health.py +27 -0
  35. backplane_mcp-0.1.0/src/valaris_mcp/tools/merge_queue.py +114 -0
  36. backplane_mcp-0.1.0/src/valaris_mcp/tools/notes.py +205 -0
  37. backplane_mcp-0.1.0/src/valaris_mcp/tools/prompt_configs.py +190 -0
  38. backplane_mcp-0.1.0/src/valaris_mcp/tools/resources.py +236 -0
  39. backplane_mcp-0.1.0/src/valaris_mcp/tools/search.py +122 -0
  40. backplane_mcp-0.1.0/src/valaris_mcp/tools/server_info.py +82 -0
  41. backplane_mcp-0.1.0/src/valaris_mcp/tools/teams.py +186 -0
  42. backplane_mcp-0.1.0/src/valaris_mcp/tools/webhooks.py +75 -0
  43. backplane_mcp-0.1.0/src/valaris_mcp/tools/workspace_config.py +262 -0
  44. backplane_mcp-0.1.0/src/valaris_mcp/tools/workspaces.py +204 -0
  45. backplane_mcp-0.1.0/src/valaris_mcp/tracking.py +201 -0
  46. backplane_mcp-0.1.0/tests/__init__.py +0 -0
  47. backplane_mcp-0.1.0/tests/conftest.py +34 -0
  48. backplane_mcp-0.1.0/tests/test_allowlist.py +152 -0
  49. backplane_mcp-0.1.0/tests/test_bundle_tools.py +83 -0
  50. backplane_mcp-0.1.0/tests/test_create_board_slug.py +31 -0
  51. backplane_mcp-0.1.0/tests/test_errors.py +94 -0
  52. backplane_mcp-0.1.0/tests/test_list_approvals.py +59 -0
  53. backplane_mcp-0.1.0/tests/test_list_executions.py +87 -0
  54. backplane_mcp-0.1.0/tests/test_merge_queue_tools.py +27 -0
  55. backplane_mcp-0.1.0/tests/test_server.py +460 -0
  56. backplane_mcp-0.1.0/tests/test_tools.py +2961 -0
  57. backplane_mcp-0.1.0/tests/test_tracking.py +334 -0
  58. backplane_mcp-0.1.0/tests/test_workspace_config_tools.py +153 -0
  59. backplane_mcp-0.1.0/uv.lock +929 -0
@@ -0,0 +1,102 @@
1
+ # Python
2
+ __pycache__/
3
+ *.py[cod]
4
+ *$py.class
5
+ *.egg-info/
6
+ dist/
7
+ build/
8
+ .eggs/
9
+ *.egg
10
+ .venv/
11
+ venv/
12
+ .serena/
13
+
14
+
15
+ # Node
16
+ node_modules/
17
+ .pnpm-store/
18
+
19
+ # Build output
20
+ frontend/dist/
21
+
22
+ # Environment
23
+ .env
24
+ .env.local
25
+ .env.*.local
26
+ mcp-server/envs/prod.env
27
+ mcp-server/envs/*.local.env
28
+
29
+ # IDE
30
+ .vscode/
31
+ .idea/
32
+ *.swp
33
+ *.swo
34
+ *~
35
+
36
+ # OS
37
+ .DS_Store
38
+ Thumbs.db
39
+
40
+ # Docker
41
+ postgres-data/
42
+
43
+ # Runner runtime artifacts
44
+ runner/logs/
45
+ runner/bin/
46
+ # Top-level runner binary (the launch command runs ./bin/backplane-runner)
47
+ /bin/
48
+
49
+ # Local file storage (dev fallback for GCS)
50
+ backend/data/
51
+
52
+ # Alembic
53
+ backend/alembic/versions/__pycache__/
54
+
55
+ # GCP service account keys
56
+ **/gcp-sa-key.json
57
+ *.key.json
58
+
59
+ # TypeScript build info
60
+ *.tsbuildinfo
61
+
62
+ # Testing
63
+ .coverage
64
+ htmlcov/
65
+ .pytest_cache/
66
+
67
+ # Runner working state
68
+ runner/bin/
69
+ runner/repos/
70
+ runner/repos-*/
71
+
72
+ # Runner run-configs carry live API keys and client-shaped settings — never
73
+ # track them. Only the reference variants (*.example.* and *.docker.*, which use
74
+ # ${VALARIS_API_KEY} placeholders) are committed. This is a pattern deny (not a
75
+ # per-file allowlist) so a new client config can never slip in tracked.
76
+ # Session-1 secrets containment, docs/opensource-consolidation-plan.md.
77
+ runner/configs/*.yaml
78
+ runner/configs/*.yml
79
+ runner/configs/*.json
80
+ runner/configs/poc-*
81
+ !runner/configs/*.example.yaml
82
+ !runner/configs/*.example.yml
83
+ !runner/configs/*.example.json
84
+ !runner/configs/*.docker.yaml
85
+ !runner/configs/*.docker.yml
86
+ !runner/configs/*.docker.json
87
+
88
+ # Local MCP config carries the LIVE prod API key — never track it.
89
+ # (Committed history only ever held a clean localhost stub; this keeps it that way.)
90
+ .mcp.json
91
+
92
+ # Claude Code per-user session state (agents/hooks/rules/skills remain tracked)
93
+ .claude/projects/
94
+ .claude/scheduled_tasks.lock
95
+ .claude/worktrees/
96
+
97
+ # Valaris visual-testing run artifacts
98
+ .valaris/
99
+
100
+ # Local dev compose override (host port remap)
101
+ docker-compose.localdev.yml
102
+ docker-compose.override.yml
@@ -0,0 +1,23 @@
1
+ # MCP Server — Quick Reference
2
+
3
+ ```bash
4
+ # Run
5
+ uv run valaris-mcp
6
+
7
+ # Test
8
+ uv run --extra dev pytest tests/ -v
9
+
10
+ # Lint
11
+ ruff check src/
12
+ ruff format src/
13
+ ```
14
+
15
+ ## Adding a New Tool
16
+
17
+ 1. Create or extend a module in `src/valaris_mcp/tools/`.
18
+ 2. Decorate with `@mcp.tool()`, then `@handle_api_errors` below it.
19
+ 3. Last parameter: `ctx: Context = None`.
20
+ 4. Return `json.dumps(result, indent=2, default=str)`.
21
+ 5. Include `_hint` field in response for agentic guidance.
22
+ 6. Register the module import in `server.py`.
23
+ 7. Add tests in `tests/test_tools.py`.