Atlas / MCP servers / yacine-ai-tech / AgentKit

AgentKitBLOCK

mcp/yacine-ai-tech/agentkit

Governed MCP server and agent runtime: signed action approvals, typed tool effects and audit logs for Claude Desktop, Cursor and custom agents.

Verdict
BLOCK
Grade
D
Trust score
69 /100
Exposed tools
1 1r · 0w · 0d
Transport
sse · stdio
License
AGPL-3.0
Stars
0
01

Overview

From the repository's own README, as read at the audited commit. Badges and raw HTML are left out.

[](https://github.com/Yacine-ai-tech/AgentKit/actions/workflows/ci.yml) [](LICENSE) [](https://glama.ai/mcp/servers/Yacine-ai-tech/AgentKit) [](https://agentkit.ysiddo-ai-projects.app) [](https://agentkit.ysiddo-ai-projects.app/research) [](https://agentkit.ysiddo-ai-projects.app/benchmark) [](https://agentkit.ysiddo-ai-projects.app/guide)

An MCP server where tools are declarative, effects are typed, and every action is policy-gated and audited — usable by any MCP client (Claude Desktop, Cursor, LangGraph, Claude Agent SDK, CrewAI).

Live Application: agentkit.ysiddo-ai-projects.app.

Three things distinguish it from a typical MCP server:

  • Declarative tools — define tools in YAML over your own Postgres or HTTP API. No

Python, no fork. (docs/REUSE.md)

  • Real actions, not just reads — tools declare an effect (read / write /

`destructi

Read from source at commit adeb37293633OBSERVED · 2026-10-13
Advertisement
02

Connect

Built from this server's own package name, version and transport as found in its source — not copied from anyone's documentation, so it cannot drift against a page we do not control. Replace the environment placeholders with a token scoped to the least it needs.

claude-code
claude mcp add agentkit-frontend --env ADMIN_PASS=${ADMIN_PASS} --env ADMIN_TOKEN=${ADMIN_TOKEN} --env AGENTKIT_APPROVAL_TOKEN=${AGENTKIT_APPROVAL_TOKEN} --env AGENTKIT_INTERNAL_TOKEN=${AGENTKIT_INTERNAL_TOKEN} -- npx -y [email protected]
claude-desktop
{
  "mcpServers": {
    "agentkit-frontend": {
      "command": "npx",
      "args": [
        "-y",
        "[email protected]"
      ],
      "env": {
        "ADMIN_PASS": "${ADMIN_PASS}",
        "ADMIN_TOKEN": "${ADMIN_TOKEN}",
        "AGENTKIT_APPROVAL_TOKEN": "${AGENTKIT_APPROVAL_TOKEN}",
        "AGENTKIT_INTERNAL_TOKEN": "${AGENTKIT_INTERNAL_TOKEN}"
      }
    }
  }
}
03

Exposed tools (1)

1 read · 0 write · 0 destructive.

ToolRiskDescription
treadd
04

Trust audit

BLOCKgrade D · trust 69/100 Do not install this without reading the findings. The audit found something that could harm you or your machine.

LayerWhat it checksResult
L0Provenance & inventoryPASS
L1Static analysis of the codeFAIL
L2Instruction surface (what it tells the agent)PASS
L3Class-specific surfacePASS
L4Behavioural (sandbox)SKIPPED

What the source does

Filesystem
none-observed
Network
declared (2 observation(s))
Shell
declared (1 observation(s))
Dependencies
not all pinned
Secrets in source
none-found

Findings (11)

HIGHCode injection · code.eval_exec · CWE-78, CWE-94, CWE-95
frontend/dist/assets/Intelligence-CzOzLewI.js:1
import{a as Li,i as Qw,j as K,P as eO,S as Ib,D as tO,b as kb,C as Er,E as Ba,c as xn,L as rO}from"./index-DIROj1LC.js";import{V as Si,g as ce,a as D,U as S,s as nO,Y as iO,_ as aO,u as Kh,$ as oO}fro
Why it matters. evaluates text as code
Fix. remove; use a parser or a dispatch table
MEDIUMInsecure crypto · crypto.weak_random · CWE-327, CWE-338
frontend/dist/assets/vendor-react-Z887BaPR.js:33
*/function Cr(){return Cr=Object.assign?Object.assign.bind():function(o){for(var c=1;c<arguments.length;c++){var a=arguments[c];for(var p in a)({}).hasOwnProperty.call(a,p)&&(o[p]=a[p])}return o},Cr.a
MEDIUMNetwork egress · net.raw_ip · CWE-200, CWE-319
.env.example:60
#   Your own GPU box on the LAN ... http://192.168.1.50:11434
LOWInventory / provenance · inv.hidden_file · CWE-1104
.flake8
.flake8
Why it matters. hidden member outside the usual dotfiles
Fix. review its purpose
LOWInventory / provenance · inv.hidden_file · CWE-1104
frontend/.env.production
.env.production
Why it matters. hidden member outside the usual dotfiles
Fix. review its purpose
LOWCode injection · code.dynamic_import · CWE-78, CWE-94, CWE-95
tests/test_real_data_apis.py:15
mod = importlib.import_module(module_name)
LOWPrivilege escalation / persistence · priv.escalate · CWE-269, CWE-250
tests/test_policy_guardrails.py:153
ToolPolicy(name="bad", effect="sudo")
Why it matters. asks for elevated privileges
LOWSupply chain · supply.unpinned · CWE-829, CWE-1357
frontend/package.json
@fontsource/inter, framer-motion, lucide-react, react, react-dom, react-router-dom, recharts, @playwright/test
Why it matters. 18 dependency range(s) float
Fix. pin exact versions or ship a lockfile
LOWSupply chain · supply.unpinned · CWE-829, CWE-1357
requirements.txt
fastmcp, fastapi, langgraph, langchain, litellm, anthropic, groq, openai
Why it matters. 22 requirement(s) not pinned with ==
Fix. pin exact versions
INFOInventory / provenance · inv.oversize · CWE-1104
frontend/dist/logo_agentkit.png
frontend/dist/logo_agentkit.png
Why it matters. 1029724 bytes not read
INFOInventory / provenance · inv.oversize · CWE-1104
frontend/public/logo_agentkit.png
frontend/public/logo_agentkit.png
Why it matters. 1029724 bytes not read

Gates applied: no_behavioural_pass.

Audited 2026-10-13 · audit v0.4.1 · source sha adeb37293633full audit observations/trust-audit/mcp-server/yacine-ai-tech__agentkit.json · Report an issue / request a re-scan
05

Audit history

Every audit this server has had. A grade with a past is a grade somebody is still checking.

DateSourceVerdictGradeScoreChange
2026-10-13adeb37293633BLOCKD69first audit
06

Questions

What is the AgentKit MCP server?

Governed MCP server and agent runtime: signed action approvals, typed tool effects and audit logs for Claude Desktop, Cursor and custom agents.

What tools does AgentKit expose?

1 in total: 1 read-only, 0 that write, and 0 that can delete or overwrite. Every one is listed on this page with its risk.

Is AgentKit safe to connect to an agent?

No — not without reading the findings first. The audit graded it D (69/100) and found 1 critical or high issue in the source. Each one is listed on this page with the file and line it is on.

What credentials does AgentKit need?

It reads ADMIN_PASS, ADMIN_TOKEN, AGENTKIT_APPROVAL_TOKEN, AGENTKIT_INTERNAL_TOKEN, ANTHROPIC_API_KEY, DSPY_MAX_TOKENS, GROQ_API_KEY, INFERENCE_TOKEN, INTERNAL_TOKEN, LLM_TOKEN, LOCAL_LLM_TOKEN and MCP_AUTH_TOKEN from the environment. Give it a token scoped to the least it needs — an agent that can be talked into calling a tool can be talked into calling it with your credentials.

How does AgentKit run?

It speaks sse and stdio, so it runs as a local process your client starts. It is published on npm as agentkit-frontend at 1.0.0.

How current is this page?

The grade is for one exact copy of the source (adeb37293633), read on 2026-10-13. The repository is watched and re-audited when it changes.

Advertisement