Synter SDKs
Typed clients for the same REST tools endpoint used by the published local MCP server. The hosted remote MCP at mcp.synterai.com exposes the full tool catalog.
Python
pip install synter (0.1.2): 25 typed tools plus execute()
TypeScript / JavaScript
npm install @synterai/sdk-js (0.1.2)
Rust
cargo add synter (0.1.1)
Java
Maven ai.syntermedia:synter-sdk (0.1.1)
Go
Not published yet: use REST from net/http
Local MCP
npm package @synterai/mcp-server: 25 convenience tools
Install
pip install synterAuthenticate
Every SDK takes the key in its constructor and sends Authorization: Bearer syn_…. Confirm a key with GET https://api.synterai.com/v1/me.
| Surface | Endpoint | Accepted | Use |
|---|---|---|---|
| REST tools endpoint | POST https://synterai.com/api/v1/tools/run | Authorization: Bearer syn_…, X-Synter-Key: syn_…, X-API-Key: syn_… | Authorization: Bearer syn_… |
| REST resource endpoints | https://api.synterai.com/v1/… (campaigns, me, credits, tools/pending) | Authorization: Bearer syn_…, X-Synter-Key: syn_… | Authorization: Bearer syn_… |
| SDKs (Python, TypeScript, Rust, Java, Go) and the synter CLI | POST /api/v1/tools/run | The SDK sets the header for you | Pass the key to the client. Every SDK sends Authorization: Bearer syn_… |
| Local stdio MCP (npm @synterai/mcp-server) | POST https://synterai.com/api/v1/tools/run | Set SYNTER_API_KEY in the server's env block | The package sends Authorization: Bearer syn_… |
| Hosted MCP | https://mcp.synterai.com | Browser OAuth (the client sends Authorization: Bearer <OAuth access token>), or X-Synter-Key: syn_… for headless clients | OAuth. Headless: X-Synter-Key. Do not put an API key in Authorization on this host. |
Keys start with syn_ (sandbox keys with syn_test_). Create one at synterai.com/developer, keep it in SYNTER_API_KEY or a secret store, and send one header per request. On the hosted MCP endpoint, the Authorization header is reserved for the OAuth token the client gets from browser sign-in, so a failed key there shows up as a sign-in prompt rather than a key error. Use X-Synter-Key when you connect a hosted MCP client with a key. Details: Authentication.
Writes
Each SDK page shows how to pause a campaign and change a daily budget, and what comes back when the safety gate holds a write. The SDK pause and budget methods only reach Google Ads today; the REST pause and budget endpoints take a platform. Who approves what: Approval model and safety controls.
Two surfaces
@synterai/mcp-server wrap about 25 convenience tools that POST to /api/v1/tools/run, plus an execute() escape hatch for any whitelisted script. Hosted MCP at https://mcp.synterai.com is the full tool surface. See MCP tool reference.Credits
Tool costs are metered per name. list_campaigns costs 2 credits. Look up any tool with the hosted MCP forecast_tool_cost call before you run it. get_credit_balance and get_connection_status have no credit charge.
