Skip to content

Move ldk-server-mcp into the workspace #1

Move ldk-server-mcp into the workspace

Move ldk-server-mcp into the workspace #1

Workflow file for this run

name: MCP Checks
on: [ push, pull_request ]
permissions:
contents: read
concurrency:
group: ${{ github.workflow }}-${{ github.ref }}
cancel-in-progress: true
jobs:
mcp-unit:
runs-on: ubuntu-latest
steps:
- name: Checkout source code
uses: actions/checkout@v6
- name: Install Rust stable toolchain
run: |
curl --proto '=https' --tlsv1.2 -sSf https://sh.rustup.rs | sh -s -- -y --profile=minimal --default-toolchain stable
rustup override set stable
rustup component add rustfmt clippy
- name: Check formatting
run: cargo fmt --all -- --check
- name: Check MCP crate builds
run: cargo check -p ldk-server-mcp
- name: Run MCP crate tests
run: cargo test -p ldk-server-mcp
- name: Run MCP crate clippy
run: cargo clippy -p ldk-server-mcp --all-targets -- -D warnings
mcp-e2e:
runs-on: ubuntu-latest
steps:
- name: Checkout code
uses: actions/checkout@v6
- name: Enable caching for bitcoind
id: cache-bitcoind
uses: actions/cache@v5
with:
path: bin/bitcoind-${{ runner.os }}-${{ runner.arch }}
key: bitcoind-${{ runner.os }}-${{ runner.arch }}
- name: Download bitcoind
if: steps.cache-bitcoind.outputs.cache-hit != 'true'
run: |
source ./scripts/download_bitcoind.sh
mkdir -p bin
mv "$BITCOIND_EXE" bin/bitcoind-${{ runner.os }}-${{ runner.arch }}
- name: Set bitcoind environment variable
run: echo "BITCOIND_EXE=$( pwd )/bin/bitcoind-${{ runner.os }}-${{ runner.arch }}" >> "$GITHUB_ENV"
- name: Run MCP end-to-end tests
run: cargo test --manifest-path e2e-tests/Cargo.toml mcp --verbose --color=always -- --test-threads=4 --nocapture
env:
RUST_BACKTRACE: 1
BITCOIND_SKIP_DOWNLOAD: 1