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.
- backplane_mcp-0.1.0/.gitignore +102 -0
- backplane_mcp-0.1.0/CLAUDE.md +23 -0
- backplane_mcp-0.1.0/LICENSE +661 -0
- backplane_mcp-0.1.0/PKG-INFO +109 -0
- backplane_mcp-0.1.0/README.md +85 -0
- backplane_mcp-0.1.0/claude_desktop_config.example.json +36 -0
- backplane_mcp-0.1.0/envs/local.env +2 -0
- backplane_mcp-0.1.0/envs/prod.env +2 -0
- backplane_mcp-0.1.0/envs/prod.env.example +2 -0
- backplane_mcp-0.1.0/pyproject.toml +55 -0
- backplane_mcp-0.1.0/run.sh +2 -0
- backplane_mcp-0.1.0/src/valaris_mcp/__init__.py +0 -0
- backplane_mcp-0.1.0/src/valaris_mcp/allowlist.py +84 -0
- backplane_mcp-0.1.0/src/valaris_mcp/client.py +110 -0
- backplane_mcp-0.1.0/src/valaris_mcp/config.py +19 -0
- backplane_mcp-0.1.0/src/valaris_mcp/errors.py +50 -0
- backplane_mcp-0.1.0/src/valaris_mcp/prompts.py +954 -0
- backplane_mcp-0.1.0/src/valaris_mcp/resources.py +33 -0
- backplane_mcp-0.1.0/src/valaris_mcp/server.py +183 -0
- backplane_mcp-0.1.0/src/valaris_mcp/tools/__init__.py +0 -0
- backplane_mcp-0.1.0/src/valaris_mcp/tools/activity.py +54 -0
- backplane_mcp-0.1.0/src/valaris_mcp/tools/agents.py +378 -0
- backplane_mcp-0.1.0/src/valaris_mcp/tools/approvals.py +140 -0
- backplane_mcp-0.1.0/src/valaris_mcp/tools/assignments.py +85 -0
- backplane_mcp-0.1.0/src/valaris_mcp/tools/boards.py +238 -0
- backplane_mcp-0.1.0/src/valaris_mcp/tools/bulk.py +39 -0
- backplane_mcp-0.1.0/src/valaris_mcp/tools/card_dependencies.py +281 -0
- backplane_mcp-0.1.0/src/valaris_mcp/tools/cards.py +366 -0
- backplane_mcp-0.1.0/src/valaris_mcp/tools/channels.py +125 -0
- backplane_mcp-0.1.0/src/valaris_mcp/tools/columns.py +136 -0
- backplane_mcp-0.1.0/src/valaris_mcp/tools/context.py +107 -0
- backplane_mcp-0.1.0/src/valaris_mcp/tools/definitions.py +134 -0
- backplane_mcp-0.1.0/src/valaris_mcp/tools/git_repos.py +163 -0
- backplane_mcp-0.1.0/src/valaris_mcp/tools/health.py +27 -0
- backplane_mcp-0.1.0/src/valaris_mcp/tools/merge_queue.py +114 -0
- backplane_mcp-0.1.0/src/valaris_mcp/tools/notes.py +205 -0
- backplane_mcp-0.1.0/src/valaris_mcp/tools/prompt_configs.py +190 -0
- backplane_mcp-0.1.0/src/valaris_mcp/tools/resources.py +236 -0
- backplane_mcp-0.1.0/src/valaris_mcp/tools/search.py +122 -0
- backplane_mcp-0.1.0/src/valaris_mcp/tools/server_info.py +82 -0
- backplane_mcp-0.1.0/src/valaris_mcp/tools/teams.py +186 -0
- backplane_mcp-0.1.0/src/valaris_mcp/tools/webhooks.py +75 -0
- backplane_mcp-0.1.0/src/valaris_mcp/tools/workspace_config.py +262 -0
- backplane_mcp-0.1.0/src/valaris_mcp/tools/workspaces.py +204 -0
- backplane_mcp-0.1.0/src/valaris_mcp/tracking.py +201 -0
- backplane_mcp-0.1.0/tests/__init__.py +0 -0
- backplane_mcp-0.1.0/tests/conftest.py +34 -0
- backplane_mcp-0.1.0/tests/test_allowlist.py +152 -0
- backplane_mcp-0.1.0/tests/test_bundle_tools.py +83 -0
- backplane_mcp-0.1.0/tests/test_create_board_slug.py +31 -0
- backplane_mcp-0.1.0/tests/test_errors.py +94 -0
- backplane_mcp-0.1.0/tests/test_list_approvals.py +59 -0
- backplane_mcp-0.1.0/tests/test_list_executions.py +87 -0
- backplane_mcp-0.1.0/tests/test_merge_queue_tools.py +27 -0
- backplane_mcp-0.1.0/tests/test_server.py +460 -0
- backplane_mcp-0.1.0/tests/test_tools.py +2961 -0
- backplane_mcp-0.1.0/tests/test_tracking.py +334 -0
- backplane_mcp-0.1.0/tests/test_workspace_config_tools.py +153 -0
- 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`.
|