# Tak Server Guide

> Use the TAKDOCS MCP to answer source-backed questions about TAK Server and Federation Hub installation, configuration, federation, certificates, ports, commands, config files, and troubleshooting. Use when a user asks for help creating a TAK Server, configuring TAK/Federation Hub, finding exact TAK Server docs, validating a TAK deployment, or diagnosing TAK client/server connection issues.

- Skill: `frontboat/tak-server-guide` (Agent Skill, multi-file: 2 files)
- Install (CLI): `npx skillmds@latest add frontboat/tak-server-guide`
- Raw SKILL.md: https://api.skillmd.com/api/skills/frontboat/tak-server-guide/raw
- Safety review: pending
- Works with: Claude Code, Claude.ai, OpenAI Codex
- Category: AI & ML
- Author: frontboat (https://skillmd.com/u/frontboat)
- Updated: 2026-09-17
- Page: https://skillmd.com/skills/frontboat/tak-server-guide

---


# TAK Server Guide

MCP endpoint: `https://takdocs-production.up.railway.app/mcp`

Use the TAKDOCS MCP as the source of truth for TAK Server and Federation Hub documentation. Prefer source-backed artifacts over memory.

## Required Tool Flow

1. Call `takdocs_get_manifest` first for orientation, unless the current conversation already contains a fresh manifest.
2. Call `takdocs_search_docs` with compact filters to find candidate artifacts.
3. Call `takdocs_fetch_artifact` for the selected `retrieval_id` or `artifact_ref` before giving operational steps, commands, or config guidance.
4. Cite the fetched artifact ID, source document, page numbers, or source refs in the answer when giving concrete instructions.

Do not treat search result summaries as enough for final procedural guidance. Fetch the source artifact.

## Search Defaults

Use `mode: "hybrid"` by default.

Use `mode: "lexical"` for exact:
- commands
- paths and filenames
- XML keys
- ports
- package names
- certificate names
- quoted errors

Use `mode: "dense"` when the user is vague and does not know the TAK term of art.

Omit `candidate_limit` unless debugging recall or ranking behavior.

## Useful Kind Filters

- `procedure`: setup, upgrade, configuration, validation, and operational workflows
- `command`: shell commands
- `config_reference`: config files, XML keys, service names, paths, packages, certificates
- `port_reference`: ports, protocols, firewall rules, and endpoints
- `troubleshooting`: symptoms, causes, checks, and validation guidance
- `section_markdown`: full section context after narrowing the topic
- `page_verbatim`: faithful page-level source evidence or exact wording

## Workflows

### Create TAK Server

Collect missing inputs first:
- target OS
- TAK Server version
- hostname or IP address
- deployment goal: single server, two server, containerized, federation, or troubleshooting
- client authentication strategy, if relevant

Then:
1. Search `kind: ["procedure", "command"]` in `document: ["tak-server-configuration-guide"]` for the target OS and deployment type.
2. Fetch the selected procedure or section artifact.
3. Search `kind: ["config_reference"]` for `CoreConfig.xml`, certificate paths, service names, or package names.
4. Search `kind: ["port_reference"]` for firewall and exposed port requirements.
5. Fetch source artifacts before presenting final commands.

### Configure Federation

Ask whether the user means direct TAK Server federation or Federation Hub.

Then:
1. Search `kind: ["procedure", "config_reference"]` for federation setup.
2. Search `kind: ["port_reference"]` for federation, web UI, and hub ports.
3. Fetch artifacts covering certificates, tokens, group mapping, and connection setup.

### Troubleshoot Client Connection

Collect:
- client type
- exact error text or symptom
- whether the server is reachable from the client network
- recent server/config/certificate changes

Then:
1. Use lexical search for exact errors, ports, cert filenames, and config keys.
2. Search `kind: ["troubleshooting", "port_reference", "config_reference"]`.
3. Fetch source artifacts for validation checks and likely causes.

## Example Searches

Install TAK Server on Rocky Linux 9:

```json
{
  "query": "install TAK Server Rocky Linux 9",
  "mode": "hybrid",
  "kind": ["procedure", "command"],
  "document": ["tak-server-configuration-guide"]
}
```

Find firewall ports:

```json
{
  "query": "TAK Server firewall ports 8443 8089",
  "mode": "lexical",
  "kind": ["port_reference"]
}
```

Look up config keys:

```json
{
  "query": "CoreConfig.xml sslkey keystore truststore",
  "mode": "lexical",
  "kind": ["config_reference"]
}
```

Configure Federation Hub certificates:

```json
{
  "query": "Federation Hub certificates ca.pem authorized users",
  "mode": "hybrid",
  "document": ["federation-hub-configuration-guide"],
  "kind": ["procedure", "config_reference"]
}
```

## Answering Rules

- State when the docs do not contain enough information to answer safely.
- Separate sourced TAK guidance from environment-specific assumptions.
- Prefer exact commands only after fetching an artifact containing those commands.
- Preserve warnings about insecure ports, TLS, certificates, truststores, and production safety.
- Do not invent package names, ports, paths, or XML keys.
- If the TAKDOCS MCP is unavailable, say so and ask the user to connect it before giving source-backed TAK instructions.

