Other MCP Clients
Any MCP-compatible client can connect using the Streamable HTTP transport.
Connection details
| Parameter | Value |
|---|---|
| URL | https://mcp-server-production-c654.up.railway.app/mcp |
| Transport | Streamable HTTP |
| Auth | Authorization: Bearer kstk_YOUR_KEY |
Generic MCP config
Most clients accept this JSON format:
json
{
"mcpServers": {
"ab-test-library": {
"url": "https://mcp-server-production-c654.up.railway.app/mcp",
"headers": {
"Authorization": "Bearer kstk_YOUR_KEY"
}
}
}
}Python SDK
python
from mcp.client.streamable_http import streamablehttp_client
from mcp import ClientSession
async with streamablehttp_client(
"https://mcp-server-production-c654.up.railway.app/mcp",
headers={"Authorization": "Bearer kstk_YOUR_KEY"}
) as (read, write, _):
async with ClientSession(read, write) as session:
await session.initialize()
# List available tools
tools = await session.list_tools()
# Call a tool
result = await session.call_tool(
"search_ab_tests",
{"query": "hero headline", "max_results": 5}
)TypeScript SDK
typescript
import { Client } from "@modelcontextprotocol/sdk/client/index.js";
import { StreamableHTTPClientTransport } from "@modelcontextprotocol/sdk/client/streamableHttp.js";
const transport = new StreamableHTTPClientTransport(
new URL("https://mcp-server-production-c654.up.railway.app/mcp"),
{ requestInit: { headers: { Authorization: "Bearer kstk_YOUR_KEY" } } }
);
const client = new Client({ name: "my-app", version: "1.0.0" });
await client.connect(transport);
const result = await client.callTool({
name: "search_ab_tests",
arguments: { query: "CTA button color", max_results: 10 }
});