Bloomingg/simple-mcp-server
If you are the rightful owner of simple-mcp-server 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.
A basic example of an MCP (Model Context Protocol) server built with TypeScript and `@modelcontextprotocol/sdk`.
Simple MCP Server
A basic example of an MCP (Model Context Protocol) server built with TypeScript and @modelcontextprotocol/sdk
.
This server provides a simple echo
tool that repeats back any message sent to it.
Features
- Built with TypeScript
- Uses
@modelcontextprotocol/sdk
- Includes a basic
echo
tool - Configured for npm publishing
- Communicates over stdio
Prerequisites
- Node.js (version 16 or higher recommended)
- npm (usually comes with Node.js)
Installation (as a developer)
- Clone the repository:
git clone <repository-url> cd simple-mcp-server
- Install dependencies:
npm install
- Build the server:
npm run build
Running the Server Locally
After building, you can run the compiled server directly using Node:
node build/index.js
The server will start and listen for MCP communication over standard input/output. You'll see a message like "Simple MCP Server running on stdio" in your terminal's standard error.
Usage with an MCP Client (e.g., Claude Desktop)
To use this server with an MCP client like Claude for Desktop, you need to configure the client to launch this server.
-
Build the server: Make sure you have run
npm run build
in the server's project directory. -
Find the absolute path: Get the absolute path to the compiled entry point, which is
build/index.js
within your project directory.- On macOS/Linux, you can use
pwd
in thebuild
directory or combinepwd
from the root with/build/index.js
. - On Windows, navigate to the
build
directory in Explorer and copy the path, or usecd build
and thencd
in Command Prompt.
- On macOS/Linux, you can use
-
Edit the client configuration: Open the MCP client's configuration file (e.g.,
claude_desktop_config.json
for Claude Desktop).- macOS:
~/Library/Application Support/Claude/claude_desktop_config.json
- Windows:
%APPDATA%\Claude\claude_desktop_config.json
- macOS:
-
Add the server entry: Add an entry for your server under
mcpServers
. Replace/ABSOLUTE/PATH/TO/YOUR/PROJECT/simple-mcp-server
with the actual absolute path you found in step 2.{ "mcpServers": { "simple-server": { // Use the name defined in src/index.ts "command": "node", "args": [ "/ABSOLUTE/PATH/TO/YOUR/PROJECT/simple-mcp-server/build/index.js" ] } // ... other servers might be listed here } }
-
Restart the client: Save the configuration file and restart your MCP client application.
Now, the client should be able to see and use the "simple-server" and its echo
tool.
Publishing to npm (Optional)
- Make sure your
package.json
has the correct details (name, version, author, repository, etc.). - Ensure you are logged into npm (
npm login
). - Run the publish command:
npm publish --access public # Use --access public for public packages
Once published, users could potentially use npx
to run it, similar to the filesystem
example, if the package.json
were configured with a bin
entry.
Development
- Build:
npm run build
(compiles TypeScript to JavaScript inbuild/
) - Watch:
npm run build -- --watch
(continuously watches for changes and recompiles)