MCP Server
Connect your coding agent to these docs over the Model Context Protocol, so it answers from the current documentation instead of guessing.
These docs expose a Model Context Protocol server. Point your coding agent at it and it searches the live documentation while it works, instead of recalling a half-remembered API from its training data.
https://docs.rasto.co/_mcp
| Property | Value |
|---|---|
| Transport | Streamable HTTP |
| Authentication | None. The documentation is public |
| Access | Read only. It searches docs and nothing else |
| Data | Only these documentation pages. It cannot see your account, your keys, or your customers |
This is the documentation server. It answers questions about the API. It does not call the API, so nothing it does can move money or read your data. Giving an agent access to it is as risky as giving it a link to this site.
Install
claude mcp add --transport http rasto-docs https://docs.rasto.co/_mcp
Verify with claude mcp list, or run /mcp inside a session.
Add --scope project to commit it to .mcp.json for the whole team, or
--scope user to make it available in every project on your machine.
Create ~/.cursor/mcp.json for every project, or .cursor/mcp.json inside
one project:
{
"mcpServers": {
"rasto-docs": {
"url": "https://docs.rasto.co/_mcp"
}
}
}
Then open Settings, then MCP, and confirm the server shows as connected.
From the command line:
code --add-mcp '{"name":"rasto-docs","type":"http","url":"https://docs.rasto.co/_mcp"}'
Or commit it to the workspace in .vscode/mcp.json:
{
"servers": {
"rasto-docs": {
"type": "http",
"url": "https://docs.rasto.co/_mcp"
}
}
}
For every workspace instead of one, run MCP: Open User Configuration from the Command Palette and add the same block there.
Open Settings, then Connectors, then Add custom connector, and paste:
https://docs.rasto.co/_mcp
Or edit the config file directly:
- macOS:
~/Library/Application Support/Claude/claude_desktop_config.json - Windows:
%APPDATA%\Claude\claude_desktop_config.json
{
"mcpServers": {
"rasto-docs": {
"url": "https://docs.rasto.co/_mcp"
}
}
}
Restart the app afterwards.
Edit ~/.codex/config.toml:
[features]
experimental_use_rmcp_client = true
[mcp_servers.rasto-docs]
url = "https://docs.rasto.co/_mcp"
The [features] block is what enables Codex's HTTP MCP client. Without it,
older builds read only stdio servers and silently skip this entry.
Edit ~/.gemini/settings.json:
{
"mcpServers": {
"rasto-docs": {
"httpUrl": "https://docs.rasto.co/_mcp"
}
}
}
The key is httpUrl, not url. url is the older SSE transport, and a
type field is not part of this schema. Check the connection with /mcp
inside the CLI.
Edit ~/.codeium/windsurf/mcp_config.json:
{
"mcpServers": {
"rasto-docs": {
"serverUrl": "https://docs.rasto.co/_mcp"
}
}
}
Then open Settings, then Cascade, and refresh the server list.
Open the MCP Servers panel, then Remote Servers, and paste the URL.
Or click Configure MCP Servers and edit cline_mcp_settings.json:
{
"mcpServers": {
"rasto-docs": {
"type": "streamableHttp",
"url": "https://docs.rasto.co/_mcp",
"disabled": false,
"autoApprove": []
}
}
}
Set type explicitly. Omitting it falls back to the legacy SSE transport.
Point the client at https://docs.rasto.co/_mcp with no authentication.
The server speaks Streamable HTTP on one endpoint:
POSTfor client messages,GETfor the event stream.- Send
Accept: application/json, text/event-stream. - The
initializeresponse returns anMcp-Session-Idheader. Send it back on every subsequent request.
That covers Zed, JetBrains AI Assistant, Continue, and anything else that supports remote MCP servers.
What the server exposes
One tool, search_documentation. It runs a hybrid search, part semantic
and part keyword, over every page on this site.
| Parameter | Type | Default | Meaning |
|---|---|---|---|
query | string | required | What to search for |
limit | number | 10 | Maximum results |
semanticRatio | number | 0.75 | 1 is pure meaning-based matching, 0 is pure keyword. Lower it when you are searching for an exact field name or error code |
Results are matched sections, not whole pages. Each result carries a
section URL and a parent_url for the full page, and a well-behaved agent
follows parent_url when it needs the surrounding context.
Prompts that use it well
Search the Rasto docs for what gates virtual account creation, then tell me
which error each gate returns and the exact fix for each.
Look up how wallet sends are authorized, then write the verify-then-sign
step in TypeScript. Do not sign anything the verifier has not rebuilt.
Search the docs for the sandbox simulators and write a test that onboards a
customer, approves them, funds the treasury, and lands a deposit.
Naming the object or the error code gets much better results than naming the goal. "endorsement_profile_required" beats "my customer is not working".
Without an MCP client
Every page is available as raw Markdown by adding .md to its URL, and
llms.txt indexes all of them:
curl -s https://docs.rasto.co/llms.txt
curl -s https://docs.rasto.co/concepts/wallets.md
See Building with AI for the rest, including what to check in code an assistant writes for this API.