A Model Context Protocol (MCP) server that provides comprehensive documentation and usage examples for the AutoFixture testing library. This server runs in a Docker container and can be easily integrated with VSCode, Cursor, or Claude Desktop.
- Quick Start Guide: Get up and running with AutoFixture basics
- Method Search: Search for specific AutoFixture methods and their usage
- Class Information: Detailed documentation for core AutoFixture classes
- Package Information: NuGet package details for all AutoFixture extensions
- Usage Patterns: Common patterns and code examples
- Best Practices: Recommended approaches for using AutoFixture
- GitHub Documentation: Fetch latest docs directly from the repository
- get_quick_start: Get AutoFixture quick start guide and basic usage examples
- search_methods: Search for AutoFixture methods (e.g., 'Create', 'Build', 'Freeze')
- get_class_info: Get detailed information about classes like 'Fixture' or 'IFixture'
- get_packages: List AutoFixture NuGet packages by category (core/mocking/testing/all)
- get_usage_pattern: Get common usage patterns (e.g., 'customizing', 'automaq', 'xunit')
- get_best_practices: Get AutoFixture best practices and recommendations
- fetch_github_docs: Fetch latest documentation from GitHub (README, cheatsheet, FAQ)
- Docker installed on your system
- Node.js 20+ (for local development)
- VSCode, Cursor, or Claude Desktop
-
Build the Docker image:
docker build -t autofixture-mcp-server:latest . -
Test the server:
docker run --rm -i autofixture-mcp-server:latest
docker-compose up -d- Open Cursor settings (Cmd+Shift+P → "Preferences: Open User Settings (JSON)")
- Add the MCP server configuration:
{
"mcp": {
"servers": {
"autofixture": {
"command": "/Users/admin/dev/mcp/mcp-wrapper.sh"
}
}
}
}Or use the provided config file:
# Copy the configuration
cat cursor-mcp-config.json
# Add to your Cursor settings-
Install the Claude Code extension
-
Open your MCP configuration file:
- On macOS:
~/Library/Application Support/Code/User/globalStorage/saoudrizwan.claude-dev/settings/cline_mcp_settings.json - On Linux:
~/.config/Code/User/globalStorage/saoudrizwan.claude-dev/settings/cline_mcp_settings.json - On Windows:
%APPDATA%\Code\User\globalStorage\saoudrizwan.claude-dev\settings\cline_mcp_settings.json
- On macOS:
-
Add the server configuration:
{
"mcpServers": {
"autofixture": {
"command": "/Users/admin/dev/mcp/mcp-wrapper.sh",
"args": [],
"env": {}
}
}
}-
Open Claude Desktop settings:
- On macOS:
~/Library/Application Support/Claude/claude_desktop_config.json - On Windows:
%APPDATA%\Claude\claude_desktop_config.json - On Linux:
~/.config/Claude/claude_desktop_config.json
- On macOS:
-
Add the server configuration:
{
"mcpServers": {
"autofixture": {
"command": "/Users/admin/dev/mcp/mcp-wrapper.sh",
"args": [],
"env": {}
}
}
}- Restart Claude Desktop
If you want to develop or modify the server locally:
-
Install dependencies:
npm install
-
Build the project:
npm run build
-
Run locally (without Docker):
npm start
-
Development mode with auto-rebuild:
npm run dev
Once integrated, you can use the MCP server in your conversations:
User: "Use the autofixture MCP to show me how to get started with AutoFixture"
AI: [Calls get_quick_start tool and provides quick start guide]
User: "Search for methods related to creating objects in AutoFixture"
AI: [Calls search_methods with query "create" and shows available methods]
User: "Show me how to use AutoFixture with xUnit"
AI: [Calls get_usage_pattern with pattern "xunit" and provides examples]
User: "What AutoFixture packages are available for mocking?"
AI: [Calls get_packages with category "mocking" and lists all mocking packages]
mcp-config.json: Generic MCP configurationcursor-mcp-config.json: Cursor-specific configurationclaude_desktop_config.json: Claude Desktop configurationdocker-compose.yml: Docker Compose configurationmcp-wrapper.sh: Shell script wrapper for Docker integration
- Ensure Docker is running:
docker ps - Check Docker logs:
docker logs autofixture-mcp-server - Rebuild the image:
docker build -t autofixture-mcp-server:latest .
chmod +x mcp-wrapper.sh- Restart the editor after adding configuration
- Check that the wrapper script path is absolute
- Verify Docker is installed:
docker --version
# Run the wrapper script directly
./mcp-wrapper.sh
# Or use Docker directly
docker run --rm -i autofixture-mcp-server:latest.
├── src/
│ └── index.ts # Main MCP server implementation
├── dist/ # Compiled JavaScript (generated)
├── Dockerfile # Docker image configuration
├── docker-compose.yml # Docker Compose setup
├── mcp-wrapper.sh # Shell wrapper for Docker
├── package.json # Node.js dependencies
├── tsconfig.json # TypeScript configuration
├── mcp-config.json # Generic MCP config
├── cursor-mcp-config.json # Cursor-specific config
├── claude_desktop_config.json # Claude Desktop config
└── README.md # This file
The server is built using:
- TypeScript: Type-safe server implementation
- @modelcontextprotocol/sdk: Official MCP SDK
- axios: HTTP client for fetching GitHub documentation
- cheerio: HTML parsing (for future enhancements)
- Docker: Containerization for easy deployment
Feel free to extend the server with additional tools:
- Add new tool definitions in the
ListToolsRequestSchemahandler - Implement the tool logic in the
CallToolRequestSchemahandler - Rebuild the Docker image
MIT
- AutoFixture GitHub Repository
- AutoFixture Documentation
- Model Context Protocol Specification
- MCP SDK Documentation
1.0.0
Built with MCP for enhanced AI-assisted development with AutoFixture.