1. Conduid
  2. Other
  3. T MAP
MCP server · Other

T MAP

Unclaimed last commit 7 months ago other
30Low

Scored 6 months ago · breakdown

About T MAP

T MAP is an MCP server published by pwnhyo in the Other category.

The repository has 18 stars and 3 forks, with the last commit 7 months ago. Six months or more without a commit doesn't mean the server is broken, but check the open issues before depending on it in production.

Install

From source
git clone https://github.com/pwnhyo/T-MAP

This server has no ConduID identity, so agent calls to it are not receipted. Pin the version you install and review the source before granting it credentials.

Ask AI

✦

Ask AI about T MAP

Powered by Claude · Grounded in docs

I know everything about T MAP. Ask me about installation, configuration, usage, or troubleshooting.

Security checks

  • ✓README presentThe repository ships documentation.

5 checks have not been run yet.

README

T-MAP: Red-Teaming LLM Agents with Trajectory-aware Evolutionary Search

arXiv

T-MAP Overview

T-MAP is a trajectory-aware evolutionary search framework for red-teaming LLM agents over MCP servers. It iteratively generates and mutates adversarial prompts guided by execution trajectories, mapping the agent's vulnerability landscape across diverse risk categories and attack styles.


🔧 Setup

pip install -r requirements.txt

Requirements: Python 3.11+, API keys for attacker and target models, access to one or more MCP servers.


🚀 Quick Start

Single server

python run_main.py \
  --server Slack \
  --attacker_model "deepseek-chat" \
  --attacker_model_api "https://api.deepseek.com" \
  --attacker_model_api_token "$DEEPSEEK_API_KEY" \
  --target_model "openai/gpt-5-mini" \
  --target_model_api "https://openrouter.ai/api/v1" \
  --target_model_api_token "$OPENROUTER_API_KEY" \
  --stdio_server_cmd npx \
  --stdio_server_args "-y slack-mcp-server@latest --transport stdio" \
  --stdio_server_envs "SLACK_MCP_XOXP_TOKEN=$SLACK_MCP_XOXP_TOKEN SLACK_MCP_ADD_MESSAGE_TOOL=true" \
  --iteration 100 \
  --mutation_n 3

Multi-server

python run_main.py \
  --server "Slack,CodeExecutor" \
  --attacker_model "deepseek-chat" \
  --attacker_model_api "https://api.deepseek.com" \
  --attacker_model_api_token "$DEEPSEEK_API_KEY" \
  --target_model "openai/gpt-5-mini" \
  --target_model_api "https://openrouter.ai/api/v1" \
  --target_model_api_token "$OPENROUTER_API_KEY" \
  --stdio_server_cmd_1 npx \
  --stdio_server_args_1 "-y slack-mcp-server@latest --transport stdio" \
  --stdio_server_envs_1 "SLACK_MCP_XOXP_TOKEN=$SLACK_MCP_XOXP_TOKEN SLACK_MCP_ADD_MESSAGE_TOOL=true" \
  --stdio_server_cmd_2 docker \
  --stdio_server_args_2 "run -i --rm --workdir /app mcp-code-executor:latest" \
  --iteration 100 \
  --mutation_n 3

More examples in run_examples.sh.


⚙️ Arguments

Server Connection

Argument Description
--server MCP server name(s), comma-separated for multi-server
--server_config JSON config file for server definitions
--stdio_server_cmd/args/envs Single-server stdio mode
--stdio_server_cmd_1..8 / _args_1..8 / _envs_1..8 Indexed multi-server stdio mode
--remote_server_url, --remote_server_token Single remote MCP endpoint

Models

Argument Description
--attacker_model/api/api_token Attacker LLM (generates and mutates prompts)
--target_model/api/api_token Target LLM agent (executes prompts via MCP)
--level_judge_model/api/api_token Judge LLM (defaults to attacker if omitted)

Experiment

Argument Default Description
--iteration 100 Number of mutation rounds
--mutation_n 3 Mutants sampled per round
--max_workers 10 Parallelism for generation and evaluation
--query_timeout 300 Per-query timeout (seconds)
--checkpoint_interval 20 Save checkpoint every N generations
--output_dir outputs Results and TCG snapshots
--log_dir logs Text logs

📁 Project Layout

.
├── core/
│   ├── base.py              # Experiment orchestration and evaluation
│   ├── config.py            # Risk categories and attack styles
│   ├── langchain_client.py  # LangChain-based MCP client
│   ├── llm.py               # LLM wrapper
│   └── utils.py             # CLI argument definitions
├── prompts/
│   └── tmap.py              # Seed, judge, mutate, and analysis prompts
├── run_main.py              # Entrypoint
├── run_examples.sh          # Example commands
└── requirements.txt

📄 Citation

@article{lee2026tmapredteamingllmagents,
      title={T-MAP: Red-Teaming LLM Agents with Trajectory-aware Evolutionary Search}, 
      author={Hyomin Lee and Sangwoo Park and Yumin Choi and Sohyun An and Seanie Lee and Sung Ju Hwang},
      year={2026},
      eprint={2603.22341},
      archivePrefix={arXiv},
      primaryClass={cs.CR},
      url={https://arxiv.org/abs/2603.22341}
}

README copy captured when this server was indexed; it may lag the repository. The original is authoritative.

Questions

About T MAP

How do I install T MAP?

No package has been published for this server, so install it from source: clone the repository and follow its README.

Is T MAP safe to use with an AI agent?

Its trust score is 30 out of 100 (low). It passes 1 of the 1 static security checks run so far. It has no ConduID identity yet, so agent calls to it are not receipted.

Is T MAP still maintained?

The last commit was 7 months ago. That's long enough that you should check whether the maintainer is responding to issues before depending on it.