Mint an API key and make your first MCP call in five minutes.
Quickstart
This walkthrough takes you from zero to a successful ping against the Litmus
MCP server. It assumes Python 3.10+.
1. Mint an API key
In your Litmus dashboard, open Settings → API Keys and click Create
key. Give it a name (something like local dev or ci runner is fine), copy
the revealed value, and paste it somewhere safe — the full key is shown
exactly once.
API keys carry the same access as your org and are not tied to an individual user. Rotate them like any other production credential, and revoke a key immediately if it leaks.
2. Install the MCP Python SDK
pip install mcp3. Connect and call ping
Set the bearer header to your key and open a streamable HTTP session against the Litmus endpoint:
import asyncio
from mcp import ClientSession
from mcp.client.streamable_http import streamablehttp_client
async def main():
headers = {"Authorization": "Bearer litmus_sk_..."} # paste your key
async with streamablehttp_client(
"https://litmushiring.com/mcp/", headers=headers
) as (read, write, _):
async with ClientSession(read, write) as session:
await session.initialize()
result = await session.call_tool("ping", {"message": "hello"})
print(result.content[0].text)
asyncio.run(main())If everything is wired up, the program prints pong: hello and exits.
Always use the trailing slash. The Litmus MCP endpoint is
https://litmushiring.com/mcp/ — note the final /. Hitting /mcp (no
slash) triggers a 308 redirect, and most HTTP clients (httpx, the MCP
Python SDK) drop the Authorization header across the redirect. The
symptom is a confusing 401 Unauthorized even though your key is valid.
4. Next steps
- For Claude Desktop, Claude Code, or Cursor, the recommended path is Clerk OAuth — point the client at the URL and it handles sign-in for you. See Authentication → OAuth.
- Browse the Tool reference to see what's callable.
- Hit a snag? Troubleshooting covers the common failure modes.
