| Crates.io | cargo-operai |
| lib.rs | cargo-operai |
| version | |
| created_at | 2026-01-13 17:20:37.5356+00 |
| updated_at | 2026-01-14 20:02:21.509699+00 |
| description | Cargo subcommand for Operai SDK development |
| homepage | |
| repository | |
| max_upload_size | |
| id | 2040724 |
| size | 0 |
Cargo subcommand for Operai Tool SDK development.
cargo operai new my-tool # Create new tool project
cargo operai embed # Generate embeddings
cargo operai build # Build with embeddings
cargo operai serve # Run local gRPC server
cargo operai mcp # Run MCP server (HTTP)
cargo operai mcp --stdio # MCP over stdio
cargo operai call <tool> <json> # Test a tool
cargo operai list # List available tools
cargo operai describe <tool> # Show tool details
call accepts inline JSON or @path/to/input.json.
Common flags:
cargo operai mcp --searchable to enable semantic search endpointscargo operai list --format json for machine-readable outputGlobal defaults: ~/.config/operai/config.toml
[embedding]
provider = "fastembed" # or "openai"
model = "nomic-embed-text-v1.5"
[embedding.openai]
api_key_env = "OPENAI_API_KEY"
Project overrides (read from operai.toml):
embedding_provider = "fastembed"
embedding_model = "nomic-embed-text-v1.5"
CLI flags override both:
cargo operai embed -P openai --model text-embedding-3-small
cargo operai call~/.config/operai/credentials.tomlprovider:key=value;key2=value2env: to read values from environment variablesExample credentials file:
[github]
token = "env:GITHUB_TOKEN"
[api]
api_key = "secret"
Example CLI usage:
cargo operai call my-tool.greet '{"name":"World"}' \
--creds api:api_key=env:API_KEY