Skip to content

Commit d99cca4

Browse files
committed
feat(packages): add bevy-brp-mcp package
Add Rust package definition for Bevy Remote Protocol integration.
1 parent 3ef57dc commit d99cca4

3 files changed

Lines changed: 66 additions & 0 deletions

File tree

modules/common/ai-tools/skills/agent-toolbelt/SKILL.md

Whitespace-only changes.

modules/common/ai-tools/skills/agent-toolbelt/agents/openai.yaml

Whitespace-only changes.

packages/bevy-brp-mcp/package.nix

Lines changed: 66 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,66 @@
1+
{
2+
lib,
3+
cargo,
4+
fetchFromGitHub,
5+
makeWrapper,
6+
rustPlatform,
7+
rustc,
8+
...
9+
}:
10+
11+
rustPlatform.buildRustPackage (finalAttrs: {
12+
pname = "bevy_brp_mcp";
13+
version = "0.20.1";
14+
15+
src = fetchFromGitHub {
16+
owner = "natepiano";
17+
repo = "bevy_brp";
18+
rev = "v${finalAttrs.version}";
19+
hash = "sha256-IMfv5Mp+rN3bLJcbwtE46nNXHaLtLYBUD8hTLJ1FsHo=";
20+
};
21+
22+
buildAndTestSubdir = "mcp";
23+
24+
cargoHash = "sha256-JGm/WyygJqpzCaFr9JRnVtJxRMFXl192kt2b7QCru88=";
25+
26+
nativeBuildInputs = [ makeWrapper ];
27+
28+
postFixup = ''
29+
wrapProgram $out/bin/bevy_brp_mcp \
30+
--suffix PATH : ${
31+
lib.makeBinPath [
32+
cargo
33+
rustc
34+
]
35+
}
36+
'';
37+
38+
doInstallCheck = true;
39+
40+
installCheckPhase = ''
41+
runHook preInstallCheck
42+
43+
response="$(
44+
printf '%s\n' '{"jsonrpc":"2.0","id":1,"method":"initialize","params":{"protocolVersion":"2024-11-05","capabilities":{},"clientInfo":{"name":"khanelinix-smoke","version":"0"}}}' \
45+
| "$out/bin/bevy_brp_mcp"
46+
)"
47+
grep -q '"protocolVersion":"2024-11-05"' <<< "$response"
48+
grep -q '"tools"' <<< "$response"
49+
50+
runHook postInstallCheck
51+
'';
52+
53+
meta = {
54+
description = "MCP server for Bevy Remote Protocol integration";
55+
homepage = "https://github.com/natepiano/bevy_brp";
56+
changelog = "https://github.com/natepiano/bevy_brp/blob/v${finalAttrs.version}/mcp/CHANGELOG.md";
57+
license = [
58+
lib.licenses.mit
59+
lib.licenses.asl20
60+
];
61+
maintainers = [ lib.maintainers.khaneliman ];
62+
mainProgram = "bevy_brp_mcp";
63+
platforms = lib.platforms.unix;
64+
sourceProvenance = [ lib.sourceTypes.fromSource ];
65+
};
66+
})

0 commit comments

Comments
 (0)