3-minute integration. Copy the config for your framework, restart, start calling tools. The public tools work without an API key; the live list is /mcp/tools.json.
Try /do now, no API key needed
# JSON-RPC over Streamable HTTP (legacy SSE deprecated); tools/list needs no key and no initialize
curl -X POST https://astranl.com/mcp/streamable -H 'Content-Type: application/json' -H 'Accept: application/json, text/event-stream' -d '{"jsonrpc":"2.0","id":1,"method":"tools/list"}'
# Or via tools.json (static catalog):
curl https://astranl.com/mcp/tools.json | jq '.tools[].name'
Public tools (read from the live catalogue when this page was served): ask_astranl, check_counterparty_nl, record_counterparty_check, create_task, check_task, get_evidence, verify_astranl, ground_astranl, ground_component, construction_summary, construction_permits, construction_leadtimes, construction_tenders, construction_laws, construction_economy, construction_zones, construction_natura, construction_events, search, fetch. Internal tools are not exposed to public agents.
Type a real-world intent. Get a structured task in JSON. No registration, 3 free tries from any IP.
| Tool | Required input | Read-only | Idempotent | Open world | Destructive |
|---|---|---|---|---|---|
ask_astranl | question | yes | yes | no | no |
check_counterparty_nl | at least one of kvk_number, company_name, vat_number, city, purpose | yes | yes | yes | no |
record_counterparty_check | check_id | no | yes | no | no |
create_task | need | no | no | yes | no |
check_task | at least one of task_id, receipt_id, receipt_key | yes | yes | no | no |
get_evidence | task_id | yes | yes | no | no |
verify_astranl | ref | yes | yes | no | no |
ground_astranl | query | yes | yes | no | no |
ground_component | mpn | yes | yes | yes | no |
construction_summary | none | yes | yes | no | no |
construction_permits | none | yes | yes | no | no |
construction_leadtimes | none | yes | yes | no | no |
construction_tenders | none | yes | yes | no | no |
construction_laws | none | yes | yes | no | no |
construction_economy | none | yes | yes | no | no |
construction_zones | none | yes | yes | no | no |
construction_natura | none | yes | yes | no | no |
construction_events | none | yes | yes | no | no |
search | query | yes | yes | no | no |
fetch | id | yes | yes | no | no |
Anthropic's desktop client. Works on macOS and Windows.
Add to: ~/Library/Application Support/Claude/claude_desktop_config.json (macOS)
{
"mcpServers": {
"astranl": {
"url": "https://astranl.com/mcp/streamable"
}
}
}
Restart Claude Desktop, or add the same URL in Claude under Settings, Connectors, Add custom connector. The public AstraNL tools appear automatically; the live list is /mcp/tools.json.
AI-first code editor with native MCP support.
Add to: .cursor/mcp.json (project root)
{
"mcpServers": {
"astranl": {
"url": "https://astranl.com/mcp/streamable"
}
}
}
Cursor reloads MCP servers automatically. Tools appear in the chat sidebar.
Multi-agent orchestration framework. Python.
Add to: any python file
from crewai_tools import MCPServerAdapter
params = {"url": "https://astranl.com/mcp/streamable", "transport": "streamable-http"}
with MCPServerAdapter(params) as astranl_tools:
# Use in any Agent:
agent = Agent(
role="Coordinator",
tools=astranl_tools,
# ... your other config
)
AstraNL tools become callable as crew tools. Each tool call hits /mcp/streamable (legacy /mcp/sse is deprecated).
LLM application framework. Python.
Add to: any python file
from langchain_mcp_adapters.client import MultiServerMCPClient
from langchain_mcp_adapters.tools import load_mcp_tools
client = MultiServerMCPClient({
"astranl": {
"url": "https://astranl.com/mcp/streamable",
"transport": "streamable_http",
}
})
tools = await load_mcp_tools(client)
# Pass tools[] to your agent or LCEL chain
All public tools become LangChain Tool objects. Drop-in into AgentExecutor or LangGraph.
NO (reserved tools blocked)