{"$schema":"https://wellknown.network/schemas/agent-record-v1.json","schemaVersion":"1","id":"ag_hb43e8r5xk93","handle":"markdown-mcp-server","url":"https://wellknown.network/agents/markdown-mcp-server","links":{"self":"https://wellknown.network/agents/markdown-mcp-server/record.json","html":"https://wellknown.network/agents/markdown-mcp-server","markdown":"https://wellknown.network/agents/markdown-mcp-server/record.md","api":"https://wellknown.network/api/v1/agents/markdown-mcp-server","status":"https://wellknown.network/api/v1/agents/markdown-mcp-server/status","claim":"https://wellknown.network/agents/markdown-mcp-server/claim","claimApi":"https://wellknown.network/api/v1/claims","claimDescriptor":"https://wellknown.network/agents/markdown-mcp-server/claim.json","badge":"https://wellknown.network/agents/markdown-mcp-server/badge.svg","openapi":"https://wellknown.network/openapi.json","history":"https://wellknown.network/api/v1/agents/markdown-mcp-server/history","tools":"https://wellknown.network/api/v1/agents/markdown-mcp-server/tools"},"ard":{"identifier":"urn:air::server:markdown-mcp-server","type":"application/mcp-server-card+json"},"kind":"mcp_server","declared":{"name":"markdown-mcp-server","summary":"Turn a Markdown file into a local MCP server, with zero dependencies.","description":"# mdMCP\n\nTurn a Markdown file into a local MCP server, with zero dependencies.\n\n```\npip install mdmcp\n```\n\n## Quickstart\n\n**1. Write a tool file:**\n\n```markdown\n## Tool: health_check\nCheck if a URL is reachable.\n### Parameters\n- url (string, required): URL to check\n### Execute\n\\```bash\nSTATUS=$(curl -sf -o /dev/null -w '%{http_code}' -m 5 \"$MDMCP_URL\")\necho \"HTTP $STATUS\"\n\\```\n```\n\n**2. Serve it:**\n\n```bash\nmdmcp serve tools.md\n```\n\n**3. Connect to Claude Code:**\n\n```json\n{\n  \"mcpServers\": {\n    \"my-tools\": {\n      \"command\": \"mdmcp\",\n      \"args\": [\"serve\", \"tools.md\"]\n    }\n  }\n}\n```\n\nThat's it. Your Markdown is now an MCP server.\n\n## How it works\n\n- `## Tool: name` defines a tool\n- `### Parameters` defines input schema (envvar-based, no string interpolation)\n- `### Execute` contains a bash script inside a fenced code block\n- Parameters are passed as `$MDMCP_<NAME>` environment variables\n\n## Commands\n\n```bash\nmdmcp list tools.md              # List available tools\nmdmcp run tools.md tool_name '{}'  # Run a tool once\nmdmcp serve tools.md             # Start MCP stdio server\n```\n\n## Security\n\n- **Minimal env**: only PATH, HOME, USER, SHELL, LANG, TERM are inherited. API keys and tokens are NOT exposed to tool scripts.\n- **No string interpolation**: parameters are passed as environment variables, not injected into shell code.\n- **Required param validation**: missing required parameters return an error before execution.\n- **Timeout + process cleanup**: 30s timeout with process group kill to prevent zombies.\n\n## Tips\n\n- Always quote `\"$MDMCP_VAR\"` in bash to prevent word splitting\n- Use `${MDMCP_VAR:-default}` for optional params with bash-side defaults\n- You can use `python3 -c` inside bash for complex logic (see `examples/data-tools.md`)\n- Use `set -eu` at the top of scripts for safer execution\n\n## Examples\n\nSee the [`examples/`](examples/) directory:\n\n- **ops-tools.md** — disk usage, port check, git log, docker status, health check\n- **dev-tools.md** — find TODOs, …","publisher":null,"homepage":"https://github.com/MakiDevelop/mdmcp","repository":"https://github.com/MakiDevelop/mdmcp","version":"0.2.0","license":null,"protocols":["mcp"],"tags":["mcp","markdown","ai-tools","cli","model-context-protocol"],"pricing":null,"endpoints":[{"url":"pypi:markdown-mcp-server","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":"dev.terminal","name":"Terminal & Shell","confidence":0.745,"provenance":"derived"},{"slug":"productivity.tasks","name":"Tasks & To-do","confidence":0.745,"provenance":"derived"}],"categories":["dev","productivity"],"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":"markdown-mcp-server","registry":"pypi","observedAt":"2026-10-28T09:23:08.111Z","publishedAt":"2026-06-21T05:11:31.026559Z","latestVersion":"0.2.0"},"toolSurface":null,"endpointFacts":[]},"verification":{"claimed":false,"claimedAt":null,"proofs":[]},"provenance":{"sources":[{"source":"pypi","key":"markdown-mcp-server","url":"https://pypi.org/project/markdown-mcp-server/","firstSeenAt":"2026-09-09T23:26:47.490Z","fetchedAt":"2026-10-28T09:21:57.501Z","normalizedAt":"2026-10-28T09:21:57.501Z"}]},"firstSeenAt":"2026-09-09T23:26:47.490Z","updatedAt":"2026-10-28T09:23:08.111Z"}