Skip to main content
Glama

AgentHelm is the control plane that keeps autonomous AI agents safe in production. It wraps any agent framework (LangGraph, CrewAI, custom Python/Node fleets, Claude Code, Cursor) with human-in-the-loop approvals, audit trails, budget guardrails, fail-closed safety, and a shared, versioned Project Brain so agents stay accountable, on-budget, and recoverable.


🧠 The Project Brain Loop

graph TD
    A[Agent Starts Task] --> B[Get Rich Context from Project Brain]
    B --> C[Agent Executes Task]
    C --> D[Propose New Knowledge/Decisions]
    D --> E[Brain Compiler Validates & Resolves Conflicts]
    E --> F[Update Project Brain Release]
    F --> A
  1. Get Context: On startup, an agent fetches versioned, compiled architecture & database context.

  2. Execute Safely: Agent operates within token budgets and Telegram HITL safety guardrails.

  3. Propose Knowledge: As agents discover schemas or make design trade-offs, they propose knowledge entries.

  4. Compile & Evolve: The Brain Compiler verifies evidence, resolves conflicts, and releases the next Project Brain version.


Related MCP server: iranti

⚑ 60-Second Setup: Model Context Protocol (MCP)

Plug AgentHelm directly into Cursor, Claude Code, or Claude Desktop:

Add to .cursor/mcp.json or claude_desktop_config.json

{
  "mcpServers": {
    "agenthelm": {
      "command": "npx",
      "args": ["-y", "agenthelm-mcp"],
      "env": {
        "AGENTHELM_CONNECT_KEY": "ahe_live_YOUR_KEY_HERE",
        "AGENTHELM_PROJECT": "your-project-name"
      }
    }
  }
}

Exposed MCP Tools

  • get_context: Query versioned project architecture, database schemas, and conventions.

  • propose_knowledge: Propose new engineering decisions and codebase discoveries.

  • get_history: Audit version history logs, diffs, and decision trace blame.


πŸš€ Programmatic SDKs

Python SDK

pip install agenthelm-sdk
from agenthelm import Agent

# Connect to control plane and fetch project brain context
agent = Agent(key="ahe_live_...", name="Architect Agent", project="My App")

# Get context for database schema
context = agent.get_context(category="database")
print("Project Context:", context.entries)

# Propose new knowledge to the Brain Compiler
agent.propose_knowledge(
    summary="Migrate authentication from JWT to Session Cookies",
    decisions=["Use session IDs mapped to Redis backend"],
    files_modified=["lib/auth.ts", "middleware.ts"],
    confidence=95
)

Node.js SDK

npm install agenthelm-node-sdk
import { Agent } from 'agenthelm-node-sdk';

const agent = new Agent({ 
  key: 'ahe_live_...', 
  name: 'Support Bot',
  project: 'My App' 
});

agent.log('Analyzing sentiment...', 'info');
agent.output({ score: 0.92 }, 'sentiment_results');

πŸ“² Human-in-the-Loop (HITL) Safety Gate

AgentHelm prevents autonomous catastrophic actions. Mark functions as @irreversible to trigger inline Telegram approval gates:

⚠️ Irreversible Action Requested
Agent: Cloud Architect
Action: destroy_infrastructure
Payload: {"region": "us-east-1"}

[ βœ… Approve ] [ ❌ Reject ]


πŸ—οΈ Key Architecture Pillars

  • 🧠 Brain Compiler: Versioned knowledge engine resolving schema and architectural decision conflicts.

  • πŸ”­ Fleet Observability: Real-time telemetry, token cost tracking, and execution tracing.

  • πŸ›‘οΈ Safety Firewall: Classification decorators (@read, @side_effect, @irreversible) with fail-closed default safety.

  • ⏸️ Remote Mission Control: Pause, resume, or override agent state directly from agenthelm.online.


🌐 Dashboard & Community


βš–οΈ License

MIT Β© AgentHelm Team

Available Tools

3 tools
get_contextA

Retrieves relevant, ranked context from the Project Brain using semantic context selection. Useful when starting a task, resolving design questions, or looking up project standards.

ParametersJSON Schema
NameRequiredDescriptionDefault
task_hintNoA hint or description of the current task to rank relevance (e.g. 'database migration', 'auth cookies').

TDQS

A4.2/5.0
Behavior3/5

Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?

No annotations provided, so description must cover behavior. It mentions semantic selection and ranking, but lacks details on limitations, granularity of context, or performance characteristics. Adequate but not thorough.

Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.

Conciseness5/5

Is the description appropriately sized, front-loaded, and free of redundancy?

Two sentences, front-loaded with action, then use cases. No wasted words.

Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.

Completeness4/5

Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?

No output schema, but the description gives enough for a simple retrieval tool. Could mention return format or number of results, but not essential for basic usage.

Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.

Parameters4/5

Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?

Schema coverage is 100% with a good parameter description. The description adds value by explaining the intent of semantic ranking, which complements the hint parameter.

Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.

Purpose5/5

Does the description clearly state what the tool does and how it differs from similar tools?

The description clearly states it retrieves ranked context from Project Brain using semantic selection, with specific use cases. It distinguishes from siblings like propose_knowledge and get_history.

Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.

Usage Guidelines4/5

Does the description explain when to use this tool, when not to, or what alternatives exist?

Explicitly lists when to use (starting a task, resolving design questions, looking up project standards). Does not mention when not to use or alternatives, but the context is clear.

Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.

get_historyA

Retrieves version history, diffs, blame, or show details for the Project Brain. Allows reviewing exactly who proposed what, what files changed, what conflicts occurred, and when.

ParametersJSON Schema
NameRequiredDescriptionDefault
titleNoThe entry title (required for 'blame').
actionYesThe history action to perform.
versionNoThe specific version number (required for 'show').
categoryNoThe entry category (required for 'blame').
version_aNoThe first version number (required for 'diff').
version_bNoThe second version number (required for 'diff').

TDQS

A4/5.0
Behavior3/5

Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?

No annotations are provided, so the description carries the full burden. It discloses that the tool retrieves history, diffs, blame, and show details, and what information can be reviewed (who, what files, conflicts, when). However, it does not mention any side effects, permission requirements, or constraints beyond the parameter requirements.

Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.

Conciseness5/5

Is the description appropriately sized, front-loaded, and free of redundancy?

The description consists of two concise, front-loaded sentences. The first sentence specifies the core action and resource, and the second adds valuable detail. No extraneous information or repetition.

Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.

Completeness4/5

Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?

For a tool with 6 parameters, no output schema, and no annotations, the description covers the primary use cases (history, diffs, blame, show) and the type of information available. It lacks details on output format, error handling, or behavior when required parameters are missing, but overall it provides sufficient context for an agent to select and invoke the tool correctly.

Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.

Parameters3/5

Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?

Schema description coverage is 100%, so all parameters have detailed descriptions in the schema. The tool description reiterates general capabilities (e.g., reviewing changes) but does not add new meaning to individual parameters. Baseline 3 is appropriate as the schema already handles parameter semantics adequately.

Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.

Purpose5/5

Does the description clearly state what the tool does and how it differs from similar tools?

The description clearly states 'Retrieves version history, diffs, blame, or show details for the Project Brain.' It uses specific verbs ('retrieves') and resources ('version history'), and lists distinct actions (log, show, diff, blame), effectively distinguishing it from siblings get_context and propose_knowledge.

Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.

Usage Guidelines4/5

Does the description explain when to use this tool, when not to, or what alternatives exist?

The description provides context on when to use the tool: 'Allows reviewing exactly who proposed what, what files changed, what conflicts occurred, and when.' It implies usage for historical review, but does not explicitly state when not to use it or mention alternatives like get_context for current state.

Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.

propose_knowledgeA

Submits a Knowledge Proposal containing newly discovered or updated project design, decisions, schema changes, or API specifications. The proposal enters a validation queue before being compiled into the Project Brain.

ParametersJSON Schema
NameRequiredDescriptionDefault
summaryYesA concise summary explaining what was decided, changed, or discovered.
decisionsNoA list of concrete engineering decisions made.
db_changesNoDetails of any database schema or table changes made.
tests_passedNoWhether all local tests passed successfully.
apis_affectedNoDetails of any API changes made (e.g., endpoints, methods).
files_modifiedNoA list of file paths that were modified.

TDQS

A3.6/5.0
Behavior3/5

Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?

No annotations exist, so the description carries full burden. It discloses that the proposal enters a validation queue before being compiled, indicating a delay. However, it omits details about idempotency, permissions, or error handling, leaving gaps.

Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.

Conciseness5/5

Is the description appropriately sized, front-loaded, and free of redundancy?

The description is two sentences, front-loaded with the action and resource, and contains no redundant or extraneous information.

Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.

Completeness4/5

Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?

Given the tool has 6 parameters (1 required), no output schema, and moderate complexity, the description adequately covers the submission process and queueing. It could optionally mention what the agent might expect as a response (e.g., confirmation or ID).

Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.

Parameters3/5

Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?

Schema description coverage is 100%, with each parameter having a schema description. The tool description does not add additional meaning beyond what the schema provides, so baseline 3 is appropriate.

Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.

Purpose5/5

Does the description clearly state what the tool does and how it differs from similar tools?

The description clearly states the verb 'submits' and the resource 'Knowledge Proposal', listing specific content types. It distinguishes from sibling tools (get_context, get_history) which are retrieval-oriented.

Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.

Usage Guidelines2/5

Does the description explain when to use this tool, when not to, or what alternatives exist?

No explicit guidance on when to use this tool versus alternatives like get_context or get_history. The description implies usage for submitting knowledge but does not clarify when not to use it or provide context for choosing among siblings.

Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.

TDQS

A3.9/5.0
Disambiguation5/5

Each tool targets a distinct operation on the Project Brain: retrieval of context, submission of new knowledge, and querying history. There is no overlap in purpose.

Naming Consistency5/5

All tool names follow a consistent verb_noun pattern in snake_case (get_context, propose_knowledge, get_history). The repetition of 'get' is acceptable as it indicates retrieval operations.

Tool Count4/5

With only 3 tools, the server is scoped for a focused knowledge management function. While minimal, each tool serves a clear purpose and the count is appropriate for the domain.

Completeness3/5

The tools cover retrieval, submission, and history, but lack direct update or delete operations for knowledge items. Updates could be handled via new proposals, but that introduces overhead and gaps.

Maintenance

ActivityActive
ResponsivenessSyncing

Resources

Unclaimed servers have limited discoverability.

Looking for Admin?

If you are the server author, to access and configure the admin panel.

Related MCP Connectors

Related MCP Servers

  • A
    license
    A
    quality
    A
    maintenance
    Persistent shared memory for AI coding agents. Stores facts as entity/key/value triples with hybrid semantic search, task checkpoints, and conflict resolution β€” shared across Claude Code, Codex CLI, and GitHub Copilot.
    16
    235
    5
    AGPL 3.0
  • A
    license
    A
    quality
    D
    maintenance
    Governed memory for coding agents with trust lifecycle, conflict detection, staleness tracking, and health scoring. SQLite + FTS5, zero infrastructure. Works with Claude Code, Cursor, Codex, Windsurf.
    13
    3
    MIT

Latest Blog Posts

MCP directory API

We provide all the information about MCP servers via our MCP API.

curl -X GET 'https://glama.ai/api/mcp/v1/servers/jayasukuv11-beep/agenthelm'

If you have feedback or need assistance with the MCP directory API, please join our Discord server