Python SDK

The Python SDK package in this repository is synapsex.

Install

pip install synapsex
From source:
cd apps/agents-synapsex/shared/sdk/python
pip install -e .

Create A Client

from synapsex import SynapseXClient

client = SynapseXClient(
    api_key="sk_...",
    base_url="https://api.synapsex.ai",
    entity_id="user_42",
)
The client is async and uses Authorization: Bearer <api_key> for requests.

List Tools

tools = await client.list_all_tools(provider_ids=["gmail", "slack"])
for tool in tools:
    print(tool.name)
link = await client.get_connect_link("gmail", entity_id="user_42")
print(link)

Connected Accounts

accounts = await client.list_accounts(entity_id="user_42")

Execute Tools

result = await client.execute(
    action_name="gmail_send_email",
    input_data={
        "to": "friend@example.com",
        "subject": "Hello",
        "body": "Sent from SynapseX",
    },
    entity_id="user_42",
)

Framework Adapters

anthropic_tools = client.to_anthropic_tools(tools, entity_id="user_42")
openai_tools = client.to_openai_tools(tools, entity_id="user_42")
langchain_tools = client.to_langchain_tools(tools, entity_id="user_42")

Intelligent MCP Routing

plan = await client.plan_mcp(
    "Run QAOA for this graph",
    tenant_id="tenant-123",
)

print(plan["explanation"])

result = await client.ask_mcp(
    "Run QAOA for this graph",
    preferred_mcp="qcos-mcp",
    approve=True,
    tool_name="optimize_qaoa",
    tool_input={"graph": [[0, 1], [1, 2]], "p": 2, "shots": 1024},
)
Available helpers:
MethodPurpose
route_mcp(...)Select domain, MCP server and tool
plan_mcp(...)Create an explainable plan
ask_mcp(...)Plan or execute when approved

Close The Client

await client.close()
Or use your application lifecycle hooks to close the underlying httpx.AsyncClient during shutdown.