一个功能完整的基于 Model Context Protocol (MCP) 的计算器服务器,提供丰富的数学运算功能,包括基础算术、根式运算、三角函数、对数运算、统计学、组合数学、数论、复数运算、矩阵运算、数值分析、金融计算、单位转换和几何计算等 13 个专业数学模块。
此 Skill 必须配置 API 密钥才能使用。
.env 中没有 XBY_APIKEY, 必须使用 AskUserQuestion 工具向用户询问 API 密钥scripts.config.set_api_key(api_key) 保存,然后继续处理你(大模型)是路由层,负责理解用户意图、选择工具、提取参数。代码只负责调用API。
text
用户输入 → 你选择工具 → 提取该工具需要的参数 → 调用 scripts.tools 中的函数 → 返回结果给用户
scripts.config.settings.api_key 为空,使用 AskUserQuestion 询问用户,拿到后调用 scripts.config.set_api_key(key) 保存scripts.tools 中的函数,例如 scripts.tools.search_schools(score='520', province='北京', category='综合')raw 数据整理后展示给用户根据用户意图选择对应的工具函数:
用户意图工具函数执行两个数字的加法运算scripts.tools.add执行两个数字的减法运算scripts.tools.subtract执行两个数字的乘法运算scripts.tools.multiply执行两个数字的除法运算scripts.tools.divide计算两个数的余数scripts.tools.modulo计算a的b次方scripts.tools.power计算数字的平方根scripts.tools.sqrt计算数字的立方根scripts.tools.cbrt计算数字的n次方根scripts.tools.nthRoot计算数字的绝对值scripts.tools.abs计算角度的正弦值(输入为弧度)scripts.tools.sin计算角度的余弦值(输入为弧度)scripts.tools.cos计算角度的正切值(输入为弧度)scripts.tools.tan计算反正弦值(返回弧度)scripts.tools.asin计算反余弦值(返回弧度)scripts.tools.acos计算反正切值(返回弧度)scripts.tools.atan计算从x轴到点(x,y)的角度(返回弧度)scripts.tools.atan2计算双曲正弦值scripts.tools.sinh计算双曲余弦值scripts.tools.cosh计算双曲正切值scripts.tools.tanh计算反双曲正弦值scripts.tools.asinh计算反双曲余弦值(输入值必须≥1)scripts.tools.acosh计算反双曲正切值(输入值必须在-1到1之间)scripts.tools.atanh计算正割值(1/cos)scripts.tools.sec计算余割值(1/sin)scripts.tools.csc计算余切值(1/tan)scripts.tools.cot将角度转换为弧度scripts.tools.degToRad将弧度转换为角度scripts.tools.radToDeg计算自然对数(以e为底)scripts.tools.ln计算以10为底的对数scripts.tools.log10计算以指定底数的对数scripts.tools.log计算数组的算术平均值scripts.tools.mean计算数组的中位数scripts.tools.median计算数组的众数(出现频率最高的数)scripts.tools.mode计算数组的标准差scripts.tools.stdDev计算数组的方差scripts.tools.variance找出数组中的最大值scripts.tools.max找出数组中的最小值scripts.tools.min计算数组所有元素的和scripts.tools.sum计算数组所有元素的乘积scripts.tools.product计算数组的范围(最大值-最小值)scripts.tools.range计算非负整数的阶乘scripts.tools.factorial计算从n个元素中选择r个元素的排列数 P(n,r)scripts.tools.permutation计算从n个元素中选择r个元素的组合数 C(n,r)scripts.tools.combination计算斐波那契数列的第n项scripts.tools.fibonacci生成斐波那契数列的前n项scripts.tools.fibonacciSequence计算第n个卡塔兰数scripts.tools.catalan计算第n个贝尔数(集合划分数)scripts.tools.bellNumber计算二项式系数 (n choose k)scripts.tools.binomialCoefficient计算两个或多个整数的最大公约数scripts.tools.gcd计算两个或多个整数的最小公倍数scripts.tools.lcm判断一个正整数是否为素数scripts.tools.isPrime将正整数分解为素因数的乘积scripts.tools.primeFactorization计算欧拉函数φ(n),即小于等于n且与n互质的正整数个数scripts.tools.eulerPhi判断一个正整数是否为完全数(等于其所有真因子之和)scripts.tools.isPerfectNumber计算正整数的因子个数scripts.tools.divisorCount列出正整数的所有因子scripts.tools.divisorList计算两个复数的和scripts.tools.complex_add计算两个复数的差scripts.tools.complex_subtract计算两个复数的乘积scripts.tools.complex_multiply计算两个复数的商scripts.tools.complex_divide计算复数的模长(绝对值)scripts.tools.complex_magnitude计算复数的共轭scripts.tools.complex_conjugate计算复数的幅角(以弧度为单位)scripts.tools.complex_argument将复数转换为极坐标形式 r∠θscripts.tools.complex_polar计算两个矩阵的和scripts.tools.matrix_add计算两个矩阵的差scripts.tools.matrix_subtract计算两个矩阵的乘积scripts.tools.matrix_multiply计算矩阵的转置scripts.tools.matrix_transpose计算方阵的行列式scripts.tools.matrix_determinant计算方阵的逆矩阵scripts.tools.matrix_inverse计算方阵的迹(对角线元素之和)scripts.tools.matrix_trace使用梯形法则计算函数的定积分scripts.tools.numerical_integration使用中心差分法计算函数在某点的导数scripts.tools.numerical_derivative使用牛顿法求解方程的根scripts.tools.newton_method使用二分法求解方程在区间内的根scripts.tools.bisection_method使用拉格朗日插值法计算插值点的函数值scripts.tools.lagrange_interpolation计算复利投资的未来价值scripts.tools.compound_interest计算普通年金的现值scripts.tools.present_value_annuity计算普通年金的未来值scripts.tools.future_value_annuity计算等额本息贷款的月供金额scripts.tools.loan_payment计算投资项目的净现值(NPV)scripts.tools.net_present_value计算投资项目的内部收益率(IRR)scripts.tools.internal_rate_of_return计算债券的理论价格scripts.tools.bond_price在不同长度单位之间进行转换scripts.tools.length_conversion在不同重量单位之间进行转换scripts.tools.weight_conversion在摄氏度、华氏度和开尔文之间进行转换scripts.tools.temperature_conversion在不同面积单位之间进行转换scripts.tools.area_conversion在不同体积单位之间进行转换scripts.tools.volume_conversion在不同时间单位之间进行转换scripts.tools.time_conversion在不同速度单位之间进行转换scripts.tools.speed_conversion计算圆的面积、周长等属性scripts.tools.circle_calculation计算矩形的面积、周长等属性scripts.tools.rectangle_calculation根据三边长计算三角形的面积、周长等属性scripts.tools.triangle_calculation计算梯形的面积scripts.tools.trapezoid_calculation计算椭圆的面积和周长(近似)scripts.tools.ellipse_calculation计算球体的体积和表面积scripts.tools.sphere_calculation计算圆柱体的体积和表面积scripts.tools.cylinder_calculation计算圆锥体的体积和表面积scripts.tools.cone_calculation计算长方体的体积和表面积scripts.tools.cuboid_calculation计算正多边形的面积和周长scripts.tools.regular_polygon
如果参数不完整,使用 AskUserQuestion 向用户询问缺失的参数。
工具描述:执行两个数字的加法运算
参数名称参数类型是否必填默认值描述anumbertrue第一个数字bnumbertrue第二个数字
工具描述:执行两个数字的减法运算
参数名称参数类型是否必填默认值描述anumbertrue被减数bnumbertrue减数
工具描述:执行两个数字的乘法运算
参数名称参数类型是否必填默认值描述anumbertrue第一个数字bnumbertrue第二个数字
工具描述:执行两个数字的除法运算
参数名称参数类型是否必填默认值描述anumbertrue被除数bnumbertrue除数
工具描述:计算两个数的余数
参数名称参数类型是否必填默认值描述anumbertrue被除数bnumbertrue除数
工具描述:计算a的b次方
参数名称参数类型是否必填默认值描述anumbertrue底数bnumbertrue指数
工具描述:计算数字的平方根
参数名称参数类型是否必填默认值描述anumbertrue被开方数
工具描述:计算数字的立方根
参数名称参数类型是否必填默认值描述anumbertrue被开方数
工具描述:计算数字的n次方根
参数名称参数类型是否必填默认值描述anumbertrue被开方数nnumbertrue开方次数
工具描述:计算数字的绝对值
参数名称参数类型是否必填默认值描述anumbertrue数字
工具描述:计算角度的正弦值(输入为弧度)
参数名称参数类型是否必填默认值描述anglenumbertrue角度(弧度)
工具描述:计算角度的余弦值(输入为弧度)
参数名称参数类型是否必填默认值描述anglenumbertrue角度(弧度)
工具描述:计算角度的正切值(输入为弧度)
参数名称参数类型是否必填默认值描述anglenumbertrue角度(弧度)
工具描述:计算反正弦值(返回弧度)
参数名称参数类型是否必填默认值描述valuenumbertrue输入值(-1到1之间)
工具描述:计算反余弦值(返回弧度)
参数名称参数类型是否必填默认值描述valuenumbertrue输入值(-1到1之间)
工具描述:计算反正切值(返回弧度)
参数名称参数类型是否必填默认值描述valuenumbertrue输入值
工具描述:计算从x轴到点(x,y)的角度(返回弧度)
参数名称参数类型是否必填默认值描述ynumbertruey坐标xnumbertruex坐标
工具描述:计算双曲正弦值
参数名称参数类型是否必填默认值描述valuenumbertrue输入值
工具描述:计算双曲余弦值
参数名称参数类型是否必填默认值描述valuenumbertrue输入值
工具描述:计算双曲正切值
参数名称参数类型是否必填默认值描述valuenumbertrue输入值
工具描述:计算反双曲正弦值
参数名称参数类型是否必填默认值描述valuenumbertrue输入值
工具描述:计算反双曲余弦值(输入值必须≥1)
参数名称参数类型是否必填默认值描述valuenumbertrue输入值(≥1)
工具描述:计算反双曲正切值(输入值必须在-1到1之间)
参数名称参数类型是否必填默认值描述valuenumbertrue输入值(-1到1之间)
工具描述:计算正割值(1/cos)
参数名称参数类型是否必填默认值描述anglenumbertrue角度(弧度)
工具描述:计算余割值(1/sin)
参数名称参数类型是否必填默认值描述anglenumbertrue角度(弧度)
工具描述:计算余切值(1/tan)
参数名称参数类型是否必填默认值描述anglenumbertrue角度(弧度)
工具描述:将角度转换为弧度
参数名称参数类型是否必填默认值描述degreesnumbertrue角度值
工具描述:将弧度转换为角度
参数名称参数类型是否必填默认值描述radiansnumbertrue弧度值
工具描述:计算自然对数(以e为底)
参数名称参数类型是否必填默认值描述valuenumbertrue输入值(必须大于0)
工具描述:计算以10为底的对数
参数名称参数类型是否必填默认值描述valuenumbertrue输入值(必须大于0)
工具描述:计算以指定底数的对数
参数名称参数类型是否必填默认值描述valuenumbertrue输入值(必须大于0)basenumbertrue底数(必须大于0且不等于1)
工具描述:计算数组的算术平均值
参数名称参数类型是否必填默认值描述numbersarraytrue数字数组
工具描述:计算数组的中位数
参数名称参数类型是否必填默认值描述numbersarraytrue数字数组
工具描述:计算数组的众数(出现频率最高的数)
参数名称参数类型是否必填默认值描述numbersarraytrue数字数组
工具描述:计算数组的标准差
参数名称参数类型是否必填默认值描述numbersarraytrue数字数组samplebooleanfalse是否为样本标准差(默认为总体标准差)
工具描述:计算数组的方差
参数名称参数类型是否必填默认值描述numbersarraytrue数字数组samplebooleanfalse是否为样本方差(默认为总体方差)
工具描述:找出数组中的最大值
参数名称参数类型是否必填默认值描述numbersarraytrue数字数组
工具描述:找出数组中的最小值
参数名称参数类型是否必填默认值描述numbersarraytrue数字数组
工具描述:计算数组所有元素的和
参数名称参数类型是否必填默认值描述numbersarraytrue数字数组
工具描述:计算数组所有元素的乘积
参数名称参数类型是否必填默认值描述numbersarraytrue数字数组
工具描述:计算数组的范围(最大值-最小值)
参数名称参数类型是否必填默认值描述numbersarraytrue数字数组
工具描述:计算非负整数的阶乘
参数名称参数类型是否必填默认值描述nintegertrue非负整数
工具描述:计算从n个元素中选择r个元素的排列数 P(n,r)
参数名称参数类型是否必填默认值描述nintegertrue总元素数rintegertrue选择元素数
工具描述:计算从n个元素中选择r个元素的组合数 C(n,r)
参数名称参数类型是否必填默认值描述nintegertrue总元素数rintegertrue选择元素数
工具描述:计算斐波那契数列的第n项
参数名称参数类型是否必填默认值描述nintegertrue项数(从0开始)
工具描述:生成斐波那契数列的前n项
参数名称参数类型是否必填默认值描述nintegertrue生成项数(1-100)
工具描述:计算第n个卡塔兰数
参数名称参数类型是否必填默认值描述nintegertrue项数(0-35)
工具描述:计算第n个贝尔数(集合划分数)
参数名称参数类型是否必填默认值描述nintegertrue项数(0-15)
工具描述:计算二项式系数 (n choose k)
参数名称参数类型是否必填默认值描述nintegertrue上标kintegertrue下标
工具描述:计算两个或多个整数的最大公约数
参数名称参数类型是否必填默认值描述numbersarraytrue整数数组(至少2个数)
工具描述:计算两个或多个整数的最小公倍数
参数名称参数类型是否必填默认值描述numbersarraytrue整数数组(至少2个数)
工具描述:判断一个正整数是否为素数
参数名称参数类型是否必填默认值描述nintegertrue正整数
工具描述:将正整数分解为素因数的乘积
参数名称参数类型是否必填默认值描述nintegertrue大于1的正整数
工具描述:计算欧拉函数φ(n),即小于等于n且与n互质的正整数个数
参数名称参数类型是否必填默认值描述nintegertrue正整数
工具描述:判断一个正整数是否为完全数(等于其所有真因子之和)
参数名称参数类型是否必填默认值描述nintegertrue正整数
工具描述:计算正整数的因子个数
参数名称参数类型是否必填默认值描述nintegertrue正整数
工具描述:列出正整数的所有因子
参数名称参数类型是否必填默认值描述nintegertrue正整数(1-10000)
工具描述:计算两个复数的和
参数名称参数类型是否必填默认值描述a_realnumbertrue第一个复数的实部a_imagnumbertrue第一个复数的虚部b_realnumbertrue第二个复数的实部b_imagnumbertrue第二个复数的虚部
工具描述:计算两个复数的差
参数名称参数类型是否必填默认值描述a_realnumbertrue第一个复数的实部a_imagnumbertrue第一个复数的虚部b_realnumbertrue第二个复数的实部b_imagnumbertrue第二个复数的虚部
工具描述:计算两个复数的乘积
参数名称参数类型是否必填默认值描述a_realnumbertrue第一个复数的实部a_imagnumbertrue第一个复数的虚部b_realnumbertrue第二个复数的实部b_imagnumbertrue第二个复数的虚部
工具描述:计算两个复数的商
参数名称参数类型是否必填默认值描述a_realnumbertrue被除数的实部a_imagnumbertrue被除数的虚部b_realnumbertrue除数的实部b_imagnumbertrue除数的虚部
工具描述:计算复数的模长(绝对值)
参数名称参数类型是否必填默认值描述realnumbertrue复数的实部imagnumbertrue复数的虚部
工具描述:计算复数的共轭
参数名称参数类型是否必填默认值描述realnumbertrue复数的实部imagnumbertrue复数的虚部
工具描述:计算复数的幅角(以弧度为单位)
参数名称参数类型是否必填默认值描述realnumbertrue复数的实部imagnumbertrue复数的虚部
工具描述:将复数转换为极坐标形式 r∠θ
参数名称参数类型是否必填默认值描述realnumbertrue复数的实部imagnumbertrue复数的虚部
工具描述:计算两个矩阵的和
参数名称参数类型是否必填默认值描述matrix_aarraytrue第一个矩阵(二维数组)matrix_barraytrue第二个矩阵(二维数组)
工具描述:计算两个矩阵的差
参数名称参数类型是否必填默认值描述matrix_aarraytrue被减矩阵(二维数组)matrix_barraytrue减数矩阵(二维数组)
工具描述:计算两个矩阵的乘积
参数名称参数类型是否必填默认值描述matrix_aarraytrue第一个矩阵(二维数组)matrix_barraytrue第二个矩阵(二维数组)
工具描述:计算矩阵的转置
参数名称参数类型是否必填默认值描述matrixarraytrue输入矩阵(二维数组)
工具描述:计算方阵的行列式
参数名称参数类型是否必填默认值描述matrixarraytrue输入方阵(二维数组)
工具描述:计算方阵的逆矩阵
参数名称参数类型是否必填默认值描述matrixarraytrue输入方阵(二维数组)
工具描述:计算方阵的迹(对角线元素之和)
参数名称参数类型是否必填默认值描述matrixarraytrue输入方阵(二维数组)
工具描述:使用梯形法则计算函数的定积分
参数名称参数类型是否必填默认值描述function_typestringtrue函数类型coefficientsarraytrue函数系数或参数lower_boundnumbertrue积分下限upper_boundnumbertrue积分上限intervalsintegerfalse1000.0分割区间数
工具描述:使用中心差分法计算函数在某点的导数
参数名称参数类型是否必填默认值描述function_typestringtrue函数类型coefficientsarraytrue函数系数或参数pointnumbertrue求导点step_sizenumberfalse1.0E-4步长
工具描述:使用牛顿法求解方程的根
参数名称参数类型是否必填默认值描述function_typestringtrue函数类型coefficientsarraytrue函数系数或参数initial_guessnumbertrue初始猜测值tolerancenumberfalse1.0E-6容差max_iterationsintegerfalse100.0最大迭代次数
工具描述:使用二分法求解方程在区间内的根
参数名称参数类型是否必填默认值描述function_typestringtrue函数类型coefficientsarraytrue函数系数或参数left_boundnumbertrue区间左端点right_boundnumbertrue区间右端点tolerancenumberfalse1.0E-6容差max_iterationsintegerfalse100.0最大迭代次数
工具描述:使用拉格朗日插值法计算插值点的函数值
参数名称参数类型是否必填默认值描述x_pointsarraytrue已知点的x坐标y_pointsarraytrue已知点的y坐标interpolation_pointnumbertrue插值点的x坐标
工具描述:计算复利投资的未来价值
参数名称参数类型是否必填默认值描述principalnumbertrue本金annual_ratenumbertrue年利率(小数形式,如0.05表示5%)periodsnumbertrue投资期数compounding_frequencyintegerfalse1.0每年复利次数(1=年复利,4=季复利,12=月复利)
工具描述:计算普通年金的现值
参数名称参数类型是否必填默认值描述paymentnumbertrue每期支付金额periodsintegertrue支付期数interest_ratenumbertrue每期利率(小数形式)
工具描述:计算普通年金的未来值
参数名称参数类型是否必填默认值描述paymentnumbertrue每期支付金额periodsintegertrue支付期数interest_ratenumbertrue每期利率(小数形式)
工具描述:计算等额本息贷款的月供金额
参数名称参数类型是否必填默认值描述loan_amountnumbertrue贷款本金annual_ratenumbertrue年利率(小数形式)yearsnumbertrue贷款年限
工具描述:计算投资项目的净现值(NPV)
参数名称参数类型是否必填默认值描述initial_investmentnumbertrue初始投资额cash_flowsarraytrue各期现金流discount_ratenumbertrue折现率(小数形式)
工具描述:计算投资项目的内部收益率(IRR)
参数名称参数类型是否必填默认值描述initial_investmentnumbertrue初始投资额cash_flowsarraytrue各期现金流initial_guessnumberfalse0.1初始猜测值tolerancenumberfalse1.0E-6容差max_iterationsintegerfalse100.0最大迭代次数
工具描述:计算债券的理论价格
参数名称参数类型是否必填默认值描述face_valuenumbertrue面值coupon_ratenumbertrue票面利率(小数形式)market_ratenumbertrue市场利率(小数形式)years_to_maturitynumbertrue到期年限payments_per_yearintegerfalse1.0每年付息次数
工具描述:在不同长度单位之间进行转换
参数名称参数类型是否必填默认值描述valuenumbertrue要转换的数值from_unitstringtrue源单位to_unitstringtrue目标单位
工具描述:在不同重量单位之间进行转换
参数名称参数类型是否必填默认值描述valuenumbertrue要转换的数值from_unitstringtrue源单位to_unitstringtrue目标单位
工具描述:在摄氏度、华氏度和开尔文之间进行转换
参数名称参数类型是否必填默认值描述valuenumbertrue要转换的温度值from_unitstringtrue源单位to_unitstringtrue目标单位
工具描述:在不同面积单位之间进行转换
参数名称参数类型是否必填默认值描述valuenumbertrue要转换的数值from_unitstringtrue源单位to_unitstringtrue目标单位
工具描述:在不同体积单位之间进行转换
参数名称参数类型是否必填默认值描述valuenumbertrue要转换的数值from_unitstringtrue源单位to_unitstringtrue目标单位
工具描述:在不同时间单位之间进行转换
参数名称参数类型是否必填默认值描述valuenumbertrue要转换的数值from_unitstringtrue源单位to_unitstringtrue目标单位
工具描述:在不同速度单位之间进行转换
参数名称参数类型是否必填默认值描述valuenumbertrue要转换的数值from_unitstringtrue源单位to_unitstringtrue目标单位
工具描述:计算圆的面积、周长等属性
参数名称参数类型是否必填默认值描述radiusnumbertrue半径
工具描述:计算矩形的面积、周长等属性
参数名称参数类型是否必填默认值描述lengthnumbertrue长度widthnumbertrue宽度
工具描述:根据三边长计算三角形的面积、周长等属性
参数名称参数类型是否必填默认值描述side_anumbertrue边长aside_bnumbertrue边长bside_cnumbertrue边长c
工具描述:计算梯形的面积
参数名称参数类型是否必填默认值描述top_basenumbertrue上底bottom_basenumbertrue下底heightnumbertrue高
工具描述:计算椭圆的面积和周长(近似)
参数名称参数类型是否必填默认值描述semi_major_axisnumbertrue长半轴semi_minor_axisnumbertrue短半轴
工具描述:计算球体的体积和表面积
参数名称参数类型是否必填默认值描述radiusnumbertrue半径
工具描述:计算圆柱体的体积和表面积
参数名称参数类型是否必填默认值描述radiusnumbertrue底面半径heightnumbertrue高度
工具描述:计算圆锥体的体积和表面积
参数名称参数类型是否必填默认值描述radiusnumbertrue底面半径heightnumbertrue高度
工具描述:计算长方体的体积和表面积
参数名称参数类型是否必填默认值描述lengthnumbertrue长度widthnumbertrue宽度heightnumbertrue高度
工具描述:计算正多边形的面积和周长
参数名称参数类型是否必填默认值描述sidesintegertrue边数side_lengthnumbertrue边长
工具函数返回 dict 对象:
result["raw"] - API 原始返回数据(JSON), 直接将此数据整理后展示给用户result["success"] - 是否成功(True/False)result["message"] - 状态消息text
xiaobenyang_gaokao_skill/
├── scripts/
│ ├── __init__.py
│ ├── config.py # 配置管理 + set_api_key()
│ ├── call_api.py # API 客户端 + call_api()
│ └── tools.py # 工具函数(直接调用)
├── requirements.txt
└── SKILL.md