Public
Like
mcp-tester
Val Town is a collaborative website to build and scale JavaScript apps.
Deploy APIs, crons, & store data – all from the browser, and deployed in milliseconds.
Viewing readonly version of main branch: v3View latest version
Test any MCP server - discover tools and call them interactively.
URL: https://dcm31-mcp-tester.web.val.run
- Enter any MCP server URL
- Discover available tools via the MCP protocol
- Call tools with custom arguments
- See raw JSON-RPC responses
Visit the endpoint and enter an MCP server URL to test.
# Discover tools curl -X POST "https://dcm31-mcp-tester.web.val.run/?url=https://dicemcp.val.run" \ -H "Content-Type: application/json" \ -d '{"method": "discover"}' # Call a tool curl -X POST "https://dcm31-mcp-tester.web.val.run/?url=https://dicemcp.val.run" \ -H "Content-Type: application/json" \ -d '{"method": "call", "tool": "roll_dice", "args": {"count": 3}}' # Quick connectivity test curl "https://dcm31-mcp-tester.web.val.run/api/test?url=https://dicemcp.val.run"
const TESTER = "https://dcm31-mcp-tester.web.val.run";
const MCP_URL = "https://your-mcp.val.run";
// Discover tools
const discovery = await fetch(`${TESTER}/?url=${encodeURIComponent(MCP_URL)}`, {
method: "POST",
headers: { "Content-Type": "application/json" },
body: JSON.stringify({ method: "discover" }),
}).then(r => r.json());
console.log(discovery.tools);
// Call a tool
const result = await fetch(`${TESTER}/?url=${encodeURIComponent(MCP_URL)}`, {
method: "POST",
headers: { "Content-Type": "application/json" },
body: JSON.stringify({
method: "call",
tool: "your_tool_name",
args: { foo: "bar" }
}),
}).then(r => r.json());
console.log(result);
| Endpoint | Method | Description |
|---|---|---|
/?url=<mcp-url> | POST | Run MCP operations (see body params below) |
/api/test?url=<mcp-url> | GET | Quick discovery test |
/ | GET | Interactive UI |
| Field | Description |
|---|---|
method | "discover" or "call" (or raw MCP method like "tools/list") |
tool | Tool name (required for "call") |
args | Tool arguments object (optional for "call") |
params | Raw params for passthrough MCP methods |
- mcp-dice - Minimal MCP server example
- MCP Specification