Better Auth MCP Server
# better-auth-mcp-server MCP Server
[](https://smithery.ai/server/@nahmanmate/better-auth-mcp-server)
MCP Server for Authentication Management
Enterprise-grade authentication solution providing:
- 🔐 Secure credential management with AES-256 encryption
- ⚙️ Multi-protocol auth (OAuth2, SAML, LDAP)
- 🛡️ Real-time threat detection and prevention
<a href="https://glama.ai/mcp/servers/7f1irpro2i"><img width="380" height="200" src="https://glama.ai/mcp/servers/7f1irpro2i/badge" alt="Better Auth Server MCP server" /></a>
## Features
### Core Tools
- `analyze_project` - Analyze project structure for auth setup recommendations
- `setup_better_auth` - Configure auth providers with project ID and API key
- `analyze_current_auth` - Detect existing auth.js/next-auth implementations
- `generate_migration_plan` - Create step-by-step migration path
### Testing & Security
- `test_auth_flows` - Validate login/register/reset/2fa flows
- `test_security` - Run OWASP-aligned security checks
- `analyze_logs` - Review auth system logs for issues
- `monitor_auth_flows` - Real-time authentication monitoring
### Available Resources
- `better-auth://config` - Current Better-Auth configuration settings
- `better-auth://logs` - Authentication system logs
## Development
Clone and install:
```bash
git clone https://github.com/better-auth-mcp-server/better-auth-mcp-server.git
cd better-auth-mcp-server
npm install
```
Build the server:
```bash
npm run build
```
For development with auto-rebuild:
```bash
npm run watch
```
## Configuration
### Environment Variables
```ini
# Required
BETTER_AUTH_PROJECT_ID=your-project-id
BETTER_AUTH_API_KEY=your-api-key
# Optional
BETTER_AUTH_ENV=development|staging|production
LOG_LEVEL=info|debug|error
```
### Security Best Practices
1. API Key Management
- Store API keys in environment variables
- Rotate keys regularly
- Use different keys per environment
2. Access Control
- Implement rate limiting
- Configure IP allowlists
- Use principle of least privilege
3. Monitoring
- Enable audit logging
- Monitor auth failures
- Set up alerts for suspicious activity
## Installation
### Installing via Smithery
To install Better Auth MCP Server for Claude Desktop automatically via [Smithery](https://smithery.ai/server/@nahmanmate/better-auth-mcp-server):
```bash
npx -y @smithery/cli install @nahmanmate/better-auth-mcp-server --client claude
```
To use with Claude Desktop, add the server config:
On MacOS: `~/Library/Application Support/Claude/claude_desktop_config.json`
On Windows: `%APPDATA%/Claude/claude_desktop_config.json`
```json
{
"mcpServers": {
"better-auth-mcp-server": {
"command": "node",
"args": ["/path/to/better-auth-mcp-server/build/index.js"],
"disabled": false,
"alwaysAllow": []
}
}
}
```
### Debugging
Since MCP servers communicate over stdio, debugging can be challenging. We recommend using the [MCP Inspector](https://github.com/modelcontextprotocol/inspector), which is available as a package script:
```bash
npm run inspector
```
The Inspector will provide a URL to access debugging tools in your browser.
## Usage Examples
### Project Setup
```typescript
// Initialize Better-Auth in your project
await mcp.useTool('setup_better_auth', {
projectPath: './my-next-app',
config: {
projectId: process.env.BETTER_AUTH_PROJECT_ID,
apiKey: process.env.BETTER_AUTH_API_KEY
}
});
// Test core authentication flows
await mcp.useTool('test_auth_flows', {
flows: ['login', 'register', '2fa']
});
```
### Migration from Auth.js/NextAuth
```typescript
// Analyze current auth implementation
await mcp.useTool('analyze_current_auth', {
projectPath: './my-next-app'
});
// Generate migration steps
await mcp.useTool('generate_migration_plan', {
projectPath: './my-next-app',
currentAuthType: 'next-auth'
});
```
TDQS
Scored across 8 tools
Most tools have distinct purposes, but there is some overlap between analyze_current_auth, analyze_project, and analyze_logs, which all involve analysis and could potentially be confused for similar tasks. However, their descriptions clarify specific focuses (existing implementation, project structure, logs), reducing ambiguity.
All tool names follow a consistent verb_noun pattern with snake_case, such as analyze_current_auth, setup_better_auth, and test_auth_flows. This predictability makes it easy for agents to understand and select tools based on their naming conventions.
With 8 tools, the server is well-scoped for its purpose of migrating to and managing Better-Auth. Each tool serves a clear role in the migration and monitoring process, from analysis and setup to testing and monitoring, without being overly sparse or bloated.
The tool set covers key aspects of migration (analysis, setup, testing, monitoring) but lacks explicit tools for updating or deleting configurations, which might be needed for ongoing maintenance. However, core workflows are well-covered, allowing agents to handle most migration tasks effectively.