Fujitsu Social Digital Twin MCP Server

Fujitsu Social Digital Twin MCP Server

Enables LLMs to access Fujitsu's Digital Rehearsal API through natural language, allowing users to run and analyze simulations of human and social behavior in digital space.

Category
Visit Server

Tools

list_simdata

Returns a complete list of all simulation datasets available in the system, which can be used as inputs for running new simulations.

get_simdata

Retrieves the complete configuration and parameter set for a specific simulation dataset, including region settings, time ranges, and scenario parameters.

analyze_traffic_simulation

Conducts comprehensive analysis on simulation results, providing insights on traffic patterns, bottlenecks, and optimization opportunities for the specified parameters.

compare_scenarios

Performs detailed comparative analysis between two simulation scenarios, highlighting differences in traffic flow, emissions, travel times, and other key metrics.

create_natural_language_simulation_config

Converts a natural language description into a structured simulation configuration, interpreting user requirements into technical parameters for traffic simulation.

create_simulation_from_usecase

指定されたユースケースとアップロードされたファイルからシミュレーションを作成・実行します。

list_simulations

Returns a comprehensive list of all traffic simulations in the system, including their IDs, names, status, and execution timeframes.

start_simulation

Launches a new traffic simulation using the provided simulation dataset configuration, returning the simulation ID and initial status.

get_simulation_result

Retrieves the complete results and output files from a finished traffic simulation, including simulation status and generated result files.

get_metrics

Retrieves comprehensive metrics and analytics data from a completed simulation, including travel statistics, emissions data, and traffic flow information.

README

Fujitsu Social Digital Twin MCP Server

smithery badge

This project integrates Fujitsu's Social Digital Twin and Digital Rehearsal API with the Model Context Protocol (MCP), allowing Large Language Models (LLMs) to access Fujitsu's Digital Rehearsal API through natural language.

<a href="https://glama.ai/mcp/servers/@3a3/fujitsu-sdt-mcp"> <img width="380" height="200" src="https://glama.ai/mcp/servers/@3a3/fujitsu-sdt-mcp/badge" alt="Fujitsu Social Digital Twin Server MCP server" /> </a>

Overview

Fujitsu's Social Digital Twin recreates not only the state of people and objects in the digital space based on real-world data, but also entire economic and social activities. Its core function, "Digital Rehearsal," enables users to simulate human and social behavior in a digital space before implementing measures in the real world, allowing for advance verification of their effects and impacts.

This project uses MCP to bridge the gap between LLMs and the Digital Rehearsal API, enabling users to run simulations and analyze results using natural language.

Key Features

  • Retrieve and display simulation lists
  • Start simulations
  • Retrieve and analyze simulation results
  • Manage simulation data
  • Analyze traffic simulations
  • Compare scenarios
  • Generate simulation configurations from natural language

Prerequisites

  • Python 3.13 or higher
  • Access to Fujitsu API Gateway (API Key)
  • MCP-compatible LLM client (e.g., Claude Desktop)

Installation

Installing via Smithery

To install Fujitsu Social Digital Twin Server for Claude Desktop automatically via Smithery:

npx -y @smithery/cli install @3a3/fujitsu-sdt-mcp --client claude

1. Clone the Repository

git clone https://github.com/3a3/fujitsu-sdt-mcp.git
cd fujitsu-sdt-mcp

2. Set Up Environment

Using uv (recommended):

First, install uv:

# Install uv using pip
pip install uv

# Or using curl (Linux/macOS)
curl -sSf https://astral.sh/uv/install.sh | sh

Then, set up your environment with uv:

# Create virtual environment
uv venv

# Activate virtual environment
# Windows:
.venv\Scripts\activate
# Unix/MacOS:
source .venv/bin/activate

# Install dependencies
uv pip install -r requirements.txt

Alternatively, you can use the provided setup script:

# Make the script executable
chmod +x setup.sh

# Run setup
./setup.sh

3. Set Environment Variables

# Windows:
set FUJITSU_API_BASE_URL=https://apigateway.research.global.fujitsu.com/sdtp
set FUJITSU_API_KEY=your_api_key_here

# Unix/MacOS:
export FUJITSU_API_BASE_URL=https://apigateway.research.global.fujitsu.com/sdtp
export FUJITSU_API_KEY=your_api_key_here

Alternatively, you can create a .env file with the following settings:

FUJITSU_API_BASE_URL=https://apigateway.research.global.fujitsu.com/sdtp
FUJITSU_API_KEY=your_api_key_here

Usage

Starting the MCP Server

python -m fujitsu_sdt_mcp

The server communicates using standard I/O with MCP clients.

Using the Interactive Client

A simple client is also provided for direct interaction with the MCP server:

python client.py

When you start the client, a list of available resources and tools will be displayed, and you can call them from the command line.

Setup with Claude Desktop

To use the server with MCP-compatible LLM clients such as Claude Desktop:

  1. Open Claude Desktop
  2. Go to Settings > Developer Settings > Edit Config File
  3. Add the following settings:
"command": "uvx",
"args": [
    "fujitsu-sdt-mcp"
],
"env": {
    "FUJITSU_API_BASE_URL": "https://apigateway.research.global.fujitsu.com/sdtp",
    "FUJITSU_API_KEY": "your_api_key_here"
}
  1. Restart Claude Desktop

Resources and Tools

Resources

  • resource://digital_rehearsal_overview: Overview of Digital Rehearsal technology
  • resource://simulation_metrics_explanation: Explanation of simulation metrics
  • resource://scenario_examples: Example scenarios

Tools

  • list_simulations: Retrieve a list of simulations
  • start_simulation: Start a simulation
  • get_simulation_result: Retrieve simulation results
  • get_metrics: Retrieve simulation metrics
  • list_simdata: Retrieve a list of simulation data
  • get_simdata: Retrieve simulation data
  • analyze_traffic_simulation: Analyze traffic simulation
  • compare_scenarios: Compare scenarios
  • create_natural_language_simulation_config: Generate simulation settings from natural language

Usage Examples

Retrieving a List of Simulations

tool list_simulations

Starting a Simulation

tool start_simulation {"simdataId": "your_simdata_id"}

Analyzing Traffic Simulation

tool analyze_traffic_simulation {"simulationId": "your_simulation_id", "region": "Tokyo", "timeRange": "morning rush hour", "scenario": "traffic optimization"}

Generating Simulation Settings from Natural Language

tool create_natural_language_simulation_config {"description": "I want to run a traffic optimization simulation during morning rush hour in Tokyo"}

Example LLM Interaction

User: I want to run a traffic simulation during morning rush hour in Tokyo

Claude: I can help you run a traffic simulation for Tokyo's morning rush hour. Here's how we can set it up.

First, let's generate simulation settings from your natural language description:
[Tool execution: create_natural_language_simulation_config]

Generated settings:
{
  "simulationType": "traffic",
  "parameters": {
    "region": "Tokyo",
    "timeRange": "morning_rush"
  },
  "name": "traffic_20250416_123045"
}

Next, let's check available simulation data:
[Tool execution: list_simdata]

From this data, I can start a simulation using Tokyo's morning traffic data.
I've selected the appropriate simulation data ID and will start the simulation:
[Tool execution: start_simulation]

The simulation has started. The simulation ID is "sim_12345".
It will take some time for the results to be available. Once complete, I'll analyze them.

(After simulation completes)
Let's analyze the simulation results:
[Tool execution: analyze_traffic_simulation]

Analysis results:
- CO2 emissions: 1,250kg
- Average travel time: 42 minutes
- Total traffic volume: 15,700 vehicles

From these results, I can see that the Shibuya-Shinjuku route experiences particularly severe congestion.
Here are some potential improvements:
1. Optimize traffic signal control
2. Implement one-way traffic on certain roads during specific times
3. Increase public transportation frequency

Would you like to see a more detailed analysis?

Contributing

Please report bugs or feature requests via GitHub Issues. Pull requests are welcome.

License

This project is released under the MIT License. See the LICENSE file for details.

Acknowledgments

  • Fujitsu Corporation - Development of Social Digital Twin technology
  • Model Context Protocol (MCP) - Enabling seamless integration with LLMs

Recommended Servers

playwright-mcp

playwright-mcp

A Model Context Protocol server that enables LLMs to interact with web pages through structured accessibility snapshots without requiring vision models or screenshots.

Official
Featured
TypeScript
Magic Component Platform (MCP)

Magic Component Platform (MCP)

An AI-powered tool that generates modern UI components from natural language descriptions, integrating with popular IDEs to streamline UI development workflow.

Official
Featured
Local
TypeScript
Audiense Insights MCP Server

Audiense Insights MCP Server

Enables interaction with Audiense Insights accounts via the Model Context Protocol, facilitating the extraction and analysis of marketing insights and audience data including demographics, behavior, and influencer engagement.

Official
Featured
Local
TypeScript
VeyraX MCP

VeyraX MCP

Single MCP tool to connect all your favorite tools: Gmail, Calendar and 40 more.

Official
Featured
Local
graphlit-mcp-server

graphlit-mcp-server

The Model Context Protocol (MCP) Server enables integration between MCP clients and the Graphlit service. Ingest anything from Slack to Gmail to podcast feeds, in addition to web crawling, into a Graphlit project - and then retrieve relevant contents from the MCP client.

Official
Featured
TypeScript
Kagi MCP Server

Kagi MCP Server

An MCP server that integrates Kagi search capabilities with Claude AI, enabling Claude to perform real-time web searches when answering questions that require up-to-date information.

Official
Featured
Python
E2B

E2B

Using MCP to run code via e2b.

Official
Featured
Neon Database

Neon Database

MCP server for interacting with Neon Management API and databases

Official
Featured
Exa Search

Exa Search

A Model Context Protocol (MCP) server lets AI assistants like Claude use the Exa AI Search API for web searches. This setup allows AI models to get real-time web information in a safe and controlled way.

Official
Featured
Qdrant Server

Qdrant Server

This repository is an example of how to create a MCP server for Qdrant, a vector search engine.

Official
Featured