Enables AI assistants in Warp to interact with the Onboarded platform, providing API discovery through OpenAPI specs, API execution with automatic authentication, entity memory persistence, and optional source code access from local Onboarded repositories.
Onboarded MCP Server
An MCP (Model Context Protocol) server that enables AI assistants like Warp to interact with the Onboarded platform. It provides:
API Discovery — Automatically fetch and search OpenAPI specs to find available operations
API Execution — Execute any Onboarded API operation with automatic authentication
Entity Memory — Persist created entity IDs locally so the agent can reference them later
Source Code Access — Optionally read files from your local Onboarded repository
Credentials are stored securely in macOS Keychain and shared with onboarded-cli — tokens never appear in MCP tool calls or responses.
Setup
Prerequisites
Node.js 18+
git
onboarded-cli — github.com/OnboardedInc/Onboarded-CLI
Quick Setup (Recommended)
The onboarded CLI handles everything automatically:
This interactive command will:
Ask where to install (default:
./onboarded-mcpin the current directory)Clone this repository
Run
npm installandnpm run buildAdd the server to Warp's MCP config (
~/.warp/mcp.json)Optionally configure the Onboarded repo path for
repo_readtool
After setup completes:
Restart Warp to load the MCP server
Authenticate:
onboarded auth login <profile-name>
Manual Setup
If you prefer to set up manually:
Add to ~/.warp/mcp.json:
Optionally create ~/.config/onboarded-mcp/config.json for repo_read tool:
Available Tools
Discovery Tools
Tool | Description |
| Fetch and cache OpenAPI specs from Onboarded APIs |
| Search for API operations by keyword |
| Get detailed parameter and schema info for an operation |
Execution Tools
Tool | Description |
| Execute any API operation by operationId |
| Check if credentials exist for a profile |
State Tools
Tool | Description |
| Store an entity reference (ID, name, type) |
| Query stored entities with filters |
| Get a stored entity by internal or external ID |
| Remove an entity from local storage |
Repository Tools (optional)
Requires onboardedRepoPath to be configured.
Tool | Description |
| Read a file from the local Onboarded repository |
| List files in a directory |
Tool Reference
spec_sync
Fetch and cache an OpenAPI spec.
api(required):"v1"or"internal"env:"prod"or"staging"(default:"prod")source:"url"or"cache"(default:"url")
ops_search
Search for API operations by keyword.
api(required):"v1"or"internal"query(required): Search term (matches operationId, summary, tags, path)topK: Max results (default: 10)
ops_describe
Get detailed schema for an operation.
api(required):"v1"or"internal"operationId(required): The operation to describe
api_call
Execute an API operation.
api(required):"v1"or"internal"operationId(required): The operation to callparams: Path and query parameters as objectbody: Request body for POST/PUT/PATCHprofile: Auth profile name (default:"default")dryRun: Iftrue, return the request without executing
auth_status
Check authentication status.
profile: Profile name (default:"default")
state_put
Store an entity reference.
entityType(required): e.g.,"employee","company"api(required):"v1"or"internal"externalId: ID from the Onboarded APIname: Human-readable namedata: Additional JSON dataenv:"prod"or"staging"(default:"prod")
state_query
Query stored entities.
entityType: Filter by typeapi: Filter by APIenv: Filter by environmentnameContains: Filter by name substringlimit: Max results (default: 100)offset: Pagination offset
state_get
Get a stored entity.
id: Internal UUID, orexternalId+api+env: Look up by Onboarded API ID
state_delete
Delete a stored entity.
id(required): Internal UUID
repo_read
Read a file from the configured repository.
path(required): Relative path (e.g.,"src/models/employee.py")startLine: Start line number (1-indexed)endLine: End line number (1-indexed)
repo_list
List files in a directory.
path: Relative path (default: root)recursive: List recursively (default:false)maxDepth: Max depth for recursion (default: 3)
Data Storage
All data is stored locally and created automatically on first run:
Path | Purpose |
| User configuration |
| Cached OpenAPI specs |
| SQLite database for entity memory |
Viewing Stored Entities
Security
Tokens are stored in macOS Keychain, never in files
Tokens never appear in MCP tool arguments or responses
Authorization headers are redacted in dry-run output
Shares credentials with
onboarded-cli— authenticate once, use everywhere