{"name":"io.github.sergioprats/pitwall-mcp","slug":"sergioprats-pitwall-mcp","title":"pitwall-mcp","description":"Solo lectura sobre BMW CarData: mantenimiento, neumaticos y bateria de 12V. No afiliado a BMW AG.","url":"https://mcp.market/server/sergioprats-pitwall-mcp","rating":null,"grade":"B","score":83,"certified":false,"status":"active","category":"other","tags":[],"presence":{"score":18,"stars":0,"forks":0,"downloads_week":null,"last_push_at":"2026-09-19T18:44:33.000Z","license":"MIT"},"uptime":null,"claimed":false,"transport":"pypi","callable_via_gateway":false,"default_price_micros":0,"repository":"https://github.com/sergioprats/pitwall-mcp","website":"https://github.com/sergioprats/pitwall-mcp","version":"0.1.0","remotes":[],"packages":[{"registryType":"pypi","registryBaseUrl":"https://pypi.org","identifier":"pitwall-mcp","version":"0.1.0","transport":{"type":"stdio"},"environmentVariables":[{"description":"Client id de tu aplicacion BMW CarData, creada en https://bmw-cardata.bmwgroup.com. Se obtiene en el portal; no lo comparte nadie contigo.","isRequired":true,"isSecret":true,"name":"PITWALL_CLIENT_ID"},{"description":"VIN del vehiculo, 17 caracteres. Debe estar mapeado como PRIMARY en la cuenta.","isRequired":true,"isSecret":true,"name":"PITWALL_VIN"},{"description":"Id del contenedor telematico creado por scripts/bootstrap_containers.py. El servidor solo lo consume: nunca crea ni borra contenedores.","isRequired":true,"name":"PITWALL_CONTAINER_ID"},{"description":"Ruta del fichero de tokens OAuth. Por defecto ~/.config/pitwall-mcp/tokens.json, con permisos 600 y fuera del repositorio.","name":"PITWALL_TOKEN_FILE"},{"description":"Ruta de la base SQLite con la cache, el registro de cuota y el historico. Por defecto ~/.local/share/pitwall-mcp/pitwall.db.","name":"PITWALL_DB_PATH"},{"description":"Tope duro de peticiones REST al dia. BMW permite 50 cada 24 h por cuenta; el valor por defecto es 20 para dejar margen. Nunca puede superar 50.","default":"20","name":"PITWALL_DAILY_QUOTA"},{"description":"DEBUG, INFO, WARNING o ERROR. Los logs van a stderr: stdout es el canal MCP.","default":"INFO","name":"PITWALL_LOG_LEVEL"}]}],"tools":[{"name":"diagnose_software_update","description":"Return the bounded software-update diagnosis.","write_action":true,"price_micros":0,"input_schema":null},{"name":"get_api_quota","description":"Report today's quota consumption and the local cache state.","write_action":false,"price_micros":0,"input_schema":null},{"name":"get_fault_memory","description":"Return the fault memory and its changes between readings.","write_action":false,"price_micros":0,"input_schema":null},{"name":"get_fuel_status","description":"Return tank, range, refuels and consumption.","write_action":false,"price_micros":0,"input_schema":null},{"name":"get_maintenance_summary","description":"Return the composed maintenance summary.","write_action":false,"price_micros":0,"input_schema":null},{"name":"get_telematic_data","description":"Read the configured telematic container.","write_action":false,"price_micros":0,"input_schema":null},{"name":"get_tyre_diagnosis","description":"Return the smart maintenance tyre diagnosis.","write_action":false,"price_micros":0,"input_schema":null},{"name":"get_vehicle_basic_data","description":"Return the vehicle's basic data.","write_action":false,"price_micros":0,"input_schema":null},{"name":"get_vehicle_status","description":"Return mileage and the CBS block.","write_action":false,"price_micros":0,"input_schema":null},{"name":"list_vehicles","description":"List the VINs mapped to the account.","write_action":false,"price_micros":0,"input_schema":null},{"name":"report_product_update_step","description":"Report `puStep`, explicitly labelled as a product update step.","write_action":true,"price_micros":0,"input_schema":null},{"name":"search_descriptors","description":"Search the local catalogue for descriptors matching `query`.","write_action":false,"price_micros":0,"input_schema":null}],"scan":{"score":83,"grade":"B","scanned_at":"2026-09-19T21:13:52.636Z","report":{"scannerVersion":"0.1.8","scannedAt":"2026-09-19T21:13:52.668Z","components":{"code":{"score":25,"max":25,"notes":["37 source files scanned"]},"reliability":{"score":-1,"max":20,"notes":["no gateway calls yet and no remote to probe"]},"poisoning":{"score":-1,"max":15,"notes":["tools not inspected (local package is not executed); not counted"]},"auth":{"score":6,"max":15,"notes":["static API keys via environment variables"]},"maintenance":{"score":15,"max":15,"notes":["last push 0 days ago"]},"identity":{"score":8,"max":10,"notes":["registry namespace matches repository owner","GitHub account older than a year"]}},"findings":[],"inputs":{"packages":[{"registryType":"pypi","identifier":"pitwall-mcp","version":"0.1.0","found":true,"dependencyCount":5,"publishedAt":"2026-09-19T15:39:40.560413Z","repositoryUrl":"https://github.com/sergioprats/pitwall-mcp"}],"repo":{"found":true,"owner":"sergioprats","repo":"pitwall-mcp","archived":false,"pushedAt":"2026-09-19T18:44:33Z","stars":0,"forks":0,"openIssues":0,"ownerType":"User","ownerAvatarUrl":"https://avatars.githubusercontent.com/u/11361202?v=4","ownerCreatedAt":"2015-03-07T07:06:48Z","license":"MIT"},"icon":{"url":"https://avatars.githubusercontent.com/u/11361202?v=4&s=128","source":"registry"},"presence":{"stars":0,"forks":0,"downloadsWeek":null,"license":"MIT","lastPushAt":"2026-09-19T18:44:33.000Z","score":18}}}},"grade_history":[{"kind":"restore","fromGrade":"C","toGrade":"B","reason":"score 83","createdAt":"2026-09-19T21:13:53.210Z"}],"reviews":[]}