Skip to main content

Documentation Index

Fetch the complete documentation index at: https://docs.tic.io/llms.txt

Use this file to discover all available pages before exploring further.

We provide an MCP (Model Context Protocol) server with prompts, resources and tools that you can use for building AI-applications. The server uses streamable HTTP transport providing real-time communication with Server-Sent Events (SSE) streaming support.

Getting Started

Our MCP server is located at https://mcp.tic.io. It accepts your TIC API key via either of two headers:
  • x-api-key: <your_api_key> — same scheme as our REST API
  • Authorization: Bearer <your_api_key> — for clients (such as the Anthropic Messages API connector) that only forward an OAuth-style bearer token
Either form authenticates the same way against the same key. Pick whichever your MCP client supports.

Example of using OpenAI Responses API

OpenAI Responses API is the most advanced interface for generating model responses. Full documentation for the API is available here. Endpoint: https://api.openai.com/v1/responses Note you need to include Bearer authentication for the OpenAI to work. An example of the request body follows below that is using flagship gpt-5 model.
{
  "model": "gpt-5",
  "input": [
    {
      "role": "developer",
      "content": [
        {
          "type": "input_text",
          "text": "Talk like a chief financial officer"
        }
      ]
    },
    {
      "role": "user",
      "content": [
        {
          "type": "input_text",
          "text": "Get company information for Bahnhof AB (publ)."
        }
      ]
    }
  ],
  "text": {
    "format": {
      "type": "text"
    },
    "verbosity": "medium"
  },
  "reasoning": {
    "effort": "medium",
    "summary": "auto"
  },
  "tools": [
    {
      "type": "mcp",
      "allowed_tools": [
        "get_company_by_registration_number",
        "get_company_by_name",
        "get_company_by_company_id",
        "get_companies_by_sni_code",
        "get_financial_reports",
        "get_annual_reports",
        "get_risk_and_intelligence",
        "get_credit_score",
        "get_company_risk_summary",
        "get_company_debt_cases",
        "get_company_penalties",
        "get_company_lansstyrelsen_decisions",
        "get_company_kammarkollegiet_sanctions",
        "get_company_tax_deferrals",
        "get_company_business_mortgages",
        "get_company_payroll_history",
        "get_company_share_structure",
        "get_company_address_history",
        "get_company_name_history",
        "get_company_vehicles",
        "get_company_bankruptcies"
      ],
      "headers": {
        "x-api-key": "your_api_key"
      },
      "require_approval": "never",
      "server_label": "TIC",
      "server_url": "https://mcp.tic.io"
    }
  ],
  "store": true,
  "include": ["reasoning.encrypted_content"]
}

Example of using Anthropic Messages API

Anthropic’s Messages API can call remote MCP servers directly through its MCP connector. Full documentation is available here. Endpoint: https://api.anthropic.com/v1/messages You need three headers on the request:
  • x-api-key: <your_anthropic_api_key> — your Anthropic API key
  • anthropic-version: 2023-06-01
  • anthropic-beta: mcp-client-2025-11-20
The authorization_token field on the MCP server entry is forwarded by Anthropic to our server as Authorization: Bearer <token> — pass your TIC API key there. An example request body:
{
  "model": "claude-opus-4-7",
  "max_tokens": 1024,
  "messages": [
    {
      "role": "user",
      "content": "Get company information for Bahnhof AB (publ)."
    }
  ],
  "mcp_servers": [
    {
      "type": "url",
      "url": "https://mcp.tic.io",
      "name": "tic",
      "authorization_token": "your_tic_api_key"
    }
  ],
  "tools": [
    {
      "type": "mcp_toolset",
      "mcp_server_name": "tic"
    }
  ]
}
To restrict which TIC tools the model can see, use the mcp_toolset allowlist pattern — disable everything by default, then enable specific tools:
{
  "tools": [
    {
      "type": "mcp_toolset",
      "mcp_server_name": "tic",
      "default_config": { "enabled": false },
      "configs": {
        "get_company_by_registration_number": { "enabled": true },
        "get_company_risk_summary":            { "enabled": true },
        "get_company_debt_cases":              { "enabled": true },
        "get_company_penalties":               { "enabled": true }
      }
    }
  ]
}

Example of LibreChat configuration

If you wish to use our MCP in LibreChat you simply add a block inside mcpServers section in yaml configuration file:
librechat.yaml
mcpServers:
  tic:
    type: streamable-http
    url: https://mcp.tic.io
    headers:
      x-api-key: 'your_api_key'

Example of prompt and response

This shows an example of a user input prompt and the response. The request is using gpt-4.1. Clean page

Prompts

Prompts are user-invokable workflow templates that combine multiple tools into a single investigation flow with explicit framing and a named deliverable. Pick one from your MCP client’s prompt menu to kick off an end-to-end analysis. All prompts take registrationNumber (Swedish organisationsnummer, e.g. 556519-9493) and resolve identity to the internal companyId as their first step.
PromptParametersWhat it does
investigate_companyregistrationNumberFull company workup: identity, risk, debts, penalties, addresses, naming, share structure. Deliverable: red-flag report grouped by category.
liquidity_stress_checkregistrationNumberCombines credit risk, Skatteverket tax deferrals, Kronofogden debts, and payroll trend. Deliverable: stress score (Low/Medium/High/Critical) with evidence.
due_diligence_checkregistrationNumberKnow-Your-Business check. Resolves identity then runs the full workup. Deliverable: KYB verdict (Proceed / Conditions / Decline).
shell_company_indicatorsregistrationNumberScreens for shell-company / fraud signals: name churn, address intelligence, missing payroll, share-capital anomalies. Deliverable: shell likelihood + indicators.

Resources

Resources are static reference data the model reads once into context — no tool call required. They decode the codes that appear in tool responses.
URIWhat it contains
ormeo://reference/codesDecoder for LocalCompanyCode (Swedish legal-form codes: AB, HB, KB, BRF, EK, SF, FL, …) and Kronofogden KFM_DebtCaseType (A vs E debt cases).

Tools

Functions the model invokes to retrieve company, property, or vehicle data. Tools are grouped below by purpose.

Company search & identity

ToolDescription
get_company_by_nameFind a company by current or historical name
get_company_by_registration_numberFind a company by Swedish registration number (organisationsnummer)
get_company_by_company_idGet the core company record by internal companyId
get_companies_by_sni_codeList companies matching a 5-digit SNI industry code. Supports both SNI 2007 and SNI 2025 — pass sniStandard="2007" (default) or "2025".

Company financials & risk

ToolDescription
get_financial_reportsIncome statement and balance sheet across all available periods (TKR, SEK)
get_annual_reportsList of available annual reports in PDF with metadata and download URLs
get_credit_scoreCurrent credit score and the descriptions used as the basis of the calculation
get_company_risk_summaryNumeric risk scores: credit score, forward risk forecast/class, board score, beneficial-owners score, financial-discrepancy score, other-intelligence score, intelligence aggregates, and ORB network-risk aggregate counts. Scores only — no per-person details. 4-hour cache.
get_risk_and_intelligenceRaw company-intelligence records (flags and signals collected over time)

Company enforcement & compliance

ToolDescription
get_company_debt_casesKronofogden enforcement: debtor summary, debt summary, current cases, weekly aggregates
get_company_penaltiesConsolidated penalties (Skatteverket, Kammarkollegiet, Länsstyrelsen, Försäkringskassan, fees)
get_company_lansstyrelsen_decisionsLänsstyrelsen (County Administrative Board) decisions and penalty fees
get_company_kammarkollegiet_sanctionsKammarkollegiet sanction cases grouped by diary number, with current balance and full case history
get_company_tax_deferralsSkatteverket TF-ANST temporary tax-payment deferrals (liquidity-stress signal)
get_company_bankruptciesBankruptcies initiated on a given date

Company structure & history

ToolDescription
get_company_business_mortgagesBolagsverket-registered business mortgages (företagsinteckningar) — collateral encumbrance
get_company_payroll_historySkatteverket MOMS-AG (VAT/employer tax) filings and aggregated CompanyPayroll2 history
get_company_share_structureRegistered share capital over time and share-class structure (A/B/C, …) from Bolagsverket
get_company_address_historyAll addresses (visiting, mailing, registered) enriched with active AddressIntelligence signals
get_company_name_historyCurrent and historical legal names plus trade names (bifirma)

Vehicles

ToolDescription
get_company_vehiclesVehicles owned or operated by a company
get_vehicle_by_license_plateLook up a vehicle by license plate
get_vehicle_by_vinLook up a vehicle by VIN (vehicle identification number)

Property

ToolDescription
get_property_by_labelFind a property by its label (property designation / fastighetsbeteckning)
get_orthophoto_by_yearGet an orthophoto for a property; leave year empty for the most recent year
We will continuously add new tools — check back here for new additions.