Artsdata MCP Server
Click on "Deploy Server".
Wait a few minutes for the server to deploy. Once ready, it will show a "Started" state.
In the chat, type
@followed by the MCP server name and your instructions, e.g., "@Artsdata MCP Serversearch Artsdata for Cirque du Soleil in French"
That's it! The server will respond to your query, and you can continue using it as needed.
Here is a step-by-step guide with screenshots.
Artsdata MCP Server (Rails)
Prerequisites
Ruby
4.0.6Rails
8.1Bundler
Related MCP server: RDF4J MCP Server
Setup
bundle installEndpoints
GET /search-entities?query=<text>&lang=en|frGET /entities?id=<uri_or_id>&lang=en|fr
Both endpoints return JSON in MCP-style payloads with a tool, result, and arguments.
MCP resources
artsdata://dumps/core-minus-provenance/latest(artsdata_dump): manifest for the latest Artsdata core-minus-provenance dump — the core graph with provenance and RDF-star annotations removed, published monthly as a gzipped Turtle file.resources/readasks the Artsdata Databus for the newest version of the artifact (GET /databus/artifact/latest?artifact=<ARTIFACT_URI>) and returns a small JSON document with the download URL, version, format and compression — never the dump contents. Going through the Databus means MCP clients need to know nothing about where the file is actually stored. Clients download the file fromdownloadUrland compareversionacross reads to detect when a new dump lands.
Directory structure
.github/
workflows/
deploy-to-heroku.yml # Workflow deploying to Heroku
run-unit-tests.yml # Reusable workflow running Minitest
unit-test-on-pull-request.yml # Workflow running unit tests on pull requests
app/
controllers/entities_controller.rb
services/artsdata_client.rb
config/
routes.rb
swagger/v1/
swagger.yaml
test/
controllers/entities_controller_test.rbConfiguration
ARTSDATA_RECONCILIATION_ENDPOINT: configurable reconciliation endpoint URL for/search-entities.ARTSDATA_SCHEMA_URL(optional): Turtle file compiled by theget_schematool (defaulthttps://docs.artsdata.ca/artsdata-schema.ttl).ARTSDATA_SCHEMA_CACHE_TTL_SECONDS(optional): how long the compiled schema is cached in process (default86400).ARTSDATA_CORS_ORIGINS(optional): comma-separated CORS origins (default*).ARTSDATA_API_ENDPOINT(optional): base URL of the Artsdata API, used to query the Databus for the latest data dump (defaulthttps://api.artsdata.ca).ARTSDATA_SPARQL_ENDPOINT(optional): SPARQL endpoint queried by thesparql_querytool (defaulthttps://query.artsdata.ca/query).ARTSDATA_SPARQL_TIMEOUT_SECONDS(optional): read timeout for asparql_querycall (default25).ARTSDATA_SPARQL_MAX_ROWS(optional): maximum rowssparql_queryreturns; extra rows are cut and the result is flaggedtruncated(default1000).SPARQL query template for
/entitiesis currently a placeholder inapp/services/artsdata_client.rb.Docker instance profiles are provided in:
env/production.envenv/staging.env
ARTSDATA_INSTANCE_TYPE(optional):PRODUCTION(default) orSTAGING. The Docker entrypoint loads the matching file fromenv/.
Run the application
bundle exec rails serverThe API will be available at http://localhost:3000.
Docker
Build the image:
docker build -t artsdata-mcp-server .Run the server:
docker run --rm -p 3000:3000 artsdata-mcp-serverRun with staging profile:
docker run --rm -p 3000:3000 -e ARTSDATA_INSTANCE_TYPE=STAGING artsdata-mcp-serverRun tests in Docker:
docker run --rm artsdata-mcp-server bundle exec rails test test/controllers/entities_controller_test.rbSwagger
Swagger UI:
GET /api-docsOpenAPI file:
/api-docs/v1/swagger.yaml
Run tests
bundle exec rails test test/controllers/entities_controller_test.rbRun all tests:
bundle exec rails testDeployment & CI/CD Details:
This project uses GitHub Actions for continuous integration and automated deployment to Heroku.
Every push to the main branch triggers a workflow that builds and deploys the application to Heroku.
The workflow is defined in .github/workflows/deploy-to-heroku.yml.
Every pull request triggers a workflow that unit tests. The workflow is defined in .github/workflows/run-unit-tests.yml.
Server Access & API Documentation
The Artsdata MCP Server is actively deployed and hosted in a live production environment.
Live Production Endpoints API Documentation (Swagger UI): https://artsdata-mcp-server-8cb4262e2362.herokuapp.com/api-docs/index.html
This server cannot be deployed
Maintenance
Related MCP Connectors
Query, browse, and automate OmegaAI workspaces from any MCP client. Streamable HTTP with OAuth 2.0.
Read-only MCP server over the APIs.io catalog — discover APIs, providers, tags & artifacts.
Governed data discovery, exact queries, decisions, simulations, and runtime utilities over MCP.
Search and fetch Wikidata entities, execute SPARQL queries, and resolve external identifiers.
Related MCP Servers
- AlicenseNot gradedqualityAmaintenanceA Model Context Protocol server that provides tools for querying SPARQL endpoints, with specialized support for Proto-OKN knowledge graphs hosted on the FRINK platform.8BSD 3-Clause
- AlicenseAqualityDmaintenanceAn MCP server that enables AI-powered exploration of RDF data and SPARQL querying via RDF4J. It provides tools for executing queries, searching knowledge graph resources, and retrieving schema summaries.131MIT
- AlicenseAqualityCmaintenanceMCP server exposing SPARQL query functionalities for LLMs, enabling query execution, validation, and graph exploration across SPARQL endpoints.7MIT
- FlicenseNot gradedqualityCmaintenanceEnables MCP-compliant agents to perform data discovery, schema matching, and export via HTTP, with a mock mode for demonstration.-