Skip to main content

Algenta MCP Server

Model Context Protocol server for Algenta — self-hosted building blocks for AI applications.

Any MCP-capable agent operates the engine — metered and audited like every other caller. This server gives MCP-compatible agents access to governed data discovery, exact queries, decisions, simulations, runtime utilities, and account operations through the same public API contract used by the Algenta SDKs. The Algenta engine itself is proprietary; everything in this package is Apache-2.0.

Full reference: docs.algenta.ai/sdk/mcp

Install

pipx install algenta-mcp

pip install algenta-mcp is also supported. The package includes its MCP transport dependencies; users do not install or manage a separate protocol package.

Auth model

Introspection (initialize/tools/list) needs no credentials. Executing tools needs an API key issued by your Algenta server: set ALGENTA_API_KEY to it. The free community license also needs a one-time device registration: run algenta login.

Configure

export ALGENTA_API_KEY="<YOUR_ALGENTA_API_KEY>"
export ALGENTA_BASE_URL="http://localhost:8000"

Set ALGENTA_BASE_URL to your Algenta server's URL. Private deployment profiles fail closed rather than silently sending traffic to the built-in default URL.

Cursor and Claude Desktop

algenta-mcp uses stdio by default. Add this server to Cursor's ~/.cursor/mcp.json or Claude Desktop's MCP configuration:

{
  "mcpServers": {
    "algenta": {
      "command": "algenta-mcp",
      "env": {
        "ALGENTA_API_KEY": "<YOUR_ALGENTA_API_KEY>",
        "ALGENTA_BASE_URL": "http://localhost:8000"
      }
    }
  }
}

Restart the client after changing its MCP configuration.

Codex

Add the stdio server to ~/.codex/config.toml:

[mcp_servers.algenta]
command = "algenta-mcp"

[mcp_servers.algenta.env]
ALGENTA_API_KEY = "<YOUR_ALGENTA_API_KEY>"
ALGENTA_BASE_URL = "http://localhost:8000"

Keep credentials in user-level configuration or environment variables, not in a repository.

Streamable HTTP

Start the remote transport:

algenta-mcp --mode http --port 8001

The standalone server binds to 127.0.0.1 by default. Set ALGENTA_MCP_HOST=0.0.0.0 only when an authenticated container ingress or gateway must expose it to another host.

Connect modern clients to:

http://localhost:8001/mcp

The endpoint uses stateless Streamable HTTP. It dual-serves both protocol eras from the same endpoint: a legacy initialize handshake negotiates 2025-11-25, and a modern per-request caller (the MCP-Protocol-Version header plus the 2026-07-28 _meta envelope, no handshake) gets 2026-07-28, including the built-in server/discover method. Algenta pins the official Python MCP SDK. Deprecated /mcp/sse and /mcp/messages routes remain for older clients but are not the default.

LangChain example:

import os

from langchain_mcp_adapters.client import MultiServerMCPClient

client = MultiServerMCPClient(
    {
        "algenta": {
            "transport": "http",
            "url": "http://localhost:8001/mcp",
            "headers": {
                "Authorization": f"Bearer {os.environ['ALGENTA_API_KEY']}"
            },
        }
    }
)

tools = await client.get_tools()

Verify

The human-readable discovery route is available alongside the protocol endpoint:

curl -s http://localhost:8001/mcp/tools | jq '.tools | length'

In an MCP client, call get_contract first, then use list_data and get_data_summary before querying a dataset. Tool names, descriptions, and input schemas are returned by MCP tools/list.

Delete, cancel, and revocation semantics

  • Deletes and cancels are idempotent. Repeating delete_connector, disconnect_data, delete_decision, delete_trigger, delete_deployment, disable_skill, cancel_job, cancel_agent_run, or remove_team_member on an already-deleted (or never-existing) id returns success with already_absent: true — not a 404. The first call performs the real deletion exactly once; repeats record nothing further (no duplicate audit entries).
  • Credential revocations are explicit, never silently idempotent. revoke_api_key and revoke_device fail with not_found on an unknown id — including an already-revoked one — so a mistyped id can never masquerade as a successful revocation.

Security

  • Tool calls use Authorization: Bearer <ALGENTA_API_KEY> or the configured process credential.
  • Streamable HTTP validates Host and Origin to prevent DNS-rebinding access.
  • Standalone HTTP binds to loopback unless ALGENTA_MCP_HOST is explicitly changed.
  • Error payloads redact API-key material.
  • Set ALGENTA_BASE_URL to your Algenta server; private deployment profiles (ALGENTA_DEPLOYMENT_MODE=self_hosted or air_gapped) fail closed without it.
  • Put an authenticating gateway in front of a publicly reachable standalone MCP port.

Compatibility

Canonical environment variables are ALGENTA_API_KEY and ALGENTA_BASE_URL. Legacy DE_API_KEY, DE_BASE_URL, and ALGENTA_API_URL remain accepted for existing deployments.

License

Apache-2.0

Metadata

Release files for algenta-mcp 1.0.35

For a detailed explanation of source distributions (sdists) and built distributions (wheels), please see the package formats documentation.

Source distribution (sdist)

Source distribution for algenta-mcp 1.0.35
File Size Uploaded
algenta_mcp-1.0.35.tar.gz 99.3 kB Details

Built distribution (wheel)

Table of built distributions (wheels) for algenta-mcp 1.0.35
File Interpreter ABI Platform
algenta_mcp-1.0.35-py3-none-any.whl Python 3 none any Details

Total release size: 211.5 kB

Release files / algenta_mcp-1.0.35.tar.gz

Download URL algenta_mcp-1.0.35.tar.gz
Size 99.3 kB
Tags Source
SHA-256 checksum
How to use checksums
961cca1828719738c5f21d55ea25af59e3ce86b0260c5c722d91594636edca15
BLAKE2b-256 checksum
How to use checksums
4eb28d16333506626ea118b4785ed715148dc6b4db23abc5cdfd024cf19bfa13
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
No
Uploaded via twine/7.0.0 CPython/3.14.7

Release files / algenta_mcp-1.0.35-py3-none-any.whl

Download URL algenta_mcp-1.0.35-py3-none-any.whl
Size 112.2 kB
Tags Python 3
SHA-256 checksum
How to use checksums
ef65aa68769282456e2db13591c23efdcdb365e1bba13a24775156647b4bf5a4
BLAKE2b-256 checksum
How to use checksums
db267b04048a98f49925ca85ff5f5cda4bc577e03cd90dc1277292330bc768d8
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
No
Uploaded via twine/7.0.0 CPython/3.14.7
Anthropic, PBC Visionary sponsor Bloomberg Visionary sponsor Hudson River Trading Visionary sponsor Meta Visionary sponsor NVIDIA Visionary sponsor Microsoft Sustainability sponsor Depot Continuous Integration AWS Cloud computing and Security Sponsor Datadog Monitoring Fastly CDN Google Download Analytics Sentry Error logging StatusPage Status page