Model Context Protocol
Use this lesson to build a practical, evidence-based Nova workflow for this topic.What MCP adds
Model Context Protocol servers expose external tools and data sources to Nova through a standard interface. An MCP connection can let Nova work with systems such as source hosting, ticketing, knowledge stores, databases, messaging, or organisation-specific services without baking each integration into the core CLI. MCP does not bypass Nova’s safety model. A tool still has a defined input schema, runtime validation, approval policy, authentication requirements, and whatever access controls the remote service enforces.Transport types
Nova supports three MCP transports:- HTTP — connect to a remote HTTP MCP endpoint.
- SSE — connect using Server-Sent Events.
- stdio — start a local process and exchange protocol messages over standard input and output.
Configuration scopes
Nova recognises three scopes when adding a server:- Local — available only for the current project, stored under that project path in
~/.compass/config.json; this is the default CLI scope. - Project — shared through
.mcp.jsonat the project root. - User — available across projects and stored in
~/.compass/config.json.
~/.compass/.mcp.json. Project loading prefers .mcp.json and can fall back to mcp.json.
Never commit credentials in a project MCP file. Keep shared configuration limited to server names, transport details, and non-secret settings.
Add servers from the CLI
HTTP example with a placeholder endpoint:--header; stdio entries can receive environment values with --env. Avoid placing secrets directly on a command line because shell history and process inspection may expose them.
Nova also supports importing one server definition from JSON:
Inspect configuration
Use:get masks recognised secret-like environment values and truncates authorisation headers in its display, but configuration files still need normal access protection.
Authentication
Check configured authentication state:--token, but supplying secrets directly on the command line has exposure risks. Prefer OAuth or secure environment/credential mechanisms supported by the server and operating system.
OAuth availability depends on server metadata, provider restrictions, and client registration. A configured server may still fail if the remote account lacks permission.
Project-server approval
Project MCP configuration is code-adjacent and may be supplied by someone else. Nova tracks approval choices for project servers before trusting them. Reset those choices when configuration provenance changes:Using MCP tools in conversation
Once configured, authenticated, and approved, MCP tools appear in Nova’s available tool surface. Some integrations are exposed lazily: Nova first activates the relevant capability, then calls the tool in a later step. A good request names the desired outcome, not an assumed raw tool name:Remove a server
Inspect the entry first, then remove it:Troubleshooting
- Run
nova mcp list --verboseand confirm scope, transport, command, or endpoint. - Run
nova mcp auth-statusfor authentication problems. - Verify the local executable exists for stdio servers.
- Check required environment variables without printing their values.
- Confirm organisation and remote-service policy permits the integration.
- Use
nova doctorfor wider Nova health checks. - Reapprove project servers if
.mcp.jsonchanged unexpectedly.