Core Concepts
Agents
An Agent is an AI-powered assistant configured with a specific purpose, system prompt, LLM provider, and connected tools. NPO supports two types:
- Single Agent: A standalone agent that operates independently with its own LLM, tools, and skills.
- Deep Agent: A multi-agent architecture with a Main Agent that delegates tasks to one or more Sub-Agents, each with their own LLM, tools, and skills.
MCP Servers
MCP (Model Context Protocol) Servers provide tools that agents can use to interact with external systems and APIs. MCP Servers can be:
- Internal: Managed within the NPO platform.
- External: Connected from third-party services (e.g., Notion, AWS, DuckDuckGo Search).
Skills
Skills are reusable instruction sets (defined in SKILL.md files) that standardize agent behavior. Skills can include workflow definitions, tool usage patterns, and domain-specific knowledge. They are managed through the Skill Registry and can be shared across agents and teams.
Middleware
Middleware layers add processing controls to agent interactions:
- Human in the Loop: Requires human approval before executing specific tools — with options to Approve, Edit, or Reject tool calls.
- PII Protection: Automatically detects and redacts sensitive data (emails, credit cards, IPs, MAC addresses, URLs) in inputs, outputs, and tool results.
- Summarization: Condenses conversation history using LangChain to manage context window limits while preserving important information.
Knowledge DB
Knowledge Databases allow agents to reference uploaded documents (PDF, XLSX, CSV, PPTX) for domain-specific knowledge during conversations.
Object Dependency Summary
| Object | Used By / Depends On |
|---|---|
| LLM Provider | Agent LLM Node, Summarization LLM |
| Model | Agent LLM Node (Default Model), Summarization (Default Model) |
| API Key (LLM_PROVIDER) | Agent LLM Node, Summarization LLM |
| API Key (BACKEND_SERVER) | Backend Server authentication |
| Kubernetes Cluster | MCP Instance provisioning, Agent deployment |
| Backend Server | MCP Profile (registered as backend) |
| MCP Profile | MCP Instance (provisioned from profile) |
| OAuth Credentials | MCP Profile authentication, Playground Connector auth |
| Tools (API Endpoints) | MCP Profile → Agent (exposed as callable tools) |
| MCP Instance | Agent (provides tools), Human in the Loop (per-tool rules) |
| External MCP | Agent (provides tools via MCP Registry) |
| Provisioning Spec | MCP Instance (Replicas, CPU, Memory, Affinity, Tolerations) |
| Network Spec | MCP Instance (ClusterIP/NodePort, Ingress, TLS) |
| Skill | Agent (attached as modular instruction set) |
| SKILL.md | Skill (defines behavior and workflow) |
| Skill Files | Skill (Scripts, References, Assets) |
| Skill Version | Skill (pinned version used by agents) |
| Trigger | Agent (entry point: Chatbot, Webhook, Scheduler) |
| Chat Memory | Agent (conversation persistence via PostgreSQL) |
| User | Group (membership), Role (assignment), Skill (sharing), Agent (sharing) |
| Group | User (contains members), Role (assignment), Skill (sharing), Agent (sharing) |
| Role | User (access control), Group (access control) |
| Human in the Loop | Agent Middleware → Tool Permission Rules per MCP Server |
| PII Protection | Agent Middleware → scans Input, Output, Tool Results |
| Summarization | Agent Middleware → uses its own LLM + API Key |
| Playground | Agent (testing), Connectors (MCP auth), Skills (validation) |
| Published Agent | NPO Workspace Chat Interface |
| Conversation History | NPO Workspace (stored per chat session) |
| Theme / Color | NPO Studio UI personalization |