Artsdata MCP server
online · 100% uptimeca.artsdata/mcp·v1.0.0Search Artsdata for authoritative data on Canadian events, artists, organizations, and places.
0 stars
Reviews
Write oneNobody has reviewed Artsdata yet.
If you have run it, two minutes of your experience saves the next person an afternoon.
Artsdata tools (5, 1 write)
write = sends, deletes, buys or postsget_entityFreeTool to get entities details from Artsdata Knowledge Graph by entity URI. Entity URIs end in the Artsdata ID (K\d+-\d+, e.g. K12-345); cite it with the entity name. The result's `sources` lists the datasets the entity was built from: name them when you answer about the entity, linking `url` when present, else by `name`.
get_schemaFreeReturns the data model of the Artsdata Knowledge Graph: its entity classes (Event, Place, Organization, Person, LivePerformanceWork...), the properties of each with required/optional, cardinality, value types, linked classes and allowed values, the controlled vocabularies, the SPARQL prefixes, and conventions for querying. Derived from the Artsdata Ontology and the Artsdata CORE graph SHACL shapes. Call this before writing a SPARQL query to run with sparql_query against https://query.artsdata.ca/query, since Artsdata's model is not general knowledge. Takes no input.
search_entitiesFreeTool to search for entities in the Artsdata knowledge graph by name, with optional filters on entity type and on the controlled vocabulary (skos:ConceptScheme) a concept belongs to. Each result has a markdown-link `label` like '[Name (K12-345)](https://kg.artsdata.ca/resource/K12-345)': use it verbatim when mentioning the entity.
search_eventsFreeTool to search for events in the Artsdata knowledge graph by place, artist, organization, has_event_type_concept and language. Places, artists and organizations are Artsdata entity URIs; the has_event_type_concept filter takes concept URIs from the Artsdata Event Types vocabulary (adr:ArtsdataEventTypes), not schema.org classes. Resolve any name or label to its URI with search_entities first. Places must be venues; for events in a city or region, use sparql_query (see the places parameter). At least one filter is required. Entity URIs end in the Artsdata ID (K\d+-\d+, e.g. K12-345); cite it with the entity name.
sparql_querywrite actionFreeRuns a read-only SPARQL 1.1 SELECT or ASK query against the Artsdata Knowledge Graph (https://query.artsdata.ca/query) and returns the result as SPARQL 1.1 Query Results JSON, exactly as the endpoint returns it: head.vars and results.bindings for SELECT, boolean for ASK. Call get_schema first and build the query from the classes, properties, prefixes and conventions it returns, since Artsdata's model is not general knowledge. Declare every PREFIX you use and always add a LIMIT: at most 1000 rows are returned (the rest is cut and truncated is true; page with OFFSET), and a query gets 25 seconds. If the endpoint rejects the query, its error message is returned so you can fix the query and retry. For the details of an entity URI in the results use get_entity; to find an entity's URI from its name use search_entities. Always SELECT the entity URI next to its label so its Artsdata ID can be cited. Entity URIs end in the Artsdata ID (K\d+-\d+, e.g. K12-345); cite it with the entity name. To find who claims a property value, see the sources guidance in the get_schema conventions.
Public scan report
scanner v0.1.10 · 2026-10-30 · same rubric, same numbers if you re-run it
- –Code scanremote-only server, no package to scann/a
- Live reliabilityremote reachable in 902ms20/20
- Tool poisoning5 tool descriptions checked15/15
- Auth qualityopen endpoint exposes 1 write-action tools with no auth3/15
- Maintenancelast push 5 days ago15/15
- Maintainer identityendpoint served from the registry-verified namespace domain8/10
Findings (1)
- highWrite-action tools reachable without authentication
auth.open-write
How Artsdata compares
Against every graded Web search MCP server, from our own scans and uptime checks. Updated after each scan run.
- Safety score
- 81/100
- higher than 67% of 3,471 Web search servers
- Tools
- 5
- the typical Web search server has 5
- Tools that change things
- 20%
- typical: 0%. Fewer write tools means less an agent can break
- Uptime
- 100%
- of our recent checks; the typical remote Web search server answers 100%
- Response time
- 822 ms
- faster than 15% of 2,238 Web search servers
What its tools let an agent do: 4 read · 1 change
Install Artsdata in Claude Code, Cursor or VS Code
claude mcp add --transport http mcp https://mcp.artsdata.ca/mcp
What the publisher says
From the Artsdata repository's README, as published. We do not edit it. Read it on GitHub
Artsdata MCP Server (Rails)
Prerequisites
- Ruby 4.0.6
- Rails 8.1
- Bundler
Setup
bundle installEndpoints
docs/mcp-server.md)
- POST /mcp: MCP Streamable HTTP endpoint (tools and resources are documented in
- GET /up: health check
- GET /llms.txt: machine-readable guide for agents
Calls to /mcp are reported to Google Analytics 4.
MCP resources
latest Artsdata core-minus-provenance dump — the core graph with provenance and RDF-star annotations removed, published monthly as a gzipped Turtle file.
- artsdata://dumps/core-minus-provenance/latest (artsdata_dump): manifest for the
resources/read asks the Artsdata Databus for the newest version of the artifact (GET /databus/artifact/latest?artifact=) 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 from downloadUrl and compare version across 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/
resource/ # MCP resources
schema/ # JSON schemas of the tools' input and output
services/ # Clients for the reconciliation service, SPARQL endpoint and Databus
tool/ # MCP tools
config/
initializers/mcp_server.rb # MCP server: registered tools, resources and transport
initializers/mcp_analytics.rb # Google Analytics 4 reporting configuration
routes.rb
lib/
mcp_analytics/ # Rack middleware reporting MCP usage to Google Analytics 4
test/Configuration
searchentities, getentity and search_events tools.
- ARTSDATARECONCILIATIONENDPOINT: reconciliation service URL used by the
(default https://docs.artsdata.ca/artsdata-schema.ttl).
- ARTSDATASCHEMAURL (optional): Turtle file compiled by the get_schema tool
in process (default 86400).
- ARTSDATASCHEMACACHETTLSECONDS (optional): how long the compiled schema is cached
Databus for the latest data dump (default https://api.artsdata.ca).
- ARTSDATACORSORIGINS (optional): comma-separated CORS origins (default *).
- ARTSDATAAPIENDPOINT (optional): base URL of the Artsdata API, used to query the
tool (default https://query.artsdata.ca/query).
- ARTSDATASPARQLENDPOINT (optional): SPARQL endpoint queried by the sparql_query
(default 25).
- ARTSDATASPARQLTIMEOUTSECONDS (optional): read timeout for a sparqlquery call
are cut and the result is flagged truncated (default 1000).
- ARTSDATASPARQLMAXROWS (optional): maximum rows sparqlquery returns; extra rows
The Docker entrypoint loads the matching file from env/.
- Docker instance profiles are provided in:
- env/production.env
- env/staging.env
- ARTSDATAINSTANCETYPE (optional): PRODUCTION (default) or STAGING.
Usage analytics
Calls to /mcp are reported to Google Analytics 4, including the tool used, how long the call took, and the caller's User-Agent. Reporting stays off until both variables below are set, so development and CI need no configuration.
defaulted for production in config/environments/production.rb.
- GA4MEASUREMENTID: the GA4 property's G-XXXXXXXXXX id. Not a secret;
config var, never in env/.env, which is committed.
- GA4APISECRET: Measurement Protocol secret. **Secret — set it as a Heroku.
seconds, and log whether GA4 considers each payload valid. Events are still recorded. Useful because the normal endpoint answers 204 whether or not the payload is valid.
- GA4_DEBUG (optional): tag events so they appear in GA4's DebugView within
Shortened. The full README is on GitHub.
Nothing above is checked by us. What we check is on the safety report.
Artsdata: common questions
- Is Artsdata MCP server safe?
- Mostly: it is graded B (81/100). Read the Artsdata safety report
- How do I install Artsdata?
- It runs remotely at mcp.artsdata.ca. Add it to Claude Code, Cursor, VS Code or Claude Desktop with the snippets above, or call it through the mcp.market gateway without installing anything.
- Does Artsdata need an API key?
- Not as far as the registry entry and our scan can tell: no credentials are declared or required.
- Is Artsdata maintained?
- The last commit was 11 days ago (2026-10-25). The latest release is v1.0.0.
- Is Artsdata up?
- 100% of our last 28 checks got an answer. We check remote servers about four times a day.
- What can I use instead of Artsdata?
- Servers from other publishers that do the same job: AIHOT MCP server, Search1API MCP server and Apple Maps MCP server.
- How does Artsdata compare with other Web search MCP servers?
- safety score 81/100 (higher than 67% of 3,471 Web search servers); tools 5 (the typical Web search server has 5); tools that change things 20% (typical: 0%. Fewer write tools means less an agent can break). Full comparison.
Alternatives to Artsdata
Same job from other publishers: the closest match first, then the best rated.
- AIHOTChinese AI news: search topics, explore hot events, and read daily, weekly and monthly briefs.not reviewedEstablishedB
Search1APIMulti-engine web and platform search, news, Google Maps places, page reading, sitemaps, and trends.not reviewedEstablishedA- Apple MapsSearch places, estimate routes, and build Apple Maps links on macOS.not reviewedEstablishedA
- HasData YelpYelp business search, place details and the full review feed, as structured JSON.not reviewedGrowingA