Criora

Frameworki agentów

Serwer MCP Criora pod adresem https://criora.com/mcp działa w każdym frameworku agentów, który obsługuje Model Context Protocol przez Streamable HTTP. Nie wymaga konta ani klucza. Każdy przykład poniżej daje agentowi wszystkie narzędzia Criora, a każdy został uruchomiony na działającym serwerze z podanymi wersjami bibliotek. Narzędzia i to, na co odpowiada każde z nich, opisuje strona API danych i agenci AI.

LangChain

pip install langchain langchain-anthropic langchain-mcp-adapters
import asyncio

from langchain.agents import create_agent
from langchain_mcp_adapters.client import MultiServerMCPClient

CRIORA = {"transport": "streamable_http", "url": "https://criora.com/mcp"}


async def main():
    tools = await MultiServerMCPClient({"criora": CRIORA}).get_tools()
    agent = create_agent("anthropic:claude-sonnet-5-5", tools)
    question = "Is it safe to travel to Manila next week?"
    answer = await agent.ainvoke({"messages": question})
    print(answer["messages"][-1].content)


asyncio.run(main())

Uruchomione z langchain 1.4 i langchain-mcp-adapters 0.3. Zamiast modelu Claude można użyć dowolnego modelu czatu obsługiwanego przez LangChain.

LlamaIndex

pip install llama-index-core llama-index-tools-mcp llama-index-llms-anthropic
import asyncio

from llama_index.core.agent.workflow import FunctionAgent
from llama_index.llms.anthropic import Anthropic
from llama_index.tools.mcp import BasicMCPClient, McpToolSpec


async def main():
    criora = McpToolSpec(client=BasicMCPClient("https://criora.com/mcp"))
    tools = await criora.to_tool_list_async()
    agent = FunctionAgent(tools=tools, llm=Anthropic(model="claude-sonnet-5-5"))
    question = "Which countries face the most dangerous weather this week?"
    print(await agent.run(question))


asyncio.run(main())

Uruchomione z llama-index-core 0.14 i llama-index-tools-mcp 0.4.

OpenAI Agents SDK

pip install openai-agents
import asyncio

from agents import Agent, Runner
from agents.mcp import MCPServerStreamableHttp


async def main():
    params = {"url": "https://criora.com/mcp"}
    async with MCPServerStreamableHttp(name="Criora", params=params) as criora:
        agent = Agent(
            name="Risk analyst",
            instructions="Answer with Criora's data and name its sources.",
            mcp_servers=[criora],
        )
        question = "How exposed is Rotterdam to river flooding by 2050?"
        result = await Runner.run(agent, question)
        print(result.final_output)


asyncio.run(main())

Uruchomione z openai-agents 0.20. Aby samo Responses API OpenAI wywoływało serwer, bez klienta MCP w Twoim kodzie, przekaż agentowi zamiast tego HostedMCPTool(tool_config={"type": "mcp", "server_label": "criora", "server_url": "https://criora.com/mcp", "require_approval": "never"}) w tools.

n8n

  1. Dodaj węzeł AI Agent i podłącz do niego model czatu.
  2. W sekcji Tool dodaj MCP Client Tool.
  3. Ustaw Endpoint na https://criora.com/mcp, Server Transport na HTTP Streamable, Authentication na None, a Tools to Include na All.

Warto wiedzieć

  • Domyślnie odpowiedzi są zwięzłe: tylko pola, które odpowiadają na pytanie. Przekaż narzędziu response_format: "detailed", aby dostać wszystkie pola, na przykład pochodzenie każdego komunikatu albo pełny tekst ostrzeżenia.
  • Każda odpowiedź podaje swoje źródła, a odpowiedź o zagrożeniach podaje w credit licencję i wymagane oznaczenie autorstwa każdego z nich. Publikując to, co znalazł agent, wskaż Criora i podane źródło, jak opisuje strona API danych i agenci AI w części o źródłach i oznaczaniu autorstwa.
  • Serwer służy tylko do odczytu i jest bezpłatny zgodnie z Regulaminem.
Zobacz na mapie