Skip to main content
Glama

telos-mcp

Model Context Protocol server for TELOS AI Labs governance.

Exposes TELOS governance primitives -- action scoring, unsigned integrity-hash receipt verification, Purpose Anchor inspection, audit-chain queries, and CCRS counterfactual replay -- as MCP tools, resources, and prompts. Any MCP-compatible client (Claude Desktop, Claude Code, Cursor, Cline, etc.) can call them as native tools.

v0.1 status. This release ships the protocol surface with stubbed engine calls so clients can exercise every tool, resource, and prompt end-to-end without an installed engine. Scores are synthetic and receipts are unsigned integrity-hash receipts (signature: null, signing_status: "unsigned_integrity_hash"): a key-free SHA-256 over the receipt payload, not a digital signature. v0.2 wires the live telos-gov engine behind the same receipt shape, and a real signature fills the existing signature field then, with no schema break.


What this server exposes

Tools (LLM-callable)

Tool

Purpose

telos_score(action_name, action_params, agent_id)

Score a proposed action against the active Purpose Anchor. Returns verdict (EXECUTE / CLARIFY / ESCALATE) plus per-dimension scores across purpose, scope, boundary, tool, chain, codebase_fidelity, plus an unsigned integrity-hash receipt envelope.

telos_verify(receipt_json)

Verify an unsigned integrity-hash receipt offline (key-free; not a signature check). Returns {match, recomputed_integrity_hash, signing_status, reason, ...}.

telos_get_pa(agent_id)

Return the active Purpose Anchor: purpose, hard boundaries, declared scope, allowed tools, centroid dimensions.

telos_audit(start_iso, end_iso)

Return audit-chain entries within a time window (capped at 100).

telos_replay(receipt_id, alt_config_path)

Queue a CCRS counterfactual replay against an alternate config; returns a job_id.

Resources (LLM-readable)

URI template

Returns

telos://wiki/{path}

A TELOS governance wiki page by relative path.

telos://centroids/{dimension}

Compiled centroid metadata for one of purpose, scope, boundary, tool, chain, codebase_fidelity.

telos://audit/{date}

The audit-chain segment for a given YYYY-MM-DD (UTC).

Prompts (user-invokable templates)

Prompt

Purpose

governance_review(action)

Have the model review a proposed action for governance compliance.

audit_walkthrough(start_date, end_date)

Walk through the audit chain in a date window.


Related MCP server: aman-mcp

Install

pip install telos-mcp

The live engine (telos-gov) lands in v0.2, after the clean-facade republish. v0.1 ships no installable engine extra; the stub is the only supported engine. (telos-mcp[engine] returns in v0.2 pinned to the republished clean facade.)

The package installs a telos-mcp console script that starts the server over stdio. You can also invoke it via python -m telos_mcp.server.

Requires Python 3.10+.


Client configuration

Each client below assumes telos-mcp is installed in a Python environment on PATH. If you prefer not to install globally, use uvx telos-mcp or substitute the absolute path to the telos-mcp script in the snippets.

Claude Desktop

Edit ~/Library/Application Support/Claude/claude_desktop_config.json (macOS) or %APPDATA%\Claude\claude_desktop_config.json (Windows). Add the telos-governance entry under mcpServers:

{
  "mcpServers": {
    "telos-governance": {
      "command": "telos-mcp",
      "args": [],
      "env": {
        "TELOS_AGENT_ID": "claude-desktop-default"
      }
    }
  }
}

Restart Claude Desktop. The five telos_* tools should appear in the MCP tool tray.

Claude Code

Use the claude mcp add CLI:

claude mcp add telos-governance -- telos-mcp

Or edit ~/.config/claude-code/mcp_servers.json directly:

{
  "telos-governance": {
    "command": "telos-mcp",
    "args": []
  }
}

Cursor

Edit ~/.cursor/mcp.json (global) or .cursor/mcp.json (per-project):

{
  "mcpServers": {
    "telos-governance": {
      "command": "telos-mcp",
      "args": [],
      "env": {
        "TELOS_AGENT_ID": "cursor-default"
      }
    }
  }
}

Cline (VS Code extension)

Open Cline -> MCP Servers -> Edit Configuration. Add:

{
  "mcpServers": {
    "telos-governance": {
      "command": "telos-mcp",
      "args": [],
      "transportType": "stdio"
    }
  }
}

Verifying the install

From any client, ask:

Use the telos_get_pa tool with agent_id="test" and show the Purpose Anchor.

You should see a stub PA back containing "stub": true and the six canonical centroid dimensions.


Development

git clone https://github.com/TELOS-Labs-AI/telos-mcp
cd telos-mcp
python -m venv .venv && source .venv/bin/activate
pip install -e ".[dev]"

# Run the server over stdio (what MCP clients spawn):
python -m telos_mcp.server

# Or use the MCP Inspector for interactive exploration:
mcp dev telos_mcp/server.py

Roadmap

  • v0.1 (this release) -- protocol surface complete, engine stubbed, registry-submission-ready manifest.

  • v0.2 -- swap stubs for live telos-gov calls (after the clean-facade republish). Receipts gain a real signature after the signing ceremony, filling the existing signature field with no schema break. telos-gov becomes a hard dependency.

  • v0.3 -- streaming audit subscriptions, per-tenant PA selection via TELOS_TENANT env, optional HTTP transport.


License

Apache-2.0. See LICENSE.

Available Tools

5 tools
telos_auditA

Return audit chain entries within a time window.

Capped at 100 entries to keep MCP payloads bounded. For deeper queries, use the telos://audit/{date} resource per-day.

Args: start_iso: ISO-8601 window start (e.g. "2026-04-25T00:00:00Z"). end_iso: ISO-8601 window end (must be later than start).

Returns: Dict with keys: entries (list, max 100), count, capped (bool), window {start, end}.

ParametersJSON Schema
NameRequiredDescriptionDefault
end_isoYes
start_isoYes

Output Schema

ParametersJSON Schema
NameRequiredDescription

No output parameters

TDQS

A4.7/5.0
Behavior5/5

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

No annotations present, so the description bears full responsibility. It discloses the 100-entry cap, the return structure including a 'capped' boolean, and the required ordering of parameters.

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?

Well-structured with summary, cap note, args, and returns sections. Concise enough but could be slightly tighter.

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

Completeness5/5

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

With 2 parameters and an output schema (implicit from description), the description covers all necessary context: input format, cap, return shape. No gaps.

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

Parameters5/5

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

Schema coverage is 0%, but the description fully explains both parameters: ISO-8601 format with examples, and the constraint that end_iso must be later than start_iso.

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 'Return audit chain entries within a time window' using a specific verb and resource. The sibling tools (telos_score, telos_verify, etc.) have distinct names, so no confusion.

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?

Describes when to use (audit queries) and provides a when-not (deeper queries via the resource). Does not explicitly contrast with siblings but their names imply different functions.

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

telos_get_paA

Return the active Purpose Anchor for an agent.

The PA is the governance contract: purpose statement, hard boundaries, declared scope, allowed tool list, and the centroid dimensions used to score the agent's actions.

Args: agent_id: Stable identifier of the agent whose PA to load.

Returns: Dict with keys: agent_id, pa_id, purpose, boundaries, scope, allowed_tools, centroid_dimensions, compiled_at, stub.

ParametersJSON Schema
NameRequiredDescriptionDefault
agent_idYes

Output Schema

ParametersJSON Schema
NameRequiredDescription

No output parameters

TDQS

A4/5.0
Behavior3/5

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

With no annotations, the description carries the full burden. It implicitly indicates a read operation but does not explicitly state it is read-only, nor does it cover permissions, error handling, or edge cases like invalid agent_id.

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 concise and well-structured: a one-line purpose, a helpful paragraph on what the PA is, and clearly labeled Args and Returns sections. Every sentence adds value.

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's simplicity, the description covers purpose, parameter, and return structure adequately. However, it lacks error handling or prerequisite information, making it slightly incomplete.

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?

Despite 0% schema coverage, the description includes an 'Args' section that clearly describes agent_id as 'Stable identifier of the agent whose PA to load', adding meaning over the schema's minimal title.

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 'Return the active Purpose Anchor for an agent' with a specific verb and resource, and distinguishes from siblings like telos_score and telos_verify which perform different actions.

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

Usage Guidelines3/5

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

The description implies usage for retrieving governance settings but does not explicitly state when to use this tool over siblings or provide exclusion criteria. No alternatives are mentioned.

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

telos_replayA

Queue a CCRS counterfactual replay against an alternate config.

CCRS Mode C re-runs the lifecycle that produced receipt_id under a different governance configuration (alt thresholds, alt centroids, alt PA) and reports verdict deltas. Returns immediately with a job id; poll the result via telos://replay/{job_id} once available.

Args: receipt_id: ID of the receipt to replay against. alt_config_path: Path to the alternate config (YAML) to apply.

Returns: Dict with keys: job_id, receipt_id, alt_config_path, status, queued_at, estimated_runtime_seconds, result_uri, stub.

ParametersJSON Schema
NameRequiredDescriptionDefault
receipt_idYes
alt_config_pathYes

Output Schema

ParametersJSON Schema
NameRequiredDescription

No output parameters

TDQS

A4.2/5.0
Behavior4/5

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

Discloses async behavior ('Returns immediately with a job id; poll the result'), includes return keys. No annotations provided, so description carries the burden well. Could mention side effects or permissions.

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?

Well-structured with summary and docstring sections (Args, Returns). Slightly verbose but front-loads purpose. Every sentence adds value.

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?

Covers input parameters, async behavior, and return format. Lacks clarification on CCRS and Mode C terminology. Output schema presumed from description.

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

Parameters5/5

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

Schema coverage is 0%, but description adds detailed semantics: 'receipt_id: ID of the receipt to replay against' and 'alt_config_path: Path to the alternate config (YAML) to apply.' Adds meaning beyond property names.

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?

Explicitly states 'Queue a CCRS counterfactual replay against an alternate config,' with specific verb and resource. Distinct from siblings like telos_score and telos_verify, which are about scoring and verifying.

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

Usage Guidelines3/5

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

Implies usage via description of functionality but no explicit when-to-use or alternatives. No exclusions given.

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

telos_scoreA

Score a proposed agent action against the active Purpose Anchor.

Returns a verdict (EXECUTE / CLARIFY / ESCALATE) plus a 6-dimension score breakdown across purpose, scope, boundary, tool, chain, and codebase_fidelity. Each call also mints an unsigned integrity-hash receipt (shared telos-receipt envelope) that telos_verify -- and the telos-trust-surface -- can verify with no translation.

Args: action_name: Name of the action being proposed (e.g. "write_file"). action_params: Parameter dict the agent intends to pass to the action. agent_id: Stable identifier of the agent proposing the action.

Returns: Dict with keys: verdict, composite_score, scores, agent_id, action_name, receipt, stub, engine.

ParametersJSON Schema
NameRequiredDescriptionDefault
agent_idYes
action_nameYes
action_paramsYes

Output Schema

ParametersJSON Schema
NameRequiredDescription

No output parameters

TDQS

A3.9/5.0
Behavior3/5

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

No annotations are present, so the description carries full burden. It describes the return format and the receipt miniting but does not disclose whether the tool has side effects, requires authentication, or is read-only. The behavior is partially transparent.

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 with sections, front-loads the core purpose, and provides necessary details. While slightly lengthy, it earns its space given the tool's complexity.

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 three parameters, an output schema with nested objects, and a complex return, the description covers the verdict, scores, and receipt. It could add more detail on the dimension breakdown but is sufficient for an agent to understand core behavior.

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?

With 0% schema description coverage, the description adds meaningful context for all three parameters via the Args section, explaining each parameter's role. However, it does not detail types or constraints beyond the schema.

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 scores a proposed agent action against the active Purpose Anchor, returning a verdict and 6-dimension breakdown. It also mentions the minting of an integrity-hash receipt for verification by telos_verify, distinguishing it from siblings.

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

Usage Guidelines3/5

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

The description implies the tool is used to score actions against the purpose anchor but does not explicitly state when to use it over siblings like telos_verify or telos_audit. No when-not-to-use guidance is provided.

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

telos_verifyA

Verify an unsigned integrity-hash receipt offline.

Recomputes the receipt's integrity hash over its canonical payload using the shared telos-receipt contract -- the same verifier the trust surface runs -- so the answer matches end-to-end. Key-free; not a signature check.

Args: receipt_json: The receipt to verify, either as a JSON string or as a JSON object (clients may pass either; both are accepted).

Returns: Dict with keys: match (bool), stated_integrity_hash, recomputed_integrity_hash, covered_fields, signing_status, note, reason.

ParametersJSON Schema
NameRequiredDescriptionDefault
receipt_jsonYes

Output Schema

ParametersJSON Schema
NameRequiredDescription

No output parameters

TDQS

A3.8/5.0
Behavior4/5

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

With no annotations, the description fully covers behavioral traits: it recomputes the integrity hash, is key-free, not a signature check, and returns specific fields. This is sufficient transparency for a read-only verification, though potential errors or side effects are not mentioned.

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 with Args and Returns sections, making it easy to parse. It is concise but contains some redundancy (e.g., 'receipt' mentioned multiple times). Overall, it earns its length without being verbose.

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 single-parameter tool with an implied output schema, the description is quite complete, covering the return keys and the verification process. It lacks error handling info, but given the tool's simplicity, it provides sufficient context for an AI agent.

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?

The schema provides only a type: string for receipt_json. The description adds that it can be a JSON string or object, and describes the return dict in detail. This adds significant meaning beyond the schema, though more precise format requirements could help.

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

Purpose4/5

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

The description clearly states the tool verifies an unsigned integrity-hash receipt offline, using a specific contract. It explains the action and distinguishes from a signature check. However, it does not explicitly differentiate from sibling tools like telos_score or telos_audit, leaving the AI to infer context.

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

Usage Guidelines3/5

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

The description implies usage via phrases like 'offline' and 'key-free', suggesting it is for verification without keys. But it lacks explicit guidance on when to use this vs. alternatives (e.g., telos_score for scoring, telos_audit for auditing). No when-not-to or exclusion criteria are provided.

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. 5 tool updatesv0.1.0
    • First observedtelos_audit
    • First observedtelos_get_pa
    • First observedtelos_replay
    • First observedtelos_score
    • First observedtelos_verify

TDQS

A4.2/5.0
Disambiguation5/5

Each tool targets a distinct operation: scoring, verification, fetching purpose anchors, auditing, and replay. There is no overlap, and the descriptions clearly differentiate their purposes.

Naming Consistency5/5

All tool names follow the 'telos_<verb>' pattern (e.g., telos_score, telos_verify, telos_get_pa, telos_audit, telos_replay). The naming is uniform and predictable, with no mixing of styles.

Tool Count5/5

With 5 tools, the server is well-scoped for its governance/audit domain. Each tool serves a necessary function, and the count is neither too few nor too many.

Completeness4/5

The tool set covers the core workflows: scoring, verification, fetching governance config, auditing, and replay. A potential gap is the absence of a tool to create or update Purpose Anchors, but the set appears complete for the stated monitoring/analysis purpose.

Maintenance

ActivitySlowing
ResponsivenessNo issues

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

  • F
    license
    A
    quality
    C
    maintenance
    Provides access to ODEI's constitutional knowledge graph, AI safety guardrails, and EVM smart contract auditing tools. It enables users to query structured domain nodes, validate agent actions, and perform security audits directly through an MCP client.
    4
    -
  • F
    license
    A
    quality
    B
    maintenance
    Local-first MCP tools for AI-assisted work receipts, workspace maps, routing ledgers, measured verdicts, and shared state verification across the five Project Telos flagships.
    23
    2
    -

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/TELOS-Labs-AI/telos-mcp'

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