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. The older HTTP+SSE transport (/mcp/sse, /mcp/messages) is not served.

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.37

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.37
File Size Uploaded
algenta_mcp-1.0.37.tar.gz 98.0 kB Details

Built distribution (wheel)

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

Total release size: 208.9 kB

Release files / algenta_mcp-1.0.37.tar.gz

Download URL algenta_mcp-1.0.37.tar.gz
Size 98.0 kB
Tags Source
SHA-256 checksum
How to use checksums
ba45762fd0faec8fe2d309a6d05793e2c8352229225ba2f0f8a08f9c961438d9
BLAKE2b-256 checksum
How to use checksums
786d6e0c6793b59e765d262b93528532fe7d6cfa54d0557a06f5ed9790e44529
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.37-py3-none-any.whl

Download URL algenta_mcp-1.0.37-py3-none-any.whl
Size 110.9 kB
Tags Python 3
SHA-256 checksum
How to use checksums
458f175a51094ed13e8e32168c82ead3e9a9de43fe92133a1ec20d95deb8f721
BLAKE2b-256 checksum
How to use checksums
55f4b89fd69f8b0b2a6fceafcc13f0f412b89edda571205948b983274c03153b
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