@@ -116,94 +116,6 @@ Available environment variables (can be set in `.env`):
116116- ` DEBUG ` (default: false) - Enable debug mode
117117- ` MCP_USER_AGENT ` - Custom User-Agent for website fetching
118118
119- ## API Documentation
120-
121- The server exposes a tool named "fetch" that accepts one required argument:
122-
123- - ` url ` : The URL of the website to fetch
124-
125- ## Examples
126-
127- ### Using STDIO Transport (Python Client)
128-
129- ``` python
130- import asyncio
131- from mcp.client.session import ClientSession
132- from mcp.client.stdio import StdioServerParameters, stdio_client
133-
134-
135- async def main ():
136- async with stdio_client(
137- StdioServerParameters(command = " uv" , args = [" run" , " mcp-simple-tool" ])
138- ) as (read, write):
139- async with ClientSession(read, write) as session:
140- await session.initialize()
141-
142- # List available tools
143- tools = await session.list_tools()
144- print (tools)
145-
146- # Call the fetch tool
147- result = await session.call_tool(" fetch" , {" url" : " https://example.com" })
148- print (result)
149-
150-
151- asyncio.run(main())
152- ```
153-
154- ### Using SSE Transport (curl example)
155-
156- ``` bash
157- # 1. Connect to SSE endpoint
158- curl -N http://localhost:8000/sse
159-
160- # You'll receive a response with a session ID like:
161- # event: endpoint
162- # data: /messages/?session_id=<session_id>
163-
164- # 2. Use the session ID to send commands
165- curl -X POST http://localhost:8000/messages/? session_id=< session_id> \
166- -H " Content-Type: application/json" \
167- -d ' {"type": "call_tool", "name": "fetch", "arguments": {"url": "https://example.com"}}'
168- ```
169-
170- ## Production Deployment
171-
172- For production deployment:
173-
174- 1 . Set up proper SSL/TLS termination (recommended: use Nginx as reverse proxy)
175- 2 . Configure appropriate security headers
176- 3 . Set up monitoring and logging
177- 4 . Consider rate limiting for public endpoints
178-
179- ### Docker Deployment Tips
180-
181- 1 . Always use specific versions in production:
182- ``` bash
183- docker compose pull # Get latest versions
184- docker compose up -d --build # Rebuild with new versions
185- ```
186-
187- 2 . Monitor container health:
188- ``` bash
189- docker compose ps # Check container status
190- docker compose logs -f # Watch logs in real-time
191- ```
192-
193- ## Health Checks
194-
195- The Docker setup includes health checks that verify the server's availability every 30 seconds. You can monitor the health status using:
196-
197- ``` bash
198- docker compose ps # Check the 'Status' column
199- ```
200-
201- The health check:
202- - Runs every 30 seconds
203- - Verifies the SSE endpoint is responding
204- - Retries 3 times before marking as unhealthy
205- - Has a 10-second startup grace period
206-
207119## Additional options
208120
209121### Installing via Smithery
0 commit comments