Everything MCP Server
README.md
# Everything MCP Server (Remote, deployable to Render.com)
A small personal remote MCP server with four demo tools:
- `echo` — repeats text back
- `add` — adds two numbers
- `currentTime` — returns current UTC time
- `randomFact` — returns a random fun fact
It uses **Streamable HTTP transport** (not stdio), which is what remote/hosted
MCP servers need — this is different from your local `WeatherMCPServer`,
which uses stdio and only runs as a subprocess on your own machine.
## 1. Test locally first (optional but recommended)
```bash
npm install
npm start
```
Server starts on `http://localhost:3000/mcp`. Test it with MCP Inspector:
```bash
npx @modelcontextprotocol/inspector
```
Open the Inspector UI (usually `http://localhost:6274`), choose
**Streamable HTTP** as the transport type, and set the URL to
`http://localhost:3000/mcp`. Click **Connect**, then **List Tools** to see
all four tools and try calling one.
## 2. Push this project to GitHub
```bash
git init
git add .
git commit -m "Initial commit: everything-mcp-server"
```
Create a new repository on GitHub (via the website), then:
```bash
git remote add origin https://github.com/<your-username>/everything-mcp-server.git
git branch -M main
git push -u origin main
```
## 3. Deploy to Render.com
1. Go to https://dashboard.render.com and sign in (or create a free account).
2. Click **New** → **Web Service**.
3. Connect your GitHub account and select the `everything-mcp-server` repo.
4. Render should auto-detect the `render.yaml` (Blueprint) — if it asks,
confirm you want to use it. If it doesn't auto-detect, configure manually:
- **Environment:** Docker
- **Plan:** Free
- **Health Check Path:** `/health`
5. Click **Create Web Service** (or **Apply** if using the Blueprint).
6. Wait for the build/deploy logs to finish — you'll get a live URL like:
```
https://everything-mcp-server.onrender.com
```
Your MCP endpoint is:
```
https://everything-mcp-server.onrender.com/mcp
```
Note: Render's free tier spins the service down after a period of
inactivity and takes ~30-60 seconds to wake back up on the next request —
normal for the free plan, not a bug.
## 4. Connect it to Claude
Remote MCP servers connect through **Settings → Connectors → Add custom
connector** in Claude (claude.ai or Claude Desktop) — not through
`claude_desktop_config.json` (that file is only for *local* stdio servers,
like your weather server).
1. Open Claude → Settings → Connectors.
2. Click **Add custom connector**.
3. Enter a name (e.g. "My Everything Server").
4. Enter the URL: `https://<your-app-name>.onrender.com/mcp`
5. Click **Add**, then **Connect**.
6. Start a new chat and ask Claude to use one of the tools, e.g.:
> "Use the add tool to add 15 and 27"
> "Give me a random fact using my everything server"
## Extending it
Add more tools by copying the `server.registerTool(...)` pattern in
`src/server.js` — each tool needs a name, a Zod input schema, and an async
handler that returns `{ content: [...] }`.
This server cannot be deployed
Maintenance
ActivitySlowing
ResponsivenessNo issues