Science & Education
n₁·sinθ₁ = n₂·sinθ₂ for either angle, with the total-internal-reflection regime and critical angle when sinθ exceeds 1.
Call this tool from your code in three languages.
curl -X POST 'http://127.0.0.1:3003/en/api/tools/snell-law-calculator' \
-H 'Content-Type: application/json' \
-d '{"solveFor":"theta2","n1":1,"n2":1.5,"angleDeg":30}'Send a POST request with your inputs as JSON. File parameters require a separate upload first.
POST http://127.0.0.1:3003/en/api/tools/snell-law-calculator| Name | Type | Required | Description |
|---|---|---|---|
| solveFor | select | Yes | — |
| n1 | number | Yes | — |
| n2 | number | Yes | — |
| angleDeg | number | Yes | — |
Text result
{
"result": "Processed text content",
"error": "Error message (optional)",
"message": "Notification message (optional)",
"metadata": {
"key": "value"
}
}Add this tool to your Model Context Protocol server so AI agents can list and call it.
Add this block to your MCP client configuration:
{
"mcpServers": {
"elysiatools-snell-law-calculator": {
"name": "snell-law-calculator",
"description": "n₁·sinθ₁ = n₂·sinθ₂ for either angle, with the total-internal-reflection regime and critical angle when sinθ exceeds 1.",
"baseUrl": "http://127.0.0.1:3003/mcp/sse?toolId=snell-law-calculator",
"command": "",
"args": [],
"env": {},
"isActive": true,
"type": "sse"
}
}
}After connecting to the SSE endpoint, list the exposed tools:
{
"jsonrpc": "2.0",
"id": 1,
"method": "tools/list"
}Invoke the tool by its id, passing arguments built from its parameters:
{
"jsonrpc": "2.0",
"id": 2,
"method": "tools/call",
"params": {
"name": "snell-law-calculator",
"arguments": {
"solveFor": "theta2",
"n1": 1,
"n2": 1.5,
"angleDeg": 30
}
}
}Questions or issues? Contact [email protected]