{"$schema":"https://wellknown.network/schemas/agent-record-v1.json","schemaVersion":"1","id":"ag_meawpdrnk4be","handle":"cordata-catalog-mcp","url":"https://wellknown.network/agents/cordata-catalog-mcp","links":{"self":"https://wellknown.network/agents/cordata-catalog-mcp/record.json","html":"https://wellknown.network/agents/cordata-catalog-mcp","markdown":"https://wellknown.network/agents/cordata-catalog-mcp/record.md","api":"https://wellknown.network/api/v1/agents/cordata-catalog-mcp","status":"https://wellknown.network/api/v1/agents/cordata-catalog-mcp/status","claim":"https://wellknown.network/agents/cordata-catalog-mcp/claim","claimApi":"https://wellknown.network/api/v1/claims","claimDescriptor":"https://wellknown.network/agents/cordata-catalog-mcp/claim.json","badge":"https://wellknown.network/agents/cordata-catalog-mcp/badge.svg","openapi":"https://wellknown.network/openapi.json","history":"https://wellknown.network/api/v1/agents/cordata-catalog-mcp/history","tools":"https://wellknown.network/api/v1/agents/cordata-catalog-mcp/tools"},"ard":{"identifier":"urn:air::server:cordata-catalog-mcp","type":"application/mcp-server-card+json"},"kind":"mcp_server","declared":{"name":"cordata-catalog-mcp","summary":"A read-only MCP server over a governed data catalog — the runnable version of cordata.tech's 'catalog is the API' post","description":"# cordata-catalog-mcp\n\nA read-only [Model Context Protocol](https://modelcontextprotocol.io) server that answers questions *about* datasets — who owns them, what columns they have, how those columns are classified, and whether a Lake Formation grant would reach them — and never returns a row of the data itself. It serves the example catalog that ships with [`cordata-pipeline-runtime`](https://pypi.org/project/cordata-pipeline-runtime/).\n\nIt is the runnable version of a design written up in two posts on cordata.tech. [Fabric + Mesh on AWS — LakeFormation, DataZone, and one governance plane](https://cordata.tech/en/blog/fabric-mesh-on-aws) lays out the reference topology this server is modelled on, with one AWS account per data domain and a governance account that owns the LF-tag ontology and the grants, and closes its [§ 3](https://cordata.tech/en/blog/fabric-mesh-on-aws#s3) by proposing an MCP catalog tool. [The catalog is the API — a governed mesh over MCP](https://cordata.tech/en/blog/governed-mesh-over-mcp) designs that tool: which questions it answers and where its schemas come from, why read-only has to be enforced rather than annotated, and how authorization works. Where this README says \"§ N of the post\", it means that second post.\n\nVerified against MCP revision **`2026-07-28`**, the Python SDK **`mcp` 2.3**, and `cordata-pipeline-runtime` **0.2.9**. MCP has changed substantially between revisions, so check those three numbers before trusting a detail below against a newer stack.\n\n## Start it\n\n```sh\nuvx cordata-catalog-mcp\n```\n\nThat starts the server over stdio, which is how a desktop or terminal MCP client launches a local server. To give it to a client, add it to the client's server configuration:\n\n```json\n{\n  \"mcpServers\": {\n    \"cordata-catalog\": {\n      \"command\": \"uvx\",\n      \"args\": [\"cordata-catalog-mcp\"]\n    }\n  }\n}\n```\n\nIn Claude Code the same thing is one command: `claude mcp add cordata-catalog -- uvx cordata-catalog-mcp`.\n\nOver stdio there is no…","publisher":null,"homepage":"https://cordata.tech","repository":"https://github.com/cordata-tech/catalog-mcp/blob/main/CHANGELOG.md","version":"0.3.0","license":null,"protocols":["mcp"],"tags":["mcp"],"pricing":null,"endpoints":[{"url":"pypi:cordata-catalog-mcp","type":"package_pypi","auth":null,"probeable":false}],"skills":null,"tools":null,"extra":null,"attribution":{"kind":"pypi","name":"pypi","repoUrl":"pypi","summary":"pypi","version":"pypi","description":"pypi","homepageUrl":"pypi"}},"derived":{"capabilities":[{"slug":"commerce.ecommerce","name":"E-commerce Operations","confidence":1,"provenance":"derived"},{"slug":"infra.cloud","name":"Cloud Platforms","confidence":0.699,"provenance":"derived"}],"categories":["commerce","infra"],"language":"en"},"observed":{"status":"unknown","statusReason":"Distributed as a package to run locally; no network endpoint to check.","lastOkAt":null,"lastProbedAt":null,"statusComputedAt":null,"reliability30d":null,"latestObservations":[],"tools":null,"package":{"name":"cordata-catalog-mcp","registry":"pypi","observedAt":"2026-11-05T21:26:34.665Z","publishedAt":"2026-10-25T15:31:44.467525Z","latestVersion":"0.3.0"},"toolSurface":null,"endpointFacts":[]},"verification":{"claimed":false,"claimedAt":null,"proofs":[]},"provenance":{"sources":[{"source":"pypi","key":"cordata-catalog-mcp","url":"https://pypi.org/project/cordata-catalog-mcp/","firstSeenAt":"2026-10-18T16:28:30.709Z","fetchedAt":"2026-11-05T21:24:57.722Z","normalizedAt":"2026-11-05T21:24:57.722Z"}]},"firstSeenAt":"2026-10-18T16:28:30.709Z","updatedAt":"2026-11-05T21:26:34.665Z"}