@@ -45,7 +45,7 @@ cargo build --target wasm32-unknown-unknown --release
4545cd deployments/cloudflare
4646make deploy
4747
48- # Live at: https://mcp-sdk- worker.guy-ernest .workers.dev
48+ # Your deployment will be available at: https://<your- worker-name> .workers.dev
4949```
5050
5151### Deploy to Fermyon Spin
@@ -54,7 +54,7 @@ make deploy
5454cd deployments/fermyon-spin
5555make deploy
5656
57- # Live at: https://mcp-fermyon-spin-3juc7zc4 .fermyon.app/
57+ # Your deployment will be available at: https://<your-app-name> .fermyon.app/
5858```
5959
6060## 🏗️ Architecture
@@ -116,7 +116,58 @@ Reports the runtime environment (Cloudflare vs Fermyon)
116116
117117## 🧪 Testing
118118
119- ### Test Any Deployment
119+ ### Using MCP Tester with Scenario Files
120+
121+ The repository includes comprehensive test scenarios that can be run with the ` mcp-tester ` tool:
122+
123+ ``` bash
124+ # Test with simple calculator scenario
125+ mcp-tester scenario < deployment-url> test-scenarios/calculator-simple.json
126+
127+ # Test with comprehensive calculator tests (including error cases)
128+ mcp-tester scenario < deployment-url> test-scenarios/calculator-test.yaml
129+
130+ # Test with minimal tool listing
131+ mcp-tester scenario < deployment-url> test-scenarios/minimal-test.json
132+ ```
133+
134+ #### Example: Testing Cloudflare Deployment
135+ ``` bash
136+ # From the rust-mcp-sdk root directory
137+ # Replace <your-worker-name> with your Cloudflare Worker subdomain
138+ ./target/release/mcp-tester scenario \
139+ https://< your-worker-name> .workers.dev \
140+ examples/wasm-mcp-server/test-scenarios/calculator-test.yaml
141+ ```
142+
143+ #### Example: Testing Fermyon Spin Deployment
144+ ``` bash
145+ # From the rust-mcp-sdk root directory
146+ # Replace <your-app-name> with your Fermyon app URL
147+ ./target/release/mcp-tester scenario \
148+ https://< your-app-name> .fermyon.app/ \
149+ examples/wasm-mcp-server/test-scenarios/calculator-test.yaml
150+ ```
151+
152+ ### Available Test Scenarios
153+
154+ 1 . ** ` calculator-simple.json ` ** - Basic calculator operations
155+ - Tests addition, multiplication, division, and subtraction
156+ - Validates correct results for each operation
157+
158+ 2 . ** ` calculator-test.yaml ` ** - Comprehensive calculator test suite
159+ - Tests all arithmetic operations with various inputs
160+ - Tests negative numbers and decimals
161+ - Tests error handling (division by zero, invalid operations, missing parameters)
162+ - Tests large numbers and edge cases
163+
164+ 3 . ** ` minimal-test.json ` ** - Minimal connectivity test
165+ - Simply lists available tools
166+ - Quick smoke test for deployment health
167+
168+ ### Manual Testing with curl
169+
170+ You can also test deployments manually:
120171
121172``` bash
122173# Initialize connection
@@ -135,6 +186,17 @@ curl -X POST <deployment-url> \
135186 -d ' {"jsonrpc":"2.0","id":"3","method":"tools/call","params":{"name":"calculator","arguments":{"operation":"add","a":5,"b":3}}}'
136187```
137188
189+ ### Building the MCP Tester
190+
191+ If you need to build the mcp-tester tool:
192+
193+ ``` bash
194+ # From the rust-mcp-sdk root directory
195+ cargo build --release --package mcp-server-tester
196+
197+ # The binary will be at: ./target/release/mcp-tester
198+ ```
199+
138200## 📊 Deployment Comparison
139201
140202| Platform | Build Target | Runtime | Global Edge | Cold Start | State Management |
222284
223285---
224286
225- ** Current Production Deployments:**
226- - 🌐 Cloudflare: https://mcp-sdk-worker.guy-ernest.workers.dev
227- - 🔄 Fermyon: https://mcp-fermyon-spin-3juc7zc4.fermyon.app/
287+ ** Example Deployments for Testing:**
288+ You can test the MCP protocol with these example deployments:
289+ - 🌐 Cloudflare Example: https://mcp-sdk-worker.guy-ernest.workers.dev
290+ - 🔄 Fermyon Example: https://mcp-fermyon-spin-3juc7zc4.fermyon.app/
291+
292+ Note: These are example deployments for testing. Deploy your own instances using the instructions above.
0 commit comments