jsonplaceholder-mcp
Click on "Deploy Server".
Wait a few minutes for the server to deploy. Once ready, it will show a "Started" state.
In the chat, type
@followed by the MCP server name and your instructions, e.g., "@jsonplaceholder-mcp get comments for post 1"
That's it! The server will respond to your query, and you can continue using it as needed.
Here is a step-by-step guide with screenshots.
JSONPlaceholder MCP Server
An MCP (Model Context Protocol) server that provides tools to interact with the JSONPlaceholder API - a free fake REST API for testing and prototyping.
Features
This MCP server exposes the following tools:
Tools
get_posts - Retrieve posts from JSONPlaceholder
Get all posts
Get a specific post by ID
Filter posts by user ID
get_users - Retrieve user information
Get all users
Get a specific user by ID
get_comments - Retrieve comments
Get all comments
Get a specific comment by ID
Get comments for a specific post
get_todos - Retrieve todos
Get all todos
Get a specific todo by ID
Filter todos by user ID
create_post - Create a new post (simulated)
Requires: userId, title, body
update_post - Update an existing post (simulated)
Requires: id
Optional: userId, title, body
delete_post - Delete a post (simulated)
Requires: id
Resources
jsonplaceholder://api-info - Information about the JSONPlaceholder API
Related MCP server: mcp-jsonplaceholder
Installation
Clone this repository:
git clone <repository-url>
cd jsonplaceholder-mcpInstall dependencies:
npm installBuild the project:
npm run buildUsage
Running the Server
npm startDevelopment Mode
npm run devWatch Mode (for development)
npm run watchIntegration with Claude Desktop
To use this MCP server with Claude Desktop, add the following configuration to your Claude Desktop config file:
macOS
Edit: ~/Library/Application Support/Claude/claude_desktop_config.json
Windows
Edit: %APPDATA%/Claude/claude_desktop_config.json
Linux
Edit: ~/.config/Claude/claude_desktop_config.json
Add this configuration:
{
"mcpServers": {
"jsonplaceholder": {
"command": "node",
"args": ["/absolute/path/to/jsonplaceholder-mcp/dist/index.js"]
}
}
}Replace /absolute/path/to/jsonplaceholder-mcp with the actual path to your installation.
Example Usage in Claude
Once connected, you can ask Claude to:
"Get all posts from JSONPlaceholder"
"Show me user with ID 1"
"Get comments for post 1"
"Create a new post with title 'Test Post' and body 'This is a test'"
"Get all todos for user 1"
"Update post 1 with a new title"
"Delete post 1"
About JSONPlaceholder
JSONPlaceholder is a free fake REST API for testing and prototyping. It provides:
100 posts
500 comments
100 albums
5000 photos
200 todos
10 users
Note: All POST, PUT, PATCH, and DELETE operations are simulated and won't persist to the actual server.
API Base URL: https://jsonplaceholder.typicode.com
Development
This project uses:
TypeScript for type safety
@modelcontextprotocol/sdk - Official Anthropic MCP SDK
Node.js runtime
Project Structure
jsonplaceholder-mcp/
├── src/
│ └── index.ts # Main MCP server implementation
├── dist/ # Compiled JavaScript (generated)
├── package.json # Project dependencies and scripts
├── tsconfig.json # TypeScript configuration
└── README.md # This fileLicense
MIT
Contributing
Contributions are welcome! Please feel free to submit a Pull Request.
Available Tools
7 toolscreate_postA
Create a new post on JSONPlaceholder. Note: This won't actually be saved to the server, but will simulate the creation.
Inputs: body (required), title (required), userId (required).
delete_postA
Delete a post on JSONPlaceholder. Note: This won't actually delete from the server, but will simulate the deletion.
Inputs: id (required).
get_commentsA
Get comments from JSONPlaceholder. Can retrieve all comments, a specific comment by ID, or comments for a specific post.
Inputs: id, postId.
get_postsA
Get posts from JSONPlaceholder. Can retrieve all posts, a specific post by ID, or filter by user ID.
Inputs: id, userId.
get_todosA
Get todos from JSONPlaceholder. Can retrieve all todos, a specific todo by ID, or filter by user ID.
Inputs: id, userId.
get_usersA
Get users from JSONPlaceholder. Can retrieve all users or a specific user by ID.
Inputs: id.
update_postA
Update an existing post on JSONPlaceholder. Note: This won't actually update the server, but will simulate the update.
Inputs: id (required), body, title, userId.
Tool Schema Changelog
Recent tool additions, removals, and schema changes observed during successful MCP inspections.
Loading tool schema changelog…
TDQS
Scored across 7 tools
Each tool targets a distinct resource and action: get_posts, get_users, get_comments, get_todos, create_post, update_post, delete_post. There is no overlap in purpose or behavior, and the descriptions make the boundaries clear.
All tool names follow a consistent verb_noun pattern: get_ for reads and create_/update_/delete_ for mutations. The pattern is uniform and predictable across the entire set.
With 7 tools, the server is well-scoped for a JSONPlaceholder demo. Each tool covers a core operation without unnecessary bloat, fitting comfortably in the ideal 3-15 tool range.
Posts have full CRUD coverage (get, create, update, delete), but users, comments, and todos are read-only. This leaves obvious gaps for mutating those resources, though the core post workflow is complete.
Maintenance
Related MCP Connectors
JSONPlaceholder MCP — wraps JSONPlaceholder fake REST API (free, no auth)
The official MCP Server for the Mux API
An MCP server that let you interact with Cycloid.io Internal Development Portal and Platform
Related MCP Servers
- AlicenseBqualityDmaintenanceAn MCP server that retrieves product data from the DummyJSON API, supporting filtering by various parameters like ID, title, category, brand, price and rating.18 npmISC
- AlicenseNot gradedqualityCmaintenanceWraps the JSONPlaceholder fake REST API to enable testing and prototyping with CRUD operations on posts, comments, and other resources via MCP.150 npmMIT
- FlicenseNot gradedqualityDmaintenanceMCP server that provides tools to read JSON files and query data using jsonPath expressions.-
- AlicenseAqualityBmaintenanceAn MCP server that returns random JSON things — people, words, values, coordinates, and an always-empty list.4MIT