Skip to content
Open
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension


Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
27 changes: 27 additions & 0 deletions .claude/settings.local.json
Original file line number Diff line number Diff line change
@@ -0,0 +1,27 @@
{
"permissions": {
"allow": [
"Bash(git remote set-url:*)",
"Bash(git fetch:*)",
"mcp__github__get_file_contents",
"mcp__github__create_or_update_file",
"Bash(grep:*)",
"Bash(cat:*)",
"Bash(npm run build:*)",
"Bash(npm uninstall:*)",
"Bash(npm install:*)",
"Bash(find:*)",
"Bash(mkdir:*)",
"Bash(git init:*)",
"Bash(git add:*)",
"Bash(git commit:*)",
"Bash(npm test)",
"Bash(git push:*)",
"Bash(git pull:*)",
"Bash(git rebase:*)",
"Bash(git checkout:*)",
"Bash(gh pr create:*)"
],
"deny": []
}
}
28 changes: 28 additions & 0 deletions Dockerfile
Original file line number Diff line number Diff line change
@@ -0,0 +1,28 @@
FROM node:18-slim

WORKDIR /app

# Copy package.json and package-lock.json
COPY package*.json ./

# Install dependencies
RUN npm ci --only=production

# Copy source code and configuration
COPY tsconfig.json ./
COPY src/ ./src/

# Build the TypeScript code
RUN npm run build

# Cleanup to reduce image size
RUN npm prune --production

# Set executable permission for the server
RUN chmod +x dist/server.js

# Use non-root user for better security
USER node

# Run the MCP server
CMD ["node", "dist/server.js"]
20 changes: 20 additions & 0 deletions README.md
Original file line number Diff line number Diff line change
Expand Up @@ -55,6 +55,8 @@ npm start

The server runs on stdio, which allows it to be used as a plugin for AI models and tools that support the Model Context Protocol.

For detailed instructions on integrating with Claude Desktop, see the [Claude Desktop Integration Guide](docs/claude-desktop-integration.md).

## Integration with Claude Desktop

This MCP server can be integrated with Claude Desktop to give Claude direct access to Bitcoin blockchain data without requiring internet access from Claude itself.
Expand Down Expand Up @@ -86,6 +88,24 @@ This integration allows Claude to access real-time Bitcoin data and perform anal
```bash
# Run in development mode (build and start)
npm run dev

# Run tests to verify server functionality
npm test
```

## Docker Support

You can also run the Bitcoin Data MCP Server in a Docker container:

```bash
# Build the Docker image
docker build -t bitcoin-data-mcp .

# Run the container
docker run -i bitcoin-data-mcp

# Alternatively, use docker-compose
docker-compose up
```

## Data Sources
Expand Down
14 changes: 14 additions & 0 deletions docker-compose.yml
Original file line number Diff line number Diff line change
@@ -0,0 +1,14 @@
version: '3.8'

services:
bitcoin-data-mcp:
build:
context: .
dockerfile: Dockerfile
image: bitcoin-data-mcp:latest
container_name: bitcoin-data-mcp
restart: unless-stopped
stdin_open: true
tty: true
# When using this with Claude Desktop, you would configure Claude to connect
# to this container's stdio instead of running the server process directly.
Loading