Overview
Infisical is an optional dependency for secure secrets management. The application works perfectly without it by falling back to environment variables. Key Points:- ✅ Fully optional - app works without Infisical
- ✅ Graceful fallback to environment variables
- ✅ Docker builds handle everything automatically
- ✅ Multiple installation options for local development
Quick Decision Tree
Installation Options
Option 1: Docker Build (RECOMMENDED)
Who: Production deployments, Docker users, CI/CD Advantages:- Zero configuration required
- Works on all platforms
- Automatic Rust toolchain setup
- Fastest and most reliable
- Installs Rust toolchain
- Compiles infisical-python from source
- Caches build artifacts for faster rebuilds
- Includes Infisical in final image
Option 2: Local with pip extras (EASY)
Who: Local developers, quick setup Advantages:- Simple one-line install
- Uses pre-built wheels when available
- Managed by pip
Option 3: Pre-built Wheels (FAST)
Who: Developers avoiding Rust toolchain, platform-specific needs Advantages:- No Rust toolchain required
- Fastest installation
- Predictable version
- ✅ Linux x86_64 (manylinux)
- ✅ macOS Intel (x86_64)
- ✅ macOS Apple Silicon (ARM64)
- ✅ Windows x86_64
Option 4: Build from Source (FULL CONTROL)
Who: Advanced users, contributing to project Advantages:- Latest version
- Platform-independent
- Full control over build
- Rust toolchain
- C compiler (gcc/clang)
- Python development headers
Option 5: Skip Infisical (USE ENVIRONMENT VARIABLES)
Who: Simple deployments, development without secrets manager Advantages:- No dependencies
- Fully supported
- Perfect for development
os.getenv():
Using Pre-built Wheels (Advanced)
Building Wheels Locally
Use the provided script to build wheels for multiple Python versions:Installing from Local Wheels
Troubleshooting
Import Error: infisical_client not found
Symptom:
Build Error: cargo not found
Symptom:
Platform Error: no matching distribution
Symptom:
PyO3 Build Error
Symptom:Configuration
Setting up Infisical Service
- Sign up at https://app.infisical.com
- Create a project
-
Generate credentials:
- Go to: Project Settings → Access Control → Machine Identities
- Create new Machine Identity
- Generate Universal Auth credentials
- Configure environment:
- Test connection:
Production Recommendations
Docker (Recommended)
Kubernetes
Cloud Run / App Engine
Performance Considerations
Build Times
| Method | First Build | Cached Build | Disk Space |
|---|---|---|---|
| Docker (BuildKit) | ~5 min | ~30 sec | ~2 GB |
| Local (Rust) | ~3 min | ~1 min | ~500 MB |
| Pre-built wheels | ~5 sec | ~5 sec | ~5 MB |
Recommendations
- CI/CD: Use Docker with BuildKit caching
- Local dev: Use pre-built wheels (2.3.5)
- Production: Use Docker or Kubernetes
Security Best Practices
Never commit secrets
Use Infisical in production
Rotate secrets regularly
FAQ
Q: Is Infisical required? A: No. The application works perfectly with environment variables. Q: Which installation method should I use? A: Docker for production, pre-built wheels (2.3.5) for local dev. Q: Can I switch between methods? A: Yes. Install/uninstall Infisical anytime. App adapts automatically. Q: What if build fails? A: Use Docker (automatic) or pre-built wheels (2.3.5). Q: How do I know if Infisical is working? A: Check logs for “Infisical secrets manager initialized” or use health check endpoint. Q: Can I mix Infisical and environment variables? A: Yes. Infisical takes precedence; missing secrets fall back to environment.Related Documentation
- Production Deployment Guide
- Docker Deployment
- Kubernetes Deployment
- Environment Configuration
- Security Best Practices
Getting Help
Issues:- GitHub Issues: https://github.com/vishnu2kmohan/mcp-server-langgraph/issues
- Check logs:
docker logs <container-id>
- Documentation: https://infisical.com/docs
- Community: https://infisical.com/slack
Last Updated: 2025-10-14 Version: 2.5.0 (Infisical now optional)