{"_id":"@compute-finance/mcp","_rev":"14-8a860a26f128f2703e1b0f3f99c3f58a","name":"@compute-finance/mcp","dist-tags":{"latest":"0.12.0"},"versions":{"0.1.0":{"name":"@compute-finance/mcp","version":"0.1.0","keywords":["mcp","mcp-server","model-context-protocol","llm","pricing","oracle","compute-finance","ai","claude-code","claude-code-skills","ai-compute","token-pricing"],"author":{"name":"Compute Finance"},"license":"MIT","_id":"@compute-finance/mcp@0.1.0","maintainers":[{"name":"e2xlabs","email":"tech@e2xlabs.com"}],"homepage":"https://github.com/compute-finance/mcp#readme","bugs":{"url":"https://github.com/compute-finance/mcp/issues"},"bin":{"compute-finance":"dist/index.js"},"dist":{"shasum":"6007ba5489364743ff38a0e8b798a2760f3a3c7f","tarball":"https://registry.npmjs.org/@compute-finance/mcp/-/mcp-0.1.0.tgz","fileCount":66,"integrity":"sha512-S1RmaRxls2QWfUYH/fsBiwfjgDPI4snJHDi43xxBKjvK2BcDsCtPklJeniP1fw6N7OnT/r5DJ8gYD9sFsQYHdQ==","signatures":[{"sig":"MEYCIQDeXMlgJnqY8nuVkT0COQgNtbWJXOIWnEO8FGWRE1wq9AIhAOIC4Q9L08kkQVkMvxbPKeCPeazE1WoHE+jDnZ1hwHSz","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"attestations":{"url":"https://registry.npmjs.org/-/npm/v1/attestations/@compute-finance%2fmcp@0.1.0","provenance":{"predicateType":"https://slsa.dev/provenance/v1"}},"unpackedSize":242506},"type":"module","engines":{"node":">=20"},"gitHead":"f352e45f5441a99359e5d55aa50d488e31257e46","scripts":{"dev":"tsx src/index.ts","test":"tsx --test src/oracle/openapi-schema.test.ts src/oracle/field-map.test.ts","build":"npm run clean && tsc -p tsconfig.build.json","clean":"node -e \"const fs=require('fs');try{fs.rmSync('dist',{recursive:true,force:true})}catch{};const g=require('path').resolve('tsconfig.build.tsbuildinfo');try{fs.unlinkSync(g)}catch{}\"","start":"node dist/index.js","prepublishOnly":"npm run build"},"_npmUser":{"name":"e2xlabs","email":"tech@e2xlabs.com"},"repository":{"url":"git+https://github.com/compute-finance/mcp.git","type":"git"},"_npmVersion":"10.8.2","description":"Live AI compute pricing oracle MCP server — real-time LLM model prices across providers. Includes Claude Code skills for session cost analysis.","directories":{},"_nodeVersion":"20.20.2","dependencies":{"@modelcontextprotocol/sdk":"^1.0.4"},"_hasShrinkwrap":false,"devDependencies":{"tsx":"^4.19.0","typescript":"^5.7.0","@types/node":"^22.10.0"},"_npmOperationalInternal":{"tmp":"tmp/mcp_0.1.0_1779373888704_0.2834595339921864","host":"s3://npm-registry-packages-npm-production"}},"0.2.0":{"name":"@compute-finance/mcp","version":"0.2.0","keywords":["mcp","mcp-server","model-context-protocol","llm","pricing","oracle","compute-finance","ai","claude-code","claude-code-skills","ai-compute","token-pricing"],"author":{"name":"Compute Finance"},"license":"MIT","_id":"@compute-finance/mcp@0.2.0","maintainers":[{"name":"e2xlabs","email":"tech@e2xlabs.com"}],"homepage":"https://github.com/compute-finance/mcp#readme","bugs":{"url":"https://github.com/compute-finance/mcp/issues"},"bin":{"compute-finance":"dist/index.js"},"dist":{"shasum":"d99a416ee0b462684feade360911c8dc7fc01395","tarball":"https://registry.npmjs.org/@compute-finance/mcp/-/mcp-0.2.0.tgz","fileCount":90,"integrity":"sha512-G9Fk+m7hkX6arTtpUtG/Lzv5ILiMC+ZAXxNENIlZJEKxfuydv9TRsRDfVoFy6cbKd6I/ZCJbb4TSYeFa+vaCzQ==","signatures":[{"sig":"MEUCIAzWCwb82ofev9elI1KR9WPsbRComFSxyvoY8xlBFY4rAiEAuMeXe+1OJ0YDv03Vlpskbjoc+LXaJz2TXy9GB1DQhHk=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"attestations":{"url":"https://registry.npmjs.org/-/npm/v1/attestations/@compute-finance%2fmcp@0.2.0","provenance":{"predicateType":"https://slsa.dev/provenance/v1"}},"unpackedSize":273935},"type":"module","engines":{"node":">=20"},"gitHead":"9369c790ce4481234cb620da33e59fdf18aa9cfb","mcpName":"io.github.compute-finance/mcp","scripts":{"dev":"tsx src/index.ts","test":"tsx --test src/oracle/openapi-schema.test.ts src/oracle/field-map.test.ts src/oracle/client.test.ts","build":"npm run clean && tsc -p tsconfig.build.json","clean":"node -e \"const fs=require('fs');try{fs.rmSync('dist',{recursive:true,force:true})}catch{};const g=require('path').resolve('tsconfig.build.tsbuildinfo');try{fs.unlinkSync(g)}catch{}\"","start":"node dist/index.js","prepublishOnly":"npm run build"},"_npmUser":{"name":"e2xlabs","email":"tech@e2xlabs.com"},"repository":{"url":"git+https://github.com/compute-finance/mcp.git","type":"git"},"_npmVersion":"10.8.2","description":"Live AI compute pricing oracle MCP server — real-time LLM model prices across providers. Includes Claude Code skills for session cost analysis.","directories":{},"_nodeVersion":"20.20.2","dependencies":{"@modelcontextprotocol/sdk":"^1.0.4"},"_hasShrinkwrap":false,"devDependencies":{"tsx":"^4.19.0","typescript":"^5.7.0","@types/node":"^22.10.0"},"_npmOperationalInternal":{"tmp":"tmp/mcp_0.2.0_1779706499769_0.22307358407776867","host":"s3://npm-registry-packages-npm-production"}},"0.3.0":{"name":"@compute-finance/mcp","version":"0.3.0","keywords":["mcp","mcp-server","model-context-protocol","llm","pricing","oracle","compute-finance","ai","claude-code","claude-code-skills","ai-compute","token-pricing"],"author":{"name":"Compute Finance"},"license":"MIT","_id":"@compute-finance/mcp@0.3.0","maintainers":[{"name":"e2xlabs","email":"tech@e2xlabs.com"}],"homepage":"https://github.com/compute-finance/mcp#readme","bugs":{"url":"https://github.com/compute-finance/mcp/issues"},"bin":{"compute-finance":"dist/index.js"},"dist":{"shasum":"d7ca689f471a9c0f133dfcf1b54e3b1fc976a5d9","tarball":"https://registry.npmjs.org/@compute-finance/mcp/-/mcp-0.3.0.tgz","fileCount":94,"integrity":"sha512-euURVHQOpOlcXadfjYK6DNjqTl5Ge9WINqsDfHFqxypnS85a2gkXjd7fu4AjSKwIT0PAf7mHPT8YLHTIGHM7iA==","signatures":[{"sig":"MEUCIFHaUIBwXdFu2Qu9flqsrj7OFh0DoTq6xzSIiF4RTeMiAiEAjzgJgmiSeSB9ar3wvzMFUGV5XfnpqtSBut0ifFNQMro=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"attestations":{"url":"https://registry.npmjs.org/-/npm/v1/attestations/@compute-finance%2fmcp@0.3.0","provenance":{"predicateType":"https://slsa.dev/provenance/v1"}},"unpackedSize":279381},"type":"module","engines":{"node":">=20"},"gitHead":"c4129b248da3a741c010c57845f18968327df9d0","mcpName":"io.github.compute-finance/mcp","scripts":{"dev":"tsx src/index.ts","test":"tsx --test src","build":"npm run clean && tsc -p tsconfig.build.json","clean":"node -e \"const fs=require('fs');try{fs.rmSync('dist',{recursive:true,force:true})}catch{};const g=require('path').resolve('tsconfig.build.tsbuildinfo');try{fs.unlinkSync(g)}catch{}\"","start":"node dist/index.js","prepublishOnly":"npm run build"},"_npmUser":{"name":"e2xlabs","email":"tech@e2xlabs.com"},"repository":{"url":"git+https://github.com/compute-finance/mcp.git","type":"git"},"_npmVersion":"10.8.2","description":"Live AI compute pricing oracle MCP server — real-time LLM model prices across providers. Includes Claude Code skills for session cost analysis.","directories":{},"_nodeVersion":"20.20.2","dependencies":{"@modelcontextprotocol/sdk":"^1.0.4"},"_hasShrinkwrap":false,"devDependencies":{"tsx":"^4.19.0","typescript":"^5.7.0","@types/node":"^22.10.0"},"_npmOperationalInternal":{"tmp":"tmp/mcp_0.3.0_1780314418602_0.2751818555404204","host":"s3://npm-registry-packages-npm-production"}},"0.4.0":{"name":"@compute-finance/mcp","version":"0.4.0","keywords":["mcp","mcp-server","model-context-protocol","llm","pricing","oracle","compute-finance","ai","claude-code","claude-code-skills","ai-compute","token-pricing"],"author":{"name":"Compute Finance"},"license":"MIT","_id":"@compute-finance/mcp@0.4.0","maintainers":[{"name":"e2xlabs","email":"tech@e2xlabs.com"}],"homepage":"https://github.com/compute-finance/mcp#readme","bugs":{"url":"https://github.com/compute-finance/mcp/issues"},"bin":{"compute-finance":"dist/index.js"},"dist":{"shasum":"84b1530cd81d39f6ba1a66328dab259376a63860","tarball":"https://registry.npmjs.org/@compute-finance/mcp/-/mcp-0.4.0.tgz","fileCount":94,"integrity":"sha512-2NLHAioyV/9ZR3ZOgKC5jNrZat6waRRnLlkY+8flH5UWtc73acafweOpD4ED+uoMSq1feLs4ieQYSYNyhSvbVA==","signatures":[{"sig":"MEUCIHfWLkllDJhj7wyxmxajepOmCgMgAA7jH6zd505UoFfxAiEAq1Dq/4fbB5n2E2LGs2prsyEeTGNbuj7t6rezU275NzY=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"attestations":{"url":"https://registry.npmjs.org/-/npm/v1/attestations/@compute-finance%2fmcp@0.4.0","provenance":{"predicateType":"https://slsa.dev/provenance/v1"}},"unpackedSize":308118},"type":"module","engines":{"node":">=20"},"gitHead":"5510bcc9c2616f3caa7224d1e3f0772fbc71e718","mcpName":"io.github.compute-finance/mcp","scripts":{"dev":"tsx src/index.ts","test":"tsx --test src","build":"npm run clean && tsc -p tsconfig.build.json","clean":"node -e \"const fs=require('fs');try{fs.rmSync('dist',{recursive:true,force:true})}catch{};const g=require('path').resolve('tsconfig.build.tsbuildinfo');try{fs.unlinkSync(g)}catch{}\"","start":"node dist/index.js","prepublishOnly":"npm run build"},"_npmUser":{"name":"e2xlabs","email":"tech@e2xlabs.com"},"repository":{"url":"git+https://github.com/compute-finance/mcp.git","type":"git"},"_npmVersion":"10.8.2","description":"Live AI compute pricing oracle MCP server — real-time LLM model prices across providers. Includes Claude Code skills for session cost analysis.","directories":{},"_nodeVersion":"20.20.2","dependencies":{"@modelcontextprotocol/sdk":"^1.0.4"},"_hasShrinkwrap":false,"devDependencies":{"tsx":"^4.19.0","typescript":"^5.7.0","@types/node":"^22.10.0"},"_npmOperationalInternal":{"tmp":"tmp/mcp_0.4.0_1781708003926_0.19312991304077776","host":"s3://npm-registry-packages-npm-production"}},"0.5.0":{"name":"@compute-finance/mcp","version":"0.5.0","keywords":["mcp","mcp-server","model-context-protocol","llm","pricing","oracle","compute-finance","ai","claude-code","claude-code-skills","ai-compute","token-pricing"],"author":{"name":"Compute Finance"},"license":"MIT","_id":"@compute-finance/mcp@0.5.0","maintainers":[{"name":"e2xlabs","email":"tech@e2xlabs.com"}],"homepage":"https://github.com/compute-finance/mcp#readme","bugs":{"url":"https://github.com/compute-finance/mcp/issues"},"bin":{"compute-finance":"dist/index.js"},"dist":{"shasum":"3fa903eda06b81ad08264f34e4df543d04f63f15","tarball":"https://registry.npmjs.org/@compute-finance/mcp/-/mcp-0.5.0.tgz","fileCount":118,"integrity":"sha512-NGQg9JvF3ya5o4ENDSv85Jp006TZYPm08wMAw8eQvsM08uHQ9/pI37KR21kv/KFgYZrKJJNvvwQrOB87A+lQZg==","signatures":[{"sig":"MEYCIQDhwzb+IHvexTqzKhFu1we5yB/+35qV+KCCBqguR7mb7wIhAO7SSN7dCiFKucGsUrYyaMN+wfvfTXDh3RKSulNa0WFo","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"attestations":{"url":"https://registry.npmjs.org/-/npm/v1/attestations/@compute-finance%2fmcp@0.5.0","provenance":{"predicateType":"https://slsa.dev/provenance/v1"}},"unpackedSize":349658},"type":"module","engines":{"node":">=20"},"gitHead":"bd2d07db15e7594018b53ab90974e5a542d2c55e","mcpName":"io.github.compute-finance/mcp","scripts":{"dev":"tsx src/index.ts","test":"tsx --test \"src/**/*.test.ts\"","build":"npm run clean && tsc -p tsconfig.build.json","clean":"node -e \"const fs=require('fs');try{fs.rmSync('dist',{recursive:true,force:true})}catch{};const g=require('path').resolve('tsconfig.build.tsbuildinfo');try{fs.unlinkSync(g)}catch{}\"","start":"node dist/index.js","prepublishOnly":"npm run build"},"_npmUser":{"name":"e2xlabs","email":"tech@e2xlabs.com"},"repository":{"url":"git+https://github.com/compute-finance/mcp.git","type":"git"},"_npmVersion":"10.8.2","description":"Live AI compute pricing oracle MCP server — real-time LLM model prices across providers. Includes Claude Code skills for session cost analysis.","directories":{},"_nodeVersion":"20.20.2","dependencies":{"@modelcontextprotocol/sdk":"^1.0.4"},"_hasShrinkwrap":false,"devDependencies":{"tsx":"^4.19.0","typescript":"^5.7.0","@types/node":"^22.10.0"},"_npmOperationalInternal":{"tmp":"tmp/mcp_0.5.0_1782474072833_0.9386703904938047","host":"s3://npm-registry-packages-npm-production"}},"0.6.0":{"name":"@compute-finance/mcp","version":"0.6.0","keywords":["mcp","mcp-server","model-context-protocol","llm","pricing","oracle","compute-finance","ai","claude-code","claude-code-skills","ai-compute","token-pricing"],"author":{"name":"Compute Finance"},"license":"MIT","_id":"@compute-finance/mcp@0.6.0","maintainers":[{"name":"e2xlabs","email":"tech@e2xlabs.com"}],"homepage":"https://github.com/compute-finance/mcp#readme","bugs":{"url":"https://github.com/compute-finance/mcp/issues"},"bin":{"compute-finance":"dist/index.js"},"dist":{"shasum":"4d510c20cda07222868b35654ef3521dfbc6c762","tarball":"https://registry.npmjs.org/@compute-finance/mcp/-/mcp-0.6.0.tgz","fileCount":118,"integrity":"sha512-OwJcFHfvOglQ33OfsHyPHqWVdJFRnJnlDuHdCs52fEF5fR91gSuJnAnYmiIV7XGzqkaF5VUBSoZogqQTPTHqlQ==","signatures":[{"sig":"MEYCIQC3eU/LPrKi6+5SZhpQrHJ3D5IZKzQ0KHrchnJHFcaRtwIhAOM6/u+RnUN2HgiUupSM8YEfQ7DPQEPASytjvroRqGzM","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"attestations":{"url":"https://registry.npmjs.org/-/npm/v1/attestations/@compute-finance%2fmcp@0.6.0","provenance":{"predicateType":"https://slsa.dev/provenance/v1"}},"unpackedSize":349020},"type":"module","engines":{"node":">=20"},"gitHead":"da15ae402fd5c4ebb791309b1a51fd419b27848d","mcpName":"io.github.compute-finance/mcp","scripts":{"dev":"tsx src/index.ts","test":"tsx --test \"src/**/*.test.ts\"","build":"npm run clean && tsc -p tsconfig.build.json","clean":"node -e \"const fs=require('fs');try{fs.rmSync('dist',{recursive:true,force:true})}catch{};const g=require('path').resolve('tsconfig.build.tsbuildinfo');try{fs.unlinkSync(g)}catch{}\"","start":"node dist/index.js","prepublishOnly":"npm run build"},"_npmUser":{"name":"e2xlabs","email":"tech@e2xlabs.com"},"repository":{"url":"git+https://github.com/compute-finance/mcp.git","type":"git"},"_npmVersion":"10.8.2","description":"Live AI compute pricing oracle MCP server — real-time LLM model prices across providers. Includes Claude Code skills for session cost analysis.","directories":{},"_nodeVersion":"20.20.2","dependencies":{"@modelcontextprotocol/sdk":"^1.0.4"},"_hasShrinkwrap":false,"devDependencies":{"tsx":"^4.19.0","typescript":"^5.7.0","@types/node":"^22.10.0"},"_npmOperationalInternal":{"tmp":"tmp/mcp_0.6.0_1783003985416_0.384303650683407","host":"s3://npm-registry-packages-npm-production"}},"0.6.1":{"name":"@compute-finance/mcp","version":"0.6.1","keywords":["mcp","mcp-server","model-context-protocol","llm","pricing","oracle","compute-finance","ai","claude-code","claude-code-skills","ai-compute","token-pricing"],"author":{"name":"Compute Finance"},"license":"MIT","_id":"@compute-finance/mcp@0.6.1","maintainers":[{"name":"e2xlabs","email":"tech@e2xlabs.com"}],"homepage":"https://github.com/compute-finance/mcp#readme","bugs":{"url":"https://github.com/compute-finance/mcp/issues"},"bin":{"compute-finance":"dist/index.js"},"dist":{"shasum":"b2f73becb9aeffc400bcdc5b597f34fab2ce0c37","tarball":"https://registry.npmjs.org/@compute-finance/mcp/-/mcp-0.6.1.tgz","fileCount":118,"integrity":"sha512-yyaBt2wXRBUSf/UPKIQaUQ4gw30D2o/TOk0V6H14vgaav33oFJcd+TmS+CuG5nqGfBShYNZKSMgYu7q1zJesRQ==","signatures":[{"sig":"MEYCIQDII3CWqiLBC5hcdFDSsPRrqBtb73j54VqAVExcJQJZ+QIhAPs0lTldkAckRxsIwfM6qRDVLOr/DIhHAYXGHQN81l/U","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"attestations":{"url":"https://registry.npmjs.org/-/npm/v1/attestations/@compute-finance%2fmcp@0.6.1","provenance":{"predicateType":"https://slsa.dev/provenance/v1"}},"unpackedSize":349384},"type":"module","engines":{"node":">=20"},"gitHead":"3ce107659c7ae8ab612385588eb3e7f3674a0881","mcpName":"io.github.compute-finance/mcp","scripts":{"dev":"tsx src/index.ts","test":"npm run test:unit && npm run test:smoke","build":"npm run clean && tsc -p tsconfig.build.json","clean":"node -e \"const fs=require('fs');try{fs.rmSync('dist',{recursive:true,force:true})}catch{};const g=require('path').resolve('tsconfig.build.tsbuildinfo');try{fs.unlinkSync(g)}catch{}\"","start":"node dist/index.js","test:unit":"tsx --test \"src/hooks/**/*.test.ts\" \"src/oracle/**/*.test.ts\" \"src/render/**/*.test.ts\" \"src/storage/**/*.test.ts\" \"src/tools/**/*.test.ts\"","test:smoke":"tsx --test \"src/smoke.test.ts\"","prepublishOnly":"npm run build"},"_npmUser":{"name":"e2xlabs","email":"tech@e2xlabs.com"},"repository":{"url":"git+https://github.com/compute-finance/mcp.git","type":"git"},"_npmVersion":"10.8.2","description":"Live AI compute pricing oracle MCP server — real-time LLM model prices across providers. Includes Claude Code skills for session cost analysis.","directories":{},"_nodeVersion":"20.20.2","dependencies":{"@modelcontextprotocol/sdk":"^1.0.4"},"_hasShrinkwrap":false,"devDependencies":{"tsx":"^4.19.0","typescript":"^5.7.0","@types/node":"^22.10.0"},"_npmOperationalInternal":{"tmp":"tmp/mcp_0.6.1_1783336024368_0.1909418048436966","host":"s3://npm-registry-packages-npm-production"}},"0.6.2":{"name":"@compute-finance/mcp","version":"0.6.2","keywords":["mcp","mcp-server","model-context-protocol","llm","pricing","oracle","compute-finance","ai","claude-code","claude-code-skills","ai-compute","token-pricing"],"author":{"name":"Compute Finance"},"license":"MIT","_id":"@compute-finance/mcp@0.6.2","maintainers":[{"name":"e2xlabs","email":"tech@e2xlabs.com"}],"homepage":"https://github.com/compute-finance/mcp#readme","bugs":{"url":"https://github.com/compute-finance/mcp/issues"},"bin":{"compute-finance":"dist/index.js"},"dist":{"shasum":"3534f4a0cee94520b09fc885e94edc610c694604","tarball":"https://registry.npmjs.org/@compute-finance/mcp/-/mcp-0.6.2.tgz","fileCount":118,"integrity":"sha512-+6nFRh1E7TFRqCoHPuc8AbtQwvnxlijX0e3ajtJSewPZ7LWqixyfapFVgLabW+qHLAE7OwRsNEaE5GlC0qfpHg==","signatures":[{"sig":"MEUCICwYWvZIs1TeXimvnfcj41V4w7G/kd6sdydTpiKF0E9/AiEAuf+/qjR0g3eac9849Z87+yZeFF8qoRuDJhKIE9gAmP0=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"attestations":{"url":"https://registry.npmjs.org/-/npm/v1/attestations/@compute-finance%2fmcp@0.6.2","provenance":{"predicateType":"https://slsa.dev/provenance/v1"}},"unpackedSize":349384},"type":"module","engines":{"node":">=20"},"gitHead":"7b6a3c1a2604aa1c51e5ab29f418fa2b31ecadfa","mcpName":"io.github.compute-finance/mcp","scripts":{"dev":"tsx src/index.ts","test":"npm run test:unit && npm run test:smoke","build":"npm run clean && tsc -p tsconfig.build.json","clean":"node -e \"const fs=require('fs');try{fs.rmSync('dist',{recursive:true,force:true})}catch{};const g=require('path').resolve('tsconfig.build.tsbuildinfo');try{fs.unlinkSync(g)}catch{}\"","start":"node dist/index.js","test:unit":"tsx --test \"src/hooks/**/*.test.ts\" \"src/oracle/**/*.test.ts\" \"src/render/**/*.test.ts\" \"src/storage/**/*.test.ts\" \"src/tools/**/*.test.ts\"","test:smoke":"tsx --test \"src/smoke.test.ts\"","prepublishOnly":"npm run build"},"_npmUser":{"name":"e2xlabs","email":"tech@e2xlabs.com"},"repository":{"url":"git+https://github.com/compute-finance/mcp.git","type":"git"},"_npmVersion":"10.8.2","description":"Live AI compute pricing oracle MCP server — real-time LLM model prices across providers. Includes Claude Code skills for session cost analysis.","directories":{},"_nodeVersion":"20.20.2","dependencies":{"@modelcontextprotocol/sdk":"^1.0.4"},"_hasShrinkwrap":false,"devDependencies":{"tsx":"^4.19.0","typescript":"^5.7.0","@types/node":"^22.10.0"},"_npmOperationalInternal":{"tmp":"tmp/mcp_0.6.2_1783503913850_0.08732604008900946","host":"s3://npm-registry-packages-npm-production"}},"0.7.0":{"name":"@compute-finance/mcp","version":"0.7.0","keywords":["mcp","mcp-server","model-context-protocol","llm","pricing","oracle","compute-finance","ai","claude-code","claude-code-skills","ai-compute","token-pricing"],"author":{"name":"Compute Finance"},"license":"MIT","_id":"@compute-finance/mcp@0.7.0","maintainers":[{"name":"e2xlabs","email":"tech@e2xlabs.com"}],"homepage":"https://github.com/compute-finance/mcp#readme","bugs":{"url":"https://github.com/compute-finance/mcp/issues"},"bin":{"compute-finance":"dist/index.js"},"dist":{"shasum":"6dfc54ffd6eb0f71d01692f378f011117937a45d","tarball":"https://registry.npmjs.org/@compute-finance/mcp/-/mcp-0.7.0.tgz","fileCount":118,"integrity":"sha512-9QOCJgaND++2vhQOz3Ikxao5ETbId+Oktmhd58ygtiotosAmnGgrIprDLqR9daAHFP4tAIqAySKSlNuveAmubw==","signatures":[{"sig":"MEQCIAMuQi8JXX2Nt7yJfZ3/lIWRHu2Xndcs0lXYYYASg/aQAiAV+8hcOKMPEFtOhIyButrEEN7roiLOEIR1GBl8JTt4dg==","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"attestations":{"url":"https://registry.npmjs.org/-/npm/v1/attestations/@compute-finance%2fmcp@0.7.0","provenance":{"predicateType":"https://slsa.dev/provenance/v1"}},"unpackedSize":352113},"type":"module","engines":{"node":">=20"},"gitHead":"90a55fac80ddd0f9ca3656718204c7f7c1deecb0","mcpName":"io.github.compute-finance/mcp","scripts":{"dev":"tsx src/index.ts","test":"npm run test:unit && npm run test:smoke","build":"npm run clean && tsc -p tsconfig.build.json","clean":"node -e \"const fs=require('fs');try{fs.rmSync('dist',{recursive:true,force:true})}catch{};const g=require('path').resolve('tsconfig.build.tsbuildinfo');try{fs.unlinkSync(g)}catch{}\"","start":"node dist/index.js","test:unit":"tsx --test \"src/hooks/**/*.test.ts\" \"src/oracle/**/*.test.ts\" \"src/render/**/*.test.ts\" \"src/storage/**/*.test.ts\" \"src/tools/**/*.test.ts\"","test:smoke":"tsx --test \"src/smoke.test.ts\"","prepublishOnly":"npm run build"},"_npmUser":{"name":"e2xlabs","email":"tech@e2xlabs.com"},"repository":{"url":"git+https://github.com/compute-finance/mcp.git","type":"git"},"_npmVersion":"10.8.2","description":"Live AI compute pricing oracle MCP server — real-time LLM model prices across providers. Includes Claude Code skills for session cost analysis.","directories":{},"_nodeVersion":"20.20.2","dependencies":{"@modelcontextprotocol/sdk":"^1.0.4"},"_hasShrinkwrap":false,"devDependencies":{"tsx":"^4.19.0","typescript":"^5.7.0","@types/node":"^22.10.0"},"_npmOperationalInternal":{"tmp":"tmp/mcp_0.7.0_1784550514315_0.48005116174812756","host":"s3://npm-registry-packages-npm-production"}},"0.8.0":{"name":"@compute-finance/mcp","version":"0.8.0","keywords":["mcp","mcp-server","model-context-protocol","llm","pricing","oracle","compute-finance","ai","claude-code","claude-code-skills","ai-compute","token-pricing"],"author":{"name":"Compute Finance"},"license":"MIT","_id":"@compute-finance/mcp@0.8.0","maintainers":[{"name":"e2xlabs","email":"tech@e2xlabs.com"}],"homepage":"https://github.com/compute-finance/mcp#readme","bugs":{"url":"https://github.com/compute-finance/mcp/issues"},"bin":{"compute-finance":"dist/index.js"},"dist":{"shasum":"cc8848e51bde8c0470fdd3dca03826289cbaec51","tarball":"https://registry.npmjs.org/@compute-finance/mcp/-/mcp-0.8.0.tgz","fileCount":146,"integrity":"sha512-LVx58tr2fp1MLrqUAel+gdbFI+lWDbab7sOApQLZz+tZmnzW4x2t1td6PqPnUe2HqJy3VVcRrQwtVnR55rVjHA==","signatures":[{"sig":"MEYCIQCC1myIJ6pMsb3Rbx7MEXwtd7xMWVYA6bVyXf3XYbkgbwIhAOD69rbL3UCZCkpWBR4oeuBNSi8KsS88n9WtRU/g/XfM","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"attestations":{"url":"https://registry.npmjs.org/-/npm/v1/attestations/@compute-finance%2fmcp@0.8.0","provenance":{"predicateType":"https://slsa.dev/provenance/v1"}},"unpackedSize":365812},"type":"module","engines":{"node":">=20"},"gitHead":"82bdcd97d0c0ae267714339d0f12b4a202ecb567","mcpName":"io.github.compute-finance/mcp","scripts":{"dev":"tsx src/index.ts","test":"npm run test:unit && npm run test:smoke","build":"npm run clean && tsc -p tsconfig.build.json","clean":"node -e \"const fs=require('fs');try{fs.rmSync('dist',{recursive:true,force:true})}catch{};const g=require('path').resolve('tsconfig.build.tsbuildinfo');try{fs.unlinkSync(g)}catch{}\"","start":"node dist/index.js","test:unit":"tsx --test \"src/hooks/**/*.test.ts\" \"src/oracle/**/*.test.ts\" \"src/render/**/*.test.ts\" \"src/storage/**/*.test.ts\" \"src/tools/**/*.test.ts\"","test:smoke":"tsx --test \"src/smoke.test.ts\"","prepublishOnly":"npm run build"},"_npmUser":{"name":"e2xlabs","email":"tech@e2xlabs.com"},"repository":{"url":"git+https://github.com/compute-finance/mcp.git","type":"git"},"_npmVersion":"10.8.2","description":"Live AI compute pricing oracle MCP server — real-time LLM model prices across providers. Includes Claude Code skills for session cost analysis.","directories":{},"_nodeVersion":"20.20.2","dependencies":{"@modelcontextprotocol/sdk":"^1.0.4"},"_hasShrinkwrap":false,"devDependencies":{"tsx":"^4.19.0","typescript":"^5.7.0","@types/node":"^22.10.0"},"_npmOperationalInternal":{"tmp":"tmp/mcp_0.8.0_1785769063963_0.7878374846808438","host":"s3://npm-registry-packages-npm-production"}},"0.8.1":{"name":"@compute-finance/mcp","version":"0.8.1","keywords":["mcp","mcp-server","model-context-protocol","llm","pricing","oracle","compute-finance","ai","claude-code","claude-code-skills","ai-compute","token-pricing"],"author":{"name":"Compute Finance"},"license":"MIT","_id":"@compute-finance/mcp@0.8.1","maintainers":[{"name":"e2xlabs","email":"tech@e2xlabs.com"}],"homepage":"https://github.com/compute-finance/mcp#readme","bugs":{"url":"https://github.com/compute-finance/mcp/issues"},"bin":{"compute-finance":"dist/index.js"},"dist":{"shasum":"229244ae7598bbae4a3ecea963eee2c3a86d0cf5","tarball":"https://registry.npmjs.org/@compute-finance/mcp/-/mcp-0.8.1.tgz","fileCount":146,"integrity":"sha512-cmUpgqALVOorqFu2KkkcoV5Ak4/lyUIaTU6kG5ZvyTVyAmCF5niSd/Iewcd9rIww98QLF8fG1VcjUY3pMv5jug==","signatures":[{"sig":"MEUCIQDnqxyLBClEQo0snoumFx0ezHiH+6qXMXXRzk2aGLyJJQIgAMZgVHq0yOlxIkdlqQUvfLF7tkkUH01+Jo7NE5otp4k=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"attestations":{"url":"https://registry.npmjs.org/-/npm/v1/attestations/@compute-finance%2fmcp@0.8.1","provenance":{"predicateType":"https://slsa.dev/provenance/v1"}},"unpackedSize":365812},"type":"module","engines":{"node":">=20"},"gitHead":"48153e5a328f5f00a245e092bd2911b2bd60822a","mcpName":"io.github.compute-finance/mcp","scripts":{"dev":"tsx src/index.ts","test":"npm run test:unit && npm run test:smoke","build":"npm run clean && tsc -p tsconfig.build.json","clean":"node -e \"const fs=require('fs');try{fs.rmSync('dist',{recursive:true,force:true})}catch{};const g=require('path').resolve('tsconfig.build.tsbuildinfo');try{fs.unlinkSync(g)}catch{}\"","start":"node dist/index.js","test:unit":"tsx --test \"src/hooks/**/*.test.ts\" \"src/oracle/**/*.test.ts\" \"src/render/**/*.test.ts\" \"src/storage/**/*.test.ts\" \"src/tools/**/*.test.ts\"","test:smoke":"tsx --test \"src/smoke.test.ts\"","prepublishOnly":"npm run build"},"_npmUser":{"name":"e2xlabs","email":"tech@e2xlabs.com"},"repository":{"url":"git+https://github.com/compute-finance/mcp.git","type":"git"},"_npmVersion":"10.8.2","description":"Live AI compute pricing oracle MCP server — real-time LLM model prices across providers. Includes Claude Code skills for session cost analysis.","directories":{},"_nodeVersion":"20.20.2","dependencies":{"@modelcontextprotocol/sdk":"^1.0.4"},"_hasShrinkwrap":false,"devDependencies":{"tsx":"^4.19.0","typescript":"^5.7.0","@types/node":"^22.10.0"},"_npmOperationalInternal":{"tmp":"tmp/mcp_0.8.1_1786112129217_0.8615391151165144","host":"s3://npm-registry-packages-npm-production"}},"0.10.0":{"name":"@compute-finance/mcp","version":"0.10.0","keywords":["mcp","mcp-server","model-context-protocol","llm","pricing","oracle","compute-finance","ai","claude-code","claude-code-skills","ai-compute","token-pricing"],"author":{"name":"Compute Finance"},"license":"MIT","_id":"@compute-finance/mcp@0.10.0","maintainers":[{"name":"e2xlabs","email":"tech@e2xlabs.com"}],"homepage":"https://github.com/compute-finance/mcp#readme","bugs":{"url":"https://github.com/compute-finance/mcp/issues"},"bin":{"compute-finance":"dist/index.js"},"dist":{"shasum":"6436dde832aa50be54f5dd58463f972a23002275","tarball":"https://registry.npmjs.org/@compute-finance/mcp/-/mcp-0.10.0.tgz","fileCount":150,"integrity":"sha512-eMZfaE8a1dxiOCVAZ21Wuf1vgrIEnr3F8RbtPnMoWl8IHFGGLEz4M1NQ0EqzrEaVQNnHSlPxLVPn2oxiqhRGFA==","signatures":[{"sig":"MEQCIHy7+MWiXG5lIdIhPQQvqR1QPFi7qy7WcYVmj01GEUzXAiAHFooUjGO671CJmuZ4j6bfH5Ygbu96kDXamdjZ10rldQ==","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"attestations":{"url":"https://registry.npmjs.org/-/npm/v1/attestations/@compute-finance%2fmcp@0.10.0","provenance":{"predicateType":"https://slsa.dev/provenance/v1"}},"unpackedSize":366568},"type":"module","engines":{"node":">=20"},"gitHead":"306a20bfc941eaf9ae25afd6d0976496dbcba3cd","mcpName":"io.github.compute-finance/mcp","scripts":{"dev":"tsx src/index.ts","test":"npm run test:unit && npm run test:smoke","build":"npm run clean && tsc -p tsconfig.build.json","clean":"node -e \"const fs=require('fs');try{fs.rmSync('dist',{recursive:true,force:true})}catch{};const g=require('path').resolve('tsconfig.build.tsbuildinfo');try{fs.unlinkSync(g)}catch{}\"","start":"node dist/index.js","test:unit":"tsx --test \"src/hooks/**/*.test.ts\" \"src/oracle/**/*.test.ts\" \"src/render/**/*.test.ts\" \"src/storage/**/*.test.ts\" \"src/tools/**/*.test.ts\"","test:smoke":"tsx --test \"src/smoke.test.ts\"","prepublishOnly":"npm run build"},"_npmUser":{"name":"e2xlabs","email":"tech@e2xlabs.com"},"repository":{"url":"git+https://github.com/compute-finance/mcp.git","type":"git"},"_npmVersion":"10.8.2","description":"Live AI compute pricing oracle MCP server — real-time LLM model prices across providers. Includes Claude Code skills for session cost analysis.","directories":{},"_nodeVersion":"20.20.2","dependencies":{"@modelcontextprotocol/sdk":"^1.0.4"},"_hasShrinkwrap":false,"devDependencies":{"tsx":"^4.19.0","typescript":"^5.7.0","@types/node":"^22.10.0"},"_npmOperationalInternal":{"tmp":"tmp/mcp_0.10.0_1789102101239_0.9506005375327147","host":"s3://npm-registry-packages-npm-production"}},"0.11.0":{"name":"@compute-finance/mcp","version":"0.11.0","keywords":["mcp","mcp-server","model-context-protocol","llm","pricing","oracle","compute-finance","ai","claude-code","claude-code-skills","ai-compute","token-pricing"],"author":{"name":"Compute Finance"},"license":"MIT","_id":"@compute-finance/mcp@0.11.0","maintainers":[{"name":"e2xlabs","email":"tech@e2xlabs.com"}],"homepage":"https://github.com/compute-finance/mcp#readme","bugs":{"url":"https://github.com/compute-finance/mcp/issues"},"bin":{"compute-finance":"dist/index.js"},"dist":{"shasum":"7758d3b96dce0c94879c248bb3e644bfc8b8c582","tarball":"https://registry.npmjs.org/@compute-finance/mcp/-/mcp-0.11.0.tgz","fileCount":150,"integrity":"sha512-Sq/Nx79YjOjIVeq6L9R9pNuH8nYVU2dSjCxOmZ6o3MocXkhwj6R2211AniaiZEdVcixuht+vxXOjocs5rIXklQ==","signatures":[{"sig":"MEUCIEWvKqVmRkspkOZo6+BbRPrahlqHv5IKsXWdIIIxXLanAiEAsmvXev7BXbq3Pn3hMozqBYo8dTYUFPctHBkZtZRjrAI=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"},{"sig":"MEUCIQCdeMgM9654yt36rRl3qffphMIkl1r8762diy/K+aGyegIgG0ms1oFxX9kvPz0rca9PO+OEd49F/l99En7cl1kpw0g=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"attestations":{"url":"https://registry.npmjs.org/-/npm/v1/attestations/@compute-finance%2fmcp@0.11.0","provenance":{"predicateType":"https://slsa.dev/provenance/v1"}},"unpackedSize":370679},"type":"module","engines":{"node":">=20"},"gitHead":"38a169ca810271cf4f3a83d409aea891682c11de","mcpName":"io.github.compute-finance/mcp","scripts":{"dev":"tsx src/index.ts","test":"npm run test:unit && npm run test:smoke","build":"npm run clean && tsc -p tsconfig.build.json","clean":"node -e \"const fs=require('fs');try{fs.rmSync('dist',{recursive:true,force:true})}catch{};const g=require('path').resolve('tsconfig.build.tsbuildinfo');try{fs.unlinkSync(g)}catch{}\"","start":"node dist/index.js","test:unit":"tsx --test \"src/hooks/**/*.test.ts\" \"src/oracle/**/*.test.ts\" \"src/render/**/*.test.ts\" \"src/storage/**/*.test.ts\" \"src/tools/**/*.test.ts\"","test:smoke":"tsx --test \"src/smoke.test.ts\"","prepublishOnly":"npm run build"},"_npmUser":{"name":"e2xlabs","email":"tech@e2xlabs.com"},"repository":{"url":"git+https://github.com/compute-finance/mcp.git","type":"git"},"_npmVersion":"10.8.2","description":"Live AI compute pricing oracle MCP server — real-time LLM model prices across providers. Includes Claude Code skills for session cost analysis.","directories":{},"_nodeVersion":"20.20.2","dependencies":{"@modelcontextprotocol/sdk":"^1.0.4"},"_hasShrinkwrap":false,"devDependencies":{"tsx":"^4.19.0","typescript":"^5.7.0","@types/node":"^22.10.0"},"_npmOperationalInternal":{"tmp":"tmp/mcp_0.11.0_1789734221499_0.7083891187560145","host":"s3://npm-registry-packages-npm-production"}},"0.12.0":{"_id":"@compute-finance/mcp@0.12.0","bin":{"compute-finance":"dist/index.js"},"bugs":{"url":"https://github.com/compute-finance/mcp/issues"},"dist":{"shasum":"03f33d971ed4dc12abb71b1eda02ea0c8d198656","tarball":"https://registry.npmjs.org/@compute-finance/mcp/-/mcp-0.12.0.tgz","fileCount":175,"integrity":"sha512-dY9QvYxr1b61KUZdCOk7Q9S/d2Lo67ll5NW4Us98HUzqCeTQcyN16QjcV0YY+pdssXxYxMF+e2TUFW5fINC9Zg==","signatures":[{"sig":"MEQCIEwvUWCxNRRGfUDp+NA7foweOmmIzb4oKjYkCnBPVQjfAiAMV9L3MMS7hvoRMuwKCfwmgbIDUXJCgxuI8UxinrmHKg==","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"},{"keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U","sig":"MEQCIC+6fhs+udYsSiVHbibMU0zUlnlVzZJWRv/m3v0iIkNPAiAKMLqI7RWmyLlgGEDrsKZvQVBnwH/0avZ7UJ0LSN6RAQ=="}],"attestations":{"url":"https://registry.npmjs.org/-/npm/v1/attestations/@compute-finance%2fmcp@0.12.0","provenance":{"predicateType":"https://slsa.dev/provenance/v1"}},"unpackedSize":428716},"name":"@compute-finance/mcp","type":"module","author":{"name":"Compute Finance"},"engines":{"node":">=20"},"gitHead":"fa478ffdff64cb20bc7414fde4005ea9a66e5004","license":"MIT","mcpName":"io.github.compute-finance/mcp","scripts":{"dev":"tsx src/index.ts","test":"npm run test:unit && npm run test:smoke","build":"npm run clean && tsc -p tsconfig.build.json","clean":"node -e \"const fs=require('fs');try{fs.rmSync('dist',{recursive:true,force:true})}catch{};const g=require('path').resolve('tsconfig.build.tsbuildinfo');try{fs.unlinkSync(g)}catch{}\"","start":"node dist/index.js","test:unit":"tsx --test \"src/account/**/*.test.ts\" \"src/hooks/**/*.test.ts\" \"src/oracle/**/*.test.ts\" \"src/render/**/*.test.ts\" \"src/storage/**/*.test.ts\" \"src/tools/**/*.test.ts\"","test:smoke":"tsx --test \"src/smoke.test.ts\"","prepublishOnly":"npm run build"},"version":"0.12.0","_npmUser":{"name":"e2xlabs","email":"tech@e2xlabs.com"},"homepage":"https://github.com/compute-finance/mcp#readme","keywords":["mcp","mcp-server","model-context-protocol","llm","pricing","oracle","compute-finance","ai","claude-code","claude-code-skills","ai-compute","token-pricing"],"repository":{"url":"git+https://github.com/compute-finance/mcp.git","type":"git"},"_npmVersion":"10.8.2","description":"Live AI compute pricing oracle MCP server — real-time LLM model prices across providers. Includes Claude Code skills for session cost analysis.","directories":{},"maintainers":[{"name":"e2xlabs","email":"tech@e2xlabs.com"}],"_nodeVersion":"20.20.2","dependencies":{"@modelcontextprotocol/sdk":"^1.0.4"},"_hasShrinkwrap":false,"devDependencies":{"tsx":"^4.19.0","typescript":"^5.7.0","@types/node":"^22.10.0"},"_npmOperationalInternal":{"host":"s3://npm-registry-packages-npm-production","tmp":"tmp/mcp_0.12.0_1790050164680_0.4469111940806041"}}},"time":{"created":"2026-05-21T14:31:28.443Z","modified":"2026-09-22T04:09:25.112Z","0.1.0":"2026-05-21T14:31:28.863Z","0.2.0":"2026-05-25T10:54:59.914Z","0.3.0":"2026-06-01T11:46:58.807Z","0.4.0":"2026-06-17T14:53:24.068Z","0.5.0":"2026-06-26T11:41:12.996Z","0.6.0":"2026-07-02T14:53:05.542Z","0.6.1":"2026-07-06T11:07:04.531Z","0.6.2":"2026-07-08T09:45:14.001Z","0.7.0":"2026-07-20T12:28:34.462Z","0.8.0":"2026-08-03T14:57:44.095Z","0.8.1":"2026-08-07T14:15:29.353Z","0.10.0":"2026-09-11T04:48:21.379Z","0.11.0":"2026-09-18T12:23:41.580Z","0.12.0":"2026-09-22T04:09:24.790Z"},"bugs":{"url":"https://github.com/compute-finance/mcp/issues"},"author":{"name":"Compute Finance"},"license":"MIT","homepage":"https://github.com/compute-finance/mcp#readme","keywords":["mcp","mcp-server","model-context-protocol","llm","pricing","oracle","compute-finance","ai","claude-code","claude-code-skills","ai-compute","token-pricing"],"repository":{"url":"git+https://github.com/compute-finance/mcp.git","type":"git"},"description":"Live AI compute pricing oracle MCP server — real-time LLM model prices across providers. Includes Claude Code skills for session cost analysis.","maintainers":[{"name":"e2xlabs","email":"tech@e2xlabs.com"}],"readme":"# @compute-finance/mcp\n\n[![npm version](https://img.shields.io/npm/v/@compute-finance/mcp.svg)](https://www.npmjs.com/package/@compute-finance/mcp)\n[![npm downloads](https://img.shields.io/npm/dm/@compute-finance/mcp.svg)](https://www.npmjs.com/package/@compute-finance/mcp)\n[![license](https://img.shields.io/npm/l/@compute-finance/mcp.svg)](https://github.com/compute-finance/mcp/blob/main/LICENSE)\n\nLive AI compute pricing oracle — real-time LLM model prices across nine vendors (Anthropic, OpenAI, Google, DeepSeek, xAI and four more) via the [Compute Finance Oracle](https://compute.finance).\n\nA stdio [MCP](https://modelcontextprotocol.io) server. Works in any MCP client. Includes optional Claude Code skills for session cost analysis.\n\n## Quick start\n\n### Claude Code (recommended)\n\n```bash\nnpx @compute-finance/mcp setup\n```\n\nThis single command:\n1. Registers the MCP server at user scope (`claude mcp add`)\n2. Installs Claude Code skills (`/cf-session-management`, `/cf-session-consumption`, `/cf-active-sessions`, `/cf-account`)\n3. Installs the **cost hook** — a `UserPromptSubmit` hook that injects session cost into Claude's context so every response can show how much you've spent\n\nRestart Claude Code after setup.\n\nTo also answer for your own Compute Finance account, connect it once — see [Your account](#your-account).\n\nOr register manually without skills/hook:\n\n```bash\nclaude mcp add --scope user compute-finance -- npx @compute-finance/mcp\n```\n\n### Cursor / VS Code / Any MCP client\n\nAdd to your MCP config (`.cursor/mcp.json`, VS Code settings, etc.):\n\n```json\n{\n  \"mcpServers\": {\n    \"compute-finance\": {\n      \"command\": \"npx\",\n      \"args\": [\"@compute-finance/mcp\"]\n    }\n  }\n}\n```\n\n### From source\n\n```bash\ngit clone https://github.com/compute-finance/mcp.git\ncd mcp\nnpm install && npm run build\nnpx . setup\n```\n\n## Tools\n\n22 tools across five layers — no API key required. All tools are read-only.\n\nConnecting an account registers a sixth group, `account_*`, on top of these. Those tools are not listed below: the exchange publishes them, and this package copies none of them. See [Your account](#your-account).\n\n### Data (live oracle)\n\n| Tool | Description |\n|------|-------------|\n| `data_get_basket` | Every model in the current SCU index, with provider, family (e.g. `openai.gpt`, `anthropic.claude`), `base_*` and `billed_*` USD prices per million tokens, per-component cache pricing (read, write-5m, write-1h), a reasoning output price and the long-context price ladder |\n| `data_get_price` | Price for a single model (e.g. `anthropic/claude-opus-4.8`) — index members and catalog-only entries on identical terms, with the same per-component cache and reasoning prices and the long-context price ladder |\n| `data_get_scu` | Current Standard Compute Unit — value plus a methodology-versioned `breakdown` listing every family representative |\n| `data_get_breakdown` | Per-family blended-cost breakdown alone — methodology-versioned discriminated union with one entry per family representative |\n| `data_get_cpi` | Full Compute Price Index as last attested on-chain — `scuUsd`, `revisionVersion`, the raw and marked-up prices that revision published |\n| `data_get_reconstitutions` | Historical index changes — model swaps, SCU before/after |\n| `data_get_methodology` | Methodology changelog — every version with its formula summary and spec link, plus the version in force |\n| `data_get_history` | SCU index time series over a date range — `per-revision`, `daily`, or `weekly` granularity; daily/weekly buckets carry the last revision's value forward across empty buckets |\n| `data_get_model_price_history` | Per-model input/output USD price time series for any oracle-tracked model — same granularity semantics as `data_get_history`, with catchup gaps surfaced in `unavailableRevisions` |\n| `data_get_catalog` | Every model with a recorded price, index members and non-index entries alike — `indexMember` flag, current price with its provenance pair, cache and reasoning components, and the raw upstream `contextTiers` / `maxInputTokens` |\n| `data_get_model_price_at` | Per-model input/output USD price effective at a timestamp — `manifest` source when the model represented its family in the revision active then, `catalog` otherwise |\n| `data_get_baseline` | Frozen SCU denominator behind `computeIndex` — the SCU of the first confirmed revision, set once and never recomputed |\n| `data_get_scu_at` | SCU value active at a timestamp via step function — no interpolation, `null` before the genesis revision |\n| `data_get_model_availability` | Which models can serve right now — every catalogue model with a `routable` flag, the model `auto` points at, and the `computedAt` / `ttlSeconds` the answer is good for |\n\nModels are identified by their canonical vendor-prefixed id — `anthropic/claude-opus-4.8`, `openai/gpt-5.5`, `qwen/qwen-3.5-flash`. Every tool taking a model also accepts the bare name (`gpt-5.5`) and answers with the canonical id. The vendor slug is not always the provider key (`alibaba` → `qwen`, `xai` → `x-ai`, `moonshot` → `moonshotai`), so reuse an id the API returned rather than assembling one. `data_get_scu`, `data_get_breakdown` and `data_get_reconstitutions` are the exception: they pass the attested manifest through verbatim and so report bare model keys, because a `/` is not a legal manifest key.\n\nCache pricing comes from the Compute Finance Oracle. Session and consumption reports show effective (cache-aware) cost when the oracle has published the relevant cache components; otherwise they show nominal cost (input rate applied to every input variant) and label effective as unavailable for that model.\n\nAlongside cache, the oracle publishes a **reasoning output price** — `reasoning.reasoningOutput`, on the same base as every other component; the whole `reasoning` block is `null` for a model with no usable reasoning price. It is catalogue data. Session and consumption reports do not bill it: Claude Code transcripts count thinking blocks rather than reasoning tokens, and those tokens are already inside `output_tokens`.\n\nEvery price is reported on two bases: `base_*` is the provider list price, identical for every model the oracle tracks, and `billed_*` is what compute.finance charges — `base × (1 + routing_fee_rate)`. Compare models on `base_*`, budget on `billed_*`. The rate ships once per response and `billed_*` is null when the oracle does not publish it. Session and consumption reports are on the base basis throughout.\n\nEvery current-price answer comes from one place: the live catalogue the exchange bills against. Index membership decides which models `data_get_basket` and `compute_compare` list, never what a model costs, so two models the catalogue prices alike quote alike. `data_get_cpi` is the exception by design — it serves the prices the latest on-chain revision attested, which change only when an operator publishes the next one and may therefore lag the catalogue. Read it as attestation history, not as a quote.\n\nSome models get pricier past a context length. `data_get_basket` and `data_get_price` publish that as `context_tiers`, a ladder ascending by `from_input_tokens` and **always at least one rung**: the first starts at 0 and restates the flat rate, so a model priced the same at every size has exactly one rung and nothing has to branch on whether a model happens to be tiered. Rungs carry `base_*` and `billed_*` like every other price; only the flat rate enters the SCU index. `compute_estimate` and `compute_compare` pick the rung from the whole input side of the request — prompt plus cache reads plus cache writes, all charged at the full input rate there since neither tool applies a cache discount — over half-open ranges, so an input landing exactly on a threshold takes that rung, and both return the chosen rung as `applied_context_tier` so the rate behind the number is visible. `data_get_catalog` passes the oracle document through unchanged, so there `contextTiers` is absent rather than one-rung on a flat model.\n\nThe ladder comes from the catalog endpoint, and the two kinds of tool part ways whenever it cannot answer for a model — the read failed, or it succeeded and the model was not in it, which is upstream drift rather than a flat price. `data_get_basket` and `data_get_price` still serve their prices and set `context_tiers` to `null` — an unknown ladder, never a one-rung stand-in for a ladder nobody read. `compute_estimate` and `compute_compare` error instead: a cost quoted at the flat rate would understate exactly the long context the ladder exists to price.\n\n`max_input_tokens` is the largest input a model accepts, `null` when the model declares no window of its own — not unbounded: the request-body ceiling still applies, there is just no per-model limit. Above a declared window the oracle refuses the request outright, so `compute_estimate` and `compute_compare` set `exceeds_max_input_tokens`. They still quote the cost: these tools are read-only and an agent sizing a context needs the number before it reshapes the request, but the flag says plainly that the request as supplied would be rejected.\n\nPrices also carry a `provenance` mark saying how far the number has been checked: `verified` — an operator recorded a vendor source for it; `inferred` — derived from a sibling number or a vendor default, with no source recorded; `promotional` — a discounted list price that is expected to end. **Every value bills as shown; the mark says how much to trust it, not what it costs.** Marks are set by hand and hold as of the operator's last pass, not as a live check against the vendor. Every cache and reasoning component carries its own mark wherever it appears, and so does every base price: `data_get_catalog` marks `currentPrice.provenance` for every model, index member or not, while `data_get_basket`, `data_get_price` and `compute_estimate` carry the same pair as `base_price_provenance`. A rung follows the same rule: the first repeats the base price's mark, and a higher rung is always a catalogue number, marked in both directions with the single mark the vendor quotes it under. Session and consumption reports print each cache multiplier with its mark; when the oracle publishes no cache pricing for a model they say so and print no marks.\n\nA price says what a model costs, never whether it can serve. `data_get_model_availability` answers that second question: the public pool's routability list — every catalogue model under its canonical id with a `routable` flag, plus the model `auto` points at. Call it before settling on a model, so one that cannot serve is ruled out before the request instead of by a 503 after it. **The signal is advisory**: true as of `computedAt` and only for `ttlSeconds` after it, capacity moves on its own, and a model reported routable can still fail the send — the caller still handles the error on the request itself. The answer is the exchange's own, served verbatim with no liveness computed here, so it cannot disagree with the router that has to honour it; it is cached for exactly the `ttlSeconds` published with it, and not at all when that figure is missing or unusable, rather than for the window every other read uses.\n\n### Compute\n\n| Tool | Description |\n|------|-------------|\n| `compute_estimate` | Nominal USD cost for a model given input/output token counts — `base_usd_cost`, `routing_fee_usd`, `billed_usd_cost`, quoted at the rung the input size selects |\n| `compute_compare` | Rank every model in the current SCU index by cost for a workload, grouped by family — the same three cost figures per row, each on that model's own rung |\n\n### Render (Claude Code skills)\n\n| Tool | Description |\n|------|-------------|\n| `render_session_report` | Pre-formatted session cost report — used by `/cf-session-management` |\n| `render_consumption_report` | Pre-formatted per-inference breakdown — used by `/cf-session-consumption` |\n| `render_active_sessions` | Overview of recent sessions across projects — used by `/cf-active-sessions` |\n\nReports surface three orthogonal counts: **prompts** (what you typed), **inferences** (assistant replies — tool-loop sessions produce several per prompt), and **tool calls** (`tool_use` blocks). The triplet is identical across all three reports for the same session.\n\n### Analysis\n\n| Tool | Description |\n|------|-------------|\n| `analyze_session` | Raw JSON session analysis (for custom UI, not skills) |\n| `analyze_inferences` | Raw JSON per-inference breakdown (for custom UI, not skills) |\n\nThe `analyze_session` counterfactual quotes each model's base rate and never a long-context rung. A rung is picked per request, and a session's summed input is not one giant request — a hundred 5k-token calls are not a single 500k-token one — so pricing the total on a higher rung would overcharge. Expect those rows to sit below `compute_compare` for a model that gets pricier past a context length.\n\n### History\n\n| Tool | Description |\n|------|-------------|\n| `telemetry_get_history` | Aggregate stats across logged sessions — cumulative cost, per-profile medians, insights |\n\n## Your account\n\nEverything above is public data or local files. To ask what **your** Compute Finance account has spent, which of your keys are live, or how much headroom is left before a cap, connect the account with an **app grant**.\n\n### Connect\n\n1. In [compute.finance](https://compute.finance) open **Settings → Connected apps**, press **Grant access**, name the app and choose what it may do: **Read** (see the account's balance, usage and history) and/or **Act** (manage the account's keys and limits). If you work in an organization, pick the account the grant acts on — the grant is pinned to it and no session elsewhere can redirect it.\n2. Copy the `cfa_live_…` token. It is shown **once**.\n3. Store it:\n\n```bash\nnpx @compute-finance/mcp setup --account\n```\n\nSetup asks for the token on stdin — typing is hidden, and the token is never an argument, so it cannot land in your shell history or in an MCP config file. It is then stored in the credential store your OS already ships: **macOS Keychain** (`security`), **Windows DPAPI** (a blob under `%APPDATA%` only your Windows user can decrypt), or the **Secret Service** on Linux (`secret-tool`, from libsecret). No native npm dependency is added for any of them.\n\nRestart your MCP client. The `account_*` tools appear; with no credential they are simply not registered and the oracle and session tools behave exactly as before.\n\n### Where the server looks for the token\n\nAt startup, in this order, stopping at the first that answers:\n\n| Source | Use |\n|--------|-----|\n| `CF_APP_GRANT_COMMAND` | A shell command that prints the token on stdout — `op read op://Private/compute-finance/token`, `pass show compute-finance`, `bw get password …`. Works with any secret manager on any OS. Nothing is stored by this package. |\n| OS credential store | What `setup --account` wrote. |\n| `CF_APP_GRANT` | The environment. Intended for CI, where no interactive store exists. |\n\nWherever it came from, the token is only ever sent to an `https` origin — or to `http` on a loopback host, so a local API still works. `CF_API_BASE` pointing anywhere else is refused at startup and the token is not sent.\n\n### What a grant can and cannot do\n\n- A grant is limited to the operations you ticked when you created it, on the one account you pinned it to. **It can never move funds** — no withdrawal, no transfer, and no action that needs a wallet signature. Those stay with your wallet.\n- **Act access is not harmless.** An app holding it can create an API key that spends the account's balance, change or clear the budget caps that bound that spending, and configure automatic top-up, which charges your saved card. Tick it only for an app you would trust with those three; grant Read alone otherwise.\n- The exchange decides what each grant may call. `GET /v1/account-tools` returns only the tools that grant holds the access for, with their descriptions and input schemas; a call goes through `POST /v1/account-tools/call`. This package copies none of those contracts, so a change on the exchange's side reaches you without a release here.\n- A refusal is a refusal. When the exchange declines — the grant is frozen, revoked, or lacks the access a tool needs — the tool returns the exchange's own wording naming what is missing. It is never rewritten into an empty balance, an empty key list or a guess. A grant refused at startup registers a single `account_status` tool carrying that wording, rather than reporting no account at all.\n\n### Revoke\n\nRevoking is done where the grant was made: **Settings → Connected apps → Revoke**. Revocation is permanent and takes effect at once; your own session and every other app are unaffected. **Freeze** suspends a grant instead, and can be lifted.\n\nRemove the local copy of the token afterwards:\n\n```bash\nnpx @compute-finance/mcp setup --forget-account\n```\n\n## Cost hook\n\nThe `setup` command installs a `UserPromptSubmit` hook into `~/.claude/settings.json`. Every time you send a message, the hook reads the current session transcript, prices it against the live oracle, and injects a cost summary into Claude's context via `additionalContext`. Claude then appends a `💰 Compute.Finance · …` line at the end of its response.\n\n**Guards** — the hook fires only when all three conditions are met:\n- Session cost exceeds **$1**\n- Session has at least **5 user prompts**\n- At least **10 minutes** since the last fire (per session)\n\nOn any failure (oracle down, transcript missing, parse error) the hook exits silently — it never blocks your prompt.\n\n### Manual installation\n\nIf `setup` can't write to `settings.json`, add the hook manually:\n\n```json\n{\n  \"hooks\": {\n    \"UserPromptSubmit\": [\n      {\n        \"matcher\": \"\",\n        \"hooks\": [\n          {\n            \"type\": \"command\",\n            \"command\": \"npx @compute-finance/mcp hook-prompt\"\n          }\n        ]\n      }\n    ]\n  }\n}\n```\n\n### Uninstall\n\nRemove the `UserPromptSubmit` entry from `~/.claude/settings.json`.\n\n## Privacy\n\nAll data stays on your machine. Without a connected account the only network calls are unauthenticated GETs to `api.compute.finance` — the oracle endpoints under `/v1/oracle/*` and the OpenAPI document at `/openapi.json`, read once at startup to document oracle response shapes. Session logs (`~/.compute-finance/sessions.jsonl`, `~/.compute-finance/inferences.jsonl`) are never uploaded.\n\nWith an account connected, the grant token is sent to `api.compute.finance` as an `Authorization: Bearer` header on `/v1/account-tools` and `/v1/account-tools/call`, and nowhere else. It is never written to a config file, never passed as a process argument, and never printed to stdout, stderr or a tool answer — including in diagnostics, which are redacted before they are written. Session logs still carry only local measurements and are still never uploaded.\n\n## Links\n\n- [Compute Finance](https://compute.finance)\n- [Oracle API](https://api.compute.finance)\n- [OpenAPI spec](https://api.compute.finance/openapi.json)\n- [npm package](https://www.npmjs.com/package/@compute-finance/mcp)\n","readmeFilename":"README.md"}