ckaraca/fake-store-mcp
If you are the rightful owner of fake-store-mcp and would like to certify it and/or have it hosted online, please leave a comment on the right or send an email to henry@mcphub.com.
The Fake Store MCP Server is a Model Context Protocol server that integrates with the Fake Store API, providing AI assistants like Claude with tools for e-commerce prototyping and testing.
Fake Store MCP Server
A Model Context Protocol (MCP) server that provides AI assistants like Claude with access to the Fake Store API - a free REST API for e-commerce prototyping and testing.
Features
- 9 Ready-to-Use Tools for products, carts, and users
- Full TypeScript Support with strict type safety
- Production-Ready with retry logic and error handling
- Zero Configuration - works out of the box
- Beginner-Friendly - great for learning MCP development
Available Tools
Products
list_products
- Get all products with pagination and sortingget_product
- Get detailed product information by IDlist_categories
- Get all available product categoriesget_products_by_category
- Filter products by category
Carts
list_carts
- Get all shopping cartsget_cart
- Get cart details by IDget_user_carts
- Get all carts for a specific user
Users
list_users
- Get all usersget_user
- Get user details by ID
Installation
For Claude Desktop
- Install the package:
npm install -g fake-store-mcp
- Configure Claude Desktop:
Edit your Claude Desktop configuration file:
- macOS:
~/Library/Application Support/Claude/claude_desktop_config.json
- Windows:
%APPDATA%\Claude\claude_desktop_config.json
- Linux:
~/.config/Claude/claude_desktop_config.json
Add the following configuration:
{
"mcpServers": {
"fake-store": {
"command": "npx",
"args": ["-y", "fake-store-mcp"]
}
}
}
Alternative (if installed globally):
{
"mcpServers": {
"fake-store": {
"command": "fake-store-mcp"
}
}
}
- Restart Claude Desktop
The tools will now be available in your Claude conversations!
For Other MCP Clients
If you're using another MCP-compatible client, you can run the server directly:
npx fake-store-mcp
Or install it locally in your project:
npm install fake-store-mcp
Usage Examples
Example 1: Browsing Products
User: "Show me the first 5 products from the store"
Claude: Uses list_products
tool with limit: 5
Example 2: Product Search
User: "What electronics products are available?"
Claude: Uses list_categories
first, then get_products_by_category
with category: "electronics"
Example 3: User Cart Analysis
User: "Show me what user 1 has in their shopping carts"
Claude: Uses get_user_carts
with userId: 1
Example 4: Product Details
User: "Tell me more about product ID 5"
Claude: Uses get_product
with id: 5
Tool Parameters
list_products
{
limit?: number; // Limit number of results
sort?: 'asc' | 'desc'; // Sort order
}
get_product
{
id: number; // Product ID (required)
}
list_categories
No parameters required.
get_products_by_category
{
category: string; // Category name (required)
limit?: number; // Limit number of results
sort?: 'asc' | 'desc'; // Sort order
}
list_carts
{
limit?: number; // Limit number of results
sort?: 'asc' | 'desc'; // Sort order
}
get_cart
{
id: number; // Cart ID (required)
}
get_user_carts
{
userId: number; // User ID (required)
}
list_users
{
limit?: number; // Limit number of results
sort?: 'asc' | 'desc'; // Sort order
}
get_user
{
id: number; // User ID (required)
}
Development
Prerequisites
- Node.js 18 or higher
- npm or yarn
Setup
# Clone the repository
git clone https://github.com/ckaraca/fake-store-mcp.git
cd fake-store-mcp
# Install dependencies
npm install
# Build the project
npm run build
# Run in development mode (auto-rebuild on changes)
npm run dev
Project Structure
fake-store-mcp/
āāā src/
ā āāā index.ts # MCP server entry point
ā āāā tools/
ā ā āāā products.ts # Product tools
ā ā āāā carts.ts # Cart tools
ā ā āāā users.ts # User tools
ā āāā api/
ā ā āāā client.ts # HTTP client with retry logic
ā ā āāā types.ts # TypeScript type definitions
ā āāā utils/
ā āāā error-handler.ts # Error handling utilities
āāā dist/ # Compiled output
āāā package.json
Contributing
Contributions are welcome! This project is designed to be beginner-friendly and serves as a reference for learning MCP server development.
How to Contribute
- Fork the repository
- Create a feature branch (
git checkout -b feature/amazing-feature
) - Commit your changes (
git commit -m 'Add amazing feature'
) - Push to the branch (
git push origin feature/amazing-feature
) - Open a Pull Request
License
MIT License - see the file for details.
About Fake Store API
This server integrates with fakestoreapi.com, a free REST API for e-commerce testing and prototyping. The API provides:
- 20 sample products across 4 categories
- 10 sample users
- 7 sample shopping carts
- No authentication required
- No rate limits
Resources
Troubleshooting
Server not showing in Claude Desktop
- Verify the configuration file path is correct
- Ensure the JSON is valid (no trailing commas)
- Restart Claude Desktop completely
- Check Claude Desktop logs for errors
"Command not found" error
Make sure the package is installed globally:
npm install -g fake-store-mcp
Network errors
The server requires internet access to reach fakestoreapi.com. Check your network connection and firewall settings.
Acknowledgments
- Thanks to Fake Store API for providing the free API
- Built with the MCP TypeScript SDK
- Inspired by the MCP community
Made with ā¤ļø for the MCP community
If you find this useful, please give it a āļø on GitHub!