Skip to main content
Glama

five-mcp

MCP server for the FIVE Persona Engine — an LLM persona constraint engine that generates structured JSON constraints to eliminate persona drift. Instead of describing personality in words (which LLMs interpret differently each turn), FIVE defines behavioral parameters the LLM executes as a recipe. See how it works →

Measured: with the constraint JSON + free harness, the demo character survived a 120-turn pressure test with zero persona breaks (plain prompt: 8 breaks; JSON alone: 1). Numbers, transcripts and scripts →

Free — no API key, no account.

Quick Start

Install

pip install five-mcp

Use with Claude Desktop

Add to your claude_desktop_config.json:

{
  "mcpServers": {
    "five-character-engine": {
      "command": "five-mcp"
    }
  }
}

That's it — no environment variables needed.

Use with other MCP clients

Any MCP-compatible client can connect via stdio transport:

five-mcp

Related MCP server: CSL-Core

Tool: generate

Generates persona constraints via the FIVE engine.

Parameters

Parameter

Type

Required

Description

character_name

string

Yes

Name of the character

q1q4

A / B / C / D

Yes

Personality axis choices

s1s4

1–5

No

Style sliders (default: 3)

free_text

string

No

Free-form description

Response

{
  "status": "ok",
  "constraint": { "..." }
}

Rate limits

The API is free. To keep it available to everyone, a light per-IP limit applies: 10 requests/min, 200 requests/day. The free host may cold-start, so the first call can take up to a minute.

License

MIT

mcp-name: io.github.kiro0x/five-mcp

Available Tools

1 tool
generateA

Generate persona constraints using the FIVE engine.

This tool calls the FIVE Persona Engine API to produce JSON constraints that prevent persona drift and keep an LLM character's voice consistent.

Each call costs $1 and consumes one credit from your account.

Args: character_name: Name of the character to generate constraints for. q1: Personality axis 1 – choose A, B, C, or D. q2: Personality axis 2 – choose A, B, C, or D. q3: Personality axis 3 – choose A, B, C, or D. q4: Personality axis 4 – choose A, B, C, or D. s1: Style slider 1 (1-5, default 3). Optional fine-tuning. s2: Style slider 2 (1-5, default 3). Optional fine-tuning. s3: Style slider 3 (1-5, default 3). Optional fine-tuning. s4: Style slider 4 (1-5, default 3). Optional fine-tuning. free_text: Optional free-form description to further guide generation.

Returns: A dict with keys: status, remaining (credits left), constraint (the generated JSON constraint object).

ParametersJSON Schema
NameRequiredDescriptionDefault
character_nameYes
q1Yes
q2Yes
q3Yes
q4Yes
s1No
s2No
s3No
s4No
free_textNo

TDQS

A3.7/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 full burden. It discloses cost per call and credit consumption, which is helpful. However, it lacks details on idempotency, side effects, or rate limits. The return format is described, but behavioral transparency is not exhaustive.

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

Conciseness4/5

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

The description is well-structured, starting with a one-line summary, then engine explanation, cost, and a clear parameter list. While the style slider descriptions are repetitive, the overall structure is logical and efficient.

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 complexity of 10 parameters, no output schema, and no annotations, the description covers the essential aspects: purpose, inputs, output format, and cost. It is sufficiently complete for an agent to invoke the tool correctly, though additional behavioral details would be beneficial.

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 0%, so the description adds significant value by explaining each parameter: character_name, q1-q4 (enum selections), s1-s4 (integer ranges with defaults), and free_text. It clarifies the purpose of optional fields and provides defaults, compensating for the lack of schema descriptions.

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 tool's purpose: 'Generate persona constraints using the FIVE engine.' It explains the specific API and output format, leaving no ambiguity about what the tool does. With no sibling tools, distinction is not applicable.

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?

The description provides no guidance on when to use this tool versus alternatives or prerequisites. It simply describes the function without context for selection.

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

Tool Schema Changelog

Recent tool additions, removals, and schema changes observed during successful MCP inspections. Dates show when Glama detected each change.

  1. 1 tool updatev0.1.2
    • First observedgenerate

TDQS

A3.8/5.0
Disambiguation5/5

With only one tool, there is no possibility of confusion between tools. The single 'generate' tool has a clearly distinct purpose.

Naming Consistency4/5

The tool name 'generate' is a single verb, which is clear and follows a common convention. While there is no noun to form a verb_noun pattern, the name is consistent as the only tool.

Tool Count3/5

The server has only one tool, which feels thin for a general-purpose utility. However, for a very focused single-API function, it is borderline acceptable.

Completeness4/5

The tool covers the core functionality of generating persona constraints with many parameters. Minor gaps exist (e.g., no credit management or constraint listing), but the tool is complete for its stated purpose.

Maintenance

ActivityMaintained
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
    B
    quality
    D
    maintenance
    Provides a universal AI personality layer that uses a scientifically-backed Big Five engine to apply consistent character traits and brand voices across MCP-compatible platforms. It allows users to inject custom personality profiles or presets into AI interactions to ensure behavioral consistency.
    7
    19
    76
    MIT
  • A
    license
    A
    quality
    A
    maintenance
    Deterministic AI safety policy engine with Z3 formal verification. Write, verify, simulate, and enforce machine-verifiable safety constraints for AI agents. Completely outside the LLM.
    6
    16
    Apache 2.0

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/kiro0x/five-mcp'

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