Overview
Syncline implements the Model Context Protocol (MCP) v2024-11-05 for AI agent integration. MCP uses JSON-RPC 2.0 over stdio (standard input/output) for communication.Transport
Connection
Communication happens over stdio (standard input/output):- Input: JSON-RPC requests sent to the server’s stdin
- Output: JSON-RPC responses sent from the server’s stdout
\n).
JSON-RPC 2.0 Format
Request
Must be
"2.0"Unique identifier for the request. Used to match responses.
The method to call (e.g.,
"tools/list", "tools/call")Optional parameters for the method
Response (Success)
Must be
"2.0"Matches the request
idThe result of the method call
Response (Error)
Standard JSON-RPC error code
Human-readable error message
Optional additional error information
Protocol Flow
1. Initialize
The client must initialize the connection before calling tools. Request:2. List Tools
Discover available tools. Request:3. Call Tool
Execute a tool with arguments. Request:Available Methods
initialize
Initialize the MCP session. Request:tools/list
List all available tools. Request:tools/call
Execute a tool. Request:Tool Schemas
find_mutual_availability
Find time slots where all attendees are available. Input Schema:schedule_meeting
Create a calendar event with Google Meet. Input Schema:check_availability
Check a user’s calendar. Input Schema:update_preferences
Update user scheduling preferences. Input Schema:Error Codes
Standard JSON-RPC 2.0 error codes:Invalid JSON received
Request is not a valid JSON-RPC 2.0 request
The requested method does not exist
Invalid method parameters
Server internal error
Error Response Example
Implementation Example
Python
Node.js
Best Practices
Request IDs
Use unique, incrementing request IDs:Error Handling
Always check for error responses:Timeout Handling
Implement timeouts for requests:Related Resources
Python Client
Build agents with Python
Node.js Client
Build agents with Node.js
Claude Integration
Use with Claude Desktop