LDK
- typescript
0
GitHub Stars
typescript
Language
4 months ago
First Indexed
3 weeks ago
Catalog Refreshed
Documentation & install
Readme and setup notes from the catalogue, plus a client-ready config you can copy for your MCP host.
Installation
Add the following to your MCP client configuration file.
Configuration
View docs{
"mcpServers": {
"stevengeller-ldk-mcp": {
"command": "node",
"args": [
"/path/to/ldk-mcp/dist/index.js"
],
"env": {
"NETWORK": "testnet",
"LOG_LEVEL": "debug"
}
}
}
}You can run and interact with the LDK MCP Server to access Lightning Development Kit tooling from your development environment. This server lets you generate invoices, process test payments, manage channels, and integrate iOS-specific patterns like keychain storage and biometric auth, all via a simple MCP client workflow.
How to use
Use an MCP client to connect to the LDK MCP Server and perform Lightning operations. The server is exposed as a local stdio MCP endpoint, so you launch it as a local process and communicate with it through the provided command interface. Typical workflows include creating test invoices, simulating payments, opening and monitoring channels, and retrieving architecture or Swift code samples for integration.
How to install
Prerequisites: make sure Node.js and npm are installed on your machine.
-
Clone the repository and enter the project directory.
-
Install dependencies.
-
Build the MCP server.
-
Configure your MCP client to connect to the LDK MCP Server using the embedded example configuration.
-
Start using the MCP server through your client, then you can run the available MCP operations.
Configuration and startup details
Server configuration is demonstrated with a local stdio setup. The MCP server can be started as a local Node.js process and wired into your client workflow.
{
"mcpServers": {
"ldk_mcp": {
"command": "node",
"args": ["/path/to/ldk-mcp/dist/index.js"],
"env": {
"NETWORK": "testnet"
}
}
}
}
Environment variables and startup
The server uses environment variables to control its behavior. You should set NETWORK to indicate the Bitcoin network (mainnet, testnet, or regtest) and you may configure LOG_LEVEL for logging verbosity.
Example environment presets you can place in your local environment or a .env file:
NETWORK=testnet
LOG_LEVEL=debug
Tools and end-user capabilities
The server exposes practical tools to help you develop and test Lightning workflows, including generating invoices, processing simulated payments, managing channels, retrieving architecture guidance, and obtaining production-ready Swift code samples for integration.
Testing and sample scenarios
You can run complete Lightning development scenarios, such as multi-hop payments and channel lifecycles, to validate your wallet implementation and user flows before going to production.
Development workflow notes
When you start a new iOS Lightning wallet project, you can use the MCP server to obtain initial project structure, LDK initialization code, security setup patterns, and basic UI components. Use the provided tools to iterate on feature Implementation and testing steps described in your workflow.
Troubleshooting tips
If you encounter issues starting the MCP server, verify that Node.js and npm are installed, that dependencies are installed, and that the path to the MCP dist index file is correct in the startup command.
Notes on security and best practices
Follow security best practices for key management and crypto handling in your iOS wallet integration. Leverage the server's guidance for secure key storage, background processing patterns, and biometric authentication integration to protect Lightning operations.
Available tools
ldk_generate_invoice
Generate Lightning invoices for testing payment flows with proper encoding and expiry management.
ldk_pay_invoice
Simulate Lightning payments for development and testing of payment flows.
ldk_create_channel
Open Lightning channels with configurable capacity, push amount, and public visibility.
ldk_channel_status
Monitor channel states, balances, and liquidity across channels.
ios_keychain_test
Test iOS Keychain integration for secure key storage patterns.
ios_background_test
Test Lightning sync tasks running in iOS background processing.
ios_biometric_auth
Test biometric authentication integration for Lightning operations.
ldk_get_swift_code
Retrieve production-ready Swift code samples for LDK integration.
ldk_get_architecture
Provide architecture guidance and security best practices for the project.
ldk_test_scenario
Run complete Lightning development scenarios for testing and validation.