Skip to main content
Glama
finite-sample

R Econometrics MCP Server

http-api.md4.12 kB
# HTTP Server API RMCP provides a comprehensive HTTP API for web applications and remote access. ## Getting Started ### Quick Start ```bash # Install with HTTP dependencies pip install rmcp[http] # Start HTTP server rmcp serve-http # Test the server curl http://localhost:8000/health ``` ### Using the Live Server Try the deployed server without any installation: - **HTTP Server**: `https://rmcp-server-394229601724.us-central1.run.app/mcp` - **Interactive Docs**: `https://rmcp-server-394229601724.us-central1.run.app/docs` - **Health Check**: `https://rmcp-server-394229601724.us-central1.run.app/health` ## API Endpoints ### Main MCP Endpoint **POST /mcp** Main Model Context Protocol communication endpoint. **Request Headers:** - `Content-Type: application/json` - `MCP-Protocol-Version: 2025-06-18` (required after initialization) - `MCP-Session-Id: <session-id>` (included automatically after initialization) **JSON-RPC 2.0 Request Body:** ```json { "jsonrpc": "2.0", "id": 1, "method": "<method_name>", "params": {} } ``` **Available Methods:** - `initialize` - Initialize MCP session - `tools/list` - List available statistical analysis tools - `tools/call` - Execute statistical analysis tool - `resources/list` - List available data resources - `prompts/list` - List available prompt templates ### Server-Sent Events **GET /mcp/sse** Real-time event stream for progress updates and notifications. **Response:** `text/event-stream` with JSON-encoded events: ```javascript // Progress notification event: notification data: {"method": "notifications/progress", "params": {"progressToken": "abc", "progress": 50, "total": 100}} // Keep-alive signal event: keepalive data: {"status": "ok"} ``` ### Health Check **GET /health** Server health and status information. **Response:** ```json { "status": "healthy", "transport": "HTTP" } ``` ## Example Usage ### JavaScript Client ```javascript // Initialize session const initResponse = await fetch('/mcp', { method: 'POST', headers: { 'Content-Type': 'application/json' }, body: JSON.stringify({ jsonrpc: '2.0', id: 1, method: 'initialize', params: { protocolVersion: '2025-06-18', capabilities: {}, clientInfo: { name: 'rmcp-client', version: '1.0.0' } } }) }); // List available tools const toolsResponse = await fetch('/mcp', { method: 'POST', headers: { 'Content-Type': 'application/json', 'MCP-Protocol-Version': '2025-06-18', 'MCP-Session-Id': sessionId }, body: JSON.stringify({ jsonrpc: '2.0', id: 2, method: 'tools/list', params: {} }) }); ``` ### Python Client ```python import httpx # Initialize session response = httpx.post('http://localhost:8000/mcp', json={ 'jsonrpc': '2.0', 'id': 1, 'method': 'initialize', 'params': { 'protocolVersion': '2025-06-18', 'capabilities': {}, 'clientInfo': {'name': 'rmcp-client', 'version': '1.0.0'} } }) session_id = response.json()['result']['sessionId'] # Call statistical tool response = httpx.post('http://localhost:8000/mcp', headers={ 'MCP-Protocol-Version': '2025-06-18', 'MCP-Session-Id': session_id }, json={ 'jsonrpc': '2.0', 'id': 2, 'method': 'tools/call', 'params': { 'name': 'linear_model', 'arguments': { 'data': [[1, 2], [3, 4], [5, 6]], 'formula': 'y ~ x' } } } ) ``` ## Deployment ### Docker Deployment ```bash # Production deployment docker build -f docker/Dockerfile --target production -t rmcp-production . docker run -p 8000:8000 rmcp-production rmcp serve-http ``` ### Environment Configuration ```bash # Configure via environment variables export RMCP_HTTP_HOST=0.0.0.0 export RMCP_HTTP_PORT=8000 export RMCP_LOG_LEVEL=INFO # Start server rmcp serve-http ``` ### Cloud Deployment The HTTP API is designed for cloud deployment with: - Session management for concurrent users - CORS support for web applications - Health checks for load balancers - Structured logging for monitoring

Latest Blog Posts

MCP directory API

We provide all the information about MCP servers via our MCP API.

curl -X GET 'https://glama.ai/api/mcp/v1/servers/finite-sample/rmcp'

If you have feedback or need assistance with the MCP directory API, please join our Discord server