Web-Algebra
Suite of generic Linked Data/SPARQL as well as LinkedDataHub-specific MCP tools
claude mcp add --transport stdio atomgraph-web-algebra uv run python -m web_algebra \ --env CERT_PASSWORD="your-cert-password" \ --env CERT_PEM_PATH="path/to/owner/cert.pem"
How to use
Web-Algebra exposes a composable set of RDF and SPARQL operations as MCP tools. It translates natural language instructions into a JSON-format domain-specific language (DSL) for loading, querying, and writing RDF Linked Data, and it can also compile workflows into optimized JSON bytecode for atomic execution. As an MCP server, you can invoke a suite of operations such as GET, POST, PATCH, and SPARQL constructs (CONSTRUCT, DESCRIBE, SELECT) as well as URI and string helpers (ResolveURI, EncodeForURI, Concat, Replace, Str, URI) and control-flow elements (Value, Variable, ForEach). LinkedDataHub-specific tools are exposed as well (ldh-CreateContainer, ldh-CreateItem, ldh-List, ldh-AddGenericService, ldh-AddResultSetChart, ldh-AddSelect, ldh-AddView, ldh-AddObjectBlock, ldh-AddXHTMLBlock, ldh-RemoveBlock). You can interact with these tools via standard MCP clients (for example, the MCP Inspector) or via the provided Python execution interface.
To use the MCP server, start it and connect an MCP client to the server endpoint. If you are using the stdio transport, you can invoke the server via the uv command shown in the configuration. If you also use the Inspector tool, you can generate a session token and connect the client to the URL printed by the inspector, enabling token-based authentication for MCP calls. The server supports both interactive natural-language instructions and pre-built JSON operation sequences, allowing you to run complex RDF workflows in a single, atomic step or incrementally compose operations through MCP calls.
How to install
Prerequisites:
- Python 3.8+ installed on your system
- uv (the Python virtual environment runner and MCP/CLI helper) installed per the project guidance
Installation steps:
-
Create and activate a Python virtual environment (using uv as described by the project):
uv venv uv sync
-
Install project dependencies (if applicable) and ensure the Web-Algebra package is available in your environment. This typically involves installing the package via uv and pulling in RDFLib and related tooling used by the server.
-
Run the MCP server (stdio transport) using the following command:
uv run python -m web_algebra
-
Optional: If you plan to use the Streamable HTTP transport or an LDH-backed workflow, ensure any required services (e.g., LinkedDataHub) are running and that you have the necessary certificates available if authenticated connections are required.
-
If you want to test with the Inspector, install and configure the MCP Inspector and connect it to the URL printed by the server after startup. The Inspector will provide a friendly UI for constructing and exploring MCP tool calls.
Additional notes
Tips and notes:
- The server can be interacted with via two main modes: interactive natural-language instructions or pre-assembled JSON operation graphs. Choose the workflow that best fits your use case.
- When using LinkedDataHub features, you may need client certificates and passwords. Set CERT_PEM_PATH and CERT_PASSWORD in your environment as needed (these are optional if you don’t use LDH authentication).
- The MCP Inspector token (MCP_PROXY_AUTH_TOKEN) is required for some inspector sessions. Ensure you copy and supply the token in your client configuration if prompted.
- For Claude Desktop or other MCP tooling integrations, ensure that the uv command line includes the full paths to your project sources and the appropriate --with hooks for mcp[cli], rdflib, openai, etc., as shown in the example configuration in the README.
- The server exposes a broad catalog of operations. Review the Operation Interface and the JSON examples to understand how to compose nested operations with the @op structure and args parameter.
- If you encounter environment-related issues, verify that Python and uv environments are activated and that any certificates or credentials are correctly pointed to by the environment variables.
- The JSON-based operation format allows building complex RDF workflows that can be executed atomically, reducing intermediate step overhead and ensuring consistent results.
Related MCP Servers
web-eval-agent
An MCP server that autonomously evaluates web applications.
mcp-neo4j
Neo4j Labs Model Context Protocol servers
Gitingest
mcp server for gitingest
zotero
Model Context Protocol (MCP) server for the Zotero API, in Python
fhir
FHIR MCP Server – helping you expose any FHIR Server or API as a MCP Server.
unitree-go2
The Unitree Go2 MCP Server is a server built on the MCP that enables users to control the Unitree Go2 robot using natural language commands interpreted by a LLM.