Quick Start
Your First Test (5 Minutes)
1. Create a simple MCP server
Create my_server.py:
import json
import sys
def handle(request):
method = request.get("method")
if method == "initialize":
return {
"protocolVersion": "2025-06-18",
"capabilities": {"tools": {}},
"serverInfo": {"name": "my-server", "version": "1.0.0"},
}
if method == "tools/list":
return {
"tools": [
{
"name": "greet",
"description": "Greet someone",
"inputSchema": {
"type": "object",
"properties": {"name": {"type": "string"}},
"required": ["name"],
},
}
]
}
if method == "tools/call":
name = (request.get("params") or {}).get("arguments", {}).get("name", "World")
return {
"content": [{"type": "text", "text": f"Hello, {name}!"}],
"isError": False,
}
if method == "ping":
return {}
raise ValueError(f"Unknown method: {method}")
def main():
for line in sys.stdin:
line = line.strip()
if not line:
continue
request = json.loads(line)
if "id" not in request:
continue
try:
response = {"jsonrpc": "2.0", "id": request["id"], "result": handle(request)}
except Exception as err:
response = {
"jsonrpc": "2.0",
"id": request["id"],
"error": {"code": -32603, "message": str(err)},
}
sys.stdout.write(json.dumps(response) + "\n")
sys.stdout.flush()
if __name__ == "__main__":
main()
2. Write a test
Create test_greet.robot:
*** Settings ***
Library MCPClientLibrary
Suite Setup Connect To MCP Server python my_server.py
Suite Teardown Disconnect All MCP Servers
*** Test Cases ***
Server Has Greet Tool
Tool Should Exist greet
Greet Tool Works
${result}= Call Tool greet name=Alice
Tool Result Should Not Be Error ${result}
Tool Result Should Contain Text ${result} Hello, Alice!
3. Run the test
robot test_greet.robot
You should see:
test_greet ::
Server Has Greet Tool PASS
Greet Tool Works PASS
2 tests, 2 passed
Next: Read the Keywords reference to explore what the library can do. Hit an error along the way? Check Troubleshooting.