Taranis AI

io.github.taranis-ai由 GitHub 账号 taranis-ai 发布v0.1.1更新于 Oct 24, 2026

Search stories and discover OSINT sources in Taranis AI.

概览

AI 生成的概览

一个只读的 MCP 服务器,让助手在 Taranis AI 实例中列出报道并发现 OSINT 来源。

可以做什么
它把助手连接到 Taranis AI 实例,并暴露两个偏读取的工具:list_stories 用于检索报道,list_sources 用于发现 OSINT 来源。它可作为本地进程通过 stdio 运行,也可作为需要认证的 Streamable HTTP 端点运行。当前版本以读取为主,不会修改 Taranis 数据。
适用场景
当你已经运行 Taranis AI 实例,并希望助手在分析过程中浏览其中的报道或查询可用的 OSINT 来源时使用。它适合在桌面助手或 IDE 客户端中需要只读访问 Taranis 的 OSINT 与威胁情报工作流。
运行要求
需要一个可访问的 Taranis 实例以及具有 ASSESS_ACCESS 权限的用户。将 TARANIS_API_URL 设为包含 /api 的完整 API 根地址,然后选择一种认证方式:TARANIS_USERNAME 加 TARANIS_PASSWORD,或 TARANIS_ACCESS_TOKEN(JWT)。可用 uvx(需安装 uv)或 Docker 本地运行,也可通过 MCP_TRANSPORT 与 MCP_ACCESS_TOKEN 提供 Streamable HTTP。仅从源码开发时需要 Python 3.12+。
安装前请注意
它涉及凭据:TARANIS_PASSWORD 或 TARANIS_ACCESS_TOKEN 可访问你的 Taranis 实例,请勿将其写入会提交的配置文件。TARANIS_ACCESS_TOKEN 中的 JWT 在没有凭据时无法续期。非本地 HTTP 部署时,应设置强 MCP_ACCESS_TOKEN 以及公开地址、主机和来源设置,并在可信反向代理处终止 TLS。

安装

在 SourceWeft 中

  1. 打开 控制台中的 Taranis AI,将其添加到工作区。
  2. 为需要使用其工具的对话启用该服务。

Desktop only,通过 STDIO。 STDIO 服务会启动本地进程,因此需要 SourceWeft 桌面宿主。

其他 MCP 客户端

参照 仓库 中的启动说明。

README

Taranis MCP Server

A read-oriented Model Context Protocol server for Taranis AI. The current version exposes the list_stories and list_sources tools over stdio or authenticated Streamable HTTP.

Configuration

You need a reachable Taranis instance and a user with ASSESS_ACCESS. Set TARANIS_API_URL to the complete API root, including /api, then choose exactly one authentication mode:

  • TARANIS_USERNAME and TARANIS_PASSWORD: the server logs in lazily and can log in again after an expired JWT.
  • TARANIS_ACCESS_TOKEN: use an existing JWT returned by Taranis /api/auth/login; it cannot be renewed without credentials.

Do not reuse a Taranis JWT as MCP_ACCESS_TOKEN. The latter protects the MCP HTTP endpoint and is not needed for stdio.

Installation and MCP Client Configuration

This server is intended for desktop AI assistants as well as developer tools. Desktop applications with MCP support include Claude Desktop and OpenAI's ChatGPT desktop app. IDE and terminal clients include Cursor, Zed, Codex CLI, and the Codex IDE extension. If another assistant, such as Mistral Le Chat, offers MCP integration in your installed version or workspace, use its local stdio or remote Streamable HTTP configuration as appropriate.

Clients that support local stdio can launch the server as a child process. The configuration file location and surrounding schema depend on the client, but the server command, arguments, and environment are the same. Desktop applications that support only remote MCP connectors should use the Streamable HTTP setup below instead.

PyPI with uvx

This option installs and runs the package without cloning the repository. Install uv, then add the following definition to a client that uses the mcpServers format, such as Claude Desktop or Cursor:

json
{  "mcpServers": {    "taranis": {      "command": "/absolute/path/to/uvx",      "args": ["taranis-mcp-server"],      "env": {        "MCP_TRANSPORT": "stdio",        "TARANIS_API_URL": "https://taranis.example/api",        "TARANIS_USERNAME": "analyst",        "TARANIS_PASSWORD": "change-me"      }    }  }}

Use which uvx on Linux/macOS or where uvx on Windows to find the executable. On Windows the path may end in uvx.exe. An absolute path is recommended because desktop applications may have a smaller PATH than an interactive shell.

Container with Docker

This option requires only Docker. On Windows, install and start Docker Desktop before launching the MCP client. The client passes its configured environment variables to docker, and the -e arguments forward them into the container:

json
{  "mcpServers": {    "taranis": {      "command": "docker",      "args": [        "run",        "--rm",        "-i",        "-e",        "TARANIS_API_URL",        "-e",        "TARANIS_USERNAME",        "-e",        "TARANIS_PASSWORD",        "ghcr.io/taranis-ai/taranis-mcp-server:stable"      ],      "env": {        "TARANIS_API_URL": "https://taranis.example/api",        "TARANIS_USERNAME": "analyst",        "TARANIS_PASSWORD": "change-me"      }    }  }}

The stable tag follows the newest stable container release. Replace it with an exact tag such as 0.1.1 for a reproducible installation. Likewise, append a version to the PyPI argument, such as taranis-mcp-server==0.1.1, to pin that installation.

For either installation method, use a JWT by replacing the username and password with TARANIS_ACCESS_TOKEN. In the Docker arguments, also replace the two credential -e entries with "-e", "TARANIS_ACCESS_TOKEN".

MCP Registry

Starting with version 0.1.1, releases are published as io.github.taranis-ai/taranis-mcp-server in the official MCP Registry. Registry-aware applications can use that identity to discover the server and choose either its PyPI or OCI package. The registry does not define one universal install command, so the final confirmation and configuration flow depends on the application.

Do not commit a project-level MCP configuration containing credentials. Restart or reload the client after saving its configuration. Its MCP settings should show a taranis server with the list_stories and list_sources tools. For clients such as Zed that use a different configuration schema, carry over the same command, argument list, and environment values into that client's stdio MCP definition.

Codex

Codex CLI and the Codex IDE extension share MCP configuration from ~/.codex/config.toml. Add this server definition, replacing the absolute path:

toml
[mcp_servers.taranis]command = "/absolute/path/to/uvx"args = ["taranis-mcp-server"]env_vars = ["TARANIS_USERNAME", "TARANIS_PASSWORD"]
[mcp_servers.taranis.env]MCP_TRANSPORT = "stdio"TARANIS_API_URL = "https://taranis.example/api"

Export the forwarded credentials before starting Codex:

bash
export TARANIS_USERNAME=analystexport TARANIS_PASSWORD=change-mecodex mcp listcodex

Use /mcp inside the Codex TUI to confirm that taranis is active and exposes list_stories and list_sources. To use a JWT instead, replace the two names in env_vars with TARANIS_ACCESS_TOKEN and export that variable.

Streamable HTTP

For a separately running server, configure MCP_TRANSPORT=streamable-http, set a strong MCP_ACCESS_TOKEN, and start:

bash
uv run --frozen taranis-mcp-server

The default endpoint is http://127.0.0.1:8000/mcp. Clients must send Authorization: Bearer <MCP_ACCESS_TOKEN>. For a non-local deployment, configure MCP_PUBLIC_URL, MCP_ISSUER_URL, MCP_ALLOWED_HOSTS, and MCP_ALLOWED_ORIGINS for the externally visible address, and terminate TLS at a trusted reverse proxy.

Development from Source

Development requires Python 3.12 or newer and uv. Clone the repository, copy .env.example to .env, and install the locked dependencies:

bash
uv sync --frozen

Run the server using the configuration from .env:

bash
uv run --frozen taranis-mcp-server

Run the development checks:

bash
uv run --frozen pytestuv run --frozen ruff check .

来源:README.md,提交 1f4dde2

工具

0
SourceWeft 尚未在沙箱中启动过该软件包,因此其工具未知。

版本历史

1
  1. v0.1.1最新Sep 16, 2026

评分

已满足适用检查项的 40%

该评分衡量此收录条目的完整程度,依据注册中心条目、端点与公开来源计算得出。它不是对服务器本身的评价,也不表示服务器安全或当前可用:可连通性是带日期的检查结果,评分也不包含安装量或用户评价。

  • 近 30 天内可连通25 分

    请保持端点能够响应 MCP 握手;SourceWeft 每 30 天探测一次。

  • 已声明认证方式10 分

    请在注册中心条目中声明凭据请求头,或保持端点能够响应探测,以便判定其认证方式。

  • 已列出工具15 分

    请让服务器在无凭据时响应 tools/list,或发布可在沙箱中无凭据启动的软件包。

  • 描述必需15 分
  • 图标10 分
  • 文档15 分
  • 许可证10 分

    请在仓库或注册中心条目中声明许可证。