FIWARE
A First FIWARE Model Context Protocol Server
claude mcp add --transport stdio dncampo-fiware-mcp-server uv run --with requests>=2.31.0 --with fastmcp>=0.3.0 python PATH\TO\FIWARE-MCP-Server\server.py
How to use
The FIWARE MCP Server acts as a bridge between a FIWARE Context Broker and other services, exposing a simple API to interact with Context Broker entities using the MCP protocol. It supports basic operations such as checking the Context Broker version, querying for entities, and publishing or updating entities in the broker. The server can run in STDIO mode by default or be started in HTTP mode to support stateless HTTP sessions for clients that require it. The included tools (CB_version, query_CB, and publish_to_CB) offer straightforward wrappers around common FIWARE Context Broker interactions, making it easier to integrate with language clients or orchestration systems.
To use the tools, run the FIWARE MCP Server in the desired mode and then invoke the provided helper functions (e.g., publish_to_CB for creating or updating NGSI-LD entities, query_CB for retrieving data, and CB_version to verify broker compatibility). When running in HTTP mode, you can specify host and port to expose a REST endpoint, and you can optionally tunnel it via ngrok if you need external access for integration with external LLM services or web clients.
How to install
Prerequisites:
- Python 3.7 or higher
- pip (Python package installer)
- Access to a FIWARE Context Broker instance
Installation steps:
- Clone the repository:
git clone <repository-url>
cd FIWARE_MCP_01
- Install dependencies:
pip install -r requirements.txt
- Run the server (STDIO mode by default):
python server.py
- Optional: Run the server in HTTP mode (exposes an HTTP endpoint):
python server.py --http
- If you distribute or integrate via Claude Desktop, use the provided CLI configuration example to spawn the server in STDIO or HTTP mode as appropriate (see README for examples).
Additional notes
Notes and tips:
- The server is designed to work with a FIWARE Context Broker. Ensure the broker URL/host and port are accessible from the MCP server environment.
- When using HTTP mode, you can configure host and port with --host and --port. Stateless HTTP sessions are used for compatibility with streaming clients.
- If you need external access to an HTTP mode server (e.g., to connect from a remote client or via an LLM API), consider tunneling with ngrok as described in the README.
- Common issues may include network connectivity problems to the Context Broker, invalid entity payloads during publish_to_CB calls, or misconfigured host/port for the HTTP server.
- The available tools (CB_version, query_CB, publish_to_CB) assume simple parameter defaults (address, port, etc.). Override as needed to point to your broker instance.
- If you modify server.py or the configuration, ensure Python dependencies are re-installed if required.
Related MCP Servers
mcp-vegalite
MCP server from isaacwasserman/mcp-vegalite-server
github-chat
A Model Context Protocol (MCP) for analyzing and querying GitHub repositories using the GitHub Chat API.
nautex
MCP server for guiding Coding Agents via end-to-end requirements to implementation plan pipeline
pagerduty
PagerDuty's official local MCP (Model Context Protocol) server which provides tools to interact with your PagerDuty account directly from your MCP-enabled client.
futu-stock
mcp server for futuniuniu stock
mcp -boilerplate
Boilerplate using one of the 'better' ways to build MCP Servers. Written using FastMCP