SPDXVersion: SPDX-2.1 DataLicense: CC0-1.0 SPDXID: SPDXRef-DOCUMENT DocumentName: project DocumentNamespace: http://spdx.org/spdxdocs/spdx-v2.1-7dfa0d78-c696-4e84-bc04-c9642a659c5c Creator: Person: Anonymous () Creator: Organization: Anonymous () Creator: Tool: reuse-6.1.0 Created: 2026-04-04T08:44:20Z CreatorComment: This document was created automatically using available reuse information consistent with REUSE. Relationship: SPDXRef-DOCUMENT DESCRIBES SPDXRef-16a8d2b4fbe38647f306817bacbd92c3 Relationship: SPDXRef-DOCUMENT DESCRIBES SPDXRef-a1bfc69bcad9f54eb41ae986ae321033 Relationship: SPDXRef-DOCUMENT DESCRIBES SPDXRef-6e88194e8d33e4837b7988db77161e18 Relationship: SPDXRef-DOCUMENT DESCRIBES SPDXRef-184c3f9a96ba4bc2cfcef4c2b48f2a69 Relationship: SPDXRef-DOCUMENT DESCRIBES SPDXRef-bfefe028ac0860944f42a085983a87c0 Relationship: SPDXRef-DOCUMENT DESCRIBES SPDXRef-07ff3cc9634e7c37fa5720dcb749c49c Relationship: SPDXRef-DOCUMENT DESCRIBES SPDXRef-db87030826208441e1331cf551cdc459 Relationship: SPDXRef-DOCUMENT DESCRIBES SPDXRef-4049f375b98c5e8c84e3d2aef9874a38 Relationship: SPDXRef-DOCUMENT DESCRIBES SPDXRef-d26d4d7ae7aa3a6e95a4f604bf241e5f Relationship: SPDXRef-DOCUMENT DESCRIBES SPDXRef-f9df287d0fceb9a23ce3fb32975b00c7 Relationship: SPDXRef-DOCUMENT DESCRIBES SPDXRef-acca7716870ed14349afa20c5e8a2b7c Relationship: SPDXRef-DOCUMENT DESCRIBES SPDXRef-4276c21cb732178575b655ae85ad5dd9 Relationship: SPDXRef-DOCUMENT DESCRIBES SPDXRef-ea92f60c48e82aefbe941e4fafc10c3c Relationship: SPDXRef-DOCUMENT DESCRIBES SPDXRef-b377376840b66f0fe1db214c6926300c Relationship: SPDXRef-DOCUMENT DESCRIBES SPDXRef-b92a9ee65cb4f765cba13af90553c8aa Relationship: SPDXRef-DOCUMENT DESCRIBES SPDXRef-e3bf74965b431603bb0cfd233f8c1248 Relationship: SPDXRef-DOCUMENT DESCRIBES SPDXRef-2af5e834edd2432a4acfdd21ae09704a Relationship: SPDXRef-DOCUMENT DESCRIBES SPDXRef-51ebaf47365a8a6e7cc8368184829cf5 Relationship: SPDXRef-DOCUMENT DESCRIBES SPDXRef-8c914ce96167153243c140b3dcb58ff4 Relationship: SPDXRef-DOCUMENT DESCRIBES SPDXRef-fe4a867bf34ce8365213d2ce2cf42d82 Relationship: SPDXRef-DOCUMENT DESCRIBES SPDXRef-98389d75b1d75c81261cefbd7ff0db12 Relationship: SPDXRef-DOCUMENT DESCRIBES SPDXRef-a04d57254baf3381014663391dbe25df Relationship: SPDXRef-DOCUMENT DESCRIBES SPDXRef-a956b0cac50f2f61f0d9c7957e333f36 Relationship: SPDXRef-DOCUMENT DESCRIBES SPDXRef-57c8367e22836db5edd3e908cbabd053 Relationship: SPDXRef-DOCUMENT DESCRIBES SPDXRef-8223f6ae22755e6b4611ba30b5074486 Relationship: SPDXRef-DOCUMENT DESCRIBES SPDXRef-46da20156cb1d81d1f42b13765fe3913 Relationship: SPDXRef-DOCUMENT DESCRIBES SPDXRef-cb7489c9b7a00bc5b5e5d8aaae7ad6b7 Relationship: SPDXRef-DOCUMENT DESCRIBES SPDXRef-09f82739ecb1b3471f76eff4873cd225 Relationship: SPDXRef-DOCUMENT DESCRIBES SPDXRef-52f5d5caa19194bd6cd99dc007814dab Relationship: SPDXRef-DOCUMENT DESCRIBES SPDXRef-91f07be1e8980e544b23cfef3295b4ff Relationship: SPDXRef-DOCUMENT DESCRIBES SPDXRef-c98eba4650d2e2707aa01feaa1131480 Relationship: SPDXRef-DOCUMENT DESCRIBES SPDXRef-db495e93623ce73db5a9fad841e9d80b Relationship: SPDXRef-DOCUMENT DESCRIBES SPDXRef-7c4afce15d2c5d13f763e6a7d90a4975 Relationship: SPDXRef-DOCUMENT DESCRIBES SPDXRef-0b4c2df94fedb1c11c9d7eac39da76e2 Relationship: SPDXRef-DOCUMENT DESCRIBES SPDXRef-bea677e492746c45343f74f9fa4d4af0 Relationship: SPDXRef-DOCUMENT DESCRIBES SPDXRef-761d1304ed69f1dfe803bcf3bf010e48 Relationship: SPDXRef-DOCUMENT DESCRIBES SPDXRef-2b0d7cc857a80585871aa458bf730a65 Relationship: SPDXRef-DOCUMENT DESCRIBES SPDXRef-c832222762c442948ceb8354d8ef118a Relationship: SPDXRef-DOCUMENT DESCRIBES SPDXRef-d4316ffc1e265e87587b31cfbf22db3e Relationship: SPDXRef-DOCUMENT DESCRIBES SPDXRef-1e820c7ffae1d863ab0d63cd86522a29 Relationship: SPDXRef-DOCUMENT DESCRIBES SPDXRef-b7b3164e7e643a188b3c73be8daea6b6 Relationship: SPDXRef-DOCUMENT DESCRIBES SPDXRef-c58743b2819eac9faf56b69106a2412c Relationship: SPDXRef-DOCUMENT DESCRIBES SPDXRef-db04fe0536f6c35abdfd0983f3f28e7f Relationship: SPDXRef-DOCUMENT DESCRIBES SPDXRef-f7a500d11d60a86d24f097a51b68e71a Relationship: SPDXRef-DOCUMENT DESCRIBES SPDXRef-62d0ffc7f74577f155dff410806934b8 Relationship: SPDXRef-DOCUMENT DESCRIBES SPDXRef-51167209b192d83c7162da8ee91708a9 Relationship: SPDXRef-DOCUMENT DESCRIBES SPDXRef-3d1ace5f8ea65210d3af4ce678e84262 Relationship: SPDXRef-DOCUMENT DESCRIBES SPDXRef-dab505d53acdd7eef542f93e26c84344 Relationship: SPDXRef-DOCUMENT DESCRIBES SPDXRef-bfaec7437db309d3d4478f041df0127c Relationship: SPDXRef-DOCUMENT DESCRIBES SPDXRef-77a8a239a3b958e0a144fc6dda657b60 Relationship: SPDXRef-DOCUMENT DESCRIBES SPDXRef-c87687839032d3cdb21c9ccb1331ff5a Relationship: SPDXRef-DOCUMENT DESCRIBES SPDXRef-e5b99939b05957fea746b6fb3042cabd Relationship: SPDXRef-DOCUMENT DESCRIBES SPDXRef-3ff1a58c3d9c64f6d928bc5492cd9309 Relationship: SPDXRef-DOCUMENT DESCRIBES SPDXRef-f68a71cff9b3bdfd44e684752db236eb Relationship: SPDXRef-DOCUMENT DESCRIBES SPDXRef-fb17a0bab6d4e9a84dc6920f1623156f Relationship: SPDXRef-DOCUMENT DESCRIBES SPDXRef-7f4497a94341d7625e26fcaad234169a Relationship: SPDXRef-DOCUMENT DESCRIBES SPDXRef-3666db9cee7c42d7bf15cba444a6e48a Relationship: SPDXRef-DOCUMENT DESCRIBES SPDXRef-e304b89246d0c2d814117e1857650231 Relationship: SPDXRef-DOCUMENT DESCRIBES SPDXRef-1c12aa61c83fe7b4d10aa0ced11be820 Relationship: SPDXRef-DOCUMENT DESCRIBES SPDXRef-5cb958e66c5b845ffa50bcadf3a554f6 Relationship: SPDXRef-DOCUMENT DESCRIBES SPDXRef-12da18b28e9bc03c9e2aab4dea86c122 Relationship: SPDXRef-DOCUMENT DESCRIBES SPDXRef-6ef83eec33962a2bf72134ba2aee66e8 Relationship: SPDXRef-DOCUMENT DESCRIBES SPDXRef-e5da81d8d36a32115d96412e74db9fe2 Relationship: SPDXRef-DOCUMENT DESCRIBES SPDXRef-5f99f9f15b3d1a09066a5145663c4354 Relationship: SPDXRef-DOCUMENT DESCRIBES SPDXRef-1d274ff71c84fbdabcf9ecb6de0fb141 Relationship: SPDXRef-DOCUMENT DESCRIBES SPDXRef-2c82c002b9d37dff29149157f1424738 Relationship: SPDXRef-DOCUMENT DESCRIBES SPDXRef-571bf6746e0a60b9ecaff6a76aaf9d34 Relationship: SPDXRef-DOCUMENT DESCRIBES SPDXRef-0e86ccd57b027ef77ec21256822924da Relationship: SPDXRef-DOCUMENT DESCRIBES SPDXRef-e8ffb2ee0aced41cf0cc1d6d2cf8bb17 Relationship: SPDXRef-DOCUMENT DESCRIBES SPDXRef-c44dc8ee3f53850a2fc39a75c29203e8 Relationship: SPDXRef-DOCUMENT DESCRIBES SPDXRef-7b33c29bf882cfc16efe54973b9f6a9f Relationship: SPDXRef-DOCUMENT DESCRIBES SPDXRef-be458827279c41e59408ef7c097ddf10 Relationship: SPDXRef-DOCUMENT DESCRIBES SPDXRef-96e2a36f6666a77cd890351583637096 FileName: ./.github/CODEOWNERS SPDXID: SPDXRef-16a8d2b4fbe38647f306817bacbd92c3 FileChecksum: SHA1: b729c35b19c57a776663e0dfdd617a74c4fb9b80 LicenseConcluded: NOASSERTION LicenseInfoInFile: Apache-2.0 FileCopyrightText: SPDX-FileCopyrightText: 2026 math-mcp-learning-server Contributors FileName: ./.github/ISSUE_TEMPLATE/bug.md SPDXID: SPDXRef-a1bfc69bcad9f54eb41ae986ae321033 FileChecksum: SHA1: 5659e2b3fdd986c5034e73b96f5837c6e3de61a7 LicenseConcluded: NOASSERTION LicenseInfoInFile: Apache-2.0 FileCopyrightText: SPDX-FileCopyrightText: 2026 math-mcp-learning-server Contributors FileName: ./.github/ISSUE_TEMPLATE/config.yml SPDXID: SPDXRef-6e88194e8d33e4837b7988db77161e18 FileChecksum: SHA1: 6c4e2f17e7cd25db9a084ec04f76a2f4670869a2 LicenseConcluded: NOASSERTION LicenseInfoInFile: Apache-2.0 FileCopyrightText: SPDX-FileCopyrightText: 2026 math-mcp-learning-server Contributors FileName: ./.github/ISSUE_TEMPLATE/documentation.md SPDXID: SPDXRef-184c3f9a96ba4bc2cfcef4c2b48f2a69 FileChecksum: SHA1: 965eac7daefc36420b6cfcb7cba981cb9906b258 LicenseConcluded: NOASSERTION LicenseInfoInFile: Apache-2.0 FileCopyrightText: SPDX-FileCopyrightText: 2026 math-mcp-learning-server Contributors FileName: ./.github/ISSUE_TEMPLATE/feature.md SPDXID: SPDXRef-bfefe028ac0860944f42a085983a87c0 FileChecksum: SHA1: 12f434166d7c30d7dd29eb75f360e7ee238dfd9c LicenseConcluded: NOASSERTION LicenseInfoInFile: Apache-2.0 FileCopyrightText: SPDX-FileCopyrightText: 2026 math-mcp-learning-server Contributors FileName: ./.github/ISSUE_TEMPLATE/refactor.md SPDXID: SPDXRef-07ff3cc9634e7c37fa5720dcb749c49c FileChecksum: SHA1: 4186cc773dde2a9799b35b58cb19666fd819407d LicenseConcluded: NOASSERTION LicenseInfoInFile: Apache-2.0 FileCopyrightText: SPDX-FileCopyrightText: 2026 math-mcp-learning-server Contributors FileName: ./.github/MAINTAINER_GUIDE.md SPDXID: SPDXRef-db87030826208441e1331cf551cdc459 FileChecksum: SHA1: 9b898c8fe6a1bb6abf4be0c1010c9850aa554a6d LicenseConcluded: NOASSERTION LicenseInfoInFile: Apache-2.0 FileCopyrightText: SPDX-FileCopyrightText: 2026 math-mcp-learning-server Contributors FileName: ./.github/PULL_REQUEST_TEMPLATE.md SPDXID: SPDXRef-4049f375b98c5e8c84e3d2aef9874a38 FileChecksum: SHA1: 922d508cd18bc7c71861864e4b758b1a63b3ffef LicenseConcluded: NOASSERTION LicenseInfoInFile: Apache-2.0 FileCopyrightText: SPDX-FileCopyrightText: 2026 math-mcp-learning-server Contributors FileName: ./.github/PYPI_TRUSTED_PUBLISHING.md SPDXID: SPDXRef-d26d4d7ae7aa3a6e95a4f604bf241e5f FileChecksum: SHA1: 436062156865d1b775342ea61c410b160dd8307e LicenseConcluded: NOASSERTION LicenseInfoInFile: Apache-2.0 FileCopyrightText: SPDX-FileCopyrightText: 2026 math-mcp-learning-server Contributors FileName: ./.github/workflows/ci.yml SPDXID: SPDXRef-f9df287d0fceb9a23ce3fb32975b00c7 FileChecksum: SHA1: ca1d9f0cfddbfba85c127d86c0976ce5d5518939 LicenseConcluded: NOASSERTION LicenseInfoInFile: Apache-2.0 FileCopyrightText: SPDX-FileCopyrightText: 2026 math-mcp-learning-server Contributors FileName: ./.github/workflows/issue-triage.yml SPDXID: SPDXRef-acca7716870ed14349afa20c5e8a2b7c FileChecksum: SHA1: 60df09da2f9c374277d1926d9ee474376a57cb31 LicenseConcluded: NOASSERTION LicenseInfoInFile: Apache-2.0 FileCopyrightText: SPDX-FileCopyrightText: 2026 math-mcp-learning-server Contributors FileName: ./.github/workflows/pr-triage.yml SPDXID: SPDXRef-4276c21cb732178575b655ae85ad5dd9 FileChecksum: SHA1: 1e77af38fbefc084cd38e1043c3d91c6ddc3c9e2 LicenseConcluded: NOASSERTION LicenseInfoInFile: Apache-2.0 FileCopyrightText: SPDX-FileCopyrightText: 2026 math-mcp-learning-server Contributors FileName: ./.github/workflows/release.yml SPDXID: SPDXRef-ea92f60c48e82aefbe941e4fafc10c3c FileChecksum: SHA1: bed487049c6ae5a6bb9e3c3836384a19f0cb9d4e LicenseConcluded: NOASSERTION LicenseInfoInFile: Apache-2.0 FileCopyrightText: SPDX-FileCopyrightText: 2026 math-mcp-learning-server Contributors FileName: ./.github/workflows/reuse.yml SPDXID: SPDXRef-b377376840b66f0fe1db214c6926300c FileChecksum: SHA1: 600c9ada6b5edcf6c57e684205508909f6ffe891 LicenseConcluded: NOASSERTION LicenseInfoInFile: Apache-2.0 FileCopyrightText: SPDX-FileCopyrightText: 2026 math-mcp-learning-server Contributors FileName: ./.github/workflows/scorecard.yml SPDXID: SPDXRef-b92a9ee65cb4f765cba13af90553c8aa FileChecksum: SHA1: 530dbf0ab0e4cf94a12f3aed85e755f3ee92684a LicenseConcluded: NOASSERTION LicenseInfoInFile: Apache-2.0 FileCopyrightText: SPDX-FileCopyrightText: 2026 math-mcp-learning-server Contributors FileName: ./.gitignore SPDXID: SPDXRef-e3bf74965b431603bb0cfd233f8c1248 FileChecksum: SHA1: ef22e400d1fe8d47ff066761881774ebf3b4de24 LicenseConcluded: NOASSERTION LicenseInfoInFile: Apache-2.0 FileCopyrightText: SPDX-FileCopyrightText: 2026 math-mcp-learning-server Contributors FileName: ./AGENTS.md SPDXID: SPDXRef-2af5e834edd2432a4acfdd21ae09704a FileChecksum: SHA1: 53072e0c30d85c13cf9ca1805562c5f3988be583 LicenseConcluded: NOASSERTION LicenseInfoInFile: Apache-2.0 FileCopyrightText: SPDX-FileCopyrightText: 2026 math-mcp-learning-server Contributors FileName: ./AI_POLICY.md SPDXID: SPDXRef-51ebaf47365a8a6e7cc8368184829cf5 FileChecksum: SHA1: 0ed04b7a2ece161c91def7819e2e30ef84809115 LicenseConcluded: NOASSERTION LicenseInfoInFile: Apache-2.0 LicenseInfoInFile: Apache-2.0 FileCopyrightText: SPDX-FileCopyrightText: 2026 code-analyze-mcp contributors SPDX-FileCopyrightText: 2026 math-mcp-learning-server Contributors Copyright for all FileName: ./ASSURANCE.md SPDXID: SPDXRef-8c914ce96167153243c140b3dcb58ff4 FileChecksum: SHA1: 576f1b54ad97f719defdd4ca0ddd599845291f1c LicenseConcluded: NOASSERTION LicenseInfoInFile: Apache-2.0 FileCopyrightText: SPDX-FileCopyrightText: 2026 math-mcp-learning-server Contributors FileName: ./CODE_OF_CONDUCT.md SPDXID: SPDXRef-fe4a867bf34ce8365213d2ce2cf42d82 FileChecksum: SHA1: 052d776d1639eee41eaa256fc7fbb6cdb32438ab LicenseConcluded: NOASSERTION LicenseInfoInFile: Apache-2.0 FileCopyrightText: SPDX-FileCopyrightText: 2026 math-mcp-learning-server Contributors FileName: ./CONTRIBUTING.md SPDXID: SPDXRef-98389d75b1d75c81261cefbd7ff0db12 FileChecksum: SHA1: 910d736ef82be1aa96957788e720b3d7445a25f1 LicenseConcluded: NOASSERTION LicenseInfoInFile: Apache-2.0 FileCopyrightText: SPDX-FileCopyrightText: 2026 math-mcp-learning-server Contributors FileName: ./GOVERNANCE.md SPDXID: SPDXRef-a04d57254baf3381014663391dbe25df FileChecksum: SHA1: 85d01146863c7f1c9f642ba93109816155cc48bd LicenseConcluded: NOASSERTION LicenseInfoInFile: Apache-2.0 FileCopyrightText: SPDX-FileCopyrightText: 2026 math-mcp-learning-server Contributors FileName: ./README.md SPDXID: SPDXRef-a956b0cac50f2f61f0d9c7957e333f36 FileChecksum: SHA1: cb783804801759541a0f3361fc2ea4f36904737d LicenseConcluded: NOASSERTION LicenseInfoInFile: Apache-2.0 FileCopyrightText: SPDX-FileCopyrightText: 2026 math-mcp-learning-server Contributors FileName: ./ROADMAP.md SPDXID: SPDXRef-57c8367e22836db5edd3e908cbabd053 FileChecksum: SHA1: ee78a929685710d084e967a2a2aec04e4c7149a6 LicenseConcluded: NOASSERTION LicenseInfoInFile: Apache-2.0 FileCopyrightText: SPDX-FileCopyrightText: 2026 math-mcp-learning-server Contributors FileName: ./SECURITY.md SPDXID: SPDXRef-8223f6ae22755e6b4611ba30b5074486 FileChecksum: SHA1: 56fc2b3a741fab1d28599f355e43e56da258c52b LicenseConcluded: NOASSERTION LicenseInfoInFile: Apache-2.0 FileCopyrightText: SPDX-FileCopyrightText: 2026 math-mcp-learning-server Contributors FileName: ./docs/ARCHITECTURE.md SPDXID: SPDXRef-46da20156cb1d81d1f42b13765fe3913 FileChecksum: SHA1: cb0324316e16936edd4762c8342126efdd1fba01 LicenseConcluded: NOASSERTION LicenseInfoInFile: Apache-2.0 FileCopyrightText: SPDX-FileCopyrightText: 2026 math-mcp-learning-server Contributors FileName: ./docs/CLOUD_DEPLOYMENT.md SPDXID: SPDXRef-cb7489c9b7a00bc5b5e5d8aaae7ad6b7 FileChecksum: SHA1: 1ad824978444fbc1f15c533800d945e521cc2b2c LicenseConcluded: NOASSERTION LicenseInfoInFile: Apache-2.0 FileCopyrightText: SPDX-FileCopyrightText: 2026 math-mcp-learning-server Contributors FileName: ./docs/EXAMPLES.md SPDXID: SPDXRef-09f82739ecb1b3471f76eff4873cd225 FileChecksum: SHA1: ed95c6d2bf8f73247e36cabd1ddfae85caf374dd LicenseConcluded: NOASSERTION LicenseInfoInFile: Apache-2.0 FileCopyrightText: SPDX-FileCopyrightText: 2026 math-mcp-learning-server Contributors FileName: ./docs/SUBMISSION_GUIDE.md SPDXID: SPDXRef-52f5d5caa19194bd6cd99dc007814dab FileChecksum: SHA1: 911f45dd361a7cf5113eebbfc35e48209231a964 LicenseConcluded: NOASSERTION LicenseInfoInFile: Apache-2.0 FileCopyrightText: SPDX-FileCopyrightText: 2026 math-mcp-learning-server Contributors FileName: ./docs/adr/001-eval-sandbox.md SPDXID: SPDXRef-91f07be1e8980e544b23cfef3295b4ff FileChecksum: SHA1: a01ad34cefab161bc6daa04a4c0e8694d5f94f78 LicenseConcluded: NOASSERTION LicenseInfoInFile: Apache-2.0 FileCopyrightText: SPDX-FileCopyrightText: 2026 math-mcp-learning-server Contributors FileName: ./docs/adr/002-monolith-decomposition.md SPDXID: SPDXRef-c98eba4650d2e2707aa01feaa1131480 FileChecksum: SHA1: 46f7afe3b7a79e45f3a9e9af669514e841b48c24 LicenseConcluded: NOASSERTION LicenseInfoInFile: Apache-2.0 FileCopyrightText: SPDX-FileCopyrightText: 2026 math-mcp-learning-server Contributors FileName: ./docs/adr/003-fastmcp-3-upgrade.md SPDXID: SPDXRef-db495e93623ce73db5a9fad841e9d80b FileChecksum: SHA1: ec13f75dcfc181998ff73a50284459a6678a6cbb LicenseConcluded: NOASSERTION LicenseInfoInFile: Apache-2.0 FileCopyrightText: SPDX-FileCopyrightText: 2026 math-mcp-learning-server Contributors FileName: ./docs/adr/004-asyncio-to-thread.md SPDXID: SPDXRef-7c4afce15d2c5d13f763e6a7d90a4975 FileChecksum: SHA1: 4f597ac32d375e6b934b54a7dd8401f0878524cc LicenseConcluded: NOASSERTION LicenseInfoInFile: Apache-2.0 FileCopyrightText: SPDX-FileCopyrightText: 2026 math-mcp-learning-server Contributors FileName: ./docs/adr/005-pydantic-validation.md SPDXID: SPDXRef-0b4c2df94fedb1c11c9d7eac39da76e2 FileChecksum: SHA1: ea85b07e480dd52f64987ca59e8d8fd9459f4273 LicenseConcluded: NOASSERTION LicenseInfoInFile: Apache-2.0 FileCopyrightText: SPDX-FileCopyrightText: 2026 math-mcp-learning-server Contributors FileName: ./docs/adr/006-matplotlib-agg.md SPDXID: SPDXRef-bea677e492746c45343f74f9fa4d4af0 FileChecksum: SHA1: 10eaaa1d2491951edd5daddc7ef3289e1421aab7 LicenseConcluded: NOASSERTION LicenseInfoInFile: Apache-2.0 FileCopyrightText: SPDX-FileCopyrightText: 2026 math-mcp-learning-server Contributors FileName: ./docs/adr/007-json-workspace-persistence.md SPDXID: SPDXRef-761d1304ed69f1dfe803bcf3bf010e48 FileChecksum: SHA1: 059955c9569003c51022722acb60bbae9a61583c LicenseConcluded: NOASSERTION LicenseInfoInFile: Apache-2.0 FileCopyrightText: SPDX-FileCopyrightText: 2026 math-mcp-learning-server Contributors FileName: ./docs/adr/008-annotation-quality-tests.md SPDXID: SPDXRef-2b0d7cc857a80585871aa458bf730a65 FileChecksum: SHA1: bb68322d2668d1ae692e12bd019d0cad3c60963e LicenseConcluded: NOASSERTION LicenseInfoInFile: Apache-2.0 FileCopyrightText: SPDX-FileCopyrightText: 2026 math-mcp-learning-server Contributors FileName: ./docs/testing/README.md SPDXID: SPDXRef-c832222762c442948ceb8354d8ef118a FileChecksum: SHA1: 366ac3b6a3fba2d27ca3a9ad810f88455bcabc67 LicenseConcluded: NOASSERTION LicenseInfoInFile: Apache-2.0 FileCopyrightText: SPDX-FileCopyrightText: 2026 math-mcp-learning-server Contributors FileName: ./docs/testing/coverage-gaps.md SPDXID: SPDXRef-d4316ffc1e265e87587b31cfbf22db3e FileChecksum: SHA1: 39ddde7091bf08fd2659609fa2d51911c26a8be1 LicenseConcluded: NOASSERTION LicenseInfoInFile: Apache-2.0 FileCopyrightText: SPDX-FileCopyrightText: 2026 math-mcp-learning-server Contributors FileName: ./docs/testing/reports/v0.10.0-validation.md SPDXID: SPDXRef-1e820c7ffae1d863ab0d63cd86522a29 FileChecksum: SHA1: d5d3dd60500ffc63fe12c0675839c7208180b468 LicenseConcluded: NOASSERTION LicenseInfoInFile: Apache-2.0 FileCopyrightText: SPDX-FileCopyrightText: 2026 math-mcp-learning-server Contributors FileName: ./docs/testing/test-plan.md SPDXID: SPDXRef-b7b3164e7e643a188b3c73be8daea6b6 FileChecksum: SHA1: cf08a96103a2fae2b22b0c9566933f2439235270 LicenseConcluded: NOASSERTION LicenseInfoInFile: Apache-2.0 FileCopyrightText: SPDX-FileCopyrightText: 2026 math-mcp-learning-server Contributors FileName: ./fastmcp.json SPDXID: SPDXRef-c58743b2819eac9faf56b69106a2412c FileChecksum: SHA1: be76cfa75831daa6126d81278261d022cd3eee48 LicenseConcluded: NOASSERTION LicenseInfoInFile: Apache-2.0 FileCopyrightText: SPDX-FileCopyrightText: 2026 math-mcp-learning-server Contributors FileName: ./glama.json SPDXID: SPDXRef-db04fe0536f6c35abdfd0983f3f28e7f FileChecksum: SHA1: bd376e6f61776494a82c17bb9717e0dff734b699 LicenseConcluded: NOASSERTION LicenseInfoInFile: Apache-2.0 FileCopyrightText: SPDX-FileCopyrightText: 2026 math-mcp-learning-server Contributors FileName: ./pyproject.toml SPDXID: SPDXRef-f7a500d11d60a86d24f097a51b68e71a FileChecksum: SHA1: 3d14e216f149ca2bf6069447f60d320158f7e8fd LicenseConcluded: NOASSERTION LicenseInfoInFile: Apache-2.0 FileCopyrightText: SPDX-FileCopyrightText: 2026 math-mcp-learning-server Contributors FileName: ./renovate.json SPDXID: SPDXRef-62d0ffc7f74577f155dff410806934b8 FileChecksum: SHA1: 6ce8f9d591a245a4cbbb4c4c42a9c3aaabefa5d5 LicenseConcluded: NOASSERTION LicenseInfoInFile: Apache-2.0 FileCopyrightText: SPDX-FileCopyrightText: 2026 math-mcp-learning-server Contributors FileName: ./server.json SPDXID: SPDXRef-51167209b192d83c7162da8ee91708a9 FileChecksum: SHA1: 1ec1df15a731ee82a4cdefbbb5b6a10fa2989dc0 LicenseConcluded: NOASSERTION LicenseInfoInFile: Apache-2.0 FileCopyrightText: SPDX-FileCopyrightText: 2026 math-mcp-learning-server Contributors FileName: ./smithery.yaml SPDXID: SPDXRef-3d1ace5f8ea65210d3af4ce678e84262 FileChecksum: SHA1: 38935476c592456c4907cb42c621fd461ad27e9b LicenseConcluded: NOASSERTION LicenseInfoInFile: Apache-2.0 FileCopyrightText: SPDX-FileCopyrightText: 2026 math-mcp-learning-server Contributors FileName: ./src/math_mcp/__init__.py SPDXID: SPDXRef-dab505d53acdd7eef542f93e26c84344 FileChecksum: SHA1: 6f075cbaf5d211125eba7e20f8c5b17621d1d921 LicenseConcluded: NOASSERTION LicenseInfoInFile: Apache-2.0 FileCopyrightText: SPDX-FileCopyrightText: 2026 math-mcp-learning-server Contributors FileName: ./src/math_mcp/agent_card.py SPDXID: SPDXRef-bfaec7437db309d3d4478f041df0127c FileChecksum: SHA1: f89825e50fd24d67add46ec1cb12a8bf8166fae7 LicenseConcluded: NOASSERTION LicenseInfoInFile: Apache-2.0 FileCopyrightText: SPDX-FileCopyrightText: 2026 math-mcp-learning-server Contributors FileName: ./src/math_mcp/eval.py SPDXID: SPDXRef-77a8a239a3b958e0a144fc6dda657b60 FileChecksum: SHA1: d7b44738295dc72efb1708cac2a9fe84ba77c638 LicenseConcluded: NOASSERTION LicenseInfoInFile: Apache-2.0 FileCopyrightText: SPDX-FileCopyrightText: 2026 math-mcp-learning-server Contributors FileName: ./src/math_mcp/persistence/__init__.py SPDXID: SPDXRef-c87687839032d3cdb21c9ccb1331ff5a FileChecksum: SHA1: 0ddb5c16eb97ded02467000547bcfdf4dc8a5bbd LicenseConcluded: NOASSERTION LicenseInfoInFile: Apache-2.0 FileCopyrightText: SPDX-FileCopyrightText: 2026 math-mcp-learning-server Contributors FileName: ./src/math_mcp/persistence/models.py SPDXID: SPDXRef-e5b99939b05957fea746b6fb3042cabd FileChecksum: SHA1: 51e7ca394509a4b1a09136967b5e725d660a7097 LicenseConcluded: NOASSERTION LicenseInfoInFile: Apache-2.0 FileCopyrightText: SPDX-FileCopyrightText: 2026 math-mcp-learning-server Contributors FileName: ./src/math_mcp/persistence/storage.py SPDXID: SPDXRef-3ff1a58c3d9c64f6d928bc5492cd9309 FileChecksum: SHA1: e47a60c026e6d6940a8531a49018052aeaed8382 LicenseConcluded: NOASSERTION LicenseInfoInFile: Apache-2.0 FileCopyrightText: SPDX-FileCopyrightText: 2026 math-mcp-learning-server Contributors FileName: ./src/math_mcp/persistence/workspace.py SPDXID: SPDXRef-f68a71cff9b3bdfd44e684752db236eb FileChecksum: SHA1: b9a1e8d1b6e8f9f98e7ca2248ed76f7e353ba707 LicenseConcluded: NOASSERTION LicenseInfoInFile: Apache-2.0 FileCopyrightText: SPDX-FileCopyrightText: 2026 math-mcp-learning-server Contributors FileName: ./src/math_mcp/resources.py SPDXID: SPDXRef-fb17a0bab6d4e9a84dc6920f1623156f FileChecksum: SHA1: 8e1adde279762bb68c0d9069ceef1bb17d865dd0 LicenseConcluded: NOASSERTION LicenseInfoInFile: Apache-2.0 FileCopyrightText: SPDX-FileCopyrightText: 2026 math-mcp-learning-server Contributors FileName: ./src/math_mcp/server.py SPDXID: SPDXRef-7f4497a94341d7625e26fcaad234169a FileChecksum: SHA1: e78efe9a65c9c1c55f1688c62ebfea2e13b0c248 LicenseConcluded: NOASSERTION LicenseInfoInFile: Apache-2.0 FileCopyrightText: SPDX-FileCopyrightText: 2026 math-mcp-learning-server Contributors FileName: ./src/math_mcp/settings.py SPDXID: SPDXRef-3666db9cee7c42d7bf15cba444a6e48a FileChecksum: SHA1: f5be4e09da17bbab710d429476fe5df7c1206d5a LicenseConcluded: NOASSERTION LicenseInfoInFile: Apache-2.0 FileCopyrightText: SPDX-FileCopyrightText: 2026 math-mcp-learning-server Contributors FileName: ./src/math_mcp/tools/__init__.py SPDXID: SPDXRef-e304b89246d0c2d814117e1857650231 FileChecksum: SHA1: 9af22231902061a33b59ecedea2afec3641dca1e LicenseConcluded: NOASSERTION LicenseInfoInFile: Apache-2.0 FileCopyrightText: SPDX-FileCopyrightText: 2026 math-mcp-learning-server Contributors FileName: ./src/math_mcp/tools/_session.py SPDXID: SPDXRef-1c12aa61c83fe7b4d10aa0ced11be820 FileChecksum: SHA1: acdfdb7432c1f889599e5e99e2c990abf0fceb28 LicenseConcluded: NOASSERTION LicenseInfoInFile: Apache-2.0 FileCopyrightText: SPDX-FileCopyrightText: 2026 math-mcp-learning-server Contributors FileName: ./src/math_mcp/tools/calculate.py SPDXID: SPDXRef-5cb958e66c5b845ffa50bcadf3a554f6 FileChecksum: SHA1: 9b61119d2d25ecda5b5e8ef9554b5b63e70bb2d9 LicenseConcluded: NOASSERTION LicenseInfoInFile: Apache-2.0 FileCopyrightText: SPDX-FileCopyrightText: 2026 math-mcp-learning-server Contributors FileName: ./src/math_mcp/tools/matrix.py SPDXID: SPDXRef-12da18b28e9bc03c9e2aab4dea86c122 FileChecksum: SHA1: 01185a5922a49cf1123caa0eaaa2b669f123b237 LicenseConcluded: NOASSERTION LicenseInfoInFile: Apache-2.0 FileCopyrightText: SPDX-FileCopyrightText: 2026 math-mcp-learning-server Contributors FileName: ./src/math_mcp/tools/persistence.py SPDXID: SPDXRef-6ef83eec33962a2bf72134ba2aee66e8 FileChecksum: SHA1: 87f384efbee5bb91e15b613fd4ed19a51e3a3fda LicenseConcluded: NOASSERTION LicenseInfoInFile: Apache-2.0 FileCopyrightText: SPDX-FileCopyrightText: 2026 math-mcp-learning-server Contributors FileName: ./src/math_mcp/tools/visualization.py SPDXID: SPDXRef-e5da81d8d36a32115d96412e74db9fe2 FileChecksum: SHA1: 3db4edfa2d623111d9b12cd9071bad2c5ec7753a LicenseConcluded: NOASSERTION LicenseInfoInFile: Apache-2.0 FileCopyrightText: SPDX-FileCopyrightText: 2026 math-mcp-learning-server Contributors FileName: ./src/math_mcp/visualization.py SPDXID: SPDXRef-5f99f9f15b3d1a09066a5145663c4354 FileChecksum: SHA1: 9ea4fe680948702cd178ecf24003bda70cf4f9df LicenseConcluded: NOASSERTION LicenseInfoInFile: Apache-2.0 FileCopyrightText: SPDX-FileCopyrightText: 2026 math-mcp-learning-server Contributors FileName: ./tests/conftest.py SPDXID: SPDXRef-1d274ff71c84fbdabcf9ecb6de0fb141 FileChecksum: SHA1: b9abd239f4f0ecf93abe72f8f8389e7a20f53928 LicenseConcluded: NOASSERTION LicenseInfoInFile: Apache-2.0 FileCopyrightText: SPDX-FileCopyrightText: 2026 math-mcp-learning-server Contributors FileName: ./tests/test_agent_card.py SPDXID: SPDXRef-2c82c002b9d37dff29149157f1424738 FileChecksum: SHA1: d3130e4911d68990d39b475fb8e3d728c169e3c6 LicenseConcluded: NOASSERTION LicenseInfoInFile: Apache-2.0 FileCopyrightText: SPDX-FileCopyrightText: 2026 math-mcp-learning-server Contributors FileName: ./tests/test_annotations.py SPDXID: SPDXRef-571bf6746e0a60b9ecaff6a76aaf9d34 FileChecksum: SHA1: 680f8dfed8694bce555881f47749e4018f0659c8 LicenseConcluded: NOASSERTION LicenseInfoInFile: Apache-2.0 FileCopyrightText: SPDX-FileCopyrightText: 2026 math-mcp-learning-server Contributors FileName: ./tests/test_http_integration.py SPDXID: SPDXRef-0e86ccd57b027ef77ec21256822924da FileChecksum: SHA1: e06fa9555375eb7873ed972b47c704bc9fd062c6 LicenseConcluded: NOASSERTION LicenseInfoInFile: Apache-2.0 FileCopyrightText: SPDX-FileCopyrightText: 2026 math-mcp-learning-server Contributors FileName: ./tests/test_math_operations.py SPDXID: SPDXRef-e8ffb2ee0aced41cf0cc1d6d2cf8bb17 FileChecksum: SHA1: 7fef5950f552c26a8ef76969410de8d5f1e89699 LicenseConcluded: NOASSERTION LicenseInfoInFile: Apache-2.0 FileCopyrightText: SPDX-FileCopyrightText: 2026 math-mcp-learning-server Contributors FileName: ./tests/test_matrix_operations.py SPDXID: SPDXRef-c44dc8ee3f53850a2fc39a75c29203e8 FileChecksum: SHA1: 38c6bfb63fbee403c12bc4c7b6aa0b16b297f7f7 LicenseConcluded: NOASSERTION LicenseInfoInFile: Apache-2.0 FileCopyrightText: SPDX-FileCopyrightText: 2026 math-mcp-learning-server Contributors FileName: ./tests/test_persistence.py SPDXID: SPDXRef-7b33c29bf882cfc16efe54973b9f6a9f FileChecksum: SHA1: 699bf53be67f207b03103b91e384d47541bec2ad LicenseConcluded: NOASSERTION LicenseInfoInFile: Apache-2.0 FileCopyrightText: SPDX-FileCopyrightText: 2026 math-mcp-learning-server Contributors FileName: ./tests/test_visualization.py SPDXID: SPDXRef-be458827279c41e59408ef7c097ddf10 FileChecksum: SHA1: d07d6abfbbcc201987a76ab0febd4db9aacf82ca LicenseConcluded: NOASSERTION LicenseInfoInFile: Apache-2.0 FileCopyrightText: SPDX-FileCopyrightText: 2026 math-mcp-learning-server Contributors FileName: ./uv.lock SPDXID: SPDXRef-96e2a36f6666a77cd890351583637096 FileChecksum: SHA1: b64efc5cf276c95e9e2ef90a9588d6f5cf373dbb LicenseConcluded: NOASSERTION LicenseInfoInFile: Apache-2.0 FileCopyrightText: SPDX-FileCopyrightText: 2026 math-mcp-learning-server Contributors