Skip to content

Commit 5b7171c

Browse files
committed
feat: ✨ Implement Pix MCP server
0 parents  commit 5b7171c

22 files changed

+8016
-0
lines changed

.env.example

Lines changed: 13 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,13 @@
1+
# Efí (Gerencianet) Configuration
2+
EFI_CLIENT_ID=your_efi_client_id
3+
EFI_CLIENT_SECRET=your_efi_client_secret
4+
EFI_SANDBOX=true
5+
6+
# Server Configuration
7+
PORT=3000
8+
NODE_ENV=development
9+
10+
# Future providers (Phase 2)
11+
# CIELO_CLIENT_ID=your_cielo_client_id
12+
# CIELO_CLIENT_SECRET=your_cielo_client_secret
13+
# ADYEN_API_KEY=your_adyen_api_key

.eslintrc.json

Lines changed: 23 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,23 @@
1+
{
2+
"parser": "@typescript-eslint/parser",
3+
"extends": [
4+
"eslint:recommended"
5+
],
6+
"plugins": ["@typescript-eslint"],
7+
"parserOptions": {
8+
"ecmaVersion": 2022,
9+
"sourceType": "module"
10+
},
11+
"rules": {
12+
"@typescript-eslint/no-unused-vars": ["error", { "argsIgnorePattern": "^_" }],
13+
"@typescript-eslint/no-explicit-any": "warn",
14+
"prefer-const": "error",
15+
"no-var": "error",
16+
"no-undef": "off",
17+
"no-unused-vars": ["error", { "argsIgnorePattern": "^_" }]
18+
},
19+
"env": {
20+
"node": true,
21+
"es2022": true
22+
}
23+
}

.github/workflows/ci.yml

Lines changed: 71 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,71 @@
1+
name: CI/CD Pipeline
2+
3+
on:
4+
push:
5+
branches: [ main, develop ]
6+
pull_request:
7+
branches: [ main ]
8+
9+
jobs:
10+
test:
11+
runs-on: ubuntu-latest
12+
13+
strategy:
14+
matrix:
15+
node-version: [18.x, 20.x]
16+
17+
steps:
18+
- uses: actions/checkout@v4
19+
20+
- name: Use Node.js ${{ matrix.node-version }}
21+
uses: actions/setup-node@v4
22+
with:
23+
node-version: ${{ matrix.node-version }}
24+
cache: 'npm'
25+
26+
- name: Install dependencies
27+
run: npm ci
28+
29+
- name: Run linter
30+
run: npm run lint
31+
32+
- name: Run tests
33+
run: npm test
34+
35+
- name: Build project
36+
run: npm run build
37+
38+
- name: Test build
39+
run: node dist/index.js --help || true
40+
41+
security:
42+
runs-on: ubuntu-latest
43+
steps:
44+
- uses: actions/checkout@v4
45+
46+
- name: Run security audit
47+
run: npm audit --audit-level=high
48+
49+
- name: Check for vulnerabilities
50+
run: npm audit --audit-level=moderate
51+
52+
build-docker:
53+
runs-on: ubuntu-latest
54+
needs: [test, security]
55+
if: github.ref == 'refs/heads/main'
56+
57+
steps:
58+
- uses: actions/checkout@v4
59+
60+
- name: Set up Docker Buildx
61+
uses: docker/setup-buildx-action@v3
62+
63+
- name: Build Docker image
64+
run: |
65+
npm ci
66+
npm run build
67+
docker build -t pix-mcp-server:latest .
68+
69+
- name: Test Docker image
70+
run: |
71+
docker run --rm pix-mcp-server:latest node -e "console.log('Docker build successful')"

.gitignore

Lines changed: 41 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,41 @@
1+
# Dependencies
2+
node_modules/
3+
npm-debug.log*
4+
yarn-debug.log*
5+
yarn-error.log*
6+
7+
# Build outputs
8+
dist/
9+
build/
10+
11+
# Environment variables
12+
.env
13+
.env.local
14+
.env.production
15+
16+
# IDE
17+
.vscode/
18+
.idea/
19+
*.swp
20+
*.swo
21+
22+
# OS
23+
.DS_Store
24+
Thumbs.db
25+
26+
# Logs
27+
logs/
28+
*.log
29+
30+
# Runtime data
31+
pids/
32+
*.pid
33+
*.seed
34+
*.pid.lock
35+
36+
# Coverage directory used by tools like istanbul
37+
coverage/
38+
39+
# Temporary folders
40+
tmp/
41+
temp/

.prettierrc

Lines changed: 8 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,8 @@
1+
{
2+
"semi": true,
3+
"trailingComma": "es5",
4+
"singleQuote": true,
5+
"printWidth": 100,
6+
"tabWidth": 2,
7+
"useTabs": false
8+
}

0 commit comments

Comments
 (0)