200 operations across 33 groups. Every call goes to https://api.robosystems.ai and authenticates with an API key from your account settings.
Generated from the OpenAPI specification the API is serving, version 1.12.6.
RoboSystems is an open-source, AI-native financial intelligence platform for accounting, financial reporting, and investment management. It gives AI agents and analysts a ledger-grade system of record they can both query and operate — closing the books, producing reports, and analyzing portfolios across accounting, market, and SEC data. The platform powers RoboLedger for accounting and RoboInvestor for investment research, with knowledge graphs managed through the RoboSystems app.
The core platform surface for querying and managing graphs. Reads are REST GETs; every write is a named OperationEnvelope operation (/operations/{op_name}) with Idempotency-Key support, audit logging, and SSE progress at /v1/operations/{id}/stream.
Query and data access:
Graph and infrastructure state:
download_extension — .lbug.zip or zstd .lbug.zst)Lifecycle commands (/operations/{op_name}):
Reads are REST GETs; content writes share the same /operations/{op_name} envelope as lifecycle commands.
index-document / delete-documentcreate-file-upload, ingest-file, and delete-file commands with list and inspect readsrecall plus list/get reads, with remember / forget / update-memory commandsPOST /v1/graphs/{graph_id}/mcp, and the graph-agnostic POST /v1/mcp serves the same transport to OAuth clientsDomain extensions (RoboLedger, RoboInvestor) bring their own schema and OLTP tables on a schema-per-tenant PostgreSQL database, and materialize to the graph for analytics. Content is authored as block molecules — self-describing envelopes bundling atomic facts with their structure, rules, and verification. The surface is graph-scoped at the URL level (graph_id is a path parameter, never a query argument), split by transport:
POST /extensions/{graph_id}/graphql — schema composed dynamically from enabled domainsPOST /extensions/{domain}/{graph_id}/operations/{operation_name} — named OperationEnvelope commands with Idempotency-Key and SSE progressPOST /extensions/{domain}/{graph_id}/operations/{view_name} — read-only analytics over the materialized graphRoboLedger is an accounting and financial reporting extension — a ledger-grade system of record that AI and analysts can both query and operate, broadly implementing the Seattle Method. Three block molecules are the authoring substrate:
evaluate-rules runs arithmetic checks over materialized facts, and assert-metrics writes asserted metric seriesfac (fundamentals) and rs-gaap (~2,000 curated US-GAAP concepts)Built on the blocks:
closed_through / close_target) with period close/reopen gated on the balance equation and QuickBooks sync-stalenesslive-financial-statement from the OLTP ledger; build-fact-grid and financial-statement-analysis over the materialized XBRL graph hypercubewrite_policyRoboInvestor is a portfolio management and investment tracking extension — tracks investor holdings and links them back to the companies behind them.
portfolios, positions, holdings (rolled up by issuer), and the assembled portfolioBlockterms blob for instrument-specific detailGET /v1/auth/providers/scim/v2, so an identity provider owns the account lifecycle. Login resolves SCIM-provisioned users only — there is no just-in-time account creationEvery graph is an MCP server, and the graph's URL is the preferred way to connect — Claude, Claude Code, Cursor, or any MCP client that supports HTTP transports, no install required. The URL picks the graph (sec for the public SEC repository, your graph id for your own); your API key goes in the X-API-Key header. Access follows the graph: your own graphs need graph membership, and the public sec repository needs an active repository subscription (Starter or Advanced — plans and their MCP rate limits are published at GET /v1/offering). An API key alone does not open sec; the server answers 403 until the subscription exists, and tool calls count against the plan's MCP limits:
https://api.robosystems.ai/v1/graphs/{graph_id}/mcp
For example, in Claude Code:
claude mcp add --transport http robosystems-sec \
https://api.robosystems.ai/v1/graphs/sec/mcp \
--header "X-API-Key: <your key>"
OAuth — sign in and pick a graph. The graph-agnostic endpoint accepts OAuth only, and needs no key at all:
https://api.robosystems.ai/v1/mcp
An OAuth-capable client (claude.ai, Claude Code, ChatGPT, VS Code, Cursor) discovers the authorization server from the endpoint (/.well-known/oauth-protected-resource/v1/mcp), sends you to sign in, and the consent screen is where you choose the graph the connection covers — your own graphs or a subscribed repository such as sec. The client then holds a revocable token bound to that graph; revoke it at any time and the connection stops. Per-graph URLs accept OAuth too, alongside the X-API-Key header.
Header-only clients (scripts, CI, editors without OAuth) put an API key in X-API-Key on a per-graph URL — the MCP page in the app (/connect) mints keys scoped to one graph for exactly that. Credentials never travel in the URL. Clients without HTTP transport support can use the stdio bridge in proxy mode.
Official clients for integrating with the API:
Python client library covering the API surface - robosystems-client
Installation: pip install robosystems-client
TypeScript client for Node.js and browser applications - @robosystems/client
Installation: npm install @robosystems/client
The REST, GraphQL and per-graph MCP endpoints authenticate with an API key in the request headers:
X-API-Key: rfs*
The graph-agnostic MCP endpoint (/v1/mcp) accepts OAuth 2.1 bearer tokens only — see Connect via MCP above. Browser sessions use JWTs issued by POST /v1/auth/login.
Create and manage knowledge graph tenants
Subgraphs, backups, tier changes, and materialization
Validate and manage custom graph schemas
Manage per-graph member access and roles
List, download, and inspect graph backups
AI agent orchestration and execution
Execute Cypher queries on the knowledge graph
Full-text and semantic search on documents, narratives and disclosures
Recall, list, and inspect the graph's per-graph semantic memory store
Write content across memory, documents, and files
Manage external data source integrations
Unified GraphQL endpoint for extensions read queries
Named commands for accounting & reporting writes and analytical views
Named commands for portfolio management writes and analytical views
Track SSE stream status and progress
Manage organizations and team collaboration
Manage team members, roles, and permissions
Track organization-wide usage, limits, and analytics
Shared repository subscription management
Create and manage billing checkout sessions
Profile, settings, and account information
Login, register, and access token management