SNCF MCP server for AI agents and assistants

Securely connect your AI agents and chatbots (Claude, ChatGPT, Cursor, etc) with SNCF MCP or direct API to find train journeys, look up stations, check schedules, monitor service status, and discover transport networks through natural language.

SNCF logoSNCF
Api Key

SNCF is France's national railway service for passenger train journeys, stations, schedules, and live travel information. It gives developers reliable rail data for route planning, station lookup, and service-status checks.

9 Tools

Try SNCF now

Type what you want done — sign in and watch it run live in the Tool Router playground.

TOOL ROUTER PLAYGROUND
SNCF
Try asking
TOOLS

Supported Tools

Every SNCF action and event your agent gets out of the box.

Find Nearby Places

Find SNCF stations, stops, or points of interest near a geographic coordinate.

Get Service Status

Get SNCF network service disruptions and affected lines, stations, or vehicle journeys for a time window.

Get Station Board

Get upcoming departures or arrivals for an SNCF station, including scheduled and realtime times and disruption context.

Get Transport Object

Get details for one SNCF network, line, route, station, stop, mode, company, or vehicle journey by canonical ID.

Get SNCF Coverage

Get the SNCF transport-data coverage region and its current production horizon.

List Transport Objects

Browse one supported SNCF transport-object collection, such as lines, networks, routes, stations, or vehicle journeys.

Plan Journey

Plan SNCF train journeys between two station/place IDs or coordinates for a requested departure or arrival time.

Search Places

Find SNCF stations, addresses, administrative areas, or points of interest by name and return IDs usable for journeys and station boards.

Search Transport Objects

Search SNCF networks, modes, lines, routes, stations, or stop points by name and return canonical transport-object IDs.

SETUP GUIDE

Connect SNCF MCP Tool with your Agent

1

Install Composio

typescript
npm install @composio/core ai @ai-sdk/mcp @ai-sdk/openai
Install the Composio SDK and your agent framework
2

Create a session with MCP enabled

typescript
import { Composio } from "@composio/core";

const composio = new Composio();
const { mcp } = await composio.create("your-user-id", {
  toolkits: ["sncf"],
  mcp: true,
});
Create a session scoped to SNCF and read its MCP URL and headers
3

Connect your agent to the MCP server

typescript
import { createMCPClient } from "@ai-sdk/mcp";
import { openai } from "@ai-sdk/openai";
import { generateText, stepCountIs } from "ai";

const client = await createMCPClient({
  transport: { type: "http", url: mcp.url, headers: mcp.headers },
});

const { text } = await generateText({
  model: openai("gpt-5.6-sol"),
  tools: await client.tools(),
  prompt: "Find the next Paris to Lyon train journeys and include departure times and stations.",
  stopWhen: stepCountIs(10),
});

console.log(text);
await client.close();
Pass the session's MCP URL and headers to your agent and run a SNCF request
SETUP GUIDE

Connect SNCF API Tool with your Agent

1

Install Composio

typescript
npm install @composio/core @composio/openai openai
Install the Composio SDK, the OpenAI provider, and the OpenAI SDK
2

Create a Composio session

typescript
import OpenAI from "openai";
import { Composio } from "@composio/core";
import { OpenAIResponsesProvider } from "@composio/openai";

const composio = new Composio({ provider: new OpenAIResponsesProvider() });
const client = new OpenAI();

const session = await composio.create("your-user-id", { toolkits: ["sncf"] });
const tools = await session.tools();
Initialize Composio with the OpenAI Responses provider and create a session scoped to SNCF
3

Run SNCF tools with your agent

typescript
let response = await client.responses.create({
  model: "gpt-5.6-sol",
  tools,
  input: [{ role: "user", content: "Find the next Paris to Lyon train journeys and include departure times and stations." }],
});

while (response.output.some((o) => o.type === "function_call")) {
  const outputs = await composio.provider.handleToolCalls(session, response.output);
  response = await client.responses.create({
    model: "gpt-5.6-sol",
    tools,
    previous_response_id: response.id,
    input: outputs,
  });
}

console.log(response.output_text);
Send a request, execute the SNCF tool calls through the session, and print the final answer

Why Use Composio?

AI Native SNCF Integration

  • Supports both SNCF MCP and direct API based integrations
  • Structured, LLM-friendly schemas for reliable train, station, and schedule queries
  • Rich coverage for reading, querying, and discovering SNCF passenger-information data

Managed Auth

  • Secure API key handling, so your SNCF credentials don't end up hard-coded in prompts or apps
  • Central place to manage, scope, and revoke SNCF access
  • Per user and per environment credentials for cleaner production setups

Agent Optimized Design

  • Tools are tuned for language models, so agents can ask for train times, station data, and disruptions without brittle glue code
  • Comprehensive execution logs so you always know what ran, when, and on whose behalf

Enterprise Grade Security

  • Fine-grained RBAC so you control which agents and users can access SNCF
  • Scoped, least privilege access to SNCF journey, station, schedule, and network resources
  • Full audit trail of agent actions to support review and compliance
FAQ

Frequently asked questions

Yes, SNCF requires you to configure your own API key. Once set up, Composio handles secure credential storage and API request handling for you.

Yes! Composio's Tool Router enables agents to use multiple toolkits. Learn more.

Yes. Composio is SOC 2 Type II compliant and is built to keep your SNCF connection and credentials secure. OAuth tokens and API keys are encrypted, and sensitive customer data is protected at rest and in transit.

Composio also undergoes independent security testing and continuously monitors its systems for security threats. You can review the latest reports and policies in the Composio Trust Center.

Composio maintains and updates all toolkit integrations automatically, so your agents always work with the latest API versions.

Create the key in your SNCF account settings, then paste it once on Composio's connection page. Composio stores it encrypted and uses it only for the SNCF actions your agent runs. Nobody else in your workspace can read it, and you can revoke it inside SNCF at any time.

When you connect a SNCF account through Composio, every action runs under that account, so anything the agent creates, sends, or changes shows up in SNCF as done by you. Keep an approval step in your prompt for actions with side effects, such as sending or deleting, and have the agent draft first.

Whatever the credentials you connect allow inside SNCF. If SNCF lets you scope a key to specific permissions, create a scoped one so the agent can only do what you intend. You can revoke the key inside SNCF at any time.

Yes. Composio supports multiple connected accounts for the same app, and that works in Claude, ChatGPT, or any other assistant you connect through Composio. Give each SNCF connection a name such as work or personal, and the assistant uses the one you mention in the request. Each account keeps its own credentials and nothing is merged.

The connection stops working the moment SNCF rejects the old key. Create a new key in SNCF and reconnect the account from the Composio dashboard or by asking your agent to reconnect SNCF. Nothing else changes.

Composio's free Hobby plan includes 100,000 tool calls per month with no credit card, which covers most personal SNCF use. Paid plans add higher limits and team features. Your SNCF plan and its API limits still apply as usual.

Built-in connectors usually give one AI access to a limited set of apps. Many people use Composio because it lets their AI connect to more apps than it normally supports, or connect to multiple accounts for the same app (e.g. connect Claude to multiple SNCF accounts).

With Composio, you connect SNCF once and then use it across different AI assistants without setting it up separately in each one. Connect your apps to Composio once, then connect Composio to whichever AI you use, whether that's Claude, ChatGPT, Hermes, or your own custom assistant.

Start with SNCF.It takes 30 seconds.

Managed auth, hosted MCP servers, and every SNCF tool your agent needs.Free to start.

Start building